/*
Theme Name: Renewing Your Mind Ministry
Template: twentytwentyfive
Description: Child theme for renewingyourmindministry.com. Colours, fonts, sizes and layout follow the Shared Design Specifications v1 (approved October 17, 2026). Design only: all copy lives in the pages and posts.
Version: 0.2.21
Requires at least: 6.6
Requires PHP: 8.1
Author: Renewing Your Mind Discipleship Ministry
Text Domain: rym-ministry
License: GNU General Public License v2 or later
*/

/* H2: 56×3px gold rule, 16px below the heading (spec 1.3) */
.wp-block-post-content h2.wp-block-heading,
.rym-section h2.wp-block-heading { padding-bottom: 16px; position: relative; margin-top: 1.8em; }
.wp-block-post-content h2.wp-block-heading::after,
.rym-section h2.wp-block-heading::after {
	content: ""; position: absolute; left: 0; bottom: 0; width: 56px; height: 3px; background: var(--wp--preset--color--gold);
}
.has-text-align-center.wp-block-heading::after { left: 50% !important; transform: translateX(-50%); }
.rym-section > h2.wp-block-heading:first-child, .rym-section > .wp-block-group__inner-container > h2:first-child { margin-top: 0; }

/* Hero bands: black, white H1, hero text colour (spec 1.3, 1.5) */
.rym-hero { background: #000; color: var(--wp--preset--color--hero-text); border-top: 3px solid var(--wp--preset--color--gold); }
.rym-hero h1, .rym-hero .wp-block-post-title { color: #fff; margin: 0; }
.rym-hero p { color: var(--wp--preset--color--hero-text); font-size: var(--wp--preset--font-size--hero-body); }
.rym-hero a { color: var(--wp--preset--color--pale-gold); }
.rym-hero .rym-byline { font-size: 16px; margin-top: 14px; }
.rym-hero .rym-byline a { color: var(--wp--preset--color--hero-text); text-decoration: none; border-bottom: 1px solid var(--wp--preset--color--gold); }
.rym-hero .wp-block-quote { border-left-color: var(--wp--preset--color--gold); }
.rym-hero .wp-block-quote cite { color: var(--wp--preset--color--footer-text); }

/* Header */
.rym-header { background: #000; }
.rym-header .wp-block-site-title a { color: #fff; text-decoration: none; font-family: var(--wp--preset--font-family--georgia); font-weight: 700; }
.rym-header .rym-tagline { color: var(--wp--preset--color--gold); font-size: 12px; letter-spacing: 3px; text-transform: uppercase; margin: 0; }
.rym-header .wp-block-navigation a, .rym-header .wp-block-navigation .wp-block-navigation-item__label { color: #fff; text-decoration: none; }
.rym-header .wp-block-navigation a:hover { color: var(--wp--preset--color--gold); }
.rym-header .wp-block-navigation__submenu-container { background: #000 !important; border: 1px solid #333 !important; }
.rym-header .wp-block-navigation__responsive-container.is-menu-open { background: #000 !important; }
.rym-header .wp-block-navigation__responsive-container-open svg, .rym-header .wp-block-navigation__responsive-container-close svg { fill: #fff; }

/* Footer (spec 1.10) */
.rym-footer { background: #000; color: var(--wp--preset--color--footer-text); font-size: 14px; text-align: center; }
.rym-footer a { color: var(--wp--preset--color--footer-link); text-decoration: none; }
.rym-footer a:hover { color: var(--wp--preset--color--gold); }
.rym-footer .rym-footer-links { line-height: 2; }

/* Sections alternate white and Soft (spec 1.4) */
.rym-section { padding-top: var(--wp--preset--spacing--50); padding-bottom: var(--wp--preset--spacing--50); }
.rym-soft { background: var(--wp--preset--color--soft); }

/* Scripture and book quotes */
.wp-block-quote p { margin: 0 0 .5em; }
.wp-block-quote cite { display: block; font-family: var(--wp--preset--font-family--roboto); font-style: normal; font-size: 15px; color: var(--wp--preset--color--muted); }
.rym-endorsement cite { font-weight: 500; }

/* Bullet lists: 10px gold dots (spec 1.7) */
.wp-block-post-content ul:not(.wp-block-navigation__container), .rym-section ul { list-style: none; padding-left: 1.4em; }
.wp-block-post-content ul:not(.wp-block-navigation__container) > li, .rym-section ul > li { position: relative; margin-bottom: .45em; }
.wp-block-post-content ul:not(.wp-block-navigation__container) > li::before, .rym-section ul > li::before {
	content: ""; position: absolute; left: -1.2em; top: .68em; width: 10px; height: 10px; border-radius: 50%; background: var(--wp--preset--color--gold);
}

/* Buttons: three levels (spec 1.6) */
.wp-block-button.is-style-outline > .wp-block-button__link, .wp-block-button.rym-secondary > .wp-block-button__link {
	background: var(--wp--preset--color--pale-gold); color: var(--wp--preset--color--ink); border: 2px solid var(--wp--preset--color--gold);
	font-size: 17px; padding: 11px 30px;
}
.wp-block-button.is-style-outline > .wp-block-button__link:hover, .wp-block-button.rym-secondary > .wp-block-button__link:hover { background: #fff; color: var(--wp--preset--color--ink); }
.wp-block-button.rym-tertiary > .wp-block-button__link {
	background: var(--wp--preset--color--pale-grey); color: var(--wp--preset--color--ink); border: 2px solid var(--wp--preset--color--muted); font-size: 17px; padding: 11px 30px;
}
.wp-block-button.rym-tertiary > .wp-block-button__link:hover { background: #fff; }
.wp-block-button__link { text-decoration: none; }
@media (max-width: 639px) {
	.wp-block-buttons > .wp-block-button:not(.is-style-outline):not(.rym-secondary):not(.rym-tertiary) { width: 100%; }
	.wp-block-buttons > .wp-block-button:not(.is-style-outline):not(.rym-secondary):not(.rym-tertiary) .wp-block-button__link { width: 100%; }
}

/* Offer cards on The Process */
.rym-card { background: #fff; border: 1px solid var(--wp--preset--color--line); border-radius: 6px; padding: 28px; }
.rym-label { font-size: 13px; letter-spacing: 3px; text-transform: uppercase; color: var(--wp--preset--color--dark-gold); font-weight: 700; margin-bottom: 4px !important; }

/* Note box (spec 1.7) */
.rym-note { background: var(--wp--preset--color--soft); border-left: 4px solid var(--wp--preset--color--gold); padding: 18px 22px; }

/* Author box */
.rym-author-box { border-top: 1px solid var(--wp--preset--color--line); padding-top: 32px; margin-top: 48px; }
.rym-author-box .wp-block-image img { border-radius: 50%; }
.rym-author-box h3 { margin: 0 0 6px; }
.rym-author-box p { font-size: 16px; }

/* Sermon Notes line, Scripture credits */
.rym-sermon-line { background: var(--wp--preset--color--soft); border-left: 4px solid var(--wp--preset--color--gold); padding: 14px 20px; font-size: 16px; }
.rym-credits { font-size: 13px; color: var(--wp--preset--color--muted); line-height: 1.5; border-top: 1px solid var(--wp--preset--color--line); padding-top: 16px; margin-top: 40px; }

/* Links that open in a new tab: small icon; the text "(opens in a new tab)" is for screen readers */
.wp-block-post-content a[target="_blank"]::after, .rym-section a[target="_blank"]::after {
	content: "↗"; font-size: .75em; margin-left: .15em; text-decoration: none; display: inline-block;
}
.wp-block-button a[target="_blank"]::after { content: none; }
.screen-reader-text {
	border: 0; clip: rect(1px,1px,1px,1px); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important; width: 1px; word-wrap: normal !important;
}

/* fixes after local test (v0.1.1) */
.rym-author-box > .wp-block-image { flex: 0 0 96px; margin: 0; }
.rym-author-box > .wp-block-image img { width: 96px !important; height: 96px !important; object-fit: cover; }
.rym-sermon-line, .rym-note, .rym-card { box-sizing: border-box; }
.rym-header .rym-brand { margin: 0; font-family: var(--wp--preset--font-family--georgia); font-weight: 700; font-size: 22px; line-height: 1.1; }
.rym-header .rym-brand a { color: #fff; text-decoration: none; }

/* Ministry banner (spec 1.5): full width, at most 340px tall, cropped evenly, on black */
.rym-banner { margin: 0 !important; background: #000; }
.rym-banner img { display: block; width: 100%; height: auto; max-height: 340px; object-fit: cover; object-position: center; }
.rym-banner + .rym-hero { border-top: 3px solid var(--wp--preset--color--gold); }

/* v0.1.4: head mark beside the name; split header on banner pages */
.rym-header .rym-mark { margin: 0; flex: 0 0 auto; }
.rym-header .rym-mark img { display: block; width: 44px; height: 44px; border-radius: 50%; }
body:has(.rym-banner) .rym-header .rym-brandwrap { display: none; }
body:has(.rym-banner) .rym-header .alignwide { justify-content: center; }
body:has(.rym-banner) .rym-header { padding-top: 12px !important; padding-bottom: 12px !important; }

/* v0.1.5: title band glow on pages without the banner (Daniel, October 24: version 1), gold line top and bottom */
body:not(:has(.rym-banner)) .rym-hero {
	background: radial-gradient(ellipse 85% 160% at 100% 100%, rgba(247,181,68,1) 0%, rgba(229,159,48,.85) 15%, rgba(210,129,38,.65) 32%, rgba(154,92,33,.35) 52%, rgba(99,54,15,.12) 68%, rgba(0,0,0,0) 80%), #000;
	border-bottom: 3px solid var(--wp--preset--color--gold);
}
@media (max-width: 600px) {
	body:not(:has(.rym-banner)) .rym-hero {
		background: radial-gradient(ellipse 150% 85% at 100% 100%, rgba(247,181,68,.95) 0%, rgba(229,159,48,.75) 15%, rgba(210,129,38,.5) 32%, rgba(154,92,33,.22) 52%, rgba(0,0,0,0) 72%), #000;
	}
}
body:not(:has(.rym-banner)) .rym-hero h1,
body:not(:has(.rym-banner)) .rym-hero .wp-block-post-title,
body:not(:has(.rym-banner)) .rym-hero .rym-byline { text-shadow: 0 1px 3px rgba(0,0,0,.55), 0 0 18px rgba(0,0,0,.45); }

/* v0.1.6: head mark, name and tagline are one link to Home; articles use a header with no menu (Daniel, October 24) */
.rym-header .rym-brandlink { display: flex; align-items: center; gap: 12px; text-decoration: none; color: #fff; }
.rym-header .rym-brandlink .rym-mark-img { display: block; width: 44px; height: 44px; border-radius: 50%; flex: 0 0 auto; }
.rym-header .rym-brandtext { display: flex; flex-direction: column; gap: 2px; }
.rym-header .rym-brandlink .rym-brand { color: #fff; }
.rym-header .rym-brandlink:hover .rym-brand, .rym-header .rym-brandlink:focus-visible .rym-brand { color: var(--wp--preset--color--gold); }
.rym-header .rym-brandlink:focus-visible { outline: 2px solid var(--wp--preset--color--gold); outline-offset: 4px; }

/* v0.1.7: footer in two lines (Special Edition removed); menu button from tablet width (Daniel, October 24) */
.rym-footer .rym-footer-links { margin-bottom: 4px; }
.rym-footer .rym-footer-legal { font-size: 13px; line-height: 2; margin-top: 0; }
.rym-footer .rym-footer-legal a { color: var(--wp--preset--color--footer-text); }
@media (min-width: 600px) and (max-width: 1023px) {
	.rym-header .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex; }
	.rym-header .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none; }
}
/* opened menu (phone and tablet): comfortable padding, left aligned, Resources items indented without a box */
.rym-header .wp-block-navigation__responsive-container.is-menu-open { padding: 24px 28px !important; }
.rym-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { align-items: flex-start !important; padding-top: 48px !important; }
.rym-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container,
.rym-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item { align-items: flex-start !important; text-align: left; }
.rym-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { font-size: 20px; padding: 6px 0 !important; }
.rym-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container { border: 0 !important; background: transparent !important; padding: 4px 0 4px 18px !important; gap: 4px; }
.rym-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content { font-size: 17px; color: var(--wp--preset--color--hero-text) !important; }
.rym-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:focus-visible { outline: 2px solid var(--wp--preset--color--gold); outline-offset: 2px; }
/* 0.2.9: the gold box shows for keyboard users only (Daniel, October 26) */
.rym-header .wp-block-navigation__responsive-container.is-menu-open a:focus:not(:focus-visible) { outline: none !important; }
.rym-header .wp-block-navigation__responsive-container.is-menu-open a:focus-visible { outline: 2px solid var(--wp--preset--color--gold) !important; outline-offset: 4px; }

/* v0.1.8: page elements for the full content load */
.rym-callout { font-family: var(--wp--preset--font-family--georgia); font-size: 24px; line-height: 1.35; border-left: 4px solid var(--wp--preset--color--gold); padding-left: 18px; margin-top: 1.6em !important; margin-bottom: 1.6em !important; }
.rym-hidden { display: none !important; }
.rym-fine { font-size: 14px; color: var(--wp--preset--color--muted); }
.rym-form-placeholder { border: 2px dashed var(--wp--preset--color--gold); background: var(--wp--preset--color--soft); padding: 18px 22px; }
.rym-cover img { box-shadow: 0 10px 30px rgba(0,0,0,.25); }
.rym-cards { gap: 24px; }
.rym-cards .rym-card { height: 100%; }
.rym-card .rym-facts { font-size: 16px; color: var(--wp--preset--color--muted); }
.rym-card .rym-for { font-style: italic; color: var(--wp--preset--color--muted); margin-top: 0; }
.wp-block-details { border-top: 1px solid var(--wp--preset--color--line); padding: 12px 0; }
.wp-block-details summary { cursor: pointer; font-weight: 700; color: var(--wp--preset--color--ink); }
.wp-block-details summary:hover { color: var(--wp--preset--color--dark-gold); }
.rym-library details { border-bottom: 1px solid var(--wp--preset--color--line); padding: 14px 0; }
.rym-library summary { cursor: pointer; font-family: var(--wp--preset--font-family--georgia); font-weight: 700; font-size: 22px; list-style-position: outside; }
.rym-library summary:hover { color: var(--wp--preset--color--dark-gold); }
.rym-library ol { margin: 12px 0 4px; padding-left: 1.4em; }
.rym-library li { margin: 6px 0; }
.rym-library li::before { content: none !important; }
.rym-sn-frame { width: 100%; border: 0; display: block; min-height: 900px; }
.rym-faq h3 { margin-top: 1.6em; }
.rym-cards .rym-card { padding: 24px 22px; }
.rym-cards .wp-block-button__link { padding: 12px 22px; font-size: 17px; white-space: nowrap; }
.rym-cards .rym-label { letter-spacing: 2px; }
.rym-sermon-inline a[target="_blank"]::after { content: none; }

/* Endorsement cards (Daniel, October 24, 2026; Log #454) */
.rym-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin-top: 8px; }
.rym-cards > .rym-card { margin: 0 !important; }
.wp-block-quote.rym-card { background: #fff; border: 0; border-top: 3px solid var(--wp--preset--color--gold); border-radius: 10px; padding: 28px 26px 24px; box-shadow: 0 2px 14px rgba(0,0,0,.06); display: grid; grid-template-columns: 76px 1fr; grid-template-rows: auto 1fr auto; column-gap: 14px; }
.wp-block-quote.rym-card::before { content: "\201C"; grid-column: 1 / -1; font-family: Georgia, serif; font-size: 64px; line-height: .6; color: var(--wp--preset--color--gold); height: 30px; }
.wp-block-quote.rym-card > p { grid-column: 1 / -1; font-family: var(--wp--preset--font-family--georgia); font-style: italic; font-size: 19px; line-height: 1.6; margin: 8px 0 24px; }
.wp-block-quote.rym-card > .rym-card-photo { grid-column: 1; margin: 0; padding-top: 18px; border-top: 1px solid var(--wp--preset--color--line); }
.wp-block-quote.rym-card > .rym-card-photo img { width: 76px; height: 76px; object-fit: cover; border-radius: 12px; display: block; }
.wp-block-quote.rym-card > cite { grid-column: 2; align-self: stretch; display: flex; flex-direction: column; justify-content: center; padding-top: 18px; border-top: 1px solid var(--wp--preset--color--line); margin: 0 0 0 -14px; padding-left: 14px; font-style: normal; font-weight: 400; font-size: 15px; line-height: 1.35; color: var(--wp--preset--color--muted); }
.wp-block-quote.rym-card > cite strong { color: var(--wp--preset--color--ink); font-size: 17px; font-weight: 700; }
@media (max-width: 820px) { .rym-cards { grid-template-columns: 1fr; } }

/* Author portrait beside "It Began Where Many Believers Already Are" */
.wp-block-image.rym-portrait { float: right; width: 240px; margin: 6px max(0px, calc((100% - var(--wp--style--global--content-size, 740px)) / 2)) 16px 32px !important; }
.wp-block-image.rym-portrait img { width: 100%; height: auto; border-radius: 12px; box-shadow: 0 6px 22px rgba(0,0,0,.14); display: block; }
.rym-section:has(.rym-portrait)::after { content: ""; display: table; clear: both; }
@media (max-width: 700px) { .wp-block-image.rym-portrait { float: none; width: 200px; margin: 4px auto 20px !important; } }

/* Home visual sections, round 2 (Daniel, October 24, 2026; Log #455) */
/* Book band */
.rym-book .wp-block-columns { align-items: center; gap: 48px; }
.rym-book .rym-book-cover img { width: 100%; max-width: 260px; height: auto; display: block; margin: 0 auto; box-shadow: 0 14px 34px rgba(0,0,0,.35); border-radius: 3px; }
.rym-book h2.wp-block-heading { margin-top: 0; }
.rym-book .rym-book-sub { font-family: var(--wp--preset--font-family--georgia); font-style: italic; font-size: 21px; margin-top: -6px; }
/* Two pathway cards */
.rym-duo { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; margin: 26px 0; }
.rym-duo > .wp-block-group { background: #fff; border: 1px solid var(--wp--preset--color--line); border-top: 3px solid var(--wp--preset--color--gold); border-radius: 10px; padding: 24px 24px 18px; margin: 0 !important; }
.rym-duo h3.wp-block-heading { margin: 0 0 8px; font-size: 20px; display: flex; align-items: center; gap: 12px; }
.rym-duo h3.wp-block-heading::before { content: ""; flex: none; width: 40px; height: 40px; border-radius: 50%; background: var(--wp--preset--color--pale-gold) center / 22px 22px no-repeat; }
.rym-duo .rym-icon-person h3::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2393680f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3Cpath d='M4 21v-1a6 6 0 0 1 6-6h4a6 6 0 0 1 6 6v1'/%3E%3C/svg%3E"); }
.rym-duo .rym-icon-church h3::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2393680f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2v5M10 4h4'/%3E%3Cpath d='M5 21V11l7-4 7 4v10'/%3E%3Cpath d='M3 21h18'/%3E%3Cpath d='M10 21v-4a2 2 0 0 1 4 0v4'/%3E%3C/svg%3E"); }
.rym-duo p { margin: 0; }
@media (max-width: 700px) { .rym-duo { grid-template-columns: 1fr; } }
/* Sermon Notes promo with phone preview */
.rym-sn-promo .wp-block-columns { align-items: center; gap: 44px; }
.rym-sn-promo .rym-phone img { width: 100%; max-width: 250px; height: auto; display: block; margin: 0 auto; filter: drop-shadow(0 16px 30px rgba(0,0,0,.25)); }
/* Scripture band */
.rym-verse { background: #000; border-top: 3px solid var(--wp--preset--color--gold); border-bottom: 3px solid var(--wp--preset--color--gold); padding-top: 56px !important; padding-bottom: 56px !important; text-align: center; }
.rym-verse p.rym-verse-text { font-family: var(--wp--preset--font-family--georgia); font-size: clamp(26px, 3.4vw, 38px); line-height: 1.3; color: #fff; margin: 0 auto 14px; max-width: 900px; }
.rym-verse p.rym-verse-text em { color: var(--wp--preset--color--gold); font-style: normal; }
.rym-verse p.rym-verse-ref { color: var(--wp--preset--color--hero-text); letter-spacing: .08em; font-size: 15px; margin: 0; }
/* Article library as picture cards */
.rym-library ol { list-style: none; padding: 0; margin: 18px 0 8px; display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 18px; }
.rym-library li { margin: 0; }
.rym-library li a { display: flex; flex-direction: column; height: 100%; background: #fff; border: 1px solid var(--wp--preset--color--line); border-radius: 10px; overflow: hidden; text-decoration: none; color: var(--wp--preset--color--ink); transition: box-shadow .15s, transform .15s; }
.rym-library li a:hover, .rym-library li a:focus-visible { box-shadow: 0 6px 18px rgba(0,0,0,.12); transform: translateY(-2px); color: var(--wp--preset--color--ink); }
.rym-library li a img { width: 100%; aspect-ratio: 1200 / 630; object-fit: cover; display: block; background: #000; }
.rym-library li a span { display: block; padding: 12px 14px 14px; font-weight: 500; font-size: 16px; line-height: 1.35; }
.rym-hero.rym-book h2.wp-block-heading { color: #fff; }
.rym-hero.rym-book h2.wp-block-heading::after { background: var(--wp--preset--color--gold); }
/* The Gap bridge photo (SP-01) */
.wp-block-image.rym-gap-photo { margin: 34px 0; }
.wp-block-image.rym-gap-photo img { width: 100%; height: auto; border-radius: 12px; display: block; }

/* Home photos, round 3 (Daniel, October 24, 2026; Log #456) */
body .rym-hero.rym-hero-bible { background: linear-gradient(90deg, rgba(0,0,0,.93) 0%, rgba(0,0,0,.82) 50%, rgba(0,0,0,.55) 100%), url("assets/images/Hero_Bible_Pencil.jpg") center 40% / cover no-repeat, #000 !important; }
@media (max-width: 700px) { body .rym-hero.rym-hero-bible { background: linear-gradient(rgba(0,0,0,.84), rgba(0,0,0,.84)), url("assets/images/Hero_Bible_Pencil.jpg") center / cover no-repeat, #000 !important; } }
.rym-duo > .wp-block-group { overflow: hidden; }
.rym-duo .wp-block-image.rym-duo-photo { margin: -24px -24px 18px; }
.rym-duo .wp-block-image.rym-duo-photo img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; display: block; }
/* Page photos (Daniel, October 24, 2026; Log #457) */
.wp-block-image.rym-photo { margin: 30px 0; }
.wp-block-image.rym-photo img { width: 100%; height: auto; border-radius: 12px; display: block; }

/* Article title bands with Bible photos (Log #457) */
body.rym-bg-1:not(:has(.rym-banner)) .rym-hero { background: radial-gradient(ellipse 70% 140% at 100% 100%, rgba(230,176,53,.45) 0%, rgba(154,92,33,.18) 40%, rgba(0,0,0,0) 70%), linear-gradient(90deg, rgba(0,0,0,.93) 0%, rgba(0,0,0,.8) 55%, rgba(0,0,0,.6) 100%), url("assets/images/Band_Bible_1.jpg") center / cover no-repeat, #000; }
body.rym-bg-2:not(:has(.rym-banner)) .rym-hero { background: radial-gradient(ellipse 70% 140% at 100% 100%, rgba(230,176,53,.45) 0%, rgba(154,92,33,.18) 40%, rgba(0,0,0,0) 70%), linear-gradient(90deg, rgba(0,0,0,.93) 0%, rgba(0,0,0,.8) 55%, rgba(0,0,0,.6) 100%), url("assets/images/Band_Bible_2.jpg") center / cover no-repeat, #000; }
body.rym-bg-3:not(:has(.rym-banner)) .rym-hero { background: radial-gradient(ellipse 70% 140% at 100% 100%, rgba(230,176,53,.45) 0%, rgba(154,92,33,.18) 40%, rgba(0,0,0,0) 70%), linear-gradient(90deg, rgba(0,0,0,.93) 0%, rgba(0,0,0,.8) 55%, rgba(0,0,0,.6) 100%), url("assets/images/Band_Bible_3.jpg") center / cover no-repeat, #000; }
body.rym-bg-4:not(:has(.rym-banner)) .rym-hero { background: radial-gradient(ellipse 70% 140% at 100% 100%, rgba(230,176,53,.45) 0%, rgba(154,92,33,.18) 40%, rgba(0,0,0,0) 70%), linear-gradient(90deg, rgba(0,0,0,.93) 0%, rgba(0,0,0,.8) 55%, rgba(0,0,0,.6) 100%), url("assets/images/Band_Bible_4.jpg") center / cover no-repeat, #000; }
@media (max-width: 600px) { body[class*="rym-bg-"]:not(:has(.rym-banner)) .rym-hero { background-blend-mode: normal; } body.rym-bg-1:not(:has(.rym-banner)) .rym-hero { background: linear-gradient(rgba(0,0,0,.84), rgba(0,0,0,.84)), url("assets/images/Band_Bible_1.jpg") center / cover no-repeat, #000; } body.rym-bg-2:not(:has(.rym-banner)) .rym-hero { background: linear-gradient(rgba(0,0,0,.84), rgba(0,0,0,.84)), url("assets/images/Band_Bible_2.jpg") center / cover no-repeat, #000; } body.rym-bg-3:not(:has(.rym-banner)) .rym-hero { background: linear-gradient(rgba(0,0,0,.84), rgba(0,0,0,.84)), url("assets/images/Band_Bible_3.jpg") center / cover no-repeat, #000; } body.rym-bg-4:not(:has(.rym-banner)) .rym-hero { background: linear-gradient(rgba(0,0,0,.84), rgba(0,0,0,.84)), url("assets/images/Band_Bible_4.jpg") center / cover no-repeat, #000; } }

/* Show-on-one-screen-size helpers (The Gap photo; also inline on page 28 until 0.2.7) */
@media (min-width: 701px) { .rym-phone-only { display: none !important; } }
@media (max-width: 700px) { .rym-desk-only { display: none !important; } }
.rym-desk-only ~ h2 { clear: both; }

/* Alternating section bands (0.2.7). Bands are wrapped at display time by functions.php. */
:root { --rym-cream: #f8f3e8; }
.wp-block-post-content > .rym-band { margin-block-start: 0 !important; margin-block-end: 0; padding-top: 52px; padding-bottom: 52px; display: flow-root; }
.wp-block-post-content > .rym-band-first { padding-top: 8px; }
/* The cream reaches the full screen width on pages and articles alike (border-image bleed; no sideways scroll). */
.wp-block-post-content > .rym-band.rym-band-tint { border-image: linear-gradient(#efe5cf 0 1px, var(--rym-cream) 1px calc(100% - 1px), #efe5cf calc(100% - 1px)) fill 0 / / 0 100vw; }
.wp-block-post-content > .rym-band.rym-band-tint + .rym-band.rym-band-tint { border-image: linear-gradient(var(--rym-cream) 0 calc(100% - 1px), #efe5cf calc(100% - 1px)) fill 0 / / 0 100vw; }
.rym-band > :first-child, .rym-band > style + * { margin-block-start: 0 !important; }
.rym-band > h2.wp-block-heading:first-child { margin-top: 0; }
.rym-band > :last-child { margin-block-end: 0; }
@media (max-width: 700px) { .wp-block-post-content > .rym-band { padding-top: 38px; padding-bottom: 38px; } .wp-block-post-content > .rym-band-first { padding-top: 4px; } }

/* Scripture quote cards: soft card with the gold quote mark (testimonial cards keep their own style). */
.wp-block-post-content .wp-block-quote:not(.rym-card):not(.rym-endorsement) {
	position: relative; background: #fbf8f1; border: 1px solid #efe5cf; border-left: 0; border-radius: 12px;
	padding: 26px 28px 22px 70px; margin-top: 1.6em; margin-bottom: 1.6em; box-shadow: 0 2px 12px rgba(0,0,0,.04);
}
.rym-band-tint .wp-block-quote:not(.rym-card):not(.rym-endorsement) { background: #fff; border-color: #eadfc6; }
.wp-block-post-content .wp-block-quote:not(.rym-card):not(.rym-endorsement)::before {
	content: "\201C"; position: absolute; left: 22px; top: 16px; font-family: Georgia, serif; font-size: 58px; line-height: 1; color: var(--wp--preset--color--gold);
}
.wp-block-post-content .wp-block-quote:not(.rym-card):not(.rym-endorsement) > p:last-of-type { margin-bottom: .35em; }
@media (max-width: 600px) {
	.wp-block-post-content .wp-block-quote:not(.rym-card):not(.rym-endorsement) { padding: 46px 20px 18px; }
	.wp-block-post-content .wp-block-quote:not(.rym-card):not(.rym-endorsement)::before { left: 18px; top: 8px; font-size: 50px; }
}
.wp-block-post-content > .rym-band.rym-band-tint:has(+ .rym-band-tint) { border-image: linear-gradient(#efe5cf 0 1px, var(--rym-cream) 1px) fill 0 / / 0 100vw; }
.wp-block-post-content > .rym-band.rym-band-tint + .rym-band.rym-band-tint:has(+ .rym-band-tint) { border-image: linear-gradient(var(--rym-cream) 0 0) fill 0 / / 0 100vw; }
.wp-block-post-content > .rym-band + .rym-section, .wp-block-post-content > .rym-section + .rym-band { margin-block-start: 0 !important; }

/* 0.2.9: the menu opens as a drop-down panel under the header, top right, with the page dimmed behind (Daniel, October 26) */
.rym-header .wp-block-navigation__responsive-container.is-menu-open {
	position: fixed !important; inset: auto !important;
	top: calc(var(--wp-admin--admin-bar--height, 0px) + 92px) !important; right: 16px !important; left: auto !important; bottom: auto !important;
	box-sizing: border-box; width: min(260px, calc(100vw - 24px)) !important; height: auto !important; max-height: calc(100vh - var(--wp-admin--admin-bar--height, 0px) - 108px);
	overflow-y: auto; padding: 14px 22px 18px !important; border: 1px solid rgba(212,166,63,.45); border-top: 3px solid var(--wp--preset--color--gold);
	border-radius: 12px; box-shadow: 0 18px 40px rgba(0,0,0,.35), 0 0 0 100vmax rgba(0,0,0,.45);
	animation: rym-menu-drop .18s ease-out;
}
@keyframes rym-menu-drop { from { opacity: 0; transform: translateY(-8px); } to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .rym-header .wp-block-navigation__responsive-container.is-menu-open { animation: none; } }
.rym-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog { margin-top: 0 !important; }
.rym-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { padding-top: 30px !important; gap: 0 !important; }
.rym-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close { top: 4px; right: 0; }
.rym-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { gap: 0 !important; width: 100%; }
.rym-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item { width: 100%; border-bottom: 1px solid rgba(212,166,63,.22); padding: 4px 0; }
.rym-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container > .wp-block-navigation-item:last-child { border-bottom: 0; }
.rym-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { font-size: 18px; }
.rym-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container { padding: 0 0 6px 16px !important; gap: 0 !important; }
.rym-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content { font-size: 16px; padding: 4px 0 !important; }
.rym-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:hover { color: var(--wp--preset--color--gold) !important; }
@media (max-width: 599px) {
	.rym-header .wp-block-navigation__responsive-container.is-menu-open { right: 12px !important; top: calc(var(--wp-admin--admin-bar--height, 0px) + 84px) !important; }
}
/* 0.2.12: the menu button always sits at the right of the header bar, including on Home where the bar has no brand name (Daniel, October 26) */
.rym-header .is-content-justification-space-between > .wp-block-navigation { margin-left: auto; }
.rym-header .wp-block-navigation__responsive-container-open:focus:not(:focus-visible),
.rym-header .wp-block-navigation__responsive-container-close:focus:not(:focus-visible) { outline: none; }
/* 0.2.15: Scripture cards inside dark bands (e.g. the Home opening section) use a dark glass card so the light text stays readable (Daniel, October 26) */
.wp-block-post-content .rym-hero .wp-block-quote:not(.rym-card):not(.rym-endorsement),
.wp-block-post-content .rym-verse .wp-block-quote:not(.rym-card):not(.rym-endorsement) {
	background: rgba(0,0,0,.45); border: 1px solid rgba(233,184,32,.35); box-shadow: none;
}
.wp-block-post-content .rym-hero .wp-block-quote:not(.rym-card):not(.rym-endorsement) p { color: #fff; }
.wp-block-post-content .rym-hero .wp-block-quote:not(.rym-card):not(.rym-endorsement) cite { color: var(--wp--preset--color--pale-gold, #E9C46A); }
/* 0.2.16: Sermon Notes videos, two side by side on every screen size (Daniel, October 26) */
.rym-videos { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; max-width: 560px; margin: 28px auto 32px; }
.rym-videos figure { margin: 0; text-align: center; }
.rym-videos video { width: 100%; aspect-ratio: 9 / 16; background: #121110; border-radius: 14px; box-shadow: 0 6px 22px rgba(0,0,0,.18); display: block; }
.rym-videos figcaption { font-size: 15px; margin-top: 8px; color: var(--wp--preset--color--muted); }
.rym-videos figcaption strong { display: block; color: var(--wp--preset--color--ink); font-size: 16px; }
@media (max-width: 480px) { .rym-videos { gap: 12px; } .rym-videos figcaption { font-size: 13px; } }


/* 0.2.19 (October 29, 2026): Book page (T-02) work, moved here from the site's Additional CSS.
 * Book page: the title banner is hidden so the cover comes first; the H1 stays for screen readers and search engines. */
.page-id-37 .rym-hero{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;margin:0!important;padding:0!important;border:0!important;}
.page-id-37 .rym-cover{margin-top:2.5rem;}
/* Format sections: indented rows of small pill buttons */
.rym-format{padding-left:1.5rem!important;margin-top:.25rem;margin-bottom:1.25rem;}
.rym-format p{margin:.25rem 0;}
.rym-pills{gap:.5rem;}
.rym-pills .rym-pill .wp-block-button__link{padding:.4rem 1rem;font-size:.9rem;border-radius:999px;line-height:1.3;}
.rym-bulk{margin-top:.75rem!important;font-size:.95rem;}
@media (max-width:600px){.rym-format{padding-left:1rem!important;}}

/* 0.2.20 (October 29, 2026): when a page ends on a tinted band, the space below it (the content area's
 * bottom padding and the footer's top margin) moves inside the band, so it is tinted instead of white.
 * The total space is unchanged. Pages that end on a white band are unaffected. */
.wp-block-post-content:has(> .rym-band.rym-band-tint:last-child) { padding-bottom: 0 !important; }
.wp-block-post-content > .rym-band.rym-band-tint:last-child { padding-bottom: calc(52px + var(--wp--preset--spacing--60, 52px) + var(--wp--style--block-gap, 1.4em)); }
main:has(.wp-block-post-content > .rym-band.rym-band-tint:last-child) + .wp-block-template-part { margin-block-start: 0 !important; }
@media (max-width: 700px) { .wp-block-post-content > .rym-band.rym-band-tint:last-child { padding-bottom: calc(38px + var(--wp--preset--spacing--60, 52px) + var(--wp--style--block-gap, 1.4em)); } }
