:root{--lt-teal:var(--wp--preset--color--primary, #1a7a6d);--lt-teal-dark:var(--wp--preset--color--primary-hover, #145e54);--lt-coral:var(--wp--preset--color--secondary, #e8725a);--lt-gold:var(--wp--preset--color--accent, #f0c05a);--lt-cream:var(--wp--preset--color--base, #faf7f2);--lt-dark:#1a1a2e;--lt-hair:rgba(45, 52, 54, 0.1);--lt-glass:rgba(255, 255, 255, 0.7);--lt-fraunces:var(--wp--preset--font-family--heading, 'Fraunces', serif);--foundry-blob-color-1:var(--lt-teal);--foundry-blob-color-2:var(--lt-coral);--foundry-blob-color-3:var(--lt-gold);--foundry-glow-color:var(--lt-teal);--foundry-float-distance:12px;--foundry-reveal-distance:26px;--foundry-reveal-stagger:80ms}.foundry-header{position:sticky;top:0;z-index:50;background:rgb(250 247 242 / .85);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--lt-hair)}.foundry-header .lt-brand-name{font-family:var(--lt-fraunces);font-weight:700;font-size:1.5rem;color:var(--wp--preset--color--contrast,#2d3436);line-height:1}.foundry-header .lt-brand-name a{color:inherit;text-decoration:none}.foundry-header .lt-header__phone{color:var(--lt-teal);font-weight:600;white-space:nowrap}.foundry-header .lt-header__phone a{color:inherit;text-decoration:none}.foundry-header .wp-block-button__link{background:var(--lt-coral);color:#fff;border-radius:9999px;font-weight:600}.foundry-header .wp-block-button__link:hover{background:color-mix(in srgb,var(--lt-coral) 90%,#000)}@media (max-width:60rem){.foundry-header .lt-header__phone{display:none}}[class*="foundry-"] :is(p,li) a:not(.wp-element-button):not(.wp-block-button__link){color:var(--lt-teal);text-decoration:none}[class*="foundry-"] :is(p,li) a:not(.wp-element-button):not(.wp-block-button__link):not(.wp-block-navigation-item__content):hover{text-decoration:underline}.foundry-hero__btn,.foundry-cta__btn{border-radius:9999px;padding:.875em 2em;gap:.5rem;font-weight:600;transition:transform 0.25s ease,box-shadow 0.25s ease,background-color 0.25s ease}.foundry-hero__btn--secondary,.foundry-cta__btn--secondary,.foundry-hero__btn--primary,.foundry-cta__btn--primary{background:var(--lt-coral);border-color:var(--lt-coral);color:#fff}.foundry-hero__btn--secondary:hover,.foundry-cta__btn--secondary:hover,.foundry-hero__btn--primary:hover,.foundry-cta__btn--primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgb(232 114 90 / .3);background:color-mix(in srgb,var(--lt-coral) 90%,#000);color:#fff}.foundry-hero__btn--outline{background:#fff0;border:1px solid var(--lt-teal);color:var(--lt-teal)}.foundry-hero__btn--outline:hover{background:var(--lt-teal);color:#fff;transform:translateY(-2px)}.foundry-hero__title{line-height:1.05;letter-spacing:-.02em;font-weight:500}.foundry-hero__title-text{font-weight:500}.foundry-card-grid__title,.foundry-portfolio__title,.foundry-process-steps__title,.foundry-faq__title,.foundry-contact__title,.foundry-stats__title,.foundry-feature-rows__title,.foundry-cta__title{font-size:clamp(2rem, 4vw + 1rem, 3.5rem);font-weight:500}:is(.foundry-hero,.foundry-card-grid,.foundry-portfolio,.foundry-process-steps,.foundry-faq,.foundry-contact,.foundry-stats,.foundry-cta){padding-block:clamp(5rem, 9vw, 8rem)}.foundry-hero,.foundry-process-steps,.foundry-faq,.foundry-contact,.foundry-stats{background:var(--lt-cream)}.foundry-card-grid:not(.lt-trust):not(.lt-area):not(.lt-dark-cards){background:var(--lt-cream)}.foundry-portfolio{background:var(--lt-cream)}.foundry-card-grid:not(.lt-trust):not(.lt-area):not(.lt-dark-cards) .foundry-card-grid__card,.foundry-portfolio__item{background:var(--lt-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--lt-hair);border-radius:1.75rem;padding:2.5rem;box-shadow:0 10px 30px rgb(0 0 0 / .03);transition:transform 0.3s ease,box-shadow 0.3s ease}.foundry-card-grid:not(.lt-trust):not(.lt-area) .foundry-card-grid__card:hover,.foundry-portfolio__item:hover{transform:translateY(-4px);box-shadow:0 20px 40px rgb(0 0 0 / .07)}.foundry-card-grid__card-title{font-size:1.5rem}.foundry-card-grid__card-link{color:var(--lt-teal);font-weight:600}.foundry-hero__aside{align-self:center}.foundry-hero__accent{color:var(--lt-teal);font-style:italic;font-weight:300;padding-right:.25rem}.foundry-hero__eyebrow--badge{text-transform:none;letter-spacing:normal;font-weight:500}.foundry-hero__stat{background:var(--lt-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--lt-hair);border-radius:2rem;padding:3.5rem 2.5rem;box-shadow:0 20px 50px rgb(0 0 0 / .06);text-align:center}.foundry-hero__stat-value{display:block;font-family:var(--lt-fraunces);font-size:clamp(2.25rem, 4.5vw, 3.25rem);color:var(--lt-teal);line-height:1.1}.foundry-hero__stat-label{display:block;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--lt-hair);font-size:.9375rem;color:#6b6f70}.foundry-hero__contact{background:var(--lt-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--lt-hair);border-radius:2rem;padding:3.25rem 2.5rem;box-shadow:0 20px 50px rgb(0 0 0 / .06);text-align:center}.foundry-hero__contact-title{margin:0 0 1rem;font-size:.8125rem;letter-spacing:.08em;text-transform:uppercase;color:#6b6f70}.foundry-hero__contact-phone{display:block;font-family:var(--lt-fraunces);font-size:clamp(2.25rem, 4.5vw, 3.25rem);color:var(--lt-teal);line-height:1.1;text-decoration:none}.foundry-hero__contact-area{margin:1rem 0 0;font-size:.9375rem;color:#6b6f70}.foundry-hero__contact-hours{margin:1rem 0 0;padding-top:1rem;border-top:1px solid var(--lt-hair);font-size:.875rem;color:#6b6f70}.lt-split{padding-block:clamp(3.5rem, 7vw, 6rem)}.lt-split__cols{gap:clamp(2rem, 5vw, 4rem);align-items:center}.lt-split .wp-block-heading{font-family:var(--lt-fraunces);font-size:clamp(1.9rem, 3.5vw, 2.6rem);line-height:1.12;color:var(--wp--preset--color--contrast,#2d3436);margin:0 0 1.25rem}.lt-split p{color:#55595b;line-height:1.7}.lt-split p a{color:var(--lt-teal)}.lt-checklist{list-style:none;margin:1.75rem 0 0;padding:0;display:grid;gap:.85rem}.lt-checklist li{position:relative;padding-left:2.1rem;color:var(--wp--preset--color--contrast,#2d3436);font-weight:500}.lt-checklist li::before{content:"";position:absolute;left:0;top:.15em;width:1.35rem;height:1.35rem;border-radius:999px;background:var(--lt-teal) url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center / .85rem no-repeat}.lt-infocard{background:#fff;border:1px solid var(--lt-hair);border-radius:1.75rem;padding:clamp(2.5rem, 4vw, 3.5rem) 2rem;text-align:center;box-shadow:0 24px 60px -30px rgb(20 40 40 / .35)}.lt-infocard__value{font-family:var(--lt-fraunces);font-size:clamp(4rem, 9vw, 6rem);line-height:.9;font-weight:600;color:var(--lt-teal);margin:0}.lt-infocard__label{text-transform:uppercase;letter-spacing:.1em;font-size:.75rem;font-weight:700;color:#6b6f70;margin:.75rem auto 0;max-width:24ch}.lt-infocard__headline{font-family:var(--lt-fraunces);font-size:1.4rem;color:var(--wp--preset--color--contrast,#2d3436);margin:1.25rem 0 0}.lt-infocard__note{color:#6b6f70;font-size:.9375rem;margin:.4rem 0 0}.lt-services .foundry-card-grid__card::before,.lt-trust .foundry-card-grid__card::before{content:"";display:block;width:3rem;height:3rem;border-radius:.75rem;background:rgb(26 122 109 / .12);margin-bottom:1.5rem;background-image:var(--lt-ico,none);background-repeat:no-repeat;background-position:center;background-size:1.6rem 1.6rem}.lt-services .foundry-card-grid__card:nth-child(1){--lt-ico:url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231a7a6d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='16 18 22 12 16 6'/%3E%3Cpolyline points='8 6 2 12 8 18'/%3E%3C/svg%3E"); }
.lt-services .foundry-card-grid__card:nth-child(2) { --lt-ico: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231a7a6d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 17l6-6-6-6'/%3E%3Cline x1='12' y1='19' x2='20' y2='19'/%3E%3C/svg%3E"); }
.lt-services .foundry-card-grid__card:nth-child(3) { --lt-ico: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231a7a6d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolygon points='13 2 3 14 12 14 11 22 21 10 12 10 13 2'/%3E%3C/svg%3E"); }
.lt-services .foundry-card-grid__card:nth-child(4) { --lt-ico: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231a7a6d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z'/%3E%3C/svg%3E"); }

/* ── 8. Trust band — white strip, flat left-aligned icon+label (no card chrome) ── */
.lt-trust {
	background: var(--wp--preset--color--surface, #fff);
	border-block: 1px solid var(--lt-hair);
	padding-block: 2.5rem !important;
}
.lt-trust .foundry-card-grid__card {
	background: none;
	border: none;
	box-shadow: none;
	padding: 0;
	border-radius: 0;
	text-align: left;
}
.lt-trust .foundry-card-grid__card::before {
	width: 2.25rem;
	height: 2.25rem;
	border-radius: 0.5rem;
	margin-bottom: 1rem;
	background-size: 1.25rem 1.25rem;
}
.lt-trust .foundry-card-grid__card:nth-child(1) { --lt-ico: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231a7a6d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0118 0z'/%3E%3Ccircle cx='12' cy='10' r='3'/%3E%3C/svg%3E"); }
.lt-trust .foundry-card-grid__card:nth-child(2) { --lt-ico: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231a7a6d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 21v-2a4 4 0 00-4-4H8a4 4 0 00-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E"); }
.lt-trust .foundry-card-grid__card:nth-child(3) { --lt-ico: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231a7a6d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='3' width='20' height='14' rx='2'/%3E%3Cline x1='8' y1='21' x2='16' y2='21'/%3E%3Cline x1='12' y1='17' x2='12' y2='21'/%3E%3C/svg%3E"); }
.lt-trust .foundry-card-grid__card:nth-child(4) { --lt-ico: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231a7a6d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M13 2L3 14h9l-1 8 10-12h-9l1-8z'/%3E%3C/svg%3E"); }
/* Trust items are now text-only (no card title/H3) — the proof line is __card-text
   ("Label — note"). Style it as the primary readable line, not the old grey caption. */
.lt-trust .foundry-card-grid__card-text { font-size: 0.95rem; line-height: 1.5; color: #3a3f41; margin: 0; }
.lt-trust .foundry-card-grid__head { display: none; } /* trust strip needs no section header */

/* ── 9. Portfolio — gradient thumbnails + category chip + glass card ── */
.lt-portfolio .foundry-card-grid__card { padding: 0; overflow: hidden; }
.lt-portfolio .foundry-card-grid__card::before {
	content: "";
	display: block;
	width: 100%;
	height: 170px;
	margin: 0 0 1.5rem;
	border-radius: 0;
	background: linear-gradient(135deg, var(--lt-teal), var(--lt-dark));
}
.lt-portfolio .foundry-card-grid__card:nth-child(2)::before {
	background: linear-gradient(135deg, var(--lt-coral), var(--lt-gold));
}
.lt-portfolio .foundry-card-grid__card:nth-child(3)::before {
	background: repeating-linear-gradient(45deg, var(--lt-cream), var(--lt-cream) 12px, #f3ede3 12px, #f3ede3 24px);
}
.lt-portfolio .foundry-card-grid__card-title,
.lt-portfolio .foundry-card-grid__card-text,
.lt-portfolio .foundry-card-grid__card-link { padding-inline: 2rem; }
.lt-portfolio .foundry-card-grid__card-link { display: inline-block; padding-bottom: 2rem; }

/* ── 10. Process — now the block's `layout=timeline` (zig-zag rail + numbered
   node circles), a Phase-2 block feature. The old interim ghosted-number/left-
   rule override was REMOVED so the block/theme timeline renders; brand colour
   comes through the tokens (nodes/rail read primary/accent). ── */

/* ── 11. "Serving the Southern Tier" — dark band, glass pill chips, radial glows ── */
.lt-area {
	background: var(--lt-dark);
	position: relative;
	overflow: hidden;
	--wp--preset--color--base: var(--lt-dark);
	--wp--preset--color--contrast: #fff;
}
.lt-area::before,
.lt-area::after {
	content: "";
	position: absolute;
	width: 55vw;
	height: 55vw;
	border-radius: 50%;
	pointer-events: none;
}
.lt-area::before { top: -25%; right: -12%; background: radial-gradient(circle, rgba(26, 122, 109, 0.22) 0%, transparent 70%); }
.lt-area::after { bottom: -25%; left: -12%; background: radial-gradient(circle, rgba(232, 114, 90, 0.15) 0%, transparent 70%); }
.lt-area > * { position: relative; z-index: 1; }
.lt-area .foundry-card-grid__title { color: #fff; text-align: center; }
.lt-area .foundry-card-grid__intro { color: rgba(255, 255, 255, 0.8); text-align: center; max-width: 60ch; margin-inline: auto; }
.lt-area .foundry-card-grid__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.85rem;
	margin-top: 2.5rem;
}
.lt-area .foundry-card-grid__card {
	background: rgba(255, 255, 255, 0.1);
	-webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: 9999px;
	padding: 0.7rem 1.4rem;
	box-shadow: none;
	transition: background 0.25s ease;
}
.lt-area .foundry-card-grid__card::before { content: none; }
.lt-area .foundry-card-grid__card:hover { background: rgba(255, 255, 255, 0.18); transform: none; }
/* City chips now ride in __card-text (title empty → no H3). Pill the text; the
   (empty) title is inert. */
.lt-area .foundry-card-grid__card-title,
.lt-area .foundry-card-grid__card-text {
	font-family: var(--wp--preset--font-family--body, 'DM Sans', sans-serif);
	font-size: 0.95rem;
	font-weight: 500;
	color: #fff;
	margin: 0;
}

/* ── 11b. Dark band WITH full cards (home "ecosystem") — dark surface + dark glass
   cards that keep their text/links, distinct from the .lt-area pill chips. ── */
.lt-dark-cards {
	background: var(--lt-dark);
	position: relative;
	overflow: hidden;
	--wp--preset--color--base: var(--lt-dark);
	--wp--preset--color--contrast: #fff;
}
.lt-dark-cards::before {
	content: "";
	position: absolute;
	top: -25%;
	right: -12%;
	width: 55vw;
	height: 55vw;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(26, 122, 109, 0.2) 0%, transparent 70%);
	pointer-events: none;
}
.lt-dark-cards > * { position: relative; z-index: 1; }
.lt-dark-cards .foundry-card-grid__title { color: #fff; }
.lt-dark-cards .foundry-card-grid__intro { color: rgba(255, 255, 255, 0.8); }
.lt-dark-cards .foundry-card-grid__card {
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 1.5rem;
	box-shadow: none;
}
.lt-dark-cards .foundry-card-grid__card:hover { background: rgba(255, 255, 255, 0.08); }
.lt-dark-cards .foundry-card-grid__card-title { color: #fff; }
.lt-dark-cards .foundry-card-grid__card-title a { color: #fff; }
.lt-dark-cards .foundry-card-grid__card-text { color: rgba(255, 255, 255, 0.75); }
.lt-dark-cards .foundry-card-grid__card-link { color: var(--lt-gold); }

/* ── 12. FAQ — rounded cards, teal-on-open, +/− marker ── */
.foundry-faq__item {
	border: 1px solid var(--lt-hair);
	border-radius: 1rem;
	background: #fff;
	margin-bottom: 0.85rem;
}
.foundry-faq__item[open] { border-color: var(--lt-teal); }
.foundry-faq__marker::before { content: "+"; color: var(--lt-teal); font-size: 1.5rem; line-height: 1; }
.foundry-faq__item[open] .foundry-faq__marker::before { content: "\2212"; }
.foundry-faq__marker > * { display: none; } /* hide any block-default glyph */

/* ── 13. Quote — white form card + big teal Fraunces phone ── */
.foundry-contact__form {
	background: #fff;
	border-radius: 2rem;
	padding: clamp(1.75rem, 4vw, 3rem);
	box-shadow: 0 20px 45px rgba(0, 0, 0, 0.05);
	border: 1px solid var(--lt-hair);
}
.foundry-contact__detail--phone a {
	font-family: var(--lt-fraunces);
	font-size: clamp(1.75rem, 3.5vw, 2.75rem);
	color: var(--lt-teal);
	text-decoration: none;
}

/* ── 14. Footer — cream, top hairline ── */
/* ── 14. Footer — its own tier, not a continuation of the (cream) body. White
   surface + a visible top rule separates it from the cream CTA section above;
   the copyright sits below its own hairline divider; nav gets breathing room +
   teal hover. (Legacy reads as a distinct footer band; staging was flush cream.) ── */
.foundry-footer {
	background: #fff;
	border-top: 1px solid rgba(45, 52, 54, 0.14);
}
.foundry-footer .wp-block-navigation { gap: 1.25rem 1.5rem; }
.foundry-footer .wp-block-navigation a { color: #6b6f70; font-weight: 500; text-decoration: none; }
.foundry-footer .wp-block-navigation a:hover { color: var(--lt-teal); }
.foundry-footer .lt-brand-name,
.foundry-footer .wp-block-site-title,
.foundry-footer .wp-block-site-title a { font-family: var(--lt-fraunces); font-weight: 700; color: var(--wp--preset--color--contrast, #2d3436); text-decoration: none; }
/* Copyright divider — DIRECT-CHILD `> p` only. The footer site-title renders as a
   <p class="wp-block-site-title"> (site-title level:0), nested inside the brand
   flex group, so a bare `.foundry-footer p` wrongly drew this hairline + padding
   ABOVE the wordmark. `> p` targets just the copyright line (a direct child). */
.foundry-footer > p {
	border-top: 1px solid var(--lt-hair);
	padding-top: 1.5rem;
	margin-top: 0.5rem;
	color: #6b6f70;
}
.foundry-footer > p a { color: var(--lt-teal); text-decoration: none; }

/* ════════════════════════════════════════════════════════════════════════
   Gravity Forms — rebrand the orbital theme to LT teal (GF ships blue,
   #204ce5). GF drives colours off --gf-color-* custom properties set inline on
   a high-specificity id selector, so we remap the properties with !important —
   the documented re-theme path. Whole form on-brand; scoped to the contact
   section. Teal #1a7a6d / #145e54 / #2a9d8c.
   ════════════════════════════════════════════════════════════════════════ */
.foundry-contact .gform_wrapper.gform-theme,
.foundry-contact .gform_wrapper {
	--gf-color-primary: #1a7a6d !important;
	--gf-color-primary-rgb: 26, 122, 109 !important;
	--gf-color-primary-contrast: #ffffff !important;
	--gf-color-primary-contrast-rgb: 255, 255, 255 !important;
	--gf-color-primary-darker: #145e54 !important;
	--gf-color-primary-lighter: #2a9d8c !important;
	--gf-color-in-ctrl-primary: #1a7a6d !important;
	--gf-color-in-ctrl-primary-rgb: 26, 122, 109 !important;
	--gf-color-in-ctrl-primary-contrast: #ffffff !important;
	--gf-color-in-ctrl-primary-contrast-rgb: 255, 255, 255 !important;
}
.foundry-contact .gform_wrapper .gform_footer .gform_button,
.foundry-contact .gform_wrapper .gform_button {
	border-radius: 999px;
	font-weight: 600;
	letter-spacing: 0.01em;
	padding: 0.85em 2.2em;
}

/* ════════════════════════════════════════════════════════════════════════
   PHASE-2 BLOCK SKINS — brand tuning for the block variants that REPLACED the
   interim motion bolt-ons. The Foundry theme (0.2.0) now owns ALL motion
   (float / pulse / shimmer / glow / blob / reveal) via the `--foundry-*` tokens
   set in :root + opt-in classes the blocks emit. Nothing here re-implements
   motion — it only brand-skins the new variants (score-meter, cta card,
   portfolio-grid, feature-rows) and the static service-card corner accents.
   Hero drifting blobs = theme CSS + markup injected by brand.js.
   See handoff: foundry/docs/phase2-motion-and-blocks-reference.md.
   ════════════════════════════════════════════════════════════════════════ */

/* ── #2 Hero blobs: subtler than the theme default (0.35 opacity / 42vmax reads
   as a heavy coral/gold wash on cream). Legacy's blobs are small + faint. ── */
.foundry-blob {
	opacity: 0.13;
	width: 30rem;
	filter: blur(70px);
}

/* ── Hero score-meter (aside_type=meter) → frosted glass, matching the legacy
   floating performance card (block ships a solid `base` surface). Value/fill/
   track stay token-driven (teal / teal→gold); block + theme float & fill it. ── */
.foundry-hero__meter {
	background: var(--lt-glass) !important;
	-webkit-backdrop-filter: blur(16px);
	backdrop-filter: blur(16px);
	border: 1px solid rgba(255, 255, 255, 0.6) !important;
	border-radius: 2rem !important;
	box-shadow: 0 20px 50px rgba(0, 0, 0, 0.06) !important;
}

/* ── Service-card organic corner blob accents (legacy decoration; static).
   §5's `background:` shorthand resets background-image at higher specificity,
   so this overrides just that longhand. ── */
.lt-services .foundry-card-grid__card {
	background-image: radial-gradient(circle at 100% 0%, rgba(26, 122, 109, 0.16), transparent 42%) !important;
}
.lt-services .foundry-card-grid__card:nth-child(2) {
	background-image: radial-gradient(circle at 100% 0%, rgba(232, 114, 90, 0.16), transparent 42%) !important;
}
.lt-services .foundry-card-grid__card:nth-child(3) {
	background-image: radial-gradient(circle at 100% 0%, rgba(240, 192, 90, 0.20), transparent 42%) !important;
}
.lt-services .foundry-card-grid__card:nth-child(4) {
	background-image: radial-gradient(circle at 100% 0%, rgba(26, 122, 109, 0.12), transparent 42%) !important;
}

/* ── CTA card (cta style=card, tone=surface) — the block floats a tone-filled
   card on a transparent stage (glow behind + shimmer + hover-lift on it). LT
   makes the section cream and the card white so it reads as floating; the
   primary button is already coral (§2). ── */
.foundry-cta--card { background: var(--lt-cream); }
.foundry-cta--card .foundry-cta__inner {
	background: #fff;
	border: 1px solid var(--lt-hair);
	border-radius: 2rem;
}
.foundry-cta--card .foundry-cta__title { color: var(--wp--preset--color--contrast, #2d3436); }
.foundry-cta--card .foundry-cta__text  { color: #6b6f70; }
/* Coral primary CTA button — the surface tone defaults it to teal at higher
   specificity; LT wants the coral action, matching the hero + legacy. */
.foundry-cta--surface .foundry-cta__btn--primary {
	background: var(--lt-coral);
	border-color: var(--lt-coral);
	color: #fff;
}
.foundry-cta--surface .foundry-cta__btn--primary:hover {
	background: color-mix(in srgb, var(--lt-coral) 90%, #000);
	border-color: color-mix(in srgb, var(--lt-coral) 90%, #000);
}

/* ── Portfolio-grid block (page 10, enriched: gradient-image thumb + status
   badge + hover-tag overlay + tech list + dashed placeholder). Glass card
   chrome on PROJECT cards only — the placeholder keeps the block's transparent
   dashed-outline tile (just tinted teal). ── */
.foundry-portfolio__item--project {
	background: var(--lt-glass);
	-webkit-backdrop-filter: blur(12px);
	backdrop-filter: blur(12px);
	border: 1px solid var(--lt-hair);
	border-radius: 1.75rem;
	overflow: hidden;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.03);
}
.foundry-portfolio__status { background: rgba(255, 255, 255, 0.92); color: var(--lt-teal); }
.foundry-portfolio__cat { color: var(--lt-teal); }
.foundry-portfolio__item--placeholder { border-color: rgba(26, 122, 109, 0.4); }
.foundry-portfolio__placeholder-cta { background: var(--lt-coral); }
.foundry-portfolio__placeholder-cta:hover { background: color-mix(in srgb, var(--lt-coral) 90%, #000); }

/* ── Feature-rows (Services detail) — as of Foundry 0.4.9 (#6) each row floats
   its highlight stat as a card in the media slot (media_type=stat), so rows keep
   the native alternating 2-col grid. The old media-less collapse + 2-up checklist
   hack is retired; the stat-card skin lives in the PARITY PASS · SERVICES section
   below. ── */

/* ════════════════════════════════════════════════════════════════════════
   PARITY PASS 1 (block-decomposition workflow, 2026-07-02) — per-block deltas
   from parallel design agents diffing each staging block vs legacy.luckytyke.
   Additive, block-scoped, token-driven. Companion build-side changes: home
   services columns 4→2 + eyebrow cleared, stats row removed. NOTE: the four
   block-changes once backlogged here — hero meter icon/header/footer enrich,
   card-grid native badge + featured, process-steps per-step node icon, cta card
   center-by-default — SHIPPED in Foundry 0.4.8 and are now consumed via native
   fields (see the retirement notes below at .foundry-card-grid__badge / __card--
   featured and the CTA-card centering block). meter_icon is the sole not-yet-set
   piece (needs an uploaded rocket asset — accepted minor deviation).
   ════════════════════════════════════════════════════════════════════════ */

/* ══ PARITY PASS · HERO ═══════════════════════════════════════════════════
   Additive deltas only — appended AFTER the base hero rules so equal-specificity
   selectors win in the cascade. Token-driven; no new !important. Scoped to hero. */

/* Airier hero: legacy runs ~15% more vertical breathing room than the shared
   band rhythm (base = clamp(5rem, 9vw, 8rem)). Bump padding-block on hero only. */
.foundry-hero { padding-block: clamp(5.75rem, 10.5vw, 9.25rem); }

/* Open the H1 leading a touch — legacy sets its three title lines with more air
   than the shared 1.05 (weight already 500; overriding line-height only). */
.foundry-hero__title { line-height: 1.12; }

/* Badge pill → warm cream (legacy). The translucent default tints with whatever
   blob sits behind it (reads sage over the top-left teal wash); pin a near-opaque
   gold-cream so it stays warm regardless of the blob position. */
.foundry-hero__eyebrow--badge {
	background: color-mix(in srgb, var(--lt-gold) 16%, #fffdf8);
	border-color: color-mix(in srgb, var(--lt-gold) 30%, transparent);
}

/* Score-meter proportion → legacy floats a compact, portrait-ish card (~350px),
   not a full-width landscape bar. Cap + center it in the aside column. Once the
   block-change lands the header/footer rows, this width reads as a proper card. */
.foundry-hero__meter {
	max-width: 22rem;
	margin-inline: auto;
	padding: 2rem 1.75rem;
}

/* ── Parity pass · #2 Services (Built for Scale) — 2-up airier cards + legacy's
   per-card colored icon tiles (teal / coral / gold / teal, matching the corner
   blobs). Pairs with the build-side columns 4→2 change. Scoped to .lt-services;
   §5 glass-card + §7 icon-tile + corner-blob rules stay intact. ── */

/* Airier proportions for the wider 2-up layout (legacy ≈ 2×2, generous padding). */
.lt-services .foundry-card-grid__list { gap: clamp(1.75rem, 3vw, 2.5rem); }
.lt-services .foundry-card-grid__card { padding: clamp(2.5rem, 3vw, 3rem); }
.lt-services .foundry-card-grid__card::before { margin-bottom: 1.75rem; }

/* Per-card icon-tile wash matches the corner-blob trio (cards 1 & 4 keep §7 teal;
   background-color longhand, so the §7 glyph background-image is preserved). */
.lt-services .foundry-card-grid__card:nth-child(2)::before { background-color: rgba(232, 114, 90, 0.14); }
.lt-services .foundry-card-grid__card:nth-child(3)::before { background-color: rgba(240, 192, 90, 0.18); }

/* Recolor + reshape the coral/gold glyphs to match legacy (card 2 → apps/grid in
   coral; card 3 → keep lightning, recolored gold). Overrides the §7 --lt-ico. */
.lt-services .foundry-card-grid__card:nth-child(2) { --lt-ico: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e8725a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7' height='7' rx='1'/%3E%3Crect x='14' y='3' width='7' height='7' rx='1'/%3E%3Crect x='3' y='14' width='7' height='7' rx='1'/%3E%3Crect x='14' y='14' width='7' height='7' rx='1'/%3E%3C/svg%3E"); }
.lt-services .foundry-card-grid__card:nth-child(3) { --lt-ico: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f0c05a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolygon points='13 2 3 14 12 14 11 22 21 10 12 10 13 2'/%3E%3C/svg%3E"); }

/* ============================================================
 * Process Steps — timeline: legacy parity pass.
 * White step cards + big ghosted step number + colour-cycling
 * ring nodes (teal / gold / coral). Scoped to the --timeline
 * variant so the default row layout is untouched. The ghosted
 * number is drawn from the SAME `foundry-step` CSS counter the
 * node uses, so it always matches document order (no markup /
 * field change). brand.css loads after the block style.css, so
 * these same-specificity rules win on source order.
 * ============================================================ */

/* (a) Card the step body — solid white, soft shadow, generous radius. */
.foundry-process-steps--timeline .foundry-process-steps__step-body {
	position: relative;
	overflow: hidden;
	background: #fff;
	border: 1px solid var(--lt-hair);
	border-radius: 1.5rem;
	padding: 2.75rem 2.25rem 2rem; /* extra top clears the ghosted number band */
	box-shadow: 0 18px 40px rgba(26, 26, 46, 0.06);
}

/* (b) Big ghosted step number on the OUTER top corner of each card,
 * read from the block's own counter → 01, 02, 03, 04. */
.foundry-process-steps--timeline .foundry-process-steps__step-body::before {
	content: counter(foundry-step, decimal-leading-zero);
	position: absolute;
	top: 0.25rem;
	left: 1.25rem; /* mobile single-rail default = top-left */
	font-family: var(--lt-fraunces);
	font-weight: 600;
	font-size: 4.5rem;
	line-height: 1;
	color: color-mix(in srgb, var(--lt-teal) 14%, transparent);
	pointer-events: none;
	z-index: 0;
}
/* Keep card text above the ghosted number. */
.foundry-process-steps--timeline .foundry-process-steps__step-title,
.foundry-process-steps--timeline .foundry-process-steps__step-text {
	position: relative;
	z-index: 1;
}

/* Fixed step padding-bottom (via a var the node reads) so the node-centring
 * calc below is exact — the block's clamp/preset padding is variable and would
 * drift the node off the card centre. */
.foundry-process-steps--timeline .foundry-process-steps__step {
	--lt-step-pad-b: 2.5rem;
	padding-bottom: var(--lt-step-pad-b);
}
/* The block zeroes padding-bottom on the last step; match the centring var so
 * its node lands on the card centre (not pulled up by a phantom pad). */
.foundry-process-steps--timeline .foundry-process-steps__step:last-child {
	--lt-step-pad-b: 0rem;
}

/* (c) Rail node → hollow colour-cycling RING with a per-step line icon. Cream
 * fill + 6px cream halo so the rail doesn't run through it; the numeral inside
 * is dropped (the ghosted card number owns the sequence), replaced by an icon.
 * VERTICAL CENTRING: the block pins the node at top:50% of the STEP box, but the
 * step includes padding-bottom BELOW the card, so the node landed ~half-a-pad
 * low. Anchor to the card's true middle: top = 50% − half the (now fixed) pad.
 * --lt-step-pad-b keeps this in sync with the padding; translateY + the block's
 * nth-child left/right rail offsets are untouched. */
.foundry-process-steps--timeline .foundry-process-steps__num {
	background-color: var(--lt-cream);
	background-image: var(--lt-step-ico);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 1.35rem 1.35rem;
	border: 2px solid var(--lt-teal);
	color: transparent;
	box-shadow: 0 0 0 6px var(--lt-cream);
	top: calc(50% - (var(--lt-step-pad-b, 2.5rem) / 2));
	transform: translateY(-50%);
}
.foundry-process-steps--timeline .foundry-process-steps__num::before {
	content: ""; /* drop the numeral inside the ring */
}
/* Ring colour cycles teal → gold → coral → teal … */
.foundry-process-steps--timeline .foundry-process-steps__step:nth-child(3n+2) .foundry-process-steps__num {
	border-color: var(--lt-gold);
}
.foundry-process-steps--timeline .foundry-process-steps__step:nth-child(3n) .foundry-process-steps__num {
	border-color: var(--lt-coral);
}
/* Per-step icon inside the ring (house data-URI pattern; colour tracks the ring). */
.foundry-process-steps--timeline .foundry-process-steps__step:nth-child(1) .foundry-process-steps__num { --lt-step-ico: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231a7a6d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z'/%3E%3C/svg%3E"); }
.foundry-process-steps--timeline .foundry-process-steps__step:nth-child(2) .foundry-process-steps__num { --lt-step-ico: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c79a2e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='18' rx='2'/%3E%3Cline x1='3' y1='9' x2='21' y2='9'/%3E%3Cline x1='9' y1='21' x2='9' y2='9'/%3E%3C/svg%3E"); }
.foundry-process-steps--timeline .foundry-process-steps__step:nth-child(3) .foundry-process-steps__num { --lt-step-ico: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e8725a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='16 18 22 12 16 6'/%3E%3Cpolyline points='8 6 2 12 8 18'/%3E%3C/svg%3E"); }
.foundry-process-steps--timeline .foundry-process-steps__step:nth-child(4) .foundry-process-steps__num { --lt-step-ico: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231a7a6d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Cline x1='4.93' y1='4.93' x2='9.17' y2='9.17'/%3E%3Cline x1='14.83' y1='14.83' x2='19.07' y2='19.07'/%3E%3Cline x1='14.83' y1='9.17' x2='19.07' y2='4.93'/%3E%3Cline x1='9.17' y1='14.83' x2='4.93' y2='19.07'/%3E%3C/svg%3E"); }

/* Desktop: ghosted number to the OUTER corner per side, and a touch more
 * vertical air between the zig-zag cards (legacy reads ~15% airier). */
@media (min-width: 760px) {
	.foundry-process-steps--timeline .foundry-process-steps__step:nth-child(odd) .foundry-process-steps__step-body::before {
		left: 1.5rem;  /* left column → outer edge is left */
		right: auto;
	}
	.foundry-process-steps--timeline .foundry-process-steps__step:nth-child(even) .foundry-process-steps__step-body::before {
		left: auto;
		right: 1.5rem; /* right column → outer edge is right */
	}
	.foundry-process-steps--timeline .foundry-process-steps__step {
		--lt-step-pad-b: 4rem; /* fixed (was clamp) so the node-centre calc is exact; airier desktop rhythm */
	}
	/* Uniform interleave → CONSISTENT card-to-card spacing. The block shipped a
	 * mixed +2.5rem (step 2) / -2.5rem (even) margin that made the centre-to-centre
	 * gaps uneven (291 / 251 / 211). Rise every step after the first by the same
	 * amount so the zig-zag cadence is constant. */
	.foundry-process-steps--timeline .foundry-process-steps__step:nth-child(n+2) {
		margin-top: -3rem;
	}
}

/* Hover — legacy animates BOTH the card and its node ring on mouseover; the
 * flat block had no hover state. Lift the card + scale the node (motion-gated). */
@media (prefers-reduced-motion: no-preference) {
	.foundry-process-steps--timeline .foundry-process-steps__step-body,
	.foundry-process-steps--timeline .foundry-process-steps__num {
		transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
	}
	.foundry-process-steps--timeline .foundry-process-steps__step:hover .foundry-process-steps__step-body {
		transform: translateY(-6px);
		box-shadow: 0 30px 60px rgba(26, 26, 46, 0.13);
	}
	.foundry-process-steps--timeline .foundry-process-steps__step:hover .foundry-process-steps__num {
		transform: translateY(-50%) scale(1.14);
	}
}

/* ═══════════════════════════════════════════════════════════════════════
   PARITY PASS — ecosystem card-grid (.lt-dark-cards)
   Adds: per-card line icons (top-left), featured/raised middle card with
   teal glow, an interim "FOUNDATION" badge, and a ~15% airier rhythm.
   All scoped to .lt-dark-cards. Token-driven where possible.
   ═══════════════════════════════════════════════════════════════════════ */

/* ── airier: dark-cards never overrode the block's default 2rem card padding
   (light glass cards use 2.5rem), so it read tighter than legacy. Also give
   the list headroom for the badge/lift that pokes above the featured card. ── */
.lt-dark-cards { padding-block: clamp(4rem, 9vw, 7rem); }
.lt-dark-cards .foundry-card-grid__card { padding: 2.5rem; }
.lt-dark-cards .foundry-card-grid__list {
	gap: 2rem;
	align-items: start;      /* featured card grows/lifts without stretching siblings */
	padding-top: 2.75rem;    /* room for the raised card + overlapping badge */
}

/* ── per-card line icon (bare glyph, top-left — matches legacy; no wash tile).
   House ::before data-URI pattern (cf. .lt-services / .lt-trust). The native
   card `icon` image field is left free as an editor override (see :has guard). ── */
.lt-dark-cards .foundry-card-grid__card::before {
	content: "";
	display: block;
	width: 2.75rem;
	height: 2.75rem;
	margin-bottom: 1.5rem;
	background-image: var(--lt-ico, none);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: contain;
}
.lt-dark-cards .foundry-card-grid__card:nth-child(1) { --lt-ico: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e8725a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='3' width='20' height='14' rx='2'/%3E%3Cline x1='8' y1='21' x2='16' y2='21'/%3E%3Cline x1='12' y1='17' x2='12' y2='21'/%3E%3C/svg%3E"); }
.lt-dark-cards .foundry-card-grid__card:nth-child(2) { --lt-ico: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231a7a6d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='2' width='20' height='8' rx='2'/%3E%3Crect x='2' y='14' width='20' height='8' rx='2'/%3E%3Cline x1='6' y1='6' x2='6.01' y2='6'/%3E%3Cline x1='6' y1='18' x2='6.01' y2='18'/%3E%3C/svg%3E"); }
.lt-dark-cards .foundry-card-grid__card:nth-child(3) { --lt-ico: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f0c05a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='18' rx='4'/%3E%3Cline x1='8' y1='17' x2='8' y2='13'/%3E%3Cline x1='12' y1='17' x2='12' y2='9'/%3E%3Cline x1='16' y1='17' x2='16' y2='11'/%3E%3C/svg%3E"); }

/* if an editor populates the native card Icon field, use the real image and
   suppress the CSS glyph so they don't double up. */
.lt-dark-cards .foundry-card-grid__card:has(.foundry-card-grid__icon)::before { content: none; }
.lt-dark-cards .foundry-card-grid__icon { display: block; width: 2.75rem; margin-bottom: 1.5rem; }
.lt-dark-cards .foundry-card-grid__icon img { width: 100%; height: auto; }

/* ── featured card: raised + teal glow ring (legacy "WebOps" treatment). Now
   driven by the NATIVE `featured` sub-field (Foundry 0.4.8) → .foundry-card-grid__
   card--featured, so it survives editor reordering (was positional nth-child(2)).
   The .lt-dark-cards-scoped modifier + later source order beat the base --featured
   raise and the generic card:hover lift (§5). ── */
.lt-dark-cards .foundry-card-grid__card--featured {
	position: relative;
	background: rgba(26, 122, 109, 0.08);
	border-color: rgba(26, 122, 109, 0.5);
	box-shadow: 0 0 0 1px rgba(26, 122, 109, 0.35), 0 24px 60px -20px rgba(26, 122, 109, 0.55);
	transform: translateY(-1.5rem);
}
.lt-dark-cards .foundry-card-grid__card--featured:hover {
	background: rgba(26, 122, 109, 0.12);
	transform: translateY(-1.75rem);
}

/* ── "FOUNDATION" badge → now the NATIVE `badge` sub-field (Foundry 0.4.8) renders
   .foundry-card-grid__badge as the card's first child; LT lifts it to an overlapping
   top-center teal pill (legacy treatment). Only the featured card carries a badge
   value, so scoping to .lt-dark-cards is sufficient. Retires the ::after content
   string. ── */
.lt-dark-cards .foundry-card-grid__badge {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, -50%);
	margin: 0;
	background: var(--lt-teal);
	color: #fff;
	font-family: var(--wp--preset--font-family--body, 'DM Sans', sans-serif);
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	white-space: nowrap;
	padding: 0.4rem 0.9rem;
	border-radius: 9999px;
	box-shadow: 0 4px 12px rgba(26, 122, 109, 0.4);
}

/* ── Parity pass · CTA card centering — RETIRED. Foundry 0.4.8 centers
   .foundry-cta--card by default (column + align-items/text-align center; actions
   justify-content:center), so the interim centering skin was deleted. LT keeps
   only the brand colour/glass tuning (see the CTA-card skin near the top of the
   Phase-2 block section) + the portfolio .lt-cta-feature scale override. ── */

/* ════════════════════════════════════════════════════════════════════════
   PARITY PASS 2 (block-decomposition workflow, 2026-07-02) — ABOUT + PORTFOLIO
   Per-block deltas from the about+portfolio design fan-out. Companion build
   changes: about hero badge+accent split, cg1→.lt-why-different, cg2→.lt-dark-
   cards (reuses home ecosystem skin — same 3 brands), cta +2nd button; portfolio
   hero badge+accent split, cta→.lt-cta-feature. (about ecosystem CSS skipped —
   .lt-dark-cards already carries icons/FOUNDATION/featured from PARITY PASS 1.) */

/* --- ABOUT: stats as glass proof-cards (global .foundry-stats; only About uses it) --- */
/* ══ PARITY PASS · STATS (About) ═══════════════════════════════════════════
   Legacy About renders the 3 stats as glass proof-cards (surface panel, hairline
   border, rounded, padded), cycles the brand trio across the numerals
   (teal→coral→gold, matching the hero blob order), and sets the labels in tracked
   uppercase. The shared block ships bare centered items, one primary colour, and
   label case = content case. Additive, token-driven, appended AFTER the base
   rules (equal-specificity wins in the cascade); scoped to .foundry-stats. The
   home standalone stats row was removed for parity, so this is the only live
   stats instance — global .foundry-stats scoping is safe and simplest. */

/* Each stat → glass panel, reusing the card-grid card aesthetic but tighter
   (stats read as compact proof tiles, not 2.5rem content cards). Static — no
   hover lift; legacy stat cards don't animate. */
.foundry-stats__item {
	background: var(--lt-glass);
	-webkit-backdrop-filter: blur(12px);
	backdrop-filter: blur(12px);
	border: 1px solid var(--lt-hair);
	border-radius: 1.5rem;
	padding: 2.25rem 1.5rem;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.03);
}

/* Cycle the brand trio across the numerals — base paints all three primary/teal.
   nth-child(1) is already teal (base primary); tint 2 → coral, 3 → gold. */
.foundry-stats__item:nth-child(2) .foundry-stats__value { color: var(--lt-coral); }
.foundry-stats__item:nth-child(3) .foundry-stats__value { color: var(--lt-gold); }

/* Legacy sets the display figures ~700, not the block's 800; also keeps the
   Fraunces (heading) family the base already applies. */
.foundry-stats__value { font-weight: 700; }

/* Labels → tracked uppercase. Content stays Title Case for editors; presentation
   handles casing (no build-field rewrite needed). */
.foundry-stats__label {
	text-transform: uppercase;
	letter-spacing: 0.1em;
	font-weight: 700;
	font-size: var(--wp--preset--font-size--sm, 0.8125rem);
}

/* --- ABOUT: 'What Makes Us Different' card-grid icons + corner blobs --- */
/* ═══════════════════════════════════════════════════════════════════════
   PARITY PASS — About "What Makes Us Different" card-grid (.lt-why-different)
   Legacy leads each card with a colored, rounded icon TILE (top-left) plus a
   soft decorative corner blob, tinted to the brand trio (teal / coral / gold
   / teal); staging shipped bare glass cards (the native `icon` field was left
   empty). Add both via the house ::before data-URI pattern (cf. .lt-services
   §7 / .lt-dark-cards §11b) so no native icon uploads are needed and each tile
   can be per-card tinted. Cards keep the §5 glass chrome + cream band for
   site-wide consistency. Additive, token-driven, scoped to .lt-why-different.
   Pairs with build-side: add className 'lt-why-different' + clear the eyebrow.
   ═══════════════════════════════════════════════════════════════════════ */

/* Airier card padding to match legacy's generous cards. */
.lt-why-different .foundry-card-grid__card { padding: clamp(2.5rem, 3vw, 3rem); }

/* Per-card decorative corner blob. §5's `background:` shorthand resets
   background-image at higher specificity (0,5,0), so override just that
   longhand with !important — documented house pattern (cf. .lt-services). */
.lt-why-different .foundry-card-grid__card {
	background-image: radial-gradient(circle at 100% 0%, rgba(26, 122, 109, 0.14), transparent 42%) !important;
}
.lt-why-different .foundry-card-grid__card:nth-child(2) {
	background-image: radial-gradient(circle at 100% 0%, rgba(232, 114, 90, 0.14), transparent 42%) !important;
}
.lt-why-different .foundry-card-grid__card:nth-child(3) {
	background-image: radial-gradient(circle at 100% 0%, rgba(240, 192, 90, 0.18), transparent 42%) !important;
}
.lt-why-different .foundry-card-grid__card:nth-child(4) {
	background-image: radial-gradient(circle at 100% 0%, rgba(26, 122, 109, 0.12), transparent 42%) !important;
}

/* Colored, rounded icon tile at the top-left of each card (glyph centered).
   Cards 1 & 4 use this default teal wash; 2 & 3 recolor the tile below. */
.lt-why-different .foundry-card-grid__card::before {
	content: "";
	display: block;
	width: 3rem;
	height: 3rem;
	border-radius: 0.875rem;
	margin-bottom: 1.75rem;
	background-color: rgba(26, 122, 109, 0.12);
	background-image: var(--lt-ico, none);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 1.5rem 1.5rem;
}
/* per-card glyph (--lt-ico on the card, consumed by ::before) — order matches
   the build repeater: 1 Infrastructure / 2 AI-Native / 3 Results / 4 Long-Term. */
.lt-why-different .foundry-card-grid__card:nth-child(1) { --lt-ico: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231a7a6d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 22V4a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v18'/%3E%3Cpath d='M2 22h20'/%3E%3Cline x1='10' y1='7' x2='14' y2='7'/%3E%3Cline x1='10' y1='11' x2='14' y2='11'/%3E%3Cline x1='10' y1='15' x2='14' y2='15'/%3E%3C/svg%3E"); }
.lt-why-different .foundry-card-grid__card:nth-child(2) { --lt-ico: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e8725a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='4' width='16' height='16' rx='2'/%3E%3Crect x='9' y='9' width='6' height='6'/%3E%3Cline x1='9' y1='1' x2='9' y2='4'/%3E%3Cline x1='15' y1='1' x2='15' y2='4'/%3E%3Cline x1='9' y1='20' x2='9' y2='23'/%3E%3Cline x1='15' y1='20' x2='15' y2='23'/%3E%3Cline x1='20' y1='9' x2='23' y2='9'/%3E%3Cline x1='20' y1='14' x2='23' y2='14'/%3E%3Cline x1='1' y1='9' x2='4' y2='9'/%3E%3Cline x1='1' y1='14' x2='4' y2='14'/%3E%3C/svg%3E"); }
.lt-why-different .foundry-card-grid__card:nth-child(3) { --lt-ico: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f0c05a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Cline x1='22' y1='12' x2='18' y2='12'/%3E%3Cline x1='6' y1='12' x2='2' y2='12'/%3E%3Cline x1='12' y1='6' x2='12' y2='2'/%3E%3Cline x1='12' y1='22' x2='12' y2='18'/%3E%3C/svg%3E"); }
.lt-why-different .foundry-card-grid__card:nth-child(4) { --lt-ico: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231a7a6d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 11V6a2 2 0 0 0-2-2a2 2 0 0 0-2 2'/%3E%3Cpath d='M14 10V4a2 2 0 0 0-2-2a2 2 0 0 0-2 2v2'/%3E%3Cpath d='M10 10.5V6a2 2 0 0 0-2-2a2 2 0 0 0-2 2v8'/%3E%3Cpath d='M18 8a2 2 0 1 1 4 0v6a8 8 0 0 1-8 8h-2c-2.8 0-4.5-.86-5.99-2.34l-3.6-3.6a2 2 0 0 1 2.83-2.82L7 15'/%3E%3C/svg%3E"); }

/* recolor the tile wash for cards 2 (coral) & 3 (gold). background-color
   longhand, so the --lt-ico glyph on ::before is preserved (cf. §689-690). */
.lt-why-different .foundry-card-grid__card:nth-child(2)::before { background-color: rgba(232, 114, 90, 0.14); }
.lt-why-different .foundry-card-grid__card:nth-child(3)::before { background-color: rgba(240, 192, 90, 0.18); }

/* if an editor populates the native card Icon field, use the real image and
   suppress the CSS glyph so they don't double up (cf. §816-818). */
.lt-why-different .foundry-card-grid__card:has(.foundry-card-grid__icon)::before { content: none; }
.lt-why-different .foundry-card-grid__icon { display: block; width: 3rem; margin-bottom: 1.75rem; }
.lt-why-different .foundry-card-grid__icon img { width: 100%; height: auto; }

/* --- GLOBAL: CTA button labels in body sans (block defaults to heading font) --- */
/* ── Parity pass · CTA card (about) — button label typography ──
   The Foundry cta block defaults .foundry-cta__btn to the HEADING font
   (Fraunces), so the staging button label renders serif; legacy sets the CTA
   buttons in the body sans (DM Sans). Re-point the CTA button label to the
   body token. The pill shape + coral primary fill are unchanged (§2), and the
   second (outline) action is a build-field add — the plugin's own
   .foundry-cta--surface .foundry-cta__btn--outline already skins it as the
   neutral hairline pill that matches the legacy "Explore Services", so no
   extra rule is needed here. */
.foundry-cta__btn {
	font-family: var(--wp--preset--font-family--body, 'DM Sans', sans-serif);
}

/* --- PORTFOLIO: enriched grid (full-bleed thumb, tech chips, dashed placeholder, media scrim) --- */
/* ── Portfolio-grid → legacy parity (page 10). Additive; block-scoped; token-
   driven. Pulls the enriched grid toward the legacy portfolio cards: full-bleed
   thumbnail, tech stack as teal chips, restored dashed placeholder outline, a
   decorative plus badge, and content-sized (not row-stretched) cards.
   ROOT CAUSE of two gaps: §5's `.foundry-portfolio__item { padding:2.5rem;
   border:1px solid; background:glass }` blanket rule insets the project media in
   a white gutter AND resets the placeholder's own `2px dashed`/transparent
   outline to a solid glass tile. These deltas re-scope that per kind. ── */

/* Cards size to content — legacy reads as masonry, not a rigid equal-height row
   (stops the placeholder ballooning to the WebOps card's height). */
.foundry-portfolio__list { align-items: start; }

/* PROJECT cards: full-bleed thumb + roomier body (drop the §5 inset gutter). */
.foundry-portfolio__item--project { padding: 0; }
.foundry-portfolio__body {
	padding: 1.5rem 2rem 2rem;
	gap: 0.85rem;
}

/* Tech stack → teal chips (legacy pills); drop the muted dot-separated text. */
.foundry-portfolio__tech { gap: 0.5rem; margin-top: 0.35rem; }
.foundry-portfolio__tech-item {
	padding: 0.32em 0.8em;
	border-radius: 999px;
	background: color-mix(in srgb, var(--lt-teal) 10%, transparent);
	color: var(--lt-teal);
	font-weight: 600;
	font-size: 0.72rem;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}
.foundry-portfolio__tech-item::after { content: none; }   /* kill the · separator */

/* Placeholder tile: restore the dashed outline + transparent fill (§5 reset
   both to a solid glass tile). */
.foundry-portfolio__item--placeholder {
	padding: 0;
	background: transparent;
	border: 2px dashed color-mix(in srgb, var(--lt-teal) 40%, transparent);
}
.foundry-portfolio__item--placeholder:hover {
	border-color: var(--lt-teal);
	background: color-mix(in srgb, var(--lt-teal) 5%, transparent);
}

/* Decorative plus badge above the placeholder title (legacy icon; the block has
   no icon field — CSS-drawn, purely decorative). */
.foundry-portfolio__placeholder-inner::before {
	content: "+";
	display: grid;
	place-items: center;
	inline-size: 3rem;
	block-size: 3rem;
	border-radius: 0.9rem;
	background: color-mix(in srgb, var(--lt-teal) 12%, transparent);
	color: var(--lt-teal);
	font-size: 1.6rem;
	line-height: 1;
}

/* Faint corner scrim on the thumb — keeps the top-left status badge legible on
   any gradient and nudges the bright placeholders toward the legacy muted darks. */
.foundry-portfolio__media::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;               /* below the status badge/overlay (z-index:1) */
	pointer-events: none;
	background: linear-gradient(155deg, rgba(0, 0, 0, 0.25), rgba(0, 0, 0, 0) 48%);
}

/* --- PORTFOLIO: feature CTA card (larger tonal panel; scoped to .lt-cta-feature so home/about stay flat-white) --- */
/* ══ PARITY PASS · CTA card (portfolio) — display scale + tonal depth ═══════
   Legacy floats a LARGER, airier CTA card than staging: the display heading
   runs bigger than the shared section-title cap (≈4.5rem vs 3.5rem), the panel
   carries soft tonal depth (a faint white→cream gradient, not flat #fff — the
   "flatness gap" from the last recon) under a wide, diffuse drop shadow, and it
   sits on more vertical padding. Additive + token-driven; scoped to --card so
   the band style is untouched. Selectors are higher/equal specificity than the
   base §CTA-card + centering rules and appended last, so they win cleanly. */

/* Bigger display heading — legacy CTA title ≈ 4.5rem, above the shared
   clamp(2rem, 4vw + 1rem, 3.5rem) section-title cap. */
.foundry-cta--card.lt-cta-feature .foundry-cta__title {
	font-size: clamp(2.5rem, 3vw + 2rem, 4.5rem);
}

/* Tonal panel + soft wide shadow + airier padding (closes the flat-white gap;
   overrides the §CTA-card #fff background and the centering rule's padding). */
.foundry-cta--card.lt-cta-feature .foundry-cta__inner {
	background: linear-gradient(160deg, #fff 0%, color-mix(in srgb, var(--lt-cream) 55%, #fff) 100%);
	box-shadow: 0 30px 70px -25px rgba(26, 26, 46, 0.18);
	padding-block: clamp(4rem, 8vw, 6.5rem);
}

/* ════════════════════════════════════════════════════════════════════════
   PARITY PASS 3 (block-decomposition workflow, 2026-07-02) — SERVICES (page 9)
   Build changes: hero badge+accent split (Done Right); Our Stack card-grid →
   .lt-dark-cards.lt-stack (dark band, reuses ecosystem base but suppresses the
   FOUNDATION badge + featured raise — 3 equal cards); cta → .lt-cta-feature.
   Hero + cta need no new CSS (site-wide skins). ════════════════════════════ */

/* --- SERVICES: Our Stack dark band (equal cards, stack icons; suppresses ecosystem badge/featured) --- */
/* ══ PARITY PASS · SERVICES "Our Stack" card-grid (.lt-dark-cards.lt-stack) ══
   Legacy renders Our Stack as a DARK band with three equal dark-glass cards, each
   with a colored top-left line icon (teal / coral / gold). Staging ships the block
   with NO className, so it falls into the default light-glass-on-cream bucket (§5)
   with no icons — a total visual mismatch.

   Fix = reuse the house dark-band card-grid skin already shared by home + about
   (§11b + the ecosystem parity block at ~L779: dark surface, teal blob, white
   title/intro, dark-glass cards, bare top-left ::before line icons, airier rhythm)
   via build-side className "lt-dark-cards lt-stack", then layer this .lt-stack
   modifier that (a) drops the ecosystem-only featured middle card + FOUNDATION
   badge — Our Stack is three EQUAL cards — and (b) swaps the three glyphs to
   Infrastructure / Security / Monitoring in teal / coral / gold.
   Additive, scoped, token-driven; no new !important. Append AFTER the §11b
   ecosystem block so the extra .lt-stack class + later source order win cleanly. ══ */

/* Legacy's dark band runs a touch airier than the tightened ecosystem rhythm
   (§11b set clamp(4rem,9vw,7rem)); restore the standard band breathing room. */
.lt-stack.foundry-card-grid { padding-block: clamp(5rem, 9vw, 8rem); }

/* (Ecosystem featured-raise + FOUNDATION-badge neutralizers RETIRED: those are now
   native `featured`/`badge` sub-fields (0.4.8) set only on the home/about ecosystem
   WebOps card — Services' Our Stack build sets neither, so its three cards are
   naturally equal + badge-free. No suppression needed.) */

/* Per-card line icons → Our Stack: Infrastructure (server, teal),
   Security (shield-check, coral), Monitoring (bar chart, gold). Overrides the
   ecosystem --lt-ico values; the ::before mechanics come from §11b's parity block. */
.lt-dark-cards.lt-stack .foundry-card-grid__card:nth-child(1) { --lt-ico: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231a7a6d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2' y='2' width='20' height='8' rx='2'/%3E%3Crect x='2' y='14' width='20' height='8' rx='2'/%3E%3Cline x1='6' y1='6' x2='6.01' y2='6'/%3E%3Cline x1='6' y1='18' x2='6.01' y2='18'/%3E%3C/svg%3E"); }
.lt-dark-cards.lt-stack .foundry-card-grid__card:nth-child(2) { --lt-ico: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e8725a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E"); }
.lt-dark-cards.lt-stack .foundry-card-grid__card:nth-child(3) { --lt-ico: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f0c05a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='18' rx='4'/%3E%3Cline x1='8' y1='17' x2='8' y2='13'/%3E%3Cline x1='12' y1='17' x2='12' y2='9'/%3E%3Cline x1='16' y1='17' x2='16' y2='11'/%3E%3C/svg%3E"); }

/* ══ PARITY PASS · SERVICES feature-rows — stat-card-as-media (Foundry 0.4.9 #6) ══
   Legacy renders the four services as alternating detail rows, each with a floating
   white STAT CARD (per-row accent numeral) in the media slot, an icon badge above
   the title, and an outline-check list. 0.4.9 #6 delivers stat-card-as-media +
   alternation + stat_note natively — build-services sets media_type=stat +
   media_start=right, so the rows keep the native 2-col grid and the old media-less
   collapse hack is gone. This skin only brand-tunes the look: (1) centre the card
   body + drop the block's default left accent bar (legacy's card is a plain centred
   white card); (2) cycle a per-row accent teal → coral → gold → teal onto the
   numeral + checklist discs (matching legacy's row colours), carried on a
   contrast-safe --lt-row-ink (legacy's raw gold/coral numerals fail WCAG; LT's pitch
   is "accessibility baked in"); (3) add the per-row icon badge via the house ::before
   data-URI pattern (cf. .lt-services) — a brand-glyph decoration, so no attachment
   upload / prod re-import is needed; (4) keep legacy's airier inter-row rhythm.
   Scoped to rows carrying a stat card so an imaged feature-rows elsewhere is
   untouched. */

/* Per-row accent (numeral + check disc + icon tint) and contrast-safe ink. */
.foundry-feature-rows__row:has(.foundry-feature-rows__media--stat) {
	--lt-row-accent: var(--lt-teal);
	--lt-row-ink: var(--lt-teal);
}
.foundry-feature-rows__row:has(.foundry-feature-rows__media--stat):nth-child(2) {
	--lt-row-accent: var(--lt-coral);
	--lt-row-ink: color-mix(in srgb, var(--lt-coral) 78%, var(--lt-dark));
}
.foundry-feature-rows__row:has(.foundry-feature-rows__media--stat):nth-child(3) {
	--lt-row-accent: var(--lt-gold);
	--lt-row-ink: color-mix(in srgb, var(--lt-gold) 50%, #4a3a10);
}
.foundry-feature-rows__row:has(.foundry-feature-rows__media--stat):nth-child(4) {
	--lt-row-accent: var(--lt-teal);
	--lt-row-ink: var(--lt-teal);
}

/* Stat card — legacy is a plain centred white card (no left bar). Centre the body,
   drop the default accent border, tint the numeral to the per-row ink. */
.foundry-feature-rows__media--stat { background: transparent; }
.foundry-feature-rows__media--stat .foundry-feature-rows__stat-card {
	background: #fff;
	border-left: 0;
	border-radius: 18px;
	align-items: center;
	text-align: center;
	box-shadow: 0 24px 60px -30px rgba(20, 40, 40, 0.35);
}
.foundry-feature-rows__media--stat .foundry-feature-rows__stat-card-value {
	font-family: var(--lt-fraunces);
	font-weight: 600;
	color: var(--lt-row-ink);
}
.foundry-feature-rows__media--stat .foundry-feature-rows__stat-card-label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--wp--preset--color--muted, #6b6f70);
}

/* Checklist discs pick up the per-row accent (legacy tints them to the row colour). */
.foundry-feature-rows__row:has(.foundry-feature-rows__media--stat) .foundry-feature-rows__check::before {
	background-color: var(--lt-row-accent);
}

/* Per-row icon badge above the title (house ::before data-URI pattern, cf.
   .lt-services). Tinted square with a per-row line icon; sits at the top-left of
   the text column, matching legacy. */
.foundry-feature-rows__row:has(.foundry-feature-rows__media--stat) .foundry-feature-rows__text::before {
	content: "";
	display: block;
	width: 3rem;
	height: 3rem;
	margin-bottom: 1rem;
	border-radius: 12px;
	background-color: color-mix(in srgb, var(--lt-row-accent) 14%, transparent);
	background-image: var(--lt-ico);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 1.6rem 1.6rem;
}
.foundry-feature-rows__row:has(.foundry-feature-rows__media--stat):nth-child(1) .foundry-feature-rows__text { --lt-ico: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231a7a6d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='16 18 22 12 16 6'/%3E%3Cpolyline points='8 6 2 12 8 18'/%3E%3C/svg%3E"); }
.foundry-feature-rows__row:has(.foundry-feature-rows__media--stat):nth-child(2) .foundry-feature-rows__text { --lt-ico: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e8725a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7' height='7' rx='1'/%3E%3Crect x='14' y='3' width='7' height='7' rx='1'/%3E%3Crect x='3' y='14' width='7' height='7' rx='1'/%3E%3Crect x='14' y='14' width='7' height='7' rx='1'/%3E%3C/svg%3E"); }
.foundry-feature-rows__row:has(.foundry-feature-rows__media--stat):nth-child(3) .foundry-feature-rows__text { --lt-ico: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23c79a2e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolygon points='13 2 3 14 12 14 11 22 21 10 12 10 13 2'/%3E%3C/svg%3E"); }
.foundry-feature-rows__row:has(.foundry-feature-rows__media--stat):nth-child(4) .foundry-feature-rows__text { --lt-ico: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231a7a6d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E")}.foundry-feature-rows__list{gap:clamp(4rem, 8vw, 7rem)}.foundry-feature-rows{padding-block:clamp(4.5rem, 9vw, 7.5rem)}