/* Revyn site styles, exported from the design canvas (October 2026). */
/* Stand-in styles kept for the Steel Report band and form layout */
@font-face { font-family: 'Mammoth'; src: url(/assets/fonts/mammoth.woff2) format('woff2'), url(/assets/fonts/mammoth.ttf) format('truetype'); font-display: swap; }
@font-face { font-family: 'Mammoth Outline'; src: url(/assets/fonts/mammoth-outline.woff2) format('woff2'), url(/assets/fonts/mammoth-outline.ttf) format('truetype'); font-display: swap; }
.rv-img-02 { background-image: url(/assets/img/photos/revyn-02.jpg); background-image: image-set(url(/assets/img/photos/revyn-02.webp) type("image/webp"), url(/assets/img/photos/revyn-02.jpg) type("image/jpeg")); }
.rv-img-03 { background-image: url(/assets/img/photos/revyn-03.jpg); background-image: image-set(url(/assets/img/photos/revyn-03.webp) type("image/webp"), url(/assets/img/photos/revyn-03.jpg) type("image/jpeg")); }
.rv-img-04 { background-image: url(/assets/img/photos/revyn-04.jpg); background-image: image-set(url(/assets/img/photos/revyn-04.webp) type("image/webp"), url(/assets/img/photos/revyn-04.jpg) type("image/jpeg")); }
.rv-img-05 { background-image: url(/assets/img/photos/revyn-05.jpg); background-image: image-set(url(/assets/img/photos/revyn-05.webp) type("image/webp"), url(/assets/img/photos/revyn-05.jpg) type("image/jpeg")); }
.rv-img-07 { background-image: url(/assets/img/photos/revyn-07.jpg); background-image: image-set(url(/assets/img/photos/revyn-07.webp) type("image/webp"), url(/assets/img/photos/revyn-07.jpg) type("image/jpeg")); }
.rv-img-08 { background-image: url(/assets/img/photos/revyn-08.jpg); background-image: image-set(url(/assets/img/photos/revyn-08.webp) type("image/webp"), url(/assets/img/photos/revyn-08.jpg) type("image/jpeg")); }
.rv-img-09 { background-image: url(/assets/img/photos/revyn-09.jpg); background-image: image-set(url(/assets/img/photos/revyn-09.webp) type("image/webp"), url(/assets/img/photos/revyn-09.jpg) type("image/jpeg")); }
.rv-img-10 { background-image: url(/assets/img/photos/revyn-10.jpg); background-image: image-set(url(/assets/img/photos/revyn-10.webp) type("image/webp"), url(/assets/img/photos/revyn-10.jpg) type("image/jpeg")); }
.rv-img-11 { background-image: url(/assets/img/photos/revyn-11.jpg); background-image: image-set(url(/assets/img/photos/revyn-11.webp) type("image/webp"), url(/assets/img/photos/revyn-11.jpg) type("image/jpeg")); }
.rv-img-12 { background-image: url(/assets/img/photos/revyn-12.jpg); background-image: image-set(url(/assets/img/photos/revyn-12.webp) type("image/webp"), url(/assets/img/photos/revyn-12.jpg) type("image/jpeg")); }
.rv-img-13 { background-image: url(/assets/img/photos/revyn-13.jpg); background-image: image-set(url(/assets/img/photos/revyn-13.webp) type("image/webp"), url(/assets/img/photos/revyn-13.jpg) type("image/jpeg")); }
.rv-img-14 { background-image: url(/assets/img/photos/revyn-14.jpg); background-image: image-set(url(/assets/img/photos/revyn-14.webp) type("image/webp"), url(/assets/img/photos/revyn-14.jpg) type("image/jpeg")); }
.rv-img-15 { background-image: url(/assets/img/photos/revyn-15.jpg); background-image: image-set(url(/assets/img/photos/revyn-15.webp) type("image/webp"), url(/assets/img/photos/revyn-15.jpg) type("image/jpeg")); }
.rv-img-16 { background-image: url(/assets/img/photos/revyn-16.jpg); background-image: image-set(url(/assets/img/photos/revyn-16.webp) type("image/webp"), url(/assets/img/photos/revyn-16.jpg) type("image/jpeg")); }
.rv-img-17 { background-image: url(/assets/img/photos/revyn-17.jpg); background-image: image-set(url(/assets/img/photos/revyn-17.webp) type("image/webp"), url(/assets/img/photos/revyn-17.jpg) type("image/jpeg")); }
.rv-img-18 { background-image: url(/assets/img/photos/revyn-18.jpg); background-image: image-set(url(/assets/img/photos/revyn-18.webp) type("image/webp"), url(/assets/img/photos/revyn-18.jpg) type("image/jpeg")); }
.rv-img-19 { background-image: url(/assets/img/photos/revyn-19.jpg); background-image: image-set(url(/assets/img/photos/revyn-19.webp) type("image/webp"), url(/assets/img/photos/revyn-19.jpg) type("image/jpeg")); }
.rv-img-20 { background-image: url(/assets/img/photos/revyn-20.jpg); background-image: image-set(url(/assets/img/photos/revyn-20.webp) type("image/webp"), url(/assets/img/photos/revyn-20.jpg) type("image/jpeg")); }
.rv-img-22 { background-image: url(/assets/img/photos/revyn-22.jpg); background-image: image-set(url(/assets/img/photos/revyn-22.webp) type("image/webp"), url(/assets/img/photos/revyn-22.jpg) type("image/jpeg")); }
.rv-img-23 { background-image: url(/assets/img/photos/revyn-23.jpg); background-image: image-set(url(/assets/img/photos/revyn-23.webp) type("image/webp"), url(/assets/img/photos/revyn-23.jpg) type("image/jpeg")); }
.rv-img-24 { background-image: url(/assets/img/photos/revyn-24.jpg); background-image: image-set(url(/assets/img/photos/revyn-24.webp) type("image/webp"), url(/assets/img/photos/revyn-24.jpg) type("image/jpeg")); }
.rv-img-25 { background-image: url(/assets/img/photos/revyn-25.jpg); background-image: image-set(url(/assets/img/photos/revyn-25.webp) type("image/webp"), url(/assets/img/photos/revyn-25.jpg) type("image/jpeg")); }
.rv-img-26 { background-image: url(/assets/img/photos/revyn-26.jpg); background-image: image-set(url(/assets/img/photos/revyn-26.webp) type("image/webp"), url(/assets/img/photos/revyn-26.jpg) type("image/jpeg")); }
.rv-img-27 { background-image: url(/assets/img/photos/revyn-27.jpg); background-image: image-set(url(/assets/img/photos/revyn-27.webp) type("image/webp"), url(/assets/img/photos/revyn-27.jpg) type("image/jpeg")); }
.rv-img-prod-fixed-window { background-image: url(/assets/img/products/revyn-fixed-window.png); }
.rv-img-prod-casement-window { background-image: url(/assets/img/products/revyn-casement-window.png); }
.rv-img-prod-tilt-turn-window { background-image: url(/assets/img/products/revyn-tilt-turn-window.png); }
.rv-img-prod-awning-window { background-image: url(/assets/img/products/revyn-awning-window.png); }
.rv-img-prod-hopper-window { background-image: url(/assets/img/products/revyn-hopper-window.png); }
.rv-img-prod-single-swing-door { background-image: url(/assets/img/products/revyn-single-swing-door.png); }
.rv-img-prod-double-door { background-image: url(/assets/img/products/revyn-double-door.png); }
.rv-img-prod-slider-door { background-image: url(/assets/img/products/revyn-slider-door.png); }
.rv-img-prod-pivot-door { background-image: url(/assets/img/products/revyn-pivot-door.png); }
.rv-img-book { background-image: url(/assets/img/book/wide-open-to-wildfire-cover.jpg); }
.rv-img-book-cut { background-image: url(/assets/img/book/wide-open-to-wildfire-cover-cutout.webp); }
.rv-img-logo-white { background-image: url(/assets/img/logo/revyn-logo-white.png); }
.sq-logo { background-image: url(/assets/img/logo/revyn-logo.png); }
/* Stand-in styles kept for the Steel Report band and form layout */

