/*
Theme Name: Shristy Fashion
Theme URI: https://shristyfashion.com/
Author: Shristy Fashion Ltd.
Description: Custom block theme for Shristy Fashion Ltd.
Version: 0.1.23
Text Domain: shristy-fashion
Requires at least: 6.6
*/

/*
 * Keep global design decisions in theme.json where practical.
 * Add only focused CSS here or in assets/css as requirements emerge.
 */

:focus-visible {
	box-shadow:
		0 0 0 2px var(--wp--preset--color--white),
		0 0 0 4px var(--wp--preset--color--slate-hover);
	outline: 2px solid transparent;
	outline-offset: 2px;
}

/* Legal pages — draft candidates for local review. */
:is(.sfl-legal-notice, .sfl-terms-of-use, .sfl-privacy-policy) {
	box-sizing: border-box;
	margin-block: 0;
	margin-inline: 0 !important;
	max-width: none !important;
	padding: clamp(32px, 4vw, 56px) clamp(16px, 3vw, 24px) clamp(40px, 5vw, 64px);
	width: 100%;
}

:is(.sfl-legal-notice__inner, .sfl-terms-of-use__inner, .sfl-privacy-policy__inner) {
	box-sizing: border-box;
	margin-inline: auto !important;
	width: 100%;
}

:is(.sfl-legal-notice, .sfl-terms-of-use, .sfl-privacy-policy) h1 {
	font-size: clamp(1.875rem, 1.65rem + 0.8vw, 2.25rem);
	letter-spacing: -0.02em;
	line-height: 1.15;
	margin: 0 0 clamp(18px, 2vw, 24px);
}

:is(.sfl-legal-notice, .sfl-terms-of-use, .sfl-privacy-policy) h2 {
	font-size: clamp(1.25rem, 1.1rem + 0.55vw, 1.5rem);
	line-height: 1.3;
	margin: clamp(24px, 3vw, 32px) 0 10px;
}

:is(.sfl-legal-notice, .sfl-terms-of-use, .sfl-privacy-policy) p {
	line-height: 1.7;
	margin-block: 0 16px;
}

:is(.sfl-legal-notice, .sfl-terms-of-use, .sfl-privacy-policy) a {
	text-underline-offset: 3px;
}

:is(.sfl-legal-notice__updated, .sfl-terms-of-use__updated) {
	border-top: 1px solid var(--wp--preset--color--border);
	color: var(--wp--preset--color--muted);
	margin-top: clamp(28px, 3.5vw, 36px) !important;
	padding-top: 16px;
}

:is(.sfl-terms-of-use, .sfl-privacy-policy) ul {
	margin-block: 0 16px;
	padding-inline-start: 1.5rem;
}

:is(.sfl-terms-of-use, .sfl-privacy-policy) li {
	line-height: 1.7;
	margin-block: 0 6px;
}

/* Stable full-width content shell for primary Shristy pages. */
body.sfl-full-width-page #main-content > .wp-block-post-content {
        box-sizing: border-box;
        margin-inline: 0 !important;
        max-width: none !important;
        width: 100%;
}
/* Quality & Compliance page v0.1 */
/* Scoped neutral treatment for large editorial section surfaces. */
.sfl-quality-control,
.sfl-quality-social,
.sfl-products-categories,
.sfl-products-development,
.sfl-home-products,
.sfl-home-company,
.sfl-home-international,
.sfl-capabilities-overview,
.sfl-capabilities-materials,
.sfl-capabilities-bulk,
.sfl-capabilities-enquiry,
.sfl-company-story,
.sfl-company-message,
.sfl-company-memberships,
.sfl-product-category__gallery-section,
.sfl-product-category__related,
.sfl-contact-enquiry,
.sfl-contact-location {
	background-color: #F5F6F6 !important;
}

.sfl-quality {
	box-sizing: border-box;
	margin-block: 0;
	margin-inline: 0 !important;
	max-width: none !important;
	width: 100%;
}

