/* Ultra Core Blocks — styles for block-based pages.
   Relies on the theme's own classes (.section-py, .container, .section-label,
   .section-title-lg, .section-title, .section-subtitle-lg, .section-subtitle)
   and adds the few pieces core blocks need. */

/* Neutralise default block spacing so the theme's rhythm wins */
.uc-blocks .wp-block-group,
.editor-styles-wrapper .wp-block-group.section-py { margin-top: 0; margin-bottom: 0; }
.uc-blocks :where(.wp-block-group) > * { margin-block-start: 0; }
.uc-blocks .wp-block-group__inner-container { display: contents; }

/* Sections are centered like the original theme pages */
.uc-blocks .section-py .container,
.editor-styles-wrapper .section-py .container { text-align: center; }

/* Section backgrounds */
.uc-bg-warm { background-color: #f8f5f2; }
.uc-bg-white { background-color: #ffffff; }
.uc-bg-dark { background-color: #1a1a1a; color: #fff; }
.uc-bg-dark .section-title,
.uc-bg-dark .section-title-lg { color: #fff; }
.uc-bg-dark .section-subtitle,
.uc-bg-dark .section-subtitle-lg { color: rgba(255,255,255,.75); }

/* Centered subtitles keep the theme's 672px measure */
.uc-blocks .section-subtitle,
.uc-blocks .section-subtitle-lg { margin-left: auto; margin-right: auto; }

/* Orange checklist (List block → style "Orange checklist") */
.is-style-uc-checklist {
	list-style: none;
	padding: 0;
	margin: 0 auto;
	max-width: 760px;
	text-align: left;
	columns: 1;
	column-gap: 3rem;
}
@media (min-width: 768px) { .is-style-uc-checklist { columns: 2; } }
.is-style-uc-checklist li {
	break-inside: avoid;
	position: relative;
	padding-left: 2rem;
	margin-bottom: 1rem;
	color: #4a4a4a;
	font-size: clamp(0.9375rem, 1vw + 0.25rem, 1.125rem);
}
.is-style-uc-checklist li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.2em;
	width: 20px;
	height: 20px;
	background-color: #D4500A;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center / contain no-repeat;
	        mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* Buttons (Button block → styles "Ultra Core Orange" / "Ultra Core Outline") */
.wp-block-button.is-style-uc-primary .wp-block-button__link,
.wp-block-button.is-style-uc-outline .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 9999px;
	padding: 18px 40px;
	font-family: Rajdhani, sans-serif;
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 0.4px;
	line-height: 1.4;
	text-decoration: none;
	transition: background-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.wp-block-button.is-style-uc-primary .wp-block-button__link {
	background-color: #D4500A;
	color: #fff;
	border: 0;
	box-shadow: 0 4px 16px rgba(212, 80, 10, .3);
}
.wp-block-button.is-style-uc-primary .wp-block-button__link:hover {
	background-color: #b5430a;
	transform: translateY(-1px);
	box-shadow: 0 6px 20px rgba(212, 80, 10, .38);
}
.wp-block-button.is-style-uc-outline .wp-block-button__link {
	background-color: transparent;
	color: #343434;
	border: 2px solid rgba(52, 52, 52, .5);
}
.wp-block-button.is-style-uc-outline .wp-block-button__link:hover {
	border-color: #D4500A;
	color: #D4500A;
}
.uc-blocks .wp-block-buttons { margin-top: 0; }

/* Project gallery (Gallery block with class "uc-gallery") */
.wp-block-gallery.uc-gallery {
	display: grid !important;
	grid-template-columns: repeat(2, 1fr);
	gap: 1rem !important;
	margin: 0;
}
@media (min-width: 768px) { .wp-block-gallery.uc-gallery { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 1920px) { .wp-block-gallery.uc-gallery { grid-template-columns: repeat(4, 1fr); } }
.wp-block-gallery.uc-gallery > .wp-block-image {
	width: auto !important;
	margin: 0 !important;
	aspect-ratio: 3 / 4;
	border-radius: 12px;
	overflow: hidden;
	background: #f5f3f0;
}
.wp-block-gallery.uc-gallery > .wp-block-image img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
	transition: transform .6s cubic-bezier(.22, 1, .36, 1);
}
@media (hover: hover) {
	.wp-block-gallery.uc-gallery > .wp-block-image:hover img { transform: scale(1.04); }
}
