/*
Theme Name: VoriTrade Products Child
Theme URI: https://voritrade.com/
Description: A lightweight GeneratePress child theme for VoriTrade product detail pages.
Author: VoriTrade
Template: generatepress
Version: 1.12.56
Text Domain: xuri-products-child
*/

:root {
  --xuri-ink: #16362d;
  --xuri-green: #1f5c47;
  --xuri-red: #c63b2b;
  --xuri-cream: #f7f4ec;
  --xuri-line: #dce5df;
  --xuri-muted: #5d716a;
}

/* Privacy-first Google Analytics consent notice. */
.xuri-analytics-consent {
  align-items: center;
  background: #fff;
  border: 1px solid var(--xuri-line);
  border-radius: 14px;
  bottom: 1rem;
  box-shadow: 0 16px 50px rgb(22 54 45 / 18%);
  color: var(--xuri-ink);
  display: flex;
  gap: 1.25rem;
  justify-content: space-between;
  left: 50%;
  max-width: min(760px, calc(100vw - 2rem));
  padding: 1rem 1.1rem;
  position: fixed;
  transform: translateX(-50%);
  width: 100%;
  z-index: 99999;
}
.xuri-analytics-consent[hidden] { display: none; }
.xuri-analytics-consent__copy { font-size: .9rem; line-height: 1.5; margin: 0; }
.xuri-analytics-consent__copy a { color: var(--xuri-green); font-weight: 600; }
.xuri-analytics-consent__actions { display: flex; flex: 0 0 auto; gap: .6rem; }
.xuri-analytics-consent__button {
  border: 1px solid var(--xuri-green);
  border-radius: 999px;
  cursor: pointer;
  font: inherit;
  font-size: .82rem;
  font-weight: 700;
  padding: .65rem 1rem;
}
.xuri-analytics-consent__button--decline { background: #fff; color: var(--xuri-green); }
.xuri-analytics-consent__button--accept { background: var(--xuri-green); color: #fff; }
.xuri-analytics-consent__button:focus-visible { outline: 3px solid #e9a773; outline-offset: 2px; }
@media (max-width: 640px) {
  .xuri-analytics-consent { align-items: stretch; flex-direction: column; }
  .xuri-analytics-consent__actions { width: 100%; }
  .xuri-analytics-consent__button { flex: 1; }
}

/* Resources page */
.xuri-resources__hero { background: var(--xuri-ink); color: #fff; padding: clamp(4rem, 9vw, 8rem) 0; }
.xuri-resources__hero .xuri-home__eyebrow { color: #e9a773; }
.xuri-resources h1, .xuri-resources h2, .xuri-resources h3 { font-family: Georgia, 'Times New Roman', serif; }
.xuri-resources__hero h1 { color: #fff; font-size: clamp(3.5rem, 7vw, 7.2rem); font-weight: 600; letter-spacing: -.055em; line-height: .9; margin: 1.25rem 0 2rem; max-width: 12ch; }
.xuri-resources__hero h1 em, .xuri-resources__topics h2 em, .xuri-resources__next-step h2 em { color: #efa36f; }
.xuri-resources__intro { color: rgb(255 255 255 / 78%); font-size: 1.08rem; line-height: 1.7; max-width: 42rem; }
.xuri-resources__intro p, .xuri-resources__next-step-text p { margin: 0; }
.xuri-resources__enquiry { background: #fff; padding: clamp(4rem, 8vw, 7rem) 0; }
.xuri-resources__section-heading { align-items: end; display: flex; gap: clamp(2rem, 7vw, 7rem); justify-content: space-between; }
.xuri-resources__section-heading h2 { color: var(--xuri-ink); font-size: clamp(2.6rem, 5vw, 4.8rem); font-weight: 600; letter-spacing: -.045em; line-height: .95; margin: 1rem 0 0; max-width: 11ch; }
.xuri-resources__section-heading h2 em { color: #d97845; }
.xuri-resources__section-intro { color: var(--xuri-muted); line-height: 1.7; max-width: 31rem; }
.xuri-resources__section-intro p { margin: 0; }
.xuri-resources__enquiry-list { border-top: 1px solid var(--xuri-line); list-style: none; margin: clamp(2.5rem, 5vw, 4rem) 0 0; padding: 0; }
.xuri-resources__enquiry-list li { align-items: start; border-bottom: 1px solid var(--xuri-line); display: grid; gap: 1.5rem; grid-template-columns: 5rem minmax(0, 1fr); padding: clamp(1.5rem, 3vw, 2.5rem) 0; }
.xuri-resources__enquiry-list span { color: var(--xuri-red); font-size: .74rem; letter-spacing: .12em; padding-top: .45rem; }
.xuri-resources__enquiry-list h3 { color: var(--xuri-ink); font-size: clamp(1.4rem, 2.1vw, 2rem); font-weight: 600; line-height: 1.1; margin: 0 0 .6rem; }
.xuri-resources__enquiry-list div div { color: var(--xuri-muted); line-height: 1.7; max-width: 45rem; }
.xuri-resources__enquiry-list p { margin: 0; }
.xuri-resources__topics { background: var(--xuri-cream); padding: clamp(4rem, 8vw, 7rem) 0; }
.xuri-resources__topics h2, .xuri-resources__next-step h2 { color: var(--xuri-ink); font-size: clamp(2.6rem, 5vw, 4.8rem); font-weight: 600; letter-spacing: -.045em; line-height: .95; margin: 1rem 0 2.5rem; max-width: 12ch; }
.xuri-resources__cards { border-left: 1px solid var(--xuri-line); display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.xuri-resources__cards article { border-right: 1px solid var(--xuri-line); padding: clamp(1.75rem, 3vw, 3rem); }
.xuri-resources__cards span { color: var(--xuri-red); font-size: .74rem; letter-spacing: .12em; }
.xuri-resources__cards h3 { color: var(--xuri-ink); font-size: clamp(1.55rem, 2.3vw, 2.25rem); font-weight: 600; line-height: 1.1; margin: 3.25rem 0 1rem; }
.xuri-resources__cards div, .xuri-resources__next-step-text { color: var(--xuri-muted); line-height: 1.7; }
.xuri-resources__visuals { background: #fff; padding: clamp(4rem, 8vw, 7rem) 0; }
.xuri-resources__visuals-heading { align-items: end; display: flex; gap: clamp(2rem, 7vw, 7rem); justify-content: space-between; margin-bottom: clamp(2.5rem, 5vw, 4rem); }
.xuri-resources__visuals-heading h2 { color: var(--xuri-ink); font-size: clamp(2.6rem, 5vw, 4.8rem); font-weight: 600; letter-spacing: -.045em; line-height: .95; margin: 1rem 0 0; max-width: 12ch; }
.xuri-resources__visuals-heading h2 em { color: #d97845; }
.xuri-resources__visuals-heading > p { color: var(--xuri-muted); line-height: 1.7; margin: 0; max-width: 30rem; }
.xuri-resources__visual-grid { display: grid; gap: clamp(.8rem, 1.5vw, 1.5rem); grid-template-columns: repeat(12, minmax(0, 1fr)); }
.xuri-resources__visual { margin: 0; overflow: hidden; position: relative; }
.xuri-resources__visual img { display: block; height: 100%; object-fit: cover; transition: transform .45s ease; width: 100%; }
.xuri-resources__visual:hover img { transform: scale(1.03); }
.xuri-resources__visual figcaption { background: linear-gradient(0deg, rgb(10 27 22 / 78%), transparent); bottom: 0; color: #fff; font-size: .78rem; left: 0; letter-spacing: .1em; padding: 3.25rem 1.1rem 1rem; position: absolute; right: 0; text-transform: uppercase; }
.xuri-resources__visual--field { aspect-ratio: 1.5; grid-column: span 5; }
.xuri-resources__visual--crop { aspect-ratio: 1.5; grid-column: span 7; }
.xuri-resources__visual--production { aspect-ratio: 1.55; grid-column: span 8; }
.xuri-resources__visual--laboratory { aspect-ratio: .84; grid-column: span 4; grid-row: span 2; }
.xuri-resources__visual--cartons { aspect-ratio: 1.55; grid-column: span 5; }
.xuri-resources__visual--container { aspect-ratio: 1.55; grid-column: span 7; }
.xuri-resources__next-step { background: #fff; padding: clamp(4rem, 8vw, 7rem) 0; }
.xuri-resources__next-step-grid { align-items: end; display: grid; gap: clamp(2rem, 7vw, 7rem); grid-template-columns: repeat(2, minmax(0, 1fr)); }
.xuri-resources__next-step-text { margin-bottom: 1.75rem; max-width: 33rem; }

/* Quality & Compliance page */
.xuri-quality-page__hero { background: var(--xuri-cream); padding: 72px 0; }
.xuri-quality-page__hero-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 72px; align-items: center; }
.xuri-quality-page h1, .xuri-quality-page h2, .xuri-quality-page h3 { color: var(--xuri-ink); }
.xuri-quality-page h1 { font-size: clamp(3rem, 6vw, 5.6rem); line-height: .94; margin: 0 0 28px; }
.xuri-quality-page h1 em, .xuri-quality-page h2 em { color: #d97845; }
.xuri-quality-page__copy > div { color: var(--xuri-muted); font-size: 1.12rem; line-height: 1.7; max-width: 42rem; }
.xuri-quality-page__image img, .xuri-quality-page__placeholder { display: block; width: 100%; min-height: 390px; object-fit: cover; }
.xuri-quality-page__placeholder { display: grid; place-items: center; padding: 2rem; border: 1px solid var(--xuri-line); color: var(--xuri-muted); text-align: center; }
.xuri-quality-page__discussion { background: var(--xuri-ink); color: #fff; padding: 88px 0; }
.xuri-quality-page__discussion h2 { color: #fff; font-size: clamp(2.5rem, 5vw, 4.4rem); margin: 0 0 36px; }
.xuri-quality-page__discussion .xuri-home__eyebrow { color: #e9a773; }
.xuri-quality-page__cards { display: grid; grid-template-columns: repeat(3, 1fr); border: 1px solid rgba(255,255,255,.25); }
.xuri-quality-page__cards article { min-height: 250px; padding: 28px; border-right: 1px solid rgba(255,255,255,.25); }
.xuri-quality-page__cards article:last-child { border: 0; }
.xuri-quality-page__cards span { color: #e9a773; font-size: .82rem; letter-spacing: .12em; }
.xuri-quality-page__cards h3 { color: #fff; font-size: 1.6rem; margin: 52px 0 14px; }
.xuri-quality-page__cards div { color: #d4dfd8; line-height: 1.65; }
.xuri-quality-page__environments { background: #fff; padding: 88px 0; }
.xuri-quality-page__environments-heading { align-items: end; display: flex; gap: clamp(2rem, 7vw, 7rem); justify-content: space-between; margin-bottom: clamp(2.5rem, 5vw, 4rem); }
.xuri-quality-page__environments h2 { font-size: clamp(2.5rem, 5vw, 4.4rem); line-height: .95; margin: 14px 0 0; }
.xuri-quality-page__environments-heading > p { color: var(--xuri-muted); line-height: 1.7; margin: 0; max-width: 30rem; }
.xuri-quality-page__environment-grid { display: grid; gap: clamp(1rem, 2vw, 1.5rem); grid-template-columns: repeat(3, minmax(0, 1fr)); }
.xuri-quality-page__environment-grid figure { aspect-ratio: .9; margin: 0; overflow: hidden; position: relative; }
.xuri-quality-page__environment-grid img { display: block; height: 100%; object-fit: cover; width: 100%; }
.xuri-quality-page__environment-grid figcaption { background: linear-gradient(0deg, rgb(10 27 22 / 78%), transparent); bottom: 0; color: #fff; font-size: .78rem; left: 0; letter-spacing: .1em; padding: 3.25rem 1.1rem 1rem; position: absolute; right: 0; text-transform: uppercase; }
@media (max-width: 768px) {
  .xuri-quality-page__hero-grid { grid-template-columns: 1fr; gap: 36px; }
  .xuri-quality-page__image img, .xuri-quality-page__placeholder { min-height: 300px; }
  .xuri-quality-page__cards { grid-template-columns: 1fr; }
  .xuri-quality-page__cards article { min-height: auto; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.25); }
  .xuri-quality-page__cards article:last-child { border-bottom: 0; }
  .xuri-quality-page__cards h3 { margin-top: 24px; }
  .xuri-quality-page__environments { padding: 64px 0; }
  .xuri-quality-page__environments-heading { align-items: start; flex-direction: column; }
  .xuri-quality-page__environment-grid { grid-template-columns: 1fr; }
  .xuri-quality-page__environment-grid figure { aspect-ratio: 1.2; }
}

body {
  background: var(--xuri-cream);
}

.xuri-shell {
  margin: 0 auto;
  max-width: 1180px;
  padding-left: clamp(1.25rem, 4vw, 2.5rem);
  padding-right: clamp(1.25rem, 4vw, 2.5rem);
}

/* Replace the generic hosting header and footer with the brand shell.
   #masthead is GeneratePress' header id (inc/class-html-attributes.php).
   GeneratePress 3.6.1 never outputs a #colophon wrapper: its footer is
   <div class="site-footer"> wrapping <footer class="site-info">, so the old
   #colophon selector matched nothing and both footers rendered at once. */
#masthead,
.site-footer {
  display: none;
}

.xuri-site-header {
  background: var(--xuri-ink);
  border-bottom: 1px solid rgb(255 255 255 / 16%);
  color: #fff;
  position: relative;
  z-index: 20;
}

.xuri-site-header__inner,
.xuri-site-footer__inner {
  align-items: center;
  display: flex;
  justify-content: space-between;
}

.xuri-site-header__inner {
  min-height: 5.5rem;
}

.xuri-brand {
  align-items: center;
  color: #fff;
  display: inline-flex;
  font-size: 1.05rem;
  font-weight: 700;
  gap: 0.55rem;
  letter-spacing: 0.13em;
  margin: 0;
  text-decoration: none;
  text-transform: uppercase;
  white-space: nowrap;
}

.xuri-brand__logo {
  display: block;
  height: 3.5rem;
  object-fit: contain;
  width: auto;
}

.xuri-site-nav {
  display: flex;
  gap: clamp(0.65rem, 1.45vw, 1.25rem);
}

.xuri-site-nav a,
.xuri-site-footer a {
  color: inherit;
  font-weight: 600;
  text-decoration: none;
}

.xuri-site-nav a { font-size: 0.88rem; white-space: nowrap; }

.xuri-mobile-nav { display: none; }

.xuri-site-nav a:hover,
.xuri-site-nav a:focus-visible,
.xuri-site-footer a:hover,
.xuri-site-footer a:focus-visible {
  color: #efad78;
}

.xuri-header-cta,
.xuri-button {
  background: var(--xuri-red);
  border: 1px solid var(--xuri-red);
  color: #fff;
  display: inline-block;
  font-weight: 700;
  padding: 0.85rem 1.2rem;
  text-decoration: none;
}

.xuri-header-cta {
  background: #fff;
  border-color: #fff;
  color: var(--xuri-ink);
  white-space: nowrap;
}

.xuri-header-cta:hover,
.xuri-header-cta:focus-visible {
  background: #efad78;
  border-color: #efad78;
  color: var(--xuri-ink);
}

.xuri-site-footer {
  background: #111f1a;
  color: #d3ded7;
  padding: 2.5rem 0;
}

.xuri-site-footer p:not(.xuri-brand) {
  font-size: 0.9rem;
  margin: 0.8rem 0 0;
}

.xuri-site-footer__copyright {
  color: rgb(211 222 215 / 76%);
  font-size: 0.78rem !important;
}

.xuri-brand--footer {
  font-size: 0.92rem;
}

.xuri-brand--footer .xuri-brand__logo {
  height: 4.5rem;
  width: auto;
}

.xuri-site-footer__links {
  display: flex;
  gap: 1.25rem;
}

.xuri-product {
  color: var(--xuri-ink);
}

.xuri-product__section {
  margin: 0 auto;
  max-width: 1180px;
  padding: clamp(2.5rem, 6vw, 5.5rem) clamp(1.25rem, 4vw, 2.5rem);
}

.xuri-product__hero {
  background: #f4f1df;
  color: var(--xuri-ink);
  padding: clamp(4rem, 9vw, 8rem) 0;
}

.xuri-product__eyebrow {
  color: var(--xuri-red);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  margin: 0 0 0.8rem;
  text-transform: uppercase;
}

.xuri-product h1,
.xuri-product h2 {
  color: var(--xuri-ink);
  line-height: 1.12;
}

.xuri-product h1 {
  color: var(--xuri-ink);
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(2.25rem, 3.6vw, 3.6rem);
  font-weight: 600;
  letter-spacing: -0.04em;
  line-height: 0.98;
  margin: 0 0 1.25rem;
}

.xuri-product h2 {
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(1.65rem, 3vw, 2.6rem);
  font-weight: 600;
  margin: 0 0 1.25rem;
}

.xuri-product h2 em { color: #d97845; }

.xuri-product__hero-grid { align-items: start; display: grid; gap: clamp(2.5rem, 7vw, 7rem); grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); }
.xuri-product__hero .xuri-product__eyebrow { color: var(--xuri-red); }
.xuri-product__hero-gallery { min-width: 0; }
.xuri-product__hero-image { background: #fff; min-height: 30rem; }
.xuri-product__hero-image img { display: block; height: 100%; object-fit: cover; width: 100%; }
.xuri-product__hero-image-placeholder { align-items: center; background: #e9e4d8; color: var(--xuri-muted); display: flex; height: 100%; justify-content: center; min-height: 30rem; padding: 2rem; text-align: center; }
.xuri-product__thumbnails { display: flex; gap: .8rem; margin-top: 1rem; overflow-x: auto; padding-bottom: .25rem; }
.xuri-product__thumbnail { position: relative; background: #fff; border: 2px solid transparent; cursor: pointer; flex: 0 0 5.25rem; padding: 0; }
.xuri-product__thumbnail.is-active, .xuri-product__thumbnail:focus-visible { border-color: var(--xuri-red); outline: 0; }
.xuri-product__thumbnail img { aspect-ratio: 1 / 1; display: block; height: 100%; object-fit: cover; width: 100%; }
.xuri-product__procurement { text-align: center; }
.xuri-product__procurement h2 { font-size: clamp(1.65rem, 3vw, 2.6rem); margin-left: auto; margin-right: auto; max-width: 42rem; }

.xuri-product__intro {
  color: var(--xuri-muted);
  font-size: clamp(1.05rem, 1.5vw, 1.25rem);
  line-height: 1.7;
  max-width: 52rem;
}

.xuri-product__intro p { margin: 0 0 1.5rem; }
.xuri-product__buyer-brief { border-bottom: 1px solid var(--xuri-line); border-top: 1px solid var(--xuri-line); margin: 1.75rem 0; padding: 1.25rem 0; }
.xuri-product__buyer-brief > p { color: var(--xuri-ink); font-size: .78rem; font-weight: 700; letter-spacing: .1em; margin: 0 0 .9rem; text-transform: uppercase; }
.xuri-product__buyer-brief ul { display: grid; gap: .6rem 1.25rem; grid-template-columns: repeat(2, minmax(0, 1fr)); list-style: none; margin: 0; padding: 0; }
.xuri-product__buyer-brief li { color: var(--xuri-muted); padding-left: 1.1rem; position: relative; }
.xuri-product__buyer-brief li::before { color: var(--xuri-red); content: '•'; left: 0; position: absolute; }
.xuri-product__hero .xuri-button--light { background: var(--xuri-ink); border-color: var(--xuri-ink); color: #fff; }

.xuri-product__overview { display: grid; gap: 1.25rem; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.xuri-product__overview--single { grid-template-columns: minmax(0, 1fr); }
.xuri-product__overview-card { border: 1px solid var(--xuri-line); padding: clamp(1.5rem, 4vw, 3rem); }
.xuri-product__overview-card > div, .xuri-product__package-copy { color: var(--xuri-muted); line-height: 1.7; }
.xuri-product__summary-copy strong { color: var(--xuri-ink); font-weight: 700; }
.xuri-product__summary-copy em { color: #d97845; }
.xuri-product__summary-copy [style*="color"] strong,
.xuri-product__summary-copy [style*="color"] em { color: inherit; }
.xuri-product__overview-card p:last-child, .xuri-product__package-copy p:last-child { margin-bottom: 0; }
.xuri-product__package { background: #f4f1df; padding: clamp(4rem, 8vw, 7rem) 0; }
/* Packing photos: same photo treatment as the exhibition block —
   full-width 3-up grid, 4:3 crops, copy above the grid. */
.xuri-product__package-grid { display: block; }
.xuri-product__package-placeholder { min-height: 25rem; }
.xuri-product__package-gallery { display: grid; gap: 1rem; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.xuri-product__package-gallery img { aspect-ratio: 4 / 3; display: block; height: 100%; object-fit: cover; width: 100%; }
.xuri-product__package-copy { margin-bottom: clamp(1.5rem, 3vw, 2.5rem); max-width: 62ch; }
.xuri-product__package-placeholder { align-items: center; background: var(--xuri-ink); color: rgb(255 255 255 / 75%); display: flex; justify-content: center; padding: 2rem; text-align: center; }

/* Product detail gallery: sits directly under the product introduction,
   3-up like the exhibition grid. */
.xuri-product__detail-gallery {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.xuri-product__detail-figure { margin: 0; }

.xuri-product__detail-gallery img {
  aspect-ratio: 4 / 3;
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.xuri-product__gallery {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}.xuri-product__gallery img {
  aspect-ratio: 1 / 1;
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.xuri-product__video {
  aspect-ratio: 16 / 9;
  margin-top: 1.5rem;
}

.xuri-product__video iframe,
.xuri-product__video video {
  border: 0;
  height: 100%;
  width: 100%;
}

.xuri-product__specifications {
	border-collapse: collapse;
	margin: clamp(2rem, 4vw, 3.25rem) auto 0;
	max-width: 1080px;
	text-align: left;
	width: 100%;
}

.xuri-product__specifications th,
.xuri-product__specifications td {
  border-bottom: 1px solid var(--xuri-line);
  padding: 1rem 0.75rem;
  text-align: left;
  vertical-align: top;
}

.xuri-product__specifications th {
	color: var(--xuri-green);
	font-weight: 700;
	width: 34%;
}

.xuri-product__why { background: var(--xuri-ink); color: #fff; padding: clamp(4rem, 8vw, 7rem) 0; }
.xuri-product__why .xuri-product__eyebrow, .xuri-product__why h2 { color: #fff; }
.xuri-product__why h2 { font-size: clamp(2.7rem, 5vw, 4.8rem); line-height: .95; }
.xuri-product__why h2 em { color: #efa36f; }
.xuri-product__why-grid { display: grid; gap: 1rem; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.xuri-product__why-card { background: rgb(255 255 255 / 8%); }
.xuri-product__why-image img, .xuri-product__why-image-placeholder { aspect-ratio: 4 / 3; display: block; height: 100%; object-fit: cover; width: 100%; }
.xuri-product__why-image-placeholder { align-items: center; background: rgb(255 255 255 / 10%); color: rgb(255 255 255 / 68%); display: flex; justify-content: center; padding: 1rem; text-align: center; }
.xuri-product__why-copy { padding: clamp(1.25rem, 2.5vw, 2rem); }
.xuri-product__why-copy span { color: #efa36f; display: block; font-size: .74rem; letter-spacing: .12em; margin-bottom: 1.35rem; }
.xuri-product__why-copy h3 { font-family: Georgia, 'Times New Roman', serif; font-size: clamp(1.35rem, 2.3vw, 2.05rem); font-weight: 600; line-height: 1.1; margin: 0; }
.xuri-product__exhibition h2 { font-size: clamp(2.5rem, 5vw, 4.8rem); line-height: .95; }
.xuri-product__exhibition-grid { display: grid; gap: 1rem; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.xuri-product__exhibition-grid img { aspect-ratio: 4 / 3; display: block; height: 100%; object-fit: cover; width: 100%; }
.xuri-product__exhibition-placeholder { align-items: center; background: #f4f1df; border: 1px solid var(--xuri-line); color: var(--xuri-muted); display: flex; min-height: 14rem; padding: 2rem; }

.xuri-product__enquiry { background: #e9dfce; padding: clamp(4rem, 8vw, 7rem) 0; }
.xuri-product__enquiry-grid { align-items: end; display: grid; gap: clamp(2rem, 7vw, 7rem); grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.xuri-product__enquiry h2 { font-size: clamp(2.5rem, 5vw, 4.8rem); line-height: .95; margin: 0; }
.xuri-product__enquiry p:not(.xuri-product__eyebrow) { line-height: 1.65; margin: 0 0 1.5rem; max-width: 34rem; }

.xuri-products {
  color: var(--xuri-ink);
}

.xuri-products__hero {
  background: var(--xuri-ink);
  color: #fff;
  padding: clamp(4rem, 9vw, 8rem) 0;
}

.xuri-products__eyebrow,
.xuri-products__card-category {
  color: var(--xuri-red);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  margin: 0 0 0.8rem;
  text-transform: uppercase;
}

.xuri-products h1,
.xuri-products h2 {
  color: var(--xuri-ink);
  line-height: 1.12;
}

.xuri-products h1 {
  color: #fff;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(3.5rem, 7vw, 7.2rem);
  font-weight: 600;
  letter-spacing: -0.055em;
  line-height: 0.9;
  margin: 0;
}

.xuri-products h1 em { color: #efa36f; }
.xuri-products__hero-grid { align-items: end; display: grid; gap: 3rem; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); }
.xuri-products__hero-grid > p { color: rgb(255 255 255 / 75%); font-size: 1.05rem; line-height: 1.7; margin: 0; max-width: 31rem; }
.xuri-products__categories, .xuri-products__list { padding: clamp(4rem, 8vw, 7rem) 0; }
.xuri-products__categories { background: #fff; }
.xuri-products__list { background: var(--xuri-cream); }
.xuri-products__section-heading { margin-bottom: 2.75rem; }
.xuri-products__section-heading h2 { font-family: Georgia, 'Times New Roman', serif; font-size: clamp(2.7rem, 5vw, 4.8rem); font-weight: 600; letter-spacing: -.04em; margin: 0; }
.xuri-products__section-heading h2 em { color: #d97845; }
.xuri-products__categories-grid { background: var(--xuri-line); border: 1px solid var(--xuri-line); display: grid; gap: 1px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.xuri-products__category-card { background: #fff; color: inherit; display: flex; flex-direction: column; min-height: 25rem; padding: 1.25rem; text-decoration: none; }
.xuri-products__category-card:focus-visible, .xuri-products__category-card:hover { box-shadow: inset 0 0 0 2px var(--xuri-red); outline: 0; }
.xuri-products__category-number { color: var(--xuri-red); font-size: .72rem; letter-spacing: .12em; }
.xuri-products__category-image { display: block; margin-top: 1rem; overflow: hidden; }
.xuri-products__category-image img { aspect-ratio: 4 / 3; display: block; object-fit: cover; transition: transform 180ms ease; width: 100%; }
.xuri-products__category-card:hover img, .xuri-products__category-card:focus-visible img { transform: scale(1.035); }
.xuri-products__category-title { font-family: Georgia, 'Times New Roman', serif; font-size: clamp(1.45rem, 2.2vw, 2rem); font-weight: 600; line-height: 1.08; margin: 1.25rem 0 1rem; }
.xuri-products__category-action { border-top: 1px solid var(--xuri-line); font-weight: 700; margin-top: auto; padding-top: 1rem; }

.xuri-products__grid {
  display: grid;
  gap: 1.5rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.xuri-products__card {
  border: 1px solid var(--xuri-line);
  margin: 0;
}

.xuri-products__card-link {
  color: inherit;
  display: block;
  height: 100%;
  text-decoration: none;
}

.xuri-products__card-link:focus-visible {
  outline: 3px solid var(--xuri-red);
  outline-offset: 3px;
}

.xuri-products__card-image img {
  aspect-ratio: 1 / 1;
  display: block;
  height: auto;
  object-fit: cover;
  width: 100%;
}

.xuri-products__card-content {
  padding: 1.25rem;
}

.xuri-products__card-content h2 {
  font-size: 1.5rem;
  margin: 0;
}

.xuri-products__card-action {
  color: var(--xuri-green);
  font-weight: 700;
  margin: 1rem 0 0;
}

.xuri-products__empty {
  border: 1px solid var(--xuri-line);
  margin: 0;
  padding: 1.25rem;
}

.xuri-products__buyer-path { background: var(--xuri-ink); color: #fff; padding: clamp(4rem, 8vw, 7rem) 0; }
.xuri-products__buyer-path .xuri-products__eyebrow, .xuri-products__buyer-path h2 { color: #fff; }
.xuri-products__buyer-path h2 em { color: #efa36f; }
.xuri-products__buyer-path-grid { border: 1px solid rgb(255 255 255 / 24%); display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); list-style: none; margin: 0 0 2rem; padding: 0; }
.xuri-products__buyer-path-grid li { border-right: 1px solid rgb(255 255 255 / 24%); padding: clamp(1.4rem, 3vw, 2.25rem); }
.xuri-products__buyer-path-grid li:last-child { border-right: 0; }
.xuri-products__buyer-path-grid span { color: #efa36f; display: block; font-size: .72rem; letter-spacing: .12em; margin-bottom: 2rem; }
.xuri-products__buyer-path-grid strong { display: block; font-family: Georgia, 'Times New Roman', serif; font-size: 1.4rem; line-height: 1.1; }
.xuri-products__buyer-path-grid p { color: rgb(255 255 255 / 72%); line-height: 1.6; margin: .8rem 0 0; }
.xuri-products__buyer-path .xuri-button { background: #efa36f; border-color: #efa36f; color: var(--xuri-ink); }

.xuri-category { color: var(--xuri-ink); }
.xuri-category__hero { background: var(--xuri-ink); color: #fff; padding: clamp(4rem, 9vw, 8rem) 0; }
.xuri-category__hero-grid { align-items: center; display: grid; gap: clamp(2.5rem, 7vw, 7rem); grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); }
.xuri-category__hero h1 { color: #fff; font-family: Georgia, 'Times New Roman', serif; font-size: clamp(3.5rem, 7vw, 7.2rem); font-weight: 600; letter-spacing: -.055em; line-height: .9; margin: 0 0 1.5rem; }
.xuri-category__hero .xuri-products__eyebrow { color: #efa36f; }
.xuri-category__description { color: rgb(255 255 255 / 76%); font-size: 1.05rem; line-height: 1.7; margin: 0; max-width: 36rem; }
.xuri-category__description p { margin: 0; }
.xuri-category__back { color: #fff; display: inline-flex; font-weight: 700; gap: .6rem; margin-top: 2rem; text-decoration: none; }
.xuri-category__back:hover, .xuri-category__back:focus-visible { color: #efa36f; }
.xuri-category__hero img, .xuri-category__image-placeholder { display: block; min-height: 28rem; object-fit: cover; width: 100%; }
.xuri-category__image-placeholder { align-items: center; background: #e9e4d8; color: var(--xuri-muted); display: flex; justify-content: center; padding: 2rem; text-align: center; }
.xuri-category__products { background: var(--xuri-cream); padding: clamp(4rem, 8vw, 7rem) 0; }
.xuri-category__empty { background: #fff; border: 1px solid var(--xuri-line); color: var(--xuri-muted); line-height: 1.65; margin: 0; max-width: 48rem; padding: clamp(1.5rem, 4vw, 2.5rem); }
.xuri-category__empty h3 { color: var(--xuri-ink); font-family: Georgia, 'Times New Roman', serif; font-size: clamp(1.6rem, 3vw, 2.3rem); margin: 0 0 .75rem; }
.xuri-category__empty p { margin: 0 0 1.4rem; }

.xuri-home,
.xuri-page {
  color: var(--xuri-ink);
}

.xuri-page__hero,
.xuri-page__content {
  margin: 0 auto;
  max-width: 1180px;
  padding: clamp(2.5rem, 6vw, 5.5rem) clamp(1.25rem, 4vw, 2.5rem);
}

.xuri-page__hero {
  background: var(--xuri-cream);
}

.xuri-home__eyebrow {
  color: var(--xuri-red);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  margin: 0 0 1.2rem;
  text-transform: uppercase;
}

.xuri-home h1,
.xuri-home h2,
.xuri-home h3,
.xuri-page h1 {
  color: var(--xuri-ink);
  line-height: 1.12;
}

.xuri-home h1,
.xuri-page h1 {
  font-size: clamp(2.25rem, 5vw, 4.5rem);
  margin: 0 0 1.25rem;
}

.xuri-home h2 {
  font-size: clamp(1.65rem, 3vw, 2.6rem);
  margin: 0 0 1.5rem;
}

.xuri-button {
  margin-top: 0.85rem;
}

.xuri-button:focus-visible,
.xuri-button:hover {
  background: var(--xuri-ink);
  border-color: var(--xuri-ink);
  color: #fff;
}

.xuri-button--light {
  background: #fff;
  border-color: #fff;
  color: var(--xuri-ink);
}

.xuri-button--light:focus-visible,
.xuri-button--light:hover {
  background: #efad78;
  border-color: #efad78;
  color: var(--xuri-ink);
}

.xuri-home__hero {
  background: var(--xuri-ink);
  color: #fff;
  overflow: hidden;
}

.xuri-home__hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(20rem, 0.9fr);
  min-height: 35rem;
  padding-bottom: 0;
  padding-top: 0;
}

.xuri-home__hero-copy {
  align-self: center;
  padding-bottom: clamp(4rem, 8vw, 7rem);
  padding-top: clamp(4rem, 8vw, 7rem);
}

.xuri-home__hero .xuri-home__eyebrow,
.xuri-home__section--quality .xuri-home__eyebrow {
  color: #efad78;
}

.xuri-home h1,
.xuri-home h2 {
  font-family: Georgia, 'Times New Roman', serif;
  font-weight: 600;
  letter-spacing: -0.045em;
}

.xuri-home__hero h1 {
  color: #fff;
  font-size: clamp(3.25rem, 6vw, 5.4rem);
  line-height: 0.94;
  max-width: 11ch;
}

.xuri-home h1 em,
.xuri-home h2 em {
  color: #e8a06e;
}

.xuri-home__intro {
  color: #d2ddd6;
  font-size: 1.1rem;
  line-height: 1.7;
  max-width: 33rem;
}

.xuri-home__hero-image {
  background: linear-gradient(90deg, rgb(22 54 45 / 10%), rgb(22 54 45 / 2%)), var(--xuri-home-hero-image) center / cover;
  min-height: 100%;
}

.xuri-home__facts {
  border-top: 1px solid rgb(255 255 255 / 28%);
  color: #d6e1da;
  display: flex;
  padding-bottom: 0;
  padding-top: 0;
}

.xuri-home__facts div {
  border-right: 1px solid rgb(255 255 255 / 28%);
  font-size: 0.82rem;
  padding: 1.25rem 1.5rem;
}

.xuri-home__facts div:first-child {
  padding-left: 0;
}

.xuri-home__facts strong {
  color: #efad78;
  display: block;
  font-size: 0.68rem;
  letter-spacing: 0.12em;
  margin-bottom: 0.45rem;
  text-transform: uppercase;
}

.xuri-home__section {
  padding: clamp(4.5rem, 9vw, 7rem) 0;
}

.xuri-home__split {
  align-items: center;
  display: grid;
  gap: clamp(2.5rem, 7vw, 6rem);
  grid-template-columns: 1.08fr 0.92fr;
}

.xuri-home__split h2,
.xuri-home__section-heading h2 {
  font-size: clamp(2.65rem, 5vw, 4.5rem);
  line-height: 0.98;
  margin: 0;
}

.xuri-home__section--intro {
  background: var(--xuri-cream);
}

.xuri-home__requirement {
  background: #fff;
  border-top: 4px solid var(--xuri-red);
  padding: 2rem;
}

.xuri-home__requirement strong {
  color: var(--xuri-red);
  font-size: 0.72rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.xuri-home__requirement p,
.xuri-home__section-heading > p,
.xuri-home__quality-copy p {
  line-height: 1.65;
}

.xuri-text-link {
  color: var(--xuri-ink);
  font-weight: 700;
  text-decoration: none;
}

.xuri-text-link:hover,
.xuri-text-link:focus-visible {
  color: var(--xuri-red);
}

.xuri-home__section--products {
  background: #fff;
}

.xuri-home__section--applications {
  background: #eee7d9;
}

.xuri-home__applications-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.xuri-home__application-card {
  background: var(--xuri-cream);
  border-top: 3px solid var(--xuri-red);
  display: flex;
  flex-direction: column;
  min-height: 13rem;
  padding: 1.5rem;
}

.xuri-home__application-number {
  color: var(--xuri-red);
  font-size: 0.72rem;
  letter-spacing: 0.12em;
}

.xuri-home__application-card h3 {
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 1.65rem;
  font-weight: 600;
  line-height: 1.05;
  margin: 2.2rem 0 0.8rem;
}

.xuri-home__application-card p {
  color: var(--xuri-muted);
  font-size: 0.92rem;
  line-height: 1.55;
  margin: 0;
}

.xuri-home__section-heading {
  align-items: end;
  display: flex;
  gap: 3rem;
  justify-content: space-between;
  margin-bottom: 3rem;
}

.xuri-home__section-heading > p {
  color: var(--xuri-muted);
  margin: 0;
  max-width: 22rem;
}

.xuri-home__grid {
  border: 1px solid var(--xuri-line);
  display: grid;
  gap: 0;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.xuri-home__card {
  border-right: 1px solid var(--xuri-line);
  color: inherit;
  display: flex;
  flex-direction: column;
  min-height: 19rem;
  padding: 1.5rem;
  text-decoration: none;
}

.xuri-home__card:last-child {
  border-right: 0;
}

.xuri-home__card:focus-visible,
.xuri-home__card:hover {
  background: var(--xuri-cream);
  box-shadow: inset 0 0 0 2px var(--xuri-red);
}

.xuri-home__card-number {
  color: var(--xuri-red);
  font-size: 0.72rem;
  letter-spacing: 0.12em;
}

.xuri-home__card-image {
  display: block;
  margin-top: 1rem;
  overflow: hidden;
}

.xuri-home__card-image img {
  aspect-ratio: 4 / 3;
  display: block;
  height: auto;
  object-fit: cover;
  transition: transform 180ms ease;
  width: 100%;
}

.xuri-home__card:hover .xuri-home__card-image img,
.xuri-home__card:focus-visible .xuri-home__card-image img {
  transform: scale(1.035);
}

.xuri-home__card h3 {
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 1.9rem;
  font-weight: 600;
  line-height: 1.1;
  margin: 1.35rem 0 1rem;
}

.xuri-home__card-action {
  border-top: 1px solid var(--xuri-line);
  color: var(--xuri-ink);
  font-weight: 700;
  margin-top: auto;
  padding-top: 1rem;
}

.xuri-about__hero {
  background: var(--xuri-ink);
  color: #fff;
  padding: clamp(4rem, 9vw, 8rem) 0;
}

.xuri-about__hero h1 {
  color: #fff;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(3.5rem, 7vw, 7.2rem);
  font-weight: 600;
  letter-spacing: -0.055em;
  line-height: 0.9;
  margin: 1.25rem 0 2rem;
  max-width: 10ch;
}

.xuri-about__hero h1 em { color: #efa36f; }

.xuri-about__hero-grid {
  align-items: center;
  display: grid;
  gap: clamp(2.5rem, 7vw, 7rem);
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
}

.xuri-about__intro { color: rgb(255 255 255 / 78%); font-size: 1.08rem; line-height: 1.7; max-width: 37rem; }
.xuri-about__intro p { margin: 0; }
.xuri-about__image { min-height: 29rem; }
.xuri-about__image img { display: block; height: 100%; object-fit: cover; width: 100%; }
.xuri-about__image-placeholder { align-items: center; background: #e9e4d8; color: var(--xuri-muted); display: flex; height: 100%; justify-content: center; min-height: 29rem; padding: 2rem; text-align: center; }
.xuri-about__points { background: #fff; }
.xuri-about__points-grid { border-left: 1px solid var(--xuri-line); display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.xuri-about__points-grid > div { border-right: 1px solid var(--xuri-line); padding: clamp(2rem, 4vw, 4rem); }
.xuri-about__points-grid span { color: var(--xuri-red); display: block; font-size: .74rem; letter-spacing: .12em; margin-bottom: 3rem; }
.xuri-about__points-grid strong { font-family: Georgia, 'Times New Roman', serif; font-size: clamp(1.45rem, 2.2vw, 2.25rem); line-height: 1.1; }

.xuri-contact__hero { background: var(--xuri-cream); padding: clamp(4rem, 9vw, 8rem) 0; }
.xuri-contact__hero-grid, .xuri-contact__grid { align-items: center; display: grid; gap: clamp(2.5rem, 7vw, 7rem); grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); }
.xuri-contact__hero h1 { color: var(--xuri-ink); font-family: Georgia, 'Times New Roman', serif; font-size: clamp(3.5rem, 7vw, 7.2rem); font-weight: 600; letter-spacing: -.055em; line-height: .9; margin: 1.25rem 0 2rem; max-width: 10ch; }
.xuri-contact__hero h1 em { color: #d97845; }
.xuri-contact__intro { color: var(--xuri-muted); font-size: 1.08rem; line-height: 1.7; max-width: 37rem; }
.xuri-contact__intro p { margin: 0; }
.xuri-contact__image, .xuri-contact__image-placeholder { min-height: 26rem; }
.xuri-contact__image img { display: block; height: 100%; object-fit: cover; width: 100%; }
.xuri-contact__image-placeholder { align-items: center; background: var(--xuri-ink); color: rgb(255 255 255 / 75%); display: flex; justify-content: center; padding: 2rem; text-align: center; }
.xuri-contact__body { background: #fff; padding: clamp(4rem, 8vw, 7rem) 0; }
.xuri-contact__details > p { border-bottom: 1px solid var(--xuri-line); display: grid; gap: .75rem; margin: 0; padding: 1.15rem 0; }
.xuri-contact__brief h2 { color: var(--xuri-ink); font-family: Georgia, 'Times New Roman', serif; font-size: clamp(2.4rem, 4vw, 3.8rem); font-weight: 600; letter-spacing: -.045em; line-height: .95; margin: 1rem 0 2rem; max-width: 11ch; }
.xuri-contact__brief h2 em { color: #d97845; }
.xuri-contact__brief ol { border-top: 1px solid var(--xuri-line); list-style: none; margin: 0; padding: 0; }
.xuri-contact__brief li { border-bottom: 1px solid var(--xuri-line); display: grid; gap: 1rem; grid-template-columns: 3rem minmax(0, 1fr); padding: 1.1rem 0; }
.xuri-contact__brief li > span { color: var(--xuri-red); font-size: .74rem; letter-spacing: .1em; padding-top: .25rem; }
.xuri-contact__brief strong { color: var(--xuri-ink); font-family: Georgia, 'Times New Roman', serif; font-size: 1.25rem; }
.xuri-contact__brief p { color: var(--xuri-muted); line-height: 1.6; margin: .35rem 0 0; }
.xuri-contact__details { margin-top: 2rem; }
.xuri-contact__details strong { color: var(--xuri-red); font-size: .74rem; letter-spacing: .12em; text-transform: uppercase; }
.xuri-contact__details a { color: inherit; font-size: 1.1rem; font-weight: 700; }
.xuri-contact__pending { color: var(--xuri-muted); line-height: 1.65; }
.xuri-contact__form { background: var(--xuri-ink); color: #fff; display: grid; gap: 1.1rem; padding: clamp(1.5rem, 4vw, 2.5rem); }
.xuri-contact__form label { font-size: .72rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.xuri-contact__form input, .xuri-contact__form textarea { background: transparent; border: 0; border-bottom: 1px solid rgb(255 255 255 / 32%); color: #fff; display: block; font: inherit; margin-top: .5rem; padding: .65rem 0; resize: vertical; width: 100%; }
.xuri-contact__form button { border: 0; margin-top: .5rem; }
.xuri-contact__form button:not(:disabled) { cursor: pointer; }
.xuri-contact__form small { color: rgb(255 255 255 / 68%); line-height: 1.5; }
.xuri-contact__honeypot { height: 0; opacity: 0; overflow: hidden; position: absolute; width: 0; }
.xuri-contact__consent { align-items: start; display: flex; gap: .7rem; letter-spacing: normal !important; line-height: 1.5; text-transform: none !important; }
.xuri-contact__consent input { accent-color: #efa36f; border: 0; display: inline-block; flex: 0 0 auto; margin: .2rem 0 0; padding: 0; width: auto; }
.xuri-contact__notice { border: 1px solid rgb(255 255 255 / 45%); color: #fff; line-height: 1.5; margin: 0; padding: .85rem 1rem; }
.xuri-contact__notice--success { border-color: #b7d9bd; color: #d8f0dd; }

.xuri-home__section--quality {
  background: var(--xuri-ink);
  color: #fff;
}

.xuri-home__section--quality h2 {
  color: #fff;
}

.xuri-home__quality-grid {
  align-items: center;
  display: grid;
  gap: clamp(2.5rem, 7vw, 6rem);
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
}

.xuri-home__quality-image-wrap img,
.xuri-home__quality-image-placeholder {
  display: block;
  min-height: 26rem;
  object-fit: cover;
  width: 100%;
}

.xuri-home__quality-image-placeholder {
  align-items: center;
  background: rgb(255 255 255 / 9%);
  border: 1px solid rgb(255 255 255 / 24%);
  color: #d2ddd6;
  display: flex;
  font-size: 0.9rem;
  justify-content: center;
  line-height: 1.6;
  padding: 2rem;
  text-align: center;
}

.xuri-home__quality-copy {
  color: #d2ddd6;
}

.xuri-home__quality-copy h2 {
  font-size: clamp(2.65rem, 5vw, 4.5rem);
  line-height: 0.98;
  margin: 0;
}

.xuri-home__quality-intro p {
  color: inherit;
  line-height: 1.65;
}

.xuri-home__quality-checks {
  border-top: 1px solid rgb(255 255 255 / 28%);
  list-style: none;
  margin: 1.5rem 0;
  padding: 0;
}

.xuri-home__quality-checks li {
  border-bottom: 1px solid rgb(255 255 255 / 28%);
  padding: 0.8rem 0 0.8rem 1.75rem;
  position: relative;
}

.xuri-home__quality-checks li::before {
  color: #efad78;
  content: '•';
  left: 0.45rem;
  position: absolute;
}

.xuri-home__section--processing {
  background: var(--xuri-cream);
}

.xuri-home__section--documents { background: #fff; }
.xuri-home__documents-grid { display: grid; gap: 1.25rem; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.xuri-home__document-card { border: 1px solid var(--xuri-line); padding: clamp(1.75rem, 4vw, 2.5rem); }
.xuri-home__document-card h3 { font-family: Georgia, 'Times New Roman', serif; font-size: clamp(1.8rem, 3vw, 2.4rem); font-weight: 600; margin: 0 0 1rem; }
.xuri-home__document-card p { color: var(--xuri-muted); line-height: 1.65; }
.xuri-home__documents-intro p { color: var(--xuri-muted); line-height: 1.65; margin: 0; max-width: 22rem; }
.xuri-home__document-card-text p { color: var(--xuri-muted); line-height: 1.65; }

.xuri-home__section--resources { background: #eee7d9; }
.xuri-home__resource-feature { align-items: end; border-top: 1px solid rgb(22 54 45 / 22%); display: grid; gap: clamp(2rem, 7vw, 6rem); grid-template-columns: minmax(0, 1.15fr) minmax(16rem, .85fr); margin-top: clamp(2.5rem, 5vw, 4rem); padding-top: clamp(2rem, 4vw, 3.5rem); }
.xuri-home__resource-feature h3 { color: var(--xuri-ink); font-family: Georgia, 'Times New Roman', serif; font-size: clamp(2rem, 4vw, 3.5rem); font-weight: 600; letter-spacing: -.035em; line-height: 1; margin: 0; max-width: 13ch; }
.xuri-home__resource-feature-copy { color: var(--xuri-muted); line-height: 1.7; }
.xuri-home__resource-feature-copy p { margin: 0 0 1.5rem; }
.xuri-home__resources-grid { display: grid; gap: 1.25rem; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.xuri-home__resource-card { background: #fff; display: flex; flex-direction: column; min-height: 14rem; padding: 1.75rem; }
.xuri-home__resource-card small { color: var(--xuri-red); font-size: 0.72rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; }
.xuri-home__resource-card h3 { font-family: Georgia, 'Times New Roman', serif; font-size: 1.65rem; font-weight: 600; line-height: 1.1; margin: 2rem 0; }
.xuri-home__resource-card .xuri-text-link { margin-top: auto; }

.xuri-home__section--quote { background: #e7a06f; }
.xuri-home__quote-grid { align-items: center; display: grid; gap: clamp(2.5rem, 7vw, 6rem); grid-template-columns: 1fr 1fr; }
.xuri-home__quote-grid h2 { font-size: clamp(2.65rem, 5vw, 4.5rem); line-height: .98; margin: 0; }
.xuri-home__quote-grid > div > p:last-child { line-height: 1.65; }
.xuri-home__quote-action { background: #fff; padding: clamp(1.75rem, 4vw, 2.75rem); }
.xuri-home__quote-action h3 { color: var(--xuri-ink); font-family: Georgia, 'Times New Roman', serif; font-size: clamp(1.75rem, 3vw, 2.5rem); font-weight: 600; line-height: 1.05; margin: 0 0 1.25rem; }
.xuri-home__quote-action p { color: var(--xuri-muted); line-height: 1.65; margin: 0 0 1.5rem; }
.xuri-home__quote-form { background: #fff; display: grid; gap: 1rem; padding: clamp(1.5rem, 4vw, 2rem); }
.xuri-home__quote-form label { font-size: .72rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.xuri-home__quote-form input, .xuri-home__quote-form textarea { background: transparent; border: 0; border-bottom: 1px solid var(--xuri-line); color: var(--xuri-ink); display: block; font: inherit; margin-top: .5rem; padding: .6rem 0; resize: vertical; width: 100%; }
.xuri-home__quote-form input:disabled, .xuri-home__quote-form textarea:disabled { opacity: .75; }
.xuri-home__quote-form button:disabled { cursor: not-allowed; opacity: .75; }
.xuri-home__quote-form small { color: var(--xuri-muted); line-height: 1.5; }

.xuri-home__processing-grid {
  align-items: center;
  display: grid;
  gap: clamp(2.5rem, 7vw, 6rem);
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
}

.xuri-home__processing-copy h2 {
  font-size: clamp(2.65rem, 5vw, 4.5rem);
  line-height: 0.98;
  margin: 0;
}

.xuri-home__processing-copy > p:not(.xuri-home__eyebrow),
.xuri-home__processing-intro p {
  line-height: 1.65;
}

.xuri-home__processing-image-wrap img,
.xuri-home__processing-image-placeholder {
  display: block;
  min-height: 22rem;
  object-fit: cover;
  width: 100%;
}

.xuri-home__processing-image-placeholder {
  align-items: center;
  background: #e6ddcc;
  border: 1px solid var(--xuri-line);
  color: var(--xuri-muted);
  display: flex;
  font-size: 0.9rem;
  justify-content: center;
  line-height: 1.6;
  padding: 2rem;
  text-align: center;
}

.xuri-page__content {
  font-size: 1.1rem;
  line-height: 1.7;
  max-width: 900px;
}

@media (max-width: 680px) {
  .xuri-product__gallery,
  .xuri-products__grid {
    grid-template-columns: 1fr;
  }

  .xuri-product__specifications th,
  .xuri-product__specifications td {
    display: block;
    width: auto;
  }

  .xuri-product__specifications th {
    border-bottom: 0;
    padding-bottom: 0.25rem;
  }
}

@media (max-width: 820px) {
  .xuri-site-nav {
    gap: 0.8rem;
  }

  .xuri-site-nav a {
    font-size: 0.88rem;
  }

  .xuri-home__hero-grid,
  .xuri-home__split,
  .xuri-home__quality-grid,
  .xuri-home__processing-grid,
  .xuri-about__hero-grid,
	.xuri-resources__next-step-grid,
  .xuri-contact__hero-grid,
  .xuri-contact__grid,
  .xuri-products__hero-grid,
  .xuri-product__hero-grid,
  .xuri-product__enquiry-grid,
  .xuri-product__package-grid,
  .xuri-category__hero-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .xuri-contact__brief li { grid-template-columns: 1fr; gap: .45rem; }

  .xuri-home__hero-image {
    min-height: 24rem;
  }

  .xuri-home__hero-copy {
    padding-bottom: 4rem;
  }

  .xuri-home__section-heading {
    align-items: start;
    flex-direction: column;
    gap: 1.5rem;
  }

  .xuri-home__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xuri-products__categories-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xuri-products__category-card:nth-child(2n) {
    border-right: 0;
  }

  .xuri-products__category-card:nth-child(-n + 2) {
    border-bottom: 1px solid var(--xuri-line);
  }

  .xuri-home__applications-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .xuri-home__documents-grid { grid-template-columns: 1fr; }

  .xuri-products__buyer-path-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .xuri-products__buyer-path-grid li:nth-child(2n) { border-right: 0; }
  .xuri-products__buyer-path-grid li:nth-child(-n + 2) { border-bottom: 1px solid rgb(255 255 255 / 24%); }

  .xuri-resources__section-heading { align-items: start; flex-direction: column; }

  .xuri-resources__visuals-heading { align-items: start; flex-direction: column; }
  .xuri-resources__visual-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .xuri-resources__visual--field, .xuri-resources__visual--crop, .xuri-resources__visual--production, .xuri-resources__visual--laboratory, .xuri-resources__visual--cartons, .xuri-resources__visual--container { aspect-ratio: 1.1; grid-column: span 1; grid-row: auto; }

  .xuri-home__resources-grid { grid-template-columns: 1fr; }

  .xuri-resources__cards { grid-template-columns: 1fr; }
  .xuri-resources__cards article { border-bottom: 1px solid var(--xuri-line); }
  .xuri-resources__cards article:last-child { border-bottom: 0; }

  .xuri-resources__enquiry-list li { grid-template-columns: 1fr; gap: .75rem; }

  .xuri-home__quote-grid,
  .xuri-home__resource-feature { grid-template-columns: 1fr; }

  .xuri-home__card:nth-child(2n) {
    border-right: 0;
  }

  .xuri-home__card:nth-child(-n + 2) {
    border-bottom: 1px solid var(--xuri-line);
  }
}

@media (max-width: 600px) {
  /* Same step-down as the exhibition grid: 3-up holds until 600px. */
  .xuri-product__detail-gallery,
  .xuri-product__package-gallery { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 980px) {
  .xuri-site-header__inner { gap: 1rem; }
  .xuri-site-nav, .xuri-header-cta { display: none; }
  .xuri-mobile-nav { display: block; position: relative; }
  .xuri-mobile-nav summary { border: 1px solid rgb(255 255 255 / 60%); cursor: pointer; font-size: .84rem; font-weight: 700; list-style: none; padding: .7rem .85rem; }
  .xuri-mobile-nav summary::-webkit-details-marker { display: none; }
  .xuri-mobile-nav summary::after { content: ' +'; }
  .xuri-mobile-nav[open] summary::after { content: ' −'; }
  .xuri-mobile-nav__panel { background: #fff; box-shadow: 0 .75rem 2rem rgb(0 0 0 / 22%); display: grid; min-width: 15rem; padding: .5rem; position: absolute; right: 0; top: calc(100% + .5rem); z-index: 30; }
  .xuri-mobile-nav__panel a { color: var(--xuri-ink); font-weight: 700; padding: .8rem; text-decoration: none; }
  .xuri-mobile-nav__panel a:hover, .xuri-mobile-nav__panel a:focus-visible { background: var(--xuri-cream); }
  .xuri-mobile-nav__panel .xuri-mobile-nav__quote { background: var(--xuri-red); color: #fff; margin-top: .25rem; }
}

@media (max-width: 600px) {
  .xuri-site-header__inner {
    flex-wrap: wrap;
    gap: 0.8rem;
    padding-bottom: 1rem;
    padding-top: 1rem;
  }

  .xuri-site-nav {
    order: 3;
    width: 100%;
  }

  .xuri-header-cta {
    font-size: 0.84rem;
    padding: 0.7rem 0.85rem;
  }

  .xuri-home__hero h1 {
    font-size: clamp(3rem, 14vw, 4.2rem);
  }

  .xuri-home__facts {
    display: block;
    padding-bottom: 0;
    padding-top: 0;
  }

  .xuri-home__facts div,
  .xuri-home__facts div:first-child {
    border-bottom: 1px solid rgb(255 255 255 / 28%);
    border-right: 0;
    padding: 1rem 0;
  }

  .xuri-home__grid {
    grid-template-columns: 1fr;
  }

  .xuri-products__categories-grid {
    grid-template-columns: 1fr;
  }

  .xuri-products__category-card,
  .xuri-products__category-card:nth-child(2n) {
    border-bottom: 1px solid var(--xuri-line);
    border-right: 0;
  }

  .xuri-products__category-card:last-child {
    border-bottom: 0;
  }

  .xuri-products__buyer-path-grid { grid-template-columns: 1fr; }
  .xuri-products__buyer-path-grid li, .xuri-products__buyer-path-grid li:nth-child(2n) { border-bottom: 1px solid rgb(255 255 255 / 24%); border-right: 0; }
  .xuri-products__buyer-path-grid li:last-child { border-bottom: 0; }
  .xuri-product__buyer-brief ul { grid-template-columns: 1fr; }

  .xuri-product__overview,
  .xuri-product__why-grid,
  .xuri-product__exhibition-grid {
    grid-template-columns: 1fr;
  }

  .xuri-home__applications-grid {
    grid-template-columns: 1fr;
  }

  .xuri-about__points-grid {
    grid-template-columns: 1fr;
  }

  .xuri-about__points-grid > div {
    border-bottom: 1px solid var(--xuri-line);
  }

  .xuri-about__points-grid > div:last-child {
    border-bottom: 0;
  }

  .xuri-home__card,
  .xuri-home__card:nth-child(2n) {
    border-bottom: 1px solid var(--xuri-line);
    border-right: 0;
  }

  .xuri-home__card:last-child {
    border-bottom: 0;
  }

  .xuri-site-footer__inner {
    align-items: start;
    flex-direction: column;
    gap: 1.5rem;
  }
}

/* Category-card separation is handled by the one-pixel grid gap at every width. */
.xuri-products__categories-grid .xuri-products__category-card { border: 0; }

/* Keep mobile grid items within their track without clipping page content. */
.xuri-about__hero-grid > *,
.xuri-contact__hero-grid > *,
.xuri-contact__grid > *,
.xuri-product__hero-grid > * { min-width: 0; }

/* Anchor visually hidden thumbnail labels inside the scrollable buttons. */
.xuri-product__thumbnail .screen-reader-text { left: 0; top: 0; }

@media (max-width: 600px) {
  .xuri-about__hero h1,
  .xuri-contact__hero h1,
  .xuri-resources__hero h1 {
    font-size: clamp(2rem, 9vw, 3.25rem);
    line-height: 1.05;
    max-width: none;
    overflow-wrap: normal;
    word-break: normal;
  }

  .xuri-product h2,
  .xuri-product__why h2,
  .xuri-product__enquiry h2,
  .xuri-contact__brief h2,
  .xuri-resources__next-step h2 {
    font-size: clamp(1.75rem, 8vw, 2.5rem);
    line-height: 1.1;
    max-width: none;
    overflow-wrap: normal;
    word-break: normal;
  }
}

/* Category browsing: reference-led sidebar and individual product rows. */
.xuri-category-browser {
  --xuri-category-accent: #ff8b46;
  --xuri-category-active: #a64014;
  background: var(--xuri-cream);
  color: var(--xuri-ink);
  padding: clamp(1.5rem, 4vw, 3.5rem) 0;
}
.xuri-category-browser__layout { align-items: start; display: grid; gap: clamp(1.5rem, 3vw, 3rem); grid-template-columns: minmax(15rem, 19rem) minmax(0, 1fr); }
.xuri-category-browser__layout > * { min-width: 0; }
.xuri-product-nav { background: #fff; border: 1px solid var(--xuri-line); }
.xuri-product-nav h2 { background: var(--xuri-category-accent); color: var(--xuri-ink); font-family: inherit; font-size: 1.5rem; font-weight: 700; line-height: 1.3; margin: 0; padding: 1.1rem 1.25rem; }
.xuri-product-nav__group { border-bottom: 1px solid var(--xuri-line); margin: 0; }
.xuri-product-nav__group:last-child { border-bottom: 0; }
.xuri-product-nav__group summary { align-items: stretch; display: flex; font-size: 1.04rem; font-weight: 700; list-style: none; cursor: pointer; }
.xuri-product-nav__group summary::-webkit-details-marker { display: none; }
.xuri-product-nav__group summary > a { align-items: center; color: var(--xuri-ink); display: flex; flex: 1; min-width: 0; padding: 1rem 0 1rem 1.25rem; text-decoration: none; }
.xuri-product-nav__group summary > a[aria-current] { color: var(--xuri-category-active); }
.xuri-product-nav__toggle { align-items: center; display: flex; flex: 0 0 3rem; justify-content: center; min-height: 48px; }
.xuri-product-nav__group[open] .xuri-product-nav__toggle svg { transform: rotate(90deg); }
.xuri-product-nav ul { list-style: none; margin: 0; padding: 0 1.25rem; }
.xuri-product-nav li { border-top: 1px solid var(--xuri-line); margin: 0; }
.xuri-product-nav li a { color: var(--xuri-ink); display: block; font-weight: 600; line-height: 1.5; padding: .85rem 0 .85rem 1rem; text-decoration: none; overflow-wrap: anywhere; }
.xuri-product-nav__empty { color: var(--xuri-muted); font-size: .9rem; margin: 0; padding: 0 1.25rem 1rem; }
.xuri-category-browser a:hover { color: var(--xuri-category-active); }
.xuri-category-browser a:focus-visible, .xuri-product-nav summary:focus-visible { outline: 2px solid var(--xuri-category-active); outline-offset: 3px; }
.xuri-category-browser__heading { border-bottom: 1px solid var(--xuri-line); margin-bottom: 1.5rem; padding: 0 0 1.5rem; }
.xuri-category-browser__heading > a { color: var(--xuri-muted); display: inline-flex; align-items: center; font-size: .9rem; min-height: 44px; text-underline-offset: 4px; }
.xuri-category-browser h1 { color: var(--xuri-ink); font-family: Georgia, 'Times New Roman', serif; font-size: clamp(2rem, 3.5vw, 3.4rem); letter-spacing: -.025em; line-height: 1.1; margin: .25rem 0 0; overflow-wrap: anywhere; }
.xuri-category-browser__description { color: var(--xuri-muted); line-height: 1.7; margin-top: 1rem; max-width: 65ch; }
.xuri-category-browser__description p:last-child { margin-bottom: 0; }
.xuri-product-row { align-items: center; background: #fff; border-bottom: 1px solid var(--xuri-line); display: flex; gap: clamp(1rem, 2.5vw, 2rem); margin: 0; padding: 1.25rem; }
.xuri-product-row__image { display: block; flex: 0 0 11rem; max-width: 34%; }
.xuri-product-row__image img { aspect-ratio: 1; display: block; height: auto; object-fit: contain; width: 100%; }
.xuri-product-row__body { flex: 1; min-width: 0; }
.xuri-product-row h2 { font-family: inherit; font-size: clamp(1.25rem, 2vw, 1.7rem); font-weight: 700; line-height: 1.3; margin: 0 0 .6rem; overflow-wrap: anywhere; }
.xuri-product-row h2 a { color: var(--xuri-ink); text-decoration: none; }
.xuri-product-row p { color: var(--xuri-muted); line-height: 1.65; margin: 0 0 .65rem; }
.xuri-product-row__link { align-items: center; color: var(--xuri-category-active); display: inline-flex; font-weight: 600; gap: .5rem; min-height: 44px; text-decoration: none; }
.xuri-category-browser__empty { background: #fff; padding: clamp(1.5rem, 3vw, 2.5rem); }
.xuri-category-browser__empty h2 { color: var(--xuri-ink); font-size: 1.5rem; line-height: 1.3; margin: 0 0 1rem; }
.xuri-category-browser__empty p { color: var(--xuri-muted); line-height: 1.7; }
.xuri-category-browser .nav-links { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: 1.5rem; }
.xuri-category-browser .page-numbers { align-items: center; display: inline-flex; justify-content: center; min-height: 44px; min-width: 44px; padding: .5rem .8rem; }
.xuri-category-browser .page-numbers.current { background: var(--xuri-ink); color: #fff; }
@media (max-width: 760px) {
  .xuri-category-browser__layout { grid-template-columns: minmax(0, 1fr); }
  .xuri-product-nav h2 { font-size: 1.25rem; padding: .85rem 1rem; }
  .xuri-product-nav__group summary > a { padding: .75rem 0 .75rem 1rem; }
  .xuri-category-browser__heading { margin-bottom: 1rem; }
  .xuri-product-row { gap: 1rem; padding: 1rem; }
  .xuri-product-row__image { flex-basis: 6rem; }
}

/* Keep all retained footer destinations within narrow screens. */
.xuri-site-footer__links { flex-wrap: wrap; min-width: 0; max-width: 100%; }
.xuri-site-footer__links a { overflow-wrap: anywhere; }

/* News listing page (page-news.php). Reuses the home page news card markup,
   so only the hero and pagination need their own rules here. */
.xuri-news-archive__hero {
  background: var(--xuri-cream);
  padding: clamp(2.5rem, 6vw, 5.5rem) 0;
}

.xuri-news-archive__hero .xuri-shell { max-width: 1180px; }

.xuri-news-archive__eyebrow {
  color: var(--xuri-red);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  margin: 0 0 1.2rem;
  text-transform: uppercase;
}

.xuri-news-archive__hero h1 {
  color: var(--xuri-ink);
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(2.5rem, 4.5vw, 4.2rem);
  font-weight: 600;
  letter-spacing: -0.04em;
  line-height: 1;
  margin: 0;
}

.xuri-news-archive__intro {
  color: var(--xuri-muted);
  line-height: 1.75;
  margin-top: 1.5rem;
  max-width: 62ch;
}

.xuri-news-archive__empty {
  color: var(--xuri-muted);
  line-height: 1.7;
  margin: 0;
}

.xuri-news-archive__pagination { margin-top: clamp(2rem, 5vw, 3.5rem); }

.xuri-news-archive__pagination .page-numbers {
  align-items: center;
  border: 1px solid var(--xuri-line);
  color: var(--xuri-ink);
  display: inline-flex;
  font-weight: 700;
  justify-content: center;
  min-height: 44px;
  min-width: 44px;
  padding: 0.5rem 0.9rem;
  text-decoration: none;
}

.xuri-news-archive__pagination .page-numbers.current {
  background: var(--xuri-ink);
  border-color: var(--xuri-ink);
  color: #fff;
}

.xuri-news-archive__pagination ul {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

/* Single article page (single.php). Reuses .xuri-page shell; only the article
   header, featured image and body width need their own rules. */
.xuri-article__eyebrow {
  color: var(--xuri-red);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  margin: 0 0 1rem;
  text-transform: uppercase;
}

.xuri-article__hero h1 {
  color: var(--xuri-ink);
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(2.25rem, 3.8vw, 3.6rem);
  font-weight: 600;
  letter-spacing: -0.035em;
  line-height: 1.05;
  margin: 0 0 1rem;
}

.xuri-article__meta {
  color: var(--xuri-muted);
  font-size: 0.9rem;
  margin: 0;
}

.xuri-article__meta a { color: inherit; }

.xuri-article__meta span { margin: 0 0.4rem; }

.xuri-article__featured {
  margin: 0 auto;
  max-width: 1180px;
  padding: 0 clamp(1.25rem, 4vw, 2.5rem);
}

.xuri-article__featured img { display: block; height: auto; width: 100%; }

.xuri-article__body { max-width: 860px; }

.xuri-article__body h2,
.xuri-article__body h3 { color: var(--xuri-ink); line-height: 1.25; }

.xuri-article__body h2 { font-size: clamp(1.5rem, 2.4vw, 2rem); margin: 2.5rem 0 1rem; }

.xuri-article__body h3 { font-size: clamp(1.2rem, 1.8vw, 1.45rem); margin: 2rem 0 0.75rem; }

.xuri-article__body p,
.xuri-article__body li { color: var(--xuri-muted); line-height: 1.8; }

.xuri-article__body a { color: var(--xuri-green); }

.xuri-article__body img { border-radius: 2px; display: block; height: auto; margin: 1.5rem 0; max-width: 100%; }

.xuri-article__body table { border-collapse: collapse; margin: 1.5rem 0; width: 100%; }

.xuri-article__body th,
.xuri-article__body td { border: 1px solid var(--xuri-line); padding: 0.75rem 1rem; text-align: left; vertical-align: top; }

.xuri-article__body th { background: var(--xuri-cream); color: var(--xuri-ink); font-weight: 700; }

.xuri-article__body blockquote {
  border-left: 3px solid var(--xuri-red);
  color: var(--xuri-ink);
  margin: 1.75rem 0;
  padding: 0.25rem 0 0.25rem 1.25rem;
}

/* Related articles: shown at the foot of articles and product pages.
   Card rules are duplicated here (rather than relying on the home-page
   stylesheet) because home-refresh.css only loads on the home and news pages. */
.xuri-related { background: var(--xuri-cream); padding: clamp(3rem, 6vw, 5rem) 0; }

.xuri-related__eyebrow {
  color: var(--xuri-red);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  margin: 0 0 0.75rem;
  text-transform: uppercase;
}

.xuri-related h2 {
  color: var(--xuri-ink);
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(1.75rem, 3vw, 2.6rem);
  font-weight: 600;
  letter-spacing: -0.03em;
  line-height: 1.1;
  margin: 0 0 clamp(1.5rem, 3vw, 2.5rem);
}

.xuri-related__grid {
  display: grid;
  gap: clamp(1.5rem, 4vw, 3rem);
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.xuri-related__grid .xuri-home-refresh__post { min-width: 0; }

.xuri-related__grid .xuri-home-refresh__post img {
  aspect-ratio: 16 / 9;
  display: block;
  height: auto;
  object-fit: cover;
  width: 100%;
}

.xuri-related__grid .xuri-home-refresh__post time {
  color: var(--xuri-muted);
  display: block;
  font-size: 0.85rem;
  margin: 1.1rem 0 0.6rem;
}

.xuri-related__grid .xuri-home-refresh__post h3 {
  font-size: clamp(1.15rem, 1.6vw, 1.45rem);
  line-height: 1.3;
  margin: 0 0 0.75rem;
  overflow-wrap: anywhere;
}

.xuri-related__grid .xuri-home-refresh__post h3 a { color: var(--xuri-ink); text-decoration: none; }

.xuri-related__grid .xuri-home-refresh__post p { color: var(--xuri-muted); line-height: 1.65; }

@media (max-width: 820px) {
  .xuri-related__grid { grid-template-columns: minmax(0, 1fr); }
}
