/* v1.8.13 Tools & templates: two "Coming soon" templates + "More templates on the way", airy layered grid,
   cards revealed one by one (left to right, then down). Contact form: newsletter note hidden in join mode. */

/* ---------- Tools & templates: more breathing room ---------- */
.shf-tools { padding-top: clamp(72px, 9vw, 120px) !important; padding-bottom: clamp(80px, 10vw, 132px) !important; }
.shf-tools .shf-section-head { margin-bottom: clamp(40px, 5vw, 64px) !important; }
.shf-tools-grid {
	gap: clamp(28px, 3.2vw, 40px) !important;
	max-width: 1120px;
	margin-left: auto !important;
	margin-right: auto !important;
	padding: 12px 0 8px;
}
.shf-tool-card__body { padding: 30px 32px 34px !important; }
.shf-tool-card .shf-tool-type { margin-bottom: 16px !important; }
.shf-tool-card__title { margin-bottom: 12px !important; }
.shf-tool-card__text { margin-bottom: 24px !important; line-height: 1.6; }
.shf-tool-card--more { padding: 38px 36px !important; }
.shf-tool-card--more .shf-tool-card__text { margin-bottom: 26px !important; }

/* Layered, not boxed: softer edge, deeper soft shadow, a gentle offset tint behind each card. */
.shf-tool-card { border-color: rgba(11, 26, 51, 0.06) !important; border-radius: 24px !important; box-shadow: 0 18px 40px -18px rgba(11, 26, 51, 0.22), 0 2px 6px rgba(11, 26, 51, 0.04) !important; }
.shf-tool-card:not(.shf-tool-card--more) {
	box-shadow: 14px 16px 0 -4px var(--type-tint, #DFF4F8), 0 18px 40px -18px rgba(11, 26, 51, 0.22), 0 2px 6px rgba(11, 26, 51, 0.04) !important;
	transition: transform .35s cubic-bezier(.22, .61, .36, 1), box-shadow .35s cubic-bezier(.22, .61, .36, 1);
}
.shf-tool-card:not(.shf-tool-card--more):hover {
	box-shadow: 18px 20px 0 -4px var(--type-tint, #DFF4F8), 0 26px 48px -18px rgba(11, 26, 51, 0.26), 0 2px 6px rgba(11, 26, 51, 0.04) !important;
}
.shf-tool-card--more { border-radius: 24px !important; }

/* "+" on the More card goes to the Contact form; sits above the card-wide "Get updates" link. */
.shf-tool-card__plus { position: relative; z-index: 2; display: inline-block; border-radius: 14px; line-height: 0; margin: 0 0 24px !important; text-decoration: none; }
.shf-tool-card--more .shf-tool-card__plus .shf-tool-card__icon { margin: 0 !important; transition: background-color .2s ease, transform .2s ease, box-shadow .2s ease; }
.shf-tool-card__plus:hover .shf-tool-card__icon,
.shf-tool-card__plus:focus-visible .shf-tool-card__icon { background: #CFF4FA; color: var(--shf-ink); transform: translateY(-2px); box-shadow: 0 0 0 4px rgba(124, 220, 236, 0.45); }
.shf-tool-card__plus:focus-visible { outline: 3px solid #7CDCEC; outline-offset: 3px; }
.shf-tool-card--more .shf-tool-card__link a:hover,
.shf-tool-card--more .shf-tool-card__link a:focus-visible { color: #CFF4FA; }

@media (max-width: 900px) {
	.shf-tools-grid { gap: 32px !important; }
}
@media (max-width: 600px) {
	.shf-tools-grid { gap: 28px !important; }
	.shf-tool-card__body { padding: 26px 24px 28px !important; }
	.shf-tool-card--more { padding: 30px 26px !important; }
}

/* ---------- Staggered reveal (only once JS has armed it, so cards never stay hidden without JS) ---------- */
.shf-v1813-armed .shf-v1813-stagger > .shf-v1813-item {
	opacity: 0;
	transform: translateY(26px);
	transition: opacity .6s cubic-bezier(.22, .61, .36, 1), transform .6s cubic-bezier(.22, .61, .36, 1);
	transition-delay: var(--shf-v1813-delay, 0ms);
}
.shf-v1813-armed .shf-v1813-stagger > .shf-v1813-item.is-in { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
	.shf-v1813-armed .shf-v1813-stagger > .shf-v1813-item { opacity: 1 !important; transform: none !important; transition: none !important; }
}

/* ---------- Contact form: no newsletter note once "Join as member" is chosen ---------- */
.shf-contact-formcard__join[hidden],
.shf-contact-formcard:has(form[data-mode="join"]) .shf-contact-formcard__join { display: none !important; }
