/*
Theme Name: Discount Bible
Template: generatepress
Description: GeneratePress child for Discount Bible Book & Music Store. Design tokens, container width and fonts are applied to GeneratePress by the converter (apply-theme), not hard-coded here.
Version: 0.6.0
Text Domain: discount-bible
*/

/* Imported pages are full-bleed GenerateBlocks sections that carry their own
   inner max-width, so the page wrapper must not box them in. The theme's
   container width (apply-theme) still governs posts, archives and the editor. */
.page .site.grid-container,
.page .site-content,
.page .content-area,
.page .site-main,
.page .inside-article,
.page .entry-content {
	max-width: none;
	width: 100%;
	padding: 0;
	margin: 0;
}
.page .entry-header,
.page .page-header { display: none; }
.page .site-content { display: block; }
/* Imported pages ship their own header (GP Element); GP's navigation would repeat it. */
.page .main-navigation,
.page #mobile-header { display: none; }

/* GenerateBlocks forms: GB's own form-style.css loads after block CSS and wins at equal
   specificity, so the site's field look lives here, driven by the theme's color tokens. */
.gb-form .gb-form-field__label { color: var(--ink, #333); font-size: 1.25rem; line-height: 1.5; }
.gb-form .gb-form-field__input {
	box-sizing: border-box;
	width: 100%;
	padding: 10px;
	margin: 3px 0;
	background: rgba(102, 102, 102, 0.15);
	border: 1px solid var(--brand-red, #c54232);
	border-radius: 0;
	color: #000;
}
.gb-form .gb-form-field__input:focus-visible { outline: 3px solid var(--brand-gold, #dbbf75); outline-offset: 1px; }
.gb-form-message--success { color: var(--ink, #333); font-weight: 600; padding: 12px 18px; }
.gb-form-message--error { color: #b00020; font-weight: 600; padding: 12px 18px; }

/* Responsive. Converted pages carry the source's desktop measurements, so cap what
   cannot exceed the viewport and stack multi-column rows (the converter marks them
   etg-row) on small screens. */
.page img.gb-media,
.page .gb-shape svg { max-width: 100%; height: auto; }
.page .gb-element,
.page .gb-text { max-width: 100%; box-sizing: border-box; }
@media (max-width: 1024px) {
	body .etg-row { flex-wrap: wrap; }
}
@media (max-width: 767px) {
	body .etg-row { flex-direction: column; }
	body .etg-row > .gb-element { width: 100%; max-width: 100%; margin-left: 0; margin-right: 0; }
	body .gb-form-field { width: 100%; }
	body h1.gb-text { font-size: clamp(1.75rem, 8vw, 3rem); line-height: 1.2; }
	body h2.gb-text, body h3.gb-text { font-size: clamp(1.4rem, 6vw, 2rem); line-height: 1.25; }
	body .gb-text { overflow-wrap: anywhere; }
}

/* Navigation: the converter builds a WordPress menu + GenerateBlocks Pro Navigation block;
   the look comes from the theme's color tokens. */
.gb-navigation .gb-menu { margin: 0; padding: 0; list-style: none; }
.gb-navigation .gb-menu-link {
	padding: 5px 15px;
	font-size: 1.25rem;
	font-weight: 700;
	letter-spacing: 0.6px;
	text-transform: uppercase;
	text-decoration: none;
	color: var(--ink, #463939);
}
.gb-navigation .gb-menu-link:hover,
.gb-navigation .current-menu-item > .gb-menu-link { color: var(--brand-red, #c54232); }
.gb-navigation .current-menu-item > .gb-menu-link { box-shadow: 0 2px 0 var(--brand-red, #c54232); }
.site-footer .gb-navigation .gb-menu-link { color: #fff; font-size: 0.95rem; font-weight: 400; }
.site-footer .gb-navigation .gb-menu-link:hover,
.site-footer .gb-navigation .current-menu-item > .gb-menu-link { color: var(--brand-gold, #dbbf75); box-shadow: none; }
@media (min-width: 768px) {
	.gb-navigation .gb-menu { display: flex; flex-wrap: wrap; justify-content: center; gap: 0 0.25rem; }
}

/* Desktop-sized spacing and tall hero blocks (marked etg-pad / etg-tall by the converter). */
@media (max-width: 1024px) {
	body .etg-pad { padding-left: 24px; padding-right: 24px; }
}
@media (max-width: 767px) {
	body .etg-pad { padding: 24px 16px; }
	body .etg-tall { min-height: 240px; }
}