.sfl-quality .alignwide { box-sizing: border-box; margin-inline: auto !important; max-width: var(--wp--style--global--wide-size, 1200px); width: 100%; }
.sfl-quality-section { box-sizing: border-box; padding: clamp(64px, 8vw, 112px) clamp(16px, 3vw, 24px); }
.sfl-quality-section > :first-child, .sfl-quality-heading > :first-child, .sfl-quality-final__copy > :first-child { margin-top: 0; }
.sfl-quality-section > :last-child, .sfl-quality-heading > :last-child, .sfl-quality-final__copy > :last-child { margin-bottom: 0; }
.sfl-quality-hero { padding-block: clamp(56px, 7vw, 96px); }
.sfl-quality-hero__columns { gap: clamp(40px, 6vw, 80px); }
.sfl-quality-hero__content h1 { letter-spacing: -0.035em; max-width: none; overflow-wrap: anywhere; }
.sfl-quality-eyebrow { color: var(--wp--preset--color--primary-slate); font-size: 0.8125rem; font-weight: 700; letter-spacing: 0.11em; line-height: 1.4; text-transform: uppercase; }
.sfl-quality-intro { color: var(--wp--preset--color--muted); font-size: clamp(1.0625rem, 1.5vw, 1.25rem); line-height: 1.6; }
.sfl-quality-actions { gap: 12px; padding-top: 8px; }
.sfl-quality .wp-block-button__link { align-items: center; box-sizing: border-box; display: inline-flex; justify-content: center; min-height: 48px; padding: 12px 22px; }
.sfl-quality .is-style-outline > .wp-block-button__link { border-color: var(--wp--preset--color--primary-slate); color: var(--wp--preset--color--primary-slate); }
.sfl-quality .is-style-outline > .wp-block-button__link:hover { background: var(--wp--preset--color--slate-hover); border-color: var(--wp--preset--color--slate-hover); color: var(--wp--preset--color--white); }
.sfl-quality-placeholder { align-items: center; aspect-ratio: 4 / 5; background: #F7F8F8; border: 1px dashed var(--wp--preset--color--border); box-sizing: border-box; color: var(--wp--preset--color--muted); display: flex; flex-direction: column; justify-content: center; min-height: 500px; overflow: hidden; padding: clamp(20px, 3vw, 40px); text-align: center; width: 100%; }
.sfl-quality-placeholder p { margin-block: 4px; max-width: 22rem; }
.sfl-quality-placeholder__label { color: var(--wp--preset--color--primary-slate); font-size: 0.75rem; font-weight: 700; letter-spacing: 0.1em; line-height: 1.5; }
.sfl-quality-evidence { background-color: #FFFFFF !important; color: var(--wp--preset--color--charcoal) !important; padding-inline: clamp(16px, 3vw, 24px); }
.sfl-quality-evidence__grid { display: grid; gap: 0; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.sfl-quality-evidence__grid p { align-items: center; border-left: 1px solid var(--wp--preset--color--border); display: flex; font-size: 0.75rem; font-weight: 700; letter-spacing: 0.075em; line-height: 1.45; margin: 0; min-height: 112px; min-width: 0; overflow-wrap: anywhere; padding: 24px clamp(16px, 2vw, 28px); }
.sfl-quality-evidence__grid p:last-child { border-right: 1px solid var(--wp--preset--color--border); }
.sfl-quality-heading { margin-bottom: clamp(40px, 5vw, 64px); }
.sfl-quality-columns, .sfl-quality-process__grid { gap: 0; }
.sfl-quality-columns > .wp-block-column, .sfl-quality-process__item { border-left: 1px solid var(--wp--preset--color--border); box-sizing: border-box; min-width: 0; padding: 0 clamp(24px, 4vw, 48px); }
.sfl-quality-columns > .wp-block-column:first-child, .sfl-quality-process__item:first-child { padding-left: 0; }
.sfl-quality-columns > .wp-block-column:last-child, .sfl-quality-process__item:last-child { border-right: 1px solid var(--wp--preset--color--border); }
.sfl-quality-columns h3, .sfl-quality-buyer__item h3 { color: var(--wp--preset--color--primary-slate); font-size: 0.875rem; letter-spacing: 0.08em; margin-top: 0; }
.sfl-quality-process__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.sfl-quality-process__item h3 { font-size: clamp(1.125rem, 2vw, 1.375rem); margin-top: 0; }
.sfl-quality-list { list-style: none; margin: 24px 0 0; padding: 0; }
.sfl-quality-list li { border-top: 1px solid var(--wp--preset--color--border); padding: 10px 0; }
.sfl-quality-list li:last-child { border-bottom: 1px solid var(--wp--preset--color--border); }
.sfl-quality-list--two { column-gap: 24px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.sfl-quality-social__inner { border-left: 4px solid var(--wp--preset--color--primary-slate); padding-left: clamp(24px, 4vw, 48px); }
.sfl-quality-social__statement { color: var(--wp--preset--color--primary-slate); font-family: var(--wp--preset--font-family--manrope); font-size: clamp(1.25rem, 2.4vw, 1.75rem); font-weight: 600; line-height: 1.45; }
.sfl-quality-buyer__grid { display: grid; gap: 0 clamp(32px, 5vw, 64px); grid-template-columns: repeat(2, minmax(0, 1fr)); }
.sfl-quality-buyer__item { border-top: 1px solid var(--wp--preset--color--border); padding-block: 28px; }
.sfl-quality-buyer__item:nth-last-child(-n + 2) { border-bottom: 1px solid var(--wp--preset--color--border); }
.sfl-quality-final { border-bottom: 1px solid var(--wp--preset--color--border); padding-block: clamp(72px, 7vw, 96px); }
.sfl-quality-final { background-color: #E9EBED !important; }
.sfl-quality-final h2 { color: var(--wp--preset--color--slate-hover) !important; }
.sfl-quality-final__inner { gap: clamp(32px, 6vw, 80px); }
.sfl-quality-final__copy { flex: 1 1 38rem; }
.sfl-quality-final__actions { flex: 0 1 19rem; }
.sfl-quality-final__actions .wp-block-buttons { margin-bottom: 18px; }
.sfl-quality-final__link a { color: var(--wp--preset--color--primary-slate) !important; text-decoration: underline; text-underline-offset: 4px; }

@media (min-width: 1025px) {
	.sfl-quality > .sfl-quality-section {
		margin-block-start: 0 !important;
	}

	.sfl-quality-section {
		padding-block: clamp(40px, 4.5vw, 56px);
	}

	.sfl-quality h2 {
		font-size: clamp(1.75rem, 2.3vw, 2rem) !important;
		letter-spacing: -0.025em;
		line-height: 1.2;
		text-wrap: balance;
	}

	.sfl-quality-hero {
		padding-block: clamp(40px, 4.5vw, 60px);
	}

	.sfl-quality-hero__columns {
		gap: clamp(36px, 4vw, 52px);
	}

	.sfl-quality-hero__content h1 {
		font-size: clamp(2rem, 2.8vw, 2.5rem) !important;
		letter-spacing: -0.03em;
		line-height: 1.12;
		max-width: 32ch;
		text-wrap: balance;
	}

	.sfl-quality-hero__content .sfl-quality-intro {
		max-width: 44rem;
	}

	.sfl-quality-placeholder {
		aspect-ratio: 4 / 3;
		min-height: 360px;
	}

	.sfl-quality-evidence__grid p {
		min-height: 108px;
		padding-block: 18px;
	}

	.sfl-quality-evidence__grid p:first-child {
		border-left: 0;
	}

	.sfl-quality-evidence__grid p:last-child {
		border-right: 0;
	}

	.sfl-quality-heading {
		margin-bottom: clamp(22px, 2.5vw, 32px);
	}

	.sfl-quality-heading h2,
	.sfl-quality-heading .sfl-quality-intro {
		max-width: 58rem;
	}

	.sfl-quality-control,
	.sfl-quality-process {
		padding-block: clamp(40px, 4vw, 52px);
	}

	.sfl-quality-columns > .wp-block-column:first-child,
	.sfl-quality-process__item:first-child {
		border-left: 0;
	}

	.sfl-quality-columns > .wp-block-column:last-child,
	.sfl-quality-process__item:last-child {
		border-right: 0;
	}

	.sfl-quality-columns > .wp-block-column,
	.sfl-quality-process__item {
		padding-inline: clamp(24px, 3vw, 36px);
	}

	.sfl-quality-columns > .wp-block-column:first-child,
	.sfl-quality-process__item:first-child {
		padding-left: 0;
	}

	.sfl-quality-columns h3,
	.sfl-quality-process__item h3,
	.sfl-quality-buyer__item h3 {
		margin-bottom: 12px;
	}

	.sfl-quality-list {
		margin-top: 16px;
	}

	.sfl-quality-list li {
		padding-block: 8px;
	}

	.sfl-quality-social {
		padding-block: clamp(36px, 4vw, 48px);
	}

	.sfl-quality-social__inner {
		padding-left: clamp(24px, 3vw, 36px);
	}

	.sfl-quality-social__statement {
		margin-block: 14px;
	}

	.sfl-quality-buyer {
		padding-block: clamp(40px, 4vw, 52px);
	}

	.sfl-quality-buyer__item {
		padding-block: 20px;
	}

	.sfl-quality-buyer__item:nth-child(-n + 2) {
		border-top: 0;
	}

	.sfl-quality-buyer__item:nth-last-child(-n + 2) {
		border-bottom: 0;
	}

	.sfl-quality-final {
		padding-block: clamp(44px, 5vw, 64px);
	}

	.sfl-quality-final__inner {
		gap: clamp(28px, 4vw, 52px);
	}
}

@media (max-width: 1024px) {
	.sfl-quality-hero__columns { gap: 40px; }
	.sfl-quality-evidence__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.sfl-quality-evidence__grid p:nth-child(2) { border-right: 1px solid var(--wp--preset--color--border); }
	.sfl-quality-evidence__grid p:nth-child(n + 3) { border-top: 1px solid var(--wp--preset--color--border); }
	.sfl-quality-process__grid { grid-template-columns: 1fr; }
	.sfl-quality-process__item, .sfl-quality-process__item:first-child, .sfl-quality-process__item:last-child { border: 0; border-top: 1px solid var(--wp--preset--color--border); padding: 28px 0; }
	.sfl-quality-process__item:last-child { border-bottom: 1px solid var(--wp--preset--color--border); }
}

@media (max-width: 1024px) {
	.sfl-quality > .sfl-quality-section { margin-block-start: 0 !important; }
	.sfl-quality-section { padding-block: clamp(40px, 5vw, 52px); }
	.sfl-quality h2 { font-size: clamp(1.625rem, 2.8vw, 2rem) !important; letter-spacing: -0.025em; line-height: 1.2; text-wrap: balance; }
	.sfl-quality-hero { padding-block: clamp(40px, 5vw, 56px); }
	.sfl-quality-hero__columns { gap: clamp(32px, 4vw, 40px); }
	.sfl-quality-hero__content h1 { font-size: clamp(2rem, 3.5vw, 2.5rem) !important; letter-spacing: -0.03em; line-height: 1.12; max-width: 30ch; text-wrap: balance; }
	.sfl-quality-placeholder { aspect-ratio: 4 / 3; width: 100%; max-width: 36rem; min-height: 0; margin-inline: auto; }
	.sfl-quality-heading { margin-bottom: clamp(22px, 3vw, 32px); }
	.sfl-quality-evidence__grid p { min-height: 104px; padding-block: 18px; }
	.sfl-quality-process__item, .sfl-quality-columns > .wp-block-column { padding-inline: 24px; }
	.sfl-quality-list { margin-top: 16px; }
	.sfl-quality-list li { padding-block: 8px; }
	.sfl-quality-social { padding-block: clamp(36px, 4vw, 48px); }
	.sfl-quality-social__inner { padding-left: clamp(24px, 3vw, 36px); }
	.sfl-quality-buyer { padding-block: clamp(40px, 5vw, 52px); }
	.sfl-quality-buyer__item { padding-block: 20px; }
	.sfl-quality-final { padding-block: clamp(44px, 7vw, 56px); }
}

@media (min-width: 900px) and (max-width: 1024px) {
	.sfl-quality-process__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.sfl-quality-process__item,
	.sfl-quality-process__item:first-child,
	.sfl-quality-process__item:last-child {
		border: 0;
		border-left: 1px solid var(--wp--preset--color--border);
		padding: 0 24px;
	}
	.sfl-quality-process__item:first-child { border-left: 0; padding-left: 0; }
	.sfl-quality-process__item:last-child { border-right: 0; padding-right: 0; }
}

@media (max-width: 767px) {
	.sfl-quality-hero__columns, .sfl-quality-columns { flex-direction: column; }
	.sfl-quality-hero__columns > .wp-block-column, .sfl-quality-columns > .wp-block-column { flex-basis: auto !important; width: 100%; }
	.sfl-quality-placeholder { aspect-ratio: 4 / 3; min-height: 0; }
	.sfl-quality-columns > .wp-block-column, .sfl-quality-columns > .wp-block-column:first-child, .sfl-quality-columns > .wp-block-column:last-child { border: 0; border-top: 1px solid var(--wp--preset--color--border); padding: 28px 0; }
	.sfl-quality-columns > .wp-block-column:last-child { border-bottom: 1px solid var(--wp--preset--color--border); }
}

@media (min-width: 768px) and (max-width: 781px) {
	.sfl-quality-columns > .wp-block-column,
	.sfl-quality-columns > .wp-block-column:first-child,
	.sfl-quality-columns > .wp-block-column:last-child {
		border: 0;
		border-top: 1px solid var(--wp--preset--color--border);
		padding: 28px 0;
	}

	.sfl-quality-columns > .wp-block-column:last-child {
		border-bottom: 1px solid var(--wp--preset--color--border);
	}
}

@media (max-width: 767px) {
	.sfl-quality h2 { font-size: clamp(1.5rem, 6vw, 1.75rem) !important; }
	.sfl-quality-section { padding-block: clamp(32px, 7vw, 42px); }
	.sfl-quality-hero { padding-block: clamp(32px, 7vw, 40px); }
	.sfl-quality-hero__content h1 { font-size: clamp(1.875rem, 8vw, 2.25rem) !important; max-width: 20ch; }
	.sfl-quality-heading { margin-bottom: 24px; }
	.sfl-quality-evidence__grid p { min-height: 0; padding-block: 18px; }
	.sfl-quality-social { padding-block: 32px; }
	.sfl-quality-buyer { padding-block: clamp(32px, 7vw, 42px); }
	.sfl-quality-buyer__item { padding-block: 16px; }
	.sfl-quality-final { padding-block: clamp(44px, 7vw, 56px); }
}

@media (max-width: 480px) {
	.sfl-quality-evidence__grid, .sfl-quality-list--two, .sfl-quality-buyer__grid { grid-template-columns: 1fr; }
	.sfl-quality-evidence__grid p, .sfl-quality-evidence__grid p:nth-child(2), .sfl-quality-evidence__grid p:last-child { border: 0; border-bottom: 1px solid var(--wp--preset--color--border); min-height: 0; padding-block: 22px; }
	.sfl-quality-buyer__item:nth-last-child(-n + 2) { border-bottom: 0; }
	.sfl-quality-buyer__item:last-child { border-bottom: 1px solid var(--wp--preset--color--border); }
	.sfl-quality-actions, .sfl-quality-actions .wp-block-button, .sfl-quality-actions .wp-block-button__link, .sfl-quality-final__actions, .sfl-quality-final__actions .wp-block-buttons, .sfl-quality-final__actions .wp-block-button, .sfl-quality-final__actions .wp-block-button__link { width: 100%; }
}

/* Contact page v0.1 */
.sfl-contact {
	box-sizing: border-box;
	margin-block: 0;
	margin-inline: 0 !important;
	max-width: none !important;
	width: 100%;
}

.sfl-contact .alignwide {
	box-sizing: border-box;
	margin-inline: auto !important;
	max-width: var(--wp--style--global--wide-size, 1200px);
	width: 100%;
}

.sfl-contact-section {
	box-sizing: border-box;
	padding: clamp(64px, 8vw, 112px) clamp(16px, 3vw, 24px);
}

.sfl-contact-hero {
	padding-block: clamp(48px, 6vw, 80px);
}

.sfl-contact-hero__inner h1 {
	letter-spacing: -0.035em;
	max-width: 820px;
	overflow-wrap: anywhere;
}

.sfl-contact-eyebrow {
	color: var(--wp--preset--color--primary-slate);
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.11em;
	line-height: 1.4;
	text-transform: uppercase;
}

.sfl-contact-intro {
	color: var(--wp--preset--color--muted);
	font-size: clamp(1.0625rem, 1.5vw, 1.25rem);
	line-height: 1.6;
}

.sfl-contact-actions {
	gap: 12px;
	padding-top: 8px;
}

.sfl-contact .wp-block-button__link {
	align-items: center;
	box-sizing: border-box;
	display: inline-flex;
	justify-content: center;
	min-height: 48px;
	padding: 12px 22px;
}

.sfl-contact .is-style-outline > .wp-block-button__link {
	border-color: var(--wp--preset--color--primary-slate);
	color: var(--wp--preset--color--primary-slate);
}

.sfl-contact .is-style-outline > .wp-block-button__link:hover {
	background: var(--wp--preset--color--slate-hover);
	border-color: var(--wp--preset--color--slate-hover);
	color: var(--wp--preset--color--white);
}

.sfl-contact-heading {
	margin-bottom: clamp(40px, 5vw, 64px);
}

.sfl-contact-enquiry__columns,
.sfl-contact-location__columns {
	gap: clamp(32px, 6vw, 80px);
}

.sfl-contact-placeholder {
	align-items: center;
	background: #F7F8F8;
	border: 1px dashed var(--wp--preset--color--border);
	box-sizing: border-box;
	color: var(--wp--preset--color--muted);
	display: flex;
	flex-direction: column;
	justify-content: center;
	overflow: hidden;
	padding: clamp(28px, 5vw, 56px);
	text-align: center;
	width: 100%;
}

.sfl-contact-placeholder--form {
	min-height: 420px;
}

.sfl-contact-placeholder--map {
	aspect-ratio: 16 / 10;
	background: #F7F8F8;
	min-height: 320px;
}

.sfl-contact-map-loader__inner {
        align-items: center;
        background: #F7F8F8;
        border: 1px solid var(--wp--preset--color--border);
        box-sizing: border-box;
        display: flex;
        flex: 1;
        flex-direction: column;
        justify-content: center;
        padding: clamp(24px, 4vw, 40px);
        text-align: center;
        width: 100%;
}

.sfl-contact-map-loader__label {
        color: var(--wp--preset--color--primary-slate);
        font-size: 0.75rem;
        font-weight: 700;
        letter-spacing: 0.1em;
        line-height: 1.5;
}

.sfl-contact-map-loader__text {
        color: var(--wp--preset--color--muted);
        line-height: 1.6;
}

.sfl-contact-map-loader__button {
        align-items: center;
        background: var(--wp--preset--color--primary-slate);
        border: 1px solid var(--wp--preset--color--primary-slate);
        color: var(--wp--preset--color--white);
        cursor: pointer;
        display: inline-flex;
        font: inherit;
        font-weight: 600;
        justify-content: center;
        margin-top: 16px;
        min-height: 48px;
        padding: 12px 22px;
}

.sfl-contact-map-loader__button:hover {
        background: var(--wp--preset--color--slate-hover);
        border-color: var(--wp--preset--color--slate-hover);
}

.sfl-contact-map-loader__button:focus-visible {
        outline: 2px solid var(--wp--preset--color--primary-slate);
        outline-offset: 3px;
}

.sfl-contact-map-loader__fallback {
        font-size: 0.875rem;
        margin-top: 12px !important;
}

.sfl-contact-map-loader__fallback a {
        color: var(--wp--preset--color--primary-slate);
        text-decoration: underline;
        text-underline-offset: 0.15em;
}

.sfl-contact-placeholder p {
	margin-block: 4px;
	max-width: 32rem;
}

.sfl-contact-placeholder__label {
	color: var(--wp--preset--color--primary-slate);
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 1.5;
}

.sfl-enquiry-form-wrap {
	background: var(--wp--preset--color--white);
	border-block: 1px solid var(--wp--preset--color--border);
	box-sizing: border-box;
	padding: clamp(24px, 4vw, 40px);
}

.sfl-enquiry-form__status {
	border-left: 4px solid var(--wp--preset--color--primary-slate);
	color: var(--wp--preset--color--charcoal);
	margin: 0 0 28px;
	padding: 12px 16px;
}

.sfl-enquiry-form__required-note {
	color: var(--wp--preset--color--muted);
	font-size: 0.9375rem;
	margin: 0 0 24px;
}

.sfl-enquiry-form__grid {
	display: grid;
	gap: 22px 24px;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sfl-enquiry-form__field {
	min-width: 0;
}

.sfl-enquiry-form__field--wide {
	grid-column: 1 / -1;
}

.sfl-enquiry-form label {
	color: var(--wp--preset--color--charcoal);
	display: block;
	font-weight: 700;
	line-height: 1.4;
	margin-bottom: 8px;
}

.sfl-enquiry-form__required,
.sfl-enquiry-form__optional {
	color: var(--wp--preset--color--muted);
	font-size: 0.8125rem;
	font-weight: 400;
}

.sfl-enquiry-form input,
.sfl-enquiry-form select,
.sfl-enquiry-form textarea {
	background: var(--wp--preset--color--white);
	border: 1px solid var(--wp--preset--color--muted);
	border-radius: 0;
	box-sizing: border-box;
	color: var(--wp--preset--color--charcoal);
	font: inherit;
	line-height: 1.4;
	max-width: 100%;
	padding: 11px 12px;
	width: 100%;
}

.sfl-enquiry-form input,
.sfl-enquiry-form select {
	min-height: 48px;
}

.sfl-enquiry-form textarea {
	min-height: 180px;
	resize: vertical;
}

.sfl-enquiry-form__help {
	color: var(--wp--preset--color--muted);
	font-size: 0.9375rem;
	line-height: 1.55;
	margin: 0 0 10px;
}

.sfl-enquiry-form__submit {
	background: var(--wp--preset--color--primary-slate);
	border: 1px solid var(--wp--preset--color--primary-slate);
	border-radius: 3px;
	color: var(--wp--preset--color--white);
	cursor: pointer;
	font: inherit;
	font-weight: 600;
	margin-top: 28px;
	min-height: 48px;
	padding: 12px 22px;
}

.sfl-enquiry-form__submit:hover {
	background: var(--wp--preset--color--slate-hover);
	border-color: var(--wp--preset--color--slate-hover);
}

.sfl-enquiry-form__honeypot {
	height: 1px;
	left: -10000px;
	overflow: hidden;
	position: absolute;
	top: auto;
	width: 1px;
}

.sfl-contact-enquiry__types {
	border-left: 1px solid var(--wp--preset--color--warm-border);
	box-sizing: border-box;
	padding-left: clamp(24px, 4vw, 48px);
}

.sfl-contact-enquiry__types h3,
.sfl-contact-direct__item h3 {
	color: var(--wp--preset--color--primary-slate);
	font-size: 0.875rem;
	letter-spacing: 0.08em;
	margin-top: 0;
}

.sfl-contact-list {
	list-style: none;
	margin: 24px 0 0;
	padding: 0;
}

.sfl-contact-list li {
	border-top: 1px solid var(--wp--preset--color--warm-border);
	font-family: var(--wp--preset--font-family--manrope);
	font-size: clamp(1.0625rem, 1.8vw, 1.25rem);
	font-weight: 600;
	padding: 16px 0;
}

.sfl-contact-list li:last-child {
	border-bottom: 1px solid var(--wp--preset--color--warm-border);
}

.sfl-contact-direct__grid {
	display: grid;
	gap: 0 clamp(28px, 4vw, 56px);
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.sfl-contact-direct__item {
	border-top: 1px solid var(--wp--preset--color--border);
	min-width: 0;
	padding-block: 28px;
}

.sfl-contact-direct__item p {
	font-family: var(--wp--preset--font-family--manrope);
	font-size: clamp(1.0625rem, 1.8vw, 1.25rem);
	font-weight: 600;
	margin-bottom: 0;
	overflow-wrap: anywhere;
}

.sfl-contact-direct__item a {
	text-decoration-color: var(--wp--preset--color--primary-slate);
	text-underline-offset: 4px;
}

.sfl-contact-address {
	font-family: var(--wp--preset--font-family--manrope);
	font-size: clamp(1.125rem, 2vw, 1.375rem);
	font-weight: 600;
	line-height: 1.55;
	overflow-wrap: anywhere;
}

.sfl-contact-faq__list {
	max-width: 950px !important;
}

.sfl-contact-faq__list .wp-block-details {
	border-top: 1px solid var(--wp--preset--color--border);
	margin: 0;
	padding: 0;
}

.sfl-contact-faq__list .wp-block-details:last-child {
	border-bottom: 1px solid var(--wp--preset--color--border);
}

.sfl-contact-faq__list summary {
	box-sizing: border-box;
	cursor: pointer;
	font-family: var(--wp--preset--font-family--manrope);
	font-size: clamp(1.0625rem, 2vw, 1.25rem);
	font-weight: 600;
	line-height: 1.45;
	min-height: 56px;
	padding: 18px 36px 18px 0;
}

.sfl-contact-faq__list details > :not(summary) {
	margin-left: 0;
	max-width: 850px;
}

.sfl-contact-faq__list details > p {
	padding: 0 36px 22px 0;
}

@media (min-width: 1025px) {
	.sfl-contact > .sfl-contact-section {
		margin-block-start: 0 !important;
	}

	.sfl-contact-section {
		padding-block: clamp(40px, 4.5vw, 56px);
	}

	.sfl-contact-hero {
		padding-block: clamp(44px, 4.5vw, 60px);
	}

	.sfl-contact-hero__inner h1 {
		font-size: clamp(2rem, 2.8vw, 2.5rem) !important;
		letter-spacing: -0.03em;
		line-height: 1.12;
		max-width: 30ch;
		text-wrap: balance;
	}

	.sfl-contact h2 {
		font-size: clamp(1.75rem, 2.3vw, 2rem) !important;
		letter-spacing: -0.025em;
		line-height: 1.2;
		text-wrap: balance;
	}

	.sfl-contact-heading {
		margin-bottom: clamp(22px, 2.5vw, 32px);
	}

	.sfl-contact-enquiry {
		padding-block: clamp(40px, 4vw, 52px);
	}

	.sfl-contact-enquiry__columns {
		gap: clamp(36px, 4vw, 52px);
	}

	.sfl-contact-enquiry__columns > .wp-block-column:first-child {
		flex-basis: 64% !important;
	}

	.sfl-contact-enquiry__columns > .wp-block-column:last-child {
		flex-basis: 36% !important;
	}

	.sfl-enquiry-form-wrap {
		background: transparent;
		padding: 24px 0 4px;
	}

	.sfl-contact-enquiry__types {
		align-self: flex-start;
		padding-left: clamp(24px, 3vw, 36px);
		padding-block: 4px;
	}

	.sfl-contact-list {
		margin-top: 16px;
	}

	.sfl-contact-list li {
		padding-block: 14px;
	}

	.sfl-contact-direct {
		padding-block: clamp(40px, 4vw, 52px);
	}

	.sfl-contact-direct__item {
		padding-block: 20px;
	}

	.sfl-contact-location {
		padding-block: clamp(40px, 4vw, 52px);
	}

	.sfl-contact-location__columns {
		gap: clamp(36px, 4vw, 52px);
	}

	.sfl-contact-placeholder--map {
		aspect-ratio: 4 / 3;
		max-width: 32rem;
		min-height: 0;
		margin-inline: auto 0;
	}

	.sfl-contact-faq {
		padding-block: clamp(40px, 4vw, 52px);
	}

	.sfl-contact .sfl-contact-faq__list {
		margin-inline: 0 !important;
		max-width: 68rem !important;
		width: 100%;
	}

}

@media (max-width: 1024px) {
	.sfl-contact-direct__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 1024px) {
	.sfl-contact > .sfl-contact-section { margin-block-start: 0 !important; }
	.sfl-contact-section { padding-block: clamp(40px, 5vw, 52px); }
	.sfl-contact-hero { padding-block: clamp(40px, 5vw, 56px); }
	.sfl-contact-hero__inner h1 { font-size: clamp(2rem, 3.5vw, 2.5rem) !important; letter-spacing: -0.03em; line-height: 1.12; max-width: 30ch; text-wrap: balance; }
	.sfl-contact h2 { font-size: clamp(1.625rem, 2.8vw, 2rem) !important; letter-spacing: -0.025em; line-height: 1.2; text-wrap: balance; }
	.sfl-contact-heading { margin-bottom: clamp(22px, 3vw, 32px); }
	.sfl-contact-enquiry__columns, .sfl-contact-location__columns { gap: clamp(28px, 4vw, 40px); }
	.sfl-enquiry-form-wrap { background: transparent; padding: 24px 0 4px; }
	.sfl-contact-enquiry__types { padding-left: 24px; }
	.sfl-contact-list { margin-top: 16px; }
	.sfl-contact-list li { padding-block: 12px; }
	.sfl-contact-direct { padding-block: clamp(40px, 5vw, 52px); }
	.sfl-contact-direct__item { padding-block: 20px; }
	.sfl-contact-location { padding-block: clamp(40px, 5vw, 52px); }
	.sfl-contact-placeholder--map { aspect-ratio: 4 / 3; max-width: 32rem; min-height: 0; margin-inline: auto; }
	.sfl-contact-faq { padding-block: clamp(40px, 5vw, 52px); }
	.sfl-contact .sfl-contact-faq__list { margin-inline: 0 !important; max-width: 68rem !important; width: 100%; }
}

@media (min-width: 768px) and (max-width: 781px) {
	.sfl-contact-enquiry__types { border-left: 0; border-top: 1px solid var(--wp--preset--color--warm-border); padding: 28px 0 0; }
	.sfl-contact-placeholder--map { aspect-ratio: 4 / 3; max-width: 36rem; min-height: 0; margin-inline: auto; }
}

@media (max-width: 767px) {
	.sfl-contact-enquiry__columns,
	.sfl-contact-location__columns {
		flex-direction: column;
	}

	.sfl-contact-enquiry__columns > .wp-block-column,
	.sfl-contact-location__columns > .wp-block-column {
		flex-basis: auto !important;
		width: 100%;
	}

	.sfl-contact-enquiry__types {
		border-left: 0;
		border-top: 1px solid var(--wp--preset--color--warm-border);
		padding-left: 0;
		padding-top: 28px;
	}

	.sfl-contact-placeholder--form {
		min-height: 340px;
	}

	.sfl-enquiry-form__grid {
		grid-template-columns: 1fr;
	}

	.sfl-enquiry-form__field--wide {
		grid-column: auto;
	}
}

@media (max-width: 767px) {
	.sfl-contact-section { padding-block: clamp(32px, 7vw, 42px); }
	.sfl-contact-hero { padding-block: clamp(32px, 7vw, 40px); }
	.sfl-contact-hero__inner h1 { font-size: clamp(1.875rem, 8vw, 2.25rem) !important; max-width: 20ch; }
	.sfl-contact h2 { font-size: clamp(1.5rem, 6vw, 1.75rem) !important; }
	.sfl-contact-heading { margin-bottom: 24px; }
	.sfl-enquiry-form-wrap { padding-block: 20px 4px; }
	.sfl-contact-faq { padding-block: clamp(32px, 7vw, 42px); }
	.sfl-contact .sfl-contact-faq__list { margin-inline: 0 !important; max-width: none !important; width: 100%; }
	.sfl-contact-placeholder--map { aspect-ratio: 4 / 3; min-height: 0; }
}

@media (max-width: 480px) {
	.sfl-contact-actions,
	.sfl-contact-actions .wp-block-button,
	.sfl-contact-actions .wp-block-button__link {
		width: 100%;
	}

	.sfl-contact-direct__grid {
		grid-template-columns: 1fr;
	}

	.sfl-contact-placeholder--map {
		aspect-ratio: 4 / 3;
		min-height: 0;
	}
}

@media (min-width: 1024px) {
	.sfl-contact-hero__inner h1 {
		max-width: 44ch;
	}
}

/* Products page v0.1 */
.sfl-products {
	box-sizing: border-box;
	margin-block: 0;
	margin-inline: 0 !important;
	max-width: none !important;
	width: 100%;
}

.sfl-products .alignwide {
	box-sizing: border-box;
	margin-inline: auto !important;
	max-width: var(--wp--style--global--wide-size, 1200px);
	width: 100%;
}

.sfl-products-section {
	box-sizing: border-box;
	padding: clamp(64px, 8vw, 112px) clamp(16px, 3vw, 24px);
}

.sfl-products-section > :first-child,
.sfl-products-heading > :first-child,
.sfl-products-narrow > :first-child,
.sfl-products-final__copy > :first-child {
	margin-top: 0;
}

.sfl-products-section > :last-child,
.sfl-products-heading > :last-child,
.sfl-products-narrow > :last-child,
.sfl-products-final__copy > :last-child {
	margin-bottom: 0;
}

.sfl-products-hero { padding-block: clamp(56px, 7vw, 96px); }
.sfl-products-hero__columns { gap: clamp(40px, 6vw, 80px); }
.sfl-products-hero__content h1 { letter-spacing: -0.035em; max-width: none; }

.sfl-products-eyebrow {
	color: var(--wp--preset--color--primary-slate);
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.11em;
	line-height: 1.4;
	text-transform: uppercase;
}

.sfl-products-intro {
	color: var(--wp--preset--color--muted);
	font-size: clamp(1.0625rem, 1.5vw, 1.25rem);
	line-height: 1.6;
}

.sfl-products-actions { gap: 12px; padding-top: 8px; }
.sfl-products .wp-block-button__link { align-items: center; box-sizing: border-box; display: inline-flex; justify-content: center; min-height: 48px; padding: 12px 22px; }
.sfl-products .is-style-outline > .wp-block-button__link { border-color: var(--wp--preset--color--primary-slate); color: var(--wp--preset--color--primary-slate); }
.sfl-products .is-style-outline > .wp-block-button__link:hover { background: var(--wp--preset--color--slate-hover); border-color: var(--wp--preset--color--slate-hover); color: var(--wp--preset--color--white); }

.sfl-products-placeholder {
	align-items: center;
	background: #F7F8F8;
	border: 1px dashed var(--wp--preset--color--border);
	box-sizing: border-box;
	color: var(--wp--preset--color--muted);
	display: flex;
	flex-direction: column;
	justify-content: center;
	overflow: hidden;
	padding: clamp(20px, 3vw, 40px);
	text-align: center;
	width: 100%;
}

.sfl-products-placeholder--hero { aspect-ratio: 4 / 5; min-height: 500px; }
.sfl-products-placeholder--category { aspect-ratio: 4 / 5; }
.sfl-products-placeholder p { margin-block: 4px; max-width: 22rem; }
.sfl-products-placeholder__label { color: var(--wp--preset--color--primary-slate); font-size: 0.75rem; font-weight: 700; letter-spacing: 0.1em; line-height: 1.5; }
.sfl-products-heading { margin-bottom: clamp(40px, 5vw, 64px); }

.sfl-products-category-grid {
	display: grid;
	gap: clamp(32px, 4vw, 52px) clamp(20px, 3vw, 36px);
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.sfl-products-category { min-width: 0; }
.sfl-products-category h3 { font-size: clamp(1.2rem, 2vw, 1.5rem); margin: 20px 0 8px; overflow-wrap: anywhere; }
.sfl-products-category h3 a { color: var(--wp--preset--color--charcoal); text-decoration: none; }
.sfl-products-category__link { margin: 0; }
.sfl-products-category__link a { color: var(--wp--preset--color--primary-slate); font-weight: 700; text-underline-offset: 4px; }
.sfl-products-category a:hover { color: var(--wp--preset--color--slate-hover); }
.sfl-products-narrow { max-width: 850px !important; }
.sfl-products-narrow p { font-size: 1.0625rem; line-height: 1.7; }
.sfl-products-lead { font-family: var(--wp--preset--font-family--manrope); font-size: clamp(1.125rem, 2vw, 1.375rem) !important; font-weight: 600; }
.sfl-products-development__columns { gap: 0; }
.sfl-products-development__columns > .wp-block-column { border-left: 1px solid var(--wp--preset--color--warm-border); box-sizing: border-box; min-width: 0; padding: 0 clamp(24px, 4vw, 48px); }
.sfl-products-development__columns > .wp-block-column:first-child { padding-left: 0; }
.sfl-products-development__columns > .wp-block-column:last-child { border-right: 1px solid var(--wp--preset--color--warm-border); }
.sfl-products-development__columns h3 { color: var(--wp--preset--color--primary-slate); font-size: 0.875rem; letter-spacing: 0.08em; margin-top: 0; }
.sfl-products-list { list-style: none; margin: 24px 0 0; padding: 0; }
.sfl-products-list li { border-top: 1px solid var(--wp--preset--color--warm-border); box-sizing: border-box; padding: 10px 0; }
.sfl-products-list li:last-child { border-bottom: 1px solid var(--wp--preset--color--warm-border); }
.sfl-products-development__supporting { border-top: 1px solid var(--wp--preset--color--warm-border); margin-top: clamp(40px, 5vw, 64px) !important; padding-top: 28px; }
.sfl-products-final { border-bottom: 1px solid var(--wp--preset--color--border); padding-block: clamp(72px, 7vw, 96px); }
.sfl-products-final { background-color: #E9EBED !important; }
.sfl-products-final h2 { color: var(--wp--preset--color--slate-hover) !important; }
.sfl-products-final__inner { gap: clamp(32px, 6vw, 80px); }
.sfl-products-final__copy { flex: 1 1 38rem; }
.sfl-products-final__actions { flex: 0 1 19rem; }
.sfl-products-final__actions .wp-block-buttons { margin-bottom: 18px; }
.sfl-products-final__link a { color: var(--wp--preset--color--primary-slate) !important; text-decoration: underline; text-underline-offset: 4px; }

@media (min-width: 1025px) {
	.sfl-products > .sfl-products-section {
		margin-block-start: 0 !important;
	}

	.sfl-products-section {
		padding-block: clamp(40px, 4.5vw, 56px);
	}

	.sfl-products h2 {
		font-size: clamp(1.75rem, 2.3vw, 2rem) !important;
		letter-spacing: -0.025em;
		line-height: 1.2;
		text-wrap: balance;
	}

	.sfl-products-hero {
		padding-block: clamp(40px, 4.5vw, 60px);
	}

	.sfl-products-hero__columns {
		gap: clamp(36px, 4vw, 52px);
	}

	.sfl-products-hero__content h1 {
		font-size: clamp(2rem, 2.8vw, 2.5rem) !important;
		letter-spacing: -0.03em;
		line-height: 1.12;
		max-width: 32ch;
		text-wrap: balance;
	}

	.sfl-products-hero__content .sfl-products-intro {
		max-width: 44rem;
	}

	.sfl-products-placeholder--hero {
		aspect-ratio: 4 / 3;
		min-height: 360px;
	}

	.sfl-products-heading {
		margin-bottom: clamp(22px, 2.5vw, 32px);
	}

	.sfl-products-heading h2,
	.sfl-products-heading .sfl-products-intro {
		max-width: 58rem;
	}

	.sfl-products-categories {
		padding-block: clamp(40px, 4vw, 52px);
	}

	.sfl-products-category-grid {
		gap: clamp(28px, 3.5vw, 44px) clamp(20px, 2.5vw, 32px);
	}

	.sfl-products-placeholder--category {
		aspect-ratio: 5 / 6;
	}

	.sfl-products-category h3 {
		font-size: clamp(1.125rem, 1.7vw, 1.375rem);
		margin: 14px 0 4px;
	}

	.sfl-products-category__link {
		margin: 0;
	}

	.sfl-products-range {
		padding-block: clamp(32px, 3.5vw, 44px);
	}

	.sfl-products-narrow {
		max-width: 58rem !important;
	}

	.sfl-products-narrow p {
		margin-block: 10px 0;
	}

	.sfl-products-development {
		padding-block: clamp(40px, 4vw, 52px);
	}

	.sfl-products-development__columns > .wp-block-column:first-child {
		border-left: 0;
	}

	.sfl-products-development__columns > .wp-block-column:last-child {
		border-right: 0;
	}

	.sfl-products-development__columns h3 {
		margin-bottom: 16px;
	}

	.sfl-products-list {
		margin: 16px 0;
	}

	.sfl-products-list li {
		padding-block: 8px;
	}

	.sfl-products-list li:first-child {
		border-top: 0;
	}

	.sfl-products-list li:last-child {
		border-bottom: 0;
	}

	.sfl-products-development__supporting {
		margin-top: 24px !important;
		padding-top: 20px;
	}

	.sfl-products-development__supporting p {
		margin-block: 8px;
	}

	.sfl-products-final {
		padding-block: clamp(44px, 5vw, 64px);
	}

	.sfl-products-final__inner {
		gap: clamp(28px, 4vw, 52px);
	}
}

@media (max-width: 1024px) {
	.sfl-products > .sfl-products-section {
		margin-block-start: 0 !important;
	}

	.sfl-products-section {
		padding-block: clamp(40px, 5vw, 52px);
	}

	.sfl-products h2 {
		font-size: clamp(1.625rem, 2.8vw, 2rem) !important;
		letter-spacing: -0.025em;
		line-height: 1.2;
		text-wrap: balance;
	}

	.sfl-products-hero {
		padding-block: clamp(40px, 5vw, 56px);
	}

	.sfl-products-hero__columns { gap: clamp(32px, 4vw, 40px); }

	.sfl-products-hero__content h1 {
		font-size: clamp(2rem, 3.5vw, 2.5rem) !important;
		letter-spacing: -0.03em;
		line-height: 1.12;
		max-width: 30ch;
		text-wrap: balance;
	}

	.sfl-products-placeholder--hero {
		aspect-ratio: 4 / 3;
		width: 100%;
		max-width: 36rem;
		min-height: 0;
		margin-inline: auto;
	}

	.sfl-products-heading {
		margin-bottom: clamp(22px, 3vw, 32px);
	}

	.sfl-products-categories,
	.sfl-products-development {
		padding-block: clamp(40px, 5vw, 52px);
	}

	.sfl-products-range {
		padding-block: clamp(32px, 4vw, 44px);
	}

	.sfl-products-development__supporting {
		margin-top: 24px !important;
		padding-top: 20px;
	}

	.sfl-products-list li {
		padding-block: 8px;
	}

	.sfl-products-final {
		padding-block: clamp(44px, 7vw, 56px);
	}

	.sfl-products-category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (min-width: 900px) and (max-width: 1024px) {
	.sfl-products-category-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (min-width: 768px) and (max-width: 781px) {
	.sfl-products-development__columns > .wp-block-column,
	.sfl-products-development__columns > .wp-block-column:first-child,
	.sfl-products-development__columns > .wp-block-column:last-child {
		border: 0;
		border-top: 1px solid var(--wp--preset--color--warm-border);
		padding: 28px 0;
	}

	.sfl-products-development__columns > .wp-block-column:last-child {
		border-bottom: 1px solid var(--wp--preset--color--warm-border);
	}
}

@media (max-width: 767px) {
	.sfl-products-hero__columns,
	.sfl-products-development__columns { flex-direction: column; }
	.sfl-products-hero__columns > .wp-block-column,
	.sfl-products-development__columns > .wp-block-column { flex-basis: auto !important; width: 100%; }
	.sfl-products h2 {
		font-size: clamp(1.5rem, 6vw, 1.75rem) !important;
	}

	.sfl-products-hero {
		padding-block: clamp(32px, 7vw, 40px);
	}

	.sfl-products-section {
		padding-block: clamp(32px, 7vw, 42px);
	}

	.sfl-products-hero__content h1 {
		font-size: clamp(1.875rem, 8vw, 2.25rem) !important;
		max-width: 20ch;
	}

	.sfl-products-placeholder--hero {
		aspect-ratio: 4 / 3;
		min-height: 0;
	}

	.sfl-products-category-grid {
		column-gap: 20px;
		row-gap: 32px;
	}

	.sfl-products-category h3 {
		margin-top: 14px;
	}

	.sfl-products-range {
		padding-block: clamp(32px, 7vw, 42px);
	}

	.sfl-products-development {
		padding-block: clamp(32px, 7vw, 42px);
	}

	.sfl-products-development__columns > .wp-block-column,
	.sfl-products-development__columns > .wp-block-column:first-child,
	.sfl-products-development__columns > .wp-block-column:last-child { border: 0; border-top: 1px solid var(--wp--preset--color--warm-border); padding: 28px 0; }
	.sfl-products-development__columns > .wp-block-column:last-child { border-bottom: 1px solid var(--wp--preset--color--warm-border); }

	.sfl-products-development__supporting {
		margin-top: 20px !important;
		padding-top: 18px;
	}

	.sfl-products-final {
		padding-block: clamp(44px, 7vw, 56px);
	}
}

@media (max-width: 480px) {
	.sfl-products-actions,
	.sfl-products-actions .wp-block-button,
	.sfl-products-actions .wp-block-button__link,
	.sfl-products-development__supporting .wp-block-buttons,
	.sfl-products-development__supporting .wp-block-button,
	.sfl-products-development__supporting .wp-block-button__link,
	.sfl-products-final__actions,
	.sfl-products-final__actions .wp-block-buttons,
	.sfl-products-final__actions .wp-block-button,
	.sfl-products-final__actions .wp-block-button__link { width: 100%; }
	.sfl-products-category-grid { grid-template-columns: 1fr; }
}

@media (min-width: 460px) and (max-width: 480px) {
        .sfl-products-category-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
                column-gap: 16px;
                row-gap: 28px;
        }
}

html {
	scroll-behavior: smooth;
}

.sfl-utility {
	background-color: var(--wp--preset--color--slate-hover) !important;
	font-size: 0.8125rem;
	line-height: 1.3;
}

.sfl-utility__inner {
	gap: 24px;
	min-height: 36px;
	padding-inline: 24px;
}

.sfl-utility p {
	margin: 0;
}

.sfl-utility a {
	color: var(--wp--preset--color--white);
	text-decoration: none;
}

.sfl-utility a:hover {
	text-decoration: underline;
	text-underline-offset: 3px;
}

.sfl-utility a:focus-visible {
	outline-color: var(--wp--preset--color--white);
}

.sfl-header {
	border-bottom: 1px solid var(--wp--preset--color--border);
}

.sfl-header__inner {
	gap: clamp(20px, 3vw, 48px);
	min-height: 84px;
	padding-inline: 24px;
}

.sfl-header__logo {
	flex: 0 0 auto;
	margin: 0;
	width: clamp(168px, 18vw, 220px);
}

.sfl-header__logo a,
.sfl-header__logo img {
	display: block;
}

.sfl-header__logo img {
	height: auto;
	max-width: 100%;
	width: 100%;
}

.sfl-navigation {
	font-size: 0.9375rem;
	font-weight: 600;
}

.sfl-navigation .wp-block-navigation__container {
	gap: clamp(14px, 1.6vw, 26px);
}

.sfl-navigation .wp-block-navigation-item__content {
	color: var(--wp--preset--color--charcoal);
	padding-block: 10px;
}

.sfl-navigation .wp-block-navigation-item__content:hover {
	color: var(--wp--preset--color--primary-slate);
}

.sfl-navigation .wp-block-navigation-item__content[aria-current="page"] {
	text-decoration-color: var(--wp--preset--color--primary-slate);
	text-decoration-line: underline;
	text-decoration-thickness: 2px;
	text-underline-offset: 6px;
}

.sfl-navigation .sfl-navigation__cta .wp-block-navigation-item__content {
	background: var(--wp--preset--color--primary-slate);
	color: var(--wp--preset--color--white);
	padding: 12px 18px;
}

.sfl-navigation .sfl-navigation__cta .wp-block-navigation-item__content:hover {
	background: var(--wp--preset--color--slate-hover);
	color: var(--wp--preset--color--white);
}

.sfl-navigation .wp-block-navigation__responsive-container-open,
.sfl-navigation .wp-block-navigation__responsive-container-close {
	align-items: center;
	justify-content: center;
	min-height: 44px;
	min-width: 44px;
}

@media (min-width: 1200px) {
	header.wp-block-template-part {
		display: contents;
	}

	.sfl-utility {
		display: block;
	}

	.sfl-header {
		position: sticky;
		top: 0;
		z-index: 20;
	}

	.sfl-navigation .wp-block-navigation__responsive-container:not(.is-menu-open) {
		display: flex;
	}

	.sfl-navigation .wp-block-navigation__responsive-container-open {
		display: none;
	}
}

@media (width < 1200px) {
	header.wp-block-template-part {
		position: sticky;
		top: 0;
		z-index: 20;
	}

	.sfl-utility {
		display: none;
	}

	.sfl-header__inner {
		min-height: 68px;
		padding-inline: clamp(16px, 3vw, 24px);
	}

	.sfl-header__logo {
		width: clamp(156px, 45vw, 190px);
	}

	.sfl-navigation .wp-block-navigation__responsive-container:not(.is-menu-open) {
		display: none;
	}

	.sfl-navigation .wp-block-navigation__responsive-container-open {
		display: flex;
	}

	.sfl-navigation .wp-block-navigation__responsive-container.is-menu-open {
		background: var(--wp--preset--color--warm-surface);
		color: var(--wp--preset--color--charcoal);
		padding: 20px clamp(28px, 7vw, 84px) 32px;
	}

	.sfl-navigation .wp-block-navigation__responsive-container-content {
		padding-top: 64px;
	}

	.sfl-navigation .wp-block-navigation__responsive-container-content,
	.sfl-navigation .wp-block-navigation__container {
		align-items: stretch;
		gap: 4px;
		width: 100%;
	}

	.sfl-navigation .wp-block-navigation-item__content {
		font-size: 1.125rem;
		padding: 12px 4px;
	}

	.sfl-navigation .sfl-navigation__cta {
		margin-top: 16px;
	}

	.sfl-navigation .sfl-navigation__cta .wp-block-navigation-item__content {
		justify-content: center;
		min-height: 48px;
		padding: 12px 24px;
		width: 100%;
	}
}

.sfl-footer {
	background-color: var(--wp--preset--color--slate-hover) !important;
	color: var(--wp--preset--color--white);
	font-size: 1rem;
	line-height: 1.55;
	padding: clamp(36px, 3.5vw, 44px) clamp(16px, 3vw, 24px) 16px;
}

.sfl-footer__columns {
	gap: clamp(32px, 4vw, 56px);
	margin-bottom: 20px;
}

.sfl-footer__company-name,
.sfl-footer__heading {
	color: var(--wp--preset--color--white);
	margin: 0;
}

.sfl-footer__company-name {
	font-size: clamp(1.375rem, 2vw, 1.625rem);
	font-weight: 700;
	letter-spacing: -0.02em;
}

.sfl-footer__heading {
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.sfl-footer__description {
	max-width: 34rem;
	margin: 12px 0 0;
}

.sfl-footer__location {
	margin: 8px 0 0;
}

.sfl-footer__description,
.sfl-footer__location,
.sfl-footer__address,
.sfl-footer__bottom {
	color: var(--wp--preset--color--warm-border);
}

.sfl-footer__company > :first-child,
.sfl-footer__explore > :first-child,
.sfl-footer__contact > :first-child {
	margin-top: 0;
}

.sfl-footer__company > :last-child,
.sfl-footer__explore > :last-child,
.sfl-footer__contact > :last-child {
	margin-bottom: 0;
}

.sfl-footer__links {
	list-style: none;
	margin: 8px 0 0;
	padding: 0;
}

.sfl-footer__links li {
	margin: 0;
}

.sfl-footer a {
	color: var(--wp--preset--color--white);
	text-decoration: none;
}

.sfl-footer__links a,
.sfl-footer__contact-links a {
	display: inline-flex;
	align-items: center;
	min-height: 40px;
}

.sfl-footer a:hover {
	text-decoration: underline;
	text-underline-offset: 4px;
}

.sfl-footer a:focus-visible {
	outline-color: var(--wp--preset--color--white);
}

.sfl-footer__contact-links {
	margin-top: 8px;
}

.sfl-footer__contact-links p {
	margin: 0;
}

.sfl-footer__address {
	margin-top: 10px;
	overflow-wrap: anywhere;
}

.sfl-footer__social {
	margin-top: 16px;
}

.sfl-footer__social .wp-social-link a {
	align-items: center;
	display: flex;
	height: 48px;
	justify-content: center;
	width: 48px;
}

.sfl-footer__social .wp-social-link {
	background-color: transparent !important;
}

.sfl-footer__social .wp-social-link svg {
	background: var(--wp--preset--color--white);
	border-radius: 50%;
	box-sizing: border-box;
	height: 48px;
	padding: 12px;
	width: 48px;
}

.sfl-footer__bottom {
	border-top: 1px solid var(--wp--preset--color--muted);
	font-size: 0.875rem;
	padding-top: 14px;
}

.sfl-footer__bottom p {
	margin: 0;
	margin-inline: 0 !important;
	max-width: none;
	width: 100%;
}

/* Footer legal links v0.1 */
.sfl-footer__legal {
  margin-top: 4px !important;
}

.sfl-footer__legal a {
  display: inline-block;
  padding-block: 4px;
}

@media (max-width: 1024px) {
	.sfl-footer__columns {
		flex-wrap: wrap !important;
		gap: clamp(32px, 4vw, 40px);
	}

	.sfl-footer__company {
		flex-basis: 100% !important;
	}

	.sfl-footer__explore,
	.sfl-footer__contact {
		flex-basis: calc(50% - 20px) !important;
	}
}

@media (max-width: 767px) {
	.sfl-footer {
		padding-block: 32px 18px;
	}

	.sfl-footer__columns {
		gap: 24px;
		margin-bottom: 32px;
	}

	.sfl-footer__links a,
	.sfl-footer__contact-links a {
		min-height: 44px;
	}

	.sfl-footer__company,
	.sfl-footer__explore,
	.sfl-footer__contact {
		flex-basis: 100% !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	*, *::before, *::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}

/* Home page v0.1 */
body.home #main-content > .wp-block-post-content {
	box-sizing: border-box;
	margin-inline: 0 !important;
	max-width: none !important;
	width: 100%;
}

.sfl-home {
	box-sizing: border-box;
	margin-block: 0;
	margin-inline: 0 !important;
	max-width: none !important;
	width: 100%;
}

.sfl-home .alignwide {
	box-sizing: border-box;
	margin-inline: auto !important;
	max-width: var(--wp--style--global--wide-size, 1200px);
	width: 100%;
}

.sfl-home-section {
	box-sizing: border-box;
	padding: clamp(40px, 4.5vw, 56px) clamp(16px, 3vw, 24px);
}

.sfl-home-section > :first-child,
.sfl-section-heading > :first-child,
.sfl-product-item > :first-child,
.sfl-capability > :first-child,
.sfl-home-final__copy > :first-child {
	margin-top: 0;
}

.sfl-home-section > :last-child,
.sfl-section-heading > :last-child,
.sfl-product-item > :last-child,
.sfl-capability > :last-child,
.sfl-home-final__copy > :last-child {
	margin-bottom: 0;
}

.sfl-home-hero {
	padding-block: clamp(40px, 4.5vw, 60px);
}

.sfl-home-hero__columns,
.sfl-editorial-columns {
	gap: clamp(36px, 4.5vw, 56px);
}

.sfl-home-hero__content {
	flex-basis: 62% !important;
}

.sfl-home-hero__columns > .wp-block-column:last-child {
	flex-basis: 38% !important;
}

.sfl-home-hero__content h1 {
	font-size: clamp(2rem, 2.8vw, 2.5rem) !important;
	letter-spacing: -0.035em;
	line-height: 1.12;
	max-width: 32ch;
	text-wrap: balance;
}

.sfl-home h2 {
	font-size: clamp(1.625rem, 2.35vw, 2rem) !important;
	letter-spacing: -0.025em;
	line-height: 1.2;
	text-wrap: balance;
}

.sfl-home-products .sfl-section-heading h2 {
	max-width: 40ch;
}

.sfl-home-products .sfl-section-heading .sfl-home-intro,
.sfl-home-capabilities .sfl-section-heading .sfl-home-intro {
	max-width: 58rem;
}

.sfl-home-capabilities .sfl-section-heading h2 {
	max-width: none;
	width: 100%;
}

.sfl-home-quality .sfl-section-heading h2 {
	max-width: 52rem;
}

.sfl-home-hero__content .sfl-home-intro {
	max-width: 42rem;
}

.sfl-eyebrow {
	color: var(--wp--preset--color--primary-slate);
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.11em;
	line-height: 1.4;
	text-transform: uppercase;
}

.sfl-home-intro {
	color: var(--wp--preset--color--muted);
	font-size: clamp(1.0625rem, 1.5vw, 1.25rem);
	line-height: 1.6;
}

.sfl-home-actions {
	gap: 12px;
	padding-top: 8px;
}

.sfl-home .wp-block-button__link {
	align-items: center;
	box-sizing: border-box;
	display: inline-flex;
	justify-content: center;
	min-height: 48px;
	padding: 12px 22px;
}

.sfl-home .is-style-outline > .wp-block-button__link {
	border-color: var(--wp--preset--color--primary-slate);
	color: var(--wp--preset--color--primary-slate);
}

.sfl-home .is-style-outline > .wp-block-button__link:hover {
	background: var(--wp--preset--color--slate-hover);
	border-color: var(--wp--preset--color--slate-hover);
	color: var(--wp--preset--color--white);
}

.sfl-placeholder {
	align-items: center;
	background-color: #F7F8F8;
	border: 1px dashed var(--wp--preset--color--border);
	box-sizing: border-box;
	color: var(--wp--preset--color--muted);
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 260px;
	overflow: hidden;
	padding: clamp(24px, 4vw, 48px);
	text-align: center;
	width: 100%;
}

.sfl-placeholder--hero {
	aspect-ratio: 4 / 3;
	min-height: 360px;
}

.sfl-placeholder--company {
	aspect-ratio: 4 / 3;
	min-height: 360px;
}

.sfl-placeholder--product {
	aspect-ratio: 4 / 5;
	font-size: 0.6875rem;
	letter-spacing: 0.08em;
	min-height: 0;
	padding: 16px;
}

.sfl-home .sfl-placeholder--product {
	aspect-ratio: 5 / 6;
}

.sfl-placeholder p {
	margin-block: 4px;
	max-width: 24rem;
}

.sfl-placeholder--product p {
	font-weight: 700;
	line-height: 1.45;
	max-width: 14rem;
}

.sfl-placeholder__label {
	color: var(--wp--preset--color--primary-slate);
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.1em;
}

.sfl-home-trust {
	background: #FFFFFF;
	color: var(--wp--preset--color--charcoal);
	padding: 0 clamp(16px, 3vw, 24px);
}

.sfl-home-trust__grid {
	display: grid;
	gap: 0;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.sfl-fact {
	border-left: 1px solid var(--wp--preset--color--border);
	box-sizing: border-box;
	min-width: 0;
	min-height: 112px;
	padding: 20px clamp(16px, 1.8vw, 22px);
}

.sfl-fact:last-child {
	border-right: 1px solid var(--wp--preset--color--border);
}

.sfl-fact p {
	margin: 0;
}

.sfl-fact__value {
	color: var(--wp--preset--color--charcoal);
	font-family: var(--wp--preset--font-family--manrope);
	font-size: clamp(1.125rem, 2vw, 1.5rem);
	font-weight: 700;
	line-height: 1.25;
	text-wrap: balance;
}

.sfl-fact__unit {
	white-space: nowrap;
}

.sfl-fact__label {
	color: var(--wp--preset--color--primary-slate);
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.075em;
	line-height: 1.4;
	margin-top: 8px !important;
	text-wrap: balance;
}

.sfl-section-heading {
	margin-bottom: clamp(22px, 2.5vw, 32px);
}

.sfl-product-grid {
	display: grid;
	gap: clamp(24px, 3vw, 36px);
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.sfl-product-item {
	min-width: 0;
}

.sfl-product-item h3 {
	font-size: 1.125rem;
	line-height: 1.3;
	margin: 16px 0 0;
}

.sfl-product-item h3 a {
	color: var(--wp--preset--color--charcoal);
}

.sfl-product-item h3 a:hover {
	color: var(--wp--preset--color--primary-slate);
	text-decoration: underline;
	text-underline-offset: 4px;
}

.sfl-home-supporting {
	border-top: 1px solid var(--wp--preset--color--warm-border);
	gap: 24px;
	margin-top: clamp(24px, 2.75vw, 32px);
	padding-top: 20px;
}

.sfl-home-supporting > p {
	flex: 1 1 34rem;
}

.sfl-capability-list {
	margin-bottom: 24px;
}

.sfl-capability {
	align-items: start;
	border-bottom: 1px solid var(--wp--preset--color--border);
	gap: clamp(24px, 3.5vw, 44px);
	grid-template-columns: minmax(15rem, 0.8fr) minmax(18rem, 1.2fr) !important;
	padding-block: clamp(18px, 2vw, 24px);
}

.sfl-capability:last-child {
	border-bottom: 0;
}

.sfl-capability h3 {
	font-size: clamp(1.125rem, 2vw, 1.375rem);
}

.sfl-capability h3 span {
	color: var(--wp--preset--color--muted);
	display: inline-block;
	font-size: 0.8125rem;
	letter-spacing: 0.08em;
	margin-right: 14px;
}

.sfl-capability p {
	color: var(--wp--preset--color--muted);
	margin-block: 0;
}

.sfl-evidence-grid {
	gap: 0;
	margin-bottom: 24px;
}

.sfl-evidence-grid > .wp-block-column {
	border-left: 1px solid var(--wp--preset--color--border);
	padding: 0 clamp(22px, 2.5vw, 32px);
}

.sfl-evidence-grid > .wp-block-column:first-child {
	border-left: 0;
	padding-left: 0;
}

.sfl-evidence-grid > .wp-block-column:last-child {
	border-right: 0;
}

.sfl-evidence-grid h3 {
	font-size: 1.25rem;
}

.sfl-home-narrow {
	margin-inline: auto !important;
	max-width: 850px !important;
}

.sfl-home-company {
	padding-block: clamp(48px, 5vw, 64px);
}

.sfl-home-products {
	padding-block: clamp(44px, 4.5vw, 56px);
}

.sfl-home-capabilities,
.sfl-home-quality {
	padding-block: clamp(32px, 3.5vw, 40px);
}

.sfl-home-quality,
.sfl-home-quality + .sfl-home-international {
	margin-block-start: 0 !important;
}

.sfl-home-international {
	padding-block: clamp(32px, 3.5vw, 44px);
}

.sfl-home-final h2 {
	color: var(--wp--preset--color--slate-hover) !important;
}

.sfl-home-final__inner {
	align-items: center;
	gap: clamp(28px, 4vw, 52px);
}

.sfl-home-final__copy {
	flex: 1 1 38rem;
}

.sfl-home-final__actions {
	flex: 0 1 19rem;
}

.sfl-home-final {
	background-color: #E9EBED !important;
	border-bottom: 1px solid var(--wp--preset--color--border);
	padding-block: clamp(44px, 5vw, 64px);
}

.sfl-home-final__copy p {
	max-width: 48rem;
}

.sfl-home-final__actions .wp-block-buttons {
	margin-bottom: 18px;
}

.sfl-home-final__link a {
	color: var(--wp--preset--color--primary-slate) !important;
	text-decoration: underline;
	text-underline-offset: 4px;
}

@media (max-width: 1024px) {
	.sfl-home-hero__columns,
	.sfl-editorial-columns {
		gap: 36px;
	}

	.sfl-home-trust__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sfl-product-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sfl-fact:nth-child(2) {
		border-right: 1px solid var(--wp--preset--color--border);
	}

	.sfl-fact:nth-child(n + 3) {
		border-top: 1px solid var(--wp--preset--color--border);
	}
}

@media (min-width: 900px) and (max-width: 1199px) {
        .sfl-home .sfl-product-grid {
                grid-template-columns: repeat(3, minmax(0, 1fr));
                gap: clamp(18px, 2.2vw, 28px);
        }
}

@media (min-width: 1200px) {
        .sfl-home .sfl-product-grid {
                grid-template-columns: repeat(6, minmax(0, 1fr));
                gap: clamp(16px, 1.8vw, 24px);
        }
}

@media (min-width: 1025px) {
	.sfl-capability-list > .sfl-capability {
		max-width: none;
		width: 100%;
	}

	.sfl-home-hero__content {
		flex-basis: 64% !important;
	}

	.sfl-home-hero__columns > .wp-block-column:last-child {
		flex-basis: 36% !important;
	}

	.sfl-home-hero__columns {
		gap: clamp(36px, 4vw, 52px);
	}

	.sfl-fact__value {
		font-size: clamp(1.125rem, 1.45vw, 1.375rem);
	}

	.sfl-capability {
		padding-block: clamp(14px, 1.4vw, 18px);
	}
}

@media (max-width: 767px) {
	.sfl-home-capabilities .sfl-capability-list,
	.sfl-home-quality .sfl-evidence-grid {
		margin-block-start: 0 !important;
	}

	.sfl-home-section {
		padding-block: clamp(32px, 7vw, 42px);
	}

	.sfl-home-hero {
		padding-block: clamp(32px, 7vw, 40px);
	}

	.sfl-home h2 {
		font-size: clamp(1.5rem, 6vw, 1.75rem) !important;
	}

	.sfl-product-grid {
		grid-template-columns: 1fr;
	}

	.sfl-home-hero__columns,
	.sfl-editorial-columns {
		flex-direction: column;
	}

	.sfl-home-hero__columns > .wp-block-column,
	.sfl-editorial-columns > .wp-block-column {
		flex-basis: auto !important;
		width: 100%;
	}

	.sfl-home-hero__content h1 {
		font-size: clamp(1.875rem, 8vw, 2.25rem) !important;
		max-width: 20ch;
	}

	.sfl-placeholder--hero {
		aspect-ratio: 4 / 3;
		min-height: 280px;
	}

	.sfl-placeholder--company {
		min-height: 280px;
	}

	.sfl-home-company {
		padding-block: clamp(40px, 8vw, 48px);
	}

	.sfl-home-international {
		padding-block: clamp(30px, 7vw, 38px);
	}

	.sfl-capability {
		grid-template-columns: 1fr !important;
		gap: 8px;
		padding-block: 20px;
	}

	.sfl-evidence-grid {
		gap: 0;
	}

	.sfl-evidence-grid > .wp-block-column,
	.sfl-evidence-grid > .wp-block-column:first-child,
	.sfl-evidence-grid > .wp-block-column:last-child {
		border: 0;
		border-top: 1px solid var(--wp--preset--color--border);
		padding: 20px 0;
	}

	.sfl-evidence-grid > .wp-block-column:first-child {
		border-top: 0;
	}

	.sfl-evidence-grid > .wp-block-column:last-child {
		border-bottom: 0;
	}
}

@media (min-width: 460px) and (max-width: 599px) {
        .sfl-home .sfl-product-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: clamp(16px, 3vw, 22px);
        }
}

@media (min-width: 600px) and (max-width: 767px) {
        .sfl-home .sfl-product-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: clamp(18px, 3vw, 24px);
        }
}

@media (max-width: 480px) {
	.sfl-placeholder--hero,
	.sfl-placeholder--company {
		min-height: 240px;
	}

	.sfl-fact {
		padding-block: 18px;
	}

	.sfl-home-actions,
	.sfl-home-actions .wp-block-button,
	.sfl-home-actions .wp-block-button__link,
	.sfl-home-supporting .wp-block-buttons,
	.sfl-home-supporting .wp-block-button,
	.sfl-home-supporting .wp-block-button__link,
	.sfl-home-final__actions .wp-block-buttons,
	.sfl-home-final__actions .wp-block-button,
	.sfl-home-final__actions .wp-block-button__link {
		width: 100%;
	}

	.sfl-home-trust__grid {
		grid-template-columns: 1fr;
	}

	.sfl-fact,
	.sfl-fact:nth-child(2),
	.sfl-fact:last-child {
		border: 0;
		border-bottom: 1px solid var(--wp--preset--color--border);
		min-height: 0;
	}
}

/* Capabilities page v0.1 */
.sfl-capabilities {
	box-sizing: border-box;
	margin-block: 0;
	margin-inline: 0 !important;
	max-width: none !important;
	width: 100%;
}

.sfl-capabilities .alignwide {
	box-sizing: border-box;
	margin-inline: auto !important;
	max-width: var(--wp--style--global--wide-size, 1200px);
	width: 100%;
}

.sfl-capabilities-section {
	box-sizing: border-box;
	padding: clamp(64px, 8vw, 112px) clamp(16px, 3vw, 24px);
}

.sfl-capabilities-section > :first-child,
.sfl-capabilities-heading > :first-child,
.sfl-capabilities-process__item > :first-child,
.sfl-capabilities-final__copy > :first-child {
	margin-top: 0;
}

.sfl-capabilities-section > :last-child,
.sfl-capabilities-heading > :last-child,
.sfl-capabilities-process__item > :last-child,
.sfl-capabilities-final__copy > :last-child {
	margin-bottom: 0;
}

.sfl-capabilities-hero {
	padding-block: clamp(56px, 7vw, 96px);
}

.sfl-capabilities-hero__columns {
	gap: clamp(40px, 6vw, 80px);
}

.sfl-capabilities-hero__content h1 {
	letter-spacing: -0.035em;
	max-width: none;
}

.sfl-capabilities-eyebrow {
	color: var(--wp--preset--color--primary-slate);
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.11em;
	line-height: 1.4;
	text-transform: uppercase;
}

.sfl-capabilities-intro {
	color: var(--wp--preset--color--muted);
	font-size: clamp(1.0625rem, 1.5vw, 1.25rem);
	line-height: 1.6;
}

.sfl-capabilities-actions {
	gap: 12px;
	padding-top: 8px;
}

.sfl-capabilities .wp-block-button__link {
	align-items: center;
	box-sizing: border-box;
	display: inline-flex;
	justify-content: center;
	min-height: 48px;
	padding: 12px 22px;
}

.sfl-capabilities .is-style-outline > .wp-block-button__link {
	border-color: var(--wp--preset--color--primary-slate);
	color: var(--wp--preset--color--primary-slate);
}

.sfl-capabilities .is-style-outline > .wp-block-button__link:hover {
	background: var(--wp--preset--color--slate-hover);
	border-color: var(--wp--preset--color--slate-hover);
	color: var(--wp--preset--color--white);
}

.sfl-capabilities-placeholder {
	align-items: center;
	aspect-ratio: 4 / 5;
	background: #F7F8F8;
	border: 1px dashed var(--wp--preset--color--border);
	box-sizing: border-box;
	color: var(--wp--preset--color--muted);
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-height: 500px;
	overflow: hidden;
	padding: clamp(24px, 4vw, 48px);
	text-align: center;
	width: 100%;
}

.sfl-capabilities-placeholder p {
	margin-block: 4px;
	max-width: 22rem;
}

.sfl-capabilities-placeholder__label {
	color: var(--wp--preset--color--primary-slate);
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.1em;
}

.sfl-capabilities-heading {
	margin-bottom: clamp(40px, 5vw, 64px);
}

.sfl-capabilities-process {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
}

.sfl-capabilities-process__item {
	border-left: 1px solid var(--wp--preset--color--warm-border);
	box-sizing: border-box;
	min-width: 0;
	padding: 24px clamp(16px, 2vw, 28px);
}

.sfl-capabilities-process__item:last-child {
	border-right: 1px solid var(--wp--preset--color--warm-border);
}

.sfl-capabilities-process__number {
	color: var(--wp--preset--color--primary-slate);
	font-family: var(--wp--preset--font-family--manrope);
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.08em;
}

.sfl-capabilities-process h3 {
	font-size: clamp(1rem, 1.5vw, 1.2rem);
	line-height: 1.35;
}

.sfl-capabilities-columns,
.sfl-capabilities-detail-columns {
	gap: 0;
}

.sfl-capabilities-columns > .wp-block-column,
.sfl-capabilities-detail-columns > .wp-block-column {
	border-left: 1px solid var(--wp--preset--color--border);
	box-sizing: border-box;
	min-width: 0;
	padding: 0 clamp(24px, 4vw, 48px);
}

.sfl-capabilities-columns > .wp-block-column:first-child,
.sfl-capabilities-detail-columns > .wp-block-column:first-child {
	padding-left: 0;
}

.sfl-capabilities-columns > .wp-block-column:last-child,
.sfl-capabilities-detail-columns > .wp-block-column:last-child {
	border-right: 1px solid var(--wp--preset--color--border);
}

.sfl-capabilities-columns h3,
.sfl-capabilities-detail-columns h3,
.sfl-capabilities-enquiry__columns h3 {
	font-size: clamp(1.125rem, 2vw, 1.375rem);
	margin-top: 0;
}

.sfl-capabilities-detail-columns h3:not(:first-child) {
	border-top: 1px solid var(--wp--preset--color--border);
	margin-top: 32px;
	padding-top: 28px;
}

.sfl-capabilities-list {
	list-style: none;
	margin: 24px 0;
	padding: 0;
}

.sfl-capabilities-list li {
	border-top: 1px solid var(--wp--preset--color--border);
	box-sizing: border-box;
	padding: 10px 0;
}

.sfl-capabilities-list li:last-child {
	border-bottom: 1px solid var(--wp--preset--color--border);
}

.sfl-capabilities-list--two {
	column-gap: 28px;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sfl-capabilities-note,
.sfl-capabilities-supporting {
	border-top: 1px solid var(--wp--preset--color--border);
	color: var(--wp--preset--color--muted);
	margin-top: clamp(40px, 5vw, 64px) !important;
	padding-top: 28px;
}

.sfl-capabilities-note p {
	margin-block: 8px;
}

.sfl-capabilities-model__columns h3,
.sfl-capabilities-enquiry__columns h3 {
	color: var(--wp--preset--color--primary-slate);
	font-size: 0.875rem;
	letter-spacing: 0.08em;
}

.sfl-capabilities-commercial__list {
	border-top: 1px solid var(--wp--preset--color--border);
}

.sfl-capabilities-commercial__item {
	border-bottom: 1px solid var(--wp--preset--color--border);
	display: grid;
	gap: clamp(24px, 5vw, 72px);
	grid-template-columns: minmax(12rem, 0.8fr) minmax(0, 2fr);
	padding-block: 24px;
}

.sfl-capabilities-commercial__item h3,
.sfl-capabilities-commercial__item p {
	margin: 0;
}

.sfl-capabilities-commercial__item h3 {
	color: var(--wp--preset--color--primary-slate);
	font-size: 0.875rem;
	letter-spacing: 0.08em;
}

.sfl-capabilities-commercial__item p {
	font-family: var(--wp--preset--font-family--manrope);
	font-size: clamp(1.0625rem, 1.7vw, 1.25rem);
	font-weight: 600;
	line-height: 1.55;
	min-width: 0;
	overflow-wrap: anywhere;
}

.sfl-capabilities-enquiry__columns {
	gap: clamp(28px, 4vw, 56px);
}

.sfl-capabilities-enquiry__columns > .wp-block-column {
	min-width: 0;
}

.sfl-capabilities-final {
	background-color: #E9EBED !important;
	border-bottom: 1px solid var(--wp--preset--color--border);
	padding-block: clamp(72px, 7vw, 96px);
}

.sfl-capabilities-final h2 {
	color: var(--wp--preset--color--slate-hover) !important;
}

.sfl-capabilities-final__inner {
	gap: clamp(32px, 6vw, 80px);
}

.sfl-capabilities-final__copy {
	flex: 1 1 38rem;
}

.sfl-capabilities-final__actions {
	flex: 0 1 19rem;
}

.sfl-capabilities-final__actions .wp-block-buttons {
	margin-bottom: 18px;
}

.sfl-capabilities-final__link a {
	color: var(--wp--preset--color--primary-slate) !important;
	text-decoration: underline;
	text-underline-offset: 4px;
}

@media (min-width: 1025px) {
	.sfl-capabilities > .sfl-capabilities-section {
		margin-block-start: 0 !important;
	}

	.sfl-capabilities-section {
		padding-block: clamp(40px, 4.5vw, 56px);
	}

	.sfl-capabilities h2 {
		font-size: clamp(1.75rem, 2.3vw, 2rem) !important;
		letter-spacing: -0.025em;
		line-height: 1.2;
		text-wrap: balance;
	}

	.sfl-capabilities-hero {
		padding-block: clamp(40px, 4.5vw, 60px);
	}

	.sfl-capabilities-hero__columns {
		gap: clamp(36px, 4vw, 52px);
	}

	.sfl-capabilities-hero__content h1 {
		font-size: clamp(2rem, 2.8vw, 2.5rem) !important;
		letter-spacing: -0.03em;
		line-height: 1.12;
		max-width: 32ch;
		text-wrap: balance;
	}

	.sfl-capabilities-hero__content .sfl-capabilities-intro {
		max-width: 44rem;
	}

	.sfl-capabilities-placeholder {
		aspect-ratio: 4 / 3;
		min-height: 360px;
	}

	.sfl-capabilities-heading {
		margin-bottom: clamp(22px, 2.5vw, 32px);
	}

	.sfl-capabilities-heading h2,
	.sfl-capabilities-heading .sfl-capabilities-intro {
		max-width: 58rem;
	}

	.sfl-capabilities-process {
		margin-block-start: 0 !important;
	}

	.sfl-capabilities-process__item {
		padding: 18px clamp(16px, 2vw, 24px);
	}

	.sfl-capabilities-process__item:first-child {
		border-left: 0;
	}

	.sfl-capabilities-process__item:last-child {
		border-right: 0;
	}

	.sfl-capabilities-columns > .wp-block-column:first-child,
	.sfl-capabilities-detail-columns > .wp-block-column:first-child {
		border-left: 0;
	}

	.sfl-capabilities-columns > .wp-block-column:last-child,
	.sfl-capabilities-detail-columns > .wp-block-column:last-child {
		border-right: 0;
	}

	.sfl-capabilities-detail-columns h3:not(:first-child) {
		margin-top: 24px;
		padding-top: 20px;
	}

	.sfl-capabilities-detail-columns p {
		margin-block: 10px 0;
	}

	.sfl-capabilities-list {
		margin: 16px 0;
	}

	.sfl-capabilities-list li {
		padding-block: 8px;
	}

	.sfl-capabilities-list li:first-child,
	.sfl-capabilities-list--two li:nth-child(-n + 2) {
		border-top: 0;
	}

	.sfl-capabilities-list li:last-child {
		border-bottom: 0;
	}

	.sfl-capabilities-note,
	.sfl-capabilities-supporting {
		margin-top: 24px !important;
		padding-top: 20px;
	}

	.sfl-capabilities-note p {
		margin-block: 6px;
	}

	.sfl-capabilities-commercial__list {
		border-top: 0;
		margin-block-start: 0 !important;
	}

	.sfl-capabilities-commercial__item {
		gap: clamp(24px, 3.5vw, 44px);
		padding-block: 16px;
	}

	.sfl-capabilities-commercial__item:last-child {
		border-bottom: 0;
	}

	.sfl-capabilities-enquiry__columns {
		gap: clamp(28px, 3.5vw, 44px);
	}

	.sfl-capabilities-enquiry__columns .sfl-capabilities-list {
		margin-top: 16px;
	}

	.sfl-capabilities-final {
		padding-block: clamp(44px, 5vw, 64px);
	}

	.sfl-capabilities-final__inner {
		gap: clamp(28px, 4vw, 52px);
	}
}

@media (max-width: 1024px) {
	.sfl-capabilities-hero__columns {
		gap: 40px;
	}

	.sfl-capabilities > .sfl-capabilities-section {
		margin-block-start: 0 !important;
	}

	.sfl-capabilities-section {
		padding-block: clamp(40px, 5vw, 52px);
	}

	.sfl-capabilities h2 {
		font-size: clamp(1.625rem, 2.8vw, 2rem) !important;
		letter-spacing: -0.025em;
		line-height: 1.2;
		text-wrap: balance;
	}

	.sfl-capabilities-hero {
		padding-block: clamp(40px, 5vw, 56px);
	}

	.sfl-capabilities-hero__content h1 {
		font-size: clamp(2rem, 3.5vw, 2.5rem) !important;
		letter-spacing: -0.03em;
		line-height: 1.12;
		text-wrap: balance;
	}

	.sfl-capabilities-placeholder {
		aspect-ratio: 4 / 3;
		width: 100%;
		max-width: 36rem;
		min-height: 0;
		margin-inline: auto;
	}

	.sfl-capabilities-heading {
		margin-bottom: clamp(24px, 3vw, 32px);
	}

	.sfl-capabilities-process__item {
		padding: 18px clamp(16px, 2vw, 24px);
	}

	.sfl-capabilities-process__item:first-child {
		border-left: 0;
	}

	.sfl-capabilities-process__item:last-child {
		border-right: 0;
		border-bottom: 0;
		grid-column: 1 / -1;
		width: 100%;
	}

	.sfl-capabilities-columns > .wp-block-column:first-child,
	.sfl-capabilities-detail-columns > .wp-block-column:first-child {
		border-left: 0;
	}

	.sfl-capabilities-columns > .wp-block-column:last-child,
	.sfl-capabilities-detail-columns > .wp-block-column:last-child {
		border-right: 0;
	}

	.sfl-capabilities-detail-columns h3:not(:first-child) {
		margin-top: 24px;
		padding-top: 20px;
	}

	.sfl-capabilities-detail-columns p {
		margin-block: 10px 0;
	}

	.sfl-capabilities-list {
		margin: 16px 0;
	}

	.sfl-capabilities-list li {
		padding-block: 8px;
	}

	.sfl-capabilities-list li:first-child,
	.sfl-capabilities-list--two li:nth-child(-n + 2) {
		border-top: 0;
	}

	.sfl-capabilities-list li:last-child {
		border-bottom: 0;
	}

	.sfl-capabilities-note,
	.sfl-capabilities-supporting {
		margin-top: 24px !important;
		padding-top: 20px;
	}

	.sfl-capabilities-note p {
		margin-block: 6px;
	}

	.sfl-capabilities-commercial__list {
		border-top: 0;
		margin-block-start: 0 !important;
	}

	.sfl-capabilities-commercial__item {
		gap: clamp(24px, 3.5vw, 44px);
		padding-block: 16px;
	}

	.sfl-capabilities-commercial__item:last-child {
		border-bottom: 0;
	}

	.sfl-capabilities-enquiry__columns {
		gap: clamp(28px, 3.5vw, 44px);
	}

	.sfl-capabilities-final {
		padding-block: clamp(44px, 5vw, 64px);
	}

	.sfl-capabilities-final__inner {
		gap: clamp(28px, 4vw, 52px);
	}

	.sfl-capabilities-process {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sfl-capabilities-process__item {
		border-bottom: 1px solid var(--wp--preset--color--warm-border);
	}

	.sfl-capabilities-process__item:last-child {
		border-right: 0;
		grid-column: 1 / -1;
	}
}

@media (min-width: 900px) and (max-width: 1024px) {
        .sfl-capabilities-process {
                grid-template-columns: repeat(5, minmax(0, 1fr));
        }

        .sfl-capabilities-process__item {
                border-bottom: 0;
        }

        .sfl-capabilities-process__item:last-child {
                grid-column: auto;
        }
}

@media (max-width: 767px) {
	.sfl-capabilities-hero__columns,
	.sfl-capabilities-columns,
	.sfl-capabilities-detail-columns,
	.sfl-capabilities-enquiry__columns {
		flex-direction: column;
	}

	.sfl-capabilities-hero__columns > .wp-block-column,
	.sfl-capabilities-columns > .wp-block-column,
	.sfl-capabilities-detail-columns > .wp-block-column,
	.sfl-capabilities-enquiry__columns > .wp-block-column {
		flex-basis: auto !important;
		width: 100%;
	}

	.sfl-capabilities-section {
		padding-block: clamp(32px, 7vw, 42px);
	}

	.sfl-capabilities h2 {
		font-size: clamp(1.5rem, 6vw, 1.75rem) !important;
	}

	.sfl-capabilities-hero {
		padding-block: clamp(32px, 7vw, 40px);
	}

	.sfl-capabilities-hero__content h1 {
		font-size: clamp(1.875rem, 8vw, 2.25rem) !important;
		max-width: 20ch;
	}

	.sfl-capabilities-placeholder {
		aspect-ratio: 4 / 3;
		min-height: 0;
	}

	.sfl-capabilities-process {
		grid-template-columns: 1fr;
	}

	.sfl-capabilities-process__item,
	.sfl-capabilities-process__item:first-child,
	.sfl-capabilities-process__item:last-child {
		border-left: 0;
		border-right: 0;
		padding: 16px 0;
	}

	.sfl-capabilities-process__item:first-child {
		border-top: 0;
	}

	.sfl-capabilities-process__item:last-child {
		border-bottom: 0;
		grid-column: auto;
	}

	.sfl-capabilities-columns > .wp-block-column,
	.sfl-capabilities-columns > .wp-block-column:first-child,
	.sfl-capabilities-columns > .wp-block-column:last-child,
	.sfl-capabilities-detail-columns > .wp-block-column,
	.sfl-capabilities-detail-columns > .wp-block-column:first-child,
	.sfl-capabilities-detail-columns > .wp-block-column:last-child {
		border: 0;
		border-top: 1px solid var(--wp--preset--color--border);
		padding: 28px 0;
	}

	.sfl-capabilities-columns > .wp-block-column:last-child,
	.sfl-capabilities-detail-columns > .wp-block-column:last-child {
		border-bottom: 1px solid var(--wp--preset--color--border);
	}

	.sfl-capabilities-columns > .wp-block-column:first-child,
	.sfl-capabilities-detail-columns > .wp-block-column:first-child {
		border-top: 0;
	}

	.sfl-capabilities-columns > .wp-block-column:last-child,
	.sfl-capabilities-detail-columns > .wp-block-column:last-child {
		border-bottom: 0;
	}

	.sfl-capabilities-list {
		margin: 16px 0;
	}

	.sfl-capabilities-list li {
		padding-block: 8px;
	}

	.sfl-capabilities-list li:first-child,
	.sfl-capabilities-list--two li:nth-child(-n + 2) {
		border-top: 0;
	}

	.sfl-capabilities-list li:last-child {
		border-bottom: 0;
	}

	.sfl-capabilities-note,
	.sfl-capabilities-supporting {
		margin-top: 20px !important;
		padding-top: 18px;
	}

	.sfl-capabilities-commercial__item {
		padding-block: 14px;
	}

	.sfl-capabilities-final {
		padding-block: clamp(44px, 7vw, 56px);
	}

	.sfl-capabilities-enquiry__columns {
		gap: 32px;
	}
}

@media (max-width: 480px) {
	.sfl-capabilities-list--two li:nth-child(2) {
		border-top: 1px solid var(--wp--preset--color--border);
	}

	.sfl-capabilities-actions,
	.sfl-capabilities-actions .wp-block-button,
	.sfl-capabilities-actions .wp-block-button__link,
	.sfl-capabilities-enquiry .wp-block-buttons,
	.sfl-capabilities-enquiry .wp-block-button,
	.sfl-capabilities-enquiry .wp-block-button__link,
	.sfl-capabilities-final__actions,
	.sfl-capabilities-final__actions .wp-block-buttons,
	.sfl-capabilities-final__actions .wp-block-button,
	.sfl-capabilities-final__actions .wp-block-button__link {
		width: 100%;
	}

	.sfl-capabilities-process,
	.sfl-capabilities-list--two {
		grid-template-columns: 1fr;
	}

	.sfl-capabilities-process__item:last-child {
		grid-column: auto;
	}

	.sfl-capabilities-commercial__item {
		gap: 8px;
		grid-template-columns: 1fr;
	}
}

/* Company page v0.1 */
.sfl-company {
	box-sizing: border-box;
	margin-block: 0;
	margin-inline: 0 !important;
	max-width: none !important;
	width: 100%;
}

.sfl-company .alignwide {
	box-sizing: border-box;
	margin-inline: auto !important;
	max-width: var(--wp--style--global--wide-size, 1200px);
	width: 100%;
}

.sfl-company-section {
	box-sizing: border-box;
	padding: clamp(64px, 8vw, 112px) clamp(16px, 3vw, 24px);
}

.sfl-company-section > :first-child,
.sfl-company-heading > :first-child,
.sfl-company-final__copy > :first-child {
	margin-top: 0;
}

.sfl-company-section > :last-child,
.sfl-company-heading > :last-child,
.sfl-company-final__copy > :last-child {
	margin-bottom: 0;
}

.sfl-company-hero {
	padding-block: clamp(56px, 7vw, 96px);
}

.sfl-company-hero__columns,
.sfl-company-message__columns {
	gap: clamp(40px, 6vw, 80px);
}

.sfl-company-hero__content h1 {
	letter-spacing: -0.035em;
	max-width: none;
}

.sfl-company-eyebrow,
.sfl-company-draft-label {
	color: var(--wp--preset--color--primary-slate);
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.11em;
	line-height: 1.4;
	text-transform: uppercase;
}

.sfl-company-draft-label {
	border-left: 3px solid var(--wp--preset--color--primary-slate);
	padding-left: 12px;
}

.sfl-company-intro {
	color: var(--wp--preset--color--muted);
	font-size: clamp(1.0625rem, 1.5vw, 1.25rem);
	line-height: 1.6;
}

.sfl-company-placeholder {
	align-items: center;
	background: #F7F8F8;
	border: 1px dashed var(--wp--preset--color--border);
	box-sizing: border-box;
	color: var(--wp--preset--color--muted);
	display: flex;
	flex-direction: column;
	justify-content: center;
	overflow: hidden;
	padding: clamp(24px, 4vw, 48px);
	text-align: center;
	width: 100%;
}

.sfl-company-placeholder--hero {
	aspect-ratio: 4 / 5;
	min-height: 500px;
}

.sfl-company-placeholder--portrait {
	aspect-ratio: 4 / 5;
	min-height: 430px;
}

.sfl-company-placeholder p {
	margin-block: 4px;
	max-width: 22rem;
}

.sfl-company-placeholder__label {
	color: var(--wp--preset--color--primary-slate);
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.1em;
}

.sfl-company-snapshot {
	background: #FFFFFF;
	color: var(--wp--preset--color--charcoal);
	padding-inline: clamp(16px, 3vw, 24px);
}

.sfl-company-snapshot__grid {
	display: grid;
	gap: 0;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.sfl-company-fact {
	border-left: 1px solid var(--wp--preset--color--border);
	box-sizing: border-box;
	min-height: 150px;
	min-width: 0;
	padding: 28px clamp(18px, 2vw, 28px);
}

.sfl-company-fact:last-child {
	border-right: 1px solid var(--wp--preset--color--border);
}

.sfl-company-fact p {
	margin: 0;
}

.sfl-company-fact__label {
	color: var(--wp--preset--color--primary-slate);
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.075em;
	line-height: 1.4;
}

.sfl-company-fact__value {
	color: var(--wp--preset--color--charcoal);
	font-family: var(--wp--preset--font-family--manrope);
	font-size: clamp(1.125rem, 1.7vw, 1.375rem);
	font-weight: 700;
	line-height: 1.3;
	margin-top: 10px !important;
}

.sfl-company-narrow,
.sfl-company-location__inner {
	margin-inline: auto !important;
	max-width: 850px !important;
}

.sfl-company-narrow p,
.sfl-company-message p,
.sfl-company-location p {
	font-size: 1.0625rem;
	line-height: 1.7;
}

.sfl-company-heading {
	margin-bottom: clamp(40px, 5vw, 64px);
}

.sfl-company-approach__columns,
.sfl-company-market-columns {
	gap: 0;
}

.sfl-company-approach__columns > .wp-block-column,
.sfl-company-market-columns > .wp-block-column {
	border-left: 1px solid var(--wp--preset--color--border);
	box-sizing: border-box;
	padding: 0 clamp(24px, 4vw, 48px);
}

.sfl-company-approach__columns > .wp-block-column:first-child,
.sfl-company-market-columns > .wp-block-column:first-child {
	padding-left: 0;
}

.sfl-company-approach__columns > .wp-block-column:last-child,
.sfl-company-market-columns > .wp-block-column:last-child {
	border-right: 1px solid var(--wp--preset--color--border);
}

.sfl-company-approach h3,
.sfl-company-markets h3 {
	font-size: clamp(1.125rem, 2vw, 1.375rem);
	margin-top: 0;
}

.sfl-company-list,
.sfl-company-country-list,
.sfl-company-membership-list {
	list-style: none;
	margin: 24px 0 0;
	padding: 0;
}

.sfl-company-list li,
.sfl-company-country-list li,
.sfl-company-membership-list li {
	border-top: 1px solid var(--wp--preset--color--border);
	box-sizing: border-box;
	padding: 11px 0;
}

.sfl-company-list li:last-child,
.sfl-company-country-list li:last-child,
.sfl-company-membership-list li:last-child {
	border-bottom: 1px solid var(--wp--preset--color--border);
}

.sfl-company-list--two,
.sfl-company-country-list {
	column-gap: 28px;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.sfl-company-note,
.sfl-company-customer-types {
	border-top: 1px solid var(--wp--preset--color--border);
	color: var(--wp--preset--color--muted);
	margin-top: clamp(40px, 5vw, 64px) !important;
	padding-top: 28px;
}

.sfl-company-signature {
	margin-top: 30px;
}

.sfl-company-membership-list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	column-gap: clamp(32px, 6vw, 80px);
}

.sfl-company-location__address {
	font-family: var(--wp--preset--font-family--manrope);
	font-size: clamp(1.125rem, 2vw, 1.375rem) !important;
	font-weight: 600;
}

.sfl-company-final {
	background-color: #E9EBED !important;
	border-bottom: 1px solid var(--wp--preset--color--border);
	padding-block: clamp(72px, 7vw, 96px);
}

.sfl-company-final h2 {
	color: var(--wp--preset--color--slate-hover) !important;
}

.sfl-company-final__inner {
	gap: clamp(32px, 6vw, 80px);
}

.sfl-company-final__copy {
	flex: 1 1 38rem;
}

.sfl-company-final__actions {
	flex: 0 1 19rem;
}

.sfl-company-final__actions .wp-block-buttons {
	margin-bottom: 18px;
}

.sfl-company-final__actions .wp-block-button__link {
	align-items: center;
	display: inline-flex;
	justify-content: center;
	min-height: 48px;
	padding: 12px 22px;
}

.sfl-company-final__link a {
	color: var(--wp--preset--color--primary-slate) !important;
	text-decoration: underline;
	text-underline-offset: 4px;
}

@media (min-width: 1025px) {
	.sfl-company > .sfl-company-section,
	.sfl-company > .sfl-company-snapshot {
		margin-block-start: 0 !important;
	}

	.sfl-company-section {
		padding-block: clamp(40px, 4.5vw, 56px);
	}

	.sfl-company h2 {
		font-size: clamp(1.75rem, 2.3vw, 2rem) !important;
		letter-spacing: -0.025em;
		line-height: 1.2;
		text-wrap: balance;
	}

	.sfl-company-hero {
		padding-block: clamp(40px, 4.5vw, 60px);
	}

	.sfl-company-hero__columns,
	.sfl-company-message__columns {
		gap: clamp(36px, 4vw, 52px);
	}

	.sfl-company-hero__content h1 {
		font-size: clamp(2rem, 2.8vw, 2.5rem) !important;
		line-height: 1.12;
		max-width: 32ch;
		text-wrap: balance;
	}

	.sfl-company-hero__content .sfl-company-intro {
		max-width: 44rem;
	}

	.sfl-company-placeholder--hero {
		aspect-ratio: 4 / 3;
		min-height: 360px;
	}

	.sfl-company-fact {
		min-height: 108px;
		padding: 20px clamp(16px, 1.8vw, 22px);
	}

	.sfl-company-heading {
		margin-bottom: clamp(22px, 2.5vw, 32px);
	}

	.sfl-company-heading h2,
	.sfl-company-heading .sfl-company-intro {
		max-width: 58rem;
	}

	.sfl-company-approach .sfl-company-heading h2 {
		max-width: none;
		width: 100%;
	}

	.sfl-company-story {
		padding-block: clamp(40px, 4vw, 48px);
	}

	.sfl-company-story .sfl-company-narrow {
		max-width: 58rem !important;
	}

	.sfl-company-story .sfl-company-narrow > p,
	.sfl-company-message p,
	.sfl-company-location p {
		margin-block: 12px 0;
	}

	.sfl-company-approach {
		padding-block: clamp(40px, 4vw, 52px);
	}

	.sfl-company-approach__columns > .wp-block-column:first-child,
	.sfl-company-market-columns > .wp-block-column:first-child {
		border-left: 0;
	}

	.sfl-company-approach__columns > .wp-block-column:last-child,
	.sfl-company-market-columns > .wp-block-column:last-child {
		border-right: 0;
	}

	.sfl-company-list,
	.sfl-company-country-list,
	.sfl-company-membership-list {
		margin-top: 16px;
	}

	.sfl-company-list li,
	.sfl-company-country-list li,
	.sfl-company-membership-list li {
		padding-block: 8px;
	}

	.sfl-company-list li:first-child,
	.sfl-company-list--two li:nth-child(-n + 2),
	.sfl-company-country-list li:nth-child(-n + 2) {
		border-top: 0;
	}

	.sfl-company-list li:last-child,
	.sfl-company-country-list li:last-child {
		border-bottom: 0;
	}

	.sfl-company-note,
	.sfl-company-customer-types {
		margin-top: 24px !important;
		padding-top: 20px;
	}

	.sfl-company-message {
		padding-block: clamp(48px, 5vw, 64px);
	}

	.sfl-company-signature {
		margin-top: 24px !important;
	}

	.sfl-company-markets {
		padding-block: clamp(40px, 4vw, 52px);
	}

	.sfl-company-memberships {
		padding-block: clamp(32px, 3.5vw, 44px);
	}

	.sfl-company-membership-list li:nth-child(-n + 2) {
		border-top: 0;
	}

	.sfl-company-membership-list li:nth-last-child(-n + 2) {
		border-bottom: 0;
	}

	.sfl-company-location {
		padding-block: clamp(36px, 4vw, 48px);
	}

	.sfl-company-location__inner {
		max-width: 58rem !important;
	}

	.sfl-company-final {
		padding-block: clamp(44px, 5vw, 64px);
	}

	.sfl-company-final__inner {
		gap: clamp(28px, 4vw, 52px);
	}
}

@media (max-width: 1024px) {
	.sfl-company-hero__columns,
	.sfl-company-message__columns {
		gap: 40px;
	}

	.sfl-company > .sfl-company-section,
	.sfl-company > .sfl-company-snapshot {
		margin-block-start: 0 !important;
	}

	.sfl-company-section {
		padding-block: clamp(40px, 5vw, 52px);
	}

	.sfl-company h2 {
		font-size: clamp(1.625rem, 2.8vw, 2rem) !important;
		line-height: 1.2;
		text-wrap: balance;
	}

	.sfl-company-hero {
		padding-block: clamp(40px, 5vw, 56px);
	}

	.sfl-company-hero__content h1 {
		font-size: clamp(2rem, 3.5vw, 2.5rem) !important;
		line-height: 1.12;
		text-wrap: balance;
	}

	.sfl-company-placeholder--hero {
		aspect-ratio: 4 / 3;
		width: 100%;
		max-width: 36rem;
		min-height: 0;
		margin-inline: auto;
	}

	.sfl-company-fact {
		min-height: 104px;
		padding: 18px clamp(16px, 2vw, 20px);
	}

	.sfl-company-heading {
		margin-bottom: clamp(24px, 3vw, 32px);
	}

	.sfl-company-story .sfl-company-narrow,
	.sfl-company-location__inner {
		max-width: 58rem !important;
	}

	.sfl-company-approach__columns > .wp-block-column:first-child,
	.sfl-company-market-columns > .wp-block-column:first-child {
		border-left: 0;
	}

	.sfl-company-approach__columns > .wp-block-column:last-child,
	.sfl-company-market-columns > .wp-block-column:last-child {
		border-right: 0;
	}

	.sfl-company-list,
	.sfl-company-country-list,
	.sfl-company-membership-list {
		margin-top: 16px;
	}

	.sfl-company-list li,
	.sfl-company-country-list li,
	.sfl-company-membership-list li {
		padding-block: 8px;
	}

	.sfl-company-list li:first-child,
	.sfl-company-list--two li:nth-child(-n + 2),
	.sfl-company-country-list li:nth-child(-n + 2),
	.sfl-company-membership-list li:first-child {
		border-top: 0;
	}

	.sfl-company-list li:last-child,
	.sfl-company-country-list li:last-child,
	.sfl-company-membership-list li:last-child {
		border-bottom: 0;
	}

	.sfl-company-message {
		padding-block: clamp(44px, 5vw, 56px);
	}

	.sfl-company-final {
		padding-block: clamp(44px, 5vw, 64px);
	}

	.sfl-company-final__inner {
		gap: clamp(28px, 4vw, 52px);
	}

	.sfl-company-placeholder--portrait {
		aspect-ratio: 4 / 5;
		max-width: 22rem;
		min-height: 380px;
	}

	.sfl-company-snapshot__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.sfl-company-fact:nth-child(2) {
		border-right: 1px solid var(--wp--preset--color--border);
	}

	.sfl-company-fact:nth-child(n + 3) {
		border-top: 1px solid var(--wp--preset--color--border);
	}
}

@media (max-width: 767px) {
	.sfl-company-hero__columns,
	.sfl-company-message__columns,
	.sfl-company-approach__columns,
	.sfl-company-market-columns {
		flex-direction: column;
	}

	.sfl-company-hero__columns > .wp-block-column,
	.sfl-company-message__columns > .wp-block-column,
	.sfl-company-market-columns > .wp-block-column {
		flex-basis: auto !important;
		width: 100%;
	}

	.sfl-company-section {
		padding-block: clamp(32px, 7vw, 42px);
	}

	.sfl-company h2 {
		font-size: clamp(1.5rem, 6vw, 1.75rem) !important;
	}

	.sfl-company-hero {
		padding-block: clamp(32px, 7vw, 40px);
	}

	.sfl-company-hero__content h1 {
		font-size: clamp(1.875rem, 8vw, 2.25rem) !important;
		max-width: 20ch;
	}

	.sfl-company-fact {
		min-height: 0;
		padding-block: 18px;
	}

	.sfl-company-placeholder--hero {
		aspect-ratio: 4 / 3;
		min-height: 0;
	}

	.sfl-company-placeholder--portrait {
		aspect-ratio: 4 / 5;
		max-width: 18rem;
		min-height: 0;
		margin-inline: auto;
	}

	.sfl-company-approach__columns > .wp-block-column,
	.sfl-company-approach__columns > .wp-block-column:first-child,
	.sfl-company-approach__columns > .wp-block-column:last-child,
	.sfl-company-market-columns > .wp-block-column,
	.sfl-company-market-columns > .wp-block-column:first-child,
	.sfl-company-market-columns > .wp-block-column:last-child {
		border: 0;
		border-top: 1px solid var(--wp--preset--color--border);
		padding: 28px 0;
	}

	.sfl-company-approach__columns > .wp-block-column:last-child,
	.sfl-company-market-columns > .wp-block-column:last-child {
		border-bottom: 1px solid var(--wp--preset--color--border);
	}

	.sfl-company-approach__columns > .wp-block-column:first-child,
	.sfl-company-market-columns > .wp-block-column:first-child {
		border-top: 0;
	}

	.sfl-company-approach__columns > .wp-block-column:last-child,
	.sfl-company-market-columns > .wp-block-column:last-child {
		border-bottom: 0;
	}

	.sfl-company-list,
	.sfl-company-country-list,
	.sfl-company-membership-list {
		margin-top: 16px;
	}

	.sfl-company-list li,
	.sfl-company-country-list li,
	.sfl-company-membership-list li {
		padding-block: 8px;
	}

	.sfl-company-list li:first-child,
	.sfl-company-list--two li:nth-child(-n + 2),
	.sfl-company-country-list li:nth-child(-n + 2),
	.sfl-company-membership-list li:first-child {
		border-top: 0;
	}

	.sfl-company-list li:last-child,
	.sfl-company-country-list li:last-child,
	.sfl-company-membership-list li:last-child {
		border-bottom: 0;
	}

	.sfl-company-message {
		padding-block: clamp(40px, 8vw, 48px);
	}

	.sfl-company-location {
		padding-block: clamp(32px, 7vw, 42px);
	}

	.sfl-company-final {
		padding-block: clamp(44px, 7vw, 56px);
	}

	.sfl-company-membership-list {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 480px) {
	.sfl-company-snapshot__grid,
	.sfl-company-list--two,
	.sfl-company-country-list {
		grid-template-columns: 1fr;
	}

	.sfl-company-fact,
	.sfl-company-fact:nth-child(2),
	.sfl-company-fact:last-child {
		border: 0;
		border-bottom: 1px solid var(--wp--preset--color--border);
		min-height: 0;
	}

	.sfl-company-fact:last-child {
		border-bottom: 0;
	}

	.sfl-company-final__actions,
	.sfl-company-final__actions .wp-block-buttons,
	.sfl-company-final__actions .wp-block-button,
	.sfl-company-final__actions .wp-block-button__link {
		width: 100%;
	}
}

/* Product category pages v0.1 */
.sfl-product-category {
	box-sizing: border-box;
	margin-block: 0;
	margin-inline: 0 !important;
	max-width: none !important;
	width: 100%;
}

.sfl-product-category .alignwide {
	box-sizing: border-box;
	margin-inline: auto !important;
	max-width: var(--wp--style--global--wide-size, 1200px);
	width: 100%;
}

.sfl-product-category__section {
	box-sizing: border-box;
	padding: clamp(64px, 8vw, 112px) clamp(16px, 3vw, 24px);
}

.sfl-product-category__section > :first-child,
.sfl-product-category__heading > :first-child,
.sfl-product-category__final-copy > :first-child {
	margin-top: 0;
}

.sfl-product-category__section > :last-child,
.sfl-product-category__heading > :last-child,
.sfl-product-category__final-copy > :last-child {
	margin-bottom: 0;
}

.sfl-product-category__hero {
	padding-block: clamp(56px, 7vw, 96px);
}

.sfl-product-category__hero-columns {
	gap: clamp(40px, 6vw, 80px);
}

.sfl-product-category__hero-content h1 {
	letter-spacing: -0.035em;
	max-width: none;
	overflow-wrap: anywhere;
}

.sfl-product-category__eyebrow {
	color: var(--wp--preset--color--primary-slate);
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.11em;
	line-height: 1.4;
	text-transform: uppercase;
}

.sfl-product-category__intro {
	color: var(--wp--preset--color--muted);
	font-size: clamp(1.0625rem, 1.5vw, 1.25rem);
	line-height: 1.6;
}

.sfl-product-category__actions {
	gap: 12px;
	padding-top: 8px;
}

.sfl-product-category .wp-block-button__link {
	align-items: center;
	box-sizing: border-box;
	display: inline-flex;
	justify-content: center;
	min-height: 48px;
	padding: 12px 22px;
}

.sfl-product-category .is-style-outline > .wp-block-button__link {
	border-color: var(--wp--preset--color--primary-slate);
	color: var(--wp--preset--color--primary-slate);
}

.sfl-product-category .is-style-outline > .wp-block-button__link:hover {
	background: var(--wp--preset--color--slate-hover);
	border-color: var(--wp--preset--color--slate-hover);
	color: var(--wp--preset--color--white);
}

.sfl-product-category__placeholder {
	align-items: center;
	background: #F7F8F8;
	border: 1px dashed var(--wp--preset--color--border);
	box-sizing: border-box;
	color: var(--wp--preset--color--muted);
	display: flex;
	flex-direction: column;
	justify-content: center;
	overflow: hidden;
	padding: clamp(20px, 3vw, 40px);
	text-align: center;
	width: 100%;
}

.sfl-product-category__placeholder--hero {
	aspect-ratio: 4 / 5;
	min-height: 500px;
}

.sfl-product-category__placeholder--gallery {
	aspect-ratio: 4 / 5;
}

.sfl-product-category__placeholder p {
	margin-block: 4px;
	max-width: 18rem;
}

.sfl-product-category__placeholder-label {
	color: var(--wp--preset--color--primary-slate);
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 1.5;
}

.sfl-product-category__heading {
	margin-bottom: clamp(40px, 5vw, 64px);
}

.sfl-product-category__gallery {
	display: grid;
	gap: clamp(20px, 3vw, 36px);
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.sfl-product-category__development-columns {
	gap: 0;
}

.sfl-product-category__development-columns > .wp-block-column {
	border-left: 1px solid var(--wp--preset--color--border);
	box-sizing: border-box;
	min-width: 0;
	padding: 0 clamp(24px, 4vw, 48px);
}

.sfl-product-category__development-columns > .wp-block-column:first-child {
	padding-left: 0;
}

.sfl-product-category__development-columns > .wp-block-column:last-child {
	border-right: 1px solid var(--wp--preset--color--border);
}

.sfl-product-category__development-columns h3,
.sfl-product-category__requirements h3 {
	color: var(--wp--preset--color--primary-slate);
	font-size: 0.875rem;
	letter-spacing: 0.08em;
	margin-top: 0;
}

.sfl-product-category__list {
	list-style: none;
	margin: 24px 0 0;
	padding: 0;
}

.sfl-product-category__list li {
	border-top: 1px solid var(--wp--preset--color--border);
	box-sizing: border-box;
	padding: 10px 0;
}

.sfl-product-category__list li:last-child {
	border-bottom: 1px solid var(--wp--preset--color--border);
}

.sfl-product-category__requirements {
	border-top: 1px solid var(--wp--preset--color--border);
	margin-top: clamp(40px, 5vw, 64px) !important;
	padding-top: 28px;
}

.sfl-product-category__requirements p {
	max-width: 900px;
}

.sfl-product-category__note {
	color: var(--wp--preset--color--muted);
}

.sfl-product-category__related-list {
	display: grid;
	gap: 0 clamp(28px, 4vw, 56px);
	grid-template-columns: repeat(2, minmax(0, 1fr));
	list-style: none;
	margin-block: 0;
	padding: 0;
}

.sfl-product-category__related-list li {
	border-top: 1px solid var(--wp--preset--color--warm-border);
	min-width: 0;
}

.sfl-product-category__related-list li:nth-last-child(-n + 2) {
	border-bottom: 1px solid var(--wp--preset--color--warm-border);
}

.sfl-product-category__related-list li:hover,
.sfl-product-category__related-list li:focus-within {
	border-color: var(--wp--preset--color--primary-slate);
}

.sfl-product-category__related-list a {
	align-items: center;
	box-sizing: border-box;
	color: var(--wp--preset--color--charcoal);
	display: flex;
	font-family: var(--wp--preset--font-family--manrope);
	font-size: clamp(1.0625rem, 2vw, 1.25rem);
	font-weight: 600;
	min-height: 58px;
	overflow-wrap: anywhere;
	padding-block: 12px;
	text-decoration-color: var(--wp--preset--color--primary-slate);
	text-underline-offset: 4px;
}

.sfl-product-category__related-list a:hover,
.sfl-product-category__related-list a:focus-visible {
	text-decoration: underline;
}

.sfl-product-category__final {
	background-color: #E9EBED !important;
	border-bottom: 1px solid var(--wp--preset--color--border);
	padding-block: clamp(72px, 7vw, 96px);
}

.sfl-product-category__final h2 {
	color: var(--wp--preset--color--slate-hover) !important;
}

.sfl-product-category__final-inner {
	gap: clamp(32px, 6vw, 80px);
}

.sfl-product-category__final-copy {
	flex: 1 1 38rem;
}

.sfl-product-category__final-actions {
	flex: 0 1 19rem;
}

.sfl-product-category__final-actions .wp-block-buttons {
	margin-bottom: 18px;
}

.sfl-product-category__final-link a {
	color: var(--wp--preset--color--primary-slate) !important;
	text-decoration: underline;
	text-underline-offset: 4px;
}

.sfl-home-final__copy p,
.sfl-company-final__copy p,
.sfl-capabilities-final__copy p,
.sfl-products-final__copy p,
.sfl-quality-final__copy p,
.sfl-product-category__final-copy p {
	color: #5B666D !important;
}

.sfl-home-final,
.sfl-company-final,
.sfl-capabilities-final,
.sfl-products-final,
.sfl-quality-final,
.sfl-product-category__final {
	border-top: 1px solid var(--wp--preset--color--border);
	margin-block-start: 0 !important;
}

.sfl-home-final .wp-block-button__link,
.sfl-company-final .wp-block-button__link,
.sfl-capabilities-final .wp-block-button__link,
.sfl-products-final .wp-block-button__link,
.sfl-quality-final .wp-block-button__link,
.sfl-product-category__final .wp-block-button__link {
	background: var(--wp--preset--color--primary-slate) !important;
	border-color: var(--wp--preset--color--primary-slate) !important;
	border-style: solid;
	border-width: 1px;
	color: var(--wp--preset--color--white) !important;
}

.sfl-home-final .wp-block-button__link:hover,
.sfl-company-final .wp-block-button__link:hover,
.sfl-capabilities-final .wp-block-button__link:hover,
.sfl-products-final .wp-block-button__link:hover,
.sfl-quality-final .wp-block-button__link:hover,
.sfl-product-category__final .wp-block-button__link:hover {
	background: var(--wp--preset--color--slate-hover) !important;
	border-color: var(--wp--preset--color--slate-hover) !important;
}

#main-content:has(.sfl-home-final, .sfl-company-final, .sfl-capabilities-final, .sfl-products-final, .sfl-quality-final, .sfl-product-category__final) + footer.wp-block-template-part {
	margin-block-start: 0;
}

@media (max-width: 1024px) {
	.sfl-product-category__hero-columns {
		gap: 40px;
	}

	.sfl-product-category__gallery {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.sfl-product-category__hero-columns,
	.sfl-product-category__development-columns {
		flex-direction: column;
	}

	.sfl-product-category__hero-columns > .wp-block-column,
	.sfl-product-category__development-columns > .wp-block-column {
		flex-basis: auto !important;
		width: 100%;
	}

	.sfl-product-category__placeholder--hero {
		aspect-ratio: 4 / 3;
		min-height: 340px;
	}

	.sfl-product-category__development-columns > .wp-block-column,
	.sfl-product-category__development-columns > .wp-block-column:first-child,
	.sfl-product-category__development-columns > .wp-block-column:last-child {
		border: 0;
		border-top: 1px solid var(--wp--preset--color--border);
		padding: 28px 0;
	}

	.sfl-product-category__development-columns > .wp-block-column:last-child {
		border-bottom: 1px solid var(--wp--preset--color--border);
	}
}

@media (max-width: 480px) {
	.sfl-product-category__gallery,
	.sfl-product-category__related-list {
		grid-template-columns: 1fr;
	}

	.sfl-product-category__related-list li:nth-last-child(-n + 2) {
		border-bottom: 0;
	}

	.sfl-product-category__related-list li:last-child {
		border-bottom: 1px solid var(--wp--preset--color--warm-border);
	}

	.sfl-product-category__actions,
	.sfl-product-category__actions .wp-block-button,
	.sfl-product-category__actions .wp-block-button__link,
	.sfl-product-category__requirements .wp-block-buttons,
	.sfl-product-category__requirements .wp-block-button,
	.sfl-product-category__requirements .wp-block-button__link,
	.sfl-product-category__final-actions,
	.sfl-product-category__final-actions .wp-block-buttons,
	.sfl-product-category__final-actions .wp-block-button,
	.sfl-product-category__final-actions .wp-block-button__link {
		width: 100%;
	}
}

@media (min-width: 460px) and (max-width: 480px) {
        .sfl-product-category__gallery {
                grid-template-columns: repeat(2, minmax(0, 1fr));
        }
}
/* Product category refinement v0.2 — primary-page visual alignment. */
.sfl-product-category > .sfl-product-category__section {
	margin-block-start: 0 !important;
}

.sfl-product-category__section {
	padding-block: clamp(40px, 4.5vw, 56px);
}

.sfl-product-category h2 {
	font-size: clamp(1.75rem, 2.3vw, 2rem) !important;
	letter-spacing: -0.025em;
	line-height: 1.2;
	text-wrap: balance;
}

.sfl-product-category__hero {
	padding-block: clamp(40px, 4.5vw, 60px);
}

.sfl-product-category__hero-columns {
	gap: clamp(36px, 4vw, 52px);
}

.sfl-product-category__hero-content h1 {
	font-size: clamp(2rem, 2.8vw, 2.5rem) !important;
	letter-spacing: -0.03em;
	line-height: 1.12;
	max-width: 32ch;
	text-wrap: balance;
}

.sfl-product-category__hero-content .sfl-product-category__intro {
	max-width: 44rem;
}

.sfl-product-category__placeholder--hero {
	aspect-ratio: 4 / 3;
	min-height: 360px;
}

.sfl-product-category__heading {
	margin-bottom: clamp(22px, 2.5vw, 32px);
}

.sfl-product-category__heading h2,
.sfl-product-category__heading .sfl-product-category__intro {
	max-width: 58rem;
}

.sfl-product-category__gallery-section,
.sfl-product-category__development,
.sfl-product-category__related {
	padding-block: clamp(40px, 4vw, 52px);
}

.sfl-product-category__gallery {
	gap: clamp(20px, 2.5vw, 32px);
}

.sfl-product-category__development-columns > .wp-block-column {
	padding-inline: clamp(24px, 3vw, 36px);
}

.sfl-product-category__development-columns > .wp-block-column:first-child {
	border-left: 0;
	padding-left: 0;
}

.sfl-product-category__development-columns > .wp-block-column:last-child {
	border-right: 0;
	padding-right: 0;
}

.sfl-product-category__development-columns h3 {
	margin-bottom: 16px;
}

.sfl-product-category__list {
	margin-top: 16px;
}

.sfl-product-category__list li {
	padding-block: 8px;
}

.sfl-product-category__list li:first-child {
	border-top: 0;
}

.sfl-product-category__list li:last-child {
	border-bottom: 0;
}

.sfl-product-category__requirements {
	margin-top: 24px !important;
	padding-top: 20px;
}

.sfl-product-category__final {
	padding-block: clamp(44px, 5vw, 64px);
}

.sfl-product-category__final-inner {
	gap: clamp(28px, 4vw, 52px);
}

@media (max-width: 1024px) {
	.sfl-product-category__section {
		padding-block: clamp(40px, 5vw, 52px);
	}

	.sfl-product-category h2 {
		font-size: clamp(1.625rem, 2.8vw, 2rem) !important;
	}

	.sfl-product-category__hero {
		padding-block: clamp(40px, 5vw, 56px);
	}

	.sfl-product-category__hero-columns {
		gap: clamp(32px, 4vw, 40px);
	}

	.sfl-product-category__hero-content h1 {
		font-size: clamp(2rem, 3.5vw, 2.5rem) !important;
		line-height: 1.12;
		max-width: 30ch;
	}

	.sfl-product-category__placeholder--hero {
		aspect-ratio: 4 / 3;
		margin-inline: auto;
		max-width: 36rem;
		min-height: 0;
		width: 100%;
	}

	.sfl-product-category__heading {
		margin-bottom: clamp(22px, 3vw, 32px);
	}

	.sfl-product-category__gallery-section,
	.sfl-product-category__development,
	.sfl-product-category__related {
		padding-block: clamp(40px, 5vw, 52px);
	}

	.sfl-product-category__final {
		padding-block: clamp(44px, 5vw, 56px);
	}
}

@media (max-width: 767px) {
	.sfl-product-category__section {
		padding-block: clamp(32px, 7vw, 42px);
	}

	.sfl-product-category h2 {
		font-size: clamp(1.5rem, 6vw, 1.75rem) !important;
	}

	.sfl-product-category__hero {
		padding-block: clamp(32px, 7vw, 40px);
	}

	.sfl-product-category__hero-content h1 {
		font-size: clamp(1.875rem, 8vw, 2.25rem) !important;
		max-width: 20ch;
	}

	.sfl-product-category__placeholder--hero {
		aspect-ratio: 4 / 3;
		max-width: none;
		min-height: 0;
	}

	.sfl-product-category__heading {
		margin-bottom: 24px;
	}

	.sfl-product-category__gallery-section,
	.sfl-product-category__development,
	.sfl-product-category__related {
		padding-block: clamp(32px, 7vw, 42px);
	}

	.sfl-product-category__development-columns > .wp-block-column,
	.sfl-product-category__development-columns > .wp-block-column:first-child,
	.sfl-product-category__development-columns > .wp-block-column:last-child {
		padding-block: 24px;
	}

	.sfl-product-category__development-columns > .wp-block-column:first-child {
		border-top: 0;
	}

	.sfl-product-category__development-columns > .wp-block-column:last-child {
		border-bottom: 0;
	}

	.sfl-product-category__requirements {
		margin-top: 20px !important;
		padding-top: 18px;
	}

	.sfl-product-category__final {
		padding-block: clamp(44px, 7vw, 56px);
	}
}