.rv{
  --rv-green: #364033;      /* Kombu Green */
  --rv-green-deep: #2B3329;
  --rv-bistre: #402E1F;     /* Bistre */
  --rv-gray: #3D3D3D;       /* Dark Gray */
  --rv-silver: #CCC4BA;     /* Pale Silver */
  --rv-paper: #F4F2EF;      /* Light Grayish */
  --rv-white: #FFFFFF;
  --rv-mist: #E4DED6;
  --rv-stone: #6E675F;
  --rv-fire: #EA662B;       /* book accent only */
  --rv-display: 'Mammoth', 'Archivo', 'Arial Black', Arial, sans-serif;
  --rv-outline: 'Mammoth Outline', 'Mammoth', 'Archivo', 'Arial Black', Arial, sans-serif;
  --rv-body: 'Poppins', 'Helvetica Neue', Arial, sans-serif;
  --rv-gutter: clamp(16px, 4vw, 56px);
  --rv-max: 1360px;
  font-family: var(--rv-body);
  font-weight: 300;
  font-size: 16.5px;
  line-height: 1.7;
  color: var(--rv-gray);
  background-color: var(--rv-paper);
  width: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* ---------- Reset inside Revyn sections ---------- */
.rv *, .rv *::before, .rv *::after{ box-sizing: border-box; }
.rv section, .rv div, .rv header, .rv footer, .rv nav, .rv article, .rv figure, .rv ul, .rv ol, .rv li{ margin: 0; padding: 0; }
.rv h1, .rv h2, .rv h3, .rv h4, .rv p, .rv a, .rv span, .rv strong, .rv em, .rv li, .rv small{
  margin: 0; padding: 0; font-family: inherit; font-size: inherit; font-weight: inherit; font-style: normal;
  line-height: inherit; color: inherit; letter-spacing: normal; text-transform: none; white-space: normal;
  text-shadow: none; background: none; border: 0; box-shadow: none;
}
.rv ul, .rv ol{ list-style: none; }
.rv strong{ font-weight: 600; }
.rv em{ font-style: italic; }
.rv a{ text-decoration: none; cursor: pointer; }
.rv img, .rv svg{ display: block; max-width: 100%; }
.rv :focus-visible{ outline: 2px solid var(--rv-silver); outline-offset: 4px; }
.rv [id]{ scroll-margin-top: 96px; }

/* Stand-in styles kept for the Steel Report band and form layout */
section.page-section:has(.rv):not(:has(.rv-flow)){ padding: 0 !important; min-height: 0 !important; }
section.page-section:has(.rv):not(:has(.rv-flow)) .content-wrapper{ padding: 0 !important; max-width: none !important; width: 100% !important; }
section.page-section:has(.rv):not(:has(.rv-flow)) .content{ width: 100% !important; max-width: none !important; }
section.page-section:has(.rv):not(:has(.rv-flow)) .fluid-engine{ display: block !important; }
section.page-section:has(.rv):not(:has(.rv-flow)) .sqs-block{ padding: 0 !important; }

/* ---------- Layout ---------- */
.rv .rv-wrap{ position: relative; width: 100%; max-width: var(--rv-max); margin: 0 auto; padding-left: var(--rv-gutter); padding-right: var(--rv-gutter); }
.rv .rv-sec{ position: relative; overflow: hidden; padding-top: clamp(72px, 9vw, 136px); padding-bottom: clamp(72px, 9vw, 136px); }
.rv .rv-sec--tight{ padding-top: clamp(48px, 6vw, 80px); padding-bottom: clamp(48px, 6vw, 80px); }
.rv .rv-sec--green{ background-color: var(--rv-green); color: var(--rv-paper); }
.rv .rv-sec--bistre{ background-color: var(--rv-bistre); color: var(--rv-paper); }
.rv .rv-sec--white{ background-color: var(--rv-white); }
.rv .rv-sec--paper{ background-color: var(--rv-paper); }
.rv .rv-defer{ content-visibility: auto; contain-intrinsic-size: auto 1000px; }
.rv .rv-stack{ display: flex; flex-direction: column; gap: 22px; }
.rv .rv-split{ display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 440px), 1fr)); gap: clamp(36px, 5vw, 88px); align-items: center; }
.rv .rv-split--top{ align-items: start; }
.rv .rv-grid-7-5{ display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(32px, 4.5vw, 72px); align-items: center; }
.rv .rv-grid-5-7{ display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(32px, 4.5vw, 72px); align-items: center; }
.rv .rv-head{ display: flex; flex-direction: column; gap: 22px; margin-bottom: clamp(40px, 5vw, 72px); }
.rv .rv-head__row{ display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 24px 64px; }
.rv .rv-head__row > p{ flex: 0 1 460px; min-width: 0; }

