*, *::before, *::after { box-sizing: border-box; }
html { max-width: 100%; overflow-x: clip; scroll-behavior: smooth; scroll-padding-top: var(--header-height); }
body { width: 100%; max-width: 100%; margin: 0; overflow-x: clip; background: var(--ink); color: var(--white); font-family: var(--body); font-kerning: normal; font-synthesis: none; text-rendering: optimizeLegibility; }
body.menu-open { overflow: hidden; }
img, video { display: block; max-width: 100%; }
button, input, select, textarea { font: inherit; }
button, a { touch-action: manipulation; }
a { color: inherit; text-decoration: none; }
button { cursor: pointer; }
:focus-visible { outline: 3px solid var(--jade-bright); outline-offset: 3px; }
::selection { background: var(--jade-bright); color: var(--ink); }

.skip-link { position: fixed; left: 1rem; top: 0; z-index: 1000; transform: translateY(-130%); padding: 0.75rem 1rem; background: var(--paper); color: var(--ink); font-weight: 700; transition: transform var(--micro) var(--ease); }
.skip-link:focus { transform: translateY(0.75rem); }
.visually-hidden { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; }
.paper-surface { background-color: var(--paper); background-image: url("../assets/processed/generated/AU-GEN-005-formulation-material.png"); background-size: cover; background-blend-mode: soft-light; }
.eyebrow { margin: 0; color: var(--jade-bright); font-size: 0.75rem; font-weight: 700; letter-spacing: 0.22em; text-transform: uppercase; }
.eyebrow-ink { color: #08715f; }
.hero h1, .buying h2, .ingredients h2, .applications h2, .dossier h2, .manufacturer h2, .quality-evidence h2, .au-statement h2, .contact-bridge h2, .contact h2 {
  font-family: var(--display); font-weight: var(--display-weight); font-variation-settings: "wdth" var(--display-width), "wght" var(--display-weight), "CTRS" var(--display-contrast); text-transform: uppercase; letter-spacing: -0.035em;
}

.site-header { position: sticky; top: 0; z-index: 30; height: var(--header-height); display: grid; grid-template-columns: minmax(12rem, 1fr) auto auto; align-items: center; border-bottom: 1px solid var(--rule); background: var(--ink); transition: background-color var(--micro) var(--ease-out), border-color var(--micro) var(--ease-out), box-shadow var(--micro) var(--ease-out); }
.site-header.is-scrolled { border-bottom-color: rgba(235, 241, 236, 0.24); background: rgba(4, 26, 23, 0.84); box-shadow: 0 0.75rem 2rem rgba(0, 10, 8, 0.18); -webkit-backdrop-filter: blur(14px) saturate(1.08); backdrop-filter: blur(14px) saturate(1.08); }
.brand { align-self: stretch; display: flex; align-items: center; padding-left: var(--content-gutter); }
.brand img { width: 8.875rem; height: auto; }
.primary-nav { height: 100%; display: flex; align-items: center; gap: clamp(1.5rem, 3.1vw, 3rem); padding: 0 clamp(1.5rem, 3.4vw, 3.25rem); border-right: 1px solid var(--rule); }
.primary-nav a, .header-cta { position: relative; font-size: 0.6875rem; letter-spacing: 0.12em; text-transform: uppercase; }
.primary-nav a { font-weight: 400; }
.header-cta { font-weight: 700; letter-spacing: 0.1em; }
.primary-nav a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: -0.55rem; height: 1px; background: var(--jade-bright); transition: right var(--micro) var(--ease); }
.primary-nav a:hover::after, .primary-nav a:focus-visible::after { right: 0; }
.header-cta { height: 100%; display: flex; align-items: center; gap: 0.75rem; padding: 0 clamp(1.5rem, 2.9vw, 2.75rem); color: var(--jade-bright); transition: background var(--micro) var(--ease-out), color var(--micro) var(--ease-out), transform 120ms var(--ease-out); }
.header-cta:hover { background: var(--jade); color: var(--white); }
.header-cta img, .button img { width: 0.9375rem; height: 0.9375rem; filter: invert(52%) sepia(58%) saturate(550%) hue-rotate(116deg); }
.header-cta:hover img { filter: brightness(0) invert(1); }
.menu-toggle { display: none; width: 3rem; height: 3rem; margin-right: 0.75rem; border: 1px solid var(--rule); background: transparent; color: var(--white); align-items: center; justify-content: center; }
.menu-toggle img { width: 1.5rem; height: 1.5rem; filter: brightness(0) invert(1); }
.menu-close-icon { display: none; }
.menu-toggle[aria-expanded="true"] .menu-open-icon { display: none; }
.menu-toggle[aria-expanded="true"] .menu-close-icon { display: block; }

