/*
Theme Name: Huiyao Flooring
Theme URI: https://huiyaoflooring.com/
Author: Huiyao Flooring
Description: Performance-first block theme for Huiyao Flooring's global B2B website.
Version: 0.8.0
Requires at least: 7.1
Requires PHP: 8.1
Text Domain: huiyao
*/

:root {
  --hy-paper: #f8fafc;
  --hy-paper-alt: #dceaff;
  --hy-ink: #081426;
  --hy-ink-soft: #243144;
  --hy-blue: #185adb;
  --hy-blue-deep: #081426;
  --hy-navy: #102a43;
  --hy-signal: #ff632d;
  --hy-rule: #cdd7e6;
  --hy-white: #fff;
  --hy-radius: .2rem;
  --hy-shell: min(90rem, calc(100% - clamp(2rem, 8vw, 8rem)));
  --hy-display: "IBM Plex Sans Condensed", "Arial Narrow", sans-serif;
  --hy-body: "IBM Plex Sans", "Segoe UI", sans-serif;
  --hy-mono: "IBM Plex Mono", "Cascadia Mono", monospace;
}

*, *::before, *::after { box-sizing: border-box; }
html { overflow-x: clip; scroll-behavior: smooth; }
body { margin: 0; overflow-x: clip; background: var(--hy-paper); color: var(--hy-ink); font-family: var(--hy-body); line-height: 1.62; }
img { display: block; max-width: 100%; height: auto; }
a { color: inherit; text-underline-offset: .22em; }
:focus-visible { outline: 2px solid var(--hy-signal); outline-offset: 3px; }
.wp-site-blocks { min-height: 100vh; }
.hy-shell { width: var(--hy-shell); margin-inline: auto; }
.hy-section { padding-block: clamp(2.5rem, 5vw, 4rem); }
.hy-eyebrow { margin: 0; color: var(--hy-blue); font-family: var(--hy-display); font-size: .9rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
h1, h2, h3 { overflow-wrap: break-word; text-wrap: balance; }
.hy-display, .hy-heading { font-family: var(--hy-display); font-weight: 700; letter-spacing: -.018em; line-height: 1.04; }
.hy-display { max-width: 15ch; margin: 0; font-size: clamp(3.4rem, 6vw, 6.5rem); }
.hy-heading { margin: 0; font-size: clamp(2.35rem, 3.6vw, 4.2rem); }
.hy-lede { max-width: 58ch; color: var(--hy-ink-soft); font-size: clamp(1.05rem, 1.7vw, 1.3rem); }
.hy-button .wp-block-button__link { min-height: 3rem; display: inline-flex; align-items: center; padding: .85rem 1.55rem; border: 1px solid var(--hy-ink); border-radius: 999px; background: var(--hy-navy); color: var(--hy-white); font-family: var(--hy-display); font-size: .95rem; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; transition: transform 160ms ease, background-color 160ms ease; }
.hy-button--signal .wp-block-button__link { border-color: var(--hy-signal); background: var(--hy-signal); color: var(--hy-ink); }
.hy-button--outline .wp-block-button__link { background: transparent; color: var(--hy-ink); }
.hy-button .wp-block-button__link:hover { transform: translateY(-1px); }

.hy-header { position: sticky; z-index: 50; top: 0; border-bottom: 1px solid color-mix(in srgb, var(--hy-rule) 78%, transparent); background: color-mix(in srgb, var(--hy-paper) 94%, transparent); backdrop-filter: blur(16px); }
body.home .hy-header { position: absolute; width: 100%; border-bottom-color: rgba(255,255,255,.18); background: linear-gradient(180deg, rgba(16,42,67,.86), transparent); backdrop-filter: none; }
body.home .hy-brand .wp-block-site-title a,
body.home .hy-nav .wp-block-navigation-item__content { color: var(--hy-white); }
.hy-header__inner { width: var(--hy-shell); min-height: 4.8rem; margin-inline: auto; }
.hy-brand { gap: .75rem; }
.hy-brand .wp-block-site-logo img { width: 2.8rem; height: 2.8rem; padding: .22rem; border-radius: 50%; background: var(--hy-white); object-fit: contain; }
.hy-brand .wp-block-site-title { font-family: var(--hy-display); font-size: 1.65rem; font-weight: 700; letter-spacing: -.01em; }
.hy-nav { font-size: clamp(1.05rem, 1.25vw, 1.12rem); font-weight: 600; letter-spacing: .01em; }
.hy-header-cta { padding: .65rem 1.1rem; border-radius: 999px; background: var(--hy-signal); color: var(--hy-ink); font-family: var(--hy-display); font-size: .9rem; font-weight: 700; letter-spacing: .04em; text-decoration: none; text-transform: uppercase; }

.hy-hero { position: relative; min-height: min(52rem, 88vh); display: grid; align-items: center; padding-block: clamp(8rem, 14vw, 12rem) clamp(5rem, 9vw, 8rem); background-position: center; background-size: cover; color: var(--hy-white); }
.hy-hero::before { position: absolute; z-index: 0; inset: 0; background: linear-gradient(90deg, rgba(16,42,67,.92), rgba(16,42,67,.6) 58%, rgba(16,42,67,.78)), linear-gradient(0deg, rgba(16,42,67,.58), transparent 55%); content: ""; pointer-events: none; }
.hy-hero::after { position: absolute; z-index: 0; inset: 0 0 0 58%; background: rgba(255,255,255,.07); clip-path: polygon(30% 0,100% 0,100% 100%,0 100%); content: ""; pointer-events: none; }
.hy-hero__grid { position: relative; z-index: 1; display: grid; justify-items: center; text-align: center; }
.hy-hero__copy { display: grid; justify-items: center; gap: 1.4rem; }
.hy-hero .hy-eyebrow { color: var(--hy-signal); }
.hy-hero .hy-lede { max-width: 50rem; color: rgba(255,255,255,.84); }
.hy-hero .hy-display span { color: var(--hy-signal); font-style: italic; }
.hy-hero .hy-button--outline .wp-block-button__link { border-color: rgba(255,255,255,.75); color: var(--hy-white); }
.hy-hero__media { position: relative; margin: 0; }
.hy-hero__media::before { position: absolute; z-index: 2; top: 1.25rem; left: -1.25rem; padding: .5rem .7rem; background: var(--hy-signal); color: var(--hy-ink); content: "COURT / 01"; font-size: .72rem; font-weight: 600; letter-spacing: .12em; }
.hy-hero__media img { width: 100%; aspect-ratio: 4 / 5; border-radius: var(--hy-radius); object-fit: cover; }
.hy-hero__caption { margin-top: .65rem; color: #617086; font-size: .76rem; }

.hy-stats { width: 100%; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); margin-inline: auto; border-block: 1px solid rgba(255,255,255,.18); background: var(--hy-navy); color: var(--hy-white); }
.hy-stat { min-height: 7rem; display: grid; align-content: center; gap: .3rem; padding: 1.25rem clamp(1rem,3vw,2.5rem); border-right: 1px solid rgba(255,255,255,.22); }
/* Homepage stats: center each value and label, not just the outer band. */
body.home .hy-stats > .hy-stat { display:grid; align-content:center; justify-items:center; text-align:center; min-width:0; min-height:8rem; padding:1.25rem .75rem; }
body.home .hy-stats > .hy-stat strong { font-size:clamp(1.65rem,2.35vw,2.5rem); line-height:1.2; white-space:nowrap; font-variant-numeric:tabular-nums; }
body.home .hy-stats > .hy-stat span { text-align:center; letter-spacing:.035em; line-height:1.5; }
@media (max-width:640px) {
 body.home .hy-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
 body.home .hy-stats > .hy-stat { grid-column:auto; min-height:7rem; padding:1rem .4rem; border-bottom:1px solid rgba(255,255,255,.18); border-right:0; }
 body.home .hy-stats > .hy-stat:nth-child(odd):not(:last-child) { border-right:1px solid rgba(255,255,255,.18); }
 body.home .hy-stats > .hy-stat:last-child { grid-column:1 / -1; border:0; }
 body.home .hy-stats > .hy-stat strong { font-size:clamp(1.35rem,6vw,1.8rem); }
 body.home .hy-stats > .hy-stat span { font-size:.7rem; }
}
.hy-stat:last-child { border-right: 0; }
.hy-stat strong { font-family: var(--hy-display); font-size: clamp(2rem, 3.5vw, 3.5rem); line-height: 1; }
.hy-stat span { color: rgba(255,255,255,.72); font-size: .78rem; letter-spacing: .06em; text-transform: uppercase; }

.hy-split { width: var(--hy-shell); display: grid; grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr); gap: clamp(2rem, 7vw, 7rem); align-items: center; margin-inline: auto; }
.hy-split__copy { display: grid; gap: 1.4rem; }
.hy-split__media img { width: 100%; aspect-ratio: 4 / 3; border-radius: var(--hy-radius); background: var(--hy-paper-alt); object-fit: contain; }
.hy-proof-list { display: grid; gap: 0; margin: .5rem 0 0; padding: 0; list-style: none; }
.hy-proof-list li { position: relative; padding: .9rem 0 .9rem 1.5rem; border-bottom: 1px solid var(--hy-rule); }
.hy-proof-list li::before { position: absolute; top: 1.4rem; left: 0; width: .55rem; height: .55rem; background: var(--hy-navy); content: ""; }

.hy-blue-band { background: var(--hy-navy); color: var(--hy-white); }
.hy-blue-band .hy-lede { color: #d5e1f3; }
.hy-blue-band .hy-split { grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr); }
.hy-blue-band .hy-split__media { order: -1; }
.hy-blue-band .hy-split__media img { object-fit: cover; }

.hy-catalogue { width: var(--hy-shell); display: grid; gap: 2.5rem; margin-inline: auto; }
.hy-catalogue__head { display: flex; justify-content: space-between; gap: 2rem; align-items: start; }
.hy-product-grid .wp-block-post-template { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 1.4rem; }
.hy-product-grid .wp-block-post-template > .wp-block-post { margin-block: 0; }
.hy-product-card { min-width: 0; }
.hy-product-card .wp-block-post-featured-image { margin: 0 0 1rem; overflow: hidden; border: 1px solid var(--hy-rule); background: var(--hy-paper-alt); }
.hy-product-card .wp-block-post-featured-image img { aspect-ratio: 1; object-fit: contain; transition: transform 180ms ease; }
.hy-product-card:hover .wp-block-post-featured-image img { transform: scale(1.025); }
.hy-product-card .wp-block-post-title { margin: 0; font-family: var(--hy-display); font-size: 1.9rem; line-height: 1; }
.hy-product-card .wp-block-post-excerpt { color: var(--hy-ink-soft); font-size: .9rem; }