/* ---------- Type ---------- */
.rv .rv-eyebrow{ display: flex; align-items: center; gap: 14px; font-size: 12px; font-weight: 600; letter-spacing: 0.3em; text-transform: uppercase; color: var(--rv-green); }
.rv .rv-eyebrow::before{ content: ""; width: 28px; height: 1px; background-color: currentColor; flex: none; }
.rv .rv-sec--green .rv-eyebrow, .rv .rv-sec--bistre .rv-eyebrow, .rv .rv-on-photo .rv-eyebrow{ color: var(--rv-silver); }

.rv .rv-display{ font-family: var(--rv-display); font-weight: 400; font-synthesis: none; text-transform: uppercase; line-height: 0.98; letter-spacing: 0; color: var(--rv-green); text-wrap: balance; }
.rv .rv-display .rv-o{ display: block; font-family: var(--rv-outline); color: var(--rv-green); }
.rv .rv-display .rv-s{ display: block; }
.rv .rv-display span, .rv .rv-steel__mast span, .rv .rv-bigline span{ text-transform: inherit; letter-spacing: inherit; }
.rv .rv-sec--green .rv-display, .rv .rv-sec--bistre .rv-display, .rv .rv-on-photo .rv-display{ color: var(--rv-paper); }
.rv .rv-sec--green .rv-display .rv-o, .rv .rv-sec--bistre .rv-display .rv-o{ color: var(--rv-silver); }
.rv .rv-on-photo .rv-display .rv-o{ color: var(--rv-paper); }
.rv .rv-d-hero{ font-size: clamp(25px, 6.2vw, 96px); }
.rv .rv-d-xl{ font-size: clamp(23px, 4.6vw, 70px); }
.rv .rv-d-lg{ font-size: clamp(22px, 3.9vw, 58px); }
.rv .rv-d-md{ font-size: clamp(20px, 2.8vw, 40px); }
.rv .rv-d-sm{ font-size: clamp(18px, 1.9vw, 27px); line-height: 1.08; }

.rv .rv-lede{ font-size: clamp(17.5px, 1.45vw, 21px); line-height: 1.6; font-weight: 300; max-width: 56ch; }
.rv .rv-define{ font-size: clamp(22px, 2.4vw, 34px); line-height: 1.32; font-weight: 300; color: var(--rv-green); max-width: 30ch; }
.rv .rv-define strong{ font-weight: 500; }
.rv .rv-body{ font-size: 16.5px; line-height: 1.75; max-width: 60ch; }
.rv .rv-h3{ font-size: 18.5px; line-height: 1.35; font-weight: 600; color: var(--rv-green); }
.rv .rv-sec--green .rv-h3, .rv .rv-sec--bistre .rv-h3, .rv .rv-sec--green .rv-define{ color: var(--rv-paper); }
.rv .rv-note{ font-size: 13.5px; line-height: 1.6; color: var(--rv-stone); }
.rv .rv-sec--green .rv-note, .rv .rv-sec--bistre .rv-note{ color: var(--rv-silver); }
.rv .rv-src{ font-size: 12px; letter-spacing: 0.04em; color: var(--rv-stone); }

/* ---------- Buttons and links (two looks for each call to action) ---------- */
.rv .rv-actions{ display: flex; flex-wrap: wrap; gap: 14px 22px; align-items: center; }
.rv .rv-btn{ display: inline-flex; align-items: center; justify-content: center; min-height: 56px; padding: 0 32px; font-family: var(--rv-body); font-size: 12.5px; font-weight: 600; letter-spacing: 0.18em; text-transform: uppercase; line-height: 1.2; text-align: center; transition: background-color .2s ease, color .2s ease, border-color .2s ease; }
/* Get a Project Quote, look A: solid button */
.rv .rv-btn--solid{ background-color: var(--rv-green); color: var(--rv-paper); border: 1px solid var(--rv-green); }
.rv .rv-btn--solid:hover{ background-color: var(--rv-bistre); border-color: var(--rv-bistre); color: var(--rv-paper); }
.rv .rv-btn--silver{ background-color: var(--rv-silver); color: var(--rv-green); border: 1px solid var(--rv-silver); }
.rv .rv-btn--silver:hover{ background-color: var(--rv-paper); border-color: var(--rv-paper); color: var(--rv-green); }
/* Contact Us, look A: outline button */
.rv .rv-btn--ghost{ background-color: transparent; color: var(--rv-green); border: 1px solid var(--rv-green); }
.rv .rv-btn--ghost:hover{ background-color: var(--rv-green); color: var(--rv-paper); }
.rv .rv-sec--green .rv-btn--ghost, .rv .rv-sec--bistre .rv-btn--ghost, .rv .rv-on-photo .rv-btn--ghost{ color: var(--rv-paper); border-color: var(--rv-paper); }
.rv .rv-sec--green .rv-btn--ghost:hover, .rv .rv-sec--bistre .rv-btn--ghost:hover, .rv .rv-on-photo .rv-btn--ghost:hover{ background-color: var(--rv-paper); color: var(--rv-green); }
/* Get a Project Quote, look B: big Mammoth line */
.rv .rv-bigline{ display: inline-flex; align-items: center; gap: 0.5em; font-family: var(--rv-display); font-weight: 400; text-transform: uppercase; font-size: clamp(17px, 2vw, 28px); line-height: 1.1; color: var(--rv-green); padding-bottom: 12px; border-bottom: 2px solid currentColor; transition: gap .2s ease; }
.rv .rv-bigline:hover{ gap: 0.9em; }
.rv .rv-sec--green .rv-bigline, .rv .rv-sec--bistre .rv-bigline{ color: var(--rv-paper); }
/* Contact Us, look B: quiet text link */
.rv .rv-link{ display: inline-flex; align-items: center; gap: 10px; min-height: 44px; font-size: 12.5px; font-weight: 600; letter-spacing: 0.18em; text-transform: uppercase; color: var(--rv-green); }
.rv .rv-link::after{ content: "\2192"; transition: transform .2s ease; }
.rv .rv-link:hover::after{ transform: translateX(5px); }
.rv .rv-sec--green .rv-link, .rv .rv-sec--bistre .rv-link, .rv .rv-on-photo .rv-link{ color: var(--rv-paper); }

