/*
Theme Name: Sparkle Clean
Theme URI: https://example.com/
Author: AZT Labs
Description: Fresh, airy block theme for a Melbourne home and commercial cleaning business. Built from the Sparkle Clean mockup.
Version: 1.0.5
Requires at least: 6.4
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: sparkle-clean
*/

/* Layout helpers used by the patterns. Colours, fonts and sizes live in theme.json. */

.sc-header { border-bottom: 1px solid var(--wp--preset--color--line); }

.sc-eyebrow {
	display: inline-block;
	background: var(--wp--preset--color--mint);
	color: var(--wp--preset--color--mint-ink);
	font-weight: 600;
	font-size: 0.875rem;
	padding: 0.5rem 0.875rem;
	border-radius: 999px;
}

.sc-lead { color: var(--wp--preset--color--muted); font-size: 1.1875rem; line-height: 1.6; max-width: 34rem; }

.sc-checks { list-style: none; padding: 0; display: flex; flex-wrap: wrap; gap: 0.75rem 1.75rem; font-size: 0.9375rem; }
.sc-checks li { display: flex; align-items: center; gap: 0.5rem; }
.sc-checks li::before {
	content: "";
	width: 18px; height: 18px; flex: none;
	background: no-repeat center / contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2317876A' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E");
}

.sc-photo {
	min-height: 460px;
	border-radius: 28px;
	background: #D6EAF4;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	color: #3C6580;
	padding: 1.5rem;
}
.sc-photo img { border-radius: 28px; }

.sc-card {
	border-radius: 24px;
	padding: 2.25rem;
	height: 100%;
	box-sizing: border-box;
}
.sc-card ul { padding-left: 1.25rem; }

.sc-icon {
	width: 56px; height: 56px;
	border-radius: 16px;
	background: #fff;
	display: flex; align-items: center; justify-content: center;
}

.sc-step-num {
	width: 48px; height: 48px;
	border-radius: 999px;
	background: var(--wp--preset--color--primary);
	color: #fff;
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 800;
	font-size: 1.25rem;
	display: flex; align-items: center; justify-content: center;
	margin: 0;
}

.sc-panel { border: 1px solid var(--wp--preset--color--line); border-radius: 28px; padding: 3rem; }

.sc-review {
	background: #fff;
	border-radius: 20px;
	padding: 1.75rem;
	height: 100%;
	box-sizing: border-box;
}
.sc-tag {
	display: inline-block;
	font-size: 0.8125rem;
	font-weight: 600;
	color: var(--wp--preset--color--primary-dark);
	background: #E4F1F9;
	padding: 0.25rem 0.625rem;
	border-radius: 999px;
}

.sc-chips .wp-block-button__link {
	background: transparent;
	color: var(--wp--preset--color--ink);
	border: 1.5px solid #CFDDE7;
	font-weight: 500;
	padding: 0.65rem 1.25rem;
}
.sc-chips .wp-block-button__link:hover { border-color: var(--wp--preset--color--primary); color: var(--wp--preset--color--primary-dark); }

.sc-cta { border-radius: 32px; }
.sc-cta .wp-block-button__link { background: #fff; color: var(--wp--preset--color--primary-dark); font-weight: 700; }
.sc-cta a:not(.wp-block-button__link) { color: #fff; }

.sc-footer a { color: #C9D6E0; text-decoration: none; }
.sc-footer a:hover { color: #fff; text-decoration: underline; }

.is-style-outline > .wp-block-button__link { border: 1.5px solid #B9CCDA; color: var(--wp--preset--color--ink); background: #fff; }

.wp-block-button__link { min-height: 44px; display: inline-flex; align-items: center; }

@media (max-width: 781px) {
	.sc-panel { padding: 1.75rem; }
	.sc-photo { min-height: 280px; }
}

/* Photos */
.sc-hero-img { margin: 0; }
.sc-hero-img img { width: 100%; height: 460px; object-fit: cover; border-radius: 28px; display: block; }
.sc-photo-inline img { width: 100%; max-height: 420px; object-fit: cover; border-radius: 20px; display: block; }
.wp-site-blocks .sc-header a[href^="tel:"] { text-decoration: none; color: var(--wp--preset--color--ink); }
@media (max-width: 781px) { .sc-hero-img img { height: 280px; } }

/* Intro paragraph on standard pages: full content width */
.wp-block-post-content > .sc-lead { max-width: var(--wp--style--global--content-size); }

/* Quote form spacing */
.sq-form legend { margin-bottom: 1rem; }
.sq-form .sq-home, .sq-form .sq-business { display: flex; flex-direction: column; gap: 1.25rem; }
.sq-form .sq-label { margin: 0.5rem 0 -0.5rem; }

/* Standard pages: same 1200px frame as the hub pages; text keeps a readable line length, aligned to the left edge */
.sc-page .wp-block-post-content > :is(p, ul, ol, h2, h3, .wp-block-details, .sq-form, .sq-done, .sq-error) { max-width: 800px; margin-left: 0 !important; }
.sc-page .wp-block-post-content > .sc-photo-inline img { max-height: 460px; }