.hero { min-height: 40.625rem; position: relative; overflow: hidden; background: var(--ink); }
.hero-copy { position: relative; z-index: 6; width: 57%; min-height: 40.625rem; padding: 3.05rem 0 1.75rem var(--content-gutter); }
.hero h1 { width: 185%; max-width: 84rem; margin: 0.875rem 0 1rem; white-space: nowrap; transform: scaleX(0.528); transform-origin: left top; font-size: clamp(8.875rem, 12.24vw, 11.75rem); line-height: 0.795; }
.hero-kicker { margin: 0 0 1.125rem; font-family: var(--display); font-variation-settings: "wdth" 56, "wght" 560, "CTRS" 24; font-size: clamp(1.35rem, 1.9vw, 1.8125rem); line-height: 1; letter-spacing: 0.055em; text-transform: uppercase; }
.hero-kicker span, .ingredients h2 span, .dossier h2 span, .manufacturer h2 span, .quality-evidence h2 span, .au-statement h2 span { color: var(--jade-bright); }
.hero-intro { width: min(29.375rem, 82%); margin: 0; color: #d0d9d4; font-size: 0.8125rem; line-height: 1.55; }
.hero-actions { display: flex; align-items: center; gap: 1.75rem; margin-top: 1.5rem; }
.button { min-height: 2.75rem; padding: 0.65rem 1.25rem; display: inline-flex; align-items: center; justify-content: center; gap: 0.75rem; font-family: var(--display); font-variation-settings: "wdth" 52, "wght" 600; font-size: 0.9375rem; letter-spacing: 0.06em; text-transform: uppercase; white-space: nowrap; transition: background var(--micro) var(--ease-out), color var(--micro) var(--ease-out), transform 120ms var(--ease-out); }
.button:active { transform: scale(0.98); }
.button-jade { background: var(--jade); color: #f3f7f3; }
.button-jade:hover { background: var(--jade-bright); color: var(--ink); }
.hero-actions .button { width: 12.125rem; font-size: 0.75rem; }
.hero-actions .text-button { font-size: 0.75rem; }
.text-button { min-height: 2.75rem; display: inline-flex; align-items: center; border-bottom: 1px solid var(--jade); font-family: var(--display); font-variation-settings: "wdth" 58, "wght" 550; font-size: 0.875rem; letter-spacing: 0.06em; text-transform: uppercase; transition: color var(--micro) var(--ease), border-color var(--micro) var(--ease); }
.text-button:hover { color: var(--jade-bright); border-color: var(--jade-bright); }
.hero-foot { position: absolute; left: var(--content-gutter); bottom: 1.7rem; width: min(38.75rem, 77%); display: flex; justify-content: space-between; align-items: end; }
.scroll-cue, .evidence-first { color: #b9c7c1; font-family: var(--display); font-variation-settings: "wdth" 58, "wght" 450; font-size: 0.625rem; letter-spacing: 0.1em; text-transform: uppercase; }
.scroll-cue { display: flex; gap: 0.875rem; align-items: center; }
.scroll-cue img { width: 1.375rem; height: 1.375rem; padding: 0.3125rem; border: 1px solid #78928a; border-radius: 50%; filter: brightness(0) invert(1); }
.evidence-first { border-left: 1px solid var(--jade); padding-left: 2.25rem; }
.hero-media { position: absolute; z-index: 1; inset: 0; overflow: hidden; }
.hero-background { width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: 50% center; }
.hero-media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(2, 20, 18, 0.12) 0%, rgba(2, 20, 18, 0.04) 48%, transparent 68%); pointer-events: none; }
.buying { height: clamp(13.75rem, 19.73vw, 20.75rem); display: grid; grid-template-columns: 40.25% 30.25% 29.5%; background: var(--ink-2); overflow: hidden; }
.buying-intro { position: relative; min-width: 0; padding: clamp(1.75rem, 2.86vw, 2.75rem) 3rem 2.375rem var(--content-gutter); background-color: var(--paper); background-image: none; color: var(--ink); }
.buying .eyebrow { font-size: clamp(0.5rem, 0.65vw, 0.625rem); }
.buying-intro h2 { width: 145%; margin: 1.625rem 0 0; white-space: nowrap; transform: scaleX(0.69); transform-origin: left top; font-size: 4.25rem; line-height: 0.88; }
.buying-routes { padding: 0.625rem 2.125rem 0.625rem 2.625rem; display: grid; grid-template-rows: repeat(3, 1fr); }
.buying-routes article { min-width: 0; display: grid; grid-template-columns: clamp(1.75rem, 2.6vw, 2.5rem) 1fr 1.5rem; gap: clamp(0.875rem, 1.17vw, 1.125rem); align-items: center; border-bottom: 1px solid var(--rule); }
.buying-routes article:last-child { border-bottom: 0; }
.buying-routes article > img { width: clamp(1.75rem, 2.6vw, 2.5rem); height: clamp(1.75rem, 2.6vw, 2.5rem); filter: invert(49%) sepia(58%) saturate(500%) hue-rotate(116deg); }
.buying-routes h3 { margin: 0 0 0.25rem; font-family: var(--display); font-variation-settings: "wdth" 60, "wght" 560; font-size: clamp(0.5625rem, 0.72vw, 0.6875rem); letter-spacing: 0.055em; text-transform: uppercase; }
.buying-routes p { margin: 0; color: #c2cdc8; font-size: clamp(0.5rem, 0.66vw, 0.625rem); line-height: 1.35; }
.buying-routes article > span { color: #8ca099; font-size: clamp(0.5rem, 0.72vw, 0.6875rem); }
.buying-image { position: relative; overflow: hidden; margin: 0; }
.buying-image > img { width: 100%; height: 100%; object-fit: cover; object-position: 60% center; filter: saturate(0.72) contrast(1.08); }

.proof-belt { min-height: 13.125rem; display: grid; grid-template-columns: repeat(3, 1fr); padding: 0 var(--content-gutter); border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); background: var(--ink); }
.proof-belt article { display: flex; gap: 1.125rem; align-items: center; padding: 0 clamp(1.25rem, 2.2vw, 2.125rem); border-left: 1px solid var(--rule); }
.proof-belt article:first-child { border-left: 0; }
.proof-belt article img { width: 1.75rem; height: 1.75rem; filter: invert(50%) sepia(57%) saturate(470%) hue-rotate(116deg); }
.proof-belt h2 { margin: 0 0 0.4375rem; font-family: var(--body); font-size: 0.8125rem; letter-spacing: 0; text-transform: none; }
.proof-belt p { margin: 0; color: #aebdb7; font-size: 0.6875rem; line-height: 1.45; }

.ingredients { min-height: 61.25rem; position: relative; overflow: hidden; padding: 4.375rem var(--content-gutter); background: var(--ink); }
.ingredients-head { position: relative; z-index: 5; width: min(48rem, 60%); }
.ingredients-head h2 { margin: 1.125rem 0 0; font-size: clamp(4.25rem, 5.34vw, 5.125rem); line-height: 0.9; }
.ingredients-head > p:last-child { max-width: 40rem; margin: 1.5rem 0 0; color: #bac7c1; font-size: 0.8125rem; line-height: 1.55; }
.ingredient-index { position: absolute; z-index: 6; left: var(--content-gutter); bottom: 5.25rem; width: min(36.25rem, 44vw); }
.ingredient-index a { width: 100%; min-height: 4.0625rem; padding: 0 0.75rem; display: grid; grid-template-columns: 2.125rem 1fr 7.5rem; align-items: center; border-top: 1px solid var(--rule); background: transparent; color: #aabbb4; text-align: left; text-decoration: none; cursor: pointer; transition: background var(--micro) var(--ease), color var(--micro) var(--ease); }
.ingredient-index a:last-child { border-bottom: 1px solid var(--rule); }
.ingredient-index a:hover, .ingredient-index a:focus-visible, .ingredient-index a.active { background: rgba(32, 143, 120, 0.12); color: var(--white); }
.ingredient-index span { color: var(--jade-bright); font-size: 0.625rem; }
.ingredient-index strong { font-family: var(--display); font-variation-settings: "wdth" 60, "wght" 560; font-size: 1.125rem; letter-spacing: 0.035em; text-transform: uppercase; }
.ingredient-index small { text-align: right; }
.ingredient-media { position: absolute; z-index: 3; top: 0; right: 0; width: clamp(30rem, 44vw, 42rem); height: 43rem; overflow: hidden; pointer-events: none; }
.ingredient-media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, var(--ink) 0%, rgba(4, 26, 23, 0.52) 9%, transparent 29%), linear-gradient(0deg, var(--ink) 0%, transparent 29%); }
.ingredient-campaign-art { width: 100%; height: 100%; object-fit: cover; object-position: 58% 30%; filter: saturate(0.9) contrast(1.03); }
.ingredient-file { position: absolute; z-index: 6; right: var(--content-gutter); bottom: 5.25rem; width: min(16.875rem, 18vw); padding-top: 1.0625rem; border-top: 1px solid var(--jade); }
.ingredient-file > span { color: var(--jade-bright); font-size: 0.625rem; letter-spacing: 0.12em; text-transform: uppercase; }
.ingredient-file-summary { margin: 0.75rem 0 0; color: #c0cec8; font-size: 0.6875rem; line-height: 1.55; }
.ingredient-file dl { margin: 0.875rem 0 1rem; }
.ingredient-file dl div { padding: 0.5625rem 0; border-bottom: 1px solid var(--rule); }
.ingredient-file dt { color: #86a098; font-size: 0.5625rem; letter-spacing: 0.1em; text-transform: uppercase; }
.ingredient-file dd { margin: 0.1875rem 0 0; font-size: 0.6875rem; }
.ingredient-file a { min-height: 2.75rem; display: flex; justify-content: space-between; align-items: center; font-family: var(--display); font-variation-settings: "wdth" 60, "wght" 560; font-size: 0.9375rem; text-transform: uppercase; }
.ingredient-file .ingredient-details-button { min-height: 3.375rem; padding: 0.75rem 0.875rem; gap: 0.75rem; background: var(--jade); color: var(--white); transition: background var(--micro) var(--ease), color var(--micro) var(--ease), transform 120ms var(--ease); }
.ingredient-file .ingredient-details-button:hover { background: var(--jade-bright); color: var(--ink); }
.ingredient-file .ingredient-details-button:active { transform: scale(0.985); }
.ingredient-file .ingredient-details-button span { line-height: 1.05; }
.ingredient-file a img { width: 0.9375rem; height: 0.9375rem; filter: invert(52%) sepia(58%) saturate(550%) hue-rotate(116deg); }
.applications { min-height: 49.375rem; display: grid; grid-template-columns: 36% 64%; padding: 0; color: var(--ink); }
.applications > header { padding: 4.625rem 3.25rem 3.125rem var(--content-gutter); }
.applications h2 { margin: 1.125rem 0 1.75rem; font-size: clamp(4rem, 4.3vw, 4.125rem); line-height: 0.89; }
.applications header > p:last-child { max-width: 21.875rem; font-size: 0.8125rem; line-height: 1.6; }
.application-strip { display: grid; grid-template-columns: repeat(3, 1fr); background: var(--ink); }
.application-strip article { position: relative; min-width: 0; overflow: hidden; border-left: 1px solid var(--rule); }
.application-strip article > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transform: scale(1.001); transform-origin: center; }
.application-strip .application-base-image { filter: saturate(0.72) contrast(1.08) brightness(0.82); transition: transform 260ms cubic-bezier(0.23, 1, 0.32, 1); }
.application-strip .application-color-layer { z-index: 1; opacity: 0; filter: saturate(1.05) contrast(1.03) brightness(0.94); transition: opacity 220ms ease, transform 260ms cubic-bezier(0.23, 1, 0.32, 1); }
.application-strip article > div { position: absolute; z-index: 2; left: 0; right: 0; bottom: 0; height: 20.75rem; min-height: 20.75rem; display: grid; grid-template-rows: 2.5rem 8rem minmax(0, 1fr); align-content: start; padding: 2.125rem 1.5rem; background: rgba(3, 23, 20, 0.88); color: var(--white); transition: background-color 220ms ease; }
.application-strip small { display: block; align-self: start; color: var(--jade-bright); font-size: 0.5625rem; line-height: 1.45; letter-spacing: 0.12em; text-transform: uppercase; }
.application-strip h3 { align-self: start; margin: 0; font-family: var(--display); font-variation-settings: "wdth" 58, "wght" 560; font-size: 1.75rem; line-height: 0.95; text-transform: uppercase; }
.application-strip p { align-self: start; margin: 0; color: #becbc5; font-size: 0.6875rem; line-height: 1.45; }

@media (hover: hover) and (pointer: fine) {
  .application-strip .application-base-image { filter: grayscale(1) saturate(0.12) contrast(1.12) brightness(0.72); }
  .application-strip article:hover .application-base-image,
  .application-strip article:hover .application-color-layer { transform: scale(1.025); }
  .application-strip article:hover .application-color-layer { opacity: 1; }
  .application-strip article:hover > div { background-color: rgba(3, 23, 20, 0.82); }
}

@media (prefers-reduced-motion: reduce) {
  .application-strip .application-base-image,
  .application-strip .application-color-layer { transform: none !important; transition-duration: 140ms; }
}

.dossier { min-height: 40rem; display: grid; grid-template-columns: 34% 66%; padding: 4.375rem var(--content-gutter); color: var(--ink); }
.dossier-title { padding-right: 3.25rem; }
.dossier-title h2 { margin: 1.125rem 0 1.5625rem; font-size: clamp(4.75rem, 5.86vw, 5.625rem); line-height: 0.83; }
.dossier-title p:last-child { max-width: 18.75rem; font-size: 0.8125rem; line-height: 1.6; }
.table-wrap { overflow-x: auto; padding-top: 2rem; }
.dossier-table { width: 100%; min-width: 43rem; border-collapse: collapse; font-size: 0.6875rem; line-height: 1.4; font-variant-numeric: tabular-nums; }
.dossier-table th, .dossier-table td { padding: 1.1875rem 1rem 1.1875rem 0; border-bottom: 1px solid var(--ink-rule); text-align: left; vertical-align: top; }
.dossier-table thead th { border-top: 1px solid var(--ink); font-size: 0.5625rem; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; }
.dossier-table thead th:nth-child(1) { width: 30%; }
.dossier-table thead th:nth-child(2) { width: 17%; }
.dossier-table tbody th { font-weight: 650; }
.dossier-table caption { caption-side: bottom; padding-top: 1.125rem; color: #63736e; font-size: 0.625rem; text-align: left; }

.manufacturer { min-height: 47.5rem; position: relative; display: grid; grid-template-columns: 58% 42%; overflow: hidden; background: var(--ink); }
.manufacturer figure { position: relative; min-height: 47.5rem; margin: 0; }
.manufacturer figure > img { width: 100%; height: 100%; object-fit: cover; }
.manufacturer-copy { position: relative; z-index: 4; padding: 4.6875rem 3.875rem; background: rgba(4, 26, 23, 0.95); }
.manufacturer-copy h2 { margin: 1.125rem 0 1.5625rem; font-size: clamp(3.75rem, 4.43vw, 4.25rem); line-height: 0.9; }
.manufacturer-copy > p:not(.eyebrow) { color: #c3cec9; font-size: 0.8125rem; line-height: 1.6; }
.manufacturer-copy dl { margin: 1.75rem 0; }
.manufacturer-copy dl div { padding: 1rem 0; border-top: 1px solid var(--rule); }
.manufacturer-copy dt { color: var(--jade-bright); font-size: 0.5625rem; letter-spacing: 0.12em; text-transform: uppercase; }
.manufacturer-copy dd { margin: 0.4375rem 0 0; color: #d6dfdb; font-size: 0.6875rem; line-height: 1.5; }
.manufacturer-copy small { color: #8da29a; font-size: 0.5625rem; line-height: 1.4; }
.manufacturer-arc { position: absolute; z-index: 3; right: -13.125rem; top: -6.25rem; width: 56.25rem; opacity: 0.55; mix-blend-mode: screen; pointer-events: none; }

.quality-evidence { min-height: 48rem; display: grid; grid-template-columns: 31% 38% 31%; padding: 3.5rem var(--content-gutter); overflow: hidden; background: var(--ink); color: var(--white); }
.quality-evidence-intro { padding-right: clamp(2rem, 3.6vw, 3.5rem); }
.quality-evidence-intro h2 { margin: 1.125rem 0 1.75rem; font-size: clamp(3.75rem, 4.45vw, 4.625rem); line-height: 0.86; }
.quality-evidence-intro > p:not(.eyebrow) { max-width: 28rem; color: #b7c5bf; font-size: 0.8125rem; line-height: 1.6; }
.quality-evidence-intro ol { margin: 2rem 0 0; padding: 0; border-top: 1px solid var(--rule); list-style: none; }
.quality-evidence-intro li { padding: 1rem 0; border-bottom: 1px solid var(--rule); font-size: 0.6875rem; }
.quality-evidence-intro li b { display: inline-block; width: 3.125rem; color: var(--jade-bright); }
.quality-evidence-records { padding: 0 clamp(1.75rem, 3vw, 3rem); border-left: 1px solid var(--rule); }
.quality-evidence-records > h3 { max-width: 27rem; margin: 1.125rem 0 1.75rem; font-family: var(--display); font-variation-settings: "wdth" 56, "wght" 590; font-size: clamp(2.5rem, 3vw, 3.125rem); line-height: 0.92; text-transform: uppercase; }
.document-list { padding: 0; }
.document-list article { padding: 1.25rem 0; border-bottom: 1px solid var(--rule); }
.document-list article:first-child { border-top: 1px solid var(--rule); }
.document-list h4 { margin: 0 0 0.5rem; font-family: var(--display); font-variation-settings: "wdth" 60, "wght" 560; font-size: 1.3125rem; letter-spacing: 0.04em; text-transform: uppercase; }
.document-list p { margin: 0; color: #afc0b9; font-size: 0.6875rem; line-height: 1.5; }
.evidence-document-stack { position: relative; min-width: 0; min-height: 41rem; margin: 0; isolation: isolate; }
.evidence-document-stack::before { content: ""; position: absolute; inset: 3% 0 2% 2%; z-index: -1; border: 1px solid rgba(44, 187, 153, 0.24); background: radial-gradient(circle at 50% 40%, rgba(31, 153, 127, 0.16), transparent 54%), rgba(1, 18, 15, 0.62); }
.evidence-document-stack img { position: absolute; display: block; height: auto; object-fit: contain; background: transparent; box-shadow: 0 1.5rem 3rem rgba(0, 7, 6, 0.48); }
.evidence-fssc { z-index: 2; top: 2%; left: 3%; width: 53%; transform: rotate(-5deg); }
.evidence-halal { z-index: 1; top: 9%; right: -1%; width: 54%; transform: rotate(4deg); }
.evidence-coa { z-index: 4; bottom: 3%; left: 20%; width: 58%; transform: rotate(-1deg); }

.au-statement { min-height: 29.375rem; padding: 3.625rem var(--content-gutter); background: var(--jade); color: var(--ink); }
.au-statement > p { margin: 0; font-size: 0.625rem; font-weight: 700; letter-spacing: 0.15em; text-transform: uppercase; }
.au-statement h2 { margin: 1.125rem 0 2.625rem; font-size: clamp(4.5rem, 5.6vw, 5.375rem); line-height: 0.88; }
.au-statement h2 span { color: #d9eee6; }
.au-statement > div { display: grid; grid-template-columns: repeat(3, 1fr); gap: 4.375rem; }
.au-statement article { padding-top: 0.9375rem; border-top: 1px solid rgba(4, 26, 23, 0.35); }
.au-statement h3 { margin: 0 0 0.4375rem; font-family: var(--display); font-variation-settings: "wdth" 60, "wght" 600; font-size: 1.125rem; text-transform: uppercase; }
.au-statement article p { max-width: 18.75rem; margin: 0; font-size: 0.6875rem; line-height: 1.45; }

.contact-bridge { min-height: 31rem; display: grid; grid-template-columns: minmax(0, 58%) minmax(0, 42%); background: var(--ink); overflow: hidden; }
.contact-bridge-copy { display: flex; flex-direction: column; justify-content: center; min-width: 0; padding: 4rem var(--content-gutter); }
.contact-bridge-copy h2 { max-width: 43rem; margin: 1.125rem 0 1.5rem; font-size: clamp(4.5rem, 6.6vw, 6.75rem); line-height: 0.84; }
.contact-bridge-copy > p:not(.eyebrow) { max-width: 34rem; margin: 0; color: #c0cec8; font-size: 0.875rem; line-height: 1.6; }
.contact-bridge-range { margin-top: 1.75rem !important; padding-top: 1rem; border-top: 1px solid var(--rule); color: var(--jade-bright) !important; font-family: var(--display); font-variation-settings: "wdth" 60, "wght" 540; font-size: 0.75rem !important; letter-spacing: 0.06em; text-transform: uppercase; }
.contact-bridge-copy .button { width: fit-content; margin-top: 1.75rem; }
.contact-bridge-image { position: relative; min-height: 31rem; margin: 0; overflow: hidden; }
.contact-bridge-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, var(--ink), transparent 28%); pointer-events: none; }
.contact-bridge-image img { width: 100%; height: 100%; object-fit: cover; object-position: 54% center; filter: saturate(0.78) contrast(1.08); }

/* Stage 05: motion is progressively enhanced; the unenhanced page remains fully visible. */
html.motion-ready:not(.motion-started) .hero-copy > .eyebrow,
html.motion-ready:not(.motion-started) .hero-copy > h1,
html.motion-ready:not(.motion-started) .hero-copy > .hero-kicker,
html.motion-ready:not(.motion-started) .hero-copy > .hero-intro,
html.motion-ready:not(.motion-started) .hero-copy > .hero-actions,
html.motion-ready:not(.motion-started) .hero-copy > .hero-foot { opacity: 0; translate: 0 1rem; }
html.motion-ready .hero-copy > .eyebrow,
html.motion-ready .hero-copy > h1,
html.motion-ready .hero-copy > .hero-kicker,
html.motion-ready .hero-copy > .hero-intro,
html.motion-ready .hero-copy > .hero-actions,
html.motion-ready .hero-copy > .hero-foot { transition: opacity var(--enter) var(--ease-enter), translate var(--enter) var(--ease-enter); }
html.motion-ready .hero-copy > h1 { transition-delay: 45ms; }
html.motion-ready .hero-copy > .hero-kicker { transition-delay: 90ms; }
html.motion-ready .hero-copy > .hero-intro { transition-delay: 135ms; }
html.motion-ready .hero-copy > .hero-actions { transition-delay: 180ms; }
html.motion-ready .hero-copy > .hero-foot { transition-delay: 225ms; }
html.motion-ready:not(.motion-started) .hero-media { opacity: 0; clip-path: inset(0 0 0 14%); translate: 1rem 0; }
html.motion-ready .hero-media { transition: opacity 680ms var(--ease-enter) 70ms, clip-path 720ms var(--ease-enter) 70ms, translate 720ms var(--ease-enter) 70ms; }
html.motion-ready .motion-reveal { transition: opacity 520ms var(--ease-enter), clip-path 620ms var(--ease-enter), translate 620ms var(--ease-enter); }
html.motion-ready .motion-reveal:not(.is-visible) { opacity: 0; clip-path: inset(0 10% 0 0); translate: -0.75rem 0; }

.button, .header-cta, .ingredient-details-button, .enquiry-form > button { position: relative; isolation: isolate; overflow: hidden; }
.button::before, .header-cta::before, .ingredient-details-button::before, .enquiry-form > button::before { content: ""; position: absolute; z-index: 2; inset: 1px; border-top: 1px solid rgba(238, 243, 238, 0.82); border-right: 1px solid rgba(238, 243, 238, 0.42); opacity: 0; transform: scaleX(0.7); transform-origin: left top; pointer-events: none; transition: opacity var(--micro) var(--ease-out), transform var(--micro) var(--ease-out); }
.button:focus-visible::before, .header-cta:focus-visible::before, .ingredient-details-button:focus-visible::before, .enquiry-form > button:focus-visible::before { opacity: 1; transform: scaleX(1); }
.field label { transition: color var(--micro) var(--ease-out); }
.field:focus-within label { color: #08715f; }

.contact { min-height: 45rem; display: grid; grid-template-columns: minmax(0, 45%) minmax(0, 55%); padding: 4.75rem var(--content-gutter); color: var(--ink); }
.contact > * { min-width: 0; }
.contact-copy { padding-right: clamp(2.5rem, 5.8vw, 5.625rem); }
.contact-copy h2 { max-inline-size: 100%; margin: 1.125rem 0 1.75rem; white-space: normal; font-size: clamp(4.25rem, 5.1vw, 5.25rem); line-height: 0.86; }
.contact-copy > p:not(.eyebrow) { max-width: 30rem; font-size: 0.8125rem; line-height: 1.65; }
.contact-copy small { display: block; margin-top: 2rem; color: #62736d; font-size: 0.625rem; }
.enquiry-form { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem 1.75rem; align-content: start; padding-top: 1rem; }
.field { min-width: 0; }
.field-wide, .form-error-summary, .enquiry-form > button, .form-note { grid-column: 1 / -1; }
.field label { display: block; font-size: 0.625rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; }
.field label span { color: var(--error); }
.field input, .field select, .field textarea { display: block; width: 100%; min-height: 2.875rem; padding: 0.625rem 0.125rem; border: 0; border-bottom: 1px solid var(--ink-rule); border-radius: 0; outline: 0; background: transparent; color: var(--ink); font-size: 1rem; transition: border-color var(--micro) var(--ease), background var(--micro) var(--ease); }
.field textarea { min-height: 5.25rem; resize: vertical; }
.field input:hover, .field select:hover, .field textarea:hover { border-color: rgba(4, 26, 23, 0.6); }
.field input:focus, .field select:focus, .field textarea:focus { border-bottom-color: var(--jade); background: rgba(255, 255, 255, 0.28); }
.field.is-invalid input, .field.is-invalid select, .field.is-invalid textarea { border-bottom: 2px solid var(--error); background: rgba(169, 47, 39, 0.06); }
.field-hint { display: block; margin-top: 0.35rem; color: #5b6c66; font-size: 0.6875rem; line-height: 1.4; }
.field-error { display: block; min-height: 1.15rem; padding-top: 0.25rem; color: var(--error); font-size: 0.75rem; line-height: 1.35; }
.form-error-summary { padding: 1rem 1.125rem; border-left: 4px solid var(--error); background: rgba(169, 47, 39, 0.09); color: #681f1a; }
.form-error-summary strong { font-size: 0.875rem; }
.form-error-summary ul { margin: 0.5rem 0 0; padding-left: 1.15rem; font-size: 0.75rem; line-height: 1.5; }
.form-error-summary a { text-decoration: underline; text-underline-offset: 0.15rem; }
.enquiry-form > button { width: 16.25rem; min-height: 3.125rem; margin-top: 0.25rem; border: 0; background: var(--ink); color: var(--white); display: flex; align-items: center; justify-content: center; gap: 0.75rem; font-family: var(--display); font-variation-settings: "wdth" 52, "wght" 600; font-size: 1rem; letter-spacing: 0.04em; text-transform: uppercase; transition: background var(--micro) var(--ease), transform 120ms var(--ease); }
.enquiry-form > button:hover { background: var(--jade); }
.enquiry-form > button:active { transform: scale(0.98); }
.enquiry-form > button img { width: 1rem; height: 1rem; filter: brightness(0) invert(1); }
.form-note { margin: 0; color: #5f706a; font-size: 0.6875rem; }

.site-footer { min-height: 8rem; display: grid; grid-template-columns: 14rem minmax(0, 1.15fr) minmax(0, 1fr); align-items: center; gap: 2rem; padding: 1.25rem var(--content-gutter); border-top: 1px solid var(--rule); background: var(--ink); }
.site-footer > img { width: 9.0625rem; height: auto; }
.site-footer p { color: #a9b8b2; font-size: 0.625rem; line-height: 1.5; }
.site-footer nav { display: grid; grid-template-columns: repeat(3, max-content); justify-content: space-between; gap: 1.25rem; color: #c4cec9; font-size: 0.625rem; }
.site-footer nav a:hover { color: var(--jade-bright); }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  html.motion-ready:not(.motion-started) .hero-copy > *,
  html.motion-ready:not(.motion-started) .hero-media,
  html.motion-ready .motion-reveal:not(.is-visible) { opacity: 1; clip-path: none; translate: none; }
  .hero-copy > *, .hero-media, .motion-reveal { transition: none !important; }
  .application-strip .application-base-image,
  .application-strip .application-color-layer { transform: none !important; transition-duration: 140ms; }
}

@media (hover: hover) and (pointer: fine) {
  .button:hover::before, .header-cta:hover::before, .ingredient-details-button:hover::before, .enquiry-form > button:hover::before { opacity: 1; transform: scaleX(1); }
}