/* ---------- Photos: approved images are never altered. Frames match each photo's own shape. ---------- */
.rv .rv-photo{ position: relative; width: 100%; max-width: 100%; background-color: var(--rv-green-deep); background-size: cover; background-position: center; background-repeat: no-repeat; }
.rv .rv-r-3x2{ aspect-ratio: 1536 / 1024; }
.rv .rv-r-4x3{ aspect-ratio: 1448 / 1086; }
.rv .rv-r-wide{ aspect-ratio: 1672 / 941; }
.rv .rv-r-loft{ aspect-ratio: 1292 / 1218; }
.rv .rv-r-tall{ aspect-ratio: 1123 / 1401; }
.rv .rv-r-book{ aspect-ratio: 1 / 1; }
.rv .rv-r-logo{ aspect-ratio: 1600 / 266; background-size: contain; background-color: transparent; }
/* The brand-book border accent, used sparingly */
.rv .rv-framed{ padding: clamp(10px, 1.1vw, 16px); background-color: var(--rv-white); box-shadow: 0 24px 60px rgba(20, 24, 18, 0.22); }
.rv .rv-sec--green .rv-framed, .rv .rv-sec--bistre .rv-framed{ background-color: var(--rv-paper); box-shadow: 0 24px 60px rgba(0, 0, 0, 0.4); }
.rv .rv-caption{ margin-top: 12px; font-size: 12px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--rv-stone); }
.rv .rv-sec--green .rv-caption, .rv .rv-sec--bistre .rv-caption{ color: var(--rv-silver); }

/* Shield watermark from the Revyn icon */
.rv .rv-shield{ position: absolute; width: clamp(280px, 38vw, 560px); height: auto; fill: var(--rv-silver); opacity: 0.08; pointer-events: none; }
.rv .rv-shield--tr{ right: -4%; top: -8%; }
.rv .rv-shield--bl{ left: -6%; bottom: -16%; }

/* ---------- Hero ---------- */
.rv .rv-hero{ position: relative; overflow: hidden; background-color: var(--rv-green-deep); }
.rv .rv-hero > .rv-photo{ width: 100%; }
.rv .rv-hero__shade{ position: absolute; inset: 0; background-image: linear-gradient(to right, rgba(20, 24, 18, 0.62) 0%, rgba(20, 24, 18, 0.28) 48%, rgba(20, 24, 18, 0) 72%), linear-gradient(to top, rgba(20, 24, 18, 0.86) 0%, rgba(20, 24, 18, 0.45) 42%, rgba(20, 24, 18, 0) 72%); }
.rv .rv-hero__inner{ position: absolute; left: 0; right: 0; bottom: 0; padding-bottom: clamp(36px, 4.5vw, 72px); display: flex; flex-direction: column; gap: 22px; color: var(--rv-paper); }
.rv .rv-hero__row{ display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 20px 48px; }
.rv .rv-hero__row .rv-lede{ color: var(--rv-paper); flex: 0 1 560px; }
@media (max-width: 1080px) {
  .rv .rv-hero__shade{ display: none; }
  .rv .rv-hero__inner{ position: relative; background-color: var(--rv-green); padding-top: 44px; padding-bottom: 52px; }
}