.hy-intro { padding-block: clamp(2.5rem, 5vw, 4rem); }
.hy-intro__grid { width: var(--hy-shell); display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(22rem, .92fr); align-items: center; margin-inline: auto; }
.hy-intro__visual { position: relative; min-height: 42rem; }
.hy-intro__visual img:first-child { position: absolute; inset: 0 auto auto 0; width: 72%; height: 72%; object-fit: cover; }
.hy-intro__visual img:last-child { position: absolute; inset: auto 0 0 auto; width: 62%; height: 55%; border: .75rem solid var(--hy-paper); object-fit: cover; }
.hy-intro__card { position: relative; z-index: 2; display: grid; gap: 1.35rem; margin-left: -3rem; padding: clamp(2rem, 4vw, 4rem); background: var(--hy-white); box-shadow: 0 1.5rem 4rem rgba(8,20,38,.14); }
.hy-intro__card .hy-heading { font-size: clamp(2.5rem, 3.4vw, 4rem); }
.hy-micro-stats { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); margin-top: 1rem; border-top: 1px solid var(--hy-rule); }
.hy-micro-stat { display: grid; gap: .2rem; padding: 1.1rem 1rem 0 0; }
.hy-micro-stat strong { color: var(--hy-ink); font-family: var(--hy-display); font-size: 2.7rem; line-height: 1; }
.hy-micro-stat span { color: #6b7576; font-size: .78rem; text-transform: uppercase; }

.hy-solutions { background: var(--hy-navy); color: var(--hy-white); }
.hy-solutions__head { width: var(--hy-shell); display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; align-items: start; margin: 0 auto 3rem; }
.hy-solutions__head .hy-lede { color: #c3d2ea; }
.hy-solution-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); }
.hy-solution-tile { min-height: 31rem; position: relative; display: grid; place-items: center; overflow: hidden; background: var(--hy-navy); }
.hy-solution-tile img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 500ms cubic-bezier(.16,1,.3,1); }
.hy-solution-tile--copy { padding: clamp(2rem, 4vw, 4rem); text-align: center; }
.hy-solution-tile--copy::before { position: absolute; inset: 1.5rem; border: 1px solid rgba(255,99,45,.28); content: ""; }
.hy-solution-tile__inner { position: relative; z-index: 1; display: grid; justify-items: center; gap: 1rem; }
.hy-solution-tile h3 { margin: 0; font-family: var(--hy-display); font-size: clamp(2rem,3vw,3rem); font-weight: 700; line-height: 1.04; }
.hy-solution-tile p { max-width: 31ch; color: #c3d2ea; }
.hy-solution-tile a { color: var(--hy-signal); font-family: var(--hy-display); font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.hy-solution-tile:hover img { transform: scale(1.035); }

.hy-mission { padding-block: clamp(2.5rem, 5vw, 4rem); text-align: center; }
.hy-mission__inner { width: min(64rem, calc(100% - 2rem)); display: grid; justify-items: center; gap: 1.4rem; margin-inline: auto; }
.hy-mission .hy-heading { max-width: 18ch; }
.hy-mission .hy-lede { max-width: 48rem; }
.hy-mission__stats { width: var(--hy-shell); display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); margin: 4rem auto 0; border-block: 1px solid var(--hy-rule); }
.hy-mission__stat { min-height: 9rem; display: grid; place-content: center; gap: .3rem; border-right: 1px solid var(--hy-rule); }
.hy-mission__stat:last-child { border-right: 0; }
.hy-mission__stat strong { font-family: var(--hy-display); font-size: clamp(2.7rem,4vw,4rem); line-height: 1; }
.hy-mission__stat strong span { color: var(--hy-signal); }
.hy-mission__stat small { color: #687375; text-transform: uppercase; }

.hy-cta { position: relative; padding-block: clamp(2.5rem, 5vw, 4rem); background-position: center; background-size: cover; color: var(--hy-white); }
.hy-cta::before { position: absolute; inset: 0; background: linear-gradient(90deg,rgba(16,42,67,.95),rgba(16,42,67,.56)); content: ""; }
.hy-cta__inner { position: relative; z-index: 1; width: var(--hy-shell); display: grid; gap: 1.3rem; margin-inline: auto; }
.hy-cta .hy-heading { max-width: 16ch; }
.hy-cta .hy-lede { color: rgba(255,255,255,.8); }

/* Product detail — a technical passport for project buyers. */
.hy-product-page { background: var(--hy-paper); }
.hy-product-breadcrumb { display: flex; gap: .65rem; align-items: center; padding-block: 1.3rem; color: #607087; font-size: .78rem; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; }
.hy-product-breadcrumb a { text-decoration: none; }
.hy-product-breadcrumb a:hover { color: var(--hy-blue); }
.hy-product-hero { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(26rem, .92fr); align-items: stretch; padding-bottom: clamp(3rem, 6vw, 6rem); }
.hy-product-hero__media { min-width: 0; display: grid; align-content: start; gap: 1rem; }
.hy-product-stage { position: relative; min-height: clamp(31rem, 54vw, 48rem); display: grid; place-items: center; overflow: hidden; border: 1px solid var(--hy-rule); background: radial-gradient(circle at 50% 48%, #fff 0 24%, transparent 54%), linear-gradient(145deg, var(--hy-paper-alt), #eef5ff 64%, #d4e4ff); }
.hy-product-stage::before { position: absolute; inset: 2rem; border: 1px solid rgba(24,90,219,.2); content: ""; pointer-events: none; }
.hy-product-stage::after { position: absolute; top: 2rem; right: 2rem; width: 3.25rem; height: 3.25rem; border-top: 2px solid var(--hy-signal); border-right: 2px solid var(--hy-signal); content: ""; pointer-events: none; }
.hy-product-stage > img { position: relative; z-index: 1; width: min(82%, 43rem); max-height: 39rem; object-fit: contain; filter: drop-shadow(0 1.5rem 2.1rem rgba(8,20,38,.16)); }
.hy-product-stage__empty { color: #66768d; }
.hy-product-measure { position: absolute; z-index: 2; color: var(--hy-blue); font-family: var(--hy-mono); font-size: .7rem; font-weight: 500; letter-spacing: .06em; text-transform: uppercase; }
.hy-product-measure::before, .hy-product-measure::after { position: absolute; background: var(--hy-navy); content: ""; }
.hy-product-measure--width { right: 12%; bottom: 1.55rem; left: 12%; text-align: center; }
.hy-product-measure--width::before { right: 0; bottom: .42rem; left: 0; height: 1px; }
.hy-product-measure--width::after { right: 0; bottom: .15rem; width: 1px; height: .55rem; }
.hy-product-measure--width span { position: relative; z-index: 1; padding-inline: .7rem; background: #e8f1ff; }
.hy-product-measure--height { top: 50%; left: .55rem; transform: rotate(-90deg) translateX(-50%); transform-origin: top left; }
.hy-product-measure--height::before { display: none; }
.hy-product-measure--height::after { display: none; }
.hy-product-thumbs { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; }
.hy-product-thumbs figure { position: relative; min-width: 0; margin: 0; overflow: hidden; border: 1px solid var(--hy-rule); background: var(--hy-white); }
.hy-product-thumbs img { width: 100%; aspect-ratio: 16 / 10; object-fit: contain; }
.hy-product-thumbs figcaption { position: absolute; right: .65rem; bottom: .65rem; padding: .35rem .55rem; background: rgba(16,42,67,.9); color: var(--hy-white); font-size: .68rem; letter-spacing: .07em; text-transform: uppercase; }
.hy-product-passport { position: relative; min-width: 0; display: grid; align-content: center; gap: 1.4rem; overflow: hidden; padding: clamp(2.2rem, 5vw, 5rem); background: var(--hy-navy); color: var(--hy-white); }
.hy-product-passport::after { position: absolute; right: -7rem; bottom: -11rem; width: 26rem; height: 26rem; border: 1px solid rgba(220,234,255,.13); border-radius: 50%; box-shadow: 0 0 0 4rem rgba(220,234,255,.035), 0 0 0 8rem rgba(220,234,255,.025); content: ""; pointer-events: none; }
.hy-product-passport__lock { position: absolute; top: 0; right: 0; left: 0; height: .8rem; background: repeating-linear-gradient(90deg,var(--hy-signal) 0 2rem,transparent 2rem 2.75rem); }
.hy-product-label { width: fit-content; margin: 0; padding: .45rem .68rem; background: var(--hy-signal); color: var(--hy-ink); font-family: var(--hy-display); font-size: .78rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.hy-product-title { position: relative; z-index: 1; display: grid; gap: .75rem; margin: 0; font-family: var(--hy-display); font-weight: 700; line-height: 1.04; }
.hy-product-title > span { color: var(--hy-white); font-family: var(--hy-mono); font-size: clamp(3.8rem, 6vw, 6.4rem); font-weight: 500; font-variant-numeric: tabular-nums; letter-spacing: -.055em; line-height: 1; }
.hy-product-title small { max-width: 19ch; color: #b9cced; font-size: clamp(1.7rem, 3vw, 2.7rem); font-style: normal; line-height: 1.08; }
.hy-product-lede { position: relative; z-index: 1; max-width: 41ch; margin: 0; color: #cedaf0; font-size: clamp(1rem, 1.35vw, 1.16rem); }
.hy-product-spec-grid { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); margin: .4rem 0 0; border-block: 1px solid rgba(255,255,255,.2); }
.hy-product-spec-grid > div { min-width: 0; padding: 1rem 1rem 1rem 0; border-bottom: 1px solid rgba(255,255,255,.16); }
.hy-product-spec-grid > div:nth-child(odd) { border-right: 1px solid rgba(255,255,255,.16); }
.hy-product-spec-grid > div:nth-child(even) { padding-left: 1rem; }
.hy-product-spec-grid > div:nth-last-child(-n+2) { border-bottom: 0; }
.hy-product-spec-grid dt { margin-bottom: .28rem; color: #8fa7cc; font-size: .68rem; letter-spacing: .1em; text-transform: uppercase; }
.hy-product-spec-grid dd { margin: 0; color: var(--hy-white); font-family: var(--hy-mono); font-size: 1rem; font-weight: 500; font-variant-numeric: tabular-nums; line-height: 1.25; }
.hy-product-color-summary { position: relative; z-index: 1; display: grid; grid-template-columns: auto 1fr auto; gap: 1rem; align-items: center; padding: .9rem 0; border-block: 1px solid rgba(255,255,255,.2); }
.hy-product-color-summary > div:first-child { display: grid; gap: .15rem; }
.hy-product-color-summary > div:first-child span { color: #8fa7cc; font-size: .68rem; letter-spacing: .09em; text-transform: uppercase; }
.hy-product-color-summary > div:first-child strong { font-family: var(--hy-mono); font-size: 1rem; font-weight: 500; font-variant-numeric: tabular-nums; line-height: 1; }
.hy-product-color-preview { display: flex; justify-content: center; }
.hy-product-color-preview > span { width: 2.15rem; height: 2.15rem; display: grid; place-items: center; overflow: hidden; margin-left: -.35rem; border: 2px solid var(--hy-ink); background: var(--hy-swatch, #dceaff); clip-path: polygon(0 0,78% 0,78% 10%,100% 10%,100% 100%,22% 100%,22% 90%,0 90%); }
.hy-product-color-preview img { width: 100%; height: 100%; object-fit: cover; }
.hy-product-color-summary > a { display: inline-flex; gap: .35rem; align-items: center; color: var(--hy-white); font-family: var(--hy-display); font-size: .76rem; font-weight: 700; letter-spacing: .06em; text-decoration: none; text-transform: uppercase; white-space: nowrap; }
.hy-product-actions { position: relative; z-index: 1; display: flex; flex-wrap: wrap; gap: .75rem; }
.hy-product-action { min-height: 3.15rem; display: inline-flex; align-items: center; justify-content: center; padding: .85rem 1.25rem; border: 1px solid var(--hy-white); border-radius: 999px; font-family: var(--hy-display); font-size: .88rem; font-weight: 700; letter-spacing: .05em; text-decoration: none; text-transform: uppercase; transition: transform 160ms ease, background-color 160ms ease; }
.hy-product-action:hover { transform: translateY(-1px); }
.hy-product-action--signal { border-color: var(--hy-signal); background: var(--hy-signal); color: var(--hy-ink); }
.hy-product-action--outline { background: transparent; color: var(--hy-white); }
.hy-product-action-note { position: relative; z-index: 1; max-width: 48ch; margin: -.5rem 0 0; color: #8fa7cc; font-size: .74rem; }
.hy-product-support { border-block: 1px solid var(--hy-rule); background: var(--hy-white); }
.hy-product-support .hy-shell { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); }
.hy-product-support span { min-height: 6rem; display: flex; align-items: center; padding: 1rem 1.4rem 1rem 2.2rem; border-right: 1px solid var(--hy-rule); font-size: .82rem; font-weight: 600; }
.hy-product-support span:last-child { border-right: 0; }
.hy-product-support span::before { width: .65rem; height: .65rem; flex: 0 0 auto; margin-right: .8rem; background: var(--hy-navy); clip-path: polygon(0 0,100% 0,100% 100%,35% 100%,35% 65%,0 65%); content: ""; }
.hy-product-overview { display: grid; grid-template-columns: minmax(0,.9fr) minmax(28rem,1.1fr); gap: clamp(1.5rem, 4vw, 3rem); align-items: start; padding-block: clamp(2.5rem, 5vw, 4rem); }
.hy-product-overview__intro { position: sticky; top: 7rem; display: grid; gap: 1.4rem; }
.hy-product-overview__intro .hy-heading { max-width: 15ch; font-size: clamp(2.5rem,3.6vw,4.2rem); }
.hy-product-richtext { color: var(--hy-ink-soft); }
.hy-product-feature-list { display: grid; }
.hy-product-feature-list article { display: grid; grid-template-columns: 2rem 1fr; gap: 1.2rem; padding-block: 2rem; border-bottom: 1px solid var(--hy-rule); }
.hy-product-feature-list article:first-child { border-top: 1px solid var(--hy-rule); }
.hy-product-feature-mark { width: 1rem; height: 1rem; margin-top: .35rem; background: var(--hy-signal); clip-path: polygon(0 0,100% 0,100% 72%,72% 72%,72% 100%,0 100%); }
.hy-product-feature-list h3 { margin: 0 0 .6rem; font-family: var(--hy-display); font-size: clamp(1.65rem,2.4vw,2.2rem); font-weight: 700; line-height: 1.08; }
.hy-product-feature-list p { margin: 0; color: var(--hy-ink-soft); }
.hy-product-applications { padding-block: clamp(2.5rem, 5vw, 4rem); background: var(--hy-navy); color: var(--hy-white); }
.hy-product-applications__grid { display: grid; grid-template-columns: minmax(0,.85fr) minmax(28rem,1.15fr); gap: clamp(1.5rem, 4vw, 3rem); align-items: center; }
.hy-product-applications .hy-eyebrow { color: var(--hy-signal); }
.hy-product-applications .hy-heading { max-width: 13ch; }
.hy-product-application-list { display: flex; flex-wrap: wrap; gap: .7rem; }
.hy-product-application-list a, .hy-product-application-list > span { min-height: 3.2rem; display: inline-flex; gap: 1rem; align-items: center; justify-content: space-between; padding: .8rem 1.15rem; border: 1px solid rgba(255,255,255,.48); border-radius: 999px; color: var(--hy-white); font-weight: 600; text-decoration: none; }
.hy-product-application-list a:hover { border-color: var(--hy-signal); background: var(--hy-signal); color: var(--hy-ink); }
.hy-product-applications__empty { max-width: 42ch; color: #d9e4f7; font-size: 1.1rem; }
.hy-product-disclaimer { max-width: 58ch; margin: 1.5rem 0 0; color: #d9e4f7; font-size: .75rem; }
.hy-product-colorways { scroll-margin-top: 6rem; padding-block: clamp(2.5rem, 5vw, 4rem); border-bottom: 1px solid var(--hy-rule); background: linear-gradient(180deg,var(--hy-paper-alt),#eff5ff 62%,var(--hy-paper)); }
.hy-product-colorways__head { display: grid; grid-template-columns: minmax(0,1fr); gap: 2rem; align-items: end; padding-bottom: 1.4rem; border-bottom: 1px solid color-mix(in srgb, var(--hy-blue) 34%, var(--hy-rule)); }
.hy-product-colorways__head > div:first-child { display: grid; gap: 1rem; }
.hy-product-colorways__head .hy-heading { max-width: none; }
.hy-product-colorways__intro { max-width: 72ch; margin: 1.5rem 0 2.5rem; color: var(--hy-ink-soft); }
.hy-colorway-grid { display: grid; grid-template-columns: repeat(7,minmax(0,1fr)); gap: .8rem; }
.hy-colorway-card { min-width: 0; margin: 0; overflow: hidden; border: 1px solid var(--hy-rule); background: var(--hy-white); transition: border-color 160ms ease, transform 160ms ease; }
.hy-colorway-card:hover { border-color: var(--hy-blue); transform: translateY(-2px); }
.hy-colorway-card__media { aspect-ratio: 1; overflow: hidden; border-bottom: 1px solid var(--hy-rule); background: var(--hy-swatch, #eef4fb); }
.hy-colorway-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform 240ms ease; }
.hy-colorway-card:hover .hy-colorway-card__media img { transform: scale(1.025); }
.hy-colorway-card figcaption { min-height: 4.5rem; display: grid; align-content: center; gap: .15rem; padding: .75rem; }
.hy-colorway-card figcaption strong { font-family: var(--hy-mono); font-size: .88rem; font-weight: 500; line-height: 1.15; }
.hy-colorway-card figcaption span { color: #607087; font-size: .68rem; letter-spacing: .05em; }
.hy-colorway-groups { display: grid; gap: .8rem; }
.hy-colorway-groups details { border: 1px solid var(--hy-rule); background: var(--hy-white); }
.hy-colorway-groups summary { min-height: 4.6rem; display: flex; gap: 1rem; align-items: center; justify-content: space-between; padding: 1rem 1.25rem; cursor: pointer; list-style: none; }
.hy-colorway-groups summary::-webkit-details-marker { display: none; }
.hy-colorway-groups summary span { font-family: var(--hy-display); font-size: 1.5rem; font-weight: 700; }
.hy-colorway-groups summary strong { color: var(--hy-blue); font-size: .75rem; letter-spacing: .06em; text-transform: uppercase; }
.hy-colorway-groups details[open] summary { border-bottom: 1px solid var(--hy-rule); }
.hy-colorway-groups details .hy-colorway-grid { padding: 1rem; }
.hy-product-colorways__note { display: grid; grid-template-columns: 2rem minmax(0,1fr) auto; gap: 1rem; align-items: center; margin-top: 1.5rem; padding: 1rem 1.2rem; border: 1px solid var(--hy-rule); background: rgba(255,255,255,.72); }
.hy-product-colorways__note > span { width: 1.65rem; height: 1.65rem; display: grid; place-items: center; border-radius: 50%; background: var(--hy-navy); color: var(--hy-white); font-family: var(--hy-display); font-weight: 700; }
.hy-product-colorways__note p { margin: 0; color: #607087; font-size: .76rem; }
.hy-product-colorways__note a { color: var(--hy-blue); font-family: var(--hy-display); font-size: .8rem; font-weight: 700; letter-spacing: .05em; text-decoration: none; text-transform: uppercase; }
.hy-product-technical { padding-block: clamp(2.5rem, 5vw, 4rem); }
.hy-product-technical__head { display: grid; gap: 1rem; margin-bottom: 2.6rem; padding-bottom: 1.4rem; border-bottom: 1px solid var(--hy-rule); }
.hy-product-technical__head .hy-heading { max-width: none; }
.hy-product-technical__grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.2rem; }
.hy-product-data-card { min-width: 0; padding: clamp(1.6rem,3.5vw,3rem); border: 1px solid var(--hy-rule); background: var(--hy-white); }
.hy-product-data-card--accent { background: var(--hy-paper-alt); }
.hy-product-data-card__label { margin: 0 0 1.2rem; color: var(--hy-blue); font-family: var(--hy-display); font-size: .84rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.hy-product-data-card dl { margin: 0; }
.hy-product-data-card dl > div { display: grid; grid-template-columns: minmax(8rem,.7fr) minmax(0,1.3fr); gap: 1rem; padding-block: .95rem; border-top: 1px solid var(--hy-rule); }
.hy-product-data-card dt { color: #67768a; font-size: .8rem; }
.hy-product-data-card dd { margin: 0; font-family: var(--hy-mono); font-size: .96rem; font-weight: 500; font-variant-numeric: tabular-nums; line-height: 1.35; }
.hy-product-data-card .hy-product-disclaimer { color: #67768a; }
.hy-product-downloads { display: flex; flex-wrap: wrap; gap: 1rem; align-items: center; margin-top: 1.2rem; padding: 1.3rem; border: 1px solid var(--hy-rule); background: var(--hy-white); }
.hy-product-downloads .hy-product-data-card__label { margin: 0 auto 0 0; }
.hy-product-downloads a { font-weight: 600; }
.hy-product-related { padding-block: clamp(2.5rem, 5vw, 4rem); background: var(--hy-white); }
.hy-product-related__head { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 2rem; align-items: start; margin-bottom: 2.5rem; padding-bottom: 1.4rem; border-bottom: 1px solid var(--hy-rule); }
.hy-product-related__head > div { display: grid; gap: 1rem; }
.hy-product-related__head .hy-heading { max-width: none; }
.hy-product-related__head > a { color: var(--hy-blue); font-family: var(--hy-display); font-weight: 700; letter-spacing: .05em; text-decoration: none; text-transform: uppercase; }
.hy-product-related__grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.2rem; }
.hy-related-card { min-width: 0; }
.hy-related-card__image { display: block; overflow: hidden; border: 1px solid var(--hy-rule); background: var(--hy-paper-alt); }
.hy-related-card__image img { width: 100%; aspect-ratio: 1; object-fit: contain; transition: transform 180ms ease; }
.hy-related-card:hover .hy-related-card__image img { transform: scale(1.025); }
.hy-related-card > div { padding-top: 1rem; }
.hy-related-card span { color: var(--hy-blue); font-size: .72rem; font-weight: 600; letter-spacing: .07em; text-transform: uppercase; }
.hy-related-card h3 { margin: .25rem 0 .55rem; font-family: var(--hy-display); font-size: 2rem; line-height: 1; }
.hy-related-card h3 a { text-decoration: none; }
.hy-related-card p { margin: 0; color: var(--hy-ink-soft); font-size: .86rem; }
.hy-product-inquiry { padding-block: clamp(2.5rem, 5vw, 4rem); background: var(--hy-navy); color: var(--hy-white); }
.hy-product-inquiry__grid { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(24rem,.9fr); gap: clamp(1.5rem, 4vw, 3rem); align-items: start; }
.hy-product-inquiry .hy-eyebrow { color: var(--hy-signal); }
.hy-product-inquiry .hy-heading { max-width: 14ch; margin-top: 1rem; }
.hy-product-inquiry__grid > div:last-child { display: grid; gap: 1.5rem; }
.hy-product-inquiry__grid p { margin: 0; color: #c5d1e4; font-size: 1.05rem; }
.hy-product-inquiry__grid a { width: fit-content; display: inline-flex; gap: 1rem; align-items: center; padding-bottom: .45rem; border-bottom: 2px solid var(--hy-signal); color: var(--hy-white); font-family: var(--hy-display); font-size: 1.08rem; font-weight: 700; letter-spacing: .06em; text-decoration: none; text-transform: uppercase; }
.hy-product-mobile-actions { display: none; }

.hy-product-hub { background: var(--hy-paper); }
.hy-product-hub-hero { position: relative; overflow: hidden; padding-top: clamp(7rem,12vw,11rem); background: var(--hy-paper-alt); }
.hy-product-hub-hero::before { position: absolute; top: -16rem; left: 50%; width: 64rem; height: 64rem; transform: translateX(-50%); border: 1px solid rgba(24,90,219,.16); border-radius: 50%; box-shadow: 0 0 0 7rem rgba(24,90,219,.035), 0 0 0 14rem rgba(24,90,219,.025); content: ""; pointer-events: none; }
.hy-product-hub-hero::after { position: absolute; right: 8%; bottom: 7.5rem; width: 10rem; height: .65rem; transform: skewX(-38deg); background: var(--hy-signal); box-shadow: -2.4rem 0 0 rgba(255,99,45,.34), -4.8rem 0 0 rgba(255,99,45,.16); content: ""; }
.hy-product-hub-hero__inner { position: relative; z-index: 1; display: grid; justify-items: center; text-align: center; }
.hy-product-hub-hero .hy-display { max-width: 13ch; margin-top: 1.2rem; font-size: clamp(3.5rem,6vw,6.25rem); }
.hy-product-hub-hero .hy-lede { max-width: 46rem; margin: 1.4rem auto clamp(3.5rem,6vw,5.5rem); }
.hy-product-hub-scope { width: 100%; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border: 1px solid rgba(24,90,219,.3); border-bottom: 0; background: rgba(248,250,252,.74); text-align: left; backdrop-filter: blur(10px); }
.hy-product-hub-scope span { min-height: 6.5rem; display: grid; grid-template-columns: minmax(5.5rem,auto) 1fr; gap: .8rem; align-items: center; padding: 1.2rem clamp(1rem,2.5vw,2rem); border-right: 1px solid rgba(24,90,219,.22); color: var(--hy-ink-soft); font-size: .8rem; text-transform: uppercase; }
.hy-product-hub-scope span:last-child { border-right: 0; }
.hy-product-hub-scope strong { color: var(--hy-blue); font-family: var(--hy-display); font-size: clamp(1.25rem,2vw,1.7rem); font-weight: 700; line-height: 1; }
.hy-system-selector { padding-block: clamp(5rem,9vw,9rem); }
.hy-system-selector__head { display: grid; grid-template-columns: minmax(0,1fr) minmax(20rem,31rem); gap: clamp(3rem,9vw,9rem); align-items: end; margin-bottom: 2rem; padding-bottom: 1.5rem; border-bottom: 1px solid var(--hy-rule); }
.hy-system-selector__head > div { display: grid; gap: 1rem; }
.hy-system-selector__head .hy-heading { max-width: 15ch; }
.hy-system-selector__head > p { margin: 0; color: var(--hy-ink-soft); }
.hy-system-grid { display: grid; grid-template-columns: repeat(14,minmax(0,1fr)); grid-template-rows: repeat(2,minmax(21rem,1fr)); gap: 1rem; }
.hy-system-card { position: relative; min-width: 0; min-height: 21rem; display: grid; overflow: hidden; border: 1px solid var(--hy-rule); background: var(--hy-navy); color: var(--hy-white); isolation: isolate; }
.hy-system-card--interlocking-flooring { grid-column: 1 / 9; grid-row: 1 / 3; }
.hy-system-card--pvc-vinyl-flooring { grid-column: 9 / 15; grid-row: 1; }
.hy-system-card--turf { grid-column: 9 / 12; grid-row: 2; }
.hy-system-card--rubber-mats { grid-column: 12 / 15; grid-row: 2; }
.hy-system-card__media, .hy-system-card__body { grid-area: 1 / 1; }
.hy-system-card__media { position: absolute; inset: 0; }
.hy-system-card__media::after { position: absolute; inset: 0; background: linear-gradient(180deg,rgba(16,42,67,.08) 20%,rgba(16,42,67,.9) 88%); content: ""; }
.hy-system-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform 420ms cubic-bezier(.2,.7,.2,1); }
.hy-system-card:hover .hy-system-card__media img { transform: scale(1.035); }
.hy-system-card__media > span { position: absolute; z-index: 2; top: 1rem; left: 1rem; padding: .42rem .65rem; background: var(--hy-signal); color: var(--hy-ink); font-family: var(--hy-display); font-size: .68rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.hy-system-card.is-planned .hy-system-card__media > span { background: rgba(16,42,67,.86); color: var(--hy-white); }
.hy-system-card__body { position: relative; z-index: 2; min-width: 0; display: flex; flex-direction: column; justify-content: end; padding: 5rem clamp(1.35rem,3vw,2.5rem) 2rem; pointer-events: none; }
.hy-system-card__categories { margin: 0 0 1rem; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: .5rem 1rem; }
.hy-system-card__categories a { display: inline-block; padding: .25rem 0; color: var(--hy-white); font-size: .875rem; line-height: 1.45; text-underline-offset: .2em; pointer-events: auto; }
.hy-system-card__categories a:focus-visible { outline: 2px solid var(--hy-signal); outline-offset: 3px; }
.hy-system-card__placeholder { position: absolute; top: 4rem; left: 1.5rem; margin: 0; color: #d8e4f7; font-size: .8rem; }
.hy-system-card__body > p { margin: 0; color: #d8e4f7; font-size: .7rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
.hy-system-card__body h3 { max-width: 14ch; margin: .35rem 0 .7rem; font-family: var(--hy-display); font-size: clamp(1.9rem,3.2vw,3.2rem); font-weight: 700; line-height: 1; }
.hy-system-card__description { max-width: 42ch; color: #dce5f2; font-size: .88rem; line-height: 1.5; }
.hy-system-card__body > strong { margin-top: .8rem; color: var(--hy-signal); font-family: var(--hy-mono); font-size: .72rem; font-weight: 500; }
.hy-system-card__actions { margin-top: 1.1rem; }
.hy-system-card__actions a { width: fit-content; display: inline-flex; gap: .5rem; padding-bottom: .3rem; border-bottom: 1px solid var(--hy-signal); color: var(--hy-white); font-family: var(--hy-display); font-size: .78rem; font-weight: 700; letter-spacing: .06em; text-decoration: none; text-transform: uppercase; pointer-events: auto; }
.hy-system-card__source { width: fit-content; margin-top: .8rem; color: rgba(255,255,255,.58); font-size: .58rem; line-height: 1.3; pointer-events: auto; }
.hy-system-card--turf .hy-system-card__body, .hy-system-card--rubber-mats .hy-system-card__body { padding: 5rem 1.25rem 1.25rem; }
.hy-system-card--turf .hy-system-card__body h3, .hy-system-card--rubber-mats .hy-system-card__body h3 { font-size: clamp(1.75rem,2.5vw,2.5rem); }
.hy-system-card--turf .hy-system-card__description, .hy-system-card--rubber-mats .hy-system-card__description { display: none; }
.hy-system-card--turf .hy-system-card__body > strong, .hy-system-card--rubber-mats .hy-system-card__body > strong { font-size: .62rem; }
.hy-system-card--turf .hy-system-card__placeholder { left: 1.25rem; right: 1.25rem; font-size: .7rem; }
.hy-project-fit { padding-block: clamp(5rem,9vw,9rem); background: var(--hy-navy); color: var(--hy-white); }
.hy-project-fit__head { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 2rem; align-items: end; margin-bottom: 2rem; padding-bottom: 1.5rem; border-bottom: 1px solid rgba(255,255,255,.3); }
.hy-project-fit .hy-eyebrow { color: var(--hy-signal); }
.hy-project-fit .hy-heading { max-width: 15ch; }
.hy-project-fit__grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); border-top: 1px solid rgba(255,255,255,.28); border-left: 1px solid rgba(255,255,255,.28); }
.hy-project-fit__grid article { min-height: 0; display: grid; grid-template-rows: auto auto auto; align-content: start; padding: clamp(1.3rem,2.5vw,2.1rem); border-right: 1px solid rgba(255,255,255,.28); border-bottom: 1px solid rgba(255,255,255,.28); }
.hy-project-fit__grid span { color: #bdcbea; font-size: .68rem; letter-spacing: .08em; text-transform: uppercase; }
.hy-project-fit__grid strong { max-width: 12ch; margin-top: .75rem; font-family: var(--hy-display); font-size: clamp(1.75rem,2.4vw,2.5rem); line-height: 1; }
.hy-project-fit__grid p { max-width: 29ch; margin: .75rem 0 0; color: #dce6f7; font-size: .82rem; }
.hy-product-hub-logic { padding-block: clamp(5rem,9vw,9rem); background: var(--hy-white); }
.hy-product-hub-logic > .hy-shell { display: grid; grid-template-columns: minmax(0,.9fr) minmax(30rem,1.1fr); gap: clamp(1.5rem, 4vw, 3rem); align-items: start; }
.hy-product-hub-logic > .hy-shell > div { display: grid; gap: 1rem; }
.hy-product-hub-logic ol { margin: 0; padding: 0; border-top: 1px solid var(--hy-rule); list-style: none; }
.hy-product-hub-logic li { display: grid; grid-template-columns: minmax(8rem,.5fr) minmax(0,1.5fr); gap: 2rem; padding-block: 1.5rem; border-bottom: 1px solid var(--hy-rule); }
.hy-product-hub-logic li span { font-family: var(--hy-display); font-size: 1.4rem; font-weight: 700; }
.hy-product-hub-logic li p { margin: 0; color: var(--hy-ink-soft); }
.hy-product-hub-cta { background: var(--hy-navy); }

.hy-product-archive { background: var(--hy-paper); }
.hy-product-archive-hero { overflow: hidden; padding-top: clamp(6rem,10vw,9rem); background: var(--hy-navy); color: var(--hy-white); }
.hy-product-archive-hero__inner { position: relative; display: grid; justify-items: center; text-align: center; }
.hy-product-archive-hero__inner::before, .hy-product-archive-hero__inner::after { position: absolute; border: 1px solid rgba(220,234,255,.1); border-radius: 50%; content: ""; pointer-events: none; }
.hy-product-archive-hero__inner::before { top: -15rem; left: -22rem; width: 34rem; height: 34rem; box-shadow: 0 0 0 5rem rgba(220,234,255,.025), 0 0 0 10rem rgba(220,234,255,.018); }
.hy-product-archive-hero__inner::after { right: -25rem; bottom: 3rem; width: 38rem; height: 38rem; box-shadow: 0 0 0 5rem rgba(220,234,255,.025); }
.hy-product-archive-hero .hy-eyebrow { position: relative; z-index: 1; color: var(--hy-signal); }
.hy-product-archive-hero .hy-display { position: relative; z-index: 1; max-width: 14ch; margin-top: 1.1rem; font-size: clamp(3.5rem,6vw,6.15rem); }
.hy-product-archive-hero .hy-lede { position: relative; z-index: 1; max-width: 48rem; margin: 1.4rem auto clamp(3.5rem,7vw,6rem); color: #c8d5e9; }
.hy-product-family-index { position: relative; z-index: 2; width: 100%; display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); border: 1px solid rgba(255,255,255,.2); border-bottom: 0; text-align: left; }
.hy-product-family-index a { min-width: 0; min-height: 7.5rem; display: grid; grid-template-columns: 1fr; gap: .7rem; align-content: center; align-items: center; padding: 1.2rem; border-right: 1px solid rgba(255,255,255,.2); color: var(--hy-white); text-decoration: none; transition: background-color 160ms ease, color 160ms ease; }
.hy-product-family-index a:last-child { border-right: 0; }
.hy-product-family-index a:hover { background: var(--hy-signal); color: var(--hy-ink); }
.hy-product-family-index strong { max-width: 15ch; font-family: var(--hy-display); font-size: 1.05rem; font-weight: 700; line-height: 1.08; }
.hy-product-catalogue { padding-block: clamp(2.5rem, 5vw, 4rem); }
.hy-product-range { scroll-margin-top: 6rem; }
.hy-product-range + .hy-product-range { margin-top: clamp(5.5rem,10vw,10rem); }
.hy-product-range__head { display: grid; grid-template-columns: minmax(0,1fr) minmax(18rem,32rem); gap: clamp(2rem,8vw,8rem); align-items: start; margin-bottom: 2rem; padding-bottom: 1.5rem; border-bottom: 1px solid var(--hy-rule); }
.hy-product-range__head > div:first-child { display: grid; gap: .85rem; }
.hy-product-range__head .hy-heading { max-width: none; }
.hy-product-range__summary { display: grid; grid-template-columns: 1fr; gap: 1rem; align-items: end; }
.hy-product-range__summary p { margin: 0; color: var(--hy-ink-soft); font-size: .92rem; }
.hy-product-range__summary strong { padding-left: 1rem; border-left: 1px solid var(--hy-blue); color: var(--hy-blue); font-family: var(--hy-mono); font-size: .78rem; font-weight: 500; letter-spacing: .04em; white-space: nowrap; }
.hy-product-archive-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1rem; }
.hy-product-archive-card { min-width: 0; overflow: hidden; border: 1px solid var(--hy-rule); background: var(--hy-white); transition: border-color 160ms ease, transform 160ms ease, box-shadow 160ms ease; }
.hy-product-archive-card:hover { border-color: var(--hy-blue); transform: translateY(-3px); box-shadow: 0 1rem 2.5rem rgba(8,20,38,.08); }
.hy-product-archive-card__media { min-height: 0; display: grid; place-items: center; overflow: hidden; aspect-ratio: 1.08 / 1; border-bottom: 1px solid var(--hy-rule); background: linear-gradient(145deg,#eef4ff,var(--hy-paper-alt)); text-decoration: none; }
.hy-product-archive-card__media img { width: 88%; height: 88%; object-fit: contain; transition: transform 220ms ease; }
.hy-product-archive-card:hover .hy-product-archive-card__media img { transform: scale(1.035); }
.hy-product-archive-card__media > span { max-width: 16ch; color: #617086; font-size: .76rem; text-align: center; }
.hy-product-archive-card__body { min-height: 19rem; display: flex; flex-direction: column; padding: 1.25rem; }
.hy-product-archive-card__meta { display: flex; gap: .7rem; align-items: center; justify-content: space-between; }
.hy-product-archive-card__meta span { color: var(--hy-blue); font-family: var(--hy-mono); font-size: .8rem; font-weight: 500; }
.hy-product-archive-card__meta small { overflow: hidden; color: #68768a; font-size: .64rem; letter-spacing: .07em; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap; }
.hy-product-archive-card h3 { margin: .65rem 0 1.1rem; font-family: var(--hy-display); font-size: clamp(1.65rem,2.4vw,2.15rem); font-weight: 700; line-height: 1.03; }
.hy-product-archive-card h3 a { text-decoration: none; }
.hy-product-archive-card dl { margin: 0; border-block: 1px solid var(--hy-rule); }
.hy-product-archive-card dl > div { display: grid; grid-template-columns: .8fr 1.2fr; gap: .6rem; padding-block: .55rem; }
.hy-product-archive-card dl > div + div { border-top: 1px solid var(--hy-rule); }
.hy-product-archive-card dt { color: #68768a; font-size: .69rem; text-transform: uppercase; }
.hy-product-archive-card dd { margin: 0; overflow-wrap: anywhere; font-family: var(--hy-mono); font-size: .73rem; font-weight: 500; line-height: 1.35; text-align: right; }
.hy-product-archive-card__body > p { margin: .85rem 0 1rem; color: #68768a; font-size: .74rem; }
.hy-product-archive-card__link { width: fit-content; display: inline-flex; gap: .45rem; align-items: center; margin-top: auto; padding-bottom: .25rem; border-bottom: 1px solid var(--hy-blue); color: var(--hy-blue); font-family: var(--hy-display); font-size: .78rem; font-weight: 700; letter-spacing: .06em; text-decoration: none; text-transform: uppercase; }
.hy-product-archive-cta { padding-block: clamp(2.5rem, 5vw, 4rem); background: var(--hy-navy); color: var(--hy-white); }
.hy-product-archive-cta > .hy-shell { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(22rem,.9fr); gap: clamp(1.5rem, 4vw, 3rem); align-items: start; }
.hy-product-archive-cta .hy-eyebrow { color: var(--hy-signal); }
.hy-product-archive-cta .hy-heading { max-width: 16ch; margin-top: 1rem; }
.hy-product-archive-cta > .hy-shell > div:last-child { display: grid; gap: 1.4rem; }
.hy-product-archive-cta p { margin: 0; color: #dbe6f8; }
.hy-product-archive-cta a { width: fit-content; padding-bottom: .4rem; border-bottom: 2px solid var(--hy-signal); color: var(--hy-white); font-family: var(--hy-display); font-size: .9rem; font-weight: 700; letter-spacing: .06em; text-decoration: none; text-transform: uppercase; }

/* Applications — an application-led specification guide. */
.hy-application-page { background: var(--hy-paper); }
.hy-application-breadcrumb { min-height: 3.8rem; display: flex; flex-wrap: wrap; gap: .6rem; align-items: center; color: #617086; font-size: .72rem; font-weight: 600; letter-spacing: .07em; text-transform: uppercase; }
.hy-application-breadcrumb a { text-decoration: none; }
.hy-application-breadcrumb a:hover { color: var(--hy-blue); }
.hy-application-hero { min-height: 44rem; display: grid; grid-template-columns: minmax(0,1.08fr) minmax(25rem,.92fr); overflow: hidden; background: var(--hy-navy); color: var(--hy-white); }
.hy-application-hero__copy { min-width: 0; display: grid; align-content: start; gap: 1.5rem; padding: clamp(3.5rem,7vw,7rem) clamp(2rem,7vw,7rem); }
.hy-application-hero__copy > div:first-child { max-width: 54rem; display: grid; gap: 1.4rem; }
.hy-application-hero .hy-eyebrow { color: var(--hy-signal); }
.hy-application-hero h1 { max-width: 18ch; margin: 0; font-family: var(--hy-display); font-size: clamp(3.1rem,4.4vw,5rem); font-weight: 700; letter-spacing: -.03em; line-height: .98; }
.hy-application-hero__lede { max-width: 54ch; margin: 0; color: #cbd9ef; font-size: clamp(1.03rem,1.5vw,1.23rem); }
.hy-application-hero__actions { display: flex; flex-wrap: wrap; gap: .8rem; }
.hy-application-action { min-height: 3.2rem; display: inline-flex; gap: .8rem; align-items: center; justify-content: center; padding: .82rem 1.35rem; border: 1px solid rgba(255,255,255,.45); color: var(--hy-white); font-family: var(--hy-display); font-size: .82rem; font-weight: 700; letter-spacing: .07em; text-decoration: none; text-transform: uppercase; transition: border-color 160ms ease, transform 160ms ease; }
.hy-application-action:hover { border-color: var(--hy-white); transform: translateY(-2px); }
.hy-application-action--signal { border-color: var(--hy-signal); background: var(--hy-signal); color: var(--hy-ink); }
.hy-application-scope { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); border-block: 1px solid rgba(255,255,255,.18); }
.hy-application-scope > div { min-width: 0; display: grid; gap: .35rem; padding: 1rem 1rem 1rem 0; border-right: 1px solid rgba(255,255,255,.18); }
.hy-application-scope > div + div { padding-left: 1rem; }
.hy-application-scope > div:last-child { border-right: 0; }
.hy-application-scope span { color: var(--hy-signal); font-family: var(--hy-mono); font-size: .66rem; letter-spacing: .08em; text-transform: uppercase; }
.hy-application-scope strong { color: #d7e3f6; font-size: .77rem; font-weight: 600; line-height: 1.35; }
.hy-application-hero__media { position: relative; min-width: 0; min-height: 44rem; margin: 0; overflow: hidden; background: var(--hy-navy); }
.hy-application-hero__media::before { position: absolute; z-index: 2; inset: 2rem; border: 1px solid rgba(255,255,255,.28); content: ""; pointer-events: none; }
.hy-application-hero__media::after { position: absolute; z-index: 2; inset: 0; background: linear-gradient(180deg,rgba(16,42,67,.06),rgba(16,42,67,.62)); content: ""; pointer-events: none; }
.hy-application-hero__media img { width: 100%; height: 100%; object-fit: cover; }
.hy-application-hero__media figcaption { position: absolute; z-index: 3; right: 3rem; bottom: 3rem; left: 3rem; display: grid; gap: .35rem; padding-top: 1rem; border-top: 2px solid var(--hy-signal); }
.hy-application-hero__media figcaption span { color: #d9e5f5; font-size: .7rem; letter-spacing: .1em; text-transform: uppercase; }
.hy-application-hero__media figcaption strong { font-family: var(--hy-display); font-size: clamp(1.8rem,3vw,3rem); line-height: 1; }

.hy-application-index { padding-block: clamp(2.5rem, 5vw, 4rem); }
.hy-application-index__head { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(20rem,.9fr); gap: clamp(2rem,7vw,7rem); align-items: start; margin-bottom: 3rem; }
.hy-application-index__head h2, .hy-application-profiles__head h2, .hy-application-systems__head h2, .hy-application-products__head h2, .hy-application-checkpoints h2, .hy-application-planning h2, .hy-application-related h2, .hy-application-faq h2, .hy-application-cta h2 { max-width: 18ch; margin: .75rem 0 0; font-family: var(--hy-display); font-size: clamp(2.35rem,3.4vw,3.8rem); font-weight: 700; letter-spacing: -.02em; line-height: 1.01; }
.hy-application-index__head > p, .hy-application-systems__head > p { max-width: 52ch; margin: 0; color: var(--hy-ink-soft); }
.hy-application-index__grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.4rem; }
.hy-application-card { min-width: 0; display: grid; grid-template-rows: auto 1fr; border: 1px solid var(--hy-rule); background: var(--hy-white); transition: transform 180ms ease, box-shadow 180ms ease; }
.hy-application-card:hover { transform: translateY(-3px); box-shadow: 0 1rem 2.6rem rgba(8,20,38,.09); }
.hy-application-card__media { position: relative; min-height: 16rem; display: block; overflow: hidden; background: var(--hy-paper-alt); }
.hy-application-card__media::after { position: absolute; right: 1rem; bottom: 1rem; width: 3rem; height: 3rem; border-right: 2px solid var(--hy-signal); border-bottom: 2px solid var(--hy-signal); content: ""; }
.hy-application-card__media img { width: 100%; height: 100%; aspect-ratio: 4/3; object-fit: cover; transition: transform 400ms cubic-bezier(.16,1,.3,1); }
.hy-application-card:hover img { transform: scale(1.035); }
.hy-application-card__media > span { position: absolute; z-index: 2; top: 1rem; left: 1rem; padding: .35rem .55rem; background: var(--hy-signal); color: var(--hy-ink); font-family: var(--hy-mono); font-size: .62rem; letter-spacing: .08em; text-transform: uppercase; }
.hy-application-card__body { min-height: 17rem; display: flex; flex-direction: column; padding: 1.5rem; }
.hy-application-card h3 { margin: 0; font-family: var(--hy-display); font-size: clamp(1.8rem,2.5vw,2.35rem); font-weight: 700; line-height: 1.04; }
.hy-application-card h3 a { text-decoration: none; }
.hy-application-card p { margin: 1rem 0 1.4rem; color: #58677b; font-size: .9rem; }
.hy-application-card__link { width: fit-content; display: inline-flex; gap: .5rem; margin-top: auto; padding-bottom: .25rem; border-bottom: 1px solid var(--hy-blue); color: var(--hy-blue); font-family: var(--hy-display); font-size: .75rem; font-weight: 700; letter-spacing: .06em; text-decoration: none; text-transform: uppercase; }

.hy-application-guide { padding-block: clamp(2.5rem, 5vw, 4rem); border-top: 1px solid var(--hy-rule); background: #f1f5fb; scroll-margin-top: 5rem; }
.hy-application-guide__layout { display: grid; grid-template-columns: minmax(15rem,.32fr) minmax(0,.68fr); gap: clamp(1.5rem, 4vw, 3rem); align-items: start; }
.hy-application-guide__nav { position: sticky; top: 7rem; }
.hy-application-guide__nav nav { display: grid; margin-top: 1.2rem; border-top: 1px solid var(--hy-rule); }
.hy-application-guide__nav a { display: grid; grid-template-columns: 1.6rem 1fr; gap: .6rem; padding: .8rem 0; border-bottom: 1px solid var(--hy-rule); color: var(--hy-ink-soft); font-size: .78rem; font-weight: 600; line-height: 1.35; text-decoration: none; }
.hy-application-guide__nav a:hover { color: var(--hy-blue); }
.hy-application-guide__nav a span { color: var(--hy-signal); font-family: var(--hy-mono); }
.hy-application-guide__content { display: grid; }
.hy-application-module { position: relative; padding: 0 0 2rem 2rem; scroll-margin-top: 7rem; }
.hy-application-module + .hy-application-module { padding-top: 2rem; border-top: 1px solid var(--hy-rule); }
.hy-application-module::before { position: absolute; top: .2rem; bottom: 0; left: 0; width: 3px; background: linear-gradient(var(--hy-signal) 0 5rem,var(--hy-rule) 5rem); content: ""; }
.hy-application-module + .hy-application-module::before { top: calc(2rem + .2rem); }
.hy-application-module__marker { margin: 0 0 1rem; color: var(--hy-blue); font-family: var(--hy-mono); font-size: .68rem; letter-spacing: .08em; text-transform: uppercase; }
.hy-application-module h2 { max-width: 20ch; margin: 0 0 1.5rem; font-family: var(--hy-display); font-size: clamp(2.15rem,3.1vw,3.25rem); font-weight: 700; letter-spacing: -.018em; line-height: 1.03; }
.hy-application-module > div { max-width: 64ch; color: #334258; font-size: clamp(1rem,1.2vw,1.1rem); }
.hy-application-module > div p { margin: 0 0 1.2rem; }

.hy-application-profiles { padding-block: clamp(2.5rem, 5vw, 4rem); background: var(--hy-navy); color: var(--hy-white); scroll-margin-top: 5rem; }
.hy-application-profiles__head { display: grid; grid-template-columns: minmax(0,1.08fr) minmax(20rem,.92fr); gap: clamp(2rem,7vw,7rem); align-items: start; margin-bottom: 3rem; }
.hy-application-profiles .hy-eyebrow { color: var(--hy-signal); }
.hy-application-profiles__head > p { max-width: 52ch; margin: 0; color: #c7d5ea; }
.hy-application-profile-table { overflow-x: auto; border-top: 2px solid var(--hy-signal); outline: none; }
.hy-application-profile-table:focus-visible { box-shadow: 0 0 0 3px rgba(255,192,0,.55); }
.hy-application-profile-table table { width: 100%; min-width: 52rem; border-collapse: collapse; table-layout: fixed; }
.hy-application-profile-table th, .hy-application-profile-table td { padding: 1.25rem 1.35rem; border-right: 1px solid rgba(255,255,255,.16); border-bottom: 1px solid rgba(255,255,255,.16); text-align: left; vertical-align: top; }
.hy-application-profile-table tr > *:last-child { border-right: 0; }
.hy-application-profile-table thead th { color: var(--hy-signal); font-family: var(--hy-mono); font-size: .65rem; font-weight: 600; letter-spacing: .09em; text-transform: uppercase; }
.hy-application-profile-table thead th:first-child { width: 22%; }
.hy-application-profile-table thead th:nth-child(2) { width: 31%; }
.hy-application-profile-table tbody th { font-family: var(--hy-display); font-size: 1.25rem; line-height: 1.05; }
.hy-application-profile-table tbody td { color: #d2deef; font-size: .88rem; }
.hy-application-profile-table tbody tr { transition: background-color 160ms ease; }
.hy-application-profile-table tbody tr:hover { background: rgba(255,255,255,.045); }

.hy-application-systems { padding-block: clamp(2.5rem, 5vw, 4rem); background: var(--hy-white); scroll-margin-top: 5rem; }
.hy-application-systems__head { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(20rem,.9fr); gap: clamp(2rem,7vw,7rem); align-items: start; margin-bottom: 3rem; }
.hy-application-system-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border-block: 1px solid var(--hy-rule); }
.hy-application-system-grid article { min-width: 0; min-height: 0; padding: 2rem; border-right: 1px solid var(--hy-rule); }
.hy-application-system-grid article:nth-child(3n) { border-right: 0; }
.hy-application-system-grid article:nth-child(n+4) { border-top: 1px solid var(--hy-rule); }
.hy-application-system-grid span { color: var(--hy-blue); font-family: var(--hy-mono); font-size: .66rem; letter-spacing: .08em; text-transform: uppercase; }
.hy-application-system-grid h3 { margin: .75rem 0 1rem; font-family: var(--hy-display); font-size: 2rem; font-weight: 700; line-height: 1; }
.hy-application-system-grid p { margin: 0; color: #58677b; font-size: .9rem; }

.hy-application-products { padding-block: clamp(2.5rem, 5vw, 4rem); border-top: 1px solid var(--hy-rule); background: var(--hy-paper); scroll-margin-top: 5rem; }
.hy-application-products__head { display: grid; grid-template-columns: minmax(0,1.08fr) minmax(20rem,.92fr); gap: clamp(2rem,7vw,7rem); align-items: start; margin-bottom: 3rem; }
.hy-application-products__head > div:last-child { display: grid; gap: 1.2rem; }
.hy-application-products__head p { max-width: 52ch; margin: 0; color: var(--hy-ink-soft); }
.hy-application-products__head a { width: fit-content; padding-bottom: .25rem; border-bottom: 1px solid var(--hy-blue); color: var(--hy-blue); font-family: var(--hy-display); font-size: .76rem; font-weight: 700; letter-spacing: .06em; text-decoration: none; text-transform: uppercase; }
.hy-application-product-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1rem; }
.hy-application-product-card { min-width: 0; display: grid; grid-template-rows: auto 1fr; border: 1px solid var(--hy-rule); background: var(--hy-white); transition: transform 180ms ease, box-shadow 180ms ease; }
.hy-application-product-card:hover { transform: translateY(-3px); box-shadow: 0 1rem 2.5rem rgba(8,20,38,.09); }
.hy-application-product-card__media { position: relative; aspect-ratio: 1; display: grid; place-items: center; overflow: hidden; padding: clamp(.65rem,1.4vw,1rem); background: var(--hy-paper-alt); }
.hy-application-product-card__media img { width: 100%; height: 100%; object-fit: contain; transition: transform 400ms cubic-bezier(.16,1,.3,1); }
.hy-application-product-card:hover img { transform: scale(1.018); }
.hy-application-product-card__media span { position: absolute; right: .75rem; bottom: .75rem; left: .75rem; padding: .55rem .65rem; background: rgba(16,42,67,.92); color: var(--hy-white); font-family: var(--hy-mono); font-size: .6rem; letter-spacing: .06em; line-height: 1.25; text-transform: uppercase; }
.hy-application-product-card__body { min-height: 18rem; display: flex; flex-direction: column; padding: 1.35rem; }
.hy-application-product-card__sku { margin: 0 0 .6rem; color: var(--hy-blue); font-family: var(--hy-mono); font-size: .7rem; font-weight: 700; letter-spacing: .08em; }
.hy-application-product-card h3 { margin: 0 0 1.2rem; font-family: var(--hy-display); font-size: clamp(1.5rem,2.2vw,2rem); line-height: 1.02; }
.hy-application-product-card h3 a { text-decoration: none; }
.hy-application-product-card dl { display: grid; gap: .55rem; margin: 0 0 1.4rem; }
.hy-application-product-card dl > div { display: grid; grid-template-columns: 4.2rem 1fr; gap: .6rem; padding-top: .55rem; border-top: 1px solid var(--hy-rule); }
.hy-application-product-card dt { color: #718096; font-family: var(--hy-mono); font-size: .6rem; letter-spacing: .06em; text-transform: uppercase; }
.hy-application-product-card dd { margin: 0; color: #35445a; font-size: .75rem; line-height: 1.35; }
.hy-application-product-card__link { width: fit-content; margin-top: auto; padding-bottom: .25rem; border-bottom: 1px solid var(--hy-blue); color: var(--hy-blue); font-family: var(--hy-display); font-size: .72rem; font-weight: 700; letter-spacing: .055em; text-decoration: none; text-transform: uppercase; }

.hy-application-checkpoints { padding-block: clamp(2.5rem, 5vw, 4rem); background: var(--hy-navy); color: var(--hy-white); scroll-margin-top: 5rem; }
.hy-application-checkpoints__layout { display: grid; grid-template-columns: minmax(17rem,.34fr) minmax(0,.66fr); gap: clamp(1.5rem, 4vw, 3rem); align-items: start; }
.hy-application-checkpoints__intro { position: sticky; top: 7rem; }
.hy-application-checkpoints .hy-eyebrow { color: var(--hy-signal); }
.hy-application-checkpoints h2 { max-width: 14ch; font-size: clamp(2.25rem,3.1vw,3.5rem); }
.hy-application-checkpoints__intro > p:last-child { max-width: 37ch; margin: 1.5rem 0 0; color: #d8e4f6; }
.hy-application-checkpoint-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); border-top: 1px solid rgba(255,255,255,.25); border-left: 1px solid rgba(255,255,255,.25); }
.hy-application-checkpoint-grid article { min-height: 0; padding: 1.5rem; border-right: 1px solid rgba(255,255,255,.25); border-bottom: 1px solid rgba(255,255,255,.25); }
.hy-application-checkpoint-grid span { color: var(--hy-signal); font-family: var(--hy-mono); font-size: .63rem; letter-spacing: .08em; text-transform: uppercase; }
.hy-application-checkpoint-grid h3 { margin: 2rem 0 .8rem; font-family: var(--hy-display); font-size: 1.55rem; line-height: 1.03; }
.hy-application-checkpoint-grid p { margin: 0; color: #d9e5f5; font-size: .83rem; }
.hy-application-checkpoints + .hy-application-planning { border-top: 1px solid rgba(255,255,255,.3); }

.hy-application-planning { padding-block: clamp(2.5rem, 5vw, 4rem); background: var(--hy-navy); color: var(--hy-white); }
.hy-application-planning__grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(24rem,1fr); gap: clamp(1.5rem, 4vw, 3rem); align-items: start; }
.hy-application-planning .hy-eyebrow { color: var(--hy-signal); }
.hy-application-planning__copy { max-width: 60ch; display: grid; gap: 1.5rem; color: #e2ebfa; font-size: clamp(1rem,1.25vw,1.1rem); }
.hy-application-planning__copy p { margin: 0; }
.hy-application-planning__copy a { width: fit-content; padding-bottom: .35rem; border-bottom: 2px solid var(--hy-signal); color: var(--hy-white); font-family: var(--hy-display); font-size: .84rem; font-weight: 700; letter-spacing: .06em; text-decoration: none; text-transform: uppercase; }

.hy-application-related { padding-block: clamp(2.5rem, 5vw, 4rem); border-bottom: 1px solid var(--hy-rule); background: var(--hy-paper); }
.hy-application-related__head { display: grid; grid-template-columns: .35fr .65fr; gap: 2rem; align-items: start; margin-bottom: 2.5rem; }
.hy-application-related__head h2 { max-width: 18ch; font-size: clamp(2.2rem,3vw,3.4rem); }
.hy-application-related__links { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); border-top: 1px solid var(--hy-rule); border-left: 1px solid var(--hy-rule); }
.hy-application-related__links a { min-height: 6.5rem; display: flex; gap: 1rem; align-items: center; justify-content: space-between; padding: 1.2rem; border-right: 1px solid var(--hy-rule); border-bottom: 1px solid var(--hy-rule); font-family: var(--hy-display); font-size: 1.25rem; font-weight: 700; line-height: 1.05; text-decoration: none; }
.hy-application-related__links a:hover { background: var(--hy-paper-alt); color: var(--hy-blue); }
.hy-application-related__links span { color: var(--hy-signal); }

.hy-application-faq { padding-block: clamp(2.5rem, 5vw, 4rem); background: var(--hy-white); scroll-margin-top: 5rem; }
.hy-application-faq__grid { display: grid; grid-template-columns: minmax(18rem,.42fr) minmax(0,.58fr); gap: clamp(1.5rem, 4vw, 3rem); align-items: start; }
.hy-application-faq__grid > div:first-child { position: sticky; top: 7rem; }
.hy-application-faq__list { border-top: 1px solid var(--hy-rule); }
.hy-application-faq details { border-bottom: 1px solid var(--hy-rule); }
.hy-application-faq summary { min-height: 5rem; display: grid; grid-template-columns: 1fr auto; gap: 1.5rem; align-items: center; padding: 1rem 0; cursor: pointer; font-family: var(--hy-display); font-size: clamp(1.3rem,2vw,1.7rem); font-weight: 700; line-height: 1.12; list-style: none; }
.hy-application-faq summary::-webkit-details-marker { display: none; }
.hy-application-faq summary span { color: var(--hy-signal); font-family: var(--hy-body); font-size: 1.6rem; font-weight: 400; transition: transform 160ms ease; }
.hy-application-faq details[open] summary span { transform: rotate(45deg); }
.hy-application-faq details > div { max-width: 60ch; padding: 0 2.5rem 1.5rem 0; color: #58677b; }
.hy-application-faq details p { margin: 0; }

.hy-application-cta { padding-block: clamp(2.5rem, 5vw, 4rem); background: var(--hy-navy); color: var(--hy-white); }
.hy-application-cta__grid { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(22rem,.9fr); gap: clamp(1.5rem, 4vw, 3rem); align-items: start; }
.hy-application-cta .hy-eyebrow { color: var(--hy-signal); }
.hy-application-cta h2 { max-width: 22ch; font-size: clamp(2.25rem,3.2vw,3.55rem); }
.hy-application-cta__grid > div:last-child { display: grid; gap: 1.5rem; }
.hy-application-cta p { margin: 0; color: #c7d5ea; }
.hy-application-cta a { width: fit-content; display: inline-flex; gap: .8rem; align-items: center; padding: 1rem 1.35rem; background: var(--hy-signal); color: var(--hy-ink); font-family: var(--hy-display); font-size: .86rem; font-weight: 700; letter-spacing: .06em; text-decoration: none; text-transform: uppercase; }
.hy-application-mobile-actions { display: none; }

/* Project inquiry */
.hy-inquiry-page { background: var(--hy-paper); }
.hy-inquiry-hero { position: relative; overflow: hidden; padding-block: clamp(5rem,10vw,9rem); background: var(--hy-navy); color: var(--hy-white); }
.hy-inquiry-hero::before { position: absolute; inset: 0 0 0 54%; background: linear-gradient(135deg, rgba(24,90,219,.2), transparent 58%); clip-path: polygon(26% 0,100% 0,100% 100%,0 100%); content: ""; }
.hy-inquiry-hero::after { position: absolute; right: clamp(2rem,8vw,8rem); bottom: -7rem; width: clamp(14rem,30vw,29rem); aspect-ratio: 1; border: 1px solid rgba(255,255,255,.1); border-radius: 50%; box-shadow: 0 0 0 3.5rem rgba(255,255,255,.025), 0 0 0 7rem rgba(255,255,255,.018); content: ""; }
.hy-inquiry-hero__grid { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0,1.25fr) minmax(18rem,.75fr); gap: clamp(3rem,9vw,9rem); align-items: start; }
.hy-inquiry-hero__copy { display: grid; gap: 1.35rem; }
.hy-inquiry-hero .hy-eyebrow { color: var(--hy-signal); }
.hy-inquiry-hero h1 { max-width: 12ch; margin: 0; font-family: var(--hy-display); font-size: clamp(3.35rem,6vw,6.5rem); letter-spacing: -.025em; line-height: .96; }
.hy-inquiry-hero__copy > p:last-of-type { max-width: 58ch; margin: 0; color: #d5e1f3; font-size: clamp(1.05rem,1.5vw,1.25rem); }
.hy-inquiry-context { width: fit-content; display: flex; flex-wrap: wrap; gap: .7rem 1rem; align-items: center; margin-top: .5rem; padding: .65rem .85rem; border-left: 3px solid var(--hy-signal); background: rgba(255,255,255,.08); }
.hy-inquiry-context span { color: #aebed2; font-size: .72rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.hy-inquiry-context strong { font-family: var(--hy-display); }
.hy-inquiry-hero__support { padding: 1.7rem 0 0; border-top: 1px solid rgba(255,255,255,.25); }
.hy-inquiry-hero__support > p { margin: 0 0 .8rem; color: var(--hy-signal); font-family: var(--hy-display); font-size: .78rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.hy-inquiry-hero__support ul { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }
.hy-inquiry-hero__support li { position: relative; padding: .85rem 0 .85rem 1.45rem; border-bottom: 1px solid rgba(255,255,255,.13); color: #e5edf7; }
.hy-inquiry-hero__support li::before { position: absolute; top: 1.45rem; left: 0; width: .45rem; height: .45rem; background: var(--hy-signal); content: ""; }

.hy-inquiry-workspace { padding-block: clamp(2.5rem, 5vw, 4rem); scroll-margin-top: 5rem; }
.hy-inquiry-workspace__grid { display: grid; grid-template-columns: minmax(17rem,.34fr) minmax(0,.66fr); gap: clamp(2.5rem,7vw,7rem); align-items: start; }
.hy-inquiry-brief { position: sticky; top: 7rem; display: grid; gap: 1.25rem; }
.hy-inquiry-brief h2 { max-width: 17ch; margin: 0; font-family: var(--hy-display); font-size: clamp(2.1rem,3.1vw,3.25rem); letter-spacing: -.02em; line-height: 1.03; }
.hy-inquiry-brief > p:not(.hy-eyebrow):not(.hy-inquiry-brief__note) { max-width: 40ch; margin: 0; color: #58677b; }
.hy-inquiry-brief dl { display: grid; margin: .6rem 0 0; border-top: 1px solid var(--hy-rule); }
.hy-inquiry-brief dl > div { display: grid; gap: .22rem; padding: .9rem 0; border-bottom: 1px solid var(--hy-rule); }
.hy-inquiry-brief dt { color: #64748b; font-size: .7rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.hy-inquiry-brief dd { margin: 0; font-family: var(--hy-display); font-size: 1.05rem; font-weight: 700; line-height: 1.2; }
.hy-inquiry-brief__note { margin: 0; padding-left: 1rem; border-left: 2px solid var(--hy-signal); color: #58677b; font-size: .84rem; }

.hy-inquiry-form-panel { min-width: 0; border: 1px solid var(--hy-rule); background: var(--hy-white); box-shadow: 0 1.25rem 3rem rgba(8,20,38,.07); }
.hy-inquiry-form-panel__head { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 2rem; align-items: end; padding: clamp(1.5rem,4vw,2.75rem); border-bottom: 1px solid var(--hy-rule); }
.hy-inquiry-form-panel__head > div { display: grid; gap: .65rem; }
.hy-inquiry-form-panel__head h2 { max-width: 19ch; margin: 0; font-family: var(--hy-display); font-size: clamp(1.9rem,3vw,3rem); letter-spacing: -.018em; line-height: 1.04; }
.hy-inquiry-form-panel__head > p { display: grid; gap: .2rem; justify-items: end; margin: 0; text-align: right; }
.hy-inquiry-form-panel__head > p span { color: var(--hy-blue); font-family: var(--hy-display); font-size: 1rem; font-weight: 700; }
.hy-inquiry-form-panel__head > p small { color: #64748b; font-size: .72rem; }
.hy-inquiry-message { margin: 1.5rem clamp(1.5rem,4vw,2.75rem) 0; padding: 1rem 1.1rem; border-left: 3px solid #b42318; background: #fff1f0; color: #7a271a; }
.hy-inquiry-form { --inquiry-progress: 33.333%; padding: 0 clamp(1.5rem,4vw,2.75rem) clamp(1.8rem,4vw,2.75rem); }
.hy-inquiry-progress { position: relative; display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 0; margin: 0 0 clamp(2rem,4vw,3rem); padding: 0; border-bottom: 2px solid #e3e9f1; list-style: none; }
.hy-inquiry-progress::after { position: absolute; bottom: -2px; left: 0; width: var(--inquiry-progress); height: 2px; background: var(--hy-signal); content: ""; transition: width 220ms ease; }
.hy-inquiry-progress li { padding: 1rem .4rem .8rem 0; color: #718096; font-family: var(--hy-display); font-size: .78rem; font-weight: 700; letter-spacing: .045em; text-transform: uppercase; }
.hy-inquiry-progress li[aria-current="step"] { color: var(--hy-ink); }
.hy-inquiry-progress li.is-complete { color: var(--hy-blue); }
.hy-inquiry-step { min-width: 0; margin: 0; padding: 0; border: 0; }
.hy-inquiry-form.is-enhanced .hy-inquiry-step { display: none; }
.hy-inquiry-form.is-enhanced .hy-inquiry-step.is-active { display: block; }
.hy-inquiry-step legend { width: 100%; margin: 0 0 1.5rem; padding: 0; color: var(--hy-ink); font-family: var(--hy-display); font-size: clamp(1.55rem,2.3vw,2.05rem); font-weight: 700; letter-spacing: -.012em; line-height: 1.1; }
.hy-inquiry-step legend:focus { outline: 0; }
.hy-inquiry-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.35rem; }
.hy-inquiry-field { min-width: 0; display: grid; gap: .48rem; align-content: start; color: var(--hy-ink); font-size: .82rem; font-weight: 700; }
.hy-inquiry-field--wide { grid-column: 1 / -1; }
.hy-inquiry-field > span { display: flex; gap: .45rem; justify-content: space-between; align-items: baseline; }
.hy-inquiry-field b, .hy-inquiry-consent b { color: var(--hy-signal); }
.hy-inquiry-field small { color: #7a8798; font-size: .7rem; font-weight: 500; }
.hy-inquiry-field input, .hy-inquiry-field select, .hy-inquiry-field textarea { width: 100%; min-height: 3.4rem; padding: .8rem .95rem; border: 1px solid #b9c5d5; border-radius: 0; background: #fbfcfe; color: var(--hy-ink); font: inherit; font-size: .95rem; font-weight: 400; line-height: 1.45; transition: border-color 150ms ease, box-shadow 150ms ease, background-color 150ms ease; }
.hy-inquiry-field textarea { min-height: 10.5rem; resize: vertical; }
.hy-inquiry-field input::placeholder, .hy-inquiry-field textarea::placeholder { color: #8b98a8; opacity: 1; }
.hy-inquiry-field input:focus, .hy-inquiry-field select:focus, .hy-inquiry-field textarea:focus { border-color: var(--hy-blue); outline: 0; background: var(--hy-white); box-shadow: 0 0 0 3px rgba(24,90,219,.12); }
.hy-inquiry-field [aria-invalid="true"] { border-color: #b42318; box-shadow: 0 0 0 3px rgba(180,35,24,.1); }
.hy-inquiry-consent { display: grid; grid-template-columns: 1.2rem 1fr; gap: .75rem; align-items: start; color: #536176; font-size: .82rem; font-weight: 400; line-height: 1.55; }
.hy-inquiry-consent input { width: 1.05rem; height: 1.05rem; margin: .2rem 0 0; accent-color: var(--hy-blue); }
.hy-inquiry-consent a { color: var(--hy-blue); font-weight: 700; }
.hy-inquiry-step-actions { display: flex; gap: .8rem; justify-content: flex-end; margin-top: 2rem; padding-top: 1.5rem; border-top: 1px solid var(--hy-rule); }
.hy-inquiry-step-actions button { min-height: 3.25rem; display: inline-flex; gap: .7rem; align-items: center; justify-content: center; padding: .75rem 1.15rem; border: 1px solid var(--hy-navy); border-radius: 0; background: var(--hy-navy); color: var(--hy-white); cursor: pointer; font-family: var(--hy-display); font-size: .79rem; font-weight: 700; letter-spacing: .055em; text-transform: uppercase; }
.hy-inquiry-step-actions .hy-inquiry-back { border-color: var(--hy-rule); background: transparent; color: var(--hy-ink); }
.hy-inquiry-step-actions .hy-inquiry-submit { border-color: var(--hy-signal); background: var(--hy-signal); color: var(--hy-ink); }
.hy-inquiry-step-actions button:hover { transform: translateY(-1px); }
.hy-inquiry-step-actions button:disabled { cursor: wait; opacity: .65; transform: none; }
.hy-inquiry-next, .hy-inquiry-back { display: none !important; }
.hy-inquiry-form.is-enhanced .hy-inquiry-next, .hy-inquiry-form.is-enhanced .hy-inquiry-back { display: inline-flex !important; }
.hy-inquiry-honeypot { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.hy-inquiry-result { min-height: 35rem; display: grid; align-content: center; justify-items: start; gap: 1.25rem; padding: clamp(2rem,6vw,5rem); }
.hy-inquiry-result > span { width: 3.5rem; height: 3.5rem; display: grid; place-items: center; background: var(--hy-signal); font-family: var(--hy-display); font-size: 1.5rem; font-weight: 700; }
.hy-inquiry-result h2 { max-width: 15ch; margin: 0; font-family: var(--hy-display); font-size: clamp(2.25rem,4vw,4rem); letter-spacing: -.02em; line-height: 1; }
.hy-inquiry-result > p:not(.hy-eyebrow) { max-width: 52ch; margin: 0; color: #58677b; }
.hy-inquiry-result > strong { padding: .7rem .9rem; border: 1px solid var(--hy-rule); background: var(--hy-paper); font-family: var(--hy-mono); font-size: .9rem; }
.hy-inquiry-result > div { display: flex; flex-wrap: wrap; gap: 1rem; margin-top: .7rem; }
.hy-inquiry-result a { padding-bottom: .25rem; border-bottom: 2px solid var(--hy-signal); font-family: var(--hy-display); font-size: .8rem; font-weight: 700; letter-spacing: .06em; text-decoration: none; text-transform: uppercase; }

.hy-footer { padding-block: 2.5rem 1.5rem; border-top: 1px solid rgba(255,255,255,.3); background: #0b2034; color: var(--hy-white); }
.hy-footer__inner { width: var(--hy-shell); margin-inline: auto; }
.hy-footer__statement { max-width: 34ch; margin: 0 0 1rem; font-family: var(--hy-display); font-size: clamp(1.8rem, 2.8vw, 2.75rem); font-weight: 700; line-height: 1.12; }
.hy-footer__meta { padding-top: 1rem; border-top: 1px solid #526073; color: #c8d0da; font-size: .85rem; }

@media (max-width: 900px) {
  .hy-header-cta { display: none; }
  .hy-hero__grid, .hy-split, .hy-blue-band .hy-split { grid-template-columns: 1fr; }
  .hy-blue-band .hy-split__media { order: 0; }
  .hy-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .hy-stat { border-bottom: 1px solid var(--hy-rule); }
  .hy-intro__grid { grid-template-columns: 1fr; gap: 0; }
  .hy-intro__visual { min-height: 34rem; }
  .hy-intro__card { width: calc(100% - 2rem); margin: -3rem auto 0; }
  .hy-solutions__head { grid-template-columns: 1fr; }
  .hy-solution-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .hy-mission__stats { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .hy-mission__stat:nth-child(2) { border-right: 0; }
  .hy-mission__stat { border-bottom: 1px solid var(--hy-rule); }
  .hy-product-grid .wp-block-post-template { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .hy-product-hero { grid-template-columns: 1fr; }
  .hy-product-hero__media { display: contents; }
  .hy-product-stage { min-height: 38rem; }
  .hy-product-stage { order: 1; }
  .hy-product-passport { order: 2; padding-block: 4rem; }
  .hy-product-thumbs { order: 3; margin-top: 1rem; }
  .hy-product-support .hy-shell { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .hy-product-support span:nth-child(2) { border-right: 0; }
  .hy-product-support span:nth-child(-n+2) { border-bottom: 1px solid var(--hy-rule); }
  .hy-product-overview { grid-template-columns: 1fr; }
  .hy-product-overview__intro { position: static; }
  .hy-product-applications__grid { grid-template-columns: 1fr; }
  .hy-product-technical__grid { grid-template-columns: 1fr; }
  .hy-colorway-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .hy-product-inquiry__grid { grid-template-columns: 1fr; }
  .hy-product-hub-scope { grid-template-columns: 1fr; }
  .hy-product-hub-scope span { min-height: 5.2rem; border-right: 0; border-bottom: 1px solid rgba(24,90,219,.22); }
  .hy-product-hub-scope span:last-child { border-bottom: 0; }
  .hy-system-selector__head { grid-template-columns: 1fr; gap: 1.4rem; }
  .hy-system-grid { grid-template-columns: repeat(2,minmax(0,1fr)); grid-template-rows: auto; }
  .hy-system-card { min-height: 30rem; grid-column: auto; grid-row: auto; }
  .hy-system-card--interlocking-flooring { grid-column: 1 / -1; min-height: 38rem; }
  .hy-system-card--turf .hy-system-card__description, .hy-system-card--rubber-mats .hy-system-card__description { display: block; }
  .hy-project-fit__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .hy-product-hub-logic > .hy-shell { grid-template-columns: 1fr; }
  .hy-product-family-index { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .hy-product-family-index a { min-height: 6.5rem; border-bottom: 1px solid rgba(255,255,255,.2); }
  .hy-product-family-index a:nth-child(even) { border-right: 0; }
  .hy-product-family-index a:last-child { grid-column: 1 / -1; border-bottom: 0; }
  .hy-product-range__head { grid-template-columns: 1fr; gap: 1.4rem; }
  .hy-product-archive-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .hy-product-archive-cta > .hy-shell { grid-template-columns: 1fr; }
  .hy-application-hero { grid-template-columns: 1fr; }
  .hy-application-hero__media { min-height: 34rem; }
  .hy-application-index__head, .hy-application-profiles__head, .hy-application-systems__head, .hy-application-products__head { grid-template-columns: 1fr; }
  .hy-application-index__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .hy-application-guide__layout { grid-template-columns: 1fr; gap: 3rem; }
  .hy-application-guide__nav { position: static; }
  .hy-application-guide__nav nav { grid-template-columns: repeat(2,minmax(0,1fr)); border-left: 1px solid var(--hy-rule); }
  .hy-application-guide__nav a { padding: .9rem; border-right: 1px solid var(--hy-rule); }
  .hy-application-system-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .hy-application-system-grid article, .hy-application-system-grid article:nth-child(3n) { border-right: 1px solid var(--hy-rule); }
  .hy-application-system-grid article:nth-child(even) { border-right: 0; }
  .hy-application-system-grid article:nth-child(n+3) { border-top: 1px solid var(--hy-rule); }
  .hy-application-product-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .hy-application-checkpoints__layout { grid-template-columns: 1fr; }
  .hy-application-checkpoints__intro { position: static; }
  .hy-application-planning__grid, .hy-application-faq__grid, .hy-application-cta__grid { grid-template-columns: 1fr; }
  .hy-application-related__head { grid-template-columns: 1fr; }
  .hy-application-related__links { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .hy-application-faq__grid > div:first-child { position: static; }
  .hy-inquiry-hero__grid, .hy-inquiry-workspace__grid { grid-template-columns: 1fr; }
  .hy-inquiry-hero__support { max-width: 42rem; }
  .hy-inquiry-brief { position: static; }
  .hy-inquiry-brief h2 { max-width: 22ch; }
  .hy-inquiry-brief dl { grid-template-columns: repeat(2,minmax(0,1fr)); border-left: 1px solid var(--hy-rule); }
  .hy-inquiry-brief dl > div { padding: .9rem; border-right: 1px solid var(--hy-rule); }
}

@media (max-width: 560px) {
  .hy-display { font-size: clamp(3rem, 14vw, 4.5rem); }
  .hy-stats { grid-template-columns: 1fr; }
  .hy-stat { min-height: 6rem; border-right: 0; }
  .hy-intro__visual { min-height: 26rem; }
  .hy-intro__card { padding: 2rem 1.4rem; }
  .hy-solution-grid { grid-template-columns: 1fr; }
  .hy-solution-tile { min-height: 25rem; }
  .hy-mission__stats { grid-template-columns: 1fr; }
  .hy-mission__stat { border-right: 0; }
  .hy-product-grid .wp-block-post-template { grid-template-columns: 1fr; }
  .hy-catalogue__head { display: grid; }
  .hy-product-breadcrumb { padding-block: 1rem; }
  .hy-product-stage { min-height: 26rem; }
  .hy-product-stage::before { inset: 1rem; }
  .hy-product-stage::after { top: 1rem; right: 1rem; }
  .hy-product-stage > img { width: 88%; }
  .hy-product-measure--width { right: 10%; left: 10%; }
  .hy-product-thumbs { grid-template-columns: 1fr; }
  .hy-product-passport { padding: 3.4rem 1.35rem 2rem; }
  .hy-product-title > span { font-size: clamp(3.5rem,18vw,5rem); }
  .hy-product-spec-grid { grid-template-columns: 1fr; }
  .hy-product-spec-grid > div, .hy-product-spec-grid > div:nth-child(even) { padding: .85rem 0; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.16); }
  .hy-product-spec-grid > div:nth-last-child(2) { border-bottom: 1px solid rgba(255,255,255,.16); }
  .hy-product-color-summary { grid-template-columns: 1fr auto; }
  .hy-product-color-preview { justify-content: start; grid-column: 1 / -1; grid-row: 2; padding-left: .35rem; }
  .hy-product-actions { display: grid; }
  .hy-product-support .hy-shell { grid-template-columns: 1fr; }
  .hy-product-support span { min-height: 4.6rem; border-right: 0; border-bottom: 1px solid var(--hy-rule); }
  .hy-product-support span:last-child { border-bottom: 0; }
  .hy-product-overview { gap: 2.3rem; }
  .hy-product-feature-list article { grid-template-columns: 1.8rem 1fr; }
  .hy-product-application-list { display: grid; }
  .hy-product-application-list a, .hy-product-application-list > span { width: 100%; }
  .hy-product-colorways__head { grid-template-columns: 1fr; align-items: start; }
  .hy-product-colorways__head > div:last-child { width: fit-content; padding: 0 0 0 1rem; }
  .hy-colorway-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .hy-product-colorways__note { grid-template-columns: 2rem 1fr; }
  .hy-product-colorways__note a { grid-column: 2; }
  .hy-product-data-card { padding: 1.3rem; }
  .hy-product-data-card dl > div { grid-template-columns: 1fr; gap: .2rem; }
  .hy-product-related__head { grid-template-columns: 1fr; align-items: start; }
  .hy-product-related__grid { grid-template-columns: 1fr; }
  .hy-product-inquiry { padding-bottom: 7rem; }
  .hy-product-hub-hero { padding-top: 5rem; }
  .hy-product-hub-hero .hy-display { font-size: clamp(3rem,13.5vw,4.25rem); }
  .hy-product-hub-hero::after { right: 5%; bottom: 16rem; }
  .hy-product-hub-scope span { grid-template-columns: minmax(5.5rem,auto) 1fr; }
  .hy-system-grid { grid-template-columns: 1fr; }
  .hy-system-card { min-height: 31rem; grid-column: auto; }
  .hy-system-card--interlocking-flooring { min-height: 38rem; }
  .hy-system-card__body h3, .hy-system-card--turf .hy-system-card__body h3, .hy-system-card--rubber-mats .hy-system-card__body h3 { font-size: 2.1rem; }
  .hy-project-fit__head { grid-template-columns: 1fr; }
  .hy-project-fit__grid { grid-template-columns: 1fr; }
  .hy-project-fit__grid article { min-height: 13rem; }
  .hy-project-fit__grid strong { margin-top: 1.8rem; }
  .hy-product-hub-logic > .hy-shell { gap: 2rem; }
  .hy-product-hub-logic li { grid-template-columns: 1fr; gap: .4rem; }
  .hy-product-archive-hero { padding-top: 4.5rem; }
  .hy-product-archive-hero .hy-display { font-size: clamp(3rem,13.5vw,4.25rem); }
  .hy-product-family-index { grid-template-columns: 1fr; }
  .hy-product-family-index a, .hy-product-family-index a:nth-child(even), .hy-product-family-index a:last-child { min-height: 4.8rem; grid-column: auto; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.2); }
  .hy-product-family-index a:last-child { border-bottom: 0; }
  .hy-product-family-index strong { max-width: none; }
  .hy-product-range__summary { grid-template-columns: 1fr; }
  .hy-product-range__summary strong { width: fit-content; padding: .2rem 0 0; border-top: 1px solid var(--hy-blue); border-left: 0; }
  .hy-product-archive-grid { grid-template-columns: 1fr; }
  .hy-product-archive-card__body { min-height: 17rem; }
  .hy-product-archive-cta > .hy-shell { gap: 2rem; }
  .hy-application-hero { min-height: 0; }
  .hy-application-hero__copy { padding: 3.5rem 1.25rem 2.5rem; }
  .hy-application-hero h1 { font-size: clamp(2.75rem,10.8vw,3.6rem); }
  .hy-application-hero__actions { display: grid; }
  .hy-application-action { width: 100%; }
  .hy-application-scope { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .hy-application-scope > div:nth-child(2) { border-right: 0; }
  .hy-application-scope > div:nth-child(-n+2) { border-bottom: 1px solid rgba(255,255,255,.18); }
  .hy-application-scope > div:nth-child(3) { padding-left: 0; }
  .hy-application-hero__media { min-height: 27rem; }
  .hy-application-hero__media::before { inset: 1rem; }
  .hy-application-hero__media figcaption { right: 2rem; bottom: 2rem; left: 2rem; }
  .hy-application-index__grid { grid-template-columns: 1fr; }
  .hy-application-card__body { min-height: 14rem; }
  .hy-application-guide__nav nav { grid-template-columns: 1fr; }
  .hy-application-module { padding-left: 1.25rem; }
  .hy-application-profile-table table { min-width: 46rem; }
  .hy-application-system-grid { grid-template-columns: 1fr; }
  .hy-application-system-grid article, .hy-application-system-grid article:nth-child(3n), .hy-application-system-grid article:nth-child(even) { min-height: 0; border-right: 0; }
  .hy-application-system-grid article + article { border-top: 1px solid var(--hy-rule); }
  .hy-application-product-grid { grid-template-columns: 1fr; }
  .hy-application-product-card__body { min-height: 0; }
  .hy-application-checkpoint-grid { grid-template-columns: 1fr; }
  .hy-application-checkpoint-grid article { min-height: 0; }
  .hy-application-related__links { grid-template-columns: 1fr; }
  .hy-application-related__links a { min-height: 5rem; }
  .hy-application-faq summary { min-height: 4.5rem; font-size: 1.25rem; }
  .hy-application-cta { padding-bottom: 7rem; }
  .hy-application-mobile-actions { position: fixed; z-index: 60; right: .75rem; bottom: .75rem; left: .75rem; display: grid; grid-template-columns: .72fr 1.28fr; overflow: hidden; border: 1px solid rgba(255,255,255,.22); border-radius: 999px; box-shadow: 0 .8rem 2rem rgba(8,20,38,.28); }
  .hy-application-mobile-actions a { min-height: 3.4rem; display: grid; place-items: center; background: var(--hy-navy); color: var(--hy-white); font-family: var(--hy-display); font-size: .78rem; font-weight: 700; letter-spacing: .04em; text-align: center; text-decoration: none; text-transform: uppercase; }
  .hy-application-mobile-actions a:last-child { background: var(--hy-signal); color: var(--hy-ink); }
  .hy-application-mobile-actions a:last-child { padding-inline: .45rem; font-size: .68rem; line-height: 1.1; }
  .hy-product-mobile-actions { position: fixed; z-index: 60; right: .75rem; bottom: .75rem; left: .75rem; display: grid; grid-template-columns: .75fr 1.25fr; overflow: hidden; border: 1px solid rgba(255,255,255,.22); border-radius: 999px; box-shadow: 0 .8rem 2rem rgba(8,20,38,.28); }
  .hy-product-mobile-actions a { min-height: 3.4rem; display: grid; place-items: center; background: var(--hy-navy); color: var(--hy-white); font-family: var(--hy-display); font-size: .85rem; font-weight: 700; letter-spacing: .05em; text-decoration: none; text-transform: uppercase; }
  .hy-product-mobile-actions a:last-child { background: var(--hy-signal); color: var(--hy-ink); }
  .hy-inquiry-hero { padding-block: 4.5rem; }
  .hy-inquiry-hero h1 { font-size: clamp(3rem,13.2vw,4.4rem); }
  .hy-inquiry-hero::before { inset: 0 0 0 25%; }
  .hy-inquiry-brief dl { grid-template-columns: 1fr; }
  .hy-inquiry-form-panel__head { grid-template-columns: 1fr; gap: 1rem; }
  .hy-inquiry-form-panel__head > p { justify-items: start; text-align: left; }
  .hy-inquiry-fields { grid-template-columns: 1fr; }
  .hy-inquiry-field--wide { grid-column: auto; }
  .hy-inquiry-progress li { font-size: .67rem; letter-spacing: .025em; }
  .hy-inquiry-step-actions { display: grid; }
  .hy-inquiry-step-actions button, .hy-inquiry-form.is-enhanced .hy-inquiry-next, .hy-inquiry-form.is-enhanced .hy-inquiry-back { width: 100%; }
  .hy-inquiry-step-actions .hy-inquiry-back { order: 2; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}
