/*
Theme Name: Creativ Musician Child
Theme URI: https://salvage.garden/
Description: Child theme of Creativ Musician for SalvageGarden. Adds a "More blog posts" button under the Latest from the blog section on the home page. Carries over the parent theme's Customizer settings on activation. v1.3: a look pass that unifies the theme and Elementor into one design system (one background, one pink, one heading font, one button, one container width, one spacing rhythm) and small readability fixes. v1.3.3: the Latest from the blog section renders before the CTA banner (front-page.php override), and the header logo loads eagerly (D5 fix).
Author: SalvageGarden
Template: creativ-musician
Version: 1.3.3
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: creativ-musician-child
*/

/* Center the "More blog posts" button under the Latest from the blog section. */
#blog .sg-blog-more {
	text-align: center;
	margin-top: 30px;
}

/* ---------------------------------------------------------------
   Look pass (v1.3) — one design system, not three.
   The site mixes the theme (Open Sans/Montserrat, 1200px, dark)
   with Elementor (Ubuntu/Roboto, 1140px) and Gutenberg blocks.
   Every rule below pulls them into one system. Nothing here edits
   the parent theme; deactivating this child theme restores the site.
   Audit: ~/workspace/site-audit/audit-report.md (15 Nov 2026).
   --------------------------------------------------------------- */

/* D10 — One page background: the theme's near-black, so the #292929
   cards read as cards again instead of darker than the page. */
body.custom-background {
	background-color: #1a1a1a !important;
}

/* D13 — One pink: the site title matches every other accent.
   (Beats the #FF429A rule in Additional CSS on specificity.) */
body div#site-identity > h1.site-title > a {
	color: #ff0078 !important;
}

/* D12 — One heading font: Elementor headings use Montserrat like
   the theme, with the theme's line-height and margins. */
body.elementor-kit-259 h1,
body.elementor-kit-259 h2,
body.elementor-kit-259 h3,
body.elementor-kit-259 h4,
body.elementor-kit-259 h5,
body.elementor-kit-259 h6 {
	font-family: 'Montserrat', sans-serif;
}
.elementor-widget-heading .elementor-heading-title {
	line-height: 1.3;
	margin: 16px 0;
}

/* D11 — One button style: Elementor and Gutenberg buttons match
   the theme's .btn (12px Montserrat 600 uppercase, pink, 5px radius). */
body.elementor-kit-259 .elementor-button {
	font-family: 'Montserrat', sans-serif;
	font-size: 12px;
	font-weight: 600;
	text-transform: uppercase;
	line-height: normal;
	padding: 5px 20px;
	min-height: 0;
	background-color: #ff0078;
	border-radius: 5px;
	color: #fff;
}
body.elementor-kit-259 .elementor-button:hover,
body.elementor-kit-259 .elementor-button:focus {
	background-color: #fff;
	color: #ff0078;
}
.wp-block-button__link {
	background: #ff0078 !important;
	border-radius: 5px !important;
	font-family: 'Montserrat', sans-serif !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	padding: 5px 20px !important;
	color: #fff !important;
}
.wp-block-button__link:hover,
.wp-block-button__link:focus {
	background: #fff !important;
	color: #ff0078 !important;
}

/* D14 — One container width: Elementor sections match the theme's
   1200px wrapper, so content edges line up as you scroll. */
body .elementor-section.elementor-section-boxed > .elementor-container {
	max-width: 1200px;
}

/* D15 — One vertical rhythm: Elementor sections get the theme's
   section padding; spacers use one value. */
.elementor-top-section {
	padding-top: 64px;
	padding-bottom: 64px;
}
.elementor-widget-spacer {
	--spacer-size: 24px !important;
}
@media screen and (max-width: 767px) {
	.elementor-top-section {
		padding-top: 48px;
		padding-bottom: 48px;
	}
}

/* D16 — Even icon boxes: one icon size, one gap. */
.elementor-widget-icon-box .elementor-icon {
	font-size: 60px !important;
}
.elementor-widget-icon-box .elementor-icon-box-wrapper {
	gap: 15px !important;
}

/* D17 — The hero shrinks on phones instead of staying 600px tall. */
@media screen and (max-width: 767px) {
	#featured-slider .slick-item {
		padding: 140px 0 !important;
	}
}

/* D18 — Single posts read at a comfortable line length.
   The parent theme's rule .no-sidebar.single article.post
   .entry-content has four classes, so it outranks any plain
   child-theme selector: the 720px cap needs !important. */
body.single article.post .entry-header,
body.single article.post .entry-content {
	max-width: 720px !important;
	margin-left: auto;
	margin-right: auto;
}

/* D19 — Slider arrows: chevrons centred in their 40px squares. */
.slick-prev,
.slick-next {
	line-height: 40px;
}

/* D20 — Card buttons get breathing room below the excerpt. */
.blog-posts-wrapper .read-more {
	margin-top: 24px;
}

/* D21 — One link rule: links inside Elementor text are underlined,
   like links in theme posts. */
body .elementor-widget-text-editor a {
	text-decoration: underline;
}

/* D22 — Footer partner logos at one height. The PayNow QR
   (widget block-26) is deliberately left alone. */
#colophon .widget_media_image:not(#block-26) img {
	height: 64px;
	width: auto;
}

/* D23 — One overlay darkness for slider, CTA and page banner. */
#featured-slider .overlay,
#cta .overlay,
#page-site-header .overlay {
	opacity: 0.5 !important;
}