/* ---------- Proof bar ---------- */
.rv .rv-proof{ background-color: var(--rv-green); color: var(--rv-paper); border-top: 1px solid rgba(204, 196, 186, 0.25); }
.rv .rv-proof__grid{ display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.rv .rv-proof__item{ padding: clamp(28px, 3.2vw, 48px) clamp(16px, 2vw, 32px); display: flex; flex-direction: column; gap: 10px; border-left: 1px solid rgba(204, 196, 186, 0.25); }
.rv .rv-proof__item:first-child{ border-left: 0; padding-left: 0; }
.rv .rv-proof__n{ font-family: var(--rv-display); font-size: clamp(26px, 3.4vw, 50px); line-height: 1; color: var(--rv-paper); white-space: nowrap; }
.rv .rv-proof__n small{ font-size: 0.42em; margin-left: 6px; color: var(--rv-silver); }
.rv .rv-proof__item p:not([class]){ font-size: 14px; line-height: 1.55; color: var(--rv-mist); max-width: 30ch; }

/* ---------- What is Revyn ---------- */
.rv .rv-wide{ margin-top: clamp(48px, 6vw, 88px); }

/* ---------- The overlooked opening ---------- */
.rv .rv-system{ display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); border: 1px solid var(--rv-silver); margin-top: clamp(48px, 6vw, 80px); }
.rv .rv-system > div{ padding: 22px 18px 24px; border-left: 1px solid var(--rv-silver); display: flex; flex-direction: column; gap: 8px; }
.rv .rv-system > div:first-child{ border-left: 0; }
.rv .rv-system b{ font-family: var(--rv-display); font-weight: 400; text-transform: uppercase; font-size: clamp(13px, 1.1vw, 16px); color: var(--rv-green); }
.rv .rv-system span{ font-size: 13.5px; line-height: 1.5; color: var(--rv-stone); }
.rv .rv-system__cap{ margin-top: 14px; font-size: 14.5px; color: var(--rv-green); font-weight: 500; }
.rv .rv-stats{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.rv .rv-stat{ border-top: 1px solid var(--rv-silver); padding-top: 18px; display: flex; flex-direction: column; gap: 8px; }
.rv .rv-stat__n{ font-family: var(--rv-display); font-size: clamp(26px, 2.6vw, 38px); line-height: 1; color: var(--rv-green); }
.rv .rv-stat p:not([class]){ font-size: 14.5px; line-height: 1.55; }

/* ---------- The fire test ---------- */
.rv .rv-clock{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(24px, 4vw, 64px); margin-top: clamp(40px, 5vw, 72px); padding-top: clamp(28px, 3vw, 40px); border-top: 1px solid rgba(204, 196, 186, 0.35); }
.rv .rv-clock__n{ font-family: var(--rv-display); font-size: clamp(50px, 8vw, 122px); line-height: 0.9; color: var(--rv-paper); font-variant-numeric: tabular-nums; }
.rv .rv-clock__n--o{ font-family: var(--rv-outline); color: var(--rv-silver); }
.rv .rv-clock__label{ margin-top: 16px; font-size: 15px; line-height: 1.55; color: var(--rv-mist); max-width: 36ch; }
.rv .rv-clock__label b{ display: block; font-size: 12px; font-weight: 600; letter-spacing: 0.24em; text-transform: uppercase; color: var(--rv-silver); margin-bottom: 6px; }

/* ---------- Therma Web ---------- */
.rv .rv-parts{ display: flex; flex-direction: column; margin-top: 8px; }
.rv .rv-part{ display: grid; grid-template-columns: 64px minmax(0, 1fr); gap: 4px 18px; padding: 24px 0; border-top: 1px solid var(--rv-silver); }
.rv .rv-part:last-child{ border-bottom: 1px solid var(--rv-silver); }
.rv .rv-part__n{ font-family: var(--rv-outline); font-size: 34px; line-height: 1; color: var(--rv-green); }
.rv .rv-part p:not([class]){ font-size: 15.5px; line-height: 1.65; margin-top: 6px; }
.rv .rv-cores{ display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.rv .rv-core{ font-size: 11.5px; font-weight: 600; letter-spacing: 0.16em; text-transform: uppercase; color: var(--rv-green); border: 1px solid var(--rv-silver); padding: 8px 13px; }
.rv .rv-core--lead{ background-color: var(--rv-green); color: var(--rv-paper); border-color: var(--rv-green); }
.rv .rv-pull{ font-family: var(--rv-display); text-transform: uppercase; font-size: clamp(16px, 1.6vw, 22px); line-height: 1.25; color: var(--rv-green); margin-top: 28px; }

/* ---------- Made in New England ---------- */
.rv .rv-mosaic{ display: grid; grid-template-columns: 1fr 0.601fr 1fr; gap: clamp(8px, 1.2vw, 16px); align-items: start; }
.rv .rv-facts{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 clamp(24px, 3vw, 48px); margin-top: clamp(40px, 5vw, 64px); }
.rv .rv-fact{ border-top: 1px solid rgba(204, 196, 186, 0.4); padding: 22px 0 26px; display: flex; flex-direction: column; gap: 6px; }
.rv .rv-fact h3{ font-size: 16.5px; font-weight: 600; line-height: 1.35; color: var(--rv-paper); }
.rv .rv-fact p:not([class]){ font-size: 14.5px; line-height: 1.6; color: var(--rv-mist); }
.rv .rv-badge{ width: clamp(108px, 10vw, 140px); height: auto; flex: none; }

/* ---------- The two series ---------- */
.rv .rv-row{ display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(32px, 5vw, 80px); align-items: center; }
.rv .rv-row + .rv-row{ margin-top: clamp(56px, 7vw, 104px); }
.rv .rv-row--flip{ grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); }
.rv .rv-row--flip .rv-row__media{ order: 2; }
.rv .rv-row__text{ display: flex; flex-direction: column; gap: 16px; }
.rv .rv-row__text p:not([class]){ font-size: 16px; line-height: 1.7; max-width: 46ch; }
.rv .rv-tag{ align-self: flex-start; font-size: 11.5px; font-weight: 600; letter-spacing: 0.22em; text-transform: uppercase; color: var(--rv-paper); background-color: var(--rv-green); padding: 7px 12px; }

/* ---------- Who we serve ---------- */
.rv .rv-paths{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(16px, 2vw, 28px); }
.rv .rv-path{ display: flex; flex-direction: column; background-color: var(--rv-paper); color: var(--rv-gray); }
.rv .rv-path__media{ position: relative; overflow: hidden; aspect-ratio: 1536 / 1024; }
.rv .rv-path__media .rv-photo{ position: absolute; inset: 0; height: 100%; transition: transform .7s ease; }
.rv .rv-path:hover .rv-path__media .rv-photo{ transform: scale(1.04); }
.rv .rv-path__shade{ position: absolute; inset: 0; background-image: linear-gradient(to top, rgba(20, 24, 18, 0.8) 0%, rgba(20, 24, 18, 0.3) 48%, rgba(20, 24, 18, 0) 72%); }
.rv .rv-path__title{ position: absolute; left: 0; right: 0; bottom: 0; padding: clamp(18px, 2vw, 26px); display: flex; flex-direction: column; gap: 10px; }
.rv .rv-path__title .rv-eyebrow{ color: var(--rv-silver); }
.rv .rv-path h3{ font-family: var(--rv-display); font-weight: 400; text-transform: uppercase; font-size: clamp(17px, 1.6vw, 23px); line-height: 1.08; color: var(--rv-paper); }
.rv .rv-path__body{ padding: 22px clamp(18px, 2vw, 26px) 26px; display: flex; flex-direction: column; gap: 12px; flex: 1; }
.rv .rv-path__body p:not([class]){ font-size: 15px; line-height: 1.6; }
.rv .rv-path__body .rv-link{ margin-top: auto; }

/* ---------- The book ---------- */
.rv .rv-book .rv-eyebrow{ color: var(--rv-fire); }
.rv .rv-book__img{ width: min(100%, 580px); margin: 0 auto; }
.rv .rv-book__sub{ font-size: clamp(18px, 1.6vw, 22px); line-height: 1.45; font-weight: 400; color: var(--rv-fire); max-width: 32ch; }
.rv .rv-book__authors{ font-size: 12.5px; font-weight: 600; letter-spacing: 0.2em; text-transform: uppercase; color: var(--rv-silver); }
.rv .rv-btn--fire{ background-color: var(--rv-fire); color: #1E1A16; border: 1px solid var(--rv-fire); }
.rv .rv-btn--fire:hover{ background-color: var(--rv-paper); border-color: var(--rv-paper); color: var(--rv-green); }
.rv .rv-q{ display: flex; flex-direction: column; gap: 10px; }
.rv .rv-q li{ position: relative; padding-left: 26px; font-size: 15.5px; line-height: 1.55; color: var(--rv-mist); }
.rv .rv-q li::before{ content: ""; position: absolute; left: 0; top: 0.72em; width: 14px; height: 1px; background-color: var(--rv-fire); }

/* ---------- Questions (always visible so search engines and AI tools can read every answer) ---------- */
.rv .rv-faq{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 clamp(32px, 4vw, 72px); margin-top: clamp(40px, 5vw, 64px); }
.rv .rv-faq__item{ border-top: 1px solid var(--rv-silver); padding: 24px 0 28px; display: flex; flex-direction: column; gap: 10px; }
.rv .rv-faq__item h3{ font-size: 17.5px; line-height: 1.4; font-weight: 600; color: var(--rv-green); }
.rv .rv-faq__item p:not([class]){ font-size: 15.5px; line-height: 1.7; }

/* ---------- The Steel Report masthead ---------- */
.rv .rv-steel__mast{ font-family: var(--rv-display); font-weight: 400; text-transform: uppercase; line-height: 0.95; font-size: clamp(30px, 4.4vw, 64px); color: var(--rv-paper); }
.rv .rv-steel__mast .rv-o{ display: block; font-family: var(--rv-outline); color: var(--rv-silver); }
.rv .rv-steel__mast .rv-s{ display: block; }

/* ---------- Page heads and lists ---------- */
.rv .rv-checks{ display: flex; flex-direction: column; gap: 12px; }
.rv .rv-checks li{ position: relative; padding-left: 30px; font-size: 15.5px; line-height: 1.55; }
.rv .rv-checks li::before{ content: ""; position: absolute; left: 0; top: 0.35em; width: 14px; height: 8px; border-left: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(-45deg); }
.rv .rv-sec--green .rv-checks li{ color: var(--rv-mist); }
.rv .rv-contact-lines{ display: flex; flex-direction: column; gap: 4px; font-size: 16px; line-height: 1.6; }
.rv .rv-contact-lines a{ border-bottom: 1px solid rgba(204, 196, 186, 0.6); align-self: flex-start; }

/* ---------- Tablets ---------- */
@media (max-width: 1080px) {
  .rv .rv-system{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .rv .rv-system > div:nth-child(4){ border-left: 0; }
  .rv .rv-system > div:nth-child(n+4){ border-top: 1px solid var(--rv-silver); }
  .rv .rv-facts{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  .rv .rv-grid-7-5, .rv .rv-grid-5-7, .rv .rv-row, .rv .rv-row--flip{ grid-template-columns: minmax(0, 1fr); }
  .rv .rv-row--flip .rv-row__media{ order: 0; }
  .rv .rv-paths{ grid-template-columns: minmax(0, 1fr); }
  .rv .rv-faq{ grid-template-columns: minmax(0, 1fr); }
  .rv .rv-proof__grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rv .rv-proof__item:nth-child(3){ border-left: 0; padding-left: 0; }
  .rv .rv-proof__item:nth-child(n+3){ border-top: 1px solid rgba(204, 196, 186, 0.25); }
}

/* ---------- Phones ---------- */
@media (max-width: 640px) {
  .rv{ font-size: 16px; }
  /* Outline lines get too fine at phone sizes, so they switch to a solid, lighter tone */
  .rv .rv-display .rv-o, .rv .rv-steel__mast .rv-o{ font-family: var(--rv-display); color: #8C8A7E; }
  .rv .rv-sec--green .rv-display .rv-o, .rv .rv-sec--bistre .rv-display .rv-o, .rv .rv-steel__mast .rv-o, .rv .rv-on-photo .rv-display .rv-o, .rv .rv-hero .rv-display .rv-o{ color: var(--rv-silver); }
  .rv .rv-clock__n--o{ font-family: var(--rv-display); color: #8C8A7E; }
  .rv .rv-system{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rv .rv-system > div:nth-child(odd){ border-left: 0; }
  .rv .rv-system > div:nth-child(4){ border-left: 1px solid var(--rv-silver); }
  .rv .rv-system > div:nth-child(n+3){ border-top: 1px solid var(--rv-silver); }
  .rv .rv-facts, .rv .rv-stats{ grid-template-columns: minmax(0, 1fr); }
  .rv .rv-mosaic{ grid-template-columns: 1fr 0.601fr; }
  .rv .rv-mosaic > :last-child{ display: none; }
  .rv .rv-clock{ grid-template-columns: minmax(0, 1fr); }
  .rv .rv-btn{ width: 100%; }
  .rv .rv-actions{ flex-direction: column; align-items: stretch; }
  .rv .rv-actions .rv-link{ justify-content: center; }
  .rv .rv-proof__item{ padding-left: 0; padding-right: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .rv *{ transition: none !important; }
}

/* Stand-in styles kept for the Steel Report band and form layout */
.sq-header { position: relative; z-index: 2; background: #F4F2EF; border-bottom: 1px solid #CCC4BA; font-family: 'Poppins', Arial, sans-serif; }
.sq-header__in { max-width: 1360px; margin: 0 auto; padding: 14px clamp(16px, 4vw, 56px); display: flex; align-items: center; gap: 28px; }
.sq-logo { display: block; width: 216px; aspect-ratio: 1600 / 266; background-size: contain; background-repeat: no-repeat; }
.sq-nav { display: flex; gap: 26px; margin-left: auto; }
.sq-nav a { font-size: 12px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; color: #364033; text-decoration: none; padding: 12px 0; }
.sq-btn { background: #364033; color: #F4F2EF; font-size: 12px; font-weight: 600; letter-spacing: .16em; text-transform: uppercase; text-decoration: none; padding: 15px 22px; white-space: nowrap; }
@media (max-width: 1100px) { .sq-nav { display: none; } .sq-btn { margin-left: auto; } }
.sq-steel { background: #402E1F; }
.sq-steel__in { max-width: 1360px; margin: 0 auto; padding: clamp(64px, 8vw, 104px) clamp(16px, 4vw, 56px); display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 380px), 1fr)); gap: 40px 80px; align-items: center; }
.sq-news { font-family: 'Poppins', Arial, sans-serif; color: #F4F2EF; display: flex; flex-direction: column; gap: 10px; }
.sq-news label { font-size: 12px; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; color: #CCC4BA; }
.sq-news__row { display: flex; flex-wrap: wrap; gap: 10px; }
.sq-news input { flex: 1 1 200px; min-height: 54px; padding: 0 16px; border: 1px solid #CCC4BA; background: transparent; color: #F4F2EF; font: inherit; font-size: 15px; }
.sq-news button { min-height: 54px; padding: 0 28px; border: 0; background: #CCC4BA; color: #364033; font: inherit; font-size: 12.5px; font-weight: 600; letter-spacing: .18em; text-transform: uppercase; }
.sq-note { font-size: 12px; color: #B9B0A5; margin: 0; }
.sq-form { background: #F4F2EF; padding: 32px 0 96px; font-family: 'Poppins', Arial, sans-serif; }
.sq-form__in { max-width: 760px; margin: 0 auto; padding: 0 clamp(16px, 4vw, 56px); display: grid; gap: 14px; }
.sq-form__tag { margin: 0; font-size: 12px; color: #6E675F; letter-spacing: .06em; }
.sq-form label { font-size: 13px; color: #364033; display: grid; gap: 6px; }
.sq-form input, .sq-form textarea { width: 100%; min-height: 50px; border: 1px solid #CCC4BA; background: #FFFFFF; padding: 0 14px; box-sizing: border-box; font: inherit; }
.sq-form textarea { min-height: 120px; padding-top: 12px; }
.sq-form button { justify-self: start; min-height: 54px; padding: 0 30px; border: 0; background: #364033; color: #F4F2EF; font-family: inherit; font-weight: 600; letter-spacing: .18em; font-size: 12.5px; text-transform: uppercase; }

/* ---------- v3: brand book images from the exploration design ---------- */
.rv-img-v1-mountain { background-image: url(/assets/img/brand/revyn-brand-mountain.jpg); background-image: image-set(url(/assets/img/brand/revyn-brand-mountain.webp) type("image/webp"), url(/assets/img/brand/revyn-brand-mountain.jpg) type("image/jpeg")); }
.rv-img-v1-loft { background-image: url(/assets/img/brand/revyn-brand-loft.jpg); background-image: image-set(url(/assets/img/brand/revyn-brand-loft.webp) type("image/webp"), url(/assets/img/brand/revyn-brand-loft.jpg) type("image/jpeg")); }
.rv-img-v1-snow-cabin { background-image: url(/assets/img/brand/revyn-brand-snow-cabin.jpg); background-image: image-set(url(/assets/img/brand/revyn-brand-snow-cabin.webp) type("image/webp"), url(/assets/img/brand/revyn-brand-snow-cabin.jpg) type("image/jpeg")); }
.rv-img-v1-kitchen { background-image: url(/assets/img/brand/revyn-brand-kitchen.jpg); background-image: image-set(url(/assets/img/brand/revyn-brand-kitchen.webp) type("image/webp"), url(/assets/img/brand/revyn-brand-kitchen.jpg) type("image/jpeg")); }
.rv-img-v1-coastal { background-image: url(/assets/img/brand/revyn-brand-coastal.jpg); background-image: image-set(url(/assets/img/brand/revyn-brand-coastal.webp) type("image/webp"), url(/assets/img/brand/revyn-brand-coastal.jpg) type("image/jpeg")); }
.rv-img-v1-dusk-house-wide { background-image: url(/assets/img/brand/revyn-brand-dusk-house-wide.jpg); background-image: image-set(url(/assets/img/brand/revyn-brand-dusk-house-wide.webp) type("image/webp"), url(/assets/img/brand/revyn-brand-dusk-house-wide.jpg) type("image/jpeg")); }
.rv-img-v1-forest { background-image: url(/assets/img/brand/revyn-brand-forest.jpg); background-image: image-set(url(/assets/img/brand/revyn-brand-forest.webp) type("image/webp"), url(/assets/img/brand/revyn-brand-forest.jpg) type("image/jpeg")); }
.rv-img-v1-dusk-house { background-image: url(/assets/img/brand/revyn-brand-dusk-house.jpg); background-image: image-set(url(/assets/img/brand/revyn-brand-dusk-house.webp) type("image/webp"), url(/assets/img/brand/revyn-brand-dusk-house.jpg) type("image/jpeg")); }
.rv-img-v1-concrete { background-image: url(/assets/img/brand/revyn-brand-concrete.jpg); background-image: image-set(url(/assets/img/brand/revyn-brand-concrete.webp) type("image/webp"), url(/assets/img/brand/revyn-brand-concrete.jpg) type("image/jpeg")); }
.rv-img-v1-office { background-image: url(/assets/img/brand/revyn-brand-office.jpg); background-image: image-set(url(/assets/img/brand/revyn-brand-office.webp) type("image/webp"), url(/assets/img/brand/revyn-brand-office.jpg) type("image/jpeg")); }
.rv-img-v1-hero-house { background-image: url(/assets/img/brand/revyn-brand-hero-house.jpg); background-image: image-set(url(/assets/img/brand/revyn-brand-hero-house.webp) type("image/webp"), url(/assets/img/brand/revyn-brand-hero-house.jpg) type("image/jpeg")); }
.rv-img-v1-office-2 { background-image: url(/assets/img/brand/revyn-brand-office-2.jpg); background-image: image-set(url(/assets/img/brand/revyn-brand-office-2.webp) type("image/webp"), url(/assets/img/brand/revyn-brand-office-2.jpg) type("image/jpeg")); }
.rv-img-v1-lake { background-image: url(/assets/img/brand/revyn-brand-lake.jpg); background-image: image-set(url(/assets/img/brand/revyn-brand-lake.webp) type("image/webp"), url(/assets/img/brand/revyn-brand-lake.jpg) type("image/jpeg")); }

/* ---------- v3 additions: hidden pages ---------- */
.rv .rv-reader{ width: 100%; border: 1px solid var(--rv-silver); background-color: var(--rv-paper); padding: clamp(8px, 1.1vw, 16px); }
.rv .rv-reader iframe{ display: block; width: 100% !important; min-height: clamp(460px, 62vw, 780px); border: 0; }
.rv .rv-reader__hold{ display: flex; align-items: center; justify-content: center; min-height: clamp(360px, 46vw, 620px); font-size: 13px; font-weight: 600; letter-spacing: 0.2em; text-transform: uppercase; color: var(--rv-stone); }
.rv .rv-reader:has(iframe) .rv-reader__hold{ display: none; }
.rv .rv-videos{ display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); gap: clamp(28px, 3vw, 44px) clamp(20px, 2.4vw, 32px); }
.rv .rv-video{ display: flex; flex-direction: column; gap: 12px; }
.rv .rv-video__screen{ position: relative; aspect-ratio: 16 / 9; background-color: var(--rv-green-deep); background-image: radial-gradient(ellipse at 50% 120%, rgba(234, 102, 43, 0.35) 0%, rgba(234, 102, 43, 0) 60%); border: 1px solid var(--rv-green); margin-bottom: 6px; }
.rv .rv-video__play{ position: absolute; left: 50%; top: 50%; width: 64px; height: 64px; margin: -32px 0 0 -32px; border: 1px solid rgba(244, 242, 239, 0.7); border-radius: 50%; }
.rv .rv-video__play::after{ content: ""; position: absolute; left: 26px; top: 21px; border-style: solid; border-width: 11px 0 11px 17px; border-color: transparent transparent transparent rgba(244, 242, 239, 0.85); }
.rv .rv-guide-qs{ display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 380px), 1fr)); gap: 0 clamp(32px, 4vw, 64px); }
.rv .rv-guide-qs .rv-part{ padding: 18px 0; align-items: center; }
.rv .rv-guide-qs .rv-part__n{ font-size: 28px; }

/* ---------- v3.1: product photo spaces (fill in Custom CSS when photos are ready) ---------- */
.rv .rv-prod-photo{ background-color: #F7F5F2; background-size: contain; background-position: center; background-repeat: no-repeat; }

/* ---------- v3 additions: inline headings keep their capitals ---------- */
.rv h1 span, .rv h2 span, .rv h3 span{ text-transform: inherit; letter-spacing: inherit; }
.rv .rv-badge-inline{ display: block; width: 100%; height: auto; }
.rv [data-rv-hover="lift"]:hover{ transform: translateY(-2px); }

/* ---------- v3.3: homepage hero words sit higher in the photo ---------- */
@media (min-width: 1081px){ .rv .rv-hero__inner{ top: 0; justify-content: center; padding-top: clamp(32px, 3vw, 56px); padding-bottom: clamp(48px, 6vw, 110px); } }

/* ---------- v3.3: The Steel Report sign-up, set over a photo (footer and /the-steel-report) ---------- */
/* Stand-in styles kept for the Steel Report band and form layout */
section.page-section:has(.rv-steel-hero) .section-background-overlay{ background: linear-gradient(90deg, rgba(43, 31, 21, 0.94) 0%, rgba(43, 31, 21, 0.82) 45%, rgba(43, 31, 21, 0.25) 100%) !important; opacity: 1 !important; }
@media (max-width: 767px){ section.page-section:has(.rv-steel-hero) .section-background-overlay{ background: rgba(43, 31, 21, 0.86) !important; } }
.rv .rv-steel-hero .rv-steel__mast{ font-size: clamp(38px, 5.6vw, 84px); }
.rv .rv-steel-hero .rv-steel__lede{ margin: 0; max-width: 46ch; font-size: clamp(17px, 1.4vw, 20px); line-height: 1.6; color: var(--rv-paper); }

/* Stand-in styles kept for the Steel Report band and form layout */
.sq-steel--hero{ position: relative; overflow: hidden; isolation: isolate; background: #2B1F15; }
.sq-steel--hero .sq-steel__bg{ position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: -2; background-size: cover; background-position: center; }
.sq-steel--hero .sq-steel__shade{ position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: -1; background: linear-gradient(90deg, rgba(43, 31, 21, 0.94) 0%, rgba(43, 31, 21, 0.82) 45%, rgba(43, 31, 21, 0.25) 100%); }
.sq-steel--hero .sq-steel__in{ display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: 36px; min-height: clamp(560px, 44vw, 700px); padding-top: clamp(80px, 9vw, 128px); padding-bottom: clamp(80px, 9vw, 128px); box-sizing: border-box; }
.sq-steel--hero .sq-steel__copy{ max-width: 660px; }
.sq-steel--hero .sq-news{ width: min(100%, 560px); }
@media (max-width: 767px){ .sq-steel--hero .sq-steel__shade{ background: rgba(43, 31, 21, 0.86); } }
/* old three-column stand-in, kept for reference */
.sq-steel--photo .sq-steel__in{ grid-template-columns: minmax(0, 5fr) minmax(0, 4fr) minmax(0, 4fr); gap: 40px 56px; }
@media (max-width: 1280px){ .sq-steel--photo .sq-steel__in{ grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); } .sq-steel--photo .sq-steel__photo{ grid-column: 1 / -1; max-width: 560px; } }
@media (max-width: 700px){ .sq-steel--photo .sq-steel__in{ grid-template-columns: minmax(0, 1fr); } }
