/* ────────────────────────────────────────────────────────────
   03-icon-cards.css — Icon Cards - 3 Across
   Class chain: core/group outer (alignfull)
                → gb element .icon-cards.icon-cards-3col
                → core/columns
                → core/column.icon-cards__card.icon-cards__card--{color}
   ──────────────────────────────────────────────────────────── */

/* ── Kill columns gap and block margin ────────────────────── */
.icon-cards .wp-block-columns {
	gap: 0;
	margin-block: 0;
}

/* ── Individual card ──────────────────────────────────────── */
.icon-cards__card {
	padding: var(--spacing-lg) var(--spacing-3xl);
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
}

/* ── Card background colors ───────────────────────────────── */
.icon-cards__card--orange { background-color: var(--color-orange-primary); }
.icon-cards__card--blue   { background-color: var(--color-blue-primary); }
.icon-cards__card--green  { background-color: var(--color-green-primary); }
.icon-cards__card--navy   { background-color: var(--color-blue-dark); }

/* ── Icons (CSS-only, not editable blocks) ────────────────── */
.icon-cards__card::before {
	content: "";
	display: block;
	width: 38px;
	height: 38px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	margin-bottom: var(--spacing-xs);
	flex-shrink: 0;
}

.icon-cards__card--orange::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cpath d='M20 35.5833L17.5833 33.3833C9 25.6 3.33333 20.4667 3.33333 14.1667C3.33333 9.03333 7.36666 5 12.5 5C15.4 5 18.1833 6.35 20 8.48333C21.8167 6.35 24.6 5 27.5 5C32.6333 5 36.6667 9.03333 36.6667 14.1667C36.6667 20.4667 31 25.6 22.4167 33.4L20 35.5833Z' fill='white'/%3E%3C/svg%3E");
}

.icon-cards__card--blue::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cpath d='M26.6667 18.333C29.4333 18.333 31.65 16.0997 31.65 13.333C31.65 10.5663 29.4333 8.33301 26.6667 8.33301C26.6667 8.33301 21.6667 10.5663 21.6667 13.333C21.6667 13.333 23.9 18.333 26.6667 18.333ZM13.3333 18.333C16.1 18.333 18.3167 16.0997 18.3167 13.333C18.3167 10.5663 16.1 8.33301 13.3333 8.33301C10.5667 8.33301 8.33334 10.5663 8.33334 13.333C8.33334 16.0997 10.5667 18.333 13.3333 18.333ZM13.3333 21.6663C9.45 21.6663 1.66667 23.6163 1.66667 27.4997V31.6663H25V27.4997C25 23.6163 17.2167 21.6663 13.3333 21.6663ZM26.6667 21.6663C26.1833 21.6663 25.6333 21.6997 25.05 21.7497C26.9833 23.1497 28.3333 25.033 28.3333 27.4997V31.6663H38.3333V27.4997C38.3333 23.6163 30.55 21.6663 26.6667 21.6663Z' fill='white'/%3E%3C/svg%3E");
}

.icon-cards__card--green::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 40 40'%3E%3Cpath d='M21.0832 16.6667C19.7165 12.7833 16.0165 10 11.6665 10C6.14984 10 1.6665 14.4833 1.6665 20C1.6665 25.5167 6.14984 30 11.6665 30C16.0165 30 19.7165 27.2167 21.0832 23.3333H28.3332V30H34.9998V23.3333H38.3332V16.6667H21.0832ZM11.6665 23.3333C9.83317 23.3333 8.33317 21.8333 8.33317 20C8.33317 18.1667 9.83317 16.6667 11.6665 16.6667C13.4998 16.6667 14.9998 18.1667 14.9998 20C14.9998 21.8333 13.4998 23.3333 11.6665 23.3333Z' fill='white'/%3E%3C/svg%3E");
}

/* Material Symbols "shopping_cart" (Filled), native 24x24 viewBox — the
   corrupted source SVG for this icon had invalid path data ("Cnan nan")
   and a mismatched 34x34 viewBox; this well-known glyph at its native
   grid renders pixel-identical to a hand-scaled 40x40 version inside
   this box (background-size: contain scales any viewBox proportionally),
   so no coordinate rescaling was needed or attempted. */
.icon-cards__card--navy::before {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M7 18c-1.1 0-1.99.9-1.99 2S5.9 22 7 22s2-.9 2-2-.9-2-2-2zM1 2v2h2l3.6 7.59-1.35 2.44C4.52 14.37 5.48 16 7 16h12v-2H7l1.1-2h7.45c.75 0 1.41-.41 1.75-1.03l3.58-6.49c.11-.2.17-.43.17-.66 0-.75-.61-1.36-1.36-1.36H5.21l-.94-2H1zm16 16c-1.1 0-1.99.9-1.99 2s.89 2 1.99 2 2-.9 2-2-.9-2-2-2z' fill='white'/%3E%3C/svg%3E");
}

/* ── Heading ──────────────────────────────────────────────── */
/* GB text h3 lacks .wp-block-heading so global inversion doesn't reach it */
.icon-cards__card h3 {
	color: var(--color-white);
	margin: 0 0 var(--spacing-sm);
	margin-block-start: 0;
	font-size: var(--text-heading-md);
}

/* ── Body text ────────────────────────────────────────────── */
.icon-cards__card p {
	color: var(--color-white);
	line-height: var(--line-height-normal);
	margin-block-start: 0;
	margin-block-end: 0;	
}

/* ── Link / button ────────────────────────────────────────── */
.icon-cards__card .wp-block-buttons {
	margin-top: var(--spacing-sm);
}

.icon-cards__card .wp-block-button a.wp-block-button__link {
	font-size: var(--text-body-lg);
}

.icon-cards__card .wp-block-button__link,
.icon-cards__card .wp-block-button__link:hover {
	background: none;
	border: none;
	padding: 0;
	color: var(--color-white) !important;
	font-weight: var(--font-weight-bold) !important;
	text-decoration: underline !important;
}

.icon-cards__card .wp-block-button__link:hover {
	opacity: 0.8;
}

.icon-cards__card .wp-block-button.is-style-no-style a.wp-block-button__link::after{
	display: none;
}

/* ── Responsive ───────────────────────────────────────────── */
@media (max-width: 1024px) {
	.icon-cards__card {
		padding: var(--spacing-xl) var(--spacing-sm);
	}
}

/* ── Editor: disable hero-overlap negative margin ─────────────
   margin-top: -83px pulls icon cards over the hero on the front end.
   In the editor there is no hero context, so the negative margin
   clips the component off-screen.
*/
.editor-styles-wrapper .wp-block-group:has(> .icon-cards-3col) {
    margin-top: 0;
    position: static;
    z-index: auto;
}