/* =========================================================
   CSS Architecture Map

   01. Foundation, variables, and base elements
   02. Header and navigation
   03. Hero, division grid, and modal foundations
   04. Breakpoint registry and responsive foundations
   05. Typography systems and section refinements
   06. Portfolio, gallery, and before/after presentation
   07. About, leadership, and team interactions
   08. Stable interaction and modal refinements
   09. Physical anchor navigation
   10. Testimonials and blog polish
   11. Subtle ambient atmosphere

   Maintenance note:
   Keep new edits inside their matching section instead of adding
   broad override stacks at the bottom of this file.
========================================================= */


/* =========================================================
   Breakpoint Registry

   Desktop default: 1181px and above
   Tablet / compact desktop: max-width 1180px
   Mobile: max-width 760px
   Blog compact layout: max-width 900px
   Reduced motion: prefers-reduced-motion

   Keep responsive overrides near their source section unless a
   future full responsive layer is intentionally created.
========================================================= */


/* =========================================================
   Transition and Animation Registry

   This file intentionally keeps transition declarations near the
   components they control. The registry below documents the active
   motion system so future edits do not create another override stack.

   Core timing roles:
   - Micro interactions: .25s to .45s
   - Card / hover reveals: .3s to .5s
   - Section entrance polish: .85s to 1.6s
   - Hero intro / tear sequence: 3.75s forward / 5s reverse keyframes
   - Modal center expansion: CSS transform/opacity based, preserve order

   Core easing roles:
   - --s6-ease: general premium UI easing
   - cubic-bezier(.65, 0, .35, 1): hero tear/keyframe sequence
   - cubic-bezier(.55, 0, .2, 1): heavier cinematic transforms

   Safety note:
   Do not consolidate hero animation declarations unless testing against
   the full desktop + mobile tear/reset sequence. Some repeated-looking
   declarations are active compatibility layers.
========================================================= */

/* =========================================================
   Foundation Variables and Base Elements
========================================================= */
:root {
  --s6-green:#8ec43f;
  --s6-dark:#050505;
  --s6-light:#f1f1ec;
  --s6-white:#fff;
  --s6-ease:cubic-bezier(.25, 1, .5, 1)
}

* {
  box-sizing:border-box
}

html {
  scroll-behavior:smooth
}

body {
  margin:0;
  overflow-x:hidden;
  background:var(--s6-dark);
  color:#fff;
  font-family:Eurostile, "Bank Gothic", "Arial Narrow", Arial, sans-serif
}

body.s6-lock-scroll {
  overflow:hidden
}

a {
  color:inherit;
  text-decoration:none
}

button, input, select, textarea {
  font:inherit
}

button {
  cursor:pointer
}

.s6-site {
  background:var(--s6-dark)
}

.s6-container {
  max-width:1500px;
  margin:0 auto;
  position:relative
}

.s6-container--wide {
  max-width:1600px
}

.s6-section {
  position:relative;
  overflow:hidden;
  padding:112px 56px
}

.s6-section--compact {
  padding-top:80px;
  padding-bottom:80px
}

.s6-section--dark {
  background:#050505;
  color:#fff
}

.s6-section--light {
  background:#f1f1ec;
  color:#000
}

.s6-eyebrow {
  display:flex;
  align-items:center;
  gap:16px;
  margin-bottom:20px;
  color:var(--s6-green);
  font-size:12px;
  font-weight:900;
  letter-spacing:.32em;
  text-transform:uppercase
}

.s6-eyebrow span {
  display:block;
  width:56px;
  height:2px;
  background:currentColor
}

.s6-eyebrow--light {
  color:rgba(255, 255, 255, .7)
}

.s6-eyebrow--dark {
  color:rgba(0, 0, 0, .5)
}

.s6-section h2, .s6-section-title-row h2 {
  margin:0;
  max-width:1050px;
  font-size:clamp(3rem, 5.9vw, 7rem);
  font-weight:900;
  line-height:.88;
  letter-spacing:-.055em;
  text-transform:uppercase
}

.s6-section-title-row {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:36px
}

.s6-section-title-row>p {
  max-width:440px;
  margin:0;
  color:rgba(255, 255, 255, .48);
  font-size:13px;
  font-weight:800;
  line-height:1.7;
  letter-spacing:.16em;
  text-transform:uppercase
}

.s6-section--light .s6-section-title-row>p {
  max-width:360px;
  color:rgba(0, 0, 0, .4);
  font-size:10px
}

/* =========================================================
   Header and Navigation
========================================================= */
.s6-header {
  position:fixed;
  inset:0 0 auto;
  z-index:1000;
  padding:16px 32px 0;
  pointer-events:none
}

.s6-header__inner {
  pointer-events:auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  max-width:1640px;
  margin:0 auto;
  padding:12px 24px;
  border:1px solid rgba(255, 255, 255, .08);
  border-radius:999px;
  background:rgba(0, 0, 0, .34);
  box-shadow:0 18px 60px rgba(0, 0, 0, .28);
  backdrop-filter:blur(28px);
  transition:.45s
}

.s6-header.is-scrolled .s6-header__inner {
  border-color:rgba(255, 255, 255, .12);
  background:rgba(0, 0, 0, .68)
}

.s6-mobile-nav-toggle,
.s6-mobile-nav {
  display:none
}

.s6-mobile-nav[hidden] {
  display:none !important
}

.s6-logo {
  display:flex;
  align-items:center;
  gap:12px;
  flex-shrink:0;
  border:0;
  background:transparent;
  color:#fff
}

.s6-logo__mark {
  position:relative;
  width:48px;
  height:36px;
  overflow:hidden;
  border-radius:3px;
  background:#fff
}

.s6-logo__mark:before {
  content:"";
  position:absolute;
  top:0;
  left:20px;
  width:16px;
  height:100%;
  background:var(--s6-green)
}

.s6-logo__mark:after {
  content:"";
  position:absolute;
  top:14px;
  left:4px;
  width:36px;
  height:8px;
  background:#000
}

.s6-logo__title {
  display:block;
  font-size:20px;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase
}

.s6-logo strong, .s6-logo__title strong {
  color:var(--s6-green)
}

.s6-logo__sub {
  display:block;
  margin-top:2px;
  color:rgba(255, 255, 255, .55);
  font-size:10px;
  letter-spacing:.4em;
  text-transform:uppercase
}

.s6-nav {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:20px;
  flex:1
}

.s6-nav button,
.s6-nav a {
  position:relative;
  border:0;
  background:transparent;
  color:rgba(255, 255, 255, .58);
  padding:8px 4px;
  font-size:11px;
  font-weight:900;
  letter-spacing:.18em;
  line-height:1;
  text-decoration:none;
  text-transform:uppercase
}

.s6-nav button:after,
.s6-nav a:after {
  content:"";
  position:absolute;
  left:50%;
  bottom:0;
  width:0;
  height:2px;
  transform:translateX(-50%);
  background:var(--s6-green);
  opacity:0;
  transition:.3s
}

.s6-nav button:hover,
.s6-nav button.is-active,
.s6-nav a:hover,
.s6-nav a.is-active {
  color:#fff
}

.s6-nav button:hover:after,
.s6-nav button.is-active:after,
.s6-nav a:hover:after,
.s6-nav a.is-active:after {
  width:24px;
  opacity:1
}

.s6-header-actions {
  display:flex;
  align-items:center;
  gap:12px
}

.s6-header-actions:before {
  content:"";
  width:1px;
  height:24px;
  background:rgba(255, 255, 255, .1)
}

.s6-social-row {
  display:flex;
  align-items:center;
  gap:8px
}

.s6-social-row a {
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  border:1px solid rgba(255, 255, 255, .1);
  border-radius:999px;
  background:rgba(255, 255, 255, .025);
  color:rgba(255, 255, 255, .48);
  font-size:9px;
  font-weight:900;
  letter-spacing:.08em;
  transition:.3s
}

.s6-header .s6-social-row a {
  width:32px;
  height:32px
}

.s6-social-row a:hover {
  border-color:rgba(142, 196, 63, .35);
  background:rgba(142, 196, 63, .1);
  color:var(--s6-green)
}

.s6-contact-nav {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  border:1px solid rgba(186, 243, 108, .72);
  border-radius:999px;
  background:linear-gradient(180deg, #a8dc4d, var(--s6-green));
  box-shadow:0 0 0 1px rgba(142, 196, 63, .08), 0 8px 22px rgba(92, 138, 30, .18);
  color:#071002;
  padding:9px 18px;
  font-size:9px;
  font-weight:950;
  letter-spacing:.15em;
  text-transform:uppercase;
  transition:transform .22s ease, box-shadow .22s ease, filter .22s ease
}

.s6-contact-nav:hover {
  transform:translateY(-1px);
  box-shadow:0 0 0 1px rgba(186, 243, 108, .2), 0 10px 26px rgba(92, 138, 30, .28);
  color:#000;
  filter:brightness(1.06)
}

.s6-employee-nav {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:30px;
  border:1px solid rgba(255, 255, 255, .16);
  border-radius:999px;
  background:rgba(255, 255, 255, .025);
  color:rgba(255, 255, 255, .72);
  padding:8px 11px;
  font-size:8px;
  font-weight:900;
  letter-spacing:.13em;
  line-height:1;
  text-decoration:none;
  text-transform:uppercase;
  transition:.3s;
}

.s6-employee-nav:hover,
.s6-employee-nav.is-active {
  border-color:rgba(142, 196, 63, .42);
  background:rgba(142, 196, 63, .12);
  color:#fff;
}


/* =========================================================
   Hero and Division Grid Base
========================================================= */
.s6-hero {
  position:relative;
  height:100vh;
  overflow:hidden;
  background:#000
}

.s6-hero-bg, .s6-hero-overlay {
  position:absolute;
  inset:0;
  transition:opacity .7s var(--s6-ease), transform 1.2s var(--s6-ease)
}

.s6-hero-bg {
  z-index:0;
  background-image: var(--s6-hero-image);
  background-position: var(--s6-hero-position, center center);
  background-size: var(--s6-hero-static-size, 100% 100%);
  background-repeat: no-repeat;
}

.s6-hero-overlay {
  z-index:1;
  background:linear-gradient(90deg, #000, rgba(0, 0, 0, .7), rgba(0, 0, 0, .2))
}

.s6-hero.is-revealed .s6-hero-bg, .s6-hero.is-revealed .s6-hero-overlay {
  opacity:0;
  transform:scale(1.08)
}

.s6-hero-intro {
  position:absolute;
  z-index:20;
  top:19vh;
  left:56px;
  right:56px;
  transition:transform 1.8s cubic-bezier(.55, 0, .2, 1), opacity .8s
}

.s6-hero.is-revealed .s6-hero-intro {
  transform:translateY(-900px);
  opacity:0
}

.s6-hero-intro h1 {
  max-width:1100px;
  margin:0;
  font-size:clamp(3.3rem, 8vw, 9rem);
  font-weight:900;
  line-height:.84;
  letter-spacing:-.055em;
  text-transform:uppercase
}

.s6-hero-intro p {
  max-width:540px;
  margin-top:28px;
  color:rgba(255, 255, 255, .6);
  font-size:18px;
  line-height:1.65
}

.s6-scroll-hint {
  position:absolute;
  z-index:30;
  left:56px;
  bottom:48px;
  display:flex;
  align-items:center;
  gap:16px;
  color:rgba(255, 255, 255, .6);
  font-size:11px;
  letter-spacing:.24em;
  text-transform:uppercase;
  transition:.4s
}

.s6-scroll-hint span {
  width:1px;
  height:56px;
  background:var(--s6-green)
}

.s6-hero.is-revealed .s6-scroll-hint {
  opacity:0
}

.s6-division-heading {
  pointer-events:none;
  position:absolute;
  z-index:30;
  top:112px;
  left:56px;
  right:56px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  opacity:0;
  transform:translateY(70px);
  transition:.9s var(--s6-ease)
}

.s6-hero.is-revealed .s6-division-heading {
  opacity:1;
  transform:translateY(0)
}

.s6-division-heading h2 {
  margin:0;
  font-size:clamp(2rem, 3vw, 3.2rem);
  font-weight:900;
  letter-spacing:-.045em;
  text-transform:uppercase
}

.s6-division-heading p {
  max-width:420px;
  margin:0;
  padding-top:32px;
  color:rgba(255, 255, 255, .45);
  font-size:10px;
  font-weight:800;
  line-height:1.8;
  letter-spacing:.18em;
  text-align:right;
  text-transform:uppercase
}

.s6-division-grid {
  position:absolute;
  inset:0;
  z-index:15;
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:0;
  opacity:0;
  pointer-events:none;
  transition:gap 1.6s var(--s6-ease), padding 1.6s var(--s6-ease), opacity .4s
}

.s6-hero.is-revealed .s6-division-grid {
  gap:66px;
  padding:210px 96px 185px;
  opacity:1;
  pointer-events:auto
}

.s6-division-card {
  position:relative;
  overflow:hidden;
  border:0;
  border-radius:24px;
  background:#000;
  color:#fff;
  text-align:left;
  box-shadow:0 20px 60px rgba(0, 0, 0, .55);
  transition:.36s var(--s6-ease)
}

.s6-division-card:hover {
  transform:scale(1.01);
  box-shadow:0 18px 55px rgba(0, 0, 0, .62)
}

.s6-division-card.is-opening {
  transform:translateY(-10px) scale(1.045);
  border-radius:30px
}

.s6-division-card__image, .s6-division-card__shade, .s6-division-card__hover {
  position:absolute;
  inset:0
}

.s6-division-card__image {
  background-size:cover;
  background-position:center;
  transition:.5s
}

.s6-division-card:hover .s6-division-card__image {
  filter:grayscale(1) contrast(1.1) brightness(.75)
}

.s6-division-card__shade {
  background:linear-gradient(to top, #000, rgba(0, 0, 0, .2), rgba(0, 0, 0, .1))
}

.s6-division-card__hover {
  opacity:0;
  background:radial-gradient(circle at 50% 42%, rgba(255, 255, 255, .1), transparent 58%), radial-gradient(circle at center, transparent 34%, rgba(0, 0, 0, .62) 100%);
  transition:.5s
}

.s6-division-card:hover .s6-division-card__hover {
  opacity:1
}

.s6-division-card__content {
  position:absolute;
  left:20px;
  right:20px;
  bottom:20px;
  display:block
}

.s6-division-card__content span {
  display:block
}

.s6-division-card__label {
  margin-bottom:12px;
  color:var(--s6-green);
  font-size:12px;
  font-weight:900;
  letter-spacing:.3em
}

.s6-division-card__title {
  font-size:clamp(1.8rem, 2.5vw, 3rem);
  font-weight:900;
  line-height:.9;
  letter-spacing:-.05em;
  text-transform:uppercase
}

.s6-division-card:hover .s6-division-card__title {
  color:var(--s6-green)
}

.s6-division-card__cta {
  margin-top:16px;
  color:rgba(255, 255, 255, .7);
  font-size:11px;
  letter-spacing:.24em;
  text-transform:uppercase
}

/* =========================================================
   Modal Base Styles
========================================================= */
.s6-division-modal, .s6-team-modal, .s6-application-modal {
  position:fixed;
  inset:0;
  z-index:2000;
  display:none;
  align-items:center;
  justify-content:center;
  padding:32px;
  background:rgba(0, 0, 0, .72);
  backdrop-filter:blur(14px)
}

.s6-division-modal.is-open, .s6-team-modal.is-open, .s6-application-modal.is-open {
  display:flex
}

.s6-division-modal__backdrop {
  position:absolute;
  inset:0
}

.s6-division-modal__panel {
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:.95fr 1.05fr;
  width:min(940px, 100%);
  overflow:hidden;
  border:1px solid rgba(255, 255, 255, .15);
  border-radius:34px;
  background:rgba(0, 0, 0, .55);
  box-shadow:0 35px 140px rgba(0, 0, 0, .68), inset 0 1px 0 rgba(255, 255, 255, .08);
  backdrop-filter:blur(28px)
}

.s6-modal-close {
  position:absolute;
  z-index:10;
  top:20px;
  right:20px;
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  border:1px solid rgba(255, 255, 255, .15);
  border-radius:999px;
  background:rgba(0, 0, 0, .55);
  color:rgba(255, 255, 255, .7);
  font-size:28px
}

.s6-division-modal__media {
  min-height:400px;
  background-size:cover;
  background-position:center
}

.s6-division-modal__body {
  padding:40px
}

.s6-mini-line {
  width:64px;
  height:2px;
  margin-bottom:20px;
  background:var(--s6-green)
}

.s6-modal-kicker {
  color:var(--s6-green);
  font-size:11px;
  font-weight:900;
  letter-spacing:.24em;
  text-transform:uppercase
}

.s6-division-modal h3, .s6-division-modal h4 {
  margin:0;
  font-weight:900;
  line-height:.95;
  letter-spacing:-.045em;
  text-transform:uppercase
}

.s6-division-modal h3 {
  margin-bottom:24px;
  font-size:clamp(2.5rem, 4vw, 5rem)
}

.s6-division-modal h4 {
  font-size:2rem
}

.s6-division-modal__body>p:not(.s6-modal-kicker) {
  color:rgba(255, 255, 255, .62);
  font-size:15px;
  line-height:1.75
}

.s6-modal-points {
  display:grid;
  gap:12px;
  margin-top:28px;
  color:rgba(255, 255, 255, .65);
  font-size:11px;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase
}

.s6-modal-points span {
  border:1px solid rgba(255, 255, 255, .1);
  background:rgba(0, 0, 0, .2);
  padding:12px 16px
}

.s6-outline-button, .s6-ghost-button, .s6-pill-button, .s6-green-button {
  display:inline-flex;
  align-items:center;
  gap:12px;
  border-radius:999px;
  font-size:10px;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
  transition:.3s
}

.s6-outline-button {
  margin-top:28px;
  border:1px solid rgba(142, 196, 63, .6);
  padding:16px 24px
}

.s6-outline-button:hover, .s6-green-button {
  background:var(--s6-green);
  color:#000
}

.s6-about-layout {
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  gap:20px;
  margin-top:40px
}

.s6-about-tabs {
  display:grid;
  gap:8px
}

.s6-about-tab {
  position:relative;
  overflow:hidden;
  min-height:92px;
  border:1px solid rgba(255, 255, 255, .1);
  border-radius:24px;
  background:rgba(255, 255, 255, .025);
  color:#fff;
  padding:20px;
  text-align:center;
  box-shadow:0 10px 40px rgba(0, 0, 0, .18);
  transition:.5s
}

.s6-about-tab:before {
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at top right, rgba(142, 196, 63, .12), transparent 42%);
  opacity:0;
  transition:.5s
}

.s6-about-tab.is-active, .s6-about-tab:hover {
  border-color:rgba(142, 196, 63, .6);
  background:linear-gradient(180deg, rgba(142, 196, 63, .12), rgba(255, 255, 255, .02))
}

.s6-about-tab.is-active:before, .s6-about-tab:hover:before {
  opacity:1
}

.s6-about-tab span, .s6-about-tab strong {
  position:relative;
  z-index:1;
  display:block
}

.s6-about-tab span {
  margin-bottom:12px;
  color:var(--s6-green);
  font-size:9px;
  font-weight:900;
  letter-spacing:.22em;
  text-transform:uppercase
}

.s6-about-tab strong {
  font-size:clamp(.92rem, 1.1vw, 1.15rem);
  font-weight:900;
  line-height:1;
  letter-spacing:-.03em;
  text-transform:uppercase
}

.s6-pill-button {
  border:1px solid rgba(255, 255, 255, .1);
  background:rgba(255, 255, 255, .035);
  color:rgba(255, 255, 255, .7);
  padding:12px 20px;
  backdrop-filter:blur(18px)
}

.s6-about-panel {
  position:relative;
  min-height:440px;
  overflow:hidden;
  border:1px solid rgba(255, 255, 255, .1);
  border-radius:34px;
  background:linear-gradient(180deg, rgba(255, 255, 255, .035), rgba(255, 255, 255, .02));
  padding:36px;
  box-shadow:0 28px 90px rgba(0, 0, 0, .38);
  backdrop-filter:blur(18px)
}

.s6-about-panel:before {
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at top right, rgba(142, 196, 63, .09), transparent 34%)
}

.s6-about-panel__grid {
  position:absolute;
  inset:0;
  opacity:.04;
  background-image:linear-gradient(rgba(255, 255, 255, .08) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .08) 1px, transparent 1px);
  background-size:38px 38px
}

.s6-about-panel__stat {
  position:absolute;
  right:8px;
  bottom:8px;
  color:rgba(142, 196, 63, .08);
  font-size:clamp(6.5rem, 10vw, 8rem);
  font-weight:900;
  line-height:1;
  letter-spacing:-.08em
}

.s6-about-panel__content {
  position:relative;
  z-index:1;
  max-width:760px;
  transition:.25s
}

.s6-about-panel__content>p {
  margin:0 0 24px;
  color:var(--s6-green);
  font-size:14px;
  font-weight:900;
  letter-spacing:.3em;
  text-transform:uppercase
}

.s6-about-panel h3 {
  max-width:900px;
  margin:0;
  font-size:clamp(2.5rem, 4vw, 5rem);
  font-weight:900;
  line-height:.94;
  letter-spacing:-.05em;
  text-transform:uppercase
}

.s6-about-panel__content div {
  max-width:78%;
  margin-top:28px;
  color:rgba(255, 255, 255, .55);
  font-size:15px;
  line-height:1.9
}

.s6-about-panel.is-changing .s6-about-panel__content {
  opacity:0;
  transform:translateY(12px)
}

.s6-feature-project, .s6-before-after, .s6-careers-feature, .s6-blog-feature {
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255, 255, 255, .1);
  background:#000;
  box-shadow:0 24px 90px rgba(0, 0, 0, .38)
}

.s6-feature-project {
  min-height:540px;
  margin-top:48px;
  margin-bottom:32px;
  border-radius:34px
}

.s6-feature-project__image, .s6-careers-feature__image, .s6-blog-feature__image {
  position:absolute;
  inset:-8px;
  background-size:cover;
  background-position:center;
  transition:2.2s
}

.s6-feature-project__image {
  background-image:url('https://images.unsplash.com/photo-1600607687939-ce8a6c25118c?q=80&w=1600&auto=format&fit=crop')
}

.s6-careers-feature__image, .s6-blog-feature__image {
  background-image:url('https://images.unsplash.com/photo-1504307651254-35680f356dfd?q=80&w=1800&auto=format&fit=crop')
}

.s6-feature-project:hover .s6-feature-project__image, .s6-careers-feature:hover .s6-careers-feature__image, .s6-blog-feature:hover .s6-blog-feature__image {
  transform:scale(1.04)
}

.s6-feature-project__shade, .s6-careers-feature__shade, .s6-blog-feature__shade {
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, #000, rgba(0, 0, 0, .78), rgba(0, 0, 0, .22))
}

.s6-careers-feature__shade {
  background:linear-gradient(90deg, #000, rgba(0, 0, 0, .88), rgba(0, 0, 0, .42))
}

.s6-blog-feature__shade {
  background:linear-gradient(90deg, #000, rgba(0, 0, 0, .84), rgba(0, 0, 0, .32))
}

.s6-feature-project__content, .s6-careers-feature__content, .s6-blog-feature__content {
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  max-width:760px;
  min-height:540px;
  padding:48px
}

.s6-careers-feature__content, .s6-blog-feature__content {
  min-height:330px;
  padding:22px
}

.s6-meta-row {
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-bottom:20px;
  color:rgba(255, 255, 255, .55);
  font-size:10px;
  font-weight:900;
  letter-spacing:.24em;
  text-transform:uppercase
}

.s6-meta-row span:first-child, .s6-blog-feature span, .s6-blog-list span, .s6-job-list article>span {
  border:1px solid rgba(142, 196, 63, .3);
  border-radius:999px;
  background:rgba(142, 196, 63, .1);
  color:var(--s6-green);
  padding:7px 12px
}

.s6-feature-project p, .s6-careers-feature p, .s6-blog-feature p {
  color:var(--s6-green);
  font-size:9px;
  font-weight:900;
  letter-spacing:.22em;
  text-transform:uppercase
}

.s6-feature-project h3 {
  margin:0;
  font-size:clamp(3rem, 5vw, 6rem);
  font-weight:900;
  line-height:.88;
  letter-spacing:-.06em;
  text-transform:uppercase
}

.s6-feature-project__content>div:not(.s6-meta-row), .s6-careers-feature__content>div:not(.s6-value-row), .s6-blog-feature__content>div {
  margin-top:20px;
  color:rgba(255, 255, 255, .62);
  font-size:14px;
  line-height:1.75
}

.s6-ghost-button {
  width:fit-content;
  margin-top:24px;
  border:1px solid rgba(255, 255, 255, .12);
  background:rgba(255, 255, 255, .03);
  padding:12px 20px
}

.s6-before-after {
  height:620px
}

.s6-before-after__after, .s6-before-after__before {
  position:absolute;
  inset:0;
  background-size:cover;
  background-position:center
}

.s6-before-after__after {

}

.s6-before-after__before {

}

.s6-before-after:after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(to top, rgba(0, 0, 0, .78), rgba(0, 0, 0, .12), rgba(0, 0, 0, .24))
}

.s6-before-after__line {
  position:absolute;
  z-index:2;
  top:0;
  bottom:0;
  left:52%;
  width:2px;
  background:var(--s6-green)
}

.s6-before-after input {
  position:absolute;
  z-index:4;
  left:32px;
  right:32px;
  bottom:20px;
  width:calc(100% - 64px);
  accent-color:var(--s6-green)
}

.s6-before-after__content {
  position:absolute;
  z-index:3;
  left:36px;
  right:36px;
  bottom:36px
}

.s6-before-after__content p {
  display:flex;
  align-items:center;
  gap:16px;
  color:var(--s6-green);
  font-size:10px;
  font-weight:900;
  letter-spacing:.28em;
  text-transform:uppercase
}

.s6-before-after__content p span {
  width:48px;
  height:2px;
  background:var(--s6-green)
}

.s6-before-after h3 {
  max-width:720px;
  margin:0;
  font-size:clamp(2.5rem, 5vw, 6rem);
  font-weight:900;
  line-height:.9;
  letter-spacing:-.055em;
  text-transform:uppercase
}

.s6-gallery-grid {
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  grid-auto-rows:250px;
  gap:20px;
  margin-top:32px
}

.s6-gallery-tile, .s6-gallery-stat {
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255, 255, 255, .1);
  background:rgba(255, 255, 255, .035);
  box-shadow:0 18px 60px rgba(0, 0, 0, .3)
}

.s6-gallery-tile--large {
  grid-column:span 2;
  grid-row:span 2
}

.s6-gallery-tile div {
  position:absolute;
  inset:-8px;
  background-size:cover;
  background-position:center;
  transition:1.6s
}

.s6-gallery-tile:hover div {
  transform:scale(1.035)
}

.s6-gallery-tile:after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(to top, rgba(0, 0, 0, .82), rgba(0, 0, 0, .18), rgba(0, 0, 0, .08))
}

.s6-gallery-tile span {
  position:absolute;
  z-index:2;
  left:20px;
  right:20px;
  bottom:20px;
  font-size:clamp(1.4rem, 2vw, 2rem);
  font-weight:900;
  line-height:.95;
  letter-spacing:-.04em;
  text-transform:uppercase
}

.s6-gallery-stat {
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center
}

.s6-gallery-stat strong {
  font-size:clamp(3rem, 4vw, 4rem);
  font-weight:900;
  letter-spacing:-.08em
}

.s6-gallery-stat span {
  max-width:160px;
  margin-top:14px;
  color:rgba(255, 255, 255, .55);
  font-size:10px;
  font-weight:900;
  line-height:1.7;
  letter-spacing:.22em;
  text-transform:uppercase
}

.s6-testimonials-layout, .s6-careers-layout, .s6-blog-layout {
  display:grid;
  gap:12px;
  margin-top:24px
}

.s6-testimonials-layout, .s6-blog-layout {
  grid-template-columns:1.02fr .98fr
}

.s6-careers-layout {
  grid-template-columns:.98fr 1.02fr
}

.s6-testimonial-feature, .s6-testimonial-list article, .s6-job-list article, .s6-blog-list article {
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255, 255, 255, .1);
  background:linear-gradient(180deg, rgba(255, 255, 255, .05), rgba(255, 255, 255, .02));
  box-shadow:0 16px 50px rgba(0, 0, 0, .26)
}

.s6-testimonial-feature {
  border-radius:28px;
  padding:24px
}

.s6-testimonial-feature p {
  margin:0;
  font-size:clamp(1.45rem, 2.4vw, 2.7rem);
  font-weight:900;
  line-height:.98;
  letter-spacing:-.045em;
  text-transform:uppercase
}

.s6-quote-mark {
  color:var(--s6-green);
  font-size:42px;
  font-weight:900;
  line-height:1
}

.s6-testimonial-feature footer, .s6-testimonial-list footer {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-top:24px;
  padding-top:16px;
  border-top:1px solid rgba(255, 255, 255, .1)
}

.s6-testimonial-feature strong, .s6-testimonial-list strong {
  display:block;
  font-weight:900;
  letter-spacing:-.02em;
  text-transform:uppercase
}

.s6-testimonial-feature span, .s6-testimonial-list span {
  display:block;
  margin-top:4px;
  color:rgba(255, 255, 255, .4);
  font-size:10px;
  font-weight:900;
  letter-spacing:.2em;
  text-transform:uppercase
}

.s6-testimonial-feature em {
  border:1px solid rgba(142, 196, 63, .3);
  border-radius:999px;
  background:rgba(142, 196, 63, .1);
  color:var(--s6-green);
  padding:8px 16px;
  font-size:10px;
  font-style:normal;
  font-weight:900;
  letter-spacing:.2em;
  text-transform:uppercase
}

.s6-testimonial-list, .s6-job-list, .s6-blog-list {
  display:grid;
  gap:12px
}

.s6-testimonial-list article, .s6-job-list article, .s6-blog-list article {
  border-radius:22px;
  padding:20px
}

.s6-testimonial-list p, .s6-blog-list p, .s6-job-list p {
  color:rgba(255, 255, 255, .6);
  font-size:15px;
  line-height:1.65
}

.s6-careers-feature, .s6-blog-feature {
  min-height:330px;
  border-radius:26px
}

.s6-value-row {
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-bottom:16px
}

.s6-value-row span {
  border:1px solid rgba(255, 255, 255, .16);
  border-radius:999px;
  background:rgba(0, 0, 0, .35);
  color:rgba(255, 255, 255, .88);
  padding:6px 12px;
  font-size:8px;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase
}

.s6-careers-feature h3, .s6-blog-feature h3, .s6-blog-list h3, .s6-job-list h3 {
  margin:0;
  color:#fff;
  font-weight:900;
  line-height:.95;
  letter-spacing:-.04em;
  text-transform:uppercase
}

.s6-careers-feature h3 {
  font-size:clamp(2rem, 3.2vw, 3.9rem)
}

.s6-green-button {
  width:fit-content;
  margin-top:24px;
  border:1px solid rgba(142, 196, 63, .4);
  padding:16px 28px;
  box-shadow:0 0 34px rgba(142, 196, 63, .16)
}

.s6-job-list article>span, .s6-blog-list span {
  display:inline-flex;
  margin-bottom:12px;
  font-size:8px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase
}

.s6-job-list h3, .s6-blog-list h3 {
  font-size:clamp(1.05rem, 1.4vw, 1.45rem)
}

.s6-blog-feature h3 {
  font-size:clamp(1.75rem, 3.1vw, 3.65rem)
}

.s6-blog-feature a, .s6-blog-list a {
  display:inline-flex;
  margin-top:18px;
  color:rgba(255, 255, 255, .65);
  font-size:8px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase
}

.s6-contact-layout {
  display:grid;
  grid-template-columns:.58fr 1.42fr;
  gap:12px;
  margin-top:16px
}

.s6-contact-info {
  display:grid;
  gap:12px
}

.s6-contact-card, .s6-contact-brand-strip, .s6-contact-form {
  position:relative;
  overflow:hidden;
  border:1px solid rgba(0, 0, 0, .1);
  background:#fff;
  box-shadow:0 14px 45px rgba(0, 0, 0, .07)
}

.s6-contact-card {
  border-radius:24px;
  padding:20px
}

.s6-contact-card:before, .s6-contact-form:before {
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at top right, rgba(142, 196, 63, .08), transparent 38%)
}

.s6-contact-card>* {
  position:relative;
  z-index:1
}

.s6-contact-card>p, .s6-contact-form p {
  margin:0 0 8px;
  color:var(--s6-green);
  font-size:10px;
  font-weight:900;
  letter-spacing:.22em;
  text-transform:uppercase
}

.s6-contact-card h3, .s6-contact-form h3 {
  margin:0;
  font-size:clamp(1.45rem, 1.9vw, 2.25rem);
  font-weight:900;
  line-height:.94;
  letter-spacing:-.045em;
  text-transform:uppercase
}

.s6-contact-methods {
  display:grid;
  gap:6px;
  margin-top:12px
}

.s6-contact-methods a, .s6-contact-methods div {
  display:block;
  border:1px solid rgba(0, 0, 0, .1);
  border-radius:14px;
  background:rgba(0, 0, 0, .02);
  padding:8px 12px
}

.s6-contact-methods span {
  display:block;
  color:rgba(0, 0, 0, .35);
  font-size:8px;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase
}

.s6-contact-methods strong {
  display:block;
  margin-top:2px;
  color:rgba(0, 0, 0, .72);
  font-size:11px;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase
}

.s6-contact-note {
  margin-top:12px;
  border:1px solid rgba(142, 196, 63, .2);
  border-radius:14px;
  background:rgba(142, 196, 63, .06);
  color:rgba(0, 0, 0, .55);
  padding:8px 12px;
  font-size:8px;
  font-weight:900;
  line-height:1.7;
  letter-spacing:.12em;
  text-transform:uppercase
}

.s6-contact-brand-strip {
  min-height:150px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:20px;
  padding:20px;
  text-align:center
}

.s6-contact-brand-strip>span {
  position:absolute;
  right:8px;
  bottom:-18px;
  color:rgba(142, 196, 63, .06);
  font-size:4.8rem;
  font-weight:900;
  line-height:1;
  letter-spacing:-.08em
}

.s6-contact-brand-strip p {
  margin:0;
  color:rgba(0, 0, 0, .35);
  font-size:8px;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase
}

.s6-contact-brand-strip strong {
  display:block;
  margin-top:8px;
  color:rgba(0, 0, 0, .72);
  font-size:10px;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
  white-space:nowrap
}

.s6-contact-brand-strip .s6-social-row {
  justify-content:center;
  margin-top:16px
}

.s6-contact-brand-strip .s6-social-row a {
  border-color:rgba(0, 0, 0, .1);
  background:rgba(0, 0, 0, .02);
  color:rgba(0, 0, 0, .42)
}

.s6-contact-form {
  border-radius:26px;
  padding:20px
}

.s6-form-header, .s6-form-grid, .s6-contact-form button {
  position:relative;
  z-index:1
}

.s6-form-header {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  padding-bottom:16px;
  border-bottom:1px solid rgba(0, 0, 0, .1)
}

.s6-form-header>span {
  border:1px solid rgba(0, 0, 0, .1);
  border-radius:999px;
  background:rgba(0, 0, 0, .035);
  color:rgba(0, 0, 0, .45);
  padding:8px 16px;
  font-size:9px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase
}

.s6-form-grid {
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  gap:8px;
  margin-top:12px
}

.s6-form-grid input, .s6-form-grid select, .s6-form-grid textarea {
  width:100%;
  border:1px solid rgba(0, 0, 0, .1);
  border-radius:15px;
  background:rgba(0, 0, 0, .03);
  color:#000;
  padding:9px 13px;
  font-size:13px;
  outline:0;
  transition:.3s
}

.s6-form-grid textarea {
  min-height:76px;
  resize:vertical
}

.s6-form-grid input:focus, .s6-form-grid select:focus, .s6-form-grid textarea:focus {
  border-color:rgba(142, 196, 63, .45);
  background:#fff;
  box-shadow:0 0 0 4px rgba(142, 196, 63, .08)
}

.s6-span-2 {
  grid-column:span 2
}

.s6-file-upload {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  border:1px dashed rgba(0, 0, 0, .18);
  border-radius:16px;
  background:rgba(0, 0, 0, .025);
  color:rgba(0, 0, 0, .48);
  padding:12px 14px;
  font-size:9px;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
  cursor:pointer
}

.s6-file-upload input {
  display:none
}

.s6-file-upload strong {
  flex-shrink:0;
  border:1px solid rgba(0, 0, 0, .12);
  border-radius:999px;
  background:#fff;
  color:rgba(0, 0, 0, .68);
  padding:6px 14px;
  font-size:8px
}

.s6-submit-button {
  display:flex;
  align-items:center;
  gap:12px;
  width:fit-content;
  margin:20px 0 0 auto;
  border:0;
  border-radius:999px;
  background:#000;
  color:#fff;
  padding:14px 28px;
  font-size:9px;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
  transition:.3s
}

.s6-submit-button:hover {
  background:var(--s6-green);
  color:#000;
  transform:scale(1.02)
}

.s6-footer {
  border-top:1px solid rgba(255, 255, 255, .08);
  background:#000;
  color:#fff;
  padding:34px 56px
}

.s6-footer__inner {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  max-width:1550px;
  margin:0 auto
}

.s6-footer__brand {
  display:flex;
  align-items:center;
  gap:12px
}

.s6-footer__brand strong {
  display:block;
  font-size:14px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase
}

.s6-footer__brand strong span {
  color:var(--s6-green)
}

.s6-footer__brand p{
  margin:4px 0 0;
  color:rgba(255, 255, 255, .42);
  font-size:10px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase
}

.s6-team-modal__panel, .s6-application-modal__panel {
  position:relative;
  z-index:1;
  width:min(1080px, 100%);
  max-height:88vh;
  overflow-y:auto;
  border:1px solid rgba(255, 255, 255, .12);
  border-radius:34px;
  background:linear-gradient(180deg, rgba(255, 255, 255, .05), rgba(255, 255, 255, .02));
  box-shadow:0 35px 140px rgba(0, 0, 0, .68), inset 0 1px 0 rgba(255, 255, 255, .08);
  backdrop-filter:blur(28px);
  padding:22px
}

.s6-application-modal__panel {
  width:min(760px, 100%)
}

.s6-team-modal__intro, .s6-application-modal__intro {
  position:relative;
  z-index:1;
  max-width:760px;
  margin-bottom:20px
}

.s6-team-modal__intro p, .s6-application-modal__intro p {
  margin:0 0 10px;
  color:var(--s6-green);
  font-size:10px;
  font-weight:900;
  letter-spacing:.28em;
  text-transform:uppercase
}

.s6-team-modal__intro h3, .s6-application-modal__intro h3 {
  margin:0;
  font-size:clamp(2rem, 3vw, 3.3rem);
  font-weight:900;
  line-height:.9;
  letter-spacing:-.055em;
  text-transform:uppercase
}

.s6-team-modal__intro div {
  max-width:680px;
  margin-top:16px;
  color:rgba(255, 255, 255, .55);
  font-size:14px;
  line-height:1.65
}

.s6-team-grid {
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  gap:12px
}

.s6-team-card {
  overflow:hidden;
  border:1px solid rgba(255, 255, 255, .1);
  background:rgba(255, 255, 255, .03);
  padding:12px
}

.s6-team-card img {
  float:left;
  width:80px;
  height:112px;
  margin-right:12px;
  object-fit:cover
}

.s6-team-card h4 {
  margin:0;
  font-size:16px;
  font-weight:900;
  line-height:1;
  letter-spacing:-.03em;
  text-transform:uppercase
}

.s6-team-card p {
  margin:6px 0;
  color:var(--s6-green);
  font-size:10px;
  font-weight:900;
  line-height:1.2;
  letter-spacing:.18em;
  text-transform:uppercase
}

.s6-team-card div div {
  color:rgba(255, 255, 255, .58);
  font-size:14px;
  line-height:1.55
}

.s6-application-form .s6-form-grid input, .s6-application-form .s6-form-grid select, .s6-application-form .s6-form-grid textarea {
  border-color:rgba(255, 255, 255, .1);
  background:rgba(255, 255, 255, .04);
  color:#fff
}

.s6-application-form .s6-form-grid input::placeholder, .s6-application-form .s6-form-grid textarea::placeholder {
  color:rgba(255, 255, 255, .42)
}

.s6-basic-page {
  min-height:80vh;
  padding-top:90px
}

.s6-basic-content h1, .s6-archive h1 {
  margin:0;
  color:#fff;
  font-size:clamp(3rem, 6vw, 6rem);
  font-weight:900;
  line-height:.9;
  letter-spacing:-.055em;
  text-transform:uppercase
}

.s6-basic-content__body {
  max-width:900px;
  margin-top:34px;
  color:rgba(255, 255, 255, .7);
  font-size:18px;
  line-height:1.8
}

.s6-post-meta {
  color:rgba(255, 255, 255, .45);
  font-size:11px;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase
}

.s6-post-featured-image {
  overflow:hidden;
  max-height:560px;
  margin-top:34px;
  border:1px solid rgba(255, 255, 255, .1);
  border-radius:28px
}

.s6-post-featured-image img {
  width:100%;
  height:100%;
  object-fit:cover
}

.s6-archive-grid {
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:18px;
  margin-top:40px
}

.s6-archive-card {
  overflow:hidden;
  border:1px solid rgba(255, 255, 255, .1);
  border-radius:26px;
  background:rgba(255, 255, 255, .035);
  box-shadow:0 18px 60px rgba(0, 0, 0, .28)
}

.s6-archive-card__image {
  display:block;
  height:220px;
  overflow:hidden
}

.s6-archive-card__image img {
  width:100%;
  height:100%;
  object-fit:cover
}

.s6-archive-card__content {
  padding:20px
}

.s6-archive-card__content p {
  margin:0 0 10px;
  color:var(--s6-green);
  font-size:9px;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase
}

.s6-archive-card h2 {
  margin:0;
  font-size:clamp(1.3rem, 1.7vw, 2rem);
  font-weight:900;
  line-height:.95;
  letter-spacing:-.04em;
  text-transform:uppercase
}

.s6-archive-card__content div {
  margin-top:14px;
  color:rgba(255, 255, 255, .58);
  font-size:14px;
  line-height:1.65
}

.s6-archive-card__link {
  display:inline-flex;
  margin-top:16px;
  color:rgba(255, 255, 255, .65);
  font-size:9px;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase
}

.s6-reveal {
  opacity:0;
  transform:translateY(32px);
  transition:opacity .85s var(--s6-ease), transform .85s var(--s6-ease), filter .85s var(--s6-ease)
}

.s6-reveal.is-visible {
  opacity:1;
  transform:translateY(0)
}

.s6-gallery-tile.s6-reveal, .s6-gallery-stat.s6-reveal {
  transform:scale(.985);
  filter:blur(8px)
}

.s6-gallery-tile.s6-reveal.is-visible, .s6-gallery-stat.s6-reveal.is-visible {
  transform:scale(1);
  filter:blur(0)
}

/* =========================================================
   Base Responsive Rules
========================================================= */
@media (max-width: 1340px) {
  .s6-nav, .s6-header-actions {
    display:none
  }

  .s6-mobile-nav-toggle {
    display:inline-flex;
    flex-direction:column;
    justify-content:center;
    gap:5px;
    width:44px;
    height:44px;
    flex:0 0 44px;
    padding:0 11px;
    border:1px solid rgba(255, 255, 255, .14);
    border-radius:999px;
    background:rgba(255, 255, 255, .045);
    color:#fff
  }

  .s6-mobile-nav-toggle span {
    display:block;
    width:100%;
    height:2px;
    border-radius:2px;
    background:currentColor;
    transition:transform .25s ease, opacity .2s ease
  }

  .s6-mobile-nav-toggle[aria-expanded="true"] span:nth-child(1) {
    transform:translateY(7px) rotate(45deg)
  }

  .s6-mobile-nav-toggle[aria-expanded="true"] span:nth-child(2) {
    opacity:0
  }

  .s6-mobile-nav-toggle[aria-expanded="true"] span:nth-child(3) {
    transform:translateY(-7px) rotate(-45deg)
  }

  .s6-mobile-nav {
    pointer-events:auto;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:4px;
    max-width:calc(100% - 64px);
    max-height:calc(100vh - 104px);
    margin:10px auto 0;
    padding:14px;
    overflow-y:auto;
    border:1px solid rgba(255, 255, 255, .1);
    border-radius:24px;
    background:rgba(5, 5, 5, .94);
    box-shadow:0 22px 70px rgba(0, 0, 0, .48);
    backdrop-filter:blur(28px)
  }

  .s6-mobile-nav.is-open {
    display:grid
  }

  .s6-mobile-nav a,
  .s6-mobile-nav button {
    position:relative;
    min-height:46px;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    padding:12px 14px;
    border:0;
    border-radius:12px;
    background:transparent;
    color:rgba(255, 255, 255, .72);
    font-size:11px;
    font-weight:800;
    letter-spacing:.14em;
    line-height:1.25;
    text-align:left;
    text-transform:uppercase
  }

  .s6-mobile-nav a:hover,
  .s6-mobile-nav a:focus-visible,
  .s6-mobile-nav button:hover,
  .s6-mobile-nav button:focus-visible,
  .s6-mobile-nav .is-active {
    outline:none;
    background:rgba(142, 196, 63, .12);
    color:#fff
  }

  .s6-section-title-row, .s6-about-layout, .s6-testimonials-layout, .s6-careers-layout, .s6-blog-layout, .s6-contact-layout {
    grid-template-columns:1fr;
    flex-direction:column;
    align-items:flex-start
  }

  .s6-section-title-row {
    display:flex
  }

  .s6-hero.is-revealed .s6-division-grid {
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:20px;
    padding:170px 24px 80px
  }

  .s6-division-heading {
    left:24px;
    right:24px
  }

  .s6-gallery-grid, .s6-team-grid, .s6-archive-grid {
    grid-template-columns:repeat(2, 1fr)
  }

  .s6-footer__inner {
    flex-direction:column;
    align-items:flex-start
  }

  
}

@media (max-width: 480px) {
  .s6-feature-project h3,
  .s6-feature-project__content h3 {
    max-width: 100% !important;
    font-size: clamp(2.25rem, 10.5vw, 2.6rem) !important;
    overflow-wrap: anywhere;
  }
}

@media (max-width: 760px) {
  .s6-section, .s6-section--compact {
    padding:72px 20px
  }

  .s6-header {
    padding:12px 12px 0
  }

  .s6-header__inner {
    padding:12px 16px
  }

  .s6-mobile-nav {
    grid-template-columns:1fr;
    max-width:calc(100% - 24px);
    border-radius:20px
  }

  .s6-hero-intro {
    left:24px;
    right:24px
  }

  .s6-division-heading {
    display:none
  }

  .s6-hero.is-revealed .s6-division-grid {
    grid-template-columns:repeat(3, minmax(0, 1fr));
    overflow-y:auto;
    padding:110px 20px 40px
  }

  .s6-gallery-grid, .s6-form-grid, .s6-team-grid, .s6-archive-grid {
    grid-template-columns:1fr
  }

  .s6-span-2 {
    grid-column:span 1
  }

  .s6-feature-project, .s6-feature-project__content, .s6-before-after {
    min-height:420px
  }

  .s6-before-after {
    height:420px
  }

  .s6-division-modal__panel {
    grid-template-columns:1fr;
    max-height:88vh;
    overflow-y:auto
  }

  .s6-division-modal__media {
    min-height:260px
  }

  .s6-footer {
    padding:32px 20px
  }

  .s6-team-modal, .s6-application-modal {
    padding:16px
  }

  .s6-team-modal__panel, .s6-application-modal__panel {
    border-radius:24px;
    padding:20px
  }

  .s6-team-card img {
    width:72px;
    height:96px
  }

  
}

/* =========================================================
   Typography and Font System
========================================================= */
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800;900&family=Inter:wght@400;500;600;700;800;900&display=swap');
:root  {

   --s6-heading-font: "Barlow Condensed", "Arial Narrow", "Helvetica Neue Condensed", sans-serif;

   --s6-body-font: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;

  
}

html  {

   -webkit-font-smoothing: antialiased;

   -moz-osx-font-smoothing: grayscale;

   text-rendering: geometricPrecision;

  
}

body  {

   font-family: var(--s6-body-font);

   font-weight: 500;

  
}

/* Typography system */
h1,
h2,
h3,
h4,
.s6-hero-intro h1,
.s6-section h2,
.s6-section-title-row h2,
.s6-division-heading h2,
.s6-division-card__title,
.s6-about-panel h3,
.s6-feature-project h3,
.s6-before-after h3,
.s6-testimonial-feature p,
.s6-careers-feature h3,
.s6-blog-feature h3,
.s6-blog-list h3,
.s6-job-list h3,
.s6-contact-card h3,
.s6-contact-form h3,
.s6-basic-content h1,
.s6-archive h1  {

   font-family: var(--s6-heading-font);

   font-weight: 900;

   letter-spacing: -0.035em;

   text-rendering: geometricPrecision;

  
}

/* Hero typography */
.s6-hero-intro h1  {

   font-size: clamp(3.8rem, 8.7vw, 9.6rem);

   line-height: 0.79;

   letter-spacing: -0.045em;

  
}

/* Section titles */
.s6-section h2,
.s6-section-title-row h2  {

   font-size: clamp(3.25rem, 6.4vw, 7.4rem);

   line-height: 0.82;

   letter-spacing: -0.04em;

  
}

/* Feature headings */
.s6-feature-project h3,
.s6-before-after h3  {

   line-height: 0.84;

   letter-spacing: -0.045em;

  
}

/* About headlines */
.s6-about-panel h3  {

   line-height: 0.88;

   letter-spacing: -0.035em;

  
}

/* Card headings */
.s6-division-card__title,
.s6-careers-feature h3,
.s6-blog-feature h3  {

   letter-spacing: -0.03em;

  
}

/* Body copy */
.s6-hero-intro p,
.s6-section-title-row > p,
.s6-about-panel__content div,
.s6-feature-project__content > div:not(.s6-meta-row),
.s6-careers-feature__content > div:not(.s6-value-row),
.s6-blog-feature__content > div,
.s6-testimonial-list p,
.s6-blog-list p,
.s6-job-list p,
.s6-basic-content__body  {

   font-family: var(--s6-body-font);

   font-weight: 500;

   letter-spacing: -0.01em;

  
}

/* Eyebrows and metadata */
.s6-eyebrow,
.s6-nav button,
.s6-nav a,
.s6-contact-nav,
.s6-social-row a,
.s6-division-card__label,
.s6-division-card__cta,
.s6-meta-row,
.s6-about-tab span,
.s6-about-tab strong,
.s6-modal-kicker,
.s6-modal-points,
.s6-outline-button,
.s6-ghost-button,
.s6-pill-button,
.s6-green-button,
.s6-contact-methods span,
.s6-contact-methods strong,
.s6-contact-note,
.s6-submit-button,
.s6-footer__brand strong,
.s6-footer__brand p{

   font-family: var(--s6-body-font);

   font-weight: 900;

  
}

/* Header logo refinement */
.s6-logo__title  {

   font-family: var(--s6-heading-font);

   font-size: 24px;

   line-height: 0.9;

   letter-spacing: 0.08em;

  
}

.s6-logo__sub  {

   font-family: var(--s6-body-font);

   font-size: 9px;

   font-weight: 800;

   letter-spacing: 0.36em;

  
}

/* Navbar polish */
.s6-nav button,
.s6-nav a  {

   font-size: 10px;

   letter-spacing: 0.15em;

  
}

.s6-contact-nav  {

   font-size: 9px;

   letter-spacing: 0.16em;

  
}

/* Modal close button */
.s6-outline-button,
.s6-ghost-button,
.s6-pill-button,
.s6-green-button,
.s6-submit-button  {

   letter-spacing: 0.16em;

  
}


.s6-testimonial-feature p  {

   font-size: clamp(1.65rem, 2.65vw, 3rem);

   line-height: 0.92;

  
}

/* Contact form polish */
.s6-form-grid input,
.s6-form-grid select,
.s6-form-grid textarea  {

   font-family: var(--s6-body-font);

   font-weight: 600;

  
}

.s6-form-grid input::placeholder,
.s6-form-grid textarea::placeholder  {

   color: rgba(0, 0, 0, .34);

  
}

.s6-contact-card > p,
.s6-contact-form p,
.s6-contact-brand-strip p,
.s6-blog-feature p,
.s6-careers-feature p,
.s6-feature-project p  {

   font-family: var(--s6-body-font);

   font-weight: 900;

  
}


@media (min-width: 1181px) {

   .s6-section--compact  {

     padding-top: 76px;

     padding-bottom: 76px;

    
  }

  

   .s6-testimonials-layout,
   .s6-careers-layout,
   .s6-blog-layout  {

     margin-top: 22px;

    
  }

  

}

/* Mobile typography */
@media (max-width: 760px) {

   .s6-hero-intro h1  {

     font-size: clamp(3.2rem, 16vw, 5.2rem);

     line-height: 0.82;

    
  }

  

   .s6-section h2,
   .s6-section-title-row h2  {

     font-size: clamp(2.7rem, 13vw, 4.4rem);

     line-height: 0.86;

    
  }

  

   .s6-logo__title  {

     font-size: 21px;

    
  }

  

}

/* =========================================================
   Hero Tear Animation — Legacy-Sensitive Baseline
========================================================= */
.s6-division-grid  {

   opacity: 0;

   pointer-events: none;

  
}


.s6-hero.is-tearing .s6-division-grid  {

   opacity: 1;

   pointer-events: none;

   gap: 0;

   padding: 0;

   transition:
   gap 1.65s cubic-bezier(.65, 0, .35, 1),
   padding 1.65s cubic-bezier(.65, 0, .35, 1),
   opacity .25s ease;

  
}


.s6-hero.is-revealed .s6-division-grid  {

   opacity: 1;

   pointer-events: auto;

   gap: 66px;

   padding: 210px 96px 185px;

  
}


.s6-division-card::before  {

   content: "";

   position: absolute;

   inset: 0;

   z-index: 4;

   background-image: var(--s6-hero-image);

   background-size: var(--s6-hero-tear-size, 300% 200%);

   background-repeat: no-repeat;

   opacity: 0;

   transform: scale(1);

   transition:
   opacity .7s ease,
   transform 1.65s cubic-bezier(.65, 0, .35, 1);

  
}

.s6-division-card:nth-child(1)::before  {
   background-position: 0% 0%;

}

.s6-division-card:nth-child(2)::before  {
   background-position: 50% 0%;

}

.s6-division-card:nth-child(3)::before  {
   background-position: 100% 0%;

}

.s6-division-card:nth-child(4)::before  {
   background-position: 0% 100%;

}

.s6-division-card:nth-child(5)::before  {
   background-position: 50% 100%;

}

.s6-division-card:nth-child(6)::before  {
   background-position: 100% 100%;

}


.s6-hero.is-tearing .s6-division-card::before  {

   opacity: 1;

   transform: scale(1.015);

  
}


.s6-hero.is-revealed .s6-division-card::before  {

   opacity: 0;

   transform: scale(1.08);

  
}


.s6-hero.is-tearing .s6-division-card__image  {

   opacity: 0;

   transform: scale(1.08);

  
}


.s6-hero.is-revealed .s6-division-card__image  {

   opacity: 1;

   transform: scale(1);

   transition:
   opacity 1.2s cubic-bezier(.22, 1, .36, 1),
   transform 1.2s cubic-bezier(.22, 1, .36, 1),
   filter .5s ease;

  
}


.s6-hero.is-tearing .s6-division-card  {

   border-radius: 8px;

   transition:
   transform 1.65s cubic-bezier(.65, 0, .35, 1),
   border-radius 1.65s cubic-bezier(.65, 0, .35, 1),
   box-shadow .6s ease;

  
}

.s6-hero.is-tearing .s6-division-card:nth-child(1)  {

   transform: translate(-70px, -70px) rotate(-4deg) scale(.9);

  
}

.s6-hero.is-tearing .s6-division-card:nth-child(2)  {

   transform: translate(0, -105px) rotate(2deg) scale(.88);

  
}

.s6-hero.is-tearing .s6-division-card:nth-child(3)  {

   transform: translate(70px, -70px) rotate(4deg) scale(.9);

  
}

.s6-hero.is-tearing .s6-division-card:nth-child(4)  {

   transform: translate(-48px, -70px) rotate(3deg) scale(.9);

  
}

.s6-hero.is-tearing .s6-division-card:nth-child(5)  {

   transform: translate(0, -105px) rotate(-2deg) scale(.88);

  
}

.s6-hero.is-tearing .s6-division-card:nth-child(6)  {

   transform: translate(48px, -70px) rotate(-3deg) scale(.9);

  
}


.s6-hero.is-revealed .s6-division-card  {

   transform: translate(0, 0) rotate(0deg) scale(1);

   border-radius: 24px;

   transition:
   transform 1.35s cubic-bezier(.22, 1, .36, 1),
   border-radius 1.35s cubic-bezier(.22, 1, .36, 1),
   box-shadow .5s ease;

  
}


.s6-division-card__content  {

   z-index: 8;

   opacity: 0;

   transform: translateY(20px);

   transition:
   opacity .75s ease,
   transform .75s cubic-bezier(.22, 1, .36, 1);

  
}

.s6-hero.is-revealed .s6-division-card__content  {

   opacity: 1;

   transform: translateY(0);

   transition-delay: .55s;

  
}


.s6-division-card__shade  {

   z-index: 3;

  
}

.s6-division-card__hover  {

   z-index: 5;

  
}


.s6-hero.is-tearing .s6-hero-intro,
.s6-hero.is-revealed .s6-hero-intro  {

   transform: translateY(-900px);

   opacity: 0;

  
}


.s6-hero.is-tearing .s6-hero-bg,
.s6-hero.is-tearing .s6-hero-overlay,
.s6-hero.is-revealed .s6-hero-bg,
.s6-hero.is-revealed .s6-hero-overlay  {

   opacity: 0;

   transform: scale(1.08);

  
}


.s6-hero.is-tearing .s6-division-heading  {

   opacity: 0;

   transform: translateY(70px);

  
}

@media (max-width: 1180px) {

   .s6-hero.is-revealed .s6-division-grid  {

     grid-template-columns: repeat(3, minmax(0, 1fr));

     gap: 20px;

     padding: 170px 24px 80px;

    
  }

  

   .s6-hero.is-tearing .s6-division-card:nth-child(n)  {

     transform: translate(0, -60px) rotate(0deg) scale(.92);

    
  }

  

}

@media (max-width: 760px) {

   .s6-hero.is-revealed .s6-division-grid  {

     grid-template-columns: repeat(3, minmax(0, 1fr));

     overflow-y: auto;

     gap: 18px;

     padding: 110px 20px 40px;

    
  }

  

   .s6-hero.is-tearing .s6-division-card:nth-child(n)  {

     transform: translate(0, -48px) rotate(0deg) scale(.94);

    
  }

  

}


body.s6-lock-scroll  {

   overflow: hidden;

   touch-action: none;

  
}

.s6-hero  {

   isolation: isolate;

  
}

.s6-division-grid  {

   opacity: 0;

   pointer-events: none;

   gap: 0;

   padding: 0;

   will-change: gap, padding, opacity;

  
}

.s6-hero.is-tearing .s6-division-grid  {

   opacity: 1;

   pointer-events: none;

   animation: s6-grid-forward 3.75s cubic-bezier(.65, 0, .35, 1) both;

   transition: none !important;

  
}

.s6-hero.is-reversing .s6-division-grid  {

   opacity: 1;

   pointer-events: none;

   animation: s6-grid-reverse 5s cubic-bezier(.65, 0, .35, 1) both;

   transition: none !important;

  
}

.s6-hero.is-revealed:not(.is-tearing):not(.is-reversing) .s6-division-grid  {

   opacity: 1;

   pointer-events: auto;

   gap: 66px;

   padding: 210px 96px 185px;

  
}

@keyframes s6-grid-forward  {

   0%  {
     gap: 0;
     padding: 0;

  }

  
   20%  {
     gap: 38px;
     padding: 92px 44px 88px;

  }

  
   50%, 100%  {
     gap: 66px;
     padding: 210px 96px 185px;

  }

  

}

@keyframes s6-grid-reverse  {

   0%, 20%  {
     gap: 66px;
     padding: 210px 96px 185px;

  }

  
   50%  {
     gap: 38px;
     padding: 92px 44px 84px;

  }

  
   100%  {
     gap: 0;
     padding: 0;

  }

  

}

.s6-division-card  {

   will-change: transform, border-radius, opacity;

   transform: translate3d(0, 0, 0);

   backface-visibility: hidden;

  
}

.s6-hero.is-tearing .s6-division-card,
.s6-hero.is-reversing .s6-division-card  {

   transition: none !important;

  
}

.s6-hero.is-tearing .s6-division-card:nth-child(1)  {
   animation: s6-card-forward-1 3.75s cubic-bezier(.65, 0, .35, 1) both;

}

.s6-hero.is-tearing .s6-division-card:nth-child(2)  {
   animation: s6-card-forward-2 3.75s cubic-bezier(.65, 0, .35, 1) both;

}

.s6-hero.is-tearing .s6-division-card:nth-child(3)  {
   animation: s6-card-forward-3 3.75s cubic-bezier(.65, 0, .35, 1) both;

}

.s6-hero.is-tearing .s6-division-card:nth-child(4)  {
   animation: s6-card-forward-4 3.75s cubic-bezier(.65, 0, .35, 1) both;

}

.s6-hero.is-tearing .s6-division-card:nth-child(5)  {
   animation: s6-card-forward-5 3.75s cubic-bezier(.65, 0, .35, 1) both;

}

.s6-hero.is-tearing .s6-division-card:nth-child(6)  {
   animation: s6-card-forward-6 3.75s cubic-bezier(.65, 0, .35, 1) both;

}

.s6-hero.is-reversing .s6-division-card:nth-child(1)  {
   animation: s6-card-reverse-1 5s cubic-bezier(.65, 0, .35, 1) both;

}

.s6-hero.is-reversing .s6-division-card:nth-child(2)  {
   animation: s6-card-reverse-2 5s cubic-bezier(.65, 0, .35, 1) both;

}

.s6-hero.is-reversing .s6-division-card:nth-child(3)  {
   animation: s6-card-reverse-3 5s cubic-bezier(.65, 0, .35, 1) both;

}

.s6-hero.is-reversing .s6-division-card:nth-child(4)  {
   animation: s6-card-reverse-4 5s cubic-bezier(.65, 0, .35, 1) both;

}

.s6-hero.is-reversing .s6-division-card:nth-child(5)  {
   animation: s6-card-reverse-5 5s cubic-bezier(.65, 0, .35, 1) both;

}

.s6-hero.is-reversing .s6-division-card:nth-child(6)  {
   animation: s6-card-reverse-6 5s cubic-bezier(.65, 0, .35, 1) both;

}

.s6-hero.is-revealed:not(.is-tearing):not(.is-reversing) .s6-division-card  {

   transform: translate3d(0, 0, 0) rotate(0) scale(1);

   border-radius: 24px;

  
}

@keyframes s6-card-forward-1  {
   0%  {
     transform: translate3d(0, 0, 0) rotate(0) scale(1);
     border-radius:0;

  }

   24%  {
     transform: translate3d(-70px, -70px, 0) rotate(-4deg) scale(.88);
     border-radius:8px;

  }

   64%  {
     transform: translate3d(-35px, -105px, 0) rotate(-2deg) scale(.94);
     border-radius:20px;

  }

   100%  {
     transform: translate3d(0, 0, 0) rotate(0) scale(1);
     border-radius:24px;

  }

  
}

@keyframes s6-card-forward-2  {
   0%  {
     transform: translate3d(0, 0, 0) rotate(0) scale(1);
     border-radius:0;

  }

   24%  {
     transform: translate3d(0, -70px, 0) rotate(2deg) scale(.88);
     border-radius:8px;

  }

   64%  {
     transform: translate3d(0, -105px, 0) rotate(1deg) scale(.94);
     border-radius:20px;

  }

   100%  {
     transform: translate3d(0, 0, 0) rotate(0) scale(1);
     border-radius:24px;

  }

  
}

@keyframes s6-card-forward-3  {
   0%  {
     transform: translate3d(0, 0, 0) rotate(0) scale(1);
     border-radius:0;

  }

   24%  {
     transform: translate3d(70px, -70px, 0) rotate(4deg) scale(.88);
     border-radius:8px;

  }

   64%  {
     transform: translate3d(35px, -105px, 0) rotate(2deg) scale(.94);
     border-radius:20px;

  }

   100%  {
     transform: translate3d(0, 0, 0) rotate(0) scale(1);
     border-radius:24px;

  }

  
}

@keyframes s6-card-forward-4  {
   0%  {
     transform: translate3d(0, 0, 0) rotate(0) scale(1);
     border-radius:0;

  }

   24%  {
     transform: translate3d(-48px, -70px, 0) rotate(3deg) scale(.88);
     border-radius:8px;

  }

   64%  {
     transform: translate3d(-24px, -105px, 0) rotate(1.5deg) scale(.94);
     border-radius:20px;

  }

   100%  {
     transform: translate3d(0, 0, 0) rotate(0) scale(1);
     border-radius:24px;

  }

  
}

@keyframes s6-card-forward-5  {
   0%  {
     transform: translate3d(0, 0, 0) rotate(0) scale(1);
     border-radius:0;

  }

   24%  {
     transform: translate3d(0, -70px, 0) rotate(-2deg) scale(.88);
     border-radius:8px;

  }

   64%  {
     transform: translate3d(0, -105px, 0) rotate(-1deg) scale(.94);
     border-radius:20px;

  }

   100%  {
     transform: translate3d(0, 0, 0) rotate(0) scale(1);
     border-radius:24px;

  }

  
}

@keyframes s6-card-forward-6  {
   0%  {
     transform: translate3d(0, 0, 0) rotate(0) scale(1);
     border-radius:0;

  }

   24%  {
     transform: translate3d(48px, -70px, 0) rotate(-3deg) scale(.88);
     border-radius:8px;

  }

   64%  {
     transform: translate3d(24px, -105px, 0) rotate(-1.5deg) scale(.94);
     border-radius:20px;

  }

   100%  {
     transform: translate3d(0, 0, 0) rotate(0) scale(1);
     border-radius:24px;

  }

  
}

@keyframes s6-card-reverse-1  {
   0%  {
     transform: translate3d(0, 0, 0) rotate(0) scale(1);
     border-radius:24px;

  }

   24%  {
     transform: translate3d(-35px, -105px, 0) rotate(-2deg) scale(.94);
     border-radius:20px;

  }

   56%  {
     transform: translate3d(-70px, -70px, 0) rotate(-4deg) scale(.88);
     border-radius:8px;

  }

   100%  {
     transform: translate3d(0, 0, 0) rotate(0) scale(1);
     border-radius:0;

  }

  
}

@keyframes s6-card-reverse-2  {
   0%  {
     transform: translate3d(0, 0, 0) rotate(0) scale(1);
     border-radius:24px;

  }

   24%  {
     transform: translate3d(0, -105px, 0) rotate(1deg) scale(.94);
     border-radius:20px;

  }

   56%  {
     transform: translate3d(0, -70px, 0) rotate(2deg) scale(.88);
     border-radius:8px;

  }

   100%  {
     transform: translate3d(0, 0, 0) rotate(0) scale(1);
     border-radius:0;

  }

  
}

@keyframes s6-card-reverse-3  {
   0%  {
     transform: translate3d(0, 0, 0) rotate(0) scale(1);
     border-radius:24px;

  }

   24%  {
     transform: translate3d(35px, -105px, 0) rotate(2deg) scale(.94);
     border-radius:20px;

  }

   56%  {
     transform: translate3d(70px, -70px, 0) rotate(4deg) scale(.88);
     border-radius:8px;

  }

   100%  {
     transform: translate3d(0, 0, 0) rotate(0) scale(1);
     border-radius:0;

  }

  
}

@keyframes s6-card-reverse-4  {
   0%  {
     transform: translate3d(0, 0, 0) rotate(0) scale(1);
     border-radius:24px;

  }

   24%  {
     transform: translate3d(-24px, -105px, 0) rotate(1.5deg) scale(.94);
     border-radius:20px;

  }

   56%  {
     transform: translate3d(-48px, -70px, 0) rotate(3deg) scale(.88);
     border-radius:8px;

  }

   100%  {
     transform: translate3d(0, 0, 0) rotate(0) scale(1);
     border-radius:0;

  }

  
}

@keyframes s6-card-reverse-5  {
   0%  {
     transform: translate3d(0, 0, 0) rotate(0) scale(1);
     border-radius:24px;

  }

   24%  {
     transform: translate3d(0, -105px, 0) rotate(-1deg) scale(.94);
     border-radius:20px;

  }

   56%  {
     transform: translate3d(0, -70px, 0) rotate(-2deg) scale(.88);
     border-radius:8px;

  }

   100%  {
     transform: translate3d(0, 0, 0) rotate(0) scale(1);
     border-radius:0;

  }

  
}

@keyframes s6-card-reverse-6  {
   0%  {
     transform: translate3d(0, 0, 0) rotate(0) scale(1);
     border-radius:24px;

  }

   24%  {
     transform: translate3d(24px, -105px, 0) rotate(-1.5deg) scale(.94);
     border-radius:20px;

  }

   56%  {
     transform: translate3d(48px, -70px, 0) rotate(-3deg) scale(.88);
     border-radius:8px;

  }

   100%  {
     transform: translate3d(0, 0, 0) rotate(0) scale(1);
     border-radius:0;

  }

  
}

.s6-division-card::before  {

   z-index: 4;

   opacity: 0;

   transform: scale(1);

   transition: none !important;

  
}

.s6-hero.is-tearing .s6-division-card::before  {

   animation: s6-slice-forward 3.75s cubic-bezier(.65, 0, .35, 1) both;

  
}

.s6-hero.is-reversing .s6-division-card::before  {

   animation: s6-slice-reverse 5s cubic-bezier(.65, 0, .35, 1) both;

  
}

@keyframes s6-slice-forward  {

   0%, 34%  {
     opacity: 1;
     transform: scale(1);

  }

  
   56%  {
     opacity: .35;
     transform: scale(1.04);

  }

  
   100%  {
     opacity: 0;
     transform: scale(1.08);

  }

  

}

@keyframes s6-slice-reverse  {

   0%  {
     opacity: 0;
     transform: scale(1.10);

  }

  
   56%  {
     opacity: .35;
     transform: scale(1.06);

  }

  
   84%, 100%  {
     opacity: 1;
     transform: scale(1);

  }

  

}

.s6-division-card__image  {

   opacity: 0;

   transform: scale(1.08);

   transition: filter .5s ease;

  
}

.s6-hero.is-tearing .s6-division-card__image  {

   animation: s6-division-image-forward 3.75s cubic-bezier(.65, 0, .35, 1) both;

  
}

.s6-hero.is-reversing .s6-division-card__image  {

   animation: s6-division-image-reverse 5s cubic-bezier(.65, 0, .35, 1) both;

  
}

.s6-hero.is-revealed:not(.is-tearing):not(.is-reversing) .s6-division-card__image  {

   opacity: 1;

   transform: scale(1);

  
}

@keyframes s6-division-image-forward  {

   0%  {
     opacity: 0;
     transform: scale(1.08);

  }

  
   34%  {
     opacity: .55;
     transform: scale(1.04);

  }

  
   56%, 100%  {
     opacity: 1;
     transform: scale(1);

  }

  

}

@keyframes s6-division-image-reverse  {

   0%  {
     opacity: 1;
     transform: scale(1);

  }

  
   34%  {
     opacity: .75;
     transform: scale(1.025);

  }

  
   56%  {
     opacity: .15;
     transform: scale(1.06);

  }

  
   100%  {
     opacity: 0;
     transform: scale(1.08);

  }

  

}

.s6-hero.is-tearing .s6-hero-bg,
.s6-hero.is-tearing .s6-hero-overlay  {

   opacity: 0;

   transform: scale(1.08);

   transition: opacity .35s cubic-bezier(.65, 0, .35, 1), transform .35s cubic-bezier(.65, 0, .35, 1) !important;

  
}

.s6-hero.is-reversing .s6-hero-bg,
.s6-hero.is-reversing .s6-hero-overlay  {

   opacity: 1;

   transform: scale(1);

   transition: opacity 5s cubic-bezier(.65, 0, .35, 1), transform 5s cubic-bezier(.65, 0, .35, 1) !important;

  
}

.s6-hero.is-tearing .s6-hero-intro  {

   transform: translateY(-900px);

   opacity: 0;

   transition: transform 2.2s cubic-bezier(.55, 0, .2, 1), opacity .55s ease !important;

  
}

.s6-hero.is-reversing .s6-hero-intro  {

   transform: translateY(0);

   opacity: 1;

   transition: transform 5s cubic-bezier(.55, 0, .2, 1), opacity .35s ease 4.7s !important;

  
}

.s6-division-card__content  {

   z-index: 8;

  
}

.s6-hero.is-tearing .s6-division-card__content,
.s6-hero.is-reversing .s6-division-card__content  {

   opacity: 0;

   transform: translateY(20px);

   transition: none !important;

  
}

.s6-hero.is-revealed:not(.is-tearing):not(.is-reversing) .s6-division-card__content  {

   opacity: 1;

   transform: translateY(0);

  
}

.s6-hero.is-tearing .s6-division-heading,
.s6-hero.is-reversing .s6-division-heading  {

   opacity: 0;

   transform: translateY(70px);

  
}

.s6-hero.is-revealed:not(.is-tearing):not(.is-reversing) .s6-division-heading  {

   opacity: 1;

   transform: translateY(0);

  
}

@media (max-width: 1180px) {

   .s6-hero.is-tearing .s6-division-grid,
   .s6-hero.is-reversing .s6-division-grid  {
     animation-name: s6-grid-forward-tablet;

  }

  
   .s6-hero.is-reversing .s6-division-grid  {
     animation-name: s6-grid-reverse-tablet;

  }

  
   .s6-hero.is-revealed:not(.is-tearing):not(.is-reversing) .s6-division-grid  {
     grid-template-columns: repeat(3, minmax(0, 1fr));
     gap: 20px;
     padding: 170px 24px 80px;

  }

  
   @keyframes s6-grid-forward-tablet  {
     0%  {
       gap:0;
       padding:0;

    }

     50%, 100%  {
       gap:20px;
       padding:170px 24px 80px;

    }

    
  }

  
   @keyframes s6-grid-reverse-tablet  {
     0%, 20%  {
       gap:20px;
       padding:170px 24px 80px;

    }

     100%  {
       gap:0;
       padding:0;

    }

    
  }

  

}

@media (max-width: 760px) {

   .s6-hero.is-revealed:not(.is-tearing):not(.is-reversing) .s6-division-grid  {
     grid-template-columns: repeat(3, minmax(0, 1fr));
     overflow-y:auto;
     gap:18px;
     padding:110px 20px 40px;

  }

  
   .s6-hero.is-tearing .s6-division-grid,
   .s6-hero.is-reversing .s6-division-grid  {
     animation-name: s6-grid-forward-mobile;

  }

  
   .s6-hero.is-reversing .s6-division-grid  {
     animation-name: s6-grid-reverse-mobile;

  }

  
   @keyframes s6-grid-forward-mobile  {
     0%  {
       gap:0;
       padding:0;

    }

     50%, 100%  {
       gap:18px;
       padding:110px 20px 40px;

    }

    
  }

  
   @keyframes s6-grid-reverse-mobile  {
     0%, 20%  {
       gap:18px;
       padding:110px 20px 40px;

    }

     100%  {
       gap:0;
       padding:0;

    }

    
  }

  
   .s6-hero.is-tearing .s6-division-card:nth-child(n)  {
     animation-name: s6-card-forward-mobile;

  }

  
   .s6-hero.is-reversing .s6-division-card:nth-child(n)  {
     animation-name: s6-card-reverse-mobile;

  }

  
   @keyframes s6-card-forward-mobile  {
     0%  {
       transform:translate3d(0, 0, 0) scale(1);
       border-radius:0;

    }

     24%  {
       transform:translate3d(0, -48px, 0) scale(.94);
       border-radius:8px;

    }

     56%  {
       transform:translate3d(0, -78px, 0) scale(.97);
       border-radius:20px;

    }

     100%  {
       transform:translate3d(0, 0, 0) scale(1);
       border-radius:24px;

    }

    
  }

  
   @keyframes s6-card-reverse-mobile  {
     0%  {
       transform:translate3d(0, 0, 0) scale(1);
       border-radius:24px;

    }

     56%  {
       transform:translate3d(0, -48px, 0) scale(.94);
       border-radius:8px;

    }

     100%  {
       transform:translate3d(0, 0, 0) scale(1);
       border-radius:0;

    }

    
  }

  

}

/* =========================================================
   Hero Intro Reset and Reverse States
========================================================= */

.s6-hero:not(.is-intro-ready):not(.is-tearing):not(.is-revealed):not(.is-reversing) .s6-hero-intro,
.s6-hero.is-reverse-resetting .s6-hero-intro  {

   opacity: 0 !important;

   transform: translate3d(0, 120px, 0) !important;

   transition: none !important;

  
}

.s6-hero.is-intro-ready:not(.is-tearing):not(.is-revealed):not(.is-reversing) .s6-hero-intro  {

   opacity: 1 !important;

   transform: translate3d(0, 0, 0) !important;

   transition:
   transform 1.05s cubic-bezier(.65, 0, .35, 1) .15s,
   opacity 1.05s cubic-bezier(.65, 0, .35, 1) .15s !important;

  
}


.s6-hero.is-tearing .s6-hero-intro  {

   z-index: 10 !important;

   animation: s6-title-forward-scroll-v11 2.2s cubic-bezier(.55, 0, .2, 1) both !important;

  
}

@keyframes s6-title-forward-scroll-v11  {

   0%  {
     transform: translate3d(0, 0, 0);
     opacity: 1;

  }

  
   72%, 100%  {
     transform: translate3d(0, -900px, 0);
     opacity: 0;

  }

  

}


.s6-hero.is-tearing .s6-hero-bg,
.s6-hero.is-tearing .s6-hero-overlay  {

   animation: s6-hero-bg-forward-exit-v11 .35s cubic-bezier(.65, 0, .35, 1) both !important;

   transition: none !important;

  
}

@keyframes s6-hero-bg-forward-exit-v11  {

   0%  {
     opacity: 1;
     transform: scale(1);

  }

  
   100%  {
     opacity: 0;
     transform: scale(1.08);

  }

  

}


.s6-hero.is-reversing .s6-hero-bg,
.s6-hero.is-reversing .s6-hero-overlay  {

   opacity: 0 !important;

   transform: scale(1.08) !important;

   animation: none !important;

   transition: none !important;

  
}

.s6-hero.is-reversing .s6-hero-intro  {

   z-index: 10 !important;

   opacity: 0 !important;

   transform: translate3d(0, -900px, 0) !important;

   animation: none !important;

   transition: none !important;

  
}


.s6-hero.is-reversing .s6-division-card::before  {

   animation: s6-slice-reverse-v11 5s cubic-bezier(.65, 0, .35, 1) both !important;

  
}

.s6-hero.is-reversing .s6-division-card__image  {

   animation: s6-division-image-reverse-v11 5s cubic-bezier(.65, 0, .35, 1) both !important;

  
}

.s6-hero.is-reversing .s6-division-card__shade,
.s6-hero.is-reversing .s6-division-card__hover  {

   opacity: 0 !important;

  
}

@keyframes s6-slice-reverse-v11  {

   0%  {
     opacity: 0;
     transform: scale(1.10);

  }

  
   34%  {
     opacity: .72;
     transform: scale(1.06);

  }

  
   56%, 100%  {
     opacity: 1;
     transform: scale(1);

  }

  

}

@keyframes s6-division-image-reverse-v11  {

   0%  {
     opacity: 1;
     transform: scale(1);

  }

  
   34%  {
     opacity: .48;
     transform: scale(1.025);

  }

  
   56%, 100%  {
     opacity: 0;
     transform: scale(1.08);

  }

  

}


.s6-hero.is-reverse-resetting .s6-hero-bg,
.s6-hero.is-reverse-resetting .s6-hero-overlay  {

   opacity: 1 !important;

   transform: scale(1) !important;

   animation: none !important;

   transition: none !important;

  
}

.s6-hero.is-reverse-resetting .s6-division-grid  {

   opacity: 0 !important;

   pointer-events: none !important;

   animation: none !important;

   transition: none !important;

  
}

.s6-hero.is-reverse-resetting .s6-division-card,
.s6-hero.is-reverse-resetting .s6-division-card::before,
.s6-hero.is-reverse-resetting .s6-division-card__image,
.s6-hero.is-reverse-resetting .s6-division-card__shade,
.s6-hero.is-reverse-resetting .s6-division-card__hover,
.s6-hero.is-reverse-resetting .s6-division-card__content,
.s6-hero.is-reverse-resetting .s6-division-heading  {

   opacity: 0 !important;

   animation: none !important;

   transition: none !important;

  
}


.s6-hero.is-revealed:not(.is-tearing):not(.is-reversing) .s6-division-card.is-opening  {

   z-index: 85;

   pointer-events: none;

   animation: s6-card-open-pop-v11 .78s cubic-bezier(.22, 1, .36, 1) both !important;

   box-shadow: 0 40px 130px rgba(0, 0, 0, .78);

   will-change: transform, opacity, border-radius;

  
}

.s6-hero.is-revealed:not(.is-tearing):not(.is-reversing) .s6-division-card.is-opening.is-active-division,
.s6-hero.is-revealed:not(.is-tearing):not(.is-reversing) .s6-division-card.is-active-division:not(.is-opening)  {

   opacity: 0;

   pointer-events: none;

   animation: none !important;

   transition: opacity .14s ease-out !important;

  
}

@keyframes s6-card-open-pop-v11  {

   0%  {
     transform: translate3d(0, 0, 0) scale(1);
     border-radius: 24px;
     opacity: 1;

  }

  
   58%  {
     transform: translate3d(0, -42px, 0) scale(1.12);
     border-radius: 36px;
     opacity: 1;

  }

  
   100%  {
     transform: translate3d(0, -64px, 0) scale(1.18);
     border-radius: 40px;
     opacity: .98;

  }

  

}

/* Division Modal Base */
.s6-division-modal.is-open  {

   animation: s6-modal-fade-in-v11 .22s linear both !important;

  
}

.s6-division-modal.is-open .s6-division-modal__panel  {

   transform-origin: center center;

   will-change: transform, opacity, border-radius;

   animation: s6-modal-panel-expand-v11 .62s cubic-bezier(.22, 1, .36, 1) both !important;

  
}

@keyframes s6-modal-fade-in-v11  {

   from  {
     opacity: 0;

  }

  
   to  {
     opacity: 1;

  }

  

}

@keyframes s6-modal-panel-expand-v11  {

   0%  {
     opacity: .10;
     transform: translate3d(0, -30px, 0) scale(.70);
     border-radius: 40px;

  }

  
   100%  {
     opacity: 1;
     transform: translate3d(0, 0, 0) scale(1);
     border-radius: 34px;

  }

  

}


.s6-hero:not(.is-intro-ready) .s6-scroll-hint,
.s6-hero.is-tearing .s6-scroll-hint,
.s6-hero.is-reversing .s6-scroll-hint,
.s6-hero.is-revealed .s6-scroll-hint,
.s6-hero.is-reverse-resetting .s6-scroll-hint  {

   opacity: 0 !important;

  
}

.s6-hero.is-intro-ready:not(.is-tearing):not(.is-reversing):not(.is-revealed) .s6-scroll-hint  {

   opacity: 1 !important;

  
}

/* =========================================================
   Portfolio Layout
========================================================= */
.s6-container--portfolio {
  max-width:1600px
}

.s6-portfolio {
  padding-top:96px;
  padding-bottom:96px
}

.s6-portfolio-title-row h2 {
  max-width:1050px;
  font-size:clamp(4rem, 8vw, 8rem);
  line-height:.86;
  letter-spacing:-.055em
}

.s6-portfolio-title-row p {
  max-width:430px;
  font-size:14px;
  line-height:1.75;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(255, 255, 255, .48)
}

.s6-portfolio-stack {
  position:relative;
  margin-top:48px
}

.s6-feature-project {
  margin-top:0
}

.s6-feature-project__glow {
  position:absolute;
  inset:0;
  background:radial-gradient(circle at top right, rgba(142, 196, 63, .12), transparent 34%);
  opacity:0;
  transition:opacity .7s var(--s6-ease)
}

.s6-feature-project:hover .s6-feature-project__glow {
  opacity:1
}

.s6-feature-project h3 {
  transition:transform .5s var(--s6-ease)
}

.s6-feature-project:hover h3 {
  transform:translateY(-4px)
}

.s6-before-after {
  margin-bottom:0
}

.s6-before-after__label {
  position:absolute;
  z-index:4;
  top:24px;
  border:1px solid rgba(255, 255, 255, .15);
  background:rgba(0, 0, 0, .55);
  padding:12px 16px;
  backdrop-filter:blur(12px);
  font-size:10px;
  font-weight:900;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:#fff
}

.s6-before-after__label--before {
  left:24px
}

.s6-before-after__label--after {
  right:24px;
  border-color:rgba(142, 196, 63, .4);
  color:var(--s6-green)
}

.s6-gallery-grid--full {
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  grid-auto-rows:250px;
  gap:20px;
  margin-top:32px
}

.s6-gallery-grid--full .s6-gallery-tile, .s6-gallery-grid--full .s6-gallery-stat {
  border:1px solid rgba(255, 255, 255, .1);
  transition:transform .5s var(--s6-ease), box-shadow .5s var(--s6-ease);
  will-change:transform
}

.s6-gallery-grid--full .s6-gallery-tile:hover {
  transform:translateY(-4px);
  box-shadow:0 24px 80px rgba(0, 0, 0, .42)
}

.s6-gallery-tile--hero {
  grid-column:1/span 2;
  grid-row:1/span 2
}

.s6-gallery-grid--full .s6-gallery-stat:nth-of-type(2) {
  grid-column:3;
  grid-row:1
}

.s6-gallery-tile--vertical {
  grid-column:4;
  grid-row:1/span 2
}

.s6-gallery-grid--full article:nth-of-type(4) {
  grid-column:3;
  grid-row:2
}

.s6-gallery-tile--wide {
  grid-column:1/span 2;
  grid-row:3
}

.s6-gallery-grid--full article:nth-of-type(6) {
  grid-column:3;
  grid-row:3
}

.s6-gallery-grid--full article:nth-of-type(7) {
  grid-column:4;
  grid-row:3
}

.s6-gallery-tile--vertical-lower {
  grid-column:1;
  grid-row:4/span 2
}

.s6-gallery-grid--full article:nth-of-type(9) {
  grid-column:2;
  grid-row:4
}

.s6-gallery-tile--large-lower {
  grid-column:3/span 2;
  grid-row:4/span 2
}

.s6-gallery-grid--full article:nth-of-type(11) {
  grid-column:2;
  grid-row:5
}

.s6-gallery-tile--wide-bottom {
  grid-column:1/span 2;
  grid-row:6
}

.s6-gallery-grid--full .s6-gallery-tile div {
  position:absolute;
  inset:-8px;
  background-size:cover;
  background-position:center;
  transition:transform 1.6s var(--s6-ease)
}

.s6-gallery-grid--full .s6-gallery-tile:hover div {
  transform:scale(1.035)
}

.s6-gallery-grid--full .s6-gallery-tile footer {
  position:absolute;
  z-index:2;
  left:20px;
  right:20px;
  bottom:20px;
  transition:transform .5s var(--s6-ease)
}

.s6-gallery-grid--full .s6-gallery-tile:hover footer {
  transform:translateY(-4px)
}

.s6-gallery-grid--full .s6-gallery-tile small {
  display:flex;
  justify-content:space-between;
  gap:16px;
  margin-bottom:14px;
  color:rgba(255, 255, 255, .55);
  font-size:9px;
  font-weight:900;
  letter-spacing:.22em;
  text-transform:uppercase
}

.s6-gallery-grid--full .s6-gallery-tile em {
  display:block;
  margin-bottom:8px;
  color:var(--s6-green);
  font-style:normal;
  font-size:10px;
  font-weight:900;
  letter-spacing:.24em;
  text-transform:uppercase
}

.s6-gallery-grid--full .s6-gallery-tile strong {
  display:block;
  color:#fff;
  font-size:clamp(1.45rem, 2vw, 2rem);
  font-weight:900;
  line-height:.92;
  letter-spacing:-.045em;
  text-transform:uppercase
}

.s6-gallery-grid--full .s6-gallery-stat {
  background:rgba(255, 255, 255, .035);
  padding:24px
}

.s6-gallery-grid--full .s6-gallery-stat:before {
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 80% 20%, rgba(142, 196, 63, .08), transparent 36%)
}

.s6-gallery-grid--full .s6-gallery-stat strong, .s6-gallery-grid--full .s6-gallery-stat span {
  position:relative;
  z-index:1
}

.s6-gallery-grid--full .s6-gallery-stat strong {
  font-size:clamp(3rem, 4.2vw, 4rem);
  line-height:1;
  color:#fff
}

.s6-gallery-grid--full .s6-gallery-stat span:not(.s6-gallery-stat__note):after {
  content:"";
  display:block;
  width:64px;
  height:1px;
  margin:20px auto 0;
  background:rgba(142, 196, 63, .35)
}

.s6-portfolio-button {
  display:inline-flex;
  align-items:center;
  gap:12px;
  margin-top:48px;
  border:1px solid rgba(142, 196, 63, .6);
  padding:16px 28px;
  color:#fff;
  font-size:12px;
  font-weight:900;
  letter-spacing:.2em;
  text-transform:uppercase;
  transition:background .3s var(--s6-ease), color .3s var(--s6-ease)
}

.s6-portfolio-button:hover {
  background:var(--s6-green);
  color:#000
}

@media (max-width: 1180px) {
  .s6-gallery-grid--full {
    grid-template-columns:repeat(2, minmax(0, 1fr));
    grid-auto-rows:220px
  }

  .s6-gallery-grid--full article, .s6-gallery-tile--hero, .s6-gallery-tile--vertical, .s6-gallery-tile--wide, .s6-gallery-tile--vertical-lower, .s6-gallery-tile--large-lower, .s6-gallery-tile--wide-bottom {
    grid-column:auto!important;
    grid-row:auto!important
  }

  .s6-gallery-tile--hero, .s6-gallery-tile--large-lower {
    grid-column:span 2!important;
    grid-row:span 2!important
  }

  .s6-gallery-tile--wide, .s6-gallery-tile--wide-bottom {
    grid-column:span 2!important
  }

  
}

@media (max-width: 760px) {
  .s6-portfolio {
    padding:72px 20px
  }

  .s6-portfolio-title-row h2 {
    font-size:clamp(3.2rem, 14vw, 5.2rem)
  }

  .s6-gallery-grid--full {
    grid-template-columns:1fr;
    grid-auto-rows:260px;
    gap:16px
  }

  .s6-gallery-grid--full article, .s6-gallery-tile--hero, .s6-gallery-tile--vertical, .s6-gallery-tile--wide, .s6-gallery-tile--vertical-lower, .s6-gallery-tile--large-lower, .s6-gallery-tile--wide-bottom {
    grid-column:1!important;
    grid-row:auto!important
  }

  .s6-gallery-tile--hero, .s6-gallery-tile--large-lower {
    min-height:420px
  }

  .s6-gallery-stat {
    min-height:220px
  }

  .s6-feature-project__content {
    padding:28px
  }

  .s6-before-after__label {
    top:16px;
    padding:10px 13px
  }

  .s6-before-after__label--before {
    left:16px
  }

  .s6-before-after__label--after {
    right:16px
  }

  
}


.s6-gallery-grid--full .s6-gallery-tile {

   isolation:isolate;

   backface-visibility:hidden;

   transform:translateZ(0);

   box-shadow:0 18px 60px rgba(0, 0, 0, .3);

  
}

.s6-gallery-grid--full .s6-gallery-tile:hover {

   transform:none;

   box-shadow:0 18px 60px rgba(0, 0, 0, .3);

  
}

.s6-gallery-grid--full .s6-gallery-tile div {

   inset:-14px;

   transform:translateZ(0) scale(1.001);

   backface-visibility:hidden;

   will-change:transform;

  
}

.s6-gallery-grid--full .s6-gallery-tile:hover div {

   transform:translateZ(0) scale(1.04);

  
}

.s6-gallery-grid--full .s6-gallery-tile:after {

   inset:-1px;

   pointer-events:none;

  
}

.s6-gallery-grid--full .s6-gallery-tile:before {

   content:"";

   position:absolute;

   z-index:1;

   left:0;

   right:0;

   bottom:-2px;

   height:6px;

   background:linear-gradient(to top, rgba(0, 0, 0, .88), rgba(0, 0, 0, 0));

   pointer-events:none;

  
}

.s6-gallery-grid--full .s6-gallery-tile footer {

   z-index:2;

  
}

/* =========================================================
   Global Polish and Section Rhythm
========================================================= */
:root {

   --s6-radius-lg:34px;

   --s6-radius-md:28px;

   --s6-radius-sm:22px;

   --s6-soft-border:rgba(255, 255, 255, .105);

   --s6-card-bg:linear-gradient(180deg, rgba(255, 255, 255, .045), rgba(255, 255, 255, .018));

   --s6-card-shadow:0 28px 90px rgba(0, 0, 0, .34), inset 0 1px 0 rgba(255, 255, 255, .055);

   --s6-card-shadow-hover:0 34px 110px rgba(0, 0, 0, .46), inset 0 1px 0 rgba(255, 255, 255, .075);

  
}

.s6-section {

   padding-top:116px;

   padding-bottom:116px;

  
}

.s6-section--compact {

   padding-top:86px;

   padding-bottom:86px;

  
}

.s6-container {
  width:min(1500px, 100%)
}

.s6-container--wide {
  width:min(1600px, 100%)
}

.s6-section h2,
.s6-section-title-row h2 {

   max-width:1060px;

   text-wrap:balance;

  
}

.s6-section-title-row {

   gap:44px;

   margin-bottom:2px;

  
}

.s6-section-title-row>p {

   padding-bottom:8px;

   font-size:12px;

   line-height:1.75;

   letter-spacing:.145em;

  
}

.s6-eyebrow {

   margin-bottom:22px;

   letter-spacing:.30em;

  
}

/* Card surfaces */
.s6-about-tab,
.s6-about-panel,
.s6-testimonial-feature,
.s6-testimonial-list article,
.s6-job-list article,
.s6-careers-feature,
.s6-blog-feature,
.s6-blog-list article,
.s6-contact-card,
.s6-contact-form,
.s6-archive-card,
.s6-team-modal__panel,
.s6-application-modal__panel {

   border-color:var(--s6-soft-border);

   box-shadow:var(--s6-card-shadow);

   backdrop-filter:blur(22px);

  
}

.s6-about-panel,
.s6-testimonial-feature,
.s6-careers-feature,
.s6-blog-feature,
.s6-contact-card,
.s6-contact-form {

   border-radius:var(--s6-radius-lg);

   background:var(--s6-card-bg);

  
}

.s6-about-tab,
.s6-testimonial-list article,
.s6-job-list article,
.s6-blog-list article,
.s6-archive-card {

   border-radius:var(--s6-radius-sm);

  
}

.s6-about-tab:hover,
.s6-testimonial-list article:hover,
.s6-job-list article:hover,
.s6-blog-list article:hover,
.s6-archive-card:hover {

   box-shadow:var(--s6-card-shadow-hover);

  
}

.s6-about-layout {

   margin-top:42px;

   gap:22px;

   grid-template-columns:.82fr 1.18fr;

  
}

.s6-about-tabs {
  gap:10px
}

.s6-about-tab {

   min-height:116px;

   padding:22px;

  
}

.s6-about-tab span {

   margin-bottom:13px;

   color:var(--s6-green);

   font-size:9px;

   letter-spacing:.22em;

  
}

.s6-about-tab strong {

   max-width:92%;

   margin:0 auto;

   font-family:var(--s6-heading-font);

   font-size:clamp(1.05rem, 1.25vw, 1.35rem);

   line-height:.9;

   letter-spacing:-.025em;

  
}

.s6-about-panel {

   min-height:456px;

   padding:38px;

  
}

.s6-about-panel h3 {

   max-width:900px;

   font-size:clamp(2.65rem, 4.25vw, 5.15rem);

  
}

.s6-about-panel__content div {

   max-width:78%;

   margin-top:28px;

   color:rgba(255, 255, 255, .56);

   font-size:15px;

   line-height:1.9;

  
}

.s6-about-panel__stat {

   right:26px;

   bottom:18px;

   opacity:.08;

  
}

/* Content hierarchy */
.s6-testimonials-layout,
.s6-careers-layout,
.s6-blog-layout,
.s6-contact-layout {

   gap:14px;

   margin-top:28px;

  
}

.s6-testimonial-feature {
  padding:30px
}

.s6-testimonial-list {
  gap:14px
}

.s6-testimonial-list article {
  padding:24px
}

.s6-testimonial-list p,
.s6-job-list p,
.s6-blog-list p {

   color:rgba(255, 255, 255, .6);

   line-height:1.7;

  
}

.s6-careers-feature__content,
.s6-blog-feature__content {

   padding:32px;

  
}

.s6-job-list {
  gap:14px
}

.s6-job-list article {
  padding:22px
}

.s6-job-list h3,
.s6-blog-list h3 {

   font-family:var(--s6-heading-font);

   letter-spacing:-.025em;

  
}


.s6-outline-button,
.s6-ghost-button,
.s6-pill-button,
.s6-green-button,
.s6-submit-button,
.s6-portfolio-button {

   border-radius:999px;

   min-height:46px;

   transition:transform .32s var(--s6-ease), background .32s var(--s6-ease), color .32s var(--s6-ease), border-color .32s var(--s6-ease), box-shadow .32s var(--s6-ease);

  
}

.s6-outline-button:hover,
.s6-ghost-button:hover,
.s6-pill-button:hover,
.s6-green-button:hover,
.s6-submit-button:hover,
.s6-portfolio-button:hover {

   transform:translateY(-1px);

   box-shadow:0 18px 46px rgba(0, 0, 0, .28), 0 0 28px rgba(142, 196, 63, .11);

  
}

/* Contact form surface */
.s6-contact-card,
.s6-contact-form {
  padding:34px
}

.s6-contact-methods {

   gap:12px;

  
}

.s6-contact-methods li,
.s6-contact-note,
.s6-contact-brand-strip {

   border-radius:18px;

   border-color:rgba(255, 255, 255, .1);

  
}

.s6-form-grid input,
.s6-form-grid select,
.s6-form-grid textarea {

   border-radius:16px;

   min-height:46px;

   transition:border-color .28s var(--s6-ease), box-shadow .28s var(--s6-ease), background .28s var(--s6-ease);

  
}

.s6-form-grid textarea {
  min-height:108px
}

.s6-form-grid input:focus,
.s6-form-grid select:focus,
.s6-form-grid textarea:focus {

   outline:none;

   border-color:rgba(142, 196, 63, .46);

   box-shadow:0 0 0 4px rgba(142, 196, 63, .08);

  
}

/* Archive and page templates */
.s6-basic-page {
  padding-top:110px
}

.s6-basic-content__body {

   color:rgba(255, 255, 255, .68);

   line-height:1.85;

  
}

.s6-archive-grid {
  gap:20px
}

.s6-archive-card {
  transition:transform .38s var(--s6-ease), box-shadow .38s var(--s6-ease)
}

.s6-archive-card:hover {
  transform:translateY(-3px)
}

@media (max-width: 1180px) {

   .s6-section {
    padding-top:94px;
    padding-bottom:94px
  }

  
   .s6-section--compact {
    padding-top:78px;
    padding-bottom:78px
  }

  
   .s6-about-layout {
    grid-template-columns:1fr;
    gap:18px
  }

  
   .s6-about-panel__content div {
    max-width:92%
  }

  

}

@media (max-width: 760px) {

   .s6-section, .s6-section--compact {
    padding:74px 20px
  }

  
   .s6-section-title-row {
    gap:18px
  }

  
   .s6-section-title-row>p {
    padding-bottom:0;
    font-size:11px;
    letter-spacing:.12em
  }

  
   .s6-eyebrow {
    font-size:10px;
    gap:12px;
    letter-spacing:.24em
  }

  
   .s6-eyebrow span {
    width:42px
  }

  
   .s6-about-tab {
    min-height:auto;
    padding:18px
  }

  
   .s6-about-panel {
    min-height:auto;
    padding:24px;
    border-radius:26px
  }

  
   .s6-about-panel__content div {
    max-width:100%;
    font-size:14px;
    line-height:1.75
  }

  
   .s6-contact-card, .s6-contact-form {
    padding:24px;
    border-radius:26px
  }

  
   .s6-testimonial-feature, .s6-careers-feature, .s6-blog-feature {
    border-radius:26px
  }

  

}

/* =========================================================
   Portfolio Overlay and Card Cleanup
========================================================= */
.s6-gallery-grid--full .s6-gallery-tile footer {

   left:20px;

   right:20px;

   bottom:18px;

   max-width:calc(100% - 40px);

  
}

.s6-gallery-grid--full .s6-gallery-tile small,
.s6-gallery-grid--full .s6-gallery-tile em {

   opacity:0;

   transform:translateY(8px);

   max-height:0;

   overflow:hidden;

   margin-bottom:0;

   transition:opacity .38s var(--s6-ease), transform .38s var(--s6-ease), max-height .38s var(--s6-ease), margin-bottom .38s var(--s6-ease);

  
}

.s6-gallery-grid--full .s6-gallery-tile:hover small {

   opacity:1;

   transform:translateY(0);

   max-height:28px;

   margin-bottom:12px;

  
}

.s6-gallery-grid--full .s6-gallery-tile:hover em {

   opacity:1;

   transform:translateY(0);

   max-height:24px;

   margin-bottom:8px;

  
}

.s6-gallery-grid--full .s6-gallery-tile strong {

   font-size:clamp(1.25rem, 1.65vw, 1.75rem);

   line-height:.95;

   max-width:92%;

   text-shadow:0 8px 28px rgba(0, 0, 0, .72);

  
}

.s6-gallery-grid--full .s6-gallery-tile--hero strong,
.s6-gallery-grid--full .s6-gallery-tile--large-lower strong {

   font-size:clamp(1.65rem, 2.4vw, 2.6rem);

   max-width:82%;

  
}

.s6-gallery-grid--full .s6-gallery-tile:after {

   background:linear-gradient(to top, rgba(0, 0, 0, .74), rgba(0, 0, 0, .16), rgba(0, 0, 0, .04));

  
}

@media (max-width: 760px) {

   .s6-gallery-grid--full .s6-gallery-tile small,
   .s6-gallery-grid--full .s6-gallery-tile em {

     opacity:1;

     transform:none;

     width:100%;

     height:auto !important;

     max-height:none !important;

     overflow:visible !important;

    
  }

  
   .s6-gallery-grid--full .s6-gallery-tile small {
    margin:0 0 7px !important;
    min-height:1rem !important;
    line-height:1.35 !important
  }

  
   .s6-gallery-grid--full .s6-gallery-tile em {
    margin:0 0 6px !important;
    line-height:1.2 !important
  }


   .s6-gallery-grid--full .s6-gallery-tile footer {
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:0
  }


   .s6-gallery-grid--full .s6-gallery-tile strong {
    max-width:100%;
    line-height:1.02;
    overflow-wrap:anywhere
  }

  

}

/* =========================================================
   About Section Layout Polish
========================================================= */
.s6-about {
  padding-top:184px;
  padding-bottom:116px;
}

.s6-about .s6-eyebrow {
  margin-bottom:26px;
}

.s6-about .s6-section-title-row {
  justify-content:flex-start;
  align-items:flex-end;
  gap:clamp(100px, 11vw, 205px);
}

.s6-about .s6-section-title-row h2 {
  max-width:1035px;
  font-size:clamp(3.65rem, 5.02vw, 6.38rem);
  line-height:.91;
  letter-spacing:-.05em;
}

.s6-about .s6-pill-button {
  margin-bottom:-4px;
  transform:translateY(12px);
  white-space:nowrap;
}

.s6-pill-button__arrow {
  color:var(--s6-green);
  font-family:Arial, Helvetica, sans-serif;
  font-size:14px;
  line-height:1;
}

.s6-about-layout {
  margin-top:54px;
  gap:20px;
}

.s6-about-tab {
  min-height:88px;
  padding:18px 20px;
  border-radius:24px;
}

.s6-about-tab.is-active,
.s6-about-tab:hover {
  border-color:rgba(142, 196, 63, .52);
  background:linear-gradient(180deg, rgba(142, 196, 63, .075), rgba(255, 255, 255, .016));
}

.s6-about-tab:before {
  background:radial-gradient(circle at top right, rgba(142, 196, 63, .065), transparent 46%);
}

.s6-about-tab strong {
  font-size:clamp(.95rem, 1.05vw, 1.18rem);
  line-height:1;
}

.s6-about-panel {
  min-height:432px;
  padding:42px 36px 34px;
  background:linear-gradient(180deg, rgba(255, 255, 255, .03), rgba(255, 255, 255, .016));
}

.s6-about-panel:before {
  background:radial-gradient(circle at top right, rgba(142, 196, 63, .055), transparent 38%);
}

.s6-about-panel__content {
  max-width:720px;
  transform:translateY(10px);
}

.s6-about-panel h3 {
  max-width:735px;
  font-size:clamp(2.42rem, 3.68vw, 4.58rem);
  line-height:.95;
}

.s6-about-panel__content div {
  max-width:78%;
  margin-top:30px;
  color:rgba(255, 255, 255, .54);
}

.s6-about-panel__stat {
  opacity:.065;
}

@media (max-width: 1180px) {
  .s6-about {
    padding-top:132px;
  }

  .s6-about .s6-section-title-row {
    gap:22px;
  }

  .s6-about .s6-section-title-row h2 {
    font-size:clamp(3rem, 8vw, 5.4rem);
  }

  .s6-about .s6-pill-button {
    margin-bottom:0;
    transform:none;
  }
}

/* Prevent iOS Safari from zooming the page when a contact field receives focus. */
@media (max-width: 760px) {
  .s6-contact-form input:not([type="hidden"]):not([type="file"]):not([type="checkbox"]):not([type="radio"]),
  .s6-contact-form select,
  .s6-contact-form textarea {
    min-width: 0;
    max-width: 100%;
    font-size: 16px !important;
  }
}

/* Keep the primary contact action visible beside the compact navigation. */
@media (max-width: 1340px) {
  .s6-header:not(.s6-header--employee-mode) .s6-header__inner {
    gap: 10px;
  }

  .s6-header:not(.s6-header--employee-mode) .s6-header-actions {
    display: flex;
    flex: 0 0 auto;
    margin-left: auto;
    gap: 0;
  }

  .s6-header:not(.s6-header--employee-mode) .s6-header-actions::before,
  .s6-header:not(.s6-header--employee-mode) .s6-header-actions .s6-social-row,
  .s6-header:not(.s6-header--employee-mode) .s6-header-actions .s6-employee-nav {
    display: none;
  }

  .s6-header:not(.s6-header--employee-mode) .s6-header-actions .s6-contact-nav {
    min-height: 36px;
    padding: 8px 15px;
    font-size: 8px;
    letter-spacing: .13em;
  }
}

@media (max-width: 380px) {
  .s6-header:not(.s6-header--employee-mode) .s6-header__inner {
    gap: 7px;
    padding-right: 11px;
    padding-left: 11px;
  }

  .s6-header:not(.s6-header--employee-mode) .s6-header-actions .s6-contact-nav {
    min-height: 34px;
    padding: 7px 11px;
    font-size: 7px;
    letter-spacing: .1em;
  }
}

@media (max-width: 760px) {
  .s6-about {
    padding-top:104px;
  }

  .s6-about-layout {
    margin-top:34px;
  }

  .s6-about .s6-section-title-row h2 {
    font-size:clamp(2.8rem, 13vw, 4.2rem);
  }
}

/* =========================================================
   Global Font Rendering and About Typography
========================================================= */
html,
body {

   -webkit-font-smoothing:antialiased;

   -moz-osx-font-smoothing:grayscale;

   text-rendering:optimizeLegibility;

  
}

.s6-about .s6-section-title-row h2,
.s6-about-panel h3,
.s6-about-tab strong {

   font-family:Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;

   font-stretch:normal;

   font-synthesis-weight:none;

  
}

.s6-about .s6-section-title-row h2 {

   font-weight:850;

   font-size:clamp(3.75rem, 5.22vw, 6.55rem);

   line-height:.9;

   letter-spacing:-.062em;

   max-width:1085px;

  
}

.s6-about-panel h3 {

   font-weight:850;

   font-size:clamp(2.58rem, 3.95vw, 4.92rem);

   line-height:.93;

   letter-spacing:-.06em;

   max-width:780px;

  
}

.s6-about-tab strong {

   font-weight:850;

   letter-spacing:-.045em;

  
}


.s6-about .s6-eyebrow,
.s6-about-tab span,
.s6-pill-button,
.s6-about-panel__content > p,
.s6-nav button,
.s6-nav a {

   font-family:Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;

   font-weight:800;

   text-rendering:optimizeLegibility;

  
}

.s6-nav button,
.s6-nav a {

   font-weight:800;

   letter-spacing:.2em;

  
}

.s6-pill-button {

   font-weight:800;

   letter-spacing:.18em;

  
}

/* Body copy */
.s6-about-panel__content div {

   font-family:Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;

   font-weight:500;

   line-height:1.86;

   color:rgba(255, 255, 255, .55);

  
}

@media (max-width: 1180px) {

   .s6-about .s6-section-title-row h2 {

     font-size:clamp(3.05rem, 8.4vw, 5.55rem);

    
  }

  
   .s6-about-panel h3 {

     font-size:clamp(2.35rem, 6.2vw, 4.4rem);

    
  }

  

}

@media (max-width: 760px) {

   .s6-about .s6-section-title-row h2 {

     font-size:clamp(2.8rem, 13vw, 4.25rem);

     letter-spacing:-.055em;

    
  }

  
   .s6-about-panel h3 {

     max-width:100%;

     font-size:clamp(1.85rem, 8.2vw, 2.3rem);

     line-height:.96;

     letter-spacing:-.045em;

     overflow-wrap:anywhere;

    
  }


   .s6-about-panel {
     padding:28px 24px 32px;
   }


   .s6-about-panel__content {
     max-width:100%;
     transform:none;
   }

  

}

.s6-about-panel__stat {

   color: rgba(142, 196, 63, .115) !important;

   opacity: 1 !important;

  
}

/* =========================================================
   Cross-Section Heading Typography
========================================================= */

.s6-portfolio-title-row h2,
.s6-feature-project h3,
.s6-before-after h3,
.s6-gallery-grid--full .s6-gallery-tile strong,
.s6-gallery-grid--full .s6-gallery-stat strong,
.s6-testimonials h2,
.s6-testimonial-feature p,
.s6-careers h2,
.s6-careers-feature h3,
.s6-job-card h3,
.s6-blog h2,
.s6-blog-feature h3,
.s6-blog-list h3,
.s6-contact h2,
.s6-contact-card h3,
.s6-division-modal h3,
.s6-division-modal h4,
.s6-team-modal h3,
.s6-application-modal h3 {

   font-family:Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;

   font-weight:850;

   font-stretch:normal;

   font-synthesis-weight:none;

   text-rendering:optimizeLegibility;

  
}

/* Section titles */
.s6-portfolio-title-row h2,
.s6-testimonials h2,
.s6-careers h2,
.s6-blog h2,
.s6-contact h2 {

   font-weight:850;

   letter-spacing:-.058em;

   line-height:.88;

  
}


.s6-feature-project h3,
.s6-before-after h3,
.s6-testimonial-feature p,
.s6-careers-feature h3,
.s6-blog-feature h3 {

   font-weight:850;

   letter-spacing:-.055em;

   line-height:.92;

  
}

/* Card headings */
.s6-gallery-grid--full .s6-gallery-tile strong,
.s6-job-card h3,
.s6-blog-list h3,
.s6-contact-card h3 {

   font-weight:850;

   letter-spacing:-.045em;

  
}


.s6-portfolio-title-row p,
.s6-gallery-grid--full .s6-gallery-tile small,
.s6-gallery-grid--full .s6-gallery-tile em,
.s6-gallery-grid--full .s6-gallery-stat span,
.s6-testimonial-meta,
.s6-value-row span,
.s6-job-card span,
.s6-blog-list small,
.s6-contact-card p,
.s6-contact-form label,
.s6-portfolio-button,
.s6-careers-feature button,
.s6-blog-feature button {

   font-family:Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;

   font-weight:800;

   text-rendering:optimizeLegibility;

  
}

/* Body copy */
.s6-feature-project p,
.s6-testimonial-list p,
.s6-careers-feature p,
.s6-blog-feature p,
.s6-blog-list p,
.s6-contact-card p,
.s6-division-modal__body > p:not(.s6-modal-kicker),
.s6-team-modal p,
.s6-application-modal p {

   font-family:Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;

   font-weight:500;

   line-height:1.82;

  
}


.s6-gallery-grid--full .s6-gallery-tile strong {

   line-height:.95;

  
}

.s6-gallery-grid--full .s6-gallery-stat strong {

   letter-spacing:-.065em;

  
}

@media (max-width: 760px) {

   .s6-portfolio-title-row h2,
   .s6-testimonials h2,
   .s6-careers h2,
   .s6-blog h2,
   .s6-contact h2 {

     letter-spacing:-.052em;

    
  }

  

}

/* =========================================================
   Section Title Typography Overrides
========================================================= */
/* Section titles */
.s6-section:not(.s6-about):not(.s6-hero) > .s6-container > h2,
.s6-section:not(.s6-about):not(.s6-hero) .s6-section-title-row h2,
.s6-portfolio-title-row h2  {

   font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;

   font-weight: 850 !important;

   font-stretch: normal !important;

   font-synthesis-weight: none !important;

   line-height: .9 !important;

   letter-spacing: -.062em !important;

   text-rendering: optimizeLegibility !important;

   -webkit-font-smoothing: antialiased;

   -moz-osx-font-smoothing: grayscale;

  
}


#testimonials > .s6-container > h2,
#careers > .s6-container > h2,
#blog .s6-section-title-row h2,
#contact .s6-section-title-row h2  {

   font-size: clamp(3.75rem, 5.22vw, 6.55rem) !important;

   max-width: 1085px;

  
}


.s6-portfolio-title-row h2  {

   font-size: clamp(4rem, 7.5vw, 7.65rem) !important;

   line-height: .86 !important;

   letter-spacing: -.064em !important;

  
}


.s6-feature-project h3,
.s6-before-after h3,
.s6-testimonial-feature p,
.s6-careers-feature h3,
.s6-blog-feature h3,
.s6-contact-card h3,
.s6-job-list h3,
.s6-blog-list h3  {

   font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;

   font-weight: 850 !important;

   font-stretch: normal !important;

   font-synthesis-weight: none !important;

   line-height: .93 !important;

   letter-spacing: -.058em !important;

   text-rendering: optimizeLegibility !important;

   -webkit-font-smoothing: antialiased;

   -moz-osx-font-smoothing: grayscale;

  
}

.s6-job-list h3,
.s6-blog-list h3,
.s6-contact-card h3  {

   letter-spacing: -.045em !important;

   line-height: .96 !important;

  
}

.s6-section:not(.s6-hero) .s6-eyebrow,
.s6-section:not(.s6-hero) .s6-section-title-row > p,
.s6-job-list span,
.s6-blog-list span,
.s6-gallery-grid--full .s6-gallery-tile small,
.s6-gallery-grid--full .s6-gallery-tile em,
.s6-gallery-grid--full .s6-gallery-stat span,
.s6-portfolio-button,
.s6-green-button  {

   font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;

   font-weight: 800 !important;

   text-rendering: optimizeLegibility !important;

  
}

@media (max-width: 1180px) {

   #testimonials > .s6-container > h2,
   #careers > .s6-container > h2,
   #blog .s6-section-title-row h2,
   #contact .s6-section-title-row h2 {

     font-size:clamp(3.05rem, 8.4vw, 5.55rem) !important;

    
  }

  

}

@media (max-width: 760px) {

   #testimonials > .s6-container > h2,
   #careers > .s6-container > h2,
   #blog .s6-section-title-row h2,
   #contact .s6-section-title-row h2,
   .s6-portfolio-title-row h2 {

     font-size:clamp(2.8rem, 13vw, 4.25rem) !important;

     letter-spacing:-.055em !important;

    
  }

  

}

/* =========================================================
   Leadership Button and Arrow Icons
========================================================= */
.s6-about .s6-pill-button,
.s6-about button.s6-pill-button {

   display:inline-flex;

   align-items:center;

   gap:12px;

   width:max-content;

   min-height:auto;

   padding:12px 20px;

   border:1px solid rgba(255, 255, 255, .10) !important;

   border-radius:999px;

   background:rgba(255, 255, 255, .035) !important;

   color:rgba(255, 255, 255, .70) !important;

   box-shadow:0 10px 35px rgba(0, 0, 0, .22) !important;

   backdrop-filter:blur(18px);

   -webkit-backdrop-filter:blur(18px);

   transform:translateY(12px);

   transition:border-color .3s var(--s6-ease), background-color .3s var(--s6-ease), color .3s var(--s6-ease), box-shadow .3s var(--s6-ease);

  
}

.s6-about .s6-pill-button:hover,
.s6-about button.s6-pill-button:hover {

   border-color:rgba(142, 196, 63, .40) !important;

   background:rgba(142, 196, 63, .10) !important;

   color:#fff !important;

   box-shadow:0 10px 35px rgba(0, 0, 0, .22) !important;

   transform:translateY(12px);

  
}

.s6-about .s6-pill-button__arrow,
.s6-about .s6-pill-button svg,
.s6-about .s6-pill-button i {

   color:var(--s6-green) !important;

   fill:none !important;

   stroke:var(--s6-green) !important;

   transition:transform .3s var(--s6-ease), color .3s var(--s6-ease), stroke .3s var(--s6-ease);

  
}

.s6-about .s6-pill-button:hover .s6-pill-button__arrow,
.s6-about .s6-pill-button:hover svg,
.s6-about .s6-pill-button:hover i {

   color:var(--s6-green) !important;

   stroke:var(--s6-green) !important;

   transform:translate(2px, -2px);

  
}

/* =========================================================
   Leadership Button Base Styling
========================================================= */
#about .s6-section-title-row .s6-leadership-button,
.s6-about .s6-section-title-row button.s6-leadership-button {

   appearance:none !important;

   -webkit-appearance:none !important;

   display:inline-flex !important;

   align-items:center !important;

   justify-content:center !important;

   gap:12px !important;

   width:max-content !important;

   flex:0 0 auto !important;

   margin:0 0 -4px 0 !important;

   padding:12px 20px !important;

   border:1px solid rgba(255, 255, 255, .10) !important;

   border-radius:999px !important;

   background:rgba(255, 255, 255, .035) !important;

   color:rgba(255, 255, 255, .70) !important;

   box-shadow:0 10px 35px rgba(0, 0, 0, .22) !important;

   backdrop-filter:blur(18px) !important;

   -webkit-backdrop-filter:blur(18px) !important;

   font-family:Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif !important;

   font-size:10px !important;

   font-weight:800 !important;

   line-height:1 !important;

   letter-spacing:.18em !important;

   text-transform:uppercase !important;

   text-decoration:none !important;

   transform:translateY(12px) !important;

   transition:border-color .3s var(--s6-ease), background .3s var(--s6-ease), color .3s var(--s6-ease), box-shadow .3s var(--s6-ease) !important;

  
}

#about .s6-section-title-row .s6-leadership-button:hover,
#about .s6-section-title-row .s6-leadership-button:focus-visible,
.s6-about .s6-section-title-row button.s6-leadership-button:hover,
.s6-about .s6-section-title-row button.s6-leadership-button:focus-visible {

   border-color:rgba(142, 196, 63, .40) !important;

   background:rgba(142, 196, 63, .10) !important;

   color:#fff !important;

   box-shadow:0 10px 35px rgba(0, 0, 0, .22) !important;

   transform:translateY(12px) !important;

   outline:none !important;

  
}

#about .s6-leadership-button .s6-leadership-button__arrow,
#about .s6-leadership-button .s6-pill-button__arrow,
.s6-about .s6-leadership-button .s6-leadership-button__arrow,
.s6-about .s6-leadership-button .s6-pill-button__arrow {

   display:inline-block !important;

   color:#8ec43f !important;

   -webkit-text-fill-color:#8ec43f !important;

   text-shadow:none !important;

   filter:none !important;

   font-family:Arial, Helvetica, sans-serif !important;

   font-size:14px !important;

   font-weight:700 !important;

   line-height:1 !important;

   transform:translate(0, 0) !important;

   transition:transform .3s var(--s6-ease), color .3s var(--s6-ease) !important;

  
}

#about .s6-leadership-button:hover .s6-leadership-button__arrow,
#about .s6-leadership-button:hover .s6-pill-button__arrow,
.s6-about .s6-leadership-button:hover .s6-leadership-button__arrow,
.s6-about .s6-leadership-button:hover .s6-pill-button__arrow {

   color:#8ec43f !important;

   -webkit-text-fill-color:#8ec43f !important;

   transform:translate(2px, -2px) !important;

  
}

@media (max-width: 1180px) {

   #about .s6-section-title-row .s6-leadership-button,
   .s6-about .s6-section-title-row button.s6-leadership-button {

     margin-bottom:0 !important;

     transform:none !important;

    
  }

  
   #about .s6-section-title-row .s6-leadership-button:hover,
   .s6-about .s6-section-title-row button.s6-leadership-button:hover {

     transform:none !important;

    
  }

  

}

/* =========================================================
   Leadership Button Inline Arrow Styling
========================================================= */
#about .s6-leadership-button .s6-leadership-button__arrow,
#about .s6-leadership-button .s6-pill-button__arrow,
.s6-about .s6-leadership-button .s6-leadership-button__arrow,
.s6-about .s6-leadership-button .s6-pill-button__arrow {

   display:inline-flex !important;

   align-items:center !important;

   justify-content:center !important;

   width:16px !important;

   height:16px !important;

   color:#8ec43f !important;

   -webkit-text-fill-color:#8ec43f !important;

   font-size:0 !important;

   line-height:0 !important;

   background:transparent !important;

   border:0 !important;

   box-shadow:none !important;

   text-shadow:none !important;

   filter:none !important;

  
}

#about .s6-leadership-button .s6-leadership-arrow-svg,
.s6-about .s6-leadership-button .s6-leadership-arrow-svg {

   display:block !important;

   width:16px !important;

   height:16px !important;

   color:#8ec43f !important;

   stroke:#8ec43f !important;

   fill:none !important;

   overflow:visible !important;

  
}

#about .s6-leadership-button .s6-leadership-arrow-svg path,
.s6-about .s6-leadership-button .s6-leadership-arrow-svg path {

   stroke:#8ec43f !important;

   fill:none !important;

  
}

#about .s6-leadership-button:hover .s6-leadership-button__arrow,
.s6-about .s6-leadership-button:hover .s6-leadership-button__arrow {

   transform:translate(2px, -2px) !important;

  
}

/* =========================================================
   Shared SVG Arrow Utilities
========================================================= */
.s6-arrow-svg,
.s6-leadership-arrow-svg  {

   display: inline-block !important;

   width: 1em !important;

   height: 1em !important;

   min-width: 1em !important;

   color: currentColor !important;

   stroke: currentColor !important;

   fill: none !important;

   vertical-align: -0.12em !important;

   overflow: visible !important;

   pointer-events: none !important;

  
}

.s6-arrow-svg path,
.s6-leadership-arrow-svg path  {

   stroke: currentColor !important;

   fill: none !important;

  
}

.s6-pill-button__arrow,
[class*="arrow"]  {

   font-family: inherit !important;

   font-variant-emoji: text !important;

   -webkit-text-fill-color: currentColor;

  
}


.s6-leadership-button .s6-pill-button__arrow,
.s6-leadership-button .s6-leadership-button__arrow,
.s6-leadership-button .s6-arrow-svg,
.s6-leadership-button .s6-leadership-arrow-svg  {

   color: #8ec43f !important;

   stroke: #8ec43f !important;

  
}


.s6-pill-button:hover .s6-arrow-svg,
button:hover .s6-arrow-svg,
a:hover .s6-arrow-svg  {

   transform: translate(2px, -2px);

   transition: transform 300ms cubic-bezier(.22, 1, .36, 1);

  
}

.s6-pill-button .s6-arrow-svg,
button .s6-arrow-svg,
a .s6-arrow-svg  {

   transition: transform 300ms cubic-bezier(.22, 1, .36, 1);

  
}

/* =========================================================
   Stable Interaction Consolidation
========================================================= */
.s6-arrow-svg,
.s6-close-svg  {

   display: inline-block;

   width: 1em;

   height: 1em;

   min-width: 1em;

   color: currentColor;

   stroke: currentColor;

   fill: none;

   vertical-align: -0.12em;

   overflow: visible;

   pointer-events: none;

  
}

.s6-arrow-svg path,
.s6-close-svg path  {

   stroke: currentColor;

   fill: none;

  
}

/* Hero typography refinement */
.s6-hero-title,
.s6-hero__title,
.s6-hero-intro h1,
#hero h1,
.s6-hero h1  {

   font-weight: 800;

   letter-spacing: -0.05em;

   line-height: 0.86;

   font-stretch: normal;

   -webkit-font-smoothing: antialiased;

   -moz-osx-font-smoothing: grayscale;

   text-rendering: geometricPrecision;

  
}

/* Division cards */
.s6-division-card  {

   position: relative;

   overflow: hidden;

   color: #fff;

  
}

.s6-division-card__image  {

   z-index: 1;

  
}

.s6-division-card__shade  {

   z-index: 2;

  
}

.s6-division-card__hover  {

   z-index: 3;

   pointer-events: none;

  
}

.s6-division-card::before  {

   pointer-events: none;

  
}

.s6-hero.is-revealed .s6-division-card::before  {

   z-index: 0;

  
}

.s6-division-card .s6-division-card__content  {

   position: absolute;

   left: 2.1rem;

   right: 2.1rem;

   bottom: 2rem;

   z-index: 10;

   display: flex;

   flex-direction: column;

   align-items: flex-start;

   justify-content: flex-end;

   gap: 0;

   text-align: left;

  
}

.s6-division-card .s6-division-card__title-row  {

   order: 1;

   display: inline-flex;

   align-items: flex-start;

   gap: 0.45em;

   width: auto;

   max-width: 100%;

  
}

.s6-division-card .s6-division-card__title  {

   position: static;

   order: 1;

   display: inline-block;

   margin: 0;

   padding: 0;

   font-weight: 800;

   line-height: 0.92;

   letter-spacing: -0.045em;

   color: #fff;

   -webkit-text-fill-color: #fff;

   transition: color .3s cubic-bezier(.22, 1, .36, 1);

  
}

.s6-division-card .s6-division-card__label  {

   position: static;

   order: 2;

   display: inline-block;

   flex: 0 0 auto;

   margin: 0.12em 0 0 0;

   padding: 0;

   transform: none;

   font-size: clamp(0.58rem, 0.72vw, 0.78rem);

   line-height: 1;

   font-weight: 900;

   letter-spacing: 0.14em;

   color: #8ec43f;

   -webkit-text-fill-color: #8ec43f;

   opacity: 1;

  
}

.s6-division-card .s6-division-card__cta  {

   order: 2;

   display: inline-flex;

   align-items: center;

   gap: 0.45rem;

   width: fit-content;

   margin-top: 0.9rem;

   padding: 0;

   clear: none;

   font-size: 0.72rem;

   font-weight: 900;

   line-height: 1;

   letter-spacing: 0.22em;

   text-transform: uppercase;

   color: rgba(255, 255, 255, .78);

   -webkit-text-fill-color: rgba(255, 255, 255, .78);

   opacity: 1;

   filter: none;

   transition:
   color .3s cubic-bezier(.22, 1, .36, 1),
   transform .3s cubic-bezier(.22, 1, .36, 1),
   opacity .3s cubic-bezier(.22, 1, .36, 1);

  
}

.s6-division-card:hover .s6-division-card__title,
.s6-division-card.is-hovered .s6-division-card__title  {

   color: #8ec43f;

   -webkit-text-fill-color: #8ec43f;

  
}

.s6-division-card:hover .s6-division-card__cta,
.s6-division-card:hover .s6-division-card__cta *,
.s6-division-card:hover .s6-division-card__cta svg,
.s6-division-card:hover .s6-division-card__cta svg *,
.s6-division-card.is-hovered .s6-division-card__cta,
.s6-division-card.is-hovered .s6-division-card__cta *,
.s6-division-card.is-hovered .s6-division-card__cta svg,
.s6-division-card.is-hovered .s6-division-card__cta svg *  {

   color: #fff;

   -webkit-text-fill-color: #fff;

   stroke: #fff;

   fill: none;

   opacity: 1;

   filter: none;

  
}


html.s6-hero-locked,
html.s6-hero-locked body,
body.s6-hero-locked  {

   overflow: hidden;

   height: 100%;

  
}

/* Modal close button */
.s6-modal-close  {

   position: absolute;

   top: 20px;

   right: 20px;

   z-index: 40;

   display: grid;

   place-items: center;

   width: 44px;

   height: 44px;

   padding: 0;

   border: 1px solid rgba(255, 255, 255, .15);

   border-radius: 999px;

   background: rgba(0, 0, 0, .55);

   color: rgba(255, 255, 255, .72);

   -webkit-text-fill-color: rgba(255, 255, 255, .72);

   box-shadow: 0 14px 45px rgba(0, 0, 0, .35), inset 0 1px 0 rgba(255, 255, 255, .06);

   backdrop-filter: blur(16px);

   -webkit-backdrop-filter: blur(16px);

   font-size: 0;

   line-height: 0;

   cursor: pointer;

   transition:
   border-color .28s cubic-bezier(.22, 1, .36, 1),
   color .28s cubic-bezier(.22, 1, .36, 1),
   transform .28s cubic-bezier(.22, 1, .36, 1),
   background .28s cubic-bezier(.22, 1, .36, 1);

  
}

.s6-modal-close:hover  {

   border-color: rgba(142, 196, 63, .5);

   background: rgba(0, 0, 0, .68);

   color: #fff;

   -webkit-text-fill-color: #fff;

   transform: translateY(-1px);

  
}

.s6-close-svg  {

   width: 22px;

   height: 22px;

  
}

/* Division modal */
.s6-division-modal__panel  {

   width: min(940px, calc(100vw - 48px));

   max-height: min(82vh, 720px);

   border-radius: 34px;

   overflow: hidden;

   border: 1px solid rgba(255, 255, 255, .14);

   background:
   radial-gradient(circle at 86% 12%, rgba(142, 196, 63, .07), transparent 34%),
   linear-gradient(180deg, rgba(255, 255, 255, .055), rgba(255, 255, 255, .02)),
   rgba(0, 0, 0, .56);

   box-shadow:
   0 35px 140px rgba(0, 0, 0, .68),
   inset 0 1px 0 rgba(255, 255, 255, .09);

   backdrop-filter: blur(28px) saturate(115%);

   -webkit-backdrop-filter: blur(28px) saturate(115%);

  
}

.s6-division-modal__media  {

   position: relative;

   min-height: 400px;

   overflow: hidden;

   background-size: cover;

   background-position: center;

  
}

.s6-division-modal__media::after  {

   content: "";

   position: absolute;

   inset: 0;

   z-index: 1;

   pointer-events: none;

   background: linear-gradient(to top, rgba(0, 0, 0, .82), rgba(0, 0, 0, .24) 52%, transparent 100%);

  
}

.s6-division-modal__media-copy  {

   position: absolute;

   left: 24px;

   right: 24px;

   bottom: 24px;

   z-index: 3;

  
}

.s6-division-modal__media-copy p  {

   margin: 0 0 12px;

   color: #8ec43f;

   -webkit-text-fill-color: #8ec43f;

   font-size: 12px;

   line-height: 1;

   font-weight: 900;

   text-transform: uppercase;

   letter-spacing: .28em;

   text-shadow: 0 4px 18px rgba(0, 0, 0, .72);

  
}

.s6-division-modal__media-copy h3  {

   margin: 0;

   max-width: 94%;

   color: #fff;

   -webkit-text-fill-color: #fff;

   font-size: clamp(2.55rem, 4.2vw, 4.8rem);

   font-weight: 800;

   line-height: .9;

   letter-spacing: -.055em;

   text-transform: uppercase;

   text-shadow: 0 8px 32px rgba(0, 0, 0, .72);

  
}

.s6-division-modal__body  {

   align-self: center;

   padding: clamp(30px, 3.2vw, 40px);

   background:
   radial-gradient(circle at 90% 10%, rgba(142, 196, 63, .055), transparent 34%),
   linear-gradient(180deg, rgba(255, 255, 255, .03), rgba(255, 255, 255, .012));

  
}

.s6-division-modal__body .s6-modal-kicker  {

   margin: 0 0 18px;

   color: #8ec43f;

   -webkit-text-fill-color: #8ec43f;

   font-size: 10.5px;

   line-height: 1;

   font-weight: 900;

   letter-spacing: .24em;

   text-transform: uppercase;

  
}

.s6-division-modal__service-title,
.s6-division-modal__body h3  {

   margin: 0;

   max-width: 520px;

   color: #fff;

   -webkit-text-fill-color: #fff;

   font-size: clamp(1.85rem, 2.3vw, 3rem);

   font-weight: 800;

   line-height: .95;

   letter-spacing: -.04em;

   text-transform: uppercase;

  
}

.s6-division-modal__body > p:not(.s6-modal-kicker)  {

   margin-top: 24px;

   max-width: 520px;

   color: rgba(255, 255, 255, .62);

   font-size: 15px;

   line-height: 1.75;

  
}

.s6-modal-points  {

   margin-top: 28px;

   display: grid;

   gap: 12px;

  
}

.s6-modal-points span  {

   padding: 12px 16px;

   border: 1px solid rgba(255, 255, 255, .10);

   background: rgba(0, 0, 0, .20);

   color: rgba(255, 255, 255, .65);

   font-size: 10.5px;

   font-weight: 900;

   line-height: 1.2;

   letter-spacing: .18em;

   text-transform: uppercase;

  
}

/* Team and application modals */
.s6-team-modal__panel,
.s6-application-modal__panel  {

   position: relative;

   max-height: min(84vh, 760px);

   overflow-y: auto;

   border-radius: 34px;

   border: 1px solid rgba(255, 255, 255, .12);

   background: linear-gradient(180deg, rgba(255, 255, 255, .05), rgba(255, 255, 255, .02));

   box-shadow: 0 35px 140px rgba(0, 0, 0, .68), inset 0 1px 0 rgba(255, 255, 255, .08);

   backdrop-filter: blur(28px);

   -webkit-backdrop-filter: blur(28px);

  
}

/* Mobile division modal rules */
@media (max-width: 760px) {

   .s6-division-card .s6-division-card__content  {

     left: 1.25rem;

     right: 1.25rem;

     bottom: 1.25rem;

    
  }

  

   .s6-division-modal__panel  {

     width: calc(100vw - 28px);

     max-height: 90vh;

     border-radius: 26px;

     overflow-y: auto;

    
  }

  

   .s6-division-modal__media  {

     min-height: 280px;

    
  }

  

   .s6-division-modal__body  {

     padding: 28px 22px 24px;

    
  }

  

   .s6-division-modal__media-copy h3  {

     font-size: clamp(2.25rem, 12vw, 3.8rem);

    
  }

  

   .s6-team-modal__panel,
   .s6-application-modal__panel  {

     border-radius: 24px;

    
  }

  

}

/* =========================================================
   Social Icons and Before/After Slider
========================================================= */
/* Header and contact social icons */
.s6-social-row a  {

   display: grid !important;

   place-items: center !important;

   font-size: 0 !important;

   line-height: 0 !important;

   color: rgba(255, 255, 255, .62) !important;

   -webkit-text-fill-color: currentColor !important;

  
}

.s6-contact-brand-strip .s6-social-row a  {

   color: rgba(255, 255, 255, .78) !important;

   border-color: rgba(255, 255, 255, .14) !important;

   background: rgba(0, 0, 0, .18) !important;

  
}

.s6-social-svg  {

   display: block !important;

   width: 16px !important;

   height: 16px !important;

   color: currentColor !important;

   opacity: 1 !important;

   visibility: visible !important;

  
}

.s6-header .s6-social-svg  {

   width: 14px !important;

   height: 14px !important;

  
}

.s6-social-svg path,
.s6-social-svg rect,
.s6-social-svg circle  {

   vector-effect: non-scaling-stroke;

  
}

.s6-social-row a:hover  {

   color: #8ec43f !important;

   -webkit-text-fill-color: #8ec43f !important;

  
}


#contact,
.s6-contact,
.s6-contact-section  {

   padding-top: clamp(54px, 5.8vw, 84px) !important;

   padding-bottom: clamp(54px, 5.8vw, 84px) !important;

  
}

#contact .s6-container  {

   max-width: 1280px !important;

  
}

#contact .s6-section-title-row  {

   margin-bottom: clamp(22px, 2.6vw, 34px) !important;

  
}

#contact h2  {

   font-size: clamp(3.4rem, 6vw, 6.9rem) !important;

   line-height: .88 !important;

  
}

.s6-contact-layout  {

   gap: clamp(14px, 1.7vw, 24px) !important;

  
}

.s6-contact-card,
.s6-contact-form,
.s6-contact-brand-strip  {

   padding: clamp(16px, 1.55vw, 22px) !important;

  
}

.s6-contact-methods  {

   gap: 9px !important;

  
}

.s6-contact-form .s6-form-grid  {

   gap: 8px !important;

  
}

.s6-contact-form input,
.s6-contact-form textarea,
.s6-contact-form select  {

   padding: 9px 12px !important;

  
}

.s6-contact-form textarea  {

   min-height: 88px !important;

  
}


/* Before/after slider */
.s6-before-after {
  --s6-before-after-position: 52%;
  --s6-before-after-hidden: 48%;
  position: relative !important;
  height: clamp(460px, 44vw, 620px) !important;
  overflow: hidden !important;
  border-radius: 0 !important;
  border: 1px solid rgba(255, 255, 255, .10) !important;
  background: #000 !important;
  box-shadow: 0 28px 90px rgba(0, 0, 0, .40) !important;
}

.s6-before-after__after,
.s6-before-after__before {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  background: none !important;
  background-image: none !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  transform: none !important;
}

.s6-before-after__after {
  z-index: 1 !important;
}

.s6-before-after__before {
  z-index: 2 !important;
  clip-path: inset(0 var(--s6-before-after-hidden, 48%) 0 0) !important;
  -webkit-clip-path: inset(0 var(--s6-before-after-hidden, 48%) 0 0) !important;
  overflow: hidden !important;
  will-change: clip-path !important;
}

.s6-before-after__after img,
.s6-before-after__before img {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center center !important;
  transform: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.s6-before-after__before img {
  filter: grayscale(.2) saturate(.82) contrast(.96) brightness(.84) !important;
}

.s6-before-after__before-image {
  display: none !important;
}

.s6-before-after::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 5 !important;
  pointer-events: none !important;
  background:
    linear-gradient(to top, rgba(0, 0, 0, .70), rgba(0, 0, 0, .08) 48%, rgba(0, 0, 0, .20)),
    radial-gradient(circle at 80% 16%, rgba(142, 196, 63, .07), transparent 32%) !important;
}

.s6-before-after__line,
.s6-before-after__handle {
  left: var(--s6-before-after-position, 52%) !important;
}

.s6-before-after__line {
  z-index: 13 !important;
  width: 2px !important;
  background: #8ec43f !important;
  box-shadow: 0 0 28px rgba(142, 196, 63, .34) !important;
}

.s6-before-after__handle {
  position: absolute !important;
  top: 0 !important;
  bottom: 0 !important;
  z-index: 14 !important;
  width: 2px !important;
  transform: translateX(-50%) !important;
  pointer-events: none !important;
}

.s6-before-after__handle span {
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  display: grid !important;
  place-items: center !important;
  width: 56px !important;
  height: 56px !important;
  transform: translate(-50%, -50%) !important;
  border-radius: 999px !important;
  border: 1px solid rgba(142, 196, 63, .78) !important;
  background: rgba(0, 0, 0, .78) !important;
  box-shadow:
    0 20px 55px rgba(0, 0, 0, .48),
    inset 0 1px 0 rgba(255, 255, 255, .13),
    0 0 32px rgba(142, 196, 63, .18) !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
}

.s6-before-after__handle span::before,
.s6-before-after__handle span::after {
  content: "" !important;
  position: absolute !important;
  width: 8px !important;
  height: 8px !important;
  border-top: 2px solid #fff !important;
  border-left: 2px solid #fff !important;
  opacity: .95 !important;
}

.s6-before-after__handle span::before {
  transform: translateX(-8px) rotate(-45deg) !important;
}

.s6-before-after__handle span::after {
  transform: translateX(8px) rotate(135deg) !important;
}

.s6-before-after__label,
.s6-before-after__content {
  z-index: 12 !important;
}

.s6-before-after__label {
  top: 24px !important;
  border-radius: 0 !important;
  border: 1px solid rgba(255, 255, 255, .16) !important;
  background: rgba(0, 0, 0, .58) !important;
  padding: 11px 15px !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: .22em !important;
}

.s6-before-after__label--before {
  left: 24px !important;
  color: #fff !important;
}

.s6-before-after__label--after {
  right: 24px !important;
  color: #8ec43f !important;
  border-color: rgba(142, 196, 63, .42) !important;
}

.s6-before-after__content {
  left: clamp(24px, 4vw, 36px) !important;
  right: clamp(24px, 4vw, 36px) !important;
  bottom: clamp(28px, 4vw, 40px) !important;
}

.s6-before-after__content h2 {
  max-width: 760px !important;
  font-weight: 800 !important;
}

.s6-before-after input[data-before-range] {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  z-index: 30 !important;
  opacity: 0 !important;
  pointer-events: auto !important;
  cursor: ew-resize !important;
  appearance: none !important;
  -webkit-appearance: none !important;
}

.s6-before-after input[data-before-range]::-webkit-slider-thumb {
  width: 56px !important;
  height: 620px !important;
  cursor: ew-resize !important;
  -webkit-appearance: none !important;
}

.s6-before-after input[data-before-range]::-moz-range-thumb {
  width: 56px !important;
  height: 620px !important;
  border: 0 !important;
  cursor: ew-resize !important;
}

@media (max-width: 760px) {
  .s6-before-after {
    height: 420px !important;
  }

  .s6-before-after__content h2 {
    font-size: clamp(2rem, 11vw, 3.8rem) !important;
  }

  .s6-before-after__handle span {
    width: 48px !important;
    height: 48px !important;
  }
}

/* =========================================================
   Division Modal Layout
========================================================= */
.s6-division-modal__panel  {

   width: min(900px, calc(100vw - 56px)) !important;

   max-height: min(76vh, 650px) !important;

   grid-template-columns: .92fr 1.08fr !important;

  
}

.s6-division-modal__media  {

   min-height: 340px !important;

  
}

.s6-division-modal__body  {

   padding: clamp(24px, 2.65vw, 34px) !important;

  
}


.s6-division-modal__body .s6-modal-kicker  {

   display: flex !important;

   align-items: center !important;

   gap: 14px !important;

   margin: 0 0 16px !important;

   color: #8ec43f !important;

   -webkit-text-fill-color: #8ec43f !important;

   font-size: 10px !important;

   line-height: 1 !important;

   font-weight: 900 !important;

   letter-spacing: .28em !important;

   text-transform: uppercase !important;

   white-space: nowrap !important;

  
}

.s6-division-modal__body .s6-modal-kicker::before  {

   content: "" !important;

   display: block !important;

   width: 42px !important;

   height: 2px !important;

   flex: 0 0 42px !important;

   background: #8ec43f !important;

  
}


.s6-division-modal__body .s6-mini-line  {

   display: none !important;

  
}

.s6-division-modal__service-title,
.s6-division-modal__body h3  {

   max-width: 480px !important;

   font-size: clamp(1.65rem, 2.05vw, 2.55rem) !important;

   line-height: .96 !important;

  
}

.s6-division-modal__body > p:not(.s6-modal-kicker)  {

   margin-top: 18px !important;

   max-width: 500px !important;

   font-size: 14px !important;

   line-height: 1.65 !important;

  
}

.s6-modal-points  {

   margin-top: 22px !important;

   gap: 9px !important;

  
}

.s6-modal-points span  {

   padding: 10px 14px !important;

   font-size: 10px !important;

   letter-spacing: .17em !important;

  
}

.s6-division-modal__body .s6-outline-button,
.s6-division-modal__body .s6-green-button,
.s6-division-modal__body button:not(.s6-modal-close),
.s6-division-modal__body a[class*="button"]  {

   margin-top: 22px !important;

   padding: 13px 20px !important;

  
}

.s6-division-modal__entry-link {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   gap: 12px;
   min-height: 52px;
   margin-top: 22px;
   padding: 15px 24px;
   border: 2px solid var(--s6-green);
   border-radius: 999px;
   background: var(--s6-green);
   color: #0b0f09;
   box-shadow: 0 12px 34px rgba(142, 196, 63, .25);
   font-size: 11px;
   font-weight: 900;
   letter-spacing: .16em;
   text-decoration: none;
   text-transform: uppercase;
   transition: transform .25s ease, background .25s ease, border-color .25s ease, box-shadow .25s ease;
}

.s6-division-modal__entry-link .s6-arrow-svg {
   flex: 0 0 auto;
   transition: transform .25s ease;
}

.s6-division-modal__entry-link:hover,
.s6-division-modal__entry-link:focus-visible {
   border-color: #fff;
   background: #fff;
   color: #0b0f09;
   box-shadow: 0 16px 44px rgba(142, 196, 63, .34);
   transform: translateY(-2px);
}

.s6-division-modal__entry-link:hover .s6-arrow-svg,
.s6-division-modal__entry-link:focus-visible .s6-arrow-svg {
   transform: translate(2px, -2px);
}

.s6-division-modal__entry-link:focus-visible {
   outline: 3px solid rgba(142, 196, 63, .42);
   outline-offset: 4px;
}


.s6-division-modal__media-copy  {

   left: 22px !important;

   right: 22px !important;

   bottom: 22px !important;

  
}

.s6-division-modal__media-copy p  {

   margin-bottom: 10px !important;

   font-size: 10px !important;

  
}

.s6-division-modal__media-copy h3  {

   font-size: clamp(2.25rem, 3.7vw, 4.25rem) !important;

   line-height: .9 !important;

  
}

/* Modal button polish */
.s6-division-modal .s6-modal-close  {

   top: 16px !important;

   right: 16px !important;

   width: 40px !important;

   height: 40px !important;

  
}

.s6-division-modal .s6-close-svg  {

   width: 20px !important;

   height: 20px !important;

  
}

@media (max-width: 760px) {

   .s6-division-modal__panel  {

     width: calc(100vw - 28px) !important;

     max-height: 88vh !important;

     grid-template-columns: 1fr !important;

    
  }

  

   .s6-division-modal__media  {

     min-height: 250px !important;

    
  }

  

   .s6-division-modal__body  {

     padding: 24px 20px 22px !important;

    
  }

  

   .s6-division-modal__body .s6-modal-kicker::before  {

     width: 34px !important;

     flex-basis: 34px !important;

    
  }

  

   .s6-division-modal__media-copy h3  {

     font-size: clamp(2rem, 10vw, 3.4rem) !important;

    
  }

  

}

/* =========================================================
   Division Card Center-Open Motion
========================================================= */
.s6-hero.is-revealed:not(.is-tearing):not(.is-reversing) .s6-division-card.is-opening  {

   animation: s6-card-open-to-center-v50 .78s cubic-bezier(.22, 1, .36, 1) both !important;

   transform-origin: center center !important;

  
}

@keyframes s6-card-open-to-center-v50  {

   0%  {

     transform: translate3d(0, 0, 0) scale(1);

     border-radius: 24px;

     opacity: 1;

    
  }

  

   58%  {

     transform:
     translate3d(
     calc(var(--s6-open-x, 0px) * .66),
     calc(var(--s6-open-y, -64px) * .66),
     0
     )
     scale(1.12);

     border-radius: 36px;

     opacity: 1;

    
  }

  

   100%  {

     transform:
     translate3d(
     var(--s6-open-x, 0px),
     var(--s6-open-y, -64px),
     0
     )
     scale(1.18);

     border-radius: 40px;

     opacity: .98;

    
  }

  

}

/* =========================================================
   Portfolio Featured Project Polish
========================================================= */
.s6-feature-project .s6-eyebrow,
.s6-feature-project__content .s6-eyebrow,
.s6-feature-project p:first-child,
.s6-portfolio-feature .s6-eyebrow  {

   color: #8ec43f !important;

   -webkit-text-fill-color: #8ec43f !important;

   letter-spacing: .28em !important;

   line-height: 1 !important;

   margin-bottom: 18px !important;

  
}

.s6-feature-project h3,
.s6-feature-project__content h3  {

   max-width: 760px !important;

  
}


.s6-feature-project small,
.s6-feature-project__content small,
.s6-meta-row,
.s6-project-meta,
.s6-gallery-tile footer small  {

   display: flex !important;

   align-items: center !important;

   justify-content: flex-start !important;

   gap: 14px !important;

   flex-wrap: wrap !important;

   text-align: left !important;

   line-height: 1 !important;

  
}

.s6-feature-project small span,
.s6-feature-project__content small span,
.s6-meta-row span,
.s6-project-meta span,
.s6-gallery-tile footer small span  {

   display: inline-flex !important;

   align-items: center !important;

   line-height: 1 !important;

   white-space: nowrap !important;

   vertical-align: middle !important;

  
}

.s6-feature-project small span + span::before,
.s6-feature-project__content small span + span::before,
.s6-meta-row span + span::before,
.s6-project-meta span + span::before,
.s6-gallery-tile footer small span + span::before  {

   content: "" !important;

   display: inline-block !important;

   width: 4px !important;

   height: 4px !important;

   margin-right: 14px !important;

   border-radius: 999px !important;

   background: #8ec43f !important;

   opacity: .85 !important;

  
}

.s6-feature-project__content,
.s6-feature-project > div:not(.s6-feature-project__image)  {

   text-align: left !important;

  
}

.s6-feature-project__content > * + *,
.s6-feature-project > div:not(.s6-feature-project__image) > * + *  {

   margin-top: 18px !important;

  
}

@media (max-width: 760px) {

   .s6-feature-project small,
   .s6-feature-project__content small,
   .s6-meta-row,
   .s6-project-meta,
   .s6-gallery-tile footer small  {

     gap: 8px !important;

    
  }

  

   .s6-feature-project small span + span::before,
   .s6-feature-project__content small span + span::before,
   .s6-meta-row span + span::before,
   .s6-project-meta span + span::before,
   .s6-gallery-tile footer small span + span::before  {

     margin-right: 10px !important;

    
  }

  

}

/* =========================================================
   Physical Anchor Navigation
========================================================= */
.s6-scroll-anchor  {

   display: block;

   position: relative;

   height: 0;

   width: 100%;

   overflow: hidden;

   pointer-events: none;

   visibility: hidden;

   top: 40px !important;

  
}

#about-anchor  {
   top: 80px !important;

}

#services-anchor  {
   top: 80px !important;

}

#gallery-anchor  {
   top: 10px !important;

}

#testimonials-anchor  {
   top: -15px !important;

}

#careers-anchor  {
   top: -15px !important;

}

#racing-anchor  {
   top: 40px !important;

}

#contact-anchor  {
   top: -15px !important;

}

#blog-anchor  {
   top: -15px !important;

}

/* =========================================================
   Blog Featured Badge
========================================================= */
.s6-blog-feature__content > .s6-featured-badge  {

   display: inline-flex !important;

   align-items: center !important;

   justify-content: center !important;

   gap: 8px !important;

   width: fit-content !important;

   max-width: 100% !important;

   margin: 0 0 12px !important;

   padding: 10px 18px !important;

   border-radius: 999px !important;

   border: 1px solid rgba(255, 255, 255, .12) !important;

   background: rgba(255, 255, 255, .055) !important;

   color: #fff !important;

   -webkit-text-fill-color: #fff !important;

   font-size: 11px !important;

   font-weight: 800 !important;

   line-height: 1 !important;

   letter-spacing: .18em !important;

   text-transform: uppercase !important;

   white-space: nowrap !important;

   backdrop-filter: blur(14px) !important;

   -webkit-backdrop-filter: blur(14px) !important;

  
}

.s6-blog-feature__content > .s6-featured-badge svg  {

   display: block !important;

   width: 14px !important;

   height: 14px !important;

   min-width: 14px !important;

   min-height: 14px !important;

   flex: 0 0 14px !important;

   color: #8EC640 !important;

   stroke: currentColor !important;

   fill: none !important;

   opacity: 1 !important;

   visibility: visible !important;

  
}

.s6-blog-feature__content > .s6-featured-badge svg path  {

   stroke: currentColor !important;

  
}

.s6-blog-feature__content > .s6-featured-badge span  {

   display: inline-flex !important;

   align-items: center !important;

   line-height: 1 !important;

  
}

@media (max-width: 760px) {

   .s6-blog-feature__content > .s6-featured-badge  {

     padding: 9px 15px !important;

     gap: 8px !important;

     font-size: 10px !important;

    
  }

  

}

/* =========================================================
   Testimonials Polish
========================================================= */
#testimonials  {

   position: relative;

  
}

#testimonials .s6-section-title-row  {

   align-items: end !important;

   gap: clamp(24px, 5vw, 72px) !important;

  
}

#testimonials .s6-section-title-row h2  {

   max-width: 760px !important;

  
}

#testimonials .s6-section-title-row p  {

   max-width: 540px !important;

   color: rgba(255, 255, 255, .68) !important;

   line-height: 1.65 !important;

  
}

/* Testimonials grid */
.s6-testimonials-grid{

   gap: clamp(18px, 2vw, 28px) !important;

  
}

/* Review cards */
.s6-testimonial-card,
#testimonials article{

   position: relative !important;

   overflow: hidden !important;

   border-radius: 30px !important;

   border: 1px solid rgba(255, 255, 255, .095) !important;

   background:
   radial-gradient(circle at 88% 8%, rgba(142, 198, 64, .075), transparent 34%),
   linear-gradient(180deg, rgba(255, 255, 255, .065), rgba(255, 255, 255, .025)) !important;

   box-shadow:
   0 24px 80px rgba(0, 0, 0, .32),
   inset 0 1px 0 rgba(255, 255, 255, .075) !important;

   backdrop-filter: blur(16px) !important;

   -webkit-backdrop-filter: blur(16px) !important;

   transform: translateZ(0) !important;

   transition:
   transform .36s cubic-bezier(.22, 1, .36, 1),
   border-color .36s ease,
   background .36s ease,
   box-shadow .36s ease !important;

  
}


#testimonials article  {

   padding: clamp(24px, 2.2vw, 34px) !important;

  
}

.s6-testimonial-card:hover,
#testimonials article:hover{

   transform: translateY(-5px) !important;

   border-color: rgba(142, 198, 64, .24) !important;

   box-shadow:
   0 32px 100px rgba(0, 0, 0, .42),
   0 0 60px rgba(142, 198, 64, .045),
   inset 0 1px 0 rgba(255, 255, 255, .09) !important;

  
}


#testimonials article::before,
.s6-testimonial-card::before{

   content: "“" !important;

   position: absolute !important;

   top: 16px !important;

   right: 22px !important;

   color: rgba(142, 198, 64, .18) !important;

   font-size: clamp(4rem, 7vw, 7rem) !important;

   line-height: .7 !important;

   font-family: Georgia, serif !important;

   pointer-events: none !important;

  
}

/* Review text */
#testimonials article p,
.s6-testimonial-card p{

   position: relative !important;

   z-index: 2 !important;

   color: rgba(255, 255, 255, .82) !important;

   font-size: clamp(1rem, 1.05vw, 1.08rem) !important;

   line-height: 1.72 !important;

   letter-spacing: -.01em !important;

  
}

/* Reviewer footer */
#testimonials article footer,
.s6-testimonial-card footer{

   position: relative !important;

   z-index: 2 !important;

   display: flex !important;

   align-items: center !important;

   justify-content: space-between !important;

   gap: 18px !important;

   margin-top: clamp(22px, 2vw, 30px) !important;

   padding-top: 18px !important;

   border-top: 1px solid rgba(255, 255, 255, .08) !important;

  
}

#testimonials article footer strong,
.s6-testimonial-card footer strong{

   display: block !important;

   color: #fff !important;

   font-size: .92rem !important;

   font-weight: 800 !important;

   letter-spacing: .01em !important;

  
}

#testimonials article footer span,
.s6-testimonial-card footer span{

   display: block !important;

   margin-top: 5px !important;

   color: rgba(255, 255, 255, .48) !important;

   font-size: .72rem !important;

   font-weight: 700 !important;

   letter-spacing: .14em !important;

   text-transform: uppercase !important;

  
}

/* Featured review */
#testimonials article footer em,
.s6-testimonial-card footer em{

   display: inline-flex !important;

   align-items: center !important;

   justify-content: center !important;

   white-space: nowrap !important;

   font-style: normal !important;

   padding: 8px 12px !important;

   border-radius: 999px !important;

   border: 1px solid rgba(142, 198, 64, .26) !important;

   background: rgba(142, 198, 64, .08) !important;

   color: #8EC640 !important;

   font-size: 10px !important;

   font-weight: 900 !important;

   line-height: 1 !important;

   letter-spacing: .16em !important;

   text-transform: uppercase !important;

  
}
#testimonials [class*="star"]  {

   display: inline-flex !important;

   align-items: center !important;

   gap: 5px !important;

   color: #8EC640 !important;

   margin-bottom: 16px !important;

  
}

/* Mobile testimonials rules */
@media (max-width: 760px) {

   #testimonials .s6-section-title-row  {

     align-items: start !important;

    
  }

  

   #testimonials article,
   .s6-testimonial-card{

     border-radius: 24px !important;

     padding: 24px 20px !important;

    
  }

  

   #testimonials article footer,
   .s6-testimonial-card footer{

     align-items: flex-start !important;

     flex-direction: column !important;

     gap: 12px !important;

    
  }

  

   #testimonials article footer em,
   .s6-testimonial-card footer em{

     padding: 8px 11px !important;

    
  }

  

}

/* =========================================================
   Testimonials Feature Card Typography
========================================================= */
.s6-testimonial-feature  {

   justify-content: space-between !important;

  
}

.s6-testimonial-feature p  {

   font-size: clamp(1.42rem, 1.8vw, 2rem) !important;

   line-height: 1.72 !important;

   font-weight: 500 !important;

   letter-spacing: -0.02em !important;

   color: rgba(255, 255, 255, .94) !important;

   max-width: 95% !important;

  
}

.s6-testimonial-feature .s6-quote-mark,
.s6-testimonial-feature::before  {

   font-size: clamp(6rem, 10vw, 9rem) !important;

   top: 10px !important;

   right: 20px !important;

   color: rgba(142, 198, 64, .16) !important;

  
}

.s6-testimonial-feature footer  {

   margin-top: 42px !important;

  
}

.s6-testimonial-feature footer strong  {

   font-size: 1.12rem !important;

   font-weight: 800 !important;

   letter-spacing: -.01em !important;

  
}

.s6-testimonial-feature footer span  {

   margin-top: 8px !important;

   font-size: .82rem !important;

   letter-spacing: .16em !important;

  
}

.s6-testimonial-feature footer em  {

   padding: 11px 16px !important;

   font-size: 11px !important;

   letter-spacing: .18em !important;

  
}

@media (max-width: 760px) {

   .s6-testimonial-feature p  {

     font-size: 1.12rem !important;

     line-height: 1.78 !important;

    
  }

  

   .s6-testimonial-feature .s6-quote-mark,
   .s6-testimonial-feature::before  {

     font-size: 5.5rem !important;

    
  }

  

}

/* =========================================================
   Testimonials Layout Sizing
========================================================= */
#testimonials .s6-testimonials-layout > .s6-testimonial-feature,
#testimonials article.s6-testimonial-feature  {

   min-height: 0 !important;

   max-height: none !important;

   justify-content: center !important;

  
}

#testimonials .s6-testimonials-layout > .s6-testimonial-feature > p,
#testimonials article.s6-testimonial-feature > p  {

   font-size: clamp(1.22rem, 1.42vw, 1.56rem) !important;

   line-height: 1.62 !important;

   font-weight: 600 !important;

   letter-spacing: -0.022em !important;

   color: rgba(255, 255, 255, .92) !important;

   max-width: 94% !important;

   text-transform: none !important;

  
}

#testimonials .s6-testimonials-layout > .s6-testimonial-feature > footer,
#testimonials article.s6-testimonial-feature > footer  {

   width: 100% !important;

   margin-top: 30px !important;

  
}

#testimonials .s6-testimonials-layout > .s6-testimonial-feature footer strong,
#testimonials article.s6-testimonial-feature footer strong  {

   font-size: 1rem !important;

  
}

#testimonials .s6-testimonials-layout > .s6-testimonial-feature footer span,
#testimonials article.s6-testimonial-feature footer span  {

   font-size: .76rem !important;

  
}

@media (max-width: 760px) {

   #testimonials .s6-testimonials-layout > .s6-testimonial-feature > p,
   #testimonials article.s6-testimonial-feature > p  {

     font-size: 1.08rem !important;

     line-height: 1.68 !important;

    
  }

  

}

/* =========================================================
   Blog Section Polish
========================================================= */
#blog  {

   position: relative;

  
}

#blog .s6-section-title-row  {

   align-items: end !important;

   gap: clamp(24px, 5vw, 72px) !important;

   margin-bottom: clamp(34px, 4vw, 56px) !important;

  
}

#blog .s6-section-title-row h2  {

   max-width: 760px !important;

  
}

#blog .s6-section-title-row p  {

   max-width: 560px !important;

   color: rgba(255, 255, 255, .68) !important;

   line-height: 1.65 !important;

  
}

/* Blog layout spacing */
.s6-blog-layout  {

   gap: clamp(20px, 2.4vw, 34px) !important;

   align-items: stretch !important;

  
}

/* Featured article card */
.s6-blog-feature  {

   position: relative !important;

   overflow: hidden !important;

   border-radius: 34px !important;

   border: 1px solid rgba(255, 255, 255, .105) !important;

   background:
   radial-gradient(circle at 86% 10%, rgba(142, 198, 64, .09), transparent 34%),
   linear-gradient(180deg, rgba(255, 255, 255, .065), rgba(255, 255, 255, .025)) !important;

   box-shadow:
   0 28px 90px rgba(0, 0, 0, .35),
   inset 0 1px 0 rgba(255, 255, 255, .08) !important;

   transform: translateZ(0) !important;

   transition:
   transform .36s cubic-bezier(.22, 1, .36, 1),
   border-color .36s ease,
   box-shadow .36s ease !important;

  
}

.s6-blog-feature:hover  {

   transform: translateY(-5px) !important;

   border-color: rgba(142, 198, 64, .24) !important;

   box-shadow:
   0 36px 110px rgba(0, 0, 0, .45),
   0 0 64px rgba(142, 198, 64, .05),
   inset 0 1px 0 rgba(255, 255, 255, .09) !important;

  
}

.s6-blog-feature__image  {

   transform: scale(1.01) !important;

   filter: saturate(.92) contrast(1.04) brightness(.78) !important;

   transition:
   transform .6s cubic-bezier(.22, 1, .36, 1),
   filter .6s ease !important;

  
}

.s6-blog-feature:hover .s6-blog-feature__image  {

   transform: scale(1.055) !important;

   filter: saturate(1.02) contrast(1.06) brightness(.84) !important;

  
}

.s6-blog-feature__shade  {

   background:
   linear-gradient(90deg, rgba(0, 0, 0, .86), rgba(0, 0, 0, .58) 44%, rgba(0, 0, 0, .25)),
   linear-gradient(180deg, rgba(0, 0, 0, .12), rgba(0, 0, 0, .72)) !important;

  
}

.s6-blog-feature__content  {

   position: relative !important;

   z-index: 4 !important;

   max-width: 680px !important;

   padding: clamp(28px, 3.3vw, 54px) !important;

  
}

.s6-blog-feature__content > p  {

   margin-top: 18px !important;

   color: #8EC640 !important;

   -webkit-text-fill-color: #8EC640 !important;

   font-size: .75rem !important;

   font-weight: 900 !important;

   letter-spacing: .22em !important;

   text-transform: uppercase !important;

   line-height: 1 !important;

  
}

.s6-blog-feature__content h3  {

   margin-top: 18px !important;

   max-width: 620px !important;

   color: #fff !important;

   font-size: clamp(2.1rem, 3.1vw, 4.15rem) !important;

   line-height: .96 !important;

   letter-spacing: -.055em !important;

  
}

.s6-blog-feature__content > div  {

   margin-top: 22px !important;

   max-width: 560px !important;

   color: rgba(255, 255, 255, .72) !important;

   font-size: clamp(.96rem, 1vw, 1.08rem) !important;

   line-height: 1.72 !important;

  
}

.s6-blog-feature__content > a  {

   display: inline-flex !important;

   align-items: center !important;

   gap: 8px !important;

   width: fit-content !important;

   margin-top: 28px !important;

   padding: 13px 18px !important;

   border-radius: 999px !important;

   border: 1px solid rgba(142, 198, 64, .26) !important;

   background: rgba(142, 198, 64, .08) !important;

   color: #fff !important;

   -webkit-text-fill-color: #fff !important;

   font-size: .72rem !important;

   font-weight: 900 !important;

   letter-spacing: .16em !important;

   text-transform: uppercase !important;

   line-height: 1 !important;

   text-decoration: none !important;

   transition:
   background .3s ease,
   border-color .3s ease,
   transform .3s ease !important;

  
}

.s6-blog-feature__content > a:hover  {

   background: rgba(142, 198, 64, .14) !important;

   border-color: rgba(142, 198, 64, .42) !important;

   transform: translateY(-1px) !important;

  
}

.s6-blog-feature__content > a svg  {

   width: 14px !important;

   height: 14px !important;

   color: #8EC640 !important;

   flex-shrink: 0 !important;

  
}


.s6-blog-feature__content > .s6-featured-badge  {

   margin-bottom: 0 !important;

   box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08) !important;

  
}

/* Latest article cards */
.s6-blog-list  {

   gap: clamp(16px, 1.6vw, 22px) !important;

  
}

.s6-blog-list article  {

   position: relative !important;

   overflow: hidden !important;

   border-radius: 26px !important;

   border: 1px solid rgba(255, 255, 255, .09) !important;

   background:
   radial-gradient(circle at 88% 8%, rgba(142, 198, 64, .055), transparent 32%),
   linear-gradient(180deg, rgba(255, 255, 255, .052), rgba(255, 255, 255, .02)) !important;

   box-shadow:
   0 20px 70px rgba(0, 0, 0, .26),
   inset 0 1px 0 rgba(255, 255, 255, .065) !important;

   transition:
   transform .32s cubic-bezier(.22, 1, .36, 1),
   border-color .32s ease,
   box-shadow .32s ease !important;

  
}

.s6-blog-list article:hover  {

   transform: translateY(-4px) !important;

   border-color: rgba(142, 198, 64, .2) !important;

   box-shadow:
   0 28px 88px rgba(0, 0, 0, .36),
   inset 0 1px 0 rgba(255, 255, 255, .08) !important;

  
}

.s6-blog-list article > span  {

   display: inline-flex !important;

   align-items: center !important;

   margin-bottom: 16px !important;

   color: #8EC640 !important;

   -webkit-text-fill-color: #8EC640 !important;

   font-size: .68rem !important;

   font-weight: 900 !important;

   letter-spacing: .18em !important;

   text-transform: uppercase !important;

   line-height: 1 !important;

  
}

.s6-blog-list article h3  {

   color: #fff !important;

   font-size: clamp(1.1rem, 1.25vw, 1.38rem) !important;

   line-height: 1.08 !important;

   letter-spacing: -.035em !important;

   max-width: 92% !important;

  
}

.s6-blog-list article p  {

   margin-top: 14px !important;

   color: rgba(255, 255, 255, .62) !important;

   font-size: .92rem !important;

   line-height: 1.62 !important;

  
}

/* Compact blog feature rules */
@media (max-width: 900px) {

   .s6-blog-feature__content  {

     padding: 30px 24px !important;

    
  }

  

   .s6-blog-feature__content h3  {

     font-size: clamp(2rem, 10vw, 3.1rem) !important;

    
  }

  

}

@media (max-width: 760px) {

   #blog .s6-section-title-row  {

     align-items: start !important;

    
  }

  

   .s6-blog-feature  {

     border-radius: 26px !important;

    
  }

  

   .s6-blog-feature__content > a  {

     padding: 12px 15px !important;

     font-size: .68rem !important;

    
  }

  

   .s6-blog-list article  {

     border-radius: 22px !important;

    
  }

  

}

/* =========================================================
   Subtle Ambient Atmosphere
========================================================= */
/* Global cinematic depth */
body.s6-front-page::before  {

   content: "" !important;

   position: fixed !important;

   inset: 0 !important;

   z-index: -2 !important;

   pointer-events: none !important;

   background:
   radial-gradient(circle at 18% 18%, rgba(142, 198, 64, .045), transparent 32%),
   radial-gradient(circle at 82% 36%, rgba(142, 198, 64, .026), transparent 34%),
   radial-gradient(circle at 50% 92%, rgba(255, 255, 255, .018), transparent 36%) !important;

   opacity: .82 !important;

   transform: translateZ(0) !important;

   animation: s6-atmosphere-drift-v115 24s ease-in-out infinite alternate !important;

  
}


body.s6-front-page::after  {

   content: "" !important;

   position: fixed !important;

   inset: 0 !important;

   z-index: -1 !important;

   pointer-events: none !important;

   background:
   linear-gradient(115deg, rgba(255, 255, 255, .018), transparent 28%, rgba(255, 255, 255, .01) 58%, transparent),
   radial-gradient(circle at 50% 50%, transparent, rgba(0, 0, 0, .2)) !important;

   opacity: .42 !important;

   mix-blend-mode: soft-light !important;

  
}


@keyframes s6-atmosphere-drift-v115  {

   0%  {

     transform: translate3d(-1.2%, -.8%, 0) scale(1);

     opacity: .72;

    
  }

  

   50%  {

     transform: translate3d(.8%, .6%, 0) scale(1.025);

     opacity: .86;

    
  }

  

   100%  {

     transform: translate3d(1.2%, -.4%, 0) scale(1.04);

     opacity: .78;

    
  }

  

}


.s6-section  {

   position: relative;

  
}

.s6-section::before  {

   content: "" !important;

   position: absolute !important;

   inset: -1px 0 auto 0 !important;

   height: 1px !important;

   pointer-events: none !important;

   background: linear-gradient(
   90deg,
   transparent,
   rgba(255, 255, 255, .04),
   rgba(142, 198, 64, .055),
   rgba(255, 255, 255, .035),
   transparent
   ) !important;

   opacity: .45 !important;

  
}


.s6-section--dark  {

   background-blend-mode: normal !important;

  
}

/* Reduced-motion support */
@media (prefers-reduced-motion: reduce) {

   body.s6-front-page::before  {

     animation: none !important;

    
  }

  

}

/* Mobile atmosphere rules */
@media (max-width: 760px) {

   body.s6-front-page::before  {

     opacity: .55 !important;

     animation-duration: 32s !important;

    
  }

  

   body.s6-front-page::after  {

     opacity: .28 !important;

    
  }

  

   .s6-section::before  {

     opacity: .28 !important;

    
  }

  

}

/* =========================================================
   ACF Utility Classes
   Used by future editable fields for safe text colour selection.
   These do not change existing markup unless applied deliberately.
========================================================= */
:root {
  --s6-green-light:#b5ef72;
}

.s6-text-brand-green {
  color:var(--s6-green) !important;
}

.s6-text-light-green {
  color:var(--s6-green-light) !important;
}

.s6-text-white {
  color:var(--s6-white) !important;
}

.s6-text-muted {
  color:rgba(255, 255, 255, .68) !important;
}


/* =========================================================
   Form State Messages + Spam Protection
========================================================= */

.s6-honeypot {
  position: absolute !important;
  left: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.s6-form-message {
  grid-column: 1 / -1;
  border-radius: 14px;
  padding: 0.7rem 0.9rem;
  font-size: 0.86rem;
  line-height: 1.45;
  font-weight: 700;
}

.s6-form-message--success {
  border: 1px solid rgba(142, 198, 64, 0.45);
  background: rgba(142, 198, 64, 0.12);
  color: #38520f;
}

.s6-form-message--error {
  border: 1px solid rgba(175, 48, 48, 0.35);
  background: rgba(175, 48, 48, 0.08);
  color: #7d1f1f;
}

.s6-application-form .s6-form-message {
  margin: 0.85rem 0 1rem;
  color: #f5f7f0;
}

.s6-application-form .s6-form-message--success {
  color: #dff6bf;
}

.s6-application-form .s6-form-message--error {
  color: #ffd0d0;
}

/* =========================================================
   Form UX Polish
   Keeps submit/reset controls visible and validation feedback clear.
========================================================= */
.s6-form-actions {
  grid-column: 1 / -1;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  margin-top: 12px;
}

.s6-form-actions .s6-submit-button,
.s6-form-actions .s6-green-button {
  margin: 0;
}

.s6-clear-button {
  border: 1px solid rgba(0, 0, 0, .14);
  border-radius: 999px;
  background: transparent;
  color: rgba(0, 0, 0, .62);
  padding: 11px 18px;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .16em;
  text-transform: uppercase;
  cursor: pointer;
  transition: .3s;
}

.s6-clear-button:hover {
  border-color: rgba(0, 0, 0, .32);
  background: rgba(0, 0, 0, .045);
  color: #000;
}

.s6-clear-button--dark {
  border-color: rgba(255, 255, 255, .18);
  color: rgba(255, 255, 255, .72);
}

.s6-clear-button--dark:hover {
  border-color: rgba(142, 198, 64, .48);
  background: rgba(142, 198, 64, .1);
  color: #fff;
}

.s6-field-wrap {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.s6-field-wrap input,
.s6-field-wrap select,
.s6-field-wrap textarea {
  width: 100%;
}

.s6-field-error {
  border-color: rgba(175, 48, 48, .65) !important;
  box-shadow: 0 0 0 4px rgba(175, 48, 48, .08) !important;
}

.s6-form-started select:required:invalid {
  border-color: rgba(175, 48, 48, .65) !important;
  box-shadow: 0 0 0 4px rgba(175, 48, 48, .08) !important;
  color: rgba(143, 31, 31, .9);
}

.s6-form-started select:required:invalid option {
  color: #111;
}

.s6-field-valid {
  border-color: rgba(142, 198, 64, .55) !important;
  box-shadow: 0 0 0 4px rgba(142, 198, 64, .08) !important;
}

.s6-field-message {
  min-height: 14px;
  margin-top: 4px;
  padding-left: 4px;
  color: #8f1f1f;
  font-size: 10.5px;
  font-weight: 800;
  line-height: 1.35;
  letter-spacing: .03em;
}

.s6-field-check {
  position: absolute;
  right: 14px;
  top: 18px;
  display: grid;
  width: 20px;
  height: 20px;
  place-items: center;
  border-radius: 999px;
  background: rgba(142, 198, 64, .18);
  color: #5f9f28;
  font-size: 13px;
  font-weight: 900;
  opacity: 0;
  transform: scale(.8);
  transition: opacity .18s ease, transform .18s ease;
  pointer-events: none;
}

.s6-field-wrap--valid .s6-field-check {
  opacity: 1;
  transform: scale(1);
}

.s6-field-wrap--valid input,
.s6-field-wrap--valid select,
.s6-field-wrap--valid textarea {
  padding-right: 44px;
}

.s6-field-wrap--error .s6-field-check {
  opacity: 0;
}


.s6-form-message--server {
  display: none;
}

.s6-form-message--server.is-visible {
  display: block;
}

.s6-form-message--client {
  display: none;
  grid-column: 1 / -1;
}

.s6-form-message--client.is-visible {
  display: block;
}

@media (max-width: 760px) {
  .s6-form-actions {
    flex-direction: column-reverse;
    align-items: stretch;
  }

  .s6-form-actions .s6-submit-button,
  .s6-form-actions .s6-green-button,
  .s6-clear-button {
    width: 100%;
    justify-content: center;
  }
}

/* Contact form compact desktop action row */
@media (min-width: 761px) {
  .s6-contact-form .s6-file-upload--contact-inline {
    min-height: 46px;
    padding: 9px 12px !important;
  }

  .s6-contact-form .s6-form-actions--contact-inline {
    grid-column: auto;
    align-self: stretch;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 0;
  }

  .s6-contact-form .s6-form-actions--contact-inline .s6-clear-button,
  .s6-contact-form .s6-form-actions--contact-inline .s6-submit-button {
    min-height: 46px;
    padding-top: 9px;
    padding-bottom: 9px;
    white-space: nowrap;
  }
}

.s6-blog-page .s6-section-title-row h1 {
  max-width: 900px;
  margin: 0;
  color: #fff;
  font-size: clamp(3rem, 6vw, 6.6rem);
  font-weight: 900;
  line-height: .9;
  letter-spacing: -.06em;
  text-transform: uppercase;
}

.s6-blog-page-hero {
  padding-bottom: clamp(42px, 6vw, 76px);
}
.s6-archive-card__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.s6-archive-card h2 a {
  color: inherit;
  text-decoration: none;
}

.s6-blog-excerpt {
  max-width: 600px;
  margin-top: 22px;
  color: rgba(255, 255, 255, .68);
  font-size: 1rem;
  line-height: 1.72;
}

.s6-blog-category-pills {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
}

.s6-blog-category-pills a,
.s6-pagination .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 10px 14px;
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: 999px;
  background: rgba(255, 255, 255, .04);
  color: rgba(255, 255, 255, .68);
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .14em;
  line-height: 1;
  text-decoration: none;
  text-transform: uppercase;
  transition: background .28s ease, border-color .28s ease, color .28s ease, transform .28s ease;
}

.s6-blog-category-pills a:hover,
.s6-pagination .page-numbers:hover,
.s6-pagination .page-numbers.current {
  border-color: rgba(142, 198, 64, .34);
  background: rgba(142, 198, 64, .09);
  color: #fff;
  transform: translateY(-1px);
}
.s6-blog-image-fallback {
  display: block;
  width: 100%;
  height: 100%;
  min-height: inherit;
  background:
    radial-gradient(circle at 78% 16%, rgba(142, 198, 64, .18), transparent 30%),
    linear-gradient(135deg, rgba(255, 255, 255, .07), rgba(255, 255, 255, .02));
}

.s6-blog-empty-state {
  margin: 0;
  color: rgba(255, 255, 255, .65);
  font-size: 1rem;
  line-height: 1.7;
}

/* Not-found and search pages */
.s6-error-page__section,
.s6-search-page__section {
  min-height: calc(100svh - 110px);
  background:
    radial-gradient(circle at 82% 24%, rgba(142, 198, 64, .12), transparent 25%),
    linear-gradient(145deg, #050505 0%, #090b08 58%, #050505 100%);
}

.s6-error-page__layout {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr);
  align-items: center;
  gap: clamp(48px, 8vw, 140px);
}

.s6-error-page__content {
  max-width: 880px;
}

.s6-error-page__code {
  margin: 0 0 10px;
  color: var(--s6-green);
  font-family: var(--s6-body-font);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .32em;
}

.s6-error-page h1,
.s6-search-page__header h1 {
  max-width: 1050px;
  margin: 0;
  overflow-wrap: anywhere;
  color: #fff;
  font-family: var(--s6-heading-font);
  font-size: clamp(3.5rem, 7.5vw, 8rem);
  font-weight: 900;
  line-height: .86;
  letter-spacing: -.065em;
  text-transform: uppercase;
}

.s6-error-page__intro {
  max-width: 680px;
  margin: 30px 0 0;
  color: rgba(255, 255, 255, .68);
  font-family: var(--s6-body-font);
  font-size: clamp(1rem, 1.35vw, 1.2rem);
  line-height: 1.72;
}

.s6-error-page__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin-top: 30px;
}

.s6-error-page__actions .s6-green-button,
.s6-error-page__actions .s6-outline-button {
  justify-content: center;
  min-height: 48px;
  margin-top: 0;
  padding: 14px 24px;
  border-radius: 999px;
  font-size: 11px;
  letter-spacing: .14em;
}

.s6-error-page__actions .s6-outline-button {
  border-color: rgba(255, 255, 255, .24);
  background: rgba(255, 255, 255, .04);
  color: #fff;
}

.s6-error-page__actions .s6-outline-button:hover {
  border-color: rgba(142, 198, 64, .68);
  background: rgba(142, 198, 64, .1);
}

.s6-error-page__text-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 12px 8px;
  color: rgba(255, 255, 255, .72);
  font-family: var(--s6-body-font);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
  transition: color .25s ease;
}

.s6-error-page__text-link:hover {
  color: var(--s6-green);
}

.s6-error-page__search {
  max-width: 680px;
  margin-top: clamp(44px, 7vw, 78px);
  padding-top: 24px;
  border-top: 1px solid rgba(255, 255, 255, .12);
}

.s6-error-page__search > p {
  margin: 0 0 14px;
  color: rgba(255, 255, 255, .5);
  font-family: var(--s6-body-font);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.s6-site-search-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  width: 100%;
  max-width: 760px;
}

.s6-site-search-form input {
  min-width: 0;
  min-height: 54px;
  border: 1px solid rgba(255, 255, 255, .15);
  border-radius: 999px;
  outline: none;
  background: rgba(255, 255, 255, .055);
  padding: 0 22px;
  color: #fff;
  font-family: var(--s6-body-font);
  font-size: 15px;
  transition: border-color .25s ease, box-shadow .25s ease, background .25s ease;
}

.s6-site-search-form input::placeholder {
  color: rgba(255, 255, 255, .4);
}

.s6-site-search-form input:focus {
  border-color: rgba(142, 198, 64, .65);
  background: rgba(255, 255, 255, .08);
  box-shadow: 0 0 0 4px rgba(142, 198, 64, .09);
}

.s6-site-search-form button {
  min-height: 54px;
  border: 1px solid var(--s6-green);
  border-radius: 999px;
  background: var(--s6-green);
  padding: 0 28px;
  color: #050505;
  font-family: var(--s6-body-font);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
  transition: transform .25s ease, box-shadow .25s ease;
}

.s6-site-search-form button:hover {
  transform: translateY(-1px);
  box-shadow: 0 16px 36px rgba(142, 198, 64, .14);
}

.s6-error-page__marker {
  position: relative;
  display: grid;
  place-items: center;
  min-height: 430px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: 36px;
  background:
    linear-gradient(rgba(255, 255, 255, .035), rgba(255, 255, 255, .01)),
    rgba(0, 0, 0, .18);
  box-shadow: inset 0 1px rgba(255, 255, 255, .05);
}

.s6-error-page__marker::before,
.s6-error-page__marker::after {
  position: absolute;
  width: 70%;
  aspect-ratio: 1;
  border: 1px solid rgba(142, 198, 64, .18);
  border-radius: 50%;
  content: "";
}

.s6-error-page__marker::after {
  width: 48%;
  border-color: rgba(255, 255, 255, .08);
}

.s6-error-page__marker span,
.s6-error-page__marker small {
  position: absolute;
  z-index: 1;
  color: rgba(255, 255, 255, .46);
  font-family: var(--s6-body-font);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .26em;
  text-transform: uppercase;
}

.s6-error-page__marker span {
  top: 36px;
  left: 38px;
}

.s6-error-page__marker small {
  right: 34px;
  bottom: 34px;
}

.s6-error-page__marker strong {
  position: relative;
  z-index: 1;
  color: var(--s6-green);
  font-family: var(--s6-heading-font);
  font-size: clamp(9rem, 17vw, 16rem);
  font-weight: 900;
  line-height: .8;
  text-shadow: 0 0 60px rgba(142, 198, 64, .16);
}

.s6-search-page__header {
  display: grid;
  gap: 24px;
  max-width: 1080px;
  margin-bottom: clamp(50px, 8vw, 90px);
}

.s6-search-page__header .s6-eyebrow {
  margin-bottom: 0;
}

.s6-search-page__header h1 {
  font-size: clamp(3rem, 6.5vw, 7rem);
}

.s6-search-results {
  margin-top: 0;
}

.s6-search-result-card .s6-archive-card__content > div:not(.s6-card-meta-row) {
  color: rgba(255, 255, 255, .62);
  line-height: 1.65;
}

.s6-search-empty {
  max-width: 900px;
  padding: clamp(28px, 5vw, 54px);
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: 28px;
  background: rgba(255, 255, 255, .035);
}

.s6-search-empty__label {
  margin: 0 0 14px;
  color: var(--s6-green) !important;
  font-size: 11px !important;
  font-weight: 900;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.s6-search-empty h2 {
  margin: 0;
  color: #fff;
  font-family: var(--s6-heading-font);
  font-size: clamp(2.4rem, 5vw, 5.4rem);
  line-height: .9;
  letter-spacing: -.055em;
  text-transform: uppercase;
}

.s6-search-empty > p:not(.s6-search-empty__label) {
  max-width: 660px;
  margin: 22px 0 0;
  color: rgba(255, 255, 255, .64);
  font-size: 16px;
  line-height: 1.7;
}

@media (max-width: 980px) {
  .s6-error-page__layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .s6-error-page__marker {
    min-height: 260px;
  }

  .s6-error-page__marker strong {
    font-size: clamp(9rem, 32vw, 15rem);
  }
}

@media (max-width: 640px) {
  .s6-error-page,
  .s6-search-page {
    padding-top: 88px;
  }

  .s6-error-page__section,
  .s6-search-page__section {
    min-height: calc(100svh - 88px);
    padding-top: 72px;
    padding-bottom: 72px;
  }

  .s6-error-page h1,
  .s6-search-page__header h1 {
    font-size: clamp(3rem, 15vw, 5rem);
  }

  .s6-error-page__actions {
    align-items: stretch;
  }

  .s6-error-page__actions .s6-green-button,
  .s6-error-page__actions .s6-outline-button {
    width: 100%;
  }

  .s6-error-page__text-link {
    justify-content: center;
    width: 100%;
  }

  .s6-site-search-form {
    grid-template-columns: minmax(0, 1fr);
  }

  .s6-site-search-form button {
    width: 100%;
  }

  .s6-error-page__marker {
    display: none;
  }

  .s6-search-empty {
    padding: 28px 22px;
    border-radius: 22px;
  }
}

.s6-pagination {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 42px;
}

@media (max-width: 980px) {

  .s6-blog-category-pills {
    justify-content: flex-start;
  }
}

@media (max-width: 640px) {
  .s6-blog-page .s6-section-title-row h1 {
    font-size: clamp(2.6rem, 14vw, 4.5rem);
  }
}

.s6-logo,
.s6-contact-nav {
  text-decoration: none;
}

.s6-blog-closing-cta {
  padding-top: clamp(42px, 6vw, 74px);
}

.s6-blog-closing-cta__inner {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(320px, .9fr);
  gap: clamp(24px, 4vw, 52px);
  align-items: stretch;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .105);
  border-radius: 34px;
  background:
    radial-gradient(circle at 88% 12%, rgba(142, 198, 64, .16), transparent 34%),
    linear-gradient(135deg, rgba(255, 255, 255, .07), rgba(255, 255, 255, .024));
  box-shadow:
    0 28px 90px rgba(0, 0, 0, .34),
    inset 0 1px 0 rgba(255, 255, 255, .075);
}

.s6-blog-closing-cta__copy {
  padding: clamp(30px, 5vw, 62px);
}

.s6-blog-closing-cta__copy h2 {
  max-width: 760px;
  margin: 0;
  color: #fff;
  font-size: clamp(2.6rem, 5.4vw, 6rem);
  font-weight: 900;
  line-height: .9;
  letter-spacing: -.06em;
  text-transform: uppercase;
}

.s6-blog-closing-cta__copy p {
  max-width: 620px;
  margin: 24px 0 0;
  color: rgba(255, 255, 255, .68);
  font-size: 1rem;
  line-height: 1.75;
}

.s6-blog-closing-cta__panel {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 20px;
  padding: clamp(28px, 4vw, 52px);
  border-left: 1px solid rgba(255, 255, 255, .09);
  background: rgba(0, 0, 0, .2);
}

.s6-blog-closing-cta__panel p {
  margin: 0;
  color: rgba(255, 255, 255, .76);
  font-size: 1rem;
  line-height: 1.7;
}

.s6-blog-closing-cta__panel .s6-green-button {
  align-self: flex-start;
}

.s6-blog-closing-cta__details {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding-top: 4px;
}

.s6-blog-closing-cta__details span {
  color: rgba(255, 255, 255, .56);
  font-size: .75rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

@media (max-width: 860px) {
  .s6-blog-closing-cta__inner {
    grid-template-columns: 1fr;
  }

  .s6-blog-closing-cta__panel {
    border-left: 0;
    border-top: 1px solid rgba(255, 255, 255, .09);
  }
}

@media (max-width: 640px) {
  .s6-blog-closing-cta__inner {
    border-radius: 26px;
  }

  .s6-blog-closing-cta__copy,
  .s6-blog-closing-cta__panel {
    padding: 24px;
  }
}

.s6-blog-closing-cta--compact {
  padding-top: clamp(28px, 4vw, 48px);
  padding-bottom: clamp(34px, 5vw, 64px);
}

.s6-blog-closing-cta--compact .s6-blog-closing-cta__inner {
  grid-template-columns: minmax(0, 1fr) auto;
  gap: clamp(18px, 3vw, 34px);
  align-items: center;
  border-radius: 26px;
}

.s6-blog-closing-cta--compact .s6-blog-closing-cta__copy {
  padding: clamp(22px, 3.4vw, 38px);
}

.s6-blog-closing-cta--compact .s6-blog-closing-cta__copy h2 {
  max-width: 680px;
  font-size: clamp(2rem, 3.4vw, 3.8rem);
  line-height: .92;
}

.s6-blog-closing-cta--compact .s6-blog-closing-cta__copy p {
  max-width: 680px;
  margin-top: 14px;
  font-size: .92rem;
  line-height: 1.62;
}

.s6-blog-closing-cta--compact .s6-blog-closing-cta__panel {
  min-width: min(360px, 100%);
  gap: 14px;
  padding: clamp(22px, 3vw, 34px);
}

.s6-blog-closing-cta--compact .s6-blog-closing-cta__details {
  gap: 6px;
}

.s6-single-post-hero {
  padding-bottom: clamp(30px, 5vw, 64px);
}

.s6-single-post-article {
  max-width: 980px;
  margin-right: auto;
  margin-left: auto;
}

.s6-blog-back-link,
.s6-single-post-nav__blog,
.s6-single-post-nav__item a {
  color: rgba(255, 255, 255, .7);
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .14em;
  text-decoration: none;
  text-transform: uppercase;
  transition: color .25s ease, border-color .25s ease, background .25s ease, transform .25s ease;
}

.s6-blog-back-link {
  display: inline-flex;
  margin-bottom: 24px;
}

.s6-blog-back-link:hover,
.s6-single-post-nav__blog:hover,
.s6-single-post-nav__item a:hover {
  color: #fff;
}

.s6-single-post-nav {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  gap: 16px;
  align-items: stretch;
  max-width: 980px;
  margin: clamp(36px, 5vw, 64px) auto 0;
}

.s6-single-post-nav__item a,
.s6-single-post-nav__blog {
  display: flex;
  min-height: 82px;
  padding: 18px;
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: 22px;
  background: rgba(255, 255, 255, .035);
}

.s6-single-post-nav__item a {
  flex-direction: column;
  justify-content: center;
  gap: 8px;
}

.s6-single-post-nav__blog {
  align-items: center;
  justify-content: center;
  white-space: nowrap;
}

.s6-single-post-nav__item span {
  color: rgba(255, 255, 255, .48);
  font-size: .62rem;
  letter-spacing: .16em;
}

.s6-single-post-nav__item strong {
  display: block;
  overflow: hidden;
  color: #fff;
  font-size: .92rem;
  line-height: 1.25;
  text-overflow: ellipsis;
  text-transform: none;
  letter-spacing: 0;
}

.s6-single-post-nav__item--next a {
  text-align: right;
}

.s6-single-post-nav__item:empty {
  visibility: hidden;
}

.s6-single-post-nav__item a:hover,
.s6-single-post-nav__blog:hover {
  border-color: rgba(142, 198, 64, .32);
  background: rgba(142, 198, 64, .075);
  transform: translateY(-1px);
}

@media (max-width: 860px) {
  .s6-blog-closing-cta--compact .s6-blog-closing-cta__inner {
    grid-template-columns: 1fr;
  }

  .s6-blog-closing-cta--compact .s6-blog-closing-cta__panel {
    border-left: 0;
    border-top: 1px solid rgba(255, 255, 255, .09);
  }

  .s6-single-post-nav {
    grid-template-columns: 1fr;
  }

  .s6-single-post-nav__item:empty {
    display: none;
  }
}


#blog .s6-blog-feature {
  height: 430px !important;
  min-height: 430px !important;
}

#blog .s6-blog-feature__content {
  min-height: 100% !important;
  height: 100% !important;
  justify-content: flex-end !important;
}

#blog .s6-blog-feature__content h3 {
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

#blog .s6-blog-feature__content > div {
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

@media (max-width: 900px) {
  #blog .s6-blog-feature {
    height: auto !important;
    min-height: 390px !important;
  }
}

/* =========================================================
   Homepage Blog Fit Correction
   Keeps dynamic post content inside the locked homepage card.
========================================================= */
#blog .s6-blog-layout {
  align-items: start !important;
}

#blog .s6-blog-feature {
  margin-top: 6px !important;
}

#blog .s6-blog-feature__content {
  padding: clamp(26px, 2.45vw, 40px) !important;
}

#blog .s6-blog-feature__content h3 {
  font-size: clamp(1.9rem, 2.45vw, 3.05rem) !important;
  line-height: 1.02 !important;
  letter-spacing: -.048em !important;
  max-width: 570px !important;
}

#blog .s6-blog-feature__content > div {
  margin-top: 16px !important;
  font-size: clamp(.9rem, .92vw, 1rem) !important;
  line-height: 1.58 !important;
  -webkit-line-clamp: 2 !important;
}

#blog .s6-blog-feature__content > a {
  margin-top: 24px !important;
}

@media (max-width: 900px) {
  #blog .s6-blog-feature {
    margin-top: 0 !important;
  }

  #blog .s6-blog-feature__content h3 {
    font-size: clamp(2rem, 8vw, 3rem) !important;
  }
}


#blog .s6-blog-list {
  height: 430px !important;
  min-height: 430px !important;
  display: grid !important;
  grid-template-rows: repeat(2, minmax(0, 1fr)) !important;
  align-self: start !important;
}

#blog .s6-blog-list article {
  min-height: 0 !important;
  height: auto !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
  padding: clamp(22px, 2vw, 30px) !important;
}

#blog .s6-blog-list article > span {
  flex: 0 0 auto !important;
  margin-bottom: 14px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  max-width: 100% !important;
}

#blog .s6-blog-list article h3 {
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  margin: 0 !important;
  max-width: 100% !important;
}

#blog .s6-blog-list article p {
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  margin-top: 14px !important;
}

#blog .s6-blog-list article a {
  margin-top: auto !important;
  padding-top: 16px !important;
}

@media (max-width: 900px) {
  #blog .s6-blog-list {
    height: auto !important;
    min-height: 0 !important;
    grid-template-rows: none !important;
  }

  #blog .s6-blog-list article {
    min-height: 190px !important;
  }
}

/* =========================================================
   Homepage Blog Typography Fit
   Keeps homepage blog titles readable inside fixed card sizes.
========================================================= */
#blog .s6-blog-feature__content h3 {
  font-size: clamp(1.65rem, 2.05vw, 2.55rem) !important;
  line-height: 1.04 !important;
  letter-spacing: -.044em !important;
  max-width: 540px !important;
}

#blog .s6-blog-feature__content > div {
  font-size: clamp(.86rem, .86vw, .95rem) !important;
  line-height: 1.52 !important;
  margin-top: 14px !important;
  -webkit-line-clamp: 2 !important;
}

#blog .s6-blog-feature__content > p {
  font-size: .68rem !important;
  letter-spacing: .2em !important;
  margin-top: 14px !important;
}

#blog .s6-blog-feature__content > a {
  margin-top: 20px !important;
}

#blog .s6-blog-list article {
  padding: clamp(18px, 1.55vw, 24px) !important;
}

#blog .s6-blog-list article > span {
  font-size: .62rem !important;
  letter-spacing: .19em !important;
  padding: 6px 14px !important;
  margin-bottom: 12px !important;
  align-self: flex-start !important;
}

#blog .s6-blog-list article h3 {
  font-size: clamp(1rem, 1.15vw, 1.34rem) !important;
  line-height: 1.04 !important;
  letter-spacing: -.035em !important;
  -webkit-line-clamp: 2 !important;
}

#blog .s6-blog-list article p {
  font-size: clamp(.82rem, .84vw, .94rem) !important;
  line-height: 1.48 !important;
  margin-top: 10px !important;
  -webkit-line-clamp: 2 !important;
}

#blog .s6-blog-list article a {
  font-size: .62rem !important;
  letter-spacing: .2em !important;
  padding-top: 12px !important;
}

@media (max-width: 900px) {
  #blog .s6-blog-feature__content h3 {
    font-size: clamp(1.9rem, 7vw, 2.7rem) !important;
  }

  #blog .s6-blog-list article h3 {
    font-size: clamp(1.35rem, 5vw, 1.9rem) !important;
  }
}

.s6-blog-page .s6-archive-grid {
  gap: clamp(20px, 2.2vw, 30px);
}

.s6-blog-page .s6-archive-card {
  display: flex;
  flex-direction: column;
  min-height: 520px;
}

.s6-blog-page .s6-archive-card__image {
  height: clamp(210px, 18vw, 275px);
  flex: 0 0 auto;
}

.s6-blog-page .s6-archive-card__content {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  padding: clamp(22px, 2.2vw, 30px);
}

.s6-blog-page .s6-archive-card__content p:first-child {
  margin-bottom: 14px;
  color: var(--s6-green);
  font-size: .62rem;
  font-weight: 900;
  letter-spacing: .16em;
  line-height: 1;
  text-transform: uppercase;
}

.s6-blog-page .s6-archive-card h2 {
  margin: 0;
  font-size: clamp(1.45rem, 2.05vw, 2.35rem);
  font-weight: 900;
  line-height: 1.02;
  letter-spacing: -.045em;
  text-transform: uppercase;
}

.s6-blog-page .s6-archive-card__content div {
  display: -webkit-box;
  overflow: hidden;
  margin-top: 13px;
  color: rgba(255, 255, 255, .62);
  font-size: .93rem;
  font-weight: 500;
  line-height: 1.55;
  letter-spacing: 0;
  text-transform: none;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
}

.s6-blog-page .s6-archive-card__link {
  margin-top: auto;
  padding-top: 12px;
}

@media (max-width: 1180px) {
  .s6-blog-page .s6-archive-card {
    min-height: 480px;
  }

  .s6-blog-page .s6-archive-card h2 {
    font-size: clamp(1.35rem, 3vw, 2.05rem);
  }
}

@media (max-width: 760px) {
  .s6-blog-page .s6-archive-card {
    min-height: auto;
  }

  .s6-blog-page .s6-archive-card__image {
    height: 230px;
  }

  .s6-blog-page .s6-archive-card h2 {
    font-size: clamp(1.45rem, 8vw, 2.25rem);
  }
}

.s6-blog-page .s6-archive-card {
  min-height: 520px;
}

.s6-blog-page .s6-archive-card__content {
  min-height: 245px;
  padding: clamp(20px, 2vw, 28px);
}

.s6-blog-page .s6-archive-card h2 {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.s6-blog-page .s6-archive-card__content div {
  flex: 1 1 auto;
  margin-top: 12px;
  -webkit-line-clamp: 7;
}

.s6-blog-page .s6-archive-card__content div p {
  margin: 0;
  color: rgba(255, 255, 255, .62);
  font-size: .9rem;
  font-weight: 500;
  line-height: 1.52;
  letter-spacing: 0;
  text-transform: none;
}

.s6-blog-page .s6-archive-card__link {
  margin-top: auto;
  padding-top: 8px;
  padding-bottom: 2px;
}

@media (max-width: 1180px) {
  .s6-blog-page .s6-archive-card__content div {
    -webkit-line-clamp: 6;
  }
}

@media (max-width: 760px) {
  .s6-blog-page .s6-archive-card__content {
    min-height: auto;
  }

  .s6-blog-page .s6-archive-card__content div {
    -webkit-line-clamp: 5;
  }
}


.s6-blog-page .s6-archive-card__content {
  display: grid;
  grid-template-rows: auto auto 1fr auto;
  row-gap: 0;
}

.s6-blog-page .s6-archive-card h2 {
  margin-bottom: 0;
}

.s6-blog-page .s6-archive-card__content div {
  flex: none;
  min-height: 0;
  margin-top: 12px;
}

.s6-blog-page .s6-archive-card.s6-title-lines-1 .s6-archive-card__content div {
  -webkit-line-clamp: 8;
}

.s6-blog-page .s6-archive-card.s6-title-lines-2 .s6-archive-card__content div {
  -webkit-line-clamp: 7;
}

.s6-blog-page .s6-archive-card.s6-title-lines-3 .s6-archive-card__content div,
.s6-blog-page .s6-archive-card.s6-title-lines-more .s6-archive-card__content div {
  -webkit-line-clamp: 6;
}

.s6-blog-page .s6-archive-card__link {
  justify-self: end;
  margin-top: 10px;
  padding-top: 0;
  padding-bottom: 0;
  text-align: right;
}

@media (max-width: 1180px) {
  .s6-blog-page .s6-archive-card.s6-title-lines-1 .s6-archive-card__content div {
    -webkit-line-clamp: 7;
  }

  .s6-blog-page .s6-archive-card.s6-title-lines-2 .s6-archive-card__content div,
  .s6-blog-page .s6-archive-card.s6-title-lines-3 .s6-archive-card__content div,
  .s6-blog-page .s6-archive-card.s6-title-lines-more .s6-archive-card__content div {
    -webkit-line-clamp: 6;
  }
}

@media (max-width: 760px) {
  .s6-blog-page .s6-archive-card__content {
    display: flex;
  }

  .s6-blog-page .s6-archive-card__link {
    align-self: flex-start;
    margin-top: 14px;
    text-align: left;
  }
}

.s6-blog-archive-listing {
  padding-top: clamp(130px, 13vw, 190px);
}

.s6-blog-archive-description {
  max-width: 680px;
  margin-top: 22px;
  color: rgba(255, 255, 255, .58);
  font-size: clamp(.95rem, 1vw, 1.08rem);
  font-weight: 650;
  line-height: 1.6;
  letter-spacing: .02em;
}

.s6-blog-archive-description p {
  margin: 0;
}

.s6-blog-archive-listing {
  padding-top: clamp(96px, 9vw, 138px);
}

.s6-blog-archive-listing .s6-eyebrow {
  margin-bottom: clamp(18px, 2vw, 28px);
}

.s6-blog-archive-listing .s6-blog-archive-description {
  margin-top: 16px;
}

@media (max-width: 900px) {
  .s6-blog-archive-listing {
    padding-top: clamp(88px, 18vw, 120px);
  }
}

.s6-blog-archive-listing {
  padding-top: clamp(58px, 5.25vw, 86px);
}

.s6-blog-archive-listing .s6-container {
  display: flex;
  flex-direction: column;
}

.s6-blog-archive-listing .s6-eyebrow {
  margin-bottom: clamp(12px, 1.25vw, 18px);
}

.s6-blog-archive-listing .s6-blog-category-pills {
  margin-bottom: clamp(4px, .8vw, 10px);
}

.s6-blog-archive-description {
  max-width: 620px;
  margin-top: 14px;
  font-size: clamp(.9rem, .9vw, 1rem);
  line-height: 1.55;
}

.s6-blog-page .s6-archive-card {
  min-height: 500px;
  border-color: rgba(255, 255, 255, .1);
  background: linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.015));
}

.s6-blog-page .s6-archive-card__content {
  grid-template-rows: auto auto minmax(0, 1fr) auto;
  min-height: 232px;
  padding: clamp(20px, 1.8vw, 26px);
}

.s6-blog-page .s6-archive-card__content p:first-child {
  margin-bottom: 12px;
  font-size: .58rem;
  letter-spacing: .18em;
}

.s6-blog-page .s6-archive-card h2 {
  font-size: clamp(1.45rem, 1.65vw, 2rem);
  line-height: 1.04;
  letter-spacing: -.04em;
  -webkit-line-clamp: 2;
}

.s6-blog-page .s6-archive-card__content div {
  align-self: stretch;
  margin-top: 12px;
  color: rgba(255, 255, 255, .64);
  font-size: clamp(.84rem, .82vw, .94rem);
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: .005em;
  text-transform: none;
}

.s6-blog-page .s6-archive-card.s6-title-lines-1 .s6-archive-card__content div {
  -webkit-line-clamp: 9;
}

.s6-blog-page .s6-archive-card.s6-title-lines-2 .s6-archive-card__content div {
  -webkit-line-clamp: 8;
}

.s6-blog-page .s6-archive-card.s6-title-lines-3 .s6-archive-card__content div,
.s6-blog-page .s6-archive-card.s6-title-lines-more .s6-archive-card__content div {
  -webkit-line-clamp: 7;
}

.s6-blog-page .s6-archive-card__link {
  align-self: end;
  justify-self: end;
  margin-top: clamp(8px, 1vw, 12px);
  color: rgba(255, 255, 255, .72);
  font-size: .62rem;
  letter-spacing: .18em;
  text-align: right;
}

@media (max-width: 1180px) {

  .s6-blog-page .s6-archive-card {
    min-height: 475px;
  }
}

@media (max-width: 900px) {
  .s6-blog-archive-listing {
    padding-top: clamp(72px, 16vw, 104px);
  }
}

@media (max-width: 760px) {
  .s6-blog-page .s6-archive-card {
    min-height: auto;
  }

  .s6-blog-page .s6-archive-card__content {
    min-height: auto;
  }

  .s6-blog-page .s6-archive-card__link {
    align-self: flex-start;
    text-align: left;
  }
}


.s6-blog-archive-listing {
  padding-top: clamp(24px, 2.4vw, 42px);
}

.s6-blog-archive-listing .s6-eyebrow {
  margin-bottom: clamp(8px, 1vw, 12px);
}

.s6-blog-archive-listing .s6-blog-category-pills {
  align-self: flex-end;
  margin-bottom: 2px;
}

.s6-blog-archive-listing .s6-blog-category-pills a.s6-blog-category-pill-all {
  border-color: rgba(142, 196, 63, .46);
  color: rgba(181, 239, 114, .96);
}

@media (max-width: 900px) {
  .s6-blog-archive-listing {
    padding-top: clamp(64px, 14vw, 92px);
  }

  .s6-blog-archive-listing .s6-blog-category-pills {
    align-self: flex-start;
  }
}

.s6-blog-page .s6-blog-page-hero {
  padding-top: clamp(92px, 7.5vw, 128px) !important;
  padding-bottom: clamp(28px, 3.4vw, 44px) !important;
}

.s6-blog-page .s6-section-title-row {
  align-items: flex-end;
  gap: clamp(28px, 4vw, 64px);
}

.s6-blog-page .s6-section-title-row h1 {
  max-width: 760px;
  font-size: clamp(2.35rem, 4vw, 4.65rem) !important;
  line-height: .94;
  letter-spacing: -.058em;
}

.s6-blog-page .s6-section-title-row > p {
  max-width: 520px;
  margin-bottom: .35rem;
  font-size: clamp(.82rem, .9vw, .98rem);
  line-height: 1.55;
}

.s6-blog-page .s6-blog-page-listing {
  padding-top: clamp(34px, 4vw, 56px) !important;
}

@media (max-width: 980px) {
  .s6-blog-page .s6-section-title-row {
    align-items: flex-start;
  }
}

@media (max-width: 640px) {
  .s6-blog-page .s6-blog-page-hero {
    padding-top: clamp(82px, 18vw, 112px) !important;
  }

  .s6-blog-page .s6-section-title-row h1 {
    font-size: clamp(2.25rem, 12vw, 3.8rem) !important;
  }
}

.s6-blog-page .s6-blog-page-hero {
  padding-top: clamp(42px, 4.2vw, 70px) !important;
  padding-bottom: clamp(18px, 2.4vw, 32px) !important;
}

.s6-blog-page .s6-section-title-row {
  gap: clamp(22px, 3vw, 46px);
}

.s6-blog-page .s6-section-title-row h1 {
  max-width: 700px;
  font-size: clamp(2.25rem, 3.55vw, 4.15rem) !important;
  line-height: .92;
}

.s6-blog-page .s6-section-title-row > p {
  max-width: 470px;
  margin-bottom: .15rem;
  font-size: clamp(.78rem, .82vw, .92rem);
  line-height: 1.48;
}

.s6-blog-page .s6-blog-page-listing {
  padding-top: clamp(24px, 3vw, 40px) !important;
}

@media (min-width: 1180px) {
  .s6-blog-page .s6-blog-page-hero .s6-container {
    transform: translateY(-18px);
  }
}

@media (max-width: 980px) {
  .s6-blog-page .s6-blog-page-hero {
    padding-top: clamp(70px, 12vw, 98px) !important;
  }
}

.s6-blog-page.s6-basic-page {
  padding-top: clamp(58px, 4.8vw, 78px) !important;
}

.s6-blog-page .s6-blog-page-hero {
  padding-top: clamp(14px, 1.8vw, 26px) !important;
  padding-bottom: clamp(14px, 1.8vw, 24px) !important;
}

.s6-blog-page .s6-section-title-row {
  align-items: flex-end;
  gap: clamp(20px, 2.6vw, 40px);
}

.s6-blog-page .s6-section-title-row h1 {
  max-width: 980px;
  font-size: clamp(2.05rem, 3.05vw, 3.65rem) !important;
  line-height: .94;
  letter-spacing: -.058em;
}

.s6-blog-page .s6-section-title-row > p {
  max-width: 500px;
  font-size: clamp(.82rem, .9vw, 1rem);
  line-height: 1.52;
}

@media (min-width: 1180px) {
  .s6-blog-page .s6-blog-page-hero .s6-container {
    transform: translateY(-10px);
  }
}

@media (max-width: 980px) {
  .s6-blog-page.s6-basic-page {
    padding-top: 86px !important;
  }

  .s6-blog-page .s6-section-title-row h1 {
    max-width: 760px;
    font-size: clamp(2.2rem, 8vw, 4rem) !important;
  }
}


/* =========================================================
   Single Blog Editorial Reading Experience
========================================================= */
.s6-reading-progress {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10000;
  width: 100%;
  height: 3px;
  pointer-events: none;
  background: transparent;
}

.s6-reading-progress span {
  display: block;
  width: 0;
  height: 100%;
  background: linear-gradient(90deg, rgba(142, 198, 64, .2), rgba(142, 198, 64, .95));
  box-shadow: 0 0 18px rgba(142, 198, 64, .38);
}

.s6-single-post-hero {
  padding-top: clamp(104px, 10vw, 148px);
}

.s6-single-post-header {
  max-width: 960px;
  margin: 0 auto;
}

.s6-single-post-header h1 {
  max-width: 980px;
  margin-top: 16px;
  font-size: clamp(3rem, 6vw, 6.8rem);
  line-height: .88;
  letter-spacing: -.065em;
}

.s6-single-post-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin-top: 22px;
}

.s6-single-post-meta span,
.s6-single-post-meta a {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 8px 12px;
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: 999px;
  background: rgba(255, 255, 255, .045);
  color: rgba(255, 255, 255, .66);
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .13em;
  line-height: 1;
  text-decoration: none;
  text-transform: uppercase;
}

.s6-single-post-meta a {
  border-color: rgba(142, 198, 64, .22);
  color: rgba(184, 226, 126, .86);
}

.s6-single-post-meta a:hover {
  border-color: rgba(142, 198, 64, .48);
  color: #fff;
}

.s6-post-featured-image {
  position: relative;
  max-width: 1120px;
  max-height: none;
  margin: clamp(34px, 5vw, 64px) auto 0;
  border: 1px solid rgba(255, 255, 255, .09);
  border-radius: 30px;
  background: rgba(255, 255, 255, .035);
  box-shadow: 0 30px 90px rgba(0, 0, 0, .36);
}

.s6-post-featured-image::after {
  content: '';
  position: absolute;
  inset: auto 0 0;
  height: 38%;
  background: linear-gradient(180deg, transparent, rgba(0, 0, 0, .32));
  pointer-events: none;
}

.s6-post-featured-image img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 8.2;
  height: auto;
  object-fit: cover;
}

.s6-single-post-body {
  max-width: 820px;
  margin: clamp(34px, 5vw, 62px) auto 0;
  color: rgba(255, 255, 255, .74);
  font-size: clamp(1.02rem, 1.15vw, 1.16rem);
  line-height: 1.86;
}

.s6-single-post-body > *:first-child {
  margin-top: 0;
}

.s6-single-post-body p {
  margin: 0 0 1.55em;
}

.s6-single-post-body h2,
.s6-single-post-body h3,
.s6-single-post-body h4 {
  max-width: 760px;
  margin: 2.15em 0 .72em;
  color: #fff;
  font-weight: 900;
  letter-spacing: -.035em;
  line-height: 1.02;
}

.s6-single-post-body h2 {
  font-size: clamp(2rem, 3vw, 3.2rem);
}

.s6-single-post-body h3 {
  font-size: clamp(1.45rem, 2.1vw, 2.25rem);
}

.s6-single-post-body a {
  color: rgba(184, 226, 126, .95);
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
}

.s6-single-post-body blockquote {
  margin: 2.2em 0;
  padding: 24px 28px;
  border-left: 3px solid rgba(142, 198, 64, .78);
  border-radius: 0 22px 22px 0;
  background: linear-gradient(135deg, rgba(142, 198, 64, .095), rgba(255, 255, 255, .035));
  color: rgba(255, 255, 255, .88);
  font-size: clamp(1.18rem, 1.8vw, 1.55rem);
  font-weight: 700;
  line-height: 1.45;
}

.s6-single-post-body ul,
.s6-single-post-body ol {
  margin: 0 0 1.65em 1.2em;
  padding: 0;
}

.s6-single-post-body li {
  margin-bottom: .65em;
  padding-left: .25em;
}

@media (max-width: 760px) {
  .s6-single-post-hero {
    padding-top: 96px;
  }

  .s6-single-post-header h1 {
    font-size: clamp(2.55rem, 12vw, 4.8rem);
  }

  .s6-post-featured-image {
    border-radius: 24px;
  }

  .s6-post-featured-image img {
    aspect-ratio: 4 / 3;
  }

  .s6-single-post-body {
    font-size: 1rem;
    line-height: 1.78;
  }
}


.s6-card-meta-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px 14px;
  margin: 0 0 18px;
  color: rgba(255, 255, 255, .46);
  font-size: .66rem;
  font-weight: 800;
  letter-spacing: .18em;
  line-height: 1;
  text-transform: uppercase;
}

.s6-card-category-pill {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  min-height: 30px;
  padding: 8px 14px 7px;
  border: 1px solid rgba(255, 255, 255, .18);
  border-radius: 999px;
  background: rgba(255, 255, 255, .045);
  color: rgba(255, 255, 255, .88);
  text-decoration: none;
  transition: border-color .22s ease, background .22s ease, color .22s ease, transform .22s ease;
}

.s6-card-category-pill:hover {
  border-color: rgba(142, 196, 63, .62);
  background: rgba(142, 196, 63, .10);
  color: #fff;
  transform: translateY(-1px);
}

.s6-home-blog-meta,
.s6-home-blog-card-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px 14px;
}

.s6-home-blog-meta span,
.s6-home-blog-card-meta > span,
.s6-home-blog-card-meta > a {
  color: rgba(255, 255, 255, .56);
  font-size: .66rem;
  font-weight: 850;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.s6-home-blog-card-meta > a {
  display: inline-flex;
  align-items: center;
  padding: 7px 12px 6px;
  border: 1px solid rgba(142, 196, 63, .45);
  border-radius: 999px;
  background: rgba(142, 196, 63, .08);
  color: rgba(181, 239, 114, .92);
  text-decoration: none;
}

.s6-blog-list article > span {
  display: none;
}

@media (max-width: 760px) {
  .s6-card-meta-row {
    gap: 8px 10px;
    font-size: .58rem;
  }

  .s6-card-category-pill {
    min-height: 28px;
    padding: 7px 11px 6px;
  }
}


/* =========================================================
   Single Post Closing CTA Polish - Editorial Compact Pass
========================================================= */

.single-post .s6-blog-closing-cta--compact {
  padding-top: clamp(20px, 3vw, 34px);
  padding-bottom: clamp(28px, 4vw, 46px);
}

.single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__inner {
  grid-template-columns: minmax(0, 1fr) auto;
  gap: clamp(18px, 3vw, 30px);
  align-items: center;
  border-radius: 22px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, .045), rgba(255, 255, 255, .018));
  border: 1px solid rgba(255, 255, 255, .085);
  box-shadow:
    0 18px 54px rgba(0, 0, 0, .28),
    inset 0 1px 0 rgba(255, 255, 255, .05);
}

.single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__copy {
  padding: clamp(20px, 3vw, 32px);
}

.single-post .s6-blog-closing-cta--compact .s6-eyebrow {
  margin-bottom: 12px;
  font-size: .68rem;
  opacity: .82;
}

.single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__copy h2 {
  max-width: 560px;
  font-size: clamp(1.45rem, 2.2vw, 2.35rem);
  line-height: 1;
  letter-spacing: -.045em;
  text-transform: none;
}

.single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__copy p {
  max-width: 620px;
  margin-top: 10px;
  font-size: .88rem;
  line-height: 1.58;
  color: rgba(255, 255, 255, .62);
}

.single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__panel {
  min-width: 0;
  width: auto;
  padding: clamp(18px, 2.6vw, 28px);
  gap: 10px;
  border-left: 1px solid rgba(255, 255, 255, .07);
  background:
    linear-gradient(180deg, rgba(0, 0, 0, .22), rgba(0, 0, 0, .08));
}

.single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__panel .s6-green-button {
  padding: 12px 18px;
  font-size: .72rem;
  letter-spacing: .12em;
  white-space: nowrap;
}

.single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__details {
  gap: 4px;
}

.single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__details span {
  font-size: .64rem;
  line-height: 1.35;
  letter-spacing: .1em;
  opacity: .72;
}

@media (max-width: 860px) {
  .single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__inner {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__panel {
    border-left: 0;
    border-top: 1px solid rgba(255, 255, 255, .07);
  }
}

@media (max-width: 640px) {
  .single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__inner {
    border-radius: 18px;
  }

  .single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__copy,
  .single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__panel {
    padding: 20px;
  }

  .single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__copy h2 {
    font-size: clamp(1.55rem, 8vw, 2rem);
  }
}


/* =========================================================
   Blog System CTA - System 6 Editorial Card Pass
   Applies to blog index, archives/categories, and single posts.
========================================================= */

.s6-blog-page .s6-blog-closing-cta,
.archive .s6-blog-closing-cta,
.category .s6-blog-closing-cta,
.single-post .s6-blog-closing-cta {
  padding-top: clamp(34px, 5vw, 72px);
  padding-bottom: clamp(54px, 7vw, 96px);
}

.s6-blog-page .s6-blog-closing-cta .s6-container,
.archive .s6-blog-closing-cta .s6-container,
.category .s6-blog-closing-cta .s6-container,
.single-post .s6-blog-closing-cta .s6-container {
  max-width: 1080px;
}

.s6-blog-page .s6-blog-closing-cta__inner,
.archive .s6-blog-closing-cta__inner,
.category .s6-blog-closing-cta__inner,
.single-post .s6-blog-closing-cta__inner,
.single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__inner {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: clamp(18px, 2.4vw, 26px);
  min-height: auto;
  padding: clamp(34px, 5vw, 58px) clamp(24px, 5vw, 72px);
  overflow: hidden;
  text-align: center;
  border-radius: clamp(24px, 3vw, 34px);
  border: 1px solid rgba(255, 255, 255, .11);
  background:
    radial-gradient(circle at 48% 0%, rgba(142, 198, 64, .13), transparent 34%),
    radial-gradient(circle at 92% 78%, rgba(142, 198, 64, .08), transparent 30%),
    linear-gradient(135deg, rgba(255, 255, 255, .07), rgba(255, 255, 255, .022));
  box-shadow:
    0 26px 80px rgba(0, 0, 0, .42),
    inset 0 1px 0 rgba(255, 255, 255, .08);
}

.s6-blog-page .s6-blog-closing-cta__inner::before,
.archive .s6-blog-closing-cta__inner::before,
.category .s6-blog-closing-cta__inner::before,
.single-post .s6-blog-closing-cta__inner::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, transparent, rgba(142, 198, 64, .42), transparent) top / 100% 1px no-repeat,
    repeating-linear-gradient(
      90deg,
      rgba(255, 255, 255, .018) 0,
      rgba(255, 255, 255, .018) 1px,
      transparent 1px,
      transparent 130px
    );
  pointer-events: none;
}

.s6-blog-page .s6-blog-closing-cta__inner::after,
.archive .s6-blog-closing-cta__inner::after,
.category .s6-blog-closing-cta__inner::after,
.single-post .s6-blog-closing-cta__inner::after {
  content: '';
  position: absolute;
  width: 420px;
  height: 420px;
  right: -160px;
  bottom: -230px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(142, 198, 64, .12), transparent 68%);
  filter: blur(20px);
  pointer-events: none;
}

.s6-blog-page .s6-blog-closing-cta__copy,
.archive .s6-blog-closing-cta__copy,
.category .s6-blog-closing-cta__copy,
.single-post .s6-blog-closing-cta__copy,
.single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__copy {
  position: relative;
  z-index: 2;
  padding: 0;
}

.s6-blog-page .s6-blog-closing-cta__copy .s6-eyebrow,
.archive .s6-blog-closing-cta__copy .s6-eyebrow,
.category .s6-blog-closing-cta__copy .s6-eyebrow,
.single-post .s6-blog-closing-cta__copy .s6-eyebrow {
  justify-content: center;
  margin-bottom: 14px;
  color: rgba(142, 198, 64, .92);
  font-size: .68rem;
  letter-spacing: .18em;
}

.s6-blog-page .s6-blog-closing-cta__copy h2,
.archive .s6-blog-closing-cta__copy h2,
.category .s6-blog-closing-cta__copy h2,
.single-post .s6-blog-closing-cta__copy h2,
.single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__copy h2 {
  max-width: 760px;
  margin: 0 auto;
  color: #fff;
  font-size: clamp(2.05rem, 4vw, 4.15rem);
  font-weight: 900;
  line-height: .95;
  letter-spacing: -.055em;
  text-transform: none;
}

.s6-blog-page .s6-blog-closing-cta__copy p,
.archive .s6-blog-closing-cta__copy p,
.category .s6-blog-closing-cta__copy p,
.single-post .s6-blog-closing-cta__copy p,
.single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__copy p {
  max-width: 660px;
  margin: 16px auto 0;
  color: rgba(255, 255, 255, .66);
  font-size: clamp(.92rem, 1.2vw, 1.02rem);
  line-height: 1.65;
}

.s6-blog-page .s6-blog-closing-cta__panel,
.archive .s6-blog-closing-cta__panel,
.category .s6-blog-closing-cta__panel,
.single-post .s6-blog-closing-cta__panel,
.single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__panel {
  position: relative;
  z-index: 2;
  display: flex;
  width: auto;
  min-width: 0;
  padding: 0;
  border: 0;
  background: transparent;
  align-items: center;
  justify-content: center;
  gap: 14px;
}

.s6-blog-page .s6-blog-closing-cta__panel .s6-green-button,
.archive .s6-blog-closing-cta__panel .s6-green-button,
.category .s6-blog-closing-cta__panel .s6-green-button,
.single-post .s6-blog-closing-cta__panel .s6-green-button,
.single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__panel .s6-green-button {
  align-self: center;
  padding: 13px 22px;
  border-radius: 999px;
  font-size: .72rem;
  letter-spacing: .14em;
  box-shadow: 0 14px 34px rgba(0, 0, 0, .28);
}

.s6-blog-page .s6-blog-closing-cta__details,
.archive .s6-blog-closing-cta__details,
.category .s6-blog-closing-cta__details,
.single-post .s6-blog-closing-cta__details,
.single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__details {
  display: none;
}

@media (max-width: 760px) {
  .s6-blog-page .s6-blog-closing-cta,
  .archive .s6-blog-closing-cta,
  .category .s6-blog-closing-cta,
  .single-post .s6-blog-closing-cta {
    padding-top: 34px;
    padding-bottom: 62px;
  }

  .s6-blog-page .s6-blog-closing-cta__inner,
  .archive .s6-blog-closing-cta__inner,
  .category .s6-blog-closing-cta__inner,
  .single-post .s6-blog-closing-cta__inner,
  .single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__inner {
    padding: 30px 22px;
    border-radius: 22px;
  }

  .s6-blog-page .s6-blog-closing-cta__copy h2,
  .archive .s6-blog-closing-cta__copy h2,
  .category .s6-blog-closing-cta__copy h2,
  .single-post .s6-blog-closing-cta__copy h2,
  .single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__copy h2 {
    font-size: clamp(2rem, 10vw, 3rem);
  }
}


.s6-blog-page .s6-blog-closing-cta,
.archive .s6-blog-closing-cta,
.category .s6-blog-closing-cta,
.single-post .s6-blog-closing-cta {
  padding-top: clamp(22px, 3vw, 42px) !important;
  padding-bottom: clamp(36px, 5vw, 62px) !important;
}

.s6-blog-page .s6-blog-closing-cta__inner,
.archive .s6-blog-closing-cta__inner,
.category .s6-blog-closing-cta__inner,
.single-post .s6-blog-closing-cta__inner,
.single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__inner {
  padding: clamp(28px, 4vw, 44px) clamp(22px, 4vw, 58px) !important;
  gap: clamp(14px, 2vw, 20px) !important;
  border-radius: clamp(22px, 3vw, 28px) !important;

  background:
    radial-gradient(circle at 48% 0%, rgba(142, 198, 64, .10), transparent 32%),
    radial-gradient(circle at 92% 78%, rgba(142, 198, 64, .06), transparent 28%),
    linear-gradient(135deg, rgba(255, 255, 255, .055), rgba(255, 255, 255, .018)) !important;
}

.s6-blog-page .s6-blog-closing-cta__inner::before,
.archive .s6-blog-closing-cta__inner::before,
.category .s6-blog-closing-cta__inner::before,
.single-post .s6-blog-closing-cta__inner::before {
  background:
    linear-gradient(90deg, transparent, rgba(142, 198, 64, .28), transparent) top / 100% 1px no-repeat !important;
  opacity: .55 !important;
}

.s6-blog-page .s6-blog-closing-cta__inner::after,
.archive .s6-blog-closing-cta__inner::after,
.category .s6-blog-closing-cta__inner::after,
.single-post .s6-blog-closing-cta__inner::after {
  width: 320px !important;
  height: 320px !important;
  right: -140px !important;
  bottom: -180px !important;
  opacity: .7 !important;
}

.s6-blog-page .s6-blog-closing-cta__copy .s6-eyebrow,
.archive .s6-blog-closing-cta__copy .s6-eyebrow,
.category .s6-blog-closing-cta__copy .s6-eyebrow,
.single-post .s6-blog-closing-cta__copy .s6-eyebrow {
  margin-bottom: 10px !important;
}

.s6-blog-page .s6-blog-closing-cta__copy h2,
.archive .s6-blog-closing-cta__copy h2,
.category .s6-blog-closing-cta__copy h2,
.single-post .s6-blog-closing-cta__copy h2,
.single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__copy h2 {
  max-width: 640px !important;
  font-size: clamp(1.85rem, 3vw, 3.3rem) !important;
  line-height: .94 !important;
}

.s6-blog-page .s6-blog-closing-cta__copy p,
.archive .s6-blog-closing-cta__copy p,
.category .s6-blog-closing-cta__copy p,
.single-post .s6-blog-closing-cta__copy p,
.single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__copy p {
  max-width: 580px !important;
  margin-top: 12px !important;
  font-size: .9rem !important;
  line-height: 1.58 !important;
}

.s6-blog-page .s6-blog-closing-cta__panel .s6-green-button,
.archive .s6-blog-closing-cta__panel .s6-green-button,
.category .s6-blog-closing-cta__panel .s6-green-button,
.single-post .s6-blog-closing-cta__panel .s6-green-button,
.single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__panel .s6-green-button {
  padding: 11px 18px !important;
  font-size: .68rem !important;
  letter-spacing: .14em !important;
}

@media (max-width: 760px) {

  .s6-blog-page .s6-blog-closing-cta__inner,
  .archive .s6-blog-closing-cta__inner,
  .category .s6-blog-closing-cta__inner,
  .single-post .s6-blog-closing-cta__inner,
  .single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__inner {
    padding: 26px 20px !important;
  }

  .s6-blog-page .s6-blog-closing-cta__copy h2,
  .archive .s6-blog-closing-cta__copy h2,
  .category .s6-blog-closing-cta__copy h2,
  .single-post .s6-blog-closing-cta__copy h2,
  .single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__copy h2 {
    font-size: clamp(1.9rem, 9vw, 2.7rem) !important;
  }
}


/* =========================================================
   Project Gallery Foundation
========================================================= */

.s6-projects-page,
.s6-single-project-page {
  background: #050605;
  color: #fff;
}

.s6-projects-hero {
  padding-top: clamp(150px, 16vw, 220px);
  padding-bottom: clamp(56px, 8vw, 100px);
}

.s6-projects-hero__inner {
  max-width: 980px;
}

.s6-projects-hero__inner h1 {
  max-width: 980px;
  margin: 0;
  color: #fff;
  font-size: clamp(3.2rem, 7.4vw, 7.4rem);
  font-weight: 900;
  line-height: .88;
  letter-spacing: -.075em;
}

.s6-projects-hero__inner p {
  max-width: 720px;
  margin: 24px 0 0;
  color: rgba(255, 255, 255, .66);
  font-size: clamp(1rem, 1.3vw, 1.12rem);
  line-height: 1.78;
}

.s6-projects-gallery-section {
  padding-top: 0;
}

.s6-project-filter-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: clamp(28px, 4vw, 44px);
}

.s6-project-filter-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 0 16px;
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: 999px;
  background: rgba(255, 255, 255, .035);
  color: rgba(255, 255, 255, .68);
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-decoration: none;
  text-transform: uppercase;
  transition: color .25s ease, background .25s ease, border-color .25s ease, transform .25s ease;
}

.s6-project-filter-pill:hover,
.s6-project-filter-pill.is-active {
  border-color: rgba(142, 198, 64, .36);
  background: rgba(142, 198, 64, .12);
  color: #fff;
  transform: translateY(-1px);
}

.s6-project-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(18px, 2vw, 28px);
}

.s6-project-card {
  min-height: 420px;
}

.s6-project-card--featured {
  grid-column: span 2;
  min-height: 560px;
}

.s6-project-card__link {
  position: relative;
  display: flex;
  min-height: inherit;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .09);
  border-radius: 28px;
  color: #fff;
  text-decoration: none;
  background:
    linear-gradient(135deg, rgba(255,255,255,.045), rgba(255,255,255,.015));
  box-shadow: 0 24px 70px rgba(0, 0, 0, .34);
  isolation: isolate;
}

.s6-project-card__image {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(0,0,0,.12), rgba(0,0,0,.68)),
    var(--s6-project-card-bg, linear-gradient(135deg, rgba(142,198,64,.12), rgba(255,255,255,.035)));
  background-position: center;
  background-size: cover;
  transform: scale(1.02);
  filter: grayscale(.16) contrast(1.06);
  transition: transform .55s ease, filter .55s ease;
  z-index: -2;
}

.s6-project-card__link::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    linear-gradient(to top, rgba(0, 0, 0, .78), transparent 62%),
    radial-gradient(circle at 88% 12%, rgba(142,198,64,.10), transparent 32%);
  z-index: -1;
}

.s6-project-card__content {
  align-self: flex-end;
  width: 100%;
  padding: clamp(22px, 3vw, 36px);
}

.s6-project-card__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 12px;
}

.s6-project-card__meta span {
  color: rgba(255, 255, 255, .72);
  font-size: .66rem;
  font-weight: 900;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.s6-project-card__meta span + span::before {
  content: '/';
  margin-right: 8px;
  color: rgba(142, 198, 64, .8);
}

.s6-project-card h2 {
  max-width: 620px;
  margin: 0;
  color: #fff;
  font-size: clamp(1.7rem, 2.8vw, 3.5rem);
  font-weight: 900;
  line-height: .94;
  letter-spacing: -.055em;
}

.s6-project-card:not(.s6-project-card--featured) h2 {
  font-size: clamp(1.45rem, 2vw, 2.35rem);
}

.s6-project-card p {
  max-width: 520px;
  margin: 14px 0 0;
  color: rgba(255, 255, 255, .68);
  font-size: .92rem;
  line-height: 1.58;
}

.s6-project-card:hover .s6-project-card__image {
  transform: scale(1.07);
  filter: grayscale(0) contrast(1.08);
}

.s6-single-project-hero {
  padding-top: clamp(140px, 15vw, 210px);
  padding-bottom: clamp(50px, 7vw, 90px);
}

.s6-single-project-content {
  padding-top: 0;
}

@media (max-width: 980px) {
  .s6-project-grid{
    grid-template-columns: 1fr;
  }

  .s6-project-card--featured {
    grid-column: span 1;
    min-height: 460px;
  }

  .s6-project-card {
    min-height: 380px;
  }
}

@media (max-width: 640px) {
  .s6-projects-hero__inner h1{
    font-size: clamp(2.8rem, 15vw, 4.4rem);
  }

  .s6-project-card__link {
    border-radius: 22px;
  }

  .s6-project-card__content {
    padding: 22px;
  }
}


/* =========================================================
   Project Gallery Free-ACF / Native WordPress Gallery Support
========================================================= */

.s6-native-project-content .wp-block-gallery,
.s6-native-project-content .gallery {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(18px, 2vw, 28px) !important;
  margin-top: clamp(34px, 5vw, 64px);
  margin-bottom: clamp(34px, 5vw, 64px);
}

.s6-native-project-content .wp-block-image,
.s6-native-project-content .wp-block-gallery figure,
.s6-native-project-content .gallery-item {
  overflow: hidden;
  border-radius: 26px;
  background: rgba(255, 255, 255, .035);
}

.s6-native-project-content .wp-block-image img,
.s6-native-project-content .wp-block-gallery img,
.s6-native-project-content .gallery img {
  display: block;
  width: 100%;
  height: auto;
  min-height: 320px;
  object-fit: cover;
  border: 0 !important;
}

.s6-native-project-content .wp-block-gallery figcaption,
.s6-native-project-content .gallery-caption,
.s6-native-project-content .wp-block-image figcaption {
  padding: 12px 14px 14px;
  color: rgba(255, 255, 255, .58);
  font-size: .78rem;
  line-height: 1.5;
}

@media (max-width: 760px) {
  .s6-native-project-content .wp-block-gallery,
  .s6-native-project-content .gallery {
    grid-template-columns: 1fr;
  }
}


/* =========================================================
   Unified Blog / Projects CTA - Refined Compact System 6 Card
   Re-applied after Project Gallery routing branch.
========================================================= */

.s6-blog-page .s6-blog-closing-cta,
.archive .s6-blog-closing-cta,
.category .s6-blog-closing-cta,
.single-post .s6-blog-closing-cta,
.s6-projects-page .s6-blog-closing-cta,
.single-s6_project .s6-blog-closing-cta {
  padding-top: clamp(22px, 3vw, 42px) !important;
  padding-bottom: clamp(36px, 5vw, 62px) !important;
}

.s6-blog-page .s6-blog-closing-cta .s6-container,
.archive .s6-blog-closing-cta .s6-container,
.category .s6-blog-closing-cta .s6-container,
.single-post .s6-blog-closing-cta .s6-container,
.s6-projects-page .s6-blog-closing-cta .s6-container,
.single-s6_project .s6-blog-closing-cta .s6-container {
  max-width: 1080px !important;
}

.s6-blog-page .s6-blog-closing-cta__inner,
.archive .s6-blog-closing-cta__inner,
.category .s6-blog-closing-cta__inner,
.single-post .s6-blog-closing-cta__inner,
.single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__inner,
.s6-projects-page .s6-blog-closing-cta__inner,
.s6-projects-page .s6-blog-closing-cta--compact .s6-blog-closing-cta__inner,
.single-s6_project .s6-blog-closing-cta__inner {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: clamp(14px, 2vw, 20px) !important;
  min-height: auto !important;
  padding: clamp(28px, 4vw, 44px) clamp(22px, 4vw, 58px) !important;
  overflow: hidden !important;
  text-align: center !important;
  border-radius: clamp(22px, 3vw, 28px) !important;
  border: 1px solid rgba(255, 255, 255, .11) !important;
  background:
    radial-gradient(circle at 48% 0%, rgba(142, 198, 64, .10), transparent 32%),
    radial-gradient(circle at 92% 78%, rgba(142, 198, 64, .06), transparent 28%),
    linear-gradient(135deg, rgba(255, 255, 255, .055), rgba(255, 255, 255, .018)) !important;
  box-shadow:
    0 26px 80px rgba(0, 0, 0, .42),
    inset 0 1px 0 rgba(255, 255, 255, .08) !important;
}

.s6-blog-page .s6-blog-closing-cta__inner::before,
.archive .s6-blog-closing-cta__inner::before,
.category .s6-blog-closing-cta__inner::before,
.single-post .s6-blog-closing-cta__inner::before,
.s6-projects-page .s6-blog-closing-cta__inner::before,
.single-s6_project .s6-blog-closing-cta__inner::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(90deg, transparent, rgba(142, 198, 64, .28), transparent) top / 100% 1px no-repeat !important;
  opacity: .55 !important;
  pointer-events: none !important;
}

.s6-blog-page .s6-blog-closing-cta__inner::after,
.archive .s6-blog-closing-cta__inner::after,
.category .s6-blog-closing-cta__inner::after,
.single-post .s6-blog-closing-cta__inner::after,
.s6-projects-page .s6-blog-closing-cta__inner::after,
.single-s6_project .s6-blog-closing-cta__inner::after {
  content: '' !important;
  position: absolute !important;
  width: 320px !important;
  height: 320px !important;
  right: -140px !important;
  bottom: -180px !important;
  border-radius: 50% !important;
  background: radial-gradient(circle, rgba(142, 198, 64, .12), transparent 68%) !important;
  filter: blur(20px) !important;
  opacity: .7 !important;
  pointer-events: none !important;
}

.s6-blog-page .s6-blog-closing-cta__copy,
.archive .s6-blog-closing-cta__copy,
.category .s6-blog-closing-cta__copy,
.single-post .s6-blog-closing-cta__copy,
.single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__copy,
.s6-projects-page .s6-blog-closing-cta__copy,
.s6-projects-page .s6-blog-closing-cta--compact .s6-blog-closing-cta__copy,
.single-s6_project .s6-blog-closing-cta__copy {
  position: relative !important;
  z-index: 2 !important;
  padding: 0 !important;
}

.s6-blog-page .s6-blog-closing-cta__copy .s6-eyebrow,
.archive .s6-blog-closing-cta__copy .s6-eyebrow,
.category .s6-blog-closing-cta__copy .s6-eyebrow,
.single-post .s6-blog-closing-cta__copy .s6-eyebrow,
.s6-projects-page .s6-blog-closing-cta__copy .s6-eyebrow,
.single-s6_project .s6-blog-closing-cta__copy .s6-eyebrow {
  justify-content: center !important;
  margin-bottom: 10px !important;
  color: rgba(142, 198, 64, .92) !important;
  font-size: .68rem !important;
  letter-spacing: .18em !important;
}

.s6-blog-page .s6-blog-closing-cta__copy h2,
.archive .s6-blog-closing-cta__copy h2,
.category .s6-blog-closing-cta__copy h2,
.single-post .s6-blog-closing-cta__copy h2,
.single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__copy h2,
.s6-projects-page .s6-blog-closing-cta__copy h2,
.s6-projects-page .s6-blog-closing-cta--compact .s6-blog-closing-cta__copy h2,
.single-s6_project .s6-blog-closing-cta__copy h2 {
  max-width: 640px !important;
  margin: 0 auto !important;
  color: #fff !important;
  font-size: clamp(1.85rem, 3vw, 3.3rem) !important;
  font-weight: 900 !important;
  line-height: .94 !important;
  letter-spacing: -.055em !important;
  text-transform: none !important;
}

.s6-blog-page .s6-blog-closing-cta__copy p,
.archive .s6-blog-closing-cta__copy p,
.category .s6-blog-closing-cta__copy p,
.single-post .s6-blog-closing-cta__copy p,
.single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__copy p,
.s6-projects-page .s6-blog-closing-cta__copy p,
.s6-projects-page .s6-blog-closing-cta--compact .s6-blog-closing-cta__copy p,
.single-s6_project .s6-blog-closing-cta__copy p {
  max-width: 580px !important;
  margin: 12px auto 0 !important;
  color: rgba(255, 255, 255, .66) !important;
  font-size: .9rem !important;
  line-height: 1.58 !important;
}

.s6-blog-page .s6-blog-closing-cta__panel,
.archive .s6-blog-closing-cta__panel,
.category .s6-blog-closing-cta__panel,
.single-post .s6-blog-closing-cta__panel,
.single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__panel,
.s6-projects-page .s6-blog-closing-cta__panel,
.s6-projects-page .s6-blog-closing-cta--compact .s6-blog-closing-cta__panel,
.single-s6_project .s6-blog-closing-cta__panel {
  position: relative !important;
  z-index: 2 !important;
  display: flex !important;
  width: auto !important;
  min-width: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 14px !important;
}

.s6-blog-page .s6-blog-closing-cta__panel .s6-green-button,
.archive .s6-blog-closing-cta__panel .s6-green-button,
.category .s6-blog-closing-cta__panel .s6-green-button,
.single-post .s6-blog-closing-cta__panel .s6-green-button,
.single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__panel .s6-green-button,
.s6-projects-page .s6-blog-closing-cta__panel .s6-green-button,
.s6-projects-page .s6-blog-closing-cta--compact .s6-blog-closing-cta__panel .s6-green-button,
.single-s6_project .s6-blog-closing-cta__panel .s6-green-button {
  align-self: center !important;
  padding: 11px 18px !important;
  border-radius: 999px !important;
  font-size: .68rem !important;
  letter-spacing: .14em !important;
  box-shadow: 0 14px 34px rgba(0, 0, 0, .28) !important;
}

.s6-blog-page .s6-blog-closing-cta__details,
.archive .s6-blog-closing-cta__details,
.category .s6-blog-closing-cta__details,
.single-post .s6-blog-closing-cta__details,
.single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__details,
.s6-projects-page .s6-blog-closing-cta__details,
.single-s6_project .s6-blog-closing-cta__details {
  display: none !important;
}

@media (max-width: 760px) {
  .s6-blog-page .s6-blog-closing-cta__inner,
  .archive .s6-blog-closing-cta__inner,
  .category .s6-blog-closing-cta__inner,
  .single-post .s6-blog-closing-cta__inner,
  .single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__inner,
  .s6-projects-page .s6-blog-closing-cta__inner,
  .s6-projects-page .s6-blog-closing-cta--compact .s6-blog-closing-cta__inner,
  .single-s6_project .s6-blog-closing-cta__inner {
    padding: 26px 20px !important;
    border-radius: 22px !important;
  }

  .s6-blog-page .s6-blog-closing-cta__copy h2,
  .archive .s6-blog-closing-cta__copy h2,
  .category .s6-blog-closing-cta__copy h2,
  .single-post .s6-blog-closing-cta__copy h2,
  .single-post .s6-blog-closing-cta--compact .s6-blog-closing-cta__copy h2,
  .s6-projects-page .s6-blog-closing-cta__copy h2,
  .s6-projects-page .s6-blog-closing-cta--compact .s6-blog-closing-cta__copy h2,
  .single-s6_project .s6-blog-closing-cta__copy h2 {
    font-size: clamp(1.9rem, 9vw, 2.7rem) !important;
  }
}


.s6-projects-page .s6-projects-hero,
.s6-single-project-page .s6-single-project-hero {
  padding-top: clamp(118px, 11vw, 168px) !important;
  padding-bottom: clamp(36px, 5vw, 64px) !important;
}

.s6-projects-page .s6-projects-hero .s6-container,
.s6-single-project-page .s6-single-project-hero .s6-container {
  max-width: var(--s6-container-width, 1240px);
}

.s6-projects-hero__inner {
  max-width: 980px !important;
}

.s6-projects-hero__inner .s6-eyebrow{
  margin-bottom: clamp(14px, 2vw, 20px) !important;
}

.s6-projects-hero__inner h1{
  max-width: 980px !important;
  margin: 0 !important;
  font-size: clamp(3rem, 6.2vw, 6.4rem) !important;
  line-height: .9 !important;
  letter-spacing: -.07em !important;
}

.s6-projects-hero__inner p{
  max-width: 720px !important;
  margin-top: clamp(18px, 2vw, 24px) !important;
  font-size: clamp(.98rem, 1.2vw, 1.08rem) !important;
  line-height: 1.72 !important;
  color: rgba(255, 255, 255, .66) !important;
}

.s6-projects-gallery-section {
  padding-top: clamp(10px, 2vw, 26px) !important;
  padding-bottom: clamp(70px, 8vw, 120px) !important;
}

.s6-project-filter-row {
  margin-bottom: clamp(24px, 3vw, 36px) !important;
}

.s6-project-filter-pill {
  min-height: 34px !important;
  padding: 0 14px !important;
  font-size: .64rem !important;
}

.s6-project-grid {
  gap: clamp(16px, 1.8vw, 24px) !important;
}

.s6-project-card {
  min-height: 380px !important;
}

.s6-project-card--featured {
  min-height: 500px !important;
}

.s6-project-card__link {
  border-radius: 24px !important;
}

.s6-project-card__content {
  padding: clamp(20px, 2.6vw, 32px) !important;
}

.s6-project-card h2 {
  font-size: clamp(1.5rem, 2.45vw, 3rem) !important;
  line-height: .96 !important;
}

.s6-project-card:not(.s6-project-card--featured) h2 {
  font-size: clamp(1.35rem, 1.85vw, 2.05rem) !important;
}

.s6-project-card p {
  margin-top: 10px !important;
  font-size: .88rem !important;
  line-height: 1.55 !important;
}

.s6-project-card__meta {
  margin-bottom: 10px !important;
}

.s6-project-card__meta span {
  font-size: .62rem !important;
  letter-spacing: .12em !important;
}

.s6-single-project-content {
  padding-top: clamp(8px, 2vw, 22px) !important;
  padding-bottom: clamp(70px, 8vw, 120px) !important;
}

.s6-native-project-content .wp-block-gallery,
.s6-native-project-content .gallery {
  margin-top: clamp(28px, 4vw, 48px) !important;
  margin-bottom: clamp(28px, 4vw, 48px) !important;
  gap: clamp(16px, 1.8vw, 24px) !important;
}

.s6-native-project-content .wp-block-image,
.s6-native-project-content .wp-block-gallery figure,
.s6-native-project-content .gallery-item {
  border-radius: 22px !important;
}

.s6-native-project-content .wp-block-image img,
.s6-native-project-content .wp-block-gallery img,
.s6-native-project-content .gallery img {
  min-height: 280px !important;
}

@media (max-width: 980px) {
  .s6-project-grid{
    grid-template-columns: 1fr !important;
  }

  .s6-project-card,
  .s6-project-card--featured {
    min-height: 390px !important;
    grid-column: span 1 !important;
  }
}

@media (max-width: 640px) {
  .s6-projects-page .s6-projects-hero,
  .s6-single-project-page .s6-single-project-hero {
    padding-top: 104px !important;
    padding-bottom: 36px !important;
  }

  .s6-projects-hero__inner h1{
    font-size: clamp(2.55rem, 13vw, 4rem) !important;
  }

  .s6-project-card,
  .s6-project-card--featured {
    min-height: 360px !important;
  }

  .s6-project-card__link {
    border-radius: 20px !important;
  }

  .s6-project-card__content {
    padding: 20px !important;
  }
}


.s6-project-grid--editorial {
  grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
  grid-auto-flow: dense !important;
  align-items: stretch !important;
  gap: clamp(16px, 1.8vw, 26px) !important;
}

.s6-project-grid--editorial .s6-project-card {
  grid-column: span 4;
  min-height: 390px !important;
}

.s6-project-grid--editorial .s6-project-card--featured,
.s6-project-grid--editorial .s6-project-card--pattern-1 {
  grid-column: span 7;
  min-height: 560px !important;
}

.s6-project-grid--editorial .s6-project-card--pattern-2 {
  grid-column: span 5;
  min-height: 560px !important;
}

.s6-project-grid--editorial .s6-project-card--pattern-3 {
  grid-column: span 4;
  min-height: 420px !important;
}

.s6-project-grid--editorial .s6-project-card--pattern-4 {
  grid-column: span 8;
  min-height: 430px !important;
}

.s6-project-grid--editorial .s6-project-card--pattern-5 {
  grid-column: span 4;
  min-height: 430px !important;
}

.s6-project-grid--editorial .s6-project-card--pattern-6 {
  grid-column: span 5;
  min-height: 500px !important;
}

.s6-project-grid--editorial .s6-project-card--pattern-0 {
  grid-column: span 7;
  min-height: 500px !important;
}

.s6-project-card__link {
  transform: translateZ(0);
}

.s6-project-grid--editorial .s6-project-card__link {
  border-radius: clamp(20px, 2.2vw, 28px) !important;
}

.s6-project-grid--editorial .s6-project-card__image {
  transform: scale(1.025);
  filter: grayscale(.22) contrast(1.08) saturate(.92);
}

.s6-project-grid--editorial .s6-project-card:nth-child(odd) .s6-project-card__image {
  background-position: center top;
}

.s6-project-grid--editorial .s6-project-card:nth-child(even) .s6-project-card__image {
  background-position: center center;
}

.s6-project-grid--editorial .s6-project-card--pattern-2 .s6-project-card__image,
.s6-project-grid--editorial .s6-project-card--pattern-6 .s6-project-card__image {
  background-position: center bottom;
}

.s6-project-grid--editorial .s6-project-card__link::before {
  background:
    linear-gradient(to top, rgba(0, 0, 0, .78), rgba(0, 0, 0, .16) 54%, rgba(0, 0, 0, .04)),
    radial-gradient(circle at 88% 12%, rgba(142,198,64,.08), transparent 28%) !important;
}

.s6-project-grid--editorial .s6-project-card__link::after {
  content: '';
  position: absolute;
  inset: auto 22px 22px 22px;
  height: 1px;
  background: linear-gradient(90deg, rgba(142,198,64,.5), transparent);
  opacity: 0;
  transform: scaleX(.55);
  transform-origin: left;
  transition: opacity .35s ease, transform .35s ease;
  pointer-events: none;
}

.s6-project-grid--editorial .s6-project-card:hover .s6-project-card__link::after {
  opacity: 1;
  transform: scaleX(1);
}

.s6-project-grid--editorial .s6-project-card__content {
  padding: clamp(20px, 2.4vw, 34px) !important;
  transition: transform .35s ease;
}

.s6-project-grid--editorial .s6-project-card:hover .s6-project-card__content {
  transform: translateY(-4px);
}

.s6-project-grid--editorial .s6-project-card--featured h2,
.s6-project-grid--editorial .s6-project-card--pattern-1 h2,
.s6-project-grid--editorial .s6-project-card--pattern-4 h2,
.s6-project-grid--editorial .s6-project-card--pattern-0 h2 {
  max-width: 760px !important;
  font-size: clamp(1.95rem, 3.4vw, 4rem) !important;
  line-height: .92 !important;
}

.s6-project-grid--editorial .s6-project-card--pattern-2 h2,
.s6-project-grid--editorial .s6-project-card--pattern-6 h2 {
  font-size: clamp(1.65rem, 2.6vw, 3rem) !important;
  line-height: .94 !important;
}

.s6-project-grid--editorial .s6-project-card--pattern-3 h2,
.s6-project-grid--editorial .s6-project-card--pattern-5 h2 {
  font-size: clamp(1.3rem, 1.8vw, 2rem) !important;
  line-height: .98 !important;
}

.s6-project-grid--editorial .s6-project-card__meta {
  opacity: .82;
}

.s6-project-grid--editorial .s6-project-card p {
  max-width: 580px !important;
  opacity: .9;
}

.s6-project-grid--editorial .s6-project-card--pattern-3 p,
.s6-project-grid--editorial .s6-project-card--pattern-5 p {
  display: none;
}

/* Slight editorial offset on larger screens so it feels less like a rigid archive. */
@media (min-width: 981px) {
  .s6-project-grid--editorial .s6-project-card--pattern-2,
  .s6-project-grid--editorial .s6-project-card--pattern-5 {
    margin-top: clamp(28px, 3vw, 54px);
  }

  .s6-project-grid--editorial .s6-project-card--pattern-6 {
    margin-top: clamp(-20px, -1vw, -10px);
  }
}

@media (max-width: 1180px) {
  .s6-project-grid--editorial .s6-project-card,
  .s6-project-grid--editorial .s6-project-card--featured,
  .s6-project-grid--editorial .s6-project-card--pattern-1,
  .s6-project-grid--editorial .s6-project-card--pattern-2,
  .s6-project-grid--editorial .s6-project-card--pattern-3,
  .s6-project-grid--editorial .s6-project-card--pattern-4,
  .s6-project-grid--editorial .s6-project-card--pattern-5,
  .s6-project-grid--editorial .s6-project-card--pattern-6,
  .s6-project-grid--editorial .s6-project-card--pattern-0 {
    grid-column: span 6;
    min-height: 430px !important;
    margin-top: 0 !important;
  }

  .s6-project-grid--editorial .s6-project-card--featured,
  .s6-project-grid--editorial .s6-project-card--pattern-1 {
    min-height: 500px !important;
  }
}

@media (max-width: 760px) {
  .s6-project-grid--editorial {
    grid-template-columns: 1fr !important;
  }

  .s6-project-grid--editorial .s6-project-card,
  .s6-project-grid--editorial .s6-project-card--featured,
  .s6-project-grid--editorial .s6-project-card--pattern-1,
  .s6-project-grid--editorial .s6-project-card--pattern-2,
  .s6-project-grid--editorial .s6-project-card--pattern-3,
  .s6-project-grid--editorial .s6-project-card--pattern-4,
  .s6-project-grid--editorial .s6-project-card--pattern-5,
  .s6-project-grid--editorial .s6-project-card--pattern-6,
  .s6-project-grid--editorial .s6-project-card--pattern-0 {
    grid-column: span 1 !important;
    min-height: 360px !important;
  }

  .s6-project-grid--editorial .s6-project-card__content {
    padding: 20px !important;
  }

  .s6-project-grid--editorial .s6-project-card h2,
  .s6-project-grid--editorial .s6-project-card--featured h2,
  .s6-project-grid--editorial .s6-project-card--pattern-1 h2,
  .s6-project-grid--editorial .s6-project-card--pattern-4 h2,
  .s6-project-grid--editorial .s6-project-card--pattern-0 h2 {
    font-size: clamp(1.55rem, 8vw, 2.45rem) !important;
  }
}


.s6-projects-gallery-section {
  position: relative;
  overflow: hidden;
}

.s6-projects-gallery-section::before {
  content: '';
  position: absolute;
  width: 780px;
  height: 780px;
  right: -360px;
  top: 4%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(142, 198, 64, .075), transparent 68%);
  filter: blur(22px);
  pointer-events: none;
}

.s6-projects-gallery-section::after {
  content: '';
  position: absolute;
  width: 620px;
  height: 620px;
  left: -360px;
  bottom: 8%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 255, 255, .035), transparent 70%);
  filter: blur(18px);
  pointer-events: none;
}

.s6-project-grid--editorial {
  position: relative;
  z-index: 2;
}

.s6-project-grid--editorial .s6-project-card__link {
  border-color: rgba(255, 255, 255, .105) !important;
  box-shadow:
    0 26px 80px rgba(0, 0, 0, .38),
    inset 0 1px 0 rgba(255, 255, 255, .055);
  transition:
    transform .42s ease,
    border-color .42s ease,
    box-shadow .42s ease;
}

.s6-project-grid--editorial .s6-project-card:hover .s6-project-card__link {
  transform: translateY(-6px);
  border-color: rgba(142, 198, 64, .32) !important;
  box-shadow:
    0 38px 110px rgba(0, 0, 0, .54),
    0 0 70px rgba(142, 198, 64, .055),
    inset 0 1px 0 rgba(255, 255, 255, .075);
}

.s6-project-grid--editorial .s6-project-card__link::before {
  background:
    linear-gradient(to top, rgba(0, 0, 0, .86), rgba(0, 0, 0, .28) 54%, rgba(0, 0, 0, .06)),
    radial-gradient(circle at 86% 10%, rgba(142,198,64,.14), transparent 30%),
    linear-gradient(135deg, rgba(255,255,255,.06), transparent 32%) !important;
  transition: opacity .42s ease;
}

.s6-project-grid--editorial .s6-project-card__link::after {
  inset: auto clamp(20px, 2vw, 32px) clamp(20px, 2vw, 32px) clamp(20px, 2vw, 32px) !important;
  height: 2px !important;
  background:
    linear-gradient(90deg, rgba(142,198,64,.85), rgba(142,198,64,.18), transparent) !important;
  box-shadow: 0 0 18px rgba(142,198,64,.28);
}

.s6-project-grid--editorial .s6-project-card__image {
  transition:
    transform .7s cubic-bezier(.22, 1, .36, 1),
    filter .7s cubic-bezier(.22, 1, .36, 1);
}

.s6-project-grid--editorial .s6-project-card:hover .s6-project-card__image {
  transform: scale(1.095);
  filter: grayscale(0) contrast(1.12) saturate(1.06);
}

.s6-project-grid--editorial .s6-project-card {
  position: relative;
}

.s6-project-grid--editorial .s6-project-card::before {
  content: '0' counter(project-card);
  counter-increment: project-card;
  position: absolute;
  top: clamp(18px, 2vw, 28px);
  right: clamp(18px, 2vw, 28px);
  z-index: 5;
  color: rgba(255, 255, 255, .22);
  font-size: clamp(1.9rem, 3vw, 4.1rem);
  font-weight: 900;
  line-height: .8;
  letter-spacing: -.08em;
  pointer-events: none;
  transition: color .35s ease, transform .35s ease;
}

.s6-project-grid--editorial {
  counter-reset: project-card;
}

.s6-project-grid--editorial .s6-project-card:hover::before {
  color: rgba(142, 198, 64, .42);
  transform: translateY(-3px);
}

.s6-project-grid--editorial .s6-project-card:nth-child(n+10)::before {
  content: counter(project-card);
}

.s6-project-grid--editorial .s6-project-card__meta {
  gap: 10px !important;
}

.s6-project-grid--editorial .s6-project-card__meta span {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 0 9px;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 999px;
  background: rgba(255,255,255,.045);
  backdrop-filter: blur(10px);
  color: rgba(255,255,255,.76) !important;
}

.s6-project-grid--editorial .s6-project-card__meta span + span::before {
  display: none !important;
}

.s6-project-grid--editorial .s6-project-card h2 {
  text-shadow: 0 10px 40px rgba(0,0,0,.42);
}

.s6-project-grid--editorial .s6-project-card p {
  color: rgba(255,255,255,.72) !important;
}

.s6-project-grid--editorial .s6-project-card--pattern-1 .s6-project-card__content,
.s6-project-grid--editorial .s6-project-card--pattern-4 .s6-project-card__content,
.s6-project-grid--editorial .s6-project-card--pattern-0 .s6-project-card__content,
.s6-project-grid--editorial .s6-project-card--featured .s6-project-card__content {
  padding-bottom: clamp(28px, 3.5vw, 48px) !important;
}

.s6-project-grid--editorial .s6-project-card--pattern-1 .s6-project-card__link,
.s6-project-grid--editorial .s6-project-card--pattern-4 .s6-project-card__link,
.s6-project-grid--editorial .s6-project-card--pattern-0 .s6-project-card__link,
.s6-project-grid--editorial .s6-project-card--featured .s6-project-card__link {
  border-width: 1px;
}

.s6-project-grid--editorial .s6-project-card--pattern-1 .s6-project-card__link::before,
.s6-project-grid--editorial .s6-project-card--pattern-4 .s6-project-card__link::before,
.s6-project-grid--editorial .s6-project-card--pattern-0 .s6-project-card__link::before,
.s6-project-grid--editorial .s6-project-card--featured .s6-project-card__link::before {
  background:
    linear-gradient(to top, rgba(0, 0, 0, .88), rgba(0, 0, 0, .18) 56%, rgba(0, 0, 0, .02)),
    radial-gradient(circle at 86% 10%, rgba(142,198,64,.17), transparent 32%),
    linear-gradient(135deg, rgba(255,255,255,.075), transparent 34%) !important;
}

.s6-project-filter-row {
  position: relative;
  z-index: 3;
  padding-bottom: 2px;
}

.s6-project-filter-pill {
  backdrop-filter: blur(14px);
}

.s6-project-filter-pill.is-active {
  box-shadow: 0 12px 30px rgba(0, 0, 0, .24);
}

@media (min-width: 1181px) {
  .s6-project-grid--editorial .s6-project-card--pattern-4 {
    transform: translateX(clamp(10px, 1vw, 18px));
  }

  .s6-project-grid--editorial .s6-project-card--pattern-6 {
    transform: translateX(clamp(-10px, -1vw, -18px));
  }

  .s6-project-grid--editorial .s6-project-card--pattern-4:hover,
  .s6-project-grid--editorial .s6-project-card--pattern-6:hover {
    transform: translateX(0);
  }
}

@media (max-width: 760px) {
  .s6-project-grid--editorial .s6-project-card::before {
    font-size: 2rem;
    top: 18px;
    right: 18px;
  }

  .s6-project-grid--editorial .s6-project-card__meta span {
    min-height: 22px;
    padding: 0 8px;
  }
}


.s6-project-grid--editorial {
  counter-reset: none !important;
}

.s6-project-grid--editorial .s6-project-card::before {
  display: none !important;
  content: none !important;
}

/* More refined page atmosphere */
.s6-projects-page .s6-projects-hero {
  position: relative;
  overflow: hidden;
}

.s6-projects-page .s6-projects-hero::after {
  content: '';
  position: absolute;
  inset: auto 8vw -1px 8vw;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(142, 198, 64, .34), rgba(255,255,255,.1), transparent);
  pointer-events: none;
}

.s6-projects-hero__inner {
  position: relative;
}

.s6-projects-hero__inner::before {
  content: '';
  position: absolute;
  width: clamp(140px, 18vw, 260px);
  height: 2px;
  left: 0;
  bottom: -28px;
  background: linear-gradient(90deg, rgba(142,198,64,.82), transparent);
  box-shadow: 0 0 22px rgba(142,198,64,.22);
  pointer-events: none;
}

/* Stronger but cleaner editorial filter row */
.s6-project-filter-row {
  justify-content: flex-start;
  margin-bottom: clamp(30px, 4vw, 52px) !important;
}

.s6-project-filter-pill {
  position: relative;
  overflow: hidden;
  min-height: 36px !important;
  padding: 0 15px !important;
  border-color: rgba(255,255,255,.095) !important;
  background: rgba(255,255,255,.032) !important;
}

.s6-project-filter-pill::after {
  content: '';
  position: absolute;
  inset: auto 12px 7px 12px;
  height: 1px;
  background: rgba(142,198,64,.85);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .28s ease;
}

.s6-project-filter-pill:hover::after,
.s6-project-filter-pill.is-active::after {
  transform: scaleX(1);
}

/* Card refinements */
.s6-project-grid--editorial .s6-project-card__link {
  overflow: hidden;
  background: rgba(255,255,255,.025) !important;
}

.s6-project-grid--editorial .s6-project-card__link::before {
  background:
    linear-gradient(to top, rgba(0, 0, 0, .82), rgba(0, 0, 0, .28) 52%, rgba(0, 0, 0, .04)),
    radial-gradient(circle at 90% 8%, rgba(142,198,64,.11), transparent 28%),
    linear-gradient(135deg, rgba(255,255,255,.045), transparent 36%) !important;
}

.s6-project-grid--editorial .s6-project-card__link::after {
  bottom: clamp(18px, 2vw, 28px) !important;
  opacity: .72;
}

/* Add a premium corner accent instead of numbers */
.s6-project-grid--editorial .s6-project-card .s6-project-card__content::before {
  content: '';
  position: absolute;
  left: clamp(20px, 2.4vw, 34px);
  top: auto;
  bottom: calc(100% + 12px);
  width: 42px;
  height: 2px;
  background: rgba(142,198,64,.78);
  box-shadow: 0 0 16px rgba(142,198,64,.22);
  transform: scaleX(.72);
  transform-origin: left;
  transition: transform .35s ease, opacity .35s ease;
  opacity: .8;
}

.s6-project-grid--editorial .s6-project-card:hover .s6-project-card__content::before {
  transform: scaleX(1.35);
  opacity: 1;
}

.s6-project-card__content {
  position: relative;
}

/* Title feel: more luxury editorial, less archive card */
.s6-project-grid--editorial .s6-project-card h2 {
  max-width: 720px !important;
  letter-spacing: -.06em !important;
}

.s6-project-grid--editorial .s6-project-card--pattern-3 h2,
.s6-project-grid--editorial .s6-project-card--pattern-5 h2 {
  max-width: 420px !important;
}

.s6-project-grid--editorial .s6-project-card__meta {
  margin-bottom: 13px !important;
}

.s6-project-grid--editorial .s6-project-card__meta span {
  min-height: 23px;
  padding: 0 9px;
  color: rgba(255,255,255,.73) !important;
  background: rgba(0,0,0,.26);
  border-color: rgba(255,255,255,.09);
}

/* Make descriptions feel intentionally optional */
.s6-project-grid--editorial .s6-project-card p {
  max-width: 540px !important;
  margin-top: 12px !important;
  color: rgba(255,255,255,.65) !important;
}

.s6-project-grid--editorial .s6-project-card--pattern-1 p,
.s6-project-grid--editorial .s6-project-card--pattern-4 p,
.s6-project-grid--editorial .s6-project-card--pattern-0 p,
.s6-project-grid--editorial .s6-project-card--featured p {
  max-width: 620px !important;
}

/* Feature cards get a little more cinematic presence */
.s6-project-grid--editorial .s6-project-card--pattern-1 .s6-project-card__link,
.s6-project-grid--editorial .s6-project-card--pattern-4 .s6-project-card__link,
.s6-project-grid--editorial .s6-project-card--pattern-0 .s6-project-card__link,
.s6-project-grid--editorial .s6-project-card--featured .s6-project-card__link {
  box-shadow:
    0 32px 96px rgba(0, 0, 0, .48),
    0 0 80px rgba(142, 198, 64, .035),
    inset 0 1px 0 rgba(255, 255, 255, .07);
}

.s6-project-grid--editorial .s6-project-card--pattern-1:hover .s6-project-card__link,
.s6-project-grid--editorial .s6-project-card--pattern-4:hover .s6-project-card__link,
.s6-project-grid--editorial .s6-project-card--pattern-0:hover .s6-project-card__link,
.s6-project-grid--editorial .s6-project-card--featured:hover .s6-project-card__link {
  box-shadow:
    0 42px 130px rgba(0, 0, 0, .58),
    0 0 90px rgba(142, 198, 64, .07),
    inset 0 1px 0 rgba(255, 255, 255, .08);
}

/* Improve no-project empty state so it doesn't feel broken */
.s6-projects-page .s6-blog-empty-state {
  max-width: 760px;
  margin: 0;
  padding: clamp(28px, 4vw, 44px);
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 24px;
  background:
    radial-gradient(circle at 90% 10%, rgba(142,198,64,.08), transparent 32%),
    rgba(255,255,255,.032);
  color: rgba(255,255,255,.68);
  font-size: .95rem;
  line-height: 1.7;
}

@media (max-width: 760px) {
  .s6-projects-hero__inner::before {
    width: 120px;
    bottom: -20px;
  }

  .s6-project-grid--editorial .s6-project-card .s6-project-card__content::before {
    display: none;
  }
}


/* Remove upper hero/card accent bar that felt purposeless */
.s6-projects-hero__inner::before {
  display: none !important;
}

/* Keep card text firmly inside image overlay */
.s6-project-grid--editorial .s6-project-card__content {
  position: relative !important;
  z-index: 4 !important;
}

.s6-project-grid--editorial .s6-project-card__link {
  position: relative !important;
  overflow: hidden !important;
}

.s6-project-grid--editorial .s6-project-card__link::before {
  z-index: 1 !important;
}

.s6-project-grid--editorial .s6-project-card__image {
  z-index: 0 !important;
}

/* Metadata pills: glass-like, subtle, clickable through JS data attribute */
.s6-project-grid--editorial .s6-project-card__meta {
  position: relative !important;
  z-index: 6 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin-bottom: 14px !important;
}

.s6-project-meta-pill,
.s6-project-grid--editorial .s6-project-card__meta span{
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 24px !important;
  padding: 0 10px !important;
  border: 1px solid rgba(255,255,255,.10) !important;
  border-radius: 999px !important;
  background: rgba(0,0,0,.30) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  color: rgba(255,255,255,.78) !important;
  font-size: .62rem !important;
  font-weight: 900 !important;
  letter-spacing: .12em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  cursor: pointer;
  transition:
    border-color .25s ease,
    background .25s ease,
    color .25s ease,
    transform .25s ease,
    box-shadow .25s ease;
}

.s6-project-grid--editorial .s6-project-card__meta span + span::before {
  display: none !important;
  content: none !important;
}

.s6-project-meta-pill:hover,
.s6-project-grid--editorial .s6-project-card__meta span:hover{
  transform: translateY(-1px);
  border-color: rgba(142,198,64,.34) !important;
  background: rgba(12,18,10,.48) !important;
  color: #fff !important;
  box-shadow:
    0 10px 26px rgba(0,0,0,.22),
    0 0 20px rgba(142,198,64,.07);
}

/* Refined bottom accent line: small static state, meaningful hover state */
.s6-project-grid--editorial .s6-project-card__link::after {
  left: clamp(20px, 2vw, 30px) !important;
  right: auto !important;
  bottom: clamp(18px, 2vw, 28px) !important;
  width: clamp(34px, 5vw, 54px) !important;
  height: 1px !important;
  opacity: .62 !important;
  background:
    linear-gradient(90deg,
      rgba(142,198,64,.85),
      rgba(142,198,64,.38),
      transparent) !important;
  box-shadow: 0 0 10px rgba(142,198,64,.12) !important;
  transform: scaleX(1) !important;
  transform-origin: left !important;
  transition:
    width .34s ease,
    opacity .34s ease,
    box-shadow .34s ease,
    background .34s ease !important;
  z-index: 5 !important;
}

.s6-project-grid--editorial .s6-project-card:hover .s6-project-card__link::after {
  width: clamp(116px, 16vw, 180px) !important;
  opacity: 1 !important;
  background:
    linear-gradient(90deg,
      rgba(142,198,64,1),
      rgba(142,198,64,.74),
      rgba(255,255,255,.16),
      transparent) !important;
  box-shadow: 0 0 18px rgba(142,198,64,.24) !important;
}


.s6-project-grid--editorial .s6-project-card .s6-project-card__content::before {
  display: none !important;
  content: none !important;
}

/* Preserve readable title/description on image */
.s6-project-grid--editorial .s6-project-card h2,
.s6-project-grid--editorial .s6-project-card p {
  position: relative !important;
  z-index: 5 !important;
}

.s6-project-grid--editorial .s6-project-card h2 {
  text-shadow: 0 12px 42px rgba(0,0,0,.48);
}

.s6-project-grid--editorial .s6-project-card p {
  color: rgba(255,255,255,.68) !important;
}

/* Slightly calmer hover so content doesn't jump out of place */
.s6-project-grid--editorial .s6-project-card:hover .s6-project-card__link {
  transform: translateY(-4px) !important;
}

.s6-project-grid--editorial .s6-project-card:hover .s6-project-card__content {
  transform: translateY(-2px) !important;
}

@media (max-width: 760px) {
  .s6-project-grid--editorial .s6-project-card__link::after {
    width: 34px !important;
  }

  .s6-project-grid--editorial .s6-project-card:hover .s6-project-card__link::after {
    width: 88px !important;
  }
}


.s6-project-active-filter {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin: -18px 0 clamp(24px, 3vw, 38px);
  padding: 10px 12px;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 999px;
  background: rgba(255,255,255,.035);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.s6-project-active-filter span,
.s6-project-active-filter a {
  color: rgba(255,255,255,.72);
  font-size: .66rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.s6-project-active-filter a {
  color: rgba(142,198,64,.95);
  text-decoration: none;
}

.s6-project-active-filter a:hover {
  color: #fff;
}

.s6-project-grid--editorial .s6-project-card__meta {
  pointer-events: auto !important;
}

.s6-project-grid--editorial .s6-project-card__meta .s6-project-meta-pill {
  pointer-events: auto !important;
}


@media (min-width: 1181px) {
  .s6-project-grid--editorial {
    align-items: start !important;
  }

  .s6-project-grid--editorial .s6-project-card--pattern-1,
  .s6-project-grid--editorial .s6-project-card--pattern-2 {
    margin-top: 0 !important;
    min-height: 560px !important;
  }

  .s6-project-grid--editorial .s6-project-card--pattern-1 {
    grid-column: span 7 !important;
  }

  .s6-project-grid--editorial .s6-project-card--pattern-2 {
    grid-column: span 5 !important;
  }

  .s6-project-grid--editorial .s6-project-card--pattern-5 {
    margin-top: clamp(26px, 3vw, 48px) !important;
  }

  .s6-project-grid--editorial .s6-project-card--pattern-4,
  .s6-project-grid--editorial .s6-project-card--pattern-6 {
    transform: none !important;
    margin-top: 0 !important;
  }
}

.s6-project-grid--editorial .s6-project-card__image {
  background-position: center center !important;
}

.s6-project-grid--editorial .s6-project-card--pattern-1 .s6-project-card__image,
.s6-project-grid--editorial .s6-project-card--featured .s6-project-card__image {
  background-position: center 42% !important;
}

.s6-project-grid--editorial .s6-project-card--pattern-2 .s6-project-card__image {
  background-position: center 48% !important;
}

.s6-project-grid--editorial .s6-project-card--pattern-1 .s6-project-card__content,
.s6-project-grid--editorial .s6-project-card--pattern-2 .s6-project-card__content {
  padding-bottom: clamp(28px, 3vw, 42px) !important;
}

.s6-project-filter-row {
  margin-bottom: clamp(24px, 3vw, 38px) !important;
}

.s6-project-grid--editorial .s6-project-card__link::before {
  background:
    linear-gradient(to top, rgba(0, 0, 0, .80), rgba(0, 0, 0, .24) 54%, rgba(0, 0, 0, .04)),
    radial-gradient(circle at 88% 12%, rgba(142,198,64,.10), transparent 30%),
    linear-gradient(135deg, rgba(255,255,255,.045), transparent 34%) !important;
}

.s6-project-grid--editorial .s6-project-card__link::after {
  left: clamp(20px, 2vw, 30px) !important;
  right: auto !important;
  width: clamp(34px, 5vw, 54px) !important;
  height: 1px !important;
}

.s6-project-grid--editorial .s6-project-card:hover .s6-project-card__link::after {
  width: clamp(110px, 15vw, 170px) !important;
}

@media (max-width: 1180px) and (min-width: 761px) {
  .s6-project-grid--editorial .s6-project-card,
  .s6-project-grid--editorial .s6-project-card--featured,
  .s6-project-grid--editorial .s6-project-card--pattern-1,
  .s6-project-grid--editorial .s6-project-card--pattern-2,
  .s6-project-grid--editorial .s6-project-card--pattern-3,
  .s6-project-grid--editorial .s6-project-card--pattern-4,
  .s6-project-grid--editorial .s6-project-card--pattern-5,
  .s6-project-grid--editorial .s6-project-card--pattern-6,
  .s6-project-grid--editorial .s6-project-card--pattern-0 {
    min-height: 440px !important;
    margin-top: 0 !important;
    transform: none !important;
  }
}


/* =========================================================
   Homepage Portfolio
========================================================= */

.s6-gallery-grid--dynamic-projects .s6-gallery-tile > a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  color: inherit;
  text-decoration: none;
}

.s6-gallery-grid--dynamic-projects .s6-gallery-tile > a > div {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(0,0,0,.06), rgba(0,0,0,.52)),
    radial-gradient(circle at 88% 12%, rgba(142,198,64,.08), transparent 32%),
    rgba(255,255,255,.035);
  background-position: center;
  background-size: cover;
  transition: transform .55s ease, filter .55s ease;
}

.s6-gallery-grid--dynamic-projects .s6-gallery-tile:hover > a > div {
  transform: scale(1.055);
  filter: contrast(1.06) saturate(1.02);
}

.s6-gallery-grid--dynamic-projects .s6-gallery-tile footer {
  z-index: 2;
}

.s6-portfolio-empty-state {
  max-width: 760px;
  padding: clamp(28px, 4vw, 44px);
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 26px;
  background:
    radial-gradient(circle at 88% 10%, rgba(142,198,64,.08), transparent 34%),
    rgba(255,255,255,.032);
}

.s6-portfolio-empty-state p {
  margin: 0 0 18px;
  color: rgba(255,255,255,.68);
  line-height: 1.7;
}

@media (min-width: 981px) {
  .s6-gallery-grid--dynamic-projects {
    position: relative;
  }

  .s6-gallery-stat--experience-slot {
    grid-column: auto !important;
    grid-row: auto !important;
  }

  .s6-gallery-stat--ontario-slot {
    grid-column: span 2 !important;
    grid-row: auto !important;
  }
}

.s6-gallery-stat--experience-slot,
.s6-gallery-stat--ontario-slot {
  min-height: inherit !important;
}

.s6-gallery-stat--experience-slot strong {
  color: rgba(142,198,64,.95);
}

.s6-gallery-stat--ontario-slot strong {
  font-size: clamp(2rem, 3vw, 3.4rem);
  text-transform: none;
}

.s6-gallery-tile--safe-extra-row {
  min-height: 320px;
}

@media (min-width: 981px) {
  .s6-gallery-tile--safe-extra-row {
    grid-column: span 1;
  }

  .s6-gallery-tile--safe-extra-row-wide {
    grid-column: span 2 !important;
    min-height: 340px;
  }

  .s6-gallery-tile--safe-extra-row-small {
    grid-column: span 1 !important;
    min-height: 340px;
  }
}

.s6-gallery-tile--safe-extra-row footer strong {
  max-width: 92%;
}

.s6-gallery-grid--dynamic-projects {
  margin-bottom: 0 !important;
}

.s6-portfolio-clean-cta-row {
  position: relative;
  z-index: 30;
  margin-top: clamp(28px, 3.5vw, 48px);
  padding: 0 0 clamp(60px, 7vw, 100px);
  background: #000;
}

.s6-portfolio-clean-cta-row .s6-container {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.s6-portfolio-clean-cta-row .s6-portfolio-button--outside {
  position: relative !important;
  inset: auto !important;
  transform: none !important;
  display: inline-flex !important;
  width: auto !important;
  margin: 0 !important;
  z-index: 31 !important;
}

.s6-portfolio .s6-portfolio-button:not(.s6-portfolio-button--outside) {
  display: none !important;
}

@media (max-width: 980px) {
  .s6-gallery-stat--experience-slot,
  .s6-gallery-stat--ontario-slot,
  .s6-gallery-tile--safe-extra-row-wide,
  .s6-gallery-tile--safe-extra-row-small {
    grid-column: span 1 !important;
  }

  .s6-gallery-tile--safe-extra-row {
    min-height: 280px;
  }
}

.s6-division-page {
    --s6-concrete: #ebe8df;
    --s6-concrete-soft: #f5f2ea;
    --s6-concrete-warm: #ded9cd;
    --s6-concrete-line: rgba(24, 27, 22, .14);
    --s6-charcoal: #10130f;
    --s6-charcoal-soft: #2f342d;
    --s6-muted: rgba(16, 19, 15, .68);
    --s6-green: #8ec640;
    position: relative;
    background:
        radial-gradient(circle at 15% 8%, rgba(255, 255, 255, .82), transparent 28%),
        radial-gradient(circle at 85% 22%, rgba(142, 198, 64, .12), transparent 24%),
        linear-gradient(180deg, var(--s6-concrete-soft), var(--s6-concrete));
    color: var(--s6-charcoal);
    overflow: hidden;
}

.s6-division-page::before {
    content: "";
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: 0;
    opacity: .36;
    background-image:
        linear-gradient(90deg, rgba(16, 19, 15, .035) 1px, transparent 1px),
        linear-gradient(180deg, rgba(16, 19, 15, .028) 1px, transparent 1px),
        radial-gradient(circle at 22% 18%, rgba(16, 19, 15, .06), transparent 1px),
        radial-gradient(circle at 68% 72%, rgba(16, 19, 15, .045), transparent 1px);
    background-size: 120px 120px, 120px 120px, 7px 7px, 11px 11px;
    mix-blend-mode: multiply;
}

.s6-division-page > section {
    position: relative;
    z-index: 1;
}

.s6-division-hero {
    position: relative;
    min-height: 94vh;
    display: flex;
    align-items: flex-end;
    padding: 182px clamp(22px, 6vw, 92px) 104px;
    isolation: isolate;
    background:
        linear-gradient(90deg, rgba(7, 10, 7, .92), rgba(7, 10, 7, .58) 47%, rgba(7, 10, 7, .16)),
        var(--s6-division-hero-bg);
    background-size: cover;
    background-position: center;
    color: #f7f7ef;
}

.s6-division-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background:
        radial-gradient(circle at 76% 18%, rgba(142, 198, 64, .24), transparent 32%),
        linear-gradient(180deg, rgba(5, 7, 5, .18), rgba(5, 7, 5, .72));
}

.s6-division-hero::after {
    content: "";
    position: absolute;
    inset: auto 0 0;
    height: 28%;
    background: linear-gradient(180deg, transparent, var(--s6-concrete-soft));
    pointer-events: none;
}

.s6-division-hero__overlay {
    display: none;
}

.s6-division-hero__inner {
    position: relative;
    max-width: 980px;
    z-index: 1;
}

.s6-division-page .s6-section-label {
    color: var(--s6-green);
    font-weight: 900;
    letter-spacing: .18em;
}

.s6-division-hero h1 {
    max-width: 960px;
    margin: 16px 0 22px;
    font-size: clamp(48px, 7.6vw, 118px);
    line-height: .88;
    letter-spacing: -.078em;
    text-transform: uppercase;
}

.s6-division-hero__inner > p:not(.s6-section-label) {
    max-width: 720px;
    color: rgba(247, 247, 239, .78);
    font-size: clamp(17px, 1.45vw, 21px);
    line-height: 1.66;
}

.s6-division-hero__actions,
.s6-division-cta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px;
    margin-top: 34px;
}

.s6-outline-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 14px 24px;
    border: 1px solid rgba(16, 19, 15, .2);
    border-radius: 999px;
    color: var(--s6-charcoal);
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: .12em;
    font-size: 12px;
    font-weight: 900;
    background: rgba(255, 255, 255, .38);
    transition: transform .28s ease, border-color .28s ease, background .28s ease, color .28s ease;
}

.s6-division-hero .s6-outline-button{
    color: #f7f7ef;
    border-color: rgba(247, 247, 239, .32);
    background: rgba(255, 255, 255, .055);
}

.s6-outline-button:hover {
    transform: translateY(-2px);
    border-color: rgba(142, 198, 64, .72);
    background: rgba(142, 198, 64, .12);
}
.s6-division-projects {
    padding-left: clamp(22px, 6vw, 92px);
    padding-right: clamp(22px, 6vw, 92px);
}
.s6-section-heading h2,
.s6-division-cta h2 {
    margin: 12px 0 22px;
    color: var(--s6-charcoal);
    font-size: clamp(34px, 5vw, 74px);
    line-height: .95;
    letter-spacing: -.058em;
    text-transform: uppercase;
}
.s6-division-cta p {
    color: var(--s6-muted);
    font-size: 16px;
    line-height: 1.78;
}
.s6-division-projects {
    padding-top: clamp(72px, 9vw, 132px);
    padding-bottom: clamp(72px, 9vw, 132px);
}
.s6-division-project-card span {
    display: inline-block;
    margin-bottom: 36px;
    color: var(--s6-green);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .16em;
    text-transform: uppercase;
}
.s6-division-project-card h3 {
    margin: 0 0 14px;
    color: var(--s6-charcoal);
    font-size: clamp(22px, 2vw, 31px);
    line-height: 1.05;
    letter-spacing: -.035em;
    text-transform: uppercase;
}
.s6-division-project-card p,
.s6-division-empty-projects p {
    margin: 0;
    color: var(--s6-muted);
    line-height: 1.65;
}

.s6-division-projects {
    background: transparent;
    border-top: 0;
}

.s6-division-project-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    margin-top: clamp(34px, 5vw, 70px);
}

.s6-division-project-card a {
    display: block;
    min-height: 100%;
    color: inherit;
    text-decoration: none;
    background: rgba(245, 242, 234, .86);
    border: 1px solid rgba(16, 19, 15, .13);
    overflow: hidden;
    box-shadow: 0 24px 60px rgba(16, 19, 15, .09);
    transition: transform .28s ease, border-color .28s ease, background .28s ease;
}

.s6-division-project-card a:hover {
    transform: translateY(-4px);
    border-color: rgba(142, 198, 64, .62);
    background: #fffdf7;
}

.s6-division-project-card__image {
    min-height: 320px;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, .02), rgba(16, 19, 15, .12)),
        var(--s6-division-project-bg, none);
    background-size: cover;
    background-position: center;
    filter: saturate(.82) contrast(1.02);
    transition: filter .28s ease, transform .28s ease;
}

.s6-division-project-card a:hover .s6-division-project-card__image {
    filter: saturate(1.04) contrast(1.02);
    transform: scale(1.025);
}

.s6-division-project-card__content {
    padding: 24px;
}

.s6-division-project-card__content span {
    margin-bottom: 20px;
}

.s6-division-empty-projects {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    margin-top: 36px;
    padding: 30px;
    border: 1px solid rgba(16, 19, 15, .13);
    background: rgba(245, 242, 234, .78);
}

.s6-division-cta {
    justify-content: space-between;
    gap: 26px;
    margin: 0 clamp(22px, 6vw, 92px) clamp(70px, 9vw, 120px);
    padding: clamp(34px, 5vw, 62px);
    border: 1px solid rgba(142, 198, 64, .34);
    background:
        radial-gradient(circle at top right, rgba(142, 198, 64, .18), transparent 36%),
        linear-gradient(135deg, rgba(255,255,255,.78), rgba(235,232,223,.88));
    box-shadow: 0 28px 80px rgba(16, 19, 15, .1);
}

.s6-division-cta > div {
    max-width: 780px;
}

.s6-division-cta h2 {
    margin-bottom: 14px;
}

@media (max-width: 980px) {
    .s6-division-hero {
        min-height: 96vh;
        padding-top: 140px;
        padding-bottom: 76px;
    }
    .s6-division-project-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .s6-division-hero {
        min-height: 78vh;
        padding-left: 18px;
        padding-right: 18px;
    }
    .s6-division-projects {
        padding-left: 18px;
        padding-right: 18px;
    }
    .s6-division-project-card__image {
        min-height: 300px;
    }

    .s6-division-cta {
        margin-left: 18px;
        margin-right: 18px;
    }
}


.s6-division-page--v32 {
    --s6-concrete: #ece9e1;
    --s6-concrete-2: #ddd8cd;
    --s6-concrete-3: #f7f5ef;
    --s6-ink: #171915;
    --s6-muted-ink: rgba(23, 25, 21, 0.68);
    --s6-mineral-line: rgba(23, 25, 21, 0.12);
    --s6-green: #8ec640;
    background:
        radial-gradient(circle at 20% 0%, rgba(255,255,255,0.72), transparent 34rem),
        linear-gradient(135deg, var(--s6-concrete-3), var(--s6-concrete));
    color: var(--s6-ink);
    overflow: clip;
}

.s6-division-page--v32 .s6-section-label {
    color: var(--s6-green);
    letter-spacing: 0.18em;
    font-weight: 800;
}

.s6-division-hero--v32 {
    min-height: 92vh;
    display: flex;
    align-items: end;
    position: relative;
    background:
        linear-gradient(115deg, rgba(0,0,0,0.92), rgba(0,0,0,0.54) 48%, rgba(0,0,0,0.1)),
        var(--s6-division-hero-bg) center/cover no-repeat;
    color: #fff;
    padding: clamp(8rem, 13vw, 12rem) clamp(1.25rem, 5vw, 5rem) clamp(4rem, 8vw, 7rem);
}

.s6-division-hero--v32::after {
    content: "";
    position: absolute;
    inset: auto 0 0;
    height: 18rem;
    background: linear-gradient(180deg, transparent, var(--s6-concrete));
    pointer-events: none;
}

.s6-division-hero__inner--v32 {
    position: relative;
    z-index: 2;
    width: min(1240px, 100%);
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(18rem, 0.55fr);
    gap: clamp(2rem, 6vw, 6rem);
    align-items: end;
}


/* Division eyebrow signature lines — shared section treatment */
.s6-division-page .s6-section:not(.s6-division-hero) .s6-section-label,
.s6-division-page .s6-division-section-header .s6-section-label,
.s6-division-page .s6-division-opening__copy .s6-section-label,
.s6-division-page .s6-division-explainer__copy > .s6-section-label,
.s6-division-page .s6-division-cta--v32 .s6-section-label {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    margin: 0 0 clamp(0.85rem, 1.35vw, 1.15rem);
    color: var(--s6-green);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .22em;
    line-height: 1;
    text-transform: uppercase;
}

.s6-division-page .s6-section:not(.s6-division-hero) .s6-section-label::before,
.s6-division-page .s6-division-section-header .s6-section-label::before,
.s6-division-page .s6-division-opening__copy .s6-section-label::before,
.s6-division-page .s6-division-explainer__copy > .s6-section-label::before,
.s6-division-page .s6-division-cta--v32 .s6-section-label::before {
    content: "";
    display: block;
    width: 48px;
    height: 2px;
    flex: 0 0 48px;
    background: var(--s6-green);
}

@media (max-width: 680px) {
    .s6-division-page .s6-section:not(.s6-division-hero) .s6-section-label,
    .s6-division-page .s6-division-section-header .s6-section-label,
    .s6-division-page .s6-division-opening__copy .s6-section-label,
    .s6-division-page .s6-division-explainer__copy > .s6-section-label,
    .s6-division-page .s6-division-cta--v32 .s6-section-label {
        gap: 12px;
        font-size: 11px;
        letter-spacing: .18em;
    }

    .s6-division-page .s6-section:not(.s6-division-hero) .s6-section-label::before,
    .s6-division-page .s6-division-section-header .s6-section-label::before,
    .s6-division-page .s6-division-opening__copy .s6-section-label::before,
    .s6-division-page .s6-division-explainer__copy > .s6-section-label::before,
    .s6-division-page .s6-division-cta--v32 .s6-section-label::before {
        width: 34px;
        flex-basis: 34px;
    }
}

.s6-division-hero__copy h1 {
    max-width: 11ch;
    font-size: clamp(3.4rem, 8.2vw, 8.6rem);
    line-height: 0.88;
    letter-spacing: -0.075em;
    margin: 0.2em 0 0.28em;
}

.s6-division-hero__copy > p:not(.s6-section-label) {
    max-width: 43rem;
    color: rgba(255,255,255,0.76);
    font-size: clamp(1rem, 1.5vw, 1.22rem);
    line-height: 1.75;
}

.s6-division-hero__panel {
    display:none;
    border: 1px solid rgba(255,255,255,0.18);
    background: rgba(8, 10, 8, 0.34);
    backdrop-filter: blur(18px);
    padding: clamp(1.25rem, 3vw, 2rem);
    min-height: 18rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    box-shadow: 0 2rem 6rem rgba(0,0,0,0.32);
}

.s6-division-hero__panel span {
    color: var(--s6-green);
    font-size: 0.82rem;
    letter-spacing: 0.2em;
    font-weight: 800;
}

.s6-division-hero__panel strong {
    display: block;
    font-size: clamp(1.6rem, 3vw, 2.6rem);
    line-height: 0.95;
    letter-spacing: -0.05em;
}

.s6-division-hero__panel em {
    color: rgba(255,255,255,0.62);
    font-style: normal;
}

.s6-light-concrete-section {
    width: min(1240px, calc(100% - 2.5rem));
    margin: 0 auto;
    padding: clamp(4.5rem, 8vw, 8rem) 0;
}

.s6-division-opening {
    display: grid;
    grid-template-columns: minmax(17rem, 0.85fr) minmax(0, 1.15fr);
    gap: clamp(2rem, 6vw, 6rem);
    align-items: center;
}

.s6-division-opening__media {
    min-height: clamp(28rem, 50vw, 42rem);
    background: var(--s6-division-intro-bg) center/cover no-repeat;
    box-shadow: 0 2rem 5rem rgba(30, 32, 28, 0.16);
    position: relative;
}

.s6-division-opening__media::after {
    content: "";
    position: absolute;
    inset: 1rem;
    border: 1px solid rgba(255,255,255,0.42);
}

.s6-division-opening__copy h2,
.s6-division-section-header h2,
.s6-division-explainer__copy h2,
.s6-division-cta--v32 h2 {
    color: var(--s6-ink);
    font-size: clamp(2.4rem, 5vw, 5.6rem);
    line-height: 0.92;
    letter-spacing: -0.065em;
    margin: 0.22em 0 0.38em;
}

.s6-division-opening__copy p:not(.s6-section-label),
.s6-division-section-header > p,
.s6-division-explainer__copy p,
.s6-division-cta--v32 p {
    color: var(--s6-muted-ink);
    font-size: clamp(1rem, 1.25vw, 1.14rem);
    line-height: 1.75;
}

.s6-division-section-header {
    max-width: 58rem;
    margin-bottom: clamp(2rem, 5vw, 4rem);
}

.s6-division-section-header--split {
    max-width: none;
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(16rem, 0.55fr);
    gap: clamp(1.5rem, 5vw, 4rem);
    align-items: end;
}

.s6-system-card-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border-top: 1px solid var(--s6-mineral-line);
    border-left: 1px solid var(--s6-mineral-line);
}

.s6-system-card {
    appearance: none;
    border: 0;
    border-right: 1px solid var(--s6-mineral-line);
    border-bottom: 1px solid var(--s6-mineral-line);
    background: rgba(255,255,255,0.35);
    min-height: 27rem;
    padding: clamp(1.25rem, 2.4vw, 2rem);
    text-align: left;
    color: var(--s6-ink);
    cursor: pointer;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    transition: transform 0.35s ease, background 0.35s ease, box-shadow 0.35s ease;
}

.s6-system-card:hover,
.s6-system-card:focus-visible {
    transform: translateY(-0.5rem);
    background: rgba(255,255,255,0.76);
    box-shadow: 0 1.6rem 4rem rgba(22, 24, 20, 0.12);
    outline: none;
}

.s6-system-card span,
.s6-system-card em {
    color: var(--s6-green);
    font-style: normal;
    font-weight: 800;
    font-size: 0.76rem;
    text-transform: uppercase;
    letter-spacing: 0.16em;
}

.s6-system-card h3 {
    font-size: clamp(1.6rem, 2.3vw, 2.25rem);
    line-height: 0.98;
    letter-spacing: -0.05em;
    margin: auto 0 1rem;
}

.s6-system-card p {
    color: var(--s6-muted-ink);
    line-height: 1.65;
}

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

.s6-colour-card {
    border: 1px solid rgba(20, 24, 22, 0.12);
    background:
        linear-gradient(145deg, rgba(255,255,255,0.86), rgba(244,242,235,0.52));
    border-radius: 1rem;
    padding: 0.85rem;
    text-align: left;
    cursor: pointer;
    color: var(--s6-ink);
    box-shadow:
        0 1rem 2.5rem rgba(20, 24, 22, 0.07),
        inset 0 1px 0 rgba(255,255,255,0.7);
}

.s6-colour-card span {
    display: block;
    aspect-ratio: 1.4 / 1;
    background:
        linear-gradient(145deg, rgba(255,255,255,0.34), rgba(0,0,0,0.12)),
        var(--s6-swatch);
    border: 1px solid rgba(20, 24, 22, 0.12);
    border-radius: .72rem;
    margin-bottom: 1rem;
    box-shadow:
        0 .9rem 1.6rem rgba(20, 24, 22, 0.16),
        inset 0 1px 0 rgba(255,255,255,0.42),
        inset 0 -1px 0 rgba(0,0,0,0.08);
    transform: translateY(-1px);
}

.s6-colour-card strong,
.s6-colour-card em {
    display: block;
}

.s6-colour-card strong { font-size: 1.05rem; letter-spacing: -0.025em; }
.s6-colour-card em { color: var(--s6-muted-ink); font-style: normal; font-size: 0.82rem; margin-top: 0.25rem; }

.s6-division-explainer {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(18rem, 0.8fr);
    gap: clamp(2rem, 6vw, 5rem);
    align-items: center;
}

.s6-division-explainer__visual {
    min-height: clamp(24rem, 44vw, 38rem);
    background:
        linear-gradient(180deg, rgba(0,0,0,0.1), rgba(0,0,0,0.45)),
        var(--s6-division-detail-bg) center/cover no-repeat;
    display: flex;
    align-items: end;
    padding: 1.5rem;
    box-shadow: 0 2rem 5rem rgba(30, 32, 28, 0.16);
}

.s6-division-explainer__visual div {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 0.5rem;
}

.s6-division-explainer__visual span {
    min-height: 4.5rem;
    display: grid;
    place-items: center;
    background: rgba(255,255,255,0.72);
    color: var(--s6-ink);
    font-size: 0.7rem;
    font-weight: 900;
    letter-spacing: 0.16em;
}

.s6-division-explainer__copy ul {
    list-style: none;
    margin: 2rem 0 0;
    padding: 0;
    border-top: 1px solid var(--s6-mineral-line);
}

.s6-division-explainer__copy li {
    border-bottom: 1px solid var(--s6-mineral-line);
    padding: 1rem 0;
    color: var(--s6-ink);
}

.s6-division-project-grid--v32 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.s6-faq-list {
    border-top: 1px solid var(--s6-mineral-line);
}

.s6-faq-item {
    border-bottom: 1px solid var(--s6-mineral-line);
}

.s6-faq-question {
    width: 100%;
    appearance: none;
    border: 0;
    background: transparent;
    padding: 1.45rem 0;
    color: var(--s6-ink);
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    text-align: left;
    cursor: pointer;
    font-size: clamp(1.05rem, 1.7vw, 1.45rem);
    letter-spacing: -0.035em;
    font-weight: 800;
}

.s6-faq-question em {
    font-style: normal;
    color: var(--s6-green);
    font-size: 1.5rem;
}

.s6-faq-answer p {
    max-width: 52rem;
    color: var(--s6-muted-ink);
    line-height: 1.75;
    margin: 0 0 1.45rem;
}

.s6-system-modal {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: none;
    align-items: center;
    justify-content: center;
    padding: clamp(1rem, 4vw, 3rem);
}

.s6-system-modal.is-open {
    display: flex;
}

.s6-system-modal__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.72);
    backdrop-filter: blur(10px);
}

.s6-system-modal__dialog {
    position: relative;
    z-index: 2;
    width: min(980px, 100%);
    max-height: min(780px, 92vh);
    display: grid;
    grid-template-columns: minmax(0, 0.95fr) minmax(18rem, 0.85fr);
    background: var(--s6-concrete-3);
    color: var(--s6-ink);
    box-shadow: 0 3rem 8rem rgba(0,0,0,0.35);
    overflow: auto;
}

.s6-system-modal__close {
    position: absolute;
    top: 0.75rem;
    right: 0.75rem;
    z-index: 3;
    width: 2.5rem;
    height: 2.5rem;
    border: 1px solid rgba(0,0,0,0.12);
    background: rgba(255,255,255,0.86);
    color: var(--s6-ink);
    cursor: pointer;
    font-size: 1.4rem;
}

.s6-system-modal__media {
    min-height: 34rem;
    background: var(--s6-modal-bg, linear-gradient(135deg, #d8d2c5, #f7f5ef)) center/cover no-repeat;
}

.s6-system-modal__content {
    padding: clamp(1.5rem, 4vw, 3rem);
    align-self: center;
}

.s6-system-modal__content h3 {
    font-size: clamp(2.2rem, 4.5vw, 4.2rem);
    line-height: 0.92;
    letter-spacing: -0.065em;
    margin: 0.2em 0 0.35em;
}

.s6-system-modal__content p:not(.s6-section-label),
.s6-system-modal__content li {
    color: var(--s6-muted-ink);
    line-height: 1.7;
}

.s6-system-modal__content ul {
    margin: 1.5rem 0 0;
    padding: 0;
    list-style: none;
    border-top: 1px solid var(--s6-mineral-line);
}

.s6-system-modal__content li {
    padding: 0.85rem 0;
    border-bottom: 1px solid var(--s6-mineral-line);
}

.s6-division-cta--v32 {
    width: min(1240px, calc(100% - 2.5rem));
    margin: 0 auto clamp(4rem, 8vw, 7rem);
    background: #11130f;
    color: #fff;
    border: 0;
}

.s6-division-cta--v32 h2 { color: #fff; }
.s6-division-cta--v32 p { color: rgba(255,255,255,0.7); }
.s6-outline-button--dark { color: var(--s6-ink); border-color: rgba(23,25,21,0.24); }


.s6-material-card-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.s6-material-card {
    appearance: none;
    border: 1px solid var(--s6-mineral-line);
    background: rgba(255,255,255,0.44);
    color: var(--s6-ink);
    text-align: left;
    padding: 1rem;
    cursor: pointer;
    min-height: 18rem;
    display: flex;
    flex-direction: column;
    transition: transform 0.35s ease, background 0.35s ease, box-shadow 0.35s ease;
}

.s6-material-card:hover,
.s6-material-card:focus-visible {
    transform: translateY(-0.35rem);
    background: rgba(255,255,255,0.78);
    box-shadow: 0 1.5rem 3.5rem rgba(22,24,20,0.1);
    outline: none;
}

.s6-material-card__sample,
.s6-material-card__profile {
    display: block;
    min-height: 8rem;
    margin-bottom: 1.15rem;
    border: 1px solid rgba(0,0,0,0.06);
    background-color: var(--s6-material-tone);
    position: relative;
    overflow: hidden;
}

.s6-material-card__sample::before {
    content: "";
    position: absolute;
    inset: -40%;
    background:
        radial-gradient(circle at 20% 30%, rgba(255,255,255,0.34) 0 1px, transparent 2px),
        radial-gradient(circle at 70% 60%, rgba(0,0,0,0.12) 0 1px, transparent 2px),
        linear-gradient(135deg, rgba(255,255,255,0.24), rgba(0,0,0,0.08));
    background-size: 14px 14px, 18px 18px, auto;
    opacity: 0.8;
}

.s6-material-card__profile {
    background:
        linear-gradient(90deg, rgba(0,0,0,0.08), transparent 18%, rgba(255,255,255,0.32) 40%, transparent 62%, rgba(0,0,0,0.1)),
        var(--s6-material-tone);
}

.s6-material-card__profile::before,
.s6-material-card__profile::after {
    content: "";
    position: absolute;
    left: 12%;
    right: 12%;
    height: 1.1rem;
    background: rgba(255,255,255,0.45);
    box-shadow: 0 0.45rem 0 rgba(0,0,0,0.07);
}

.s6-material-card__profile::before { top: 28%; }
.s6-material-card__profile::after { bottom: 26%; height: 1.6rem; }

.s6-material-card small,
.s6-material-card em {
    color: var(--s6-green);
    font-style: normal;
    font-size: 0.72rem;
    font-weight: 850;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.s6-material-card strong {
    display: block;
    margin: 0.75rem 0 auto;
    font-size: clamp(1.28rem, 2vw, 1.85rem);
    line-height: 0.98;
    letter-spacing: -0.05em;
}

.s6-material-card em { margin-top: 1.25rem; }

.s6-moulding-showcase {
    display: grid;
    grid-template-columns: minmax(18rem, 0.52fr) minmax(0, 1fr);
    gap: clamp(1rem, 4vw, 2rem);
    align-items: stretch;
}

.s6-moulding-showcase__visual {
    min-height: 100%;
    background: #11130f;
    padding: clamp(1rem, 3vw, 2rem);
    display: grid;
    align-content: center;
    gap: 1rem;
    box-shadow: 0 2rem 5rem rgba(30,32,28,0.16);
}

.s6-moulding-showcase__visual span {
    display: block;
    height: clamp(3rem, 7vw, 5rem);
    background: linear-gradient(90deg, #d7d0c0, #f0ece1 36%, #bcb3a3 70%, #ede7da);
    position: relative;
}

.s6-moulding-showcase__visual span:nth-child(2) { width: 82%; margin-left: auto; }
.s6-moulding-showcase__visual span:nth-child(3) { width: 62%; }
.s6-moulding-showcase__visual span:nth-child(4) { width: 72%; margin-left: 14%; }

.s6-material-card-grid--mouldings {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (max-width: 1060px) {
    .s6-division-hero__inner--v32,
    .s6-division-opening,
    .s6-division-explainer,
    .s6-division-section-header--split {
        grid-template-columns: 1fr;
    }
    .s6-system-card-grid,
    .s6-colour-grid,
    .s6-material-card-grid,
    .s6-material-card-grid--mouldings,
    .s6-division-project-grid--v32 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .s6-moulding-showcase {
        grid-template-columns: 1fr;
    }
    .s6-moulding-showcase__visual { min-height: 22rem; }
    .s6-division-hero__panel {
    display:none; min-height: 12rem; }
}

@media (max-width: 680px) {
    .s6-division-hero--v32 { min-height: 86vh; padding-left: 1.1rem; padding-right: 1.1rem; }
    .s6-division-hero__copy h1 { font-size: clamp(3.2rem, 16vw, 5rem); }
    .s6-light-concrete-section { width: min(100% - 1.5rem, 1240px); padding: 4rem 0; }
    .s6-system-card-grid,
    .s6-colour-grid,
    .s6-material-card-grid,
    .s6-material-card-grid--mouldings,
    .s6-division-project-grid--v32,
    .s6-system-modal__dialog {
        grid-template-columns: 1fr;
    }
    .s6-system-card { min-height: 18rem; }
    .s6-system-modal__media { min-height: 16rem; }
    .s6-division-explainer__visual div { grid-template-columns: 1fr; }
}

.s6-header--division-mode {
  padding-top:14px;
}

.s6-header--division-mode .s6-header__inner {
  border-radius:30px 30px 18px 18px;
  background:rgba(5, 6, 5, .82);
  border-color:rgba(255, 255, 255, .12);
}

.s6-division-nav {
  pointer-events:auto;
  max-width:1640px;
  margin:8px auto 0;
  padding:0 10px;
}

.s6-division-nav__inner {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:10px 18px 10px 22px;
  border:1px solid rgba(35, 35, 30, .14);
  border-radius:999px;
  background:linear-gradient(135deg, rgba(238, 234, 224, .94), rgba(217, 211, 197, .9));
  box-shadow:0 18px 50px rgba(0, 0, 0, .18);
  backdrop-filter:blur(22px);
}

.s6-division-nav__label {
  display:flex;
  align-items:center;
  gap:10px;
  flex:0 0 auto;
  color:#11130f;
  white-space:nowrap;
}

.s6-division-nav__label strong {
  font-size:10px;
  font-weight:950;
  letter-spacing:.2em;
  text-transform:uppercase;
}

.s6-division-nav__label em {
  position:relative;
  padding-left:12px;
  color:rgba(17, 19, 15, .58);
  font-size:10px;
  font-style:normal;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.s6-division-nav__label em:before {
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:4px;
  height:4px;
  border-radius:999px;
  transform:translateY(-50%);
  background:var(--s6-green);
}

.s6-division-nav__links {
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:6px;
  min-width:0;
  overflow-x:auto;
  scrollbar-width:none;
}

.s6-division-nav__links::-webkit-scrollbar {
  display:none;
}

.s6-division-nav__links a {
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:9px 13px;
  border:1px solid transparent;
  border-radius:999px;
  color:rgba(17, 19, 15, .62);
  font-size:9px;
  font-weight:950;
  letter-spacing:.14em;
  line-height:1;
  text-decoration:none;
  text-transform:uppercase;
  white-space:nowrap;
  transition:.28s ease;
}

.s6-division-nav__links a:hover,
.s6-division-nav__links a.is-active {
  border-color:rgba(17, 19, 15, .12);
  background:rgba(255, 255, 255, .54);
  color:#11130f;
  box-shadow:0 10px 24px rgba(0, 0, 0, .08);
}

.s6-division-nav__links a.is-active:after {
  content:"";
  position:absolute;
  left:50%;
  bottom:5px;
  width:18px;
  height:2px;
  border-radius:999px;
  transform:translateX(-50%);
  background:var(--s6-green);
}

.s6-header--division-mode.is-scrolled .s6-header__inner {
  background:rgba(4, 5, 4, .9);
}

.s6-header--division-mode.is-scrolled .s6-division-nav__inner {
  background:linear-gradient(135deg, rgba(238, 234, 224, .98), rgba(211, 205, 192, .94));
}

.s6-division-page [id^="division-"] {
  scroll-margin-top:150px;
}

@media (max-width:1180px) {
  .s6-header--division-mode .s6-header__inner {
    border-radius:24px;
  }

  .s6-division-nav__inner {
    align-items:flex-start;
    border-radius:24px;
    flex-direction:column;
    gap:10px;
  }

  .s6-division-nav__links {
    justify-content:flex-start;
    width:100%;
  }
}

@media (max-width:760px) {
  .s6-header--division-mode {
    padding:10px 12px 0;
  }

  .s6-division-nav {
    padding:0;
  }

  .s6-division-nav__inner {
    padding:10px;
    border-radius:18px;
  }

  .s6-division-nav__label {
    width:100%;
    justify-content:space-between;
  }

  .s6-division-nav__label strong,
  .s6-division-nav__label em {
    font-size:8px;
  }

  .s6-division-nav__links a {
    min-height:31px;
    padding:8px 10px;
    font-size:8px;
  }

  .s6-division-page [id^="division-"] {
    scroll-margin-top:170px;
  }
}


.s6-division-card .s6-division-card__title {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.08em;
  line-height: 0.92;
  letter-spacing: -0.055em;
}
.s6-division-card__title-main,
.s6-division-card__title-sub {
  display: block;
}
.s6-division-card__title-sub {
  font-size: clamp(0.72em, 0.78em, 0.84em);
  font-weight: 520;
  letter-spacing: -0.035em;
  opacity: 0.82;
}
.s6-division-card__title-sub span {
  color: var(--s6-green);
  opacity: 0.95;
  padding-right: 0.08em;
}
@media (max-width: 760px) {
  .s6-division-card .s6-division-card__title {
    line-height: 0.96;
    letter-spacing: -0.04em;
  }
  .s6-division-card__title-sub {
    font-size: 0.78em;
  }
}


.s6-division-card .s6-division-card__title {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.28rem;
  line-height: 0.95;
}

.s6-division-card__title-main,
.s6-division-card__title-sub {
  display: block;
}

.s6-division-card__title-sub {
  font-size: clamp(1.45rem, 2.6vw, 2.6rem);
  letter-spacing: 0.02em;
  opacity: 0.86;
}

.s6-division-card__divider {
  display: block;
  width: clamp(42px, 6vw, 86px);
  height: 1px;
  margin: 0.1rem 0 0.05rem;
  background: linear-gradient(90deg, rgba(142, 198, 64, 0.9), rgba(255,255,255,0.14));
  transform-origin: left center;
  transition: width 0.35s ease, opacity 0.35s ease, transform 0.35s ease;
  opacity: 0.82;
}

.s6-division-card:hover .s6-division-card__divider,
.s6-division-card.is-hovered .s6-division-card__divider {
  width: clamp(58px, 8vw, 112px);
  opacity: 1;
  transform: translateX(2px);
}

@media (max-width: 760px) {
  .s6-division-card__title-sub {
    font-size: clamp(1.15rem, 7vw, 2.15rem);
  }
  .s6-division-card__divider {
    width: 48px;
  }
}
body.s6-mega-is-open {
  overflow: auto;
}


.s6-division-page--v32 {
    background: var(--s6-concrete);
}

.s6-division-hero--v32 {
    min-height: clamp(860px, 104vh, 1160px);
    display: flex;
    align-items: center;
    position: relative;
    overflow: hidden;
    margin-bottom: -1px;
    padding: clamp(9.25rem, 10.5vw, 12rem) clamp(1.25rem, 5vw, 5rem) clamp(13rem, 21vh, 18rem);
    background:
        linear-gradient(115deg, rgba(0,0,0,0.92), rgba(0,0,0,0.54) 48%, rgba(0,0,0,0.1)),
        var(--s6-division-hero-bg) center top / cover no-repeat;
    background-color: #0d0f10;
    color: #fff;
}

.s6-division-hero--v32::after {
    content: "";
    position: absolute;
    inset: auto 0 -1px;
    height: clamp(30rem, 48vh, 42rem);
    opacity: 0.98;
    pointer-events: none;
    background: linear-gradient(180deg,
        rgba(236,233,225,0) 0%,
        rgba(236,233,225,0) 52%,
        rgba(236,233,225,0.012) 62%,
        rgba(236,233,225,0.045) 72%,
        rgba(236,233,225,0.12) 81%,
        rgba(236,233,225,0.28) 89%,
        rgba(236,233,225,0.55) 96%,
        var(--s6-concrete) 100%);
}

.s6-division-hero__inner--v32 {
    position: relative;
    z-index: 2;
    width: min(1420px, 100%);
    margin: 0 auto;
    display: grid;
    grid-template-columns: minmax(0, 0.78fr) minmax(18rem, 0.42fr);
    gap: clamp(2rem, 5vw, 5rem);
    align-items: center;
    transform: translateY(clamp(1rem, 2.4vh, 2.5rem));
}

.s6-division-hero__copy {
    max-width: min(760px, 100%);
}

.s6-division-hero__copy .s6-section-label {
    display: flex;
    align-items: center;
    gap: 16px;
    margin: 0 0 clamp(1rem, 1.8vw, 1.35rem);
    color: rgba(255,255,255,0.72);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .30em;
    line-height: 1;
    text-transform: uppercase;
}

.s6-division-hero__copy .s6-section-label::before {
    content: "";
    display: block;
    width: 56px;
    height: 2px;
    flex: 0 0 56px;
    background: var(--s6-green);
}

.s6-division-hero__copy h1 {
    max-width: 14.75ch;
    font-size: clamp(3.8rem, 5.75vw, 6.85rem);
    line-height: 0.94;
    letter-spacing: -0.07em;
    margin: 0 0 clamp(1rem, 1.8vw, 1.45rem);
}

.s6-division-page--stucco .s6-division-hero__copy h1 {
    max-width: 13.75ch;
    line-height: 0.91;
}

.s6-division-page--stucco .s6-division-hero__copy h1 span {
    display: block;
    margin-top: 0.1em;
    font-size: 0.74em;
    letter-spacing: -0.055em;
    color: rgba(255, 255, 255, 0.86);
}

.s6-division-hero__copy > p:not(.s6-section-label) {
    max-width: 38rem;
    color: rgba(255,255,255,0.76);
    font-size: clamp(1rem, 1.15vw, 1.14rem);
    line-height: 1.6;
}

.s6-division-hero__actions {
    margin-top: clamp(1.45rem, 2.2vw, 2rem);
}

.s6-division-hero__panel {
    display: none;
}

.s6-division-hero__panel.s6-division-hero__brand-panel {
    display: flex !important;
    width: min(32rem, 32vw);
    min-height: 0;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    overflow: visible;
    opacity: 0.26;
    justify-content: center;
    align-items: center;
    align-self: center;
    justify-self: center;
    transform: translate(-1vw, clamp(6.5rem, 13vh, 9.5rem));
    mix-blend-mode: screen;
    pointer-events: none;
}

.s6-division-hero__brand-logo {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    object-fit: contain;
    object-position: center;
    opacity: 0.74;
    filter: drop-shadow(0 2rem 5rem rgba(0,0,0,0.55));
}

.s6-division-opening {
    margin-top: 0;
    padding-top: clamp(13rem, 20vh, 18rem);
    background: transparent;
    position: relative;
    z-index: 1;
    isolation: isolate;
}

.s6-division-opening::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 100vw;
    transform: translateX(-50%);
    background: var(--s6-concrete);
    pointer-events: none;
    z-index: -1;
}

#division-overview {
    scroll-margin-top: clamp(7.5rem, 13vh, 10rem);
    padding-top: clamp(8.5rem, 12vw, 12rem);
}

@media (max-width: 1180px) {
    .s6-division-hero--v32 {
        min-height: clamp(780px, 98vh, 980px);
        padding-top: clamp(8rem, 11vw, 10rem);
        padding-bottom: clamp(10rem, 18vh, 14rem);
    }

    .s6-division-hero--v32::after {
        height: clamp(26rem, 44vh, 36rem);
    }

    .s6-division-hero__inner--v32 {
        grid-template-columns: 1fr;
        transform: translateY(clamp(1rem, 3vh, 2.75rem));
    }

    .s6-division-hero__copy {
        max-width: min(780px, 100%);
    }

    .s6-division-hero__copy h1 {
        max-width: 13.5ch;
        font-size: clamp(3.5rem, 8vw, 6.2rem);
    }

    .s6-division-hero__panel.s6-division-hero__brand-panel {
        display: none !important;
    }

    .s6-division-opening {
        padding-top: clamp(10rem, 16vh, 13rem);
    }
}

@media (max-width: 680px) {
    .s6-division-hero--v32 {
        min-height: auto;
        padding-top: 8rem;
        padding-right: 1.1rem;
        padding-bottom: 8rem;
        padding-left: 1.1rem;
    }

    .s6-division-hero--v32::after {
        height: 24rem;
        opacity: 0.98;
    }

    .s6-division-hero__inner--v32 {
        transform: none;
    }

    .s6-division-hero__copy .s6-section-label {
        gap: 12px;
        margin-bottom: 0.95rem;
        font-size: 11px;
        letter-spacing: .22em;
    }

    .s6-division-hero__copy .s6-section-label::before {
        width: 38px;
        flex-basis: 38px;
    }

    .s6-division-hero__copy h1 {
        max-width: 12.5ch;
        font-size: clamp(3rem, 13vw, 4.65rem);
        line-height: 0.96;
    }

    .s6-division-page--stucco .s6-division-hero__copy h1 {
        max-width: 11.75ch;
        line-height: 0.94;
    }

    .s6-division-page--stucco .s6-division-hero__copy h1 span {
        font-size: 0.78em;
    }

    .s6-division-hero__copy > p:not(.s6-section-label) {
        font-size: 1rem;
        line-height: 1.58;
    }

    .s6-division-opening {
        padding-top: 7.5rem;
    }

    #division-overview {
        padding-top: 6rem;
    }
}


.s6-stone-trade-page {
  --stone-bg: #e9dfcf;
  --stone-bg-deep: #d8c9b4;
  --stone-bg-dark: #211b15;
  --stone-ink: #171411;
  --stone-muted: rgba(23,20,17,.68);
  --stone-line: rgba(48,38,27,.16);
}
.s6-stone-materials,
.s6-stone-projects,
.s6-stone-faq {
  background:
    radial-gradient(circle at 12% 10%, rgba(80,65,45,.08), transparent 34%),
    linear-gradient(135deg, #eee5d8 0%, #dcd0bd 100%);
  color: var(--stone-ink);
  padding: clamp(92px, 11vw, 170px) 0;
}
.s6-stone-section-head h2{
  margin: 0 0 28px;
  font-size: clamp(2.15rem, 5.2vw, 6rem);
  line-height: .9;
  letter-spacing: -.06em;
}
.s6-stone-section-head p:not(.s6-section-label){
  max-width: 760px;
  color: var(--stone-muted);
  font-size: clamp(1rem, 1.35vw, 1.22rem);
  line-height: 1.75;
}

.s6-stone-section-head {
  max-width: 1040px;
  margin-bottom: clamp(44px, 6vw, 88px);
}

.s6-stone-section-head--split {
  max-width: none;
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(320px, .55fr);
  gap: clamp(36px, 6vw, 96px);
  align-items: end;
}

.s6-stone-projects,
.s6-stone-faq {
  background: #e9dfcf;
}

.s6-stone-faq .s6-faq-list {
  max-width: 980px;
}

@media (max-width: 820px) {
  .s6-stone-section-head--split{
    grid-template-columns: 1fr;
  }
}


.s6-coatings-trade-page {
  --coating-bg: #ebe5db;
  --coating-bg-soft: #f6f1e8;
  --coating-bg-deep: #d9d0c2;
  --coating-dark: #171513;
  --coating-muted: rgba(23,21,19,.68);
  --coating-line: rgba(23,21,19,.12);
}

.s6-coatings-hero {
  position: relative;
  min-height: 112svh;
  overflow: hidden;
  color: #fff;
  background: var(--s6-coatings-hero-bg) center/cover no-repeat;
}

.s6-coatings-hero__overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(0,0,0,.84) 0%, rgba(0,0,0,.52) 45%, rgba(0,0,0,.12) 100%),
    linear-gradient(180deg, rgba(0,0,0,.1) 0%, rgba(0,0,0,.16) 55%, rgba(235,229,219,.96) 100%);
  pointer-events: none;
}

.s6-coatings-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, .42fr);
  gap: clamp(32px, 6vw, 100px);
  align-items: end;
}

.s6-coatings-hero__panel {
  align-self: end;
  margin-bottom: 7vh;
  padding: clamp(28px, 4vw, 54px);
  min-height: 360px;
  border-left: 1px solid rgba(255,255,255,.24);
  background: linear-gradient(135deg, rgba(255,255,255,.055), rgba(255,255,255,.012));
  backdrop-filter: blur(12px);
  display: grid;
  align-content: end;
  gap: 14px;
}

.s6-coatings-hero__panel span {
  display: block;
  font-size: clamp(1.65rem, 3.5vw, 4rem);
  line-height: .92;
  letter-spacing: -.055em;
  text-transform: uppercase;
  color: rgba(255,255,255,.9);
}

.s6-coatings-overview,
.s6-coatings-renewal,
.s6-coatings-systems,
.s6-coatings-finishes,
.s6-coatings-restoration,
.s6-coatings-projects,
.s6-coatings-faq {
  background:
    radial-gradient(circle at 88% 8%, rgba(142,196,63,.08), transparent 28%),
    linear-gradient(135deg, #f6f1e8 0%, #e5dccf 100%);
  color: var(--coating-dark);
  padding: clamp(92px, 11vw, 170px) 0;
}

.s6-coatings-overview__grid,
.s6-coatings-waterproofing__grid {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  gap: clamp(42px, 6vw, 96px);
  align-items: center;
}

.s6-coatings-overview__image {
  min-height: 640px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.1), rgba(0,0,0,.22)),
    var(--s6-coatings-intro-bg) center/cover no-repeat;
  box-shadow: 0 46px 110px rgba(44,34,22,.18);
  border-radius: 2px;
}

.s6-coatings-overview__copy h2,
.s6-coatings-section-head h2,
.s6-coatings-waterproofing h2 {
  margin: 0 0 28px;
  font-size: clamp(2.15rem, 5.2vw, 6rem);
  line-height: .9;
  letter-spacing: -.06em;
}

.s6-coatings-overview__copy p:not(.s6-section-label),
.s6-coatings-section-head p:not(.s6-section-label),
.s6-coatings-waterproofing p {
  max-width: 760px;
  color: var(--coating-muted);
  font-size: clamp(1rem, 1.35vw, 1.22rem);
  line-height: 1.75;
}

.s6-coatings-section-head {
  max-width: 1040px;
  margin-bottom: clamp(44px, 6vw, 88px);
}

.s6-coatings-section-head--split {
  max-width: none;
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(320px, .55fr);
  gap: clamp(36px, 6vw, 96px);
  align-items: end;
}

.s6-coatings-renewal__band {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 0;
  border-top: 1px solid var(--coating-line);
  border-left: 1px solid var(--coating-line);
  background: rgba(255,255,255,.18);
}

.s6-coatings-renewal__band article {
  min-height: 320px;
  padding: clamp(28px, 4vw, 46px);
  border-right: 1px solid var(--coating-line);
  border-bottom: 1px solid var(--coating-line);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 18px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.22), rgba(255,255,255,.02)),
    rgba(232,226,216,.72);
}

.s6-coatings-renewal__band span,
.s6-coatings-system-card span {
  font-size: .72rem;
  letter-spacing: .24em;
  text-transform: uppercase;
  color: rgba(23,21,19,.52);
}

.s6-coatings-renewal__band strong {
  font-size: clamp(1.25rem, 2vw, 2.1rem);
  line-height: 1;
  letter-spacing: -.04em;
}

.s6-coatings-systems__grid {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  grid-auto-rows: minmax(260px, auto);
  gap: clamp(24px, 3vw, 38px);
}

.s6-coatings-system-card {
  padding: clamp(34px, 4.5vw, 64px);
  min-height: 300px;
  background:
    radial-gradient(circle at 70% 18%, rgba(142,196,63,.1), transparent 28%),
    linear-gradient(145deg, rgba(255,255,255,.55), rgba(217,208,194,.72));
  border: 1px solid rgba(23,21,19,.1);
  box-shadow: 0 28px 80px rgba(35,30,24,.11);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.s6-coatings-system-card--large {
  grid-row: span 2;
  min-height: 680px;
}

.s6-coatings-system-card h3 {
  margin: 16px 0 18px;
  font-size: clamp(1.8rem, 4vw, 4.8rem);
  line-height: .9;
  letter-spacing: -.055em;
}

.s6-coatings-system-card p {
  max-width: 620px;
  color: var(--coating-muted);
  line-height: 1.7;
}

.s6-coatings-waterproofing {
  background:
    radial-gradient(circle at 80% 30%, rgba(142,196,63,.12), transparent 28%),
    linear-gradient(135deg, #181716 0%, #2a2925 100%);
  color: #fff;
  padding: clamp(92px, 11vw, 170px) 0;
}

.s6-coatings-waterproofing p,
.s6-coatings-waterproofing li {
  color: rgba(255,255,255,.7);
}

.s6-coatings-waterproofing__visual {
  min-height: 560px;
  padding: clamp(30px, 4vw, 60px);
  display: grid;
  align-content: end;
  gap: 12px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(0,0,0,.22)),
    radial-gradient(circle at 30% 20%, rgba(142,196,63,.12), transparent 30%),
    #111;
  border: 1px solid rgba(255,255,255,.12);
}

.s6-coatings-waterproofing__visual span {
  display: block;
  padding: 18px 0;
  border-bottom: 1px solid rgba(255,255,255,.16);
  font-size: clamp(1.5rem, 3vw, 3.3rem);
  line-height: .92;
  letter-spacing: -.05em;
  text-transform: uppercase;
}

.s6-coatings-waterproofing ul {
  margin: 30px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 14px;
}

.s6-coatings-waterproofing li {
  position: relative;
  padding-left: 22px;
}

.s6-coatings-waterproofing li::before {
  content: "";
  width: 7px;
  height: 7px;
  background: var(--s6-green, #8EC43F);
  position: absolute;
  left: 0;
  top: .7em;
}

.s6-coatings-palette-wall {
  display: grid;
  grid-template-columns: 1.25fr repeat(4, .75fr);
  min-height: 420px;
  border: 1px solid var(--coating-line);
}

.s6-coatings-palette-wall span {
  display: block;
  background:
    linear-gradient(180deg, rgba(255,255,255,.16), rgba(0,0,0,.08)),
    var(--tone);
  border-right: 1px solid rgba(23,21,19,.1);
}

.s6-coatings-palette-wall span:last-child {
  border-right: 0;
}

.s6-coatings-restoration__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 22px;
}

.s6-coatings-restoration__grid article {
  min-height: 220px;
  padding: 32px;
  display: flex;
  align-items: flex-end;
  background: rgba(255,255,255,.42);
  border: 1px solid var(--coating-line);
}

.s6-coatings-restoration__grid strong {
  font-size: clamp(1.15rem, 1.8vw, 1.8rem);
  line-height: 1.08;
  letter-spacing: -.035em;
}

@media (max-width: 1180px) {
  .s6-coatings-hero__panel {
    display: none;
  }

  .s6-coatings-hero__grid,
  .s6-coatings-overview__grid,
  .s6-coatings-waterproofing__grid,
  .s6-coatings-section-head--split,
  .s6-coatings-systems__grid {
    grid-template-columns: 1fr;
  }

  .s6-coatings-system-card--large {
    grid-row: auto;
    min-height: 420px;
  }

  .s6-coatings-renewal__band,
  .s6-coatings-restoration__grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
}

@media (max-width: 760px) {
  .s6-coatings-overview__image,
  .s6-coatings-waterproofing__visual {
    min-height: 380px;
  }

  .s6-coatings-renewal__band,
  .s6-coatings-restoration__grid,
  .s6-coatings-palette-wall {
    grid-template-columns: 1fr;
  }

  .s6-coatings-palette-wall {
    min-height: auto;
  }

  .s6-coatings-palette-wall span {
    min-height: 120px;
    border-right: 0;
    border-bottom: 1px solid rgba(23,21,19,.1);
  }
}


.s6-caulking-page {
  --caulk-dark: #101214;
  --caulk-mid: #1a1d20;
  --caulk-light: #f2f1ee;
  --caulk-ink: #121416;
  --caulk-muted: rgba(18,20,22,.68);
  --caulk-line: rgba(18,20,22,.12);
  background: var(--caulk-light);
  color: var(--caulk-ink);
}

.s6-caulking-hero {
  position: relative;
  min-height: 108svh;
  overflow: hidden;
  background:
    radial-gradient(circle at 82% 18%, rgba(142,196,63,.13), transparent 28%),
    linear-gradient(135deg, #0d0f11 0%, #1d2024 100%);
  color: #fff;
}

.s6-caulking-hero::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 34vh;
  background: linear-gradient(to bottom, rgba(242,241,238,0) 0%, rgba(242,241,238,.72) 72%, #f2f1ee 100%);
  pointer-events: none;
}

.s6-caulking-hero__overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(0,0,0,.76) 0%, rgba(0,0,0,.34) 56%, rgba(0,0,0,.08) 100%),
    repeating-linear-gradient(90deg, transparent 0px, transparent 118px, rgba(255,255,255,.035) 119px, rgba(255,255,255,.035) 120px);
  pointer-events: none;
}

.s6-caulking-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(240px, .42fr);
  gap: clamp(38px, 6vw, 110px);
  align-items: end;
  position: relative;
  z-index: 2;
}

.s6-caulking-hero__copy h1 {
  font-size: clamp(3rem, 7.5vw, 8.6rem);
  line-height: .84;
  letter-spacing: -.075em;
  margin: 0 0 30px;
  text-transform: uppercase;
}

.s6-caulking-hero__copy h1 span {
  color: rgba(255,255,255,.78);
}

.s6-caulking-hero__copy p {
  max-width: 720px;
  color: rgba(255,255,255,.72);
  line-height: 1.8;
}

.s6-caulking-hero__lines {
  position: relative;
  min-height: 470px;
  display: flex;
  justify-content: space-between;
  opacity: .9;
}

.s6-caulking-hero__lines span {
  width: 1px;
  background: linear-gradient(180deg, transparent 0%, rgba(255,255,255,.5) 48%, transparent 100%);
}

.s6-caulking-section,
.s6-caulking-projects {
  background: #f2f1ee;
  color: var(--caulk-ink);
  padding: clamp(92px, 11vw, 170px) 0;
}

.s6-caulking-overview__grid,
.s6-caulking-continuity__grid {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  gap: clamp(44px, 6vw, 100px);
  align-items: center;
}

.s6-caulking-overview__copy h2,
.s6-caulking-section-head h2,
.s6-caulking-continuity h2 {
  margin: 0 0 28px;
  font-size: clamp(2rem, 5vw, 5.8rem);
  line-height: .9;
  letter-spacing: -.06em;
}

.s6-caulking-overview__copy p:not(.s6-section-label),
.s6-caulking-section-head p,
.s6-caulking-continuity p {
  color: var(--caulk-muted);
  line-height: 1.75;
  font-size: clamp(1rem, 1.35vw, 1.22rem);
}

.s6-caulking-overview__diagram,
.s6-caulking-continuity__visual {
  min-height: 540px;
  padding: clamp(34px, 4vw, 60px);
  display: grid;
  align-content: end;
  gap: 10px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.82), rgba(230,230,226,.9)),
    repeating-linear-gradient(90deg, transparent 0px, transparent 80px, rgba(18,20,22,.04) 81px, rgba(18,20,22,.04) 82px);
  border: 1px solid rgba(18,20,22,.09);
}

.s6-caulking-overview__diagram span,
.s6-caulking-continuity__visual span {
  display: block;
  padding: 18px 0;
  border-bottom: 1px solid rgba(18,20,22,.13);
  font-size: clamp(1.4rem, 2.8vw, 3rem);
  line-height: .92;
  letter-spacing: -.055em;
  text-transform: uppercase;
}

.s6-caulking-section-head {
  max-width: 1040px;
  margin-bottom: clamp(44px, 6vw, 88px);
}

.s6-caulking-section-head--split {
  max-width: none;
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(320px, .55fr);
  gap: clamp(36px, 6vw, 96px);
  align-items: end;
}

.s6-caulking-movement__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid var(--caulk-line);
  border-left: 1px solid var(--caulk-line);
}

.s6-caulking-movement__grid article {
  min-height: 320px;
  padding: clamp(30px, 4vw, 50px);
  border-right: 1px solid var(--caulk-line);
  border-bottom: 1px solid var(--caulk-line);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  background: rgba(255,255,255,.34);
}

.s6-caulking-movement__grid span {
  font-size: clamp(1.5rem, 3vw, 3.2rem);
  color: var(--s6-green, #8EC43F);
  margin-bottom: 16px;
  letter-spacing: -.05em;
}

.s6-caulking-movement__grid strong,
.s6-caulking-transition-wall strong,
.s6-caulking-glazing__cards strong {
  font-size: clamp(1.15rem, 1.8vw, 2rem);
  line-height: 1.05;
  letter-spacing: -.04em;
}

.s6-caulking-transition-wall {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  background: rgba(18,20,22,.09);
}

.s6-caulking-transition-wall article {
  min-height: 260px;
  padding: 36px;
  background: #fafaf8;
  display: flex;
  align-items: flex-end;
}

.s6-caulking-continuity {
  background:
    radial-gradient(circle at 80% 20%, rgba(142,196,63,.12), transparent 28%),
    linear-gradient(135deg, #111214 0%, #1d1f22 100%);
  color: #fff;
  padding: clamp(92px, 11vw, 170px) 0;
}

.s6-caulking-continuity p,
.s6-caulking-continuity li {
  color: rgba(255,255,255,.72);
}

.s6-caulking-continuity__visual {
  background:
    repeating-linear-gradient(90deg, transparent 0px, transparent 76px, rgba(255,255,255,.045) 77px, rgba(255,255,255,.045) 78px),
    linear-gradient(135deg, rgba(255,255,255,.045), rgba(255,255,255,.015));
  border-color: rgba(255,255,255,.12);
}

.s6-caulking-continuity__visual span {
  border-bottom-color: rgba(255,255,255,.16);
  color: #fff;
}

.s6-caulking-continuity ul {
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 14px;
}

.s6-caulking-continuity li {
  position: relative;
  padding-left: 22px;
}

.s6-caulking-continuity li::before {
  content: "";
  width: 7px;
  height: 7px;
  background: var(--s6-green, #8EC43F);
  position: absolute;
  left: 0;
  top: .7em;
}

.s6-caulking-glazing__cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.s6-caulking-glazing__cards article {
  min-height: 300px;
  padding: 36px;
  display: flex;
  align-items: flex-end;
  background: linear-gradient(180deg, rgba(255,255,255,.42), rgba(0,0,0,.04));
  border: 1px solid rgba(18,20,22,.08);
}

.s6-caulking-faq .s6-faq-list {
  max-width: 980px;
}

@media (max-width: 1100px) {
  .s6-caulking-hero__lines {
    display: none;
  }

  .s6-caulking-hero__grid,
  .s6-caulking-overview__grid,
  .s6-caulking-section-head--split,
  .s6-caulking-continuity__grid,
  .s6-caulking-movement__grid,
  .s6-caulking-transition-wall,
  .s6-caulking-glazing__cards {
    grid-template-columns: 1fr;
  }

  .s6-caulking-movement__grid {
    border-left: 0;
  }
}

@media (max-width: 760px) {
  .s6-caulking-overview__diagram,
  .s6-caulking-continuity__visual {
    min-height: 360px;
  }

  .s6-caulking-movement__grid article,
  .s6-caulking-transition-wall article,
  .s6-caulking-glazing__cards article {
    min-height: 190px;
  }
}


.s6-landscape-page {
  --land-bg: #eee9dc;
  --land-bg-soft: #f7f2e8;
  --land-ink: #15150f;
  --land-muted: rgba(21,21,15,.68);
  --land-line: rgba(21,21,15,.12);
  --land-earth: #83745b;
  --land-water: #8ca7a0;
  background: var(--land-bg);
  color: var(--land-ink);
}

.s6-landscape-hero {
  position: relative;
  min-height: 112svh;
  overflow: hidden;
  color: #fff;
  background:
    linear-gradient(135deg, rgba(8,10,8,.72), rgba(8,10,8,.24)),
    radial-gradient(circle at 75% 22%, rgba(142,196,63,.18), transparent 28%),
    linear-gradient(135deg, #162015 0%, #3b3b2a 52%, #786d55 100%);
}

.s6-landscape-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .18;
  background:
    repeating-radial-gradient(ellipse at 72% 35%, transparent 0 36px, rgba(255,255,255,.32) 37px 38px, transparent 39px 72px);
  transform: rotate(-8deg) scale(1.18);
  pointer-events: none;
}

.s6-landscape-hero::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 36vh;
  background: linear-gradient(to bottom, rgba(238,233,220,0) 0%, rgba(238,233,220,.78) 74%, #eee9dc 100%);
  pointer-events: none;
}

.s6-landscape-hero__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(0,0,0,.68) 0%, rgba(0,0,0,.22) 100%);
  pointer-events: none;
}

.s6-landscape-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, .42fr);
  gap: clamp(40px, 6vw, 110px);
  align-items: end;
  position: relative;
  z-index: 2;
}

.s6-landscape-hero__copy h1 {
  margin: 0 0 30px;
  font-size: clamp(3.2rem, 8vw, 9rem);
  line-height: .84;
  letter-spacing: -.075em;
  text-transform: uppercase;
}

.s6-landscape-hero__copy h1 span {
  color: rgba(255,255,255,.78);
}

.s6-landscape-hero__copy p {
  max-width: 760px;
  color: rgba(255,255,255,.74);
  line-height: 1.8;
}

.s6-landscape-hero__panel {
  min-height: 440px;
  padding: clamp(30px, 4vw, 58px);
  display: grid;
  align-content: end;
  gap: 14px;
  border-left: 1px solid rgba(255,255,255,.22);
  background: linear-gradient(135deg, rgba(255,255,255,.055), rgba(255,255,255,.015));
  backdrop-filter: blur(12px);
}

.s6-landscape-hero__panel span {
  display: block;
  padding: 18px 0;
  border-bottom: 1px solid rgba(255,255,255,.14);
  font-size: clamp(1.25rem, 2.5vw, 2.9rem);
  line-height: .92;
  letter-spacing: -.05em;
  text-transform: uppercase;
}

.s6-landscape-section,
.s6-landscape-projects {
  background:
    radial-gradient(circle at 10% 10%, rgba(142,196,63,.08), transparent 32%),
    linear-gradient(135deg, #f4efe5 0%, #e4dac8 100%);
  color: var(--land-ink);
  padding: clamp(92px, 11vw, 170px) 0;
}

.s6-landscape-overview__grid,
.s6-landscape-retaining__grid,
.s6-landscape-water__grid {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  gap: clamp(44px, 6vw, 100px);
  align-items: center;
}

.s6-landscape-overview__visual {
  min-height: 620px;
  padding: clamp(34px, 4vw, 62px);
  display: grid;
  align-content: end;
  gap: 12px;
  background:
    linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.26)),
    radial-gradient(circle at 30% 22%, rgba(142,196,63,.18), transparent 25%),
    #8b8065;
  box-shadow: 0 44px 100px rgba(50,43,28,.18);
}

.s6-landscape-overview__visual span {
  display: block;
  padding: 18px 0;
  border-bottom: 1px solid rgba(255,255,255,.18);
  color: #fff;
  font-size: clamp(1.4rem, 3vw, 3.4rem);
  line-height: .92;
  letter-spacing: -.05em;
  text-transform: uppercase;
}

.s6-landscape-overview__copy h2,
.s6-landscape-section-head h2,
.s6-landscape-retaining h2,
.s6-landscape-water h2 {
  margin: 0 0 28px;
  font-size: clamp(2.1rem, 5vw, 5.8rem);
  line-height: .9;
  letter-spacing: -.06em;
}

.s6-landscape-overview__copy p:not(.s6-section-label),
.s6-landscape-section-head p,
.s6-landscape-retaining p,
.s6-landscape-water p,
.s6-landscape-groundworks__grid p {
  color: var(--land-muted);
  line-height: 1.75;
  font-size: clamp(1rem, 1.35vw, 1.22rem);
}

.s6-landscape-section-head {
  max-width: 1040px;
  margin-bottom: clamp(44px, 6vw, 88px);
}

.s6-landscape-section-head--split {
  max-width: none;
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(320px, .55fr);
  gap: clamp(36px, 6vw, 96px);
  align-items: end;
}

.s6-landscape-hardscape__grid {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  grid-auto-rows: minmax(260px, auto);
  gap: clamp(24px, 3vw, 38px);
}

.s6-landscape-hardscape__grid article {
  min-height: 280px;
  padding: clamp(34px, 4.5vw, 64px);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  background:
    radial-gradient(circle at 70% 18%, rgba(142,196,63,.1), transparent 28%),
    linear-gradient(145deg, rgba(255,255,255,.42), rgba(207,195,170,.72));
  border: 1px solid var(--land-line);
}

.s6-landscape-hardscape__grid .s6-landscape-large-card {
  grid-row: span 2;
  min-height: 660px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(32,28,18,.24)),
    radial-gradient(circle at 22% 24%, rgba(255,255,255,.18), transparent 18%),
    #b4a482;
}

.s6-landscape-hardscape__grid span,
.s6-landscape-retaining__stack span {
  font-size: .72rem;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: rgba(21,21,15,.52);
}

.s6-landscape-hardscape__grid h3 {
  margin: 16px 0 18px;
  font-size: clamp(1.65rem, 3.2vw, 4rem);
  line-height: .9;
  letter-spacing: -.055em;
}

.s6-landscape-hardscape__grid p {
  max-width: 620px;
  color: var(--land-muted);
  line-height: 1.7;
}

.s6-landscape-retaining__stack {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 1px;
  background: rgba(21,21,15,.1);
}

.s6-landscape-retaining__stack article {
  min-height: 250px;
  padding: 34px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  background:
    radial-gradient(circle at 70% 20%, rgba(255,255,255,.18), transparent 24%),
    #d1c3a8;
}

.s6-landscape-retaining__stack strong {
  margin-top: 14px;
  font-size: clamp(1.25rem, 2vw, 2.2rem);
  line-height: 1;
  letter-spacing: -.04em;
}

.s6-landscape-water {
  background:
    radial-gradient(circle at 78% 22%, rgba(142,196,63,.12), transparent 28%),
    linear-gradient(135deg, #111814 0%, #243832 100%);
  color: #fff;
  padding: clamp(92px, 11vw, 170px) 0;
}

.s6-landscape-water p,
.s6-landscape-water li {
  color: rgba(255,255,255,.72);
}

.s6-landscape-water__visual {
  min-height: 560px;
  padding: clamp(36px, 4vw, 64px);
  display: grid;
  align-content: end;
  gap: 12px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.1), rgba(0,0,0,.26)),
    radial-gradient(circle at 55% 42%, rgba(126,165,160,.38), transparent 30%),
    #13231f;
  border: 1px solid rgba(255,255,255,.12);
}

.s6-landscape-water__visual span {
  display: block;
  padding: 18px 0;
  border-bottom: 1px solid rgba(255,255,255,.16);
  font-size: clamp(1.5rem, 3vw, 3.4rem);
  line-height: .92;
  letter-spacing: -.05em;
  text-transform: uppercase;
}

.s6-landscape-water ul {
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 14px;
}

.s6-landscape-water li {
  position: relative;
  padding-left: 22px;
}

.s6-landscape-water li::before {
  content: "";
  width: 7px;
  height: 7px;
  background: var(--s6-green, #8EC43F);
  position: absolute;
  left: 0;
  top: .7em;
}

.s6-landscape-groundworks__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 22px;
}

.s6-landscape-groundworks__grid article {
  min-height: 250px;
  padding: 32px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  background: rgba(255,255,255,.42);
  border: 1px solid var(--land-line);
}

.s6-landscape-groundworks__grid strong {
  display: block;
  margin-bottom: 14px;
  font-size: clamp(1.2rem, 1.9vw, 2rem);
  line-height: 1.05;
  letter-spacing: -.04em;
}

.s6-landscape-faq .s6-faq-list {
  max-width: 980px;
}

@media (max-width: 1180px) {
  .s6-landscape-hero__panel {
    display: none;
  }

  .s6-landscape-hero__grid,
  .s6-landscape-overview__grid,
  .s6-landscape-retaining__grid,
  .s6-landscape-water__grid,
  .s6-landscape-section-head--split,
  .s6-landscape-hardscape__grid {
    grid-template-columns: 1fr;
  }

  .s6-landscape-hardscape__grid .s6-landscape-large-card {
    grid-row: auto;
    min-height: 420px;
  }

  .s6-landscape-groundworks__grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
}

@media (max-width: 760px) {
  .s6-landscape-overview__visual,
  .s6-landscape-water__visual {
    min-height: 380px;
  }

  .s6-landscape-retaining__stack,
  .s6-landscape-groundworks__grid {
    grid-template-columns: 1fr;
  }
}


.s6-restoration-page {
  --restore-bg: #e8e3d8;
  --restore-soft: #f2eee6;
  --restore-ink: #161512;
  --restore-muted: rgba(22,21,18,.68);
  --restore-line: rgba(22,21,18,.12);
  --restore-dark: #151514;
  background: var(--restore-bg);
  color: var(--restore-ink);
}

.s6-restoration-hero {
  position: relative;
  min-height: 112svh;
  overflow: hidden;
  color: #fff;
  background:
    radial-gradient(circle at 72% 24%, rgba(142,196,63,.13), transparent 28%),
    linear-gradient(135deg, #11110f 0%, #2b2924 48%, #6e6759 100%);
}

.s6-restoration-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .16;
  background:
    linear-gradient(90deg, transparent 0 49%, rgba(255,255,255,.42) 50%, transparent 51%),
    linear-gradient(0deg, transparent 0 49%, rgba(255,255,255,.24) 50%, transparent 51%);
  background-size: 120px 120px;
  pointer-events: none;
}

.s6-restoration-hero::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 36vh;
  background: linear-gradient(to bottom, rgba(232,227,216,0) 0%, rgba(232,227,216,.78) 74%, #e8e3d8 100%);
  pointer-events: none;
}

.s6-restoration-hero__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(0,0,0,.76) 0%, rgba(0,0,0,.32) 100%);
  pointer-events: none;
}

.s6-restoration-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, .42fr);
  gap: clamp(40px, 6vw, 110px);
  align-items: end;
  position: relative;
  z-index: 2;
}

.s6-restoration-hero__copy h1 {
  margin: 0 0 30px;
  font-size: clamp(3.2rem, 8vw, 9rem);
  line-height: .84;
  letter-spacing: -.075em;
  text-transform: uppercase;
}

.s6-restoration-hero__copy h1 span {
  color: rgba(255,255,255,.78);
}

.s6-restoration-hero__copy p {
  max-width: 780px;
  color: rgba(255,255,255,.74);
  line-height: 1.8;
}

.s6-restoration-hero__panel {
  min-height: 440px;
  padding: clamp(30px, 4vw, 58px);
  display: grid;
  align-content: end;
  gap: 14px;
  border-left: 1px solid rgba(255,255,255,.22);
  background: linear-gradient(135deg, rgba(255,255,255,.055), rgba(255,255,255,.015));
  backdrop-filter: blur(12px);
}

.s6-restoration-hero__panel span {
  display: block;
  padding: 18px 0;
  border-bottom: 1px solid rgba(255,255,255,.14);
  font-size: clamp(1.25rem, 2.5vw, 2.9rem);
  line-height: .92;
  letter-spacing: -.05em;
  text-transform: uppercase;
}

.s6-restoration-section,
.s6-restoration-projects {
  background:
    radial-gradient(circle at 12% 12%, rgba(142,196,63,.07), transparent 32%),
    linear-gradient(135deg, #f1ede4 0%, #ded6c9 100%);
  color: var(--restore-ink);
  padding: clamp(92px, 11vw, 170px) 0;
}

.s6-restoration-overview__grid,
.s6-restoration-repair__grid,
.s6-restoration-heritage__grid {
  display: grid;
  grid-template-columns: minmax(0, .98fr) minmax(0, 1.02fr);
  gap: clamp(44px, 6vw, 100px);
  align-items: center;
}

.s6-restoration-overview__copy h2,
.s6-restoration-section-head h2,
.s6-restoration-repair h2,
.s6-restoration-heritage h2 {
  margin: 0 0 28px;
  font-size: clamp(2.1rem, 5vw, 5.8rem);
  line-height: .9;
  letter-spacing: -.06em;
}

.s6-restoration-overview__copy p:not(.s6-section-label),
.s6-restoration-section-head p,
.s6-restoration-repair p,
.s6-restoration-heritage p,
.s6-restoration-systems__grid p {
  color: var(--restore-muted);
  line-height: 1.75;
  font-size: clamp(1rem, 1.35vw, 1.22rem);
}

.s6-restoration-overview__visual,
.s6-restoration-repair__visual {
  min-height: 600px;
  padding: clamp(34px, 4vw, 62px);
  display: grid;
  align-content: end;
  gap: 12px;
  background:
    linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.28)),
    radial-gradient(circle at 26% 22%, rgba(142,196,63,.14), transparent 25%),
    #777064;
  box-shadow: 0 44px 100px rgba(50,43,28,.18);
}

.s6-restoration-overview__visual span,
.s6-restoration-repair__visual span {
  display: block;
  padding: 18px 0;
  border-bottom: 1px solid rgba(255,255,255,.18);
  color: #fff;
  font-size: clamp(1.35rem, 2.8vw, 3.2rem);
  line-height: .92;
  letter-spacing: -.05em;
  text-transform: uppercase;
}

.s6-restoration-section-head {
  max-width: 1080px;
  margin-bottom: clamp(44px, 6vw, 88px);
}

.s6-restoration-section-head--split {
  max-width: none;
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(320px, .55fr);
  gap: clamp(36px, 6vw, 96px);
  align-items: end;
}

.s6-restoration-assessment__grid {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  grid-auto-rows: minmax(260px, auto);
  gap: clamp(24px, 3vw, 38px);
}

.s6-restoration-assessment__grid article {
  min-height: 280px;
  padding: clamp(34px, 4.5vw, 64px);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  background:
    radial-gradient(circle at 70% 18%, rgba(142,196,63,.08), transparent 28%),
    linear-gradient(145deg, rgba(255,255,255,.42), rgba(205,197,183,.72));
  border: 1px solid var(--restore-line);
}

.s6-restoration-assessment__grid .s6-restoration-large-card {
  grid-row: span 2;
  min-height: 660px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(32,28,18,.24)),
    radial-gradient(circle at 22% 24%, rgba(255,255,255,.18), transparent 18%),
    #aaa093;
}

.s6-restoration-assessment__grid span,
.s6-restoration-heritage__stack span {
  font-size: .72rem;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: rgba(22,21,18,.52);
}

.s6-restoration-assessment__grid h3 {
  margin: 16px 0 18px;
  font-size: clamp(1.65rem, 3.2vw, 4rem);
  line-height: .9;
  letter-spacing: -.055em;
}

.s6-restoration-assessment__grid p {
  max-width: 640px;
  color: var(--restore-muted);
  line-height: 1.7;
}

.s6-restoration-repair {
  background:
    radial-gradient(circle at 78% 22%, rgba(142,196,63,.12), transparent 28%),
    linear-gradient(135deg, #141413 0%, #2a2925 100%);
  color: #fff;
  padding: clamp(92px, 11vw, 170px) 0;
}

.s6-restoration-repair p,
.s6-restoration-repair li {
  color: rgba(255,255,255,.72);
}

.s6-restoration-repair ul {
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 14px;
}

.s6-restoration-repair li {
  position: relative;
  padding-left: 22px;
}

.s6-restoration-repair li::before {
  content: "";
  width: 7px;
  height: 7px;
  background: var(--s6-green, #8EC43F);
  position: absolute;
  left: 0;
  top: .7em;
}

.s6-restoration-heritage__stack,
.s6-restoration-systems__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 1px;
  background: rgba(22,21,18,.1);
}

.s6-restoration-heritage__stack article,
.s6-restoration-systems__grid article {
  min-height: 250px;
  padding: 34px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  background:
    radial-gradient(circle at 70% 20%, rgba(255,255,255,.18), transparent 24%),
    #d2c9ba;
}

.s6-restoration-heritage__stack strong,
.s6-restoration-systems__grid strong {
  margin-bottom: 14px;
  font-size: clamp(1.25rem, 2vw, 2.2rem);
  line-height: 1;
  letter-spacing: -.04em;
}

.s6-restoration-faq .s6-faq-list {
  max-width: 980px;
}

@media (max-width: 1180px) {
  .s6-restoration-hero__panel {
    display: none;
  }

  .s6-restoration-hero__grid,
  .s6-restoration-overview__grid,
  .s6-restoration-repair__grid,
  .s6-restoration-heritage__grid,
  .s6-restoration-section-head--split,
  .s6-restoration-assessment__grid {
    grid-template-columns: 1fr;
  }

  .s6-restoration-assessment__grid .s6-restoration-large-card {
    grid-row: auto;
    min-height: 420px;
  }
}

@media (max-width: 760px) {
  .s6-restoration-overview__visual,
  .s6-restoration-repair__visual {
    min-height: 380px;
  }

  .s6-restoration-heritage__stack,
  .s6-restoration-systems__grid {
    grid-template-columns: 1fr;
  }
}


.s6-restoration-envelope,
.s6-restoration-concrete,
.s6-restoration-lifecycle {
  padding: clamp(92px, 11vw, 170px) 0;
}

.s6-restoration-envelope {
  background:
    radial-gradient(circle at 80% 18%, rgba(142,196,63,.08), transparent 28%),
    linear-gradient(135deg, #f3efe7 0%, #ded5c7 100%);
  color: var(--restore-ink);
}

.s6-restoration-envelope__grid,
.s6-restoration-concrete__grid,
.s6-restoration-lifecycle__grid {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  gap: clamp(44px, 6vw, 100px);
  align-items: center;
}

.s6-restoration-envelope h2,
.s6-restoration-concrete h2,
.s6-restoration-lifecycle h2 {
  margin: 0 0 28px;
  font-size: clamp(2.1rem, 5vw, 5.8rem);
  line-height: .9;
  letter-spacing: -.06em;
}

.s6-restoration-envelope p,
.s6-restoration-concrete p,
.s6-restoration-lifecycle p {
  color: var(--restore-muted);
  line-height: 1.75;
  font-size: clamp(1rem, 1.35vw, 1.22rem);
}

.s6-restoration-envelope__items {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 1px;
  background: rgba(22,21,18,.1);
}

.s6-restoration-envelope__items article {
  min-height: 210px;
  padding: 30px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  background:
    linear-gradient(180deg, rgba(255,255,255,.52), rgba(255,255,255,.2)),
    #d2c8b9;
}

.s6-restoration-envelope__items strong {
  font-size: clamp(1.15rem, 1.7vw, 1.85rem);
  line-height: 1.05;
  letter-spacing: -.04em;
}

.s6-restoration-envelope__items span {
  display: block;
  margin-top: 12px;
  color: var(--restore-muted);
  line-height: 1.5;
}

.s6-restoration-concrete {
  background:
    radial-gradient(circle at 78% 22%, rgba(142,196,63,.12), transparent 28%),
    linear-gradient(135deg, #141413 0%, #2a2925 100%);
  color: #fff;
}

.s6-restoration-concrete p,
.s6-restoration-concrete li {
  color: rgba(255,255,255,.72);
}

.s6-restoration-concrete__visual,
.s6-restoration-lifecycle__visual {
  min-height: 560px;
  padding: clamp(36px, 4vw, 64px);
  display: grid;
  align-content: end;
  gap: 12px;
  border: 1px solid rgba(255,255,255,.12);
}

.s6-restoration-concrete__visual {
  background:
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(0,0,0,.26)),
    radial-gradient(circle at 55% 42%, rgba(142,196,63,.16), transparent 30%),
    #20201d;
}

.s6-restoration-concrete__visual span,
.s6-restoration-lifecycle__visual span {
  display: block;
  padding: 18px 0;
  border-bottom: 1px solid rgba(255,255,255,.16);
  color: #fff;
  font-size: clamp(1.45rem, 2.8vw, 3.2rem);
  line-height: .92;
  letter-spacing: -.05em;
  text-transform: uppercase;
}

.s6-restoration-concrete ul {
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 14px;
}

.s6-restoration-concrete li {
  position: relative;
  padding-left: 22px;
}

.s6-restoration-concrete li::before {
  content: "";
  width: 7px;
  height: 7px;
  background: var(--s6-green, #8EC43F);
  position: absolute;
  left: 0;
  top: .7em;
}

.s6-restoration-heritage__stack {
  grid-template-columns: repeat(3, minmax(0,1fr));
}

.s6-restoration-systems__grid {
  grid-template-columns: repeat(5, minmax(0,1fr));
  gap: 0;
  background: rgba(22,21,18,.1);
}

.s6-restoration-systems__grid article {
  min-height: 290px;
  border-right: 1px solid rgba(22,21,18,.08);
}

.s6-restoration-lifecycle {
  background:
    radial-gradient(circle at 20% 18%, rgba(142,196,63,.08), transparent 28%),
    linear-gradient(135deg, #eee9df 0%, #d9d0c1 100%);
  color: var(--restore-ink);
}

.s6-restoration-lifecycle__visual {
  background:
    linear-gradient(180deg, rgba(255,255,255,.14), rgba(0,0,0,.16)),
    radial-gradient(circle at 35% 30%, rgba(142,196,63,.18), transparent 26%),
    #80786a;
}

.s6-restoration-lifecycle__list {
  margin-top: 34px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 1px;
  background: rgba(22,21,18,.1);
}

.s6-restoration-lifecycle__list article {
  min-height: 150px;
  padding: 28px;
  display: flex;
  align-items: flex-end;
  background: rgba(255,255,255,.42);
}

.s6-restoration-lifecycle__list strong {
  font-size: clamp(1.1rem, 1.7vw, 1.75rem);
  line-height: 1.05;
  letter-spacing: -.04em;
}

@media (max-width: 1180px) {
  .s6-restoration-envelope__grid,
  .s6-restoration-concrete__grid,
  .s6-restoration-lifecycle__grid {
    grid-template-columns: 1fr;
  }

  .s6-restoration-systems__grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .s6-restoration-heritage__stack {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
}

@media (max-width: 760px) {
  .s6-restoration-envelope__items,
  .s6-restoration-lifecycle__list,
  .s6-restoration-systems__grid,
  .s6-restoration-heritage__stack {
    grid-template-columns: 1fr;
  }

  .s6-restoration-concrete__visual,
  .s6-restoration-lifecycle__visual {
    min-height: 380px;
  }
}


.s6-restoration-v87 {
  --r87-bg: #ebe5d9;
  --r87-soft: #f4efe6;
  --r87-ink: #151411;
  --r87-muted: rgba(21,20,17,.66);
  --r87-line: rgba(21,20,17,.12);
  --r87-dark: #121211;
  --r87-stone: #9c9182;
  background: var(--r87-bg);
  color: var(--r87-ink);
}

.s6-restoration-v87-hero {
  min-height: 112svh;
  position: relative;
  overflow: hidden;
  color: #fff;
  background:
    radial-gradient(circle at 78% 22%, rgba(142,196,63,.14), transparent 28%),
    linear-gradient(135deg, #0f0f0d 0%, #24231f 48%, #70685a 100%);
}

.s6-restoration-v87-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .18;
  background:
    linear-gradient(90deg, transparent 0 49%, rgba(255,255,255,.35) 50%, transparent 51%),
    linear-gradient(0deg, transparent 0 49%, rgba(255,255,255,.2) 50%, transparent 51%);
  background-size: 128px 128px;
  pointer-events: none;
}

.s6-restoration-v87-hero::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  height: 38vh;
  background: linear-gradient(to bottom, rgba(235,229,217,0), rgba(235,229,217,.82) 76%, var(--r87-bg));
  pointer-events: none;
}

.s6-restoration-v87-hero__grid {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(360px, .55fr);
  gap: clamp(48px, 7vw, 128px);
  align-items: end;
}

.s6-restoration-v87-hero__copy h1 {
  margin: 0 0 30px;
  font-size: clamp(3.6rem, 8.6vw, 10rem);
  line-height: .82;
  letter-spacing: -.08em;
  text-transform: uppercase;
}

.s6-restoration-v87-hero__copy h1 span {
  color: rgba(255,255,255,.74);
}

.s6-restoration-v87-hero__copy p {
  max-width: 780px;
  color: rgba(255,255,255,.72);
  line-height: 1.8;
}

.s6-restoration-v87-hero__board {
  display: grid;
  gap: 1px;
  background: rgba(255,255,255,.16);
  border: 1px solid rgba(255,255,255,.14);
  backdrop-filter: blur(14px);
}

.s6-restoration-v87-hero__board div {
  min-height: 118px;
  padding: 28px;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  background: rgba(255,255,255,.045);
}

.s6-restoration-v87-hero__board span {
  font-size: .68rem;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: rgba(255,255,255,.48);
}

.s6-restoration-v87-hero__board strong {
  font-size: clamp(1.2rem, 2vw, 2.4rem);
  letter-spacing: -.04em;
  line-height: 1;
  text-transform: uppercase;
}

.s6-restoration-v87-intro,
.s6-restoration-v87-assessment,
.s6-restoration-v87-envelope,
.s6-restoration-v87-heritage,
.s6-restoration-v87-systems,
.s6-restoration-v87-lifecycle,
.s6-restoration-v87-faq {
  padding: clamp(92px, 11vw, 170px) 0;
}

.s6-restoration-v87-intro {
  background: var(--r87-bg);
}

.s6-restoration-v87-intro__grid {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, .9fr);
  gap: clamp(48px, 7vw, 120px);
  align-items: start;
}

.s6-restoration-v87-intro h2,
.s6-restoration-v87-kicker h2,
.s6-restoration-v87-envelope h2,
.s6-restoration-v87-concrete h2,
.s6-restoration-v87-heritage h2,
.s6-restoration-v87-lifecycle h2 {
  margin: 0;
  font-size: clamp(2.4rem, 5.6vw, 6.4rem);
  line-height: .88;
  letter-spacing: -.065em;
}

.s6-restoration-v87-intro p:not(.s6-section-label),
.s6-restoration-v87-envelope p,
.s6-restoration-v87-concrete p,
.s6-restoration-v87-heritage p,
.s6-restoration-v87-lifecycle p,
.s6-restoration-v87-kicker p:not(.s6-section-label) {
  color: var(--r87-muted);
  line-height: 1.78;
  font-size: clamp(1rem, 1.35vw, 1.22rem);
}

.s6-restoration-v87-assessment {
  background: linear-gradient(135deg, #f4efe6, #dfd6c8);
}

.s6-restoration-v87-kicker {
  max-width: 1040px;
  margin-bottom: clamp(46px, 6vw, 92px);
}

.s6-restoration-v87-kicker--split {
  max-width: none;
  display: grid;
  grid-template-columns: minmax(0,.95fr) minmax(320px,.55fr);
  gap: clamp(36px, 6vw, 96px);
  align-items: end;
}

.s6-restoration-v87-report {
  display: grid;
  grid-template-columns: minmax(0,1.45fr) minmax(300px,.55fr);
  gap: 24px;
}

.s6-restoration-v87-report__feature {
  min-height: 720px;
  padding: clamp(38px, 5vw, 74px);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  background:
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(0,0,0,.32)),
    radial-gradient(circle at 20% 18%, rgba(142,196,63,.14), transparent 24%),
    #8d8476;
  color: #fff;
  box-shadow: 0 44px 100px rgba(55,47,35,.18);
}

.s6-restoration-v87-report__feature span,
.s6-restoration-v87-report__stack span,
.s6-restoration-v87-system-list span,
.s6-restoration-v87-spec-grid span {
  font-size: .68rem;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: rgba(21,20,17,.48);
}

.s6-restoration-v87-report__feature span {
  color: rgba(255,255,255,.55);
}

.s6-restoration-v87-report h3 {
  margin: 16px 0 20px;
  font-size: clamp(1.8rem, 4vw, 5.2rem);
  line-height: .88;
  letter-spacing: -.06em;
}

.s6-restoration-v87-report__feature p {
  max-width: 680px;
  color: rgba(255,255,255,.76);
  line-height: 1.75;
}

.s6-restoration-v87-report__stack {
  display: grid;
  gap: 14px;
}

.s6-restoration-v87-report__stack article {
  min-height: 166px;
  padding: 28px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  background: rgba(255,255,255,.46);
  border: 1px solid var(--r87-line);
}

.s6-restoration-v87-report__stack h3 {
  font-size: clamp(1.25rem, 2vw, 2.25rem);
}

.s6-restoration-v87-envelope {
  background: var(--r87-soft);
}

.s6-restoration-v87-envelope__grid {
  display: grid;
  grid-template-columns: minmax(320px,.55fr) minmax(0,1.45fr);
  gap: clamp(48px, 6vw, 100px);
  align-items: center;
}

.s6-restoration-v87-envelope__headline h2 {
  text-transform: uppercase;
  max-width: 620px;
}

.s6-restoration-v87-system-list {
  border-top: 1px solid var(--r87-line);
}

.s6-restoration-v87-system-list article {
  min-height: 118px;
  display: grid;
  grid-template-columns: 90px 1fr;
  align-items: center;
  border-bottom: 1px solid var(--r87-line);
}

.s6-restoration-v87-system-list strong {
  font-size: clamp(1.6rem, 3.2vw, 4.2rem);
  line-height: .9;
  letter-spacing: -.055em;
  text-transform: uppercase;
}

.s6-restoration-v87-concrete {
  padding: clamp(104px, 12vw, 190px) 0;
  background:
    radial-gradient(circle at 74% 20%, rgba(142,196,63,.12), transparent 26%),
    linear-gradient(135deg, #10100f, #25241f);
  color: #fff;
}

.s6-restoration-v87-concrete__grid {
  display: grid;
  grid-template-columns: minmax(0,1.15fr) minmax(360px,.85fr);
  gap: clamp(48px, 7vw, 120px);
  align-items: center;
}

.s6-restoration-v87-concrete__type {
  display: grid;
  gap: clamp(12px, 2vw, 28px);
}

.s6-restoration-v87-concrete__type span {
  display: block;
  font-size: clamp(3.5rem, 8vw, 10rem);
  line-height: .76;
  letter-spacing: -.08em;
  text-transform: uppercase;
  color: rgba(255,255,255,.9);
  border-bottom: 1px solid rgba(255,255,255,.14);
  padding-bottom: 22px;
}

.s6-restoration-v87-concrete__copy p {
  color: rgba(255,255,255,.72);
}

.s6-restoration-v87-concrete__items {
  margin-top: 34px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.s6-restoration-v87-concrete__items span {
  padding: 12px 16px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 999px;
  color: rgba(255,255,255,.74);
  font-size: .72rem;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.s6-restoration-v87-heritage {
  background: linear-gradient(135deg, #eee7dc, #d5cbbb);
}

.s6-restoration-v87-heritage__grid {
  display: grid;
  grid-template-columns: minmax(0,1.15fr) minmax(340px,.85fr);
  gap: clamp(48px, 7vw, 120px);
  align-items: center;
}

.s6-restoration-v87-heritage__image {
  min-height: 720px;
  padding: clamp(36px, 5vw, 70px);
  display: grid;
  align-content: end;
  gap: 14px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.12), rgba(0,0,0,.2)),
    radial-gradient(circle at 35% 24%, rgba(255,255,255,.18), transparent 20%),
    #a99f8f;
  box-shadow: 0 44px 100px rgba(55,47,35,.16);
}

.s6-restoration-v87-heritage__image span {
  display: block;
  padding: 18px 0;
  border-bottom: 1px solid rgba(255,255,255,.2);
  color: #fff;
  font-size: clamp(1.6rem, 3.5vw, 4.4rem);
  line-height: .9;
  letter-spacing: -.055em;
  text-transform: uppercase;
}

.s6-restoration-v87-heritage__links {
  margin-top: 34px;
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 1px;
  background: var(--r87-line);
}

.s6-restoration-v87-heritage__links span {
  min-height: 92px;
  padding: 22px;
  display: flex;
  align-items: flex-end;
  background: rgba(255,255,255,.44);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.s6-restoration-v87-systems {
  background: #f1ece3;
}

.s6-restoration-v87-spec-grid {
  display: grid;
  grid-template-columns: repeat(5,minmax(0,1fr));
  border-top: 1px solid var(--r87-line);
  border-left: 1px solid var(--r87-line);
}

.s6-restoration-v87-spec-grid article {
  min-height: 310px;
  padding: 28px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  border-right: 1px solid var(--r87-line);
  border-bottom: 1px solid var(--r87-line);
  background: rgba(255,255,255,.38);
}

.s6-restoration-v87-spec-grid strong {
  margin-top: 18px;
  font-size: clamp(1.05rem, 1.65vw, 1.8rem);
  line-height: 1.05;
  letter-spacing: -.04em;
}

.s6-restoration-v87-lifecycle {
  background:
    radial-gradient(circle at 18% 20%, rgba(142,196,63,.08), transparent 28%),
    linear-gradient(135deg, #e6ded1, #cfc4b3);
}

.s6-restoration-v87-lifecycle h2 {
  max-width: 1100px;
  font-size: clamp(4rem, 10vw, 12rem);
  line-height: .78;
  letter-spacing: -.085em;
  text-transform: uppercase;
}

.s6-restoration-v87-lifecycle > .s6-container > p:not(.s6-section-label) {
  margin-top: 32px;
  max-width: 780px;
}

.s6-restoration-v87-lifecycle__pillars {
  margin-top: clamp(44px, 6vw, 90px);
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 1px;
  background: var(--r87-line);
}

.s6-restoration-v87-lifecycle__pillars article {
  min-height: 210px;
  padding: 28px;
  display: flex;
  align-items: flex-end;
  background: rgba(255,255,255,.42);
}

.s6-restoration-v87-lifecycle__pillars strong {
  font-size: clamp(1.1rem, 1.8vw, 2rem);
  line-height: 1;
  letter-spacing: -.04em;
}

.s6-restoration-v87-faq {
  background: var(--r87-bg);
}

.s6-restoration-v87-faq .s6-faq-list {
  max-width: 980px;
}

@media (max-width: 1180px) {
  .s6-restoration-v87-hero__board {
    display: none;
  }

  .s6-restoration-v87-hero__grid,
  .s6-restoration-v87-intro__grid,
  .s6-restoration-v87-report,
  .s6-restoration-v87-envelope__grid,
  .s6-restoration-v87-concrete__grid,
  .s6-restoration-v87-heritage__grid,
  .s6-restoration-v87-kicker--split {
    grid-template-columns: 1fr;
  }

  .s6-restoration-v87-report__feature,
  .s6-restoration-v87-heritage__image {
    min-height: 460px;
  }

  .s6-restoration-v87-spec-grid,
  .s6-restoration-v87-lifecycle__pillars {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 760px) {
  .s6-restoration-v87-system-list article {
    grid-template-columns: 1fr;
    gap: 14px;
    padding: 26px 0;
  }

  .s6-restoration-v87-spec-grid,
  .s6-restoration-v87-lifecycle__pillars,
  .s6-restoration-v87-heritage__links {
    grid-template-columns: 1fr;
  }

  .s6-restoration-v87-concrete__type span {
    font-size: clamp(3rem, 17vw, 5rem);
  }
}


/* Remove the visible report/grid overlay from the hero only */
.s6-restoration-v87-hero::before {
  display: none !important;
}

/* Give the restoration hero enough breathing room below the fixed header + division nav */
.s6-restoration-v87-hero {
  min-height: 112svh !important;
  padding-top: clamp(190px, 18vh, 250px) !important;
  padding-bottom: clamp(120px, 14vh, 190px) !important;
  box-sizing: border-box !important;
  display: flex !important;
  align-items: stretch !important;
}

/* Make the inner hero content control placement instead of sitting too high */
.s6-restoration-v87-hero__grid.s6-division-hero__inner,
.s6-restoration-v87-hero__grid {
  width: 100% !important;
  min-height: auto !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
  align-items: center !important;
}

/* Keep the copy from disappearing under the navigation stack */
.s6-restoration-v87-hero__copy {
  padding-top: clamp(18px, 3vh, 44px) !important;
}

/* Push the hero board into a cleaner vertical alignment beside the headline */
.s6-restoration-v87-hero__board {
  align-self: center !important;
  margin-top: clamp(24px, 4vh, 70px) !important;
}

/* Slightly reduce the title so the fixed nav doesn't visually collide with it */
.s6-restoration-v87-hero__copy h1 {
  font-size: clamp(3.2rem, 8vw, 9rem) !important;
}

/* Add a smoother rolloff into the light page background */
.s6-restoration-v87-hero::after {
  height: 42vh !important;
  background: linear-gradient(
    to bottom,
    rgba(235,229,217,0) 0%,
    rgba(235,229,217,.24) 34%,
    rgba(235,229,217,.76) 74%,
    var(--r87-bg) 100%
  ) !important;
}

/* If older restoration hero gridlines are bleeding through, suppress them inside this hero */
.s6-restoration-v87-hero .s6-division-hero__grid,
.s6-restoration-v87-hero .s6-division-hero__grid::before,
.s6-restoration-v87-hero .s6-division-hero__grid::after {
  background-image: none !important;
}

/* Laptop tuning */
@media (max-width: 1500px) {
  .s6-restoration-v87-hero {
    padding-top: clamp(170px, 17vh, 220px) !important;
  }

  .s6-restoration-v87-hero__copy h1 {
    font-size: clamp(3rem, 7.4vw, 8rem) !important;
  }
}

@media (max-width: 1180px) {
  .s6-restoration-v87-hero {
    padding-top: clamp(150px, 15vh, 200px) !important;
    min-height: auto !important;
  }

  .s6-restoration-v87-hero__copy {
    padding-top: 0 !important;
  }
}

@media (max-width: 760px) {
  .s6-restoration-v87-hero {
    padding-top: 140px !important;
    padding-bottom: 110px !important;
  }
}


.s6-header--division-mode > .s6-division-nav {
  pointer-events: auto !important;
  display: block !important;
  width: 100% !important;
  max-width: 1640px !important;
  min-width: 0 !important;
  margin: 8px auto 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}

.s6-header--division-mode > .s6-division-nav > .s6-division-nav__inner {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: clamp(14px, 1.6vw, 28px) !important;
  padding: 10px 18px 10px 22px !important;
  overflow: hidden !important;
}

.s6-header--division-mode .s6-division-nav__label {
  flex: 0 0 auto !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  white-space: nowrap !important;
  color: #11130f !important;
}

.s6-header--division-mode .s6-division-nav__label strong,
.s6-header--division-mode .s6-division-nav__label em {
  font-weight: 950 !important;
}

.s6-header--division-mode .s6-division-nav__current {
  display: none !important;
}

.s6-header--division-mode .s6-division-nav__trade-group {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  max-width: none !important;
  display: flex !important;
  align-items: center !important;
  overflow: hidden !important;
  white-space: nowrap !important;
}

.s6-header--division-mode .s6-division-ecosystem-nav {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  max-width: 100% !important;
  display: flex !important;
  align-items: center !important;
  gap: clamp(9px, .75vw, 14px) !important;
  overflow: hidden !important;
  white-space: nowrap !important;
}

.s6-header--division-mode .s6-division-ecosystem-nav__item {
  flex: 0 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: rgba(17,19,15,.46) !important;
  font-size: 8px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .11em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

.s6-header--division-mode .s6-division-ecosystem-nav__item:hover {
  color: rgba(17,19,15,.78) !important;
}

.s6-header--division-mode .s6-division-nav__links {
  flex: 0 1 auto !important;
  min-width: 0 !important;
  max-width: 58% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 6px !important;
  margin-left: 0 !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  flex-wrap: nowrap !important;
  white-space: nowrap !important;
  scrollbar-width: none !important;
}

.s6-header--division-mode .s6-division-nav__links::-webkit-scrollbar {
  display: none !important;
}

.s6-header--division-mode .s6-division-nav__links a {
  flex: 0 0 auto !important;
  min-height: 32px !important;
  padding: 8px 11px !important;
  border-radius: 999px !important;
  font-size: 8px !important;
  font-weight: 950 !important;
  letter-spacing: .12em !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

.s6-header--division-mode .s6-division-nav__links a.is-active,
.s6-header--division-mode .s6-division-nav__links a[aria-current="true"] {
  padding: 8px 12px !important;
}

@media (max-width: 1500px) {
  .s6-header--division-mode > .s6-division-nav > .s6-division-nav__inner {
    gap: 12px !important;
    padding-inline: 16px !important;
  }

  .s6-header--division-mode .s6-division-nav__label strong,
  .s6-header--division-mode .s6-division-nav__label em {
    font-size: 8px !important;
    letter-spacing: .12em !important;
  }

  .s6-header--division-mode .s6-division-ecosystem-nav {
    gap: 8px !important;
  }

  .s6-header--division-mode .s6-division-ecosystem-nav__item {
    font-size: 7px !important;
    letter-spacing: .08em !important;
  }

  .s6-header--division-mode .s6-division-nav__links {
    max-width: 56% !important;
    gap: 4px !important;
  }

  .s6-header--division-mode .s6-division-nav__links a {
    min-height: 30px !important;
    padding: 7px 9px !important;
    font-size: 7px !important;
    letter-spacing: .09em !important;
  }
}

@media (max-width: 1100px) {
  .s6-header--division-mode > .s6-division-nav {
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
  }

  .s6-header--division-mode > .s6-division-nav > .s6-division-nav__inner {
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: 10px !important;
    border-radius: 22px !important;
    overflow: hidden !important;
  }

  .s6-header--division-mode .s6-division-nav__trade-group,
  .s6-header--division-mode .s6-division-nav__links {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    justify-content: flex-start !important;
  }
}


.s6-restoration-v87-hero::before {
  display: none !important;
}

.s6-restoration-v87-hero {
  padding-top: clamp(190px, 18vh, 250px) !important;
  padding-bottom: clamp(120px, 14vh, 190px) !important;
  box-sizing: border-box !important;
}

.s6-restoration-v87-hero__grid {
  align-items: center !important;
}

.s6-restoration-v87-hero::after {
  height: 42vh !important;
  background: linear-gradient(
    to bottom,
    rgba(235,229,217,0) 0%,
    rgba(235,229,217,.24) 34%,
    rgba(235,229,217,.76) 74%,
    var(--r87-bg) 100%
  ) !important;
}


.s6-division-page--stucco .s6-division-systems,
.s6-division-page--stucco .s6-division-colours,
.s6-division-page--stucco .s6-division-textures,
.s6-division-page--stucco .s6-division-mouldings,
.s6-division-page--stucco .s6-division-explainer,
.s6-division-page--stucco .s6-division-projects,
.s6-division-page--stucco .s6-division-faq {
    position: relative;
}

.s6-division-page--stucco .s6-system-card,
.s6-division-page--stucco .s6-material-card,
.s6-division-page--stucco .s6-colour-card {
    transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease, background-color .28s ease;
}

.s6-division-page--stucco .s6-system-card:hover,
.s6-division-page--stucco .s6-system-card:focus-visible,
.s6-division-page--stucco .s6-material-card:hover,
.s6-division-page--stucco .s6-material-card:focus-visible,
.s6-division-page--stucco .s6-colour-card:hover,
.s6-division-page--stucco .s6-colour-card:focus-visible {
    transform: translateY(-4px);
    box-shadow:
        0 1.4rem 3.4rem rgba(20, 24, 22, 0.12),
        inset 0 1px 0 rgba(255,255,255,0.75);
}

.s6-division-page--stucco .s6-colour-card:hover span,
.s6-division-page--stucco .s6-colour-card:focus-visible span {
    box-shadow:
        0 1.15rem 2rem rgba(20, 24, 22, 0.2),
        inset 0 1px 0 rgba(255,255,255,0.48),
        inset 0 -1px 0 rgba(0,0,0,0.1);
    transform: translateY(-3px);
}

.s6-division-page--stucco .s6-division-explainer__visual div {
    box-shadow: 0 2rem 5rem rgba(20, 24, 22, 0.16);
}

.s6-division-page--stucco .s6-division-section-header > p:not(.s6-section-label),
.s6-division-page--stucco .s6-division-section-header--split > p {
    max-width: 42rem;
}

@media (max-width: 680px) {
    .s6-division-page--stucco .s6-division-hero__actions {
        align-items: stretch;
        display: grid;
        gap: .75rem;
    }

    .s6-division-page--stucco .s6-division-hero__actions a {
        justify-content: center;
        width: 100%;
    }
}

/* =========================================================
   Stucco colour library category filter + external colour links
========================================================= */
.s6-colour-section-header .s6-colour-section-copy {
    display: grid;
    gap: 1rem;
    justify-items: start;
}

.s6-colour-filter-bar {
    display: flex;
    flex-wrap: wrap;
    gap: .65rem;
    margin: 0 0 1.35rem;
}

.s6-colour-filter-bar button,
.s6-pill-link {
    border: 1px solid rgba(20, 24, 22, .18);
    border-radius: 999px;
    background: rgba(255,255,255,.62);
    color: var(--s6-ink);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.75rem;
    padding: .72rem 1.05rem;
    font-size: .78rem;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
    text-decoration: none;
    cursor: pointer;
    transition: transform .24s ease, border-color .24s ease, background-color .24s ease, color .24s ease, box-shadow .24s ease;
}

.s6-colour-filter-bar button:hover,
.s6-colour-filter-bar button:focus-visible,
.s6-colour-filter-bar button.is-active,
.s6-pill-link:hover,
.s6-pill-link:focus-visible {
    border-color: rgba(142, 196, 63, .58);
    background: #10130f;
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 1rem 2.4rem rgba(20, 24, 22, .13);
    outline: none;
}

.s6-colour-card.is-hidden {
    display: none;
}

.s6-colour-external-callout {
    margin-top: 1.35rem;
    border: 1px solid rgba(20, 24, 22, .12);
    background: rgba(255,255,255,.52);
    padding: clamp(1rem, 2vw, 1.35rem);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.s6-colour-external-callout p {
    margin: 0;
    max-width: 48rem;
    color: var(--s6-muted-ink);
    line-height: 1.6;
}

.s6-pill-link--dark {
    background: #10130f;
    color: #fff;
    border-color: rgba(20, 24, 22, .28);
    white-space: nowrap;
}

.s6-pill-link--dark:hover,
.s6-pill-link--dark:focus-visible {
    background: var(--s6-green);
    color: #0b0d09;
}

@media (max-width: 820px) {
    .s6-colour-external-callout {
        align-items: stretch;
        flex-direction: column;
    }
    .s6-colour-external-callout .s6-pill-link,
    .s6-colour-section-copy .s6-pill-link {
        width: 100%;
    }
}

/* =========================================================
   Stucco texture library category filter + recessed image cards
========================================================= */
.s6-texture-section-copy {
    display: grid;
    gap: 1rem;
    justify-items: start;
}

.s6-texture-filter-bar {
    display: flex;
    flex-wrap: wrap;
    gap: .65rem;
    margin: 0 0 1.35rem;
}

.s6-texture-filter-bar button {
    border: 1px solid rgba(20, 24, 22, .18);
    border-radius: 999px;
    background: rgba(255,255,255,.62);
    color: var(--s6-ink);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.75rem;
    padding: .72rem 1.05rem;
    font-size: .78rem;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
    cursor: pointer;
    transition: transform .24s ease, border-color .24s ease, background-color .24s ease, color .24s ease, box-shadow .24s ease;
}

.s6-texture-filter-bar button:hover,
.s6-texture-filter-bar button:focus-visible,
.s6-texture-filter-bar button.is-active {
    border-color: rgba(142, 196, 63, .58);
    background: #10130f;
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 1rem 2.4rem rgba(20, 24, 22, .13);
    outline: none;
}

.s6-material-card--texture.is-hidden {
    display: none;
}

.s6-texture-card-grid {
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
}

.s6-division-page--stucco .s6-material-card--texture {
    -webkit-appearance: none;
    align-items: stretch;
    border-top: 1px solid rgba(20, 24, 22, .14);
    border-left: 1px solid rgba(20, 24, 22, .12);
    border-right: 1px solid rgba(255,255,255,.66);
    border-bottom: 1px solid rgba(255,255,255,.7);
    background: rgba(232, 228, 218, .72);
    box-shadow:
        inset 0 1.05rem 2rem rgba(20, 24, 22, .16),
        inset .45rem .45rem 1.05rem rgba(20, 24, 22, .08),
        inset -.45rem -.45rem 1rem rgba(255,255,255,.52),
        0 1px 0 rgba(255,255,255,.76);
    transform: none;
}

.s6-division-page--stucco .s6-material-card--texture:hover,
.s6-division-page--stucco .s6-material-card--texture:focus-visible {
    background: rgba(226, 222, 212, .86);
    transform: translateY(2px) scale(.992);
    box-shadow:
        inset 0 1.35rem 2.35rem rgba(20, 24, 22, .2),
        inset .55rem .55rem 1.15rem rgba(20, 24, 22, .1),
        inset -.35rem -.35rem .85rem rgba(255,255,255,.48),
        0 1px 0 rgba(255,255,255,.65);
    outline: none;
}

.s6-material-card__sample--image {
    min-height: 8.8rem;
    padding: .72rem;
    background-color: #d8d1c2;
    background-image:
        radial-gradient(circle at 20% 20%, rgba(255,255,255,.28) 0 1px, transparent 2px),
        radial-gradient(circle at 70% 64%, rgba(0,0,0,.14) 0 1px, transparent 2px),
        linear-gradient(135deg, rgba(255,255,255,.2), rgba(0,0,0,.1));
    background-size: cover, 16px 16px, 18px 18px, auto;
    background-position: center;
    box-shadow:
        inset 0 1.1rem 2rem rgba(20, 24, 22, .24),
        inset .35rem .35rem .9rem rgba(20, 24, 22, .12),
        inset -.25rem -.25rem .8rem rgba(255,255,255,.42),
        0 1px 0 rgba(255,255,255,.66);
}

/* Explicit sizing avoids intrinsic-width collapse in Safari button content. */
.s6-division-page--stucco .s6-material-card--texture > .s6-material-card__sample--image {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    flex: 0 0 auto;
    align-self: stretch;
}

.s6-material-card__sample--image::before {
    display: none;
}

@media (max-width: 820px) {
    .s6-texture-section-copy .s6-pill-link {
        width: 100%;
    }
}

/* =========================================================
   Stucco moulding library category filter + matte profile sketch sheets
========================================================= */
.s6-moulding-filter-bar {
    display: flex;
    flex-wrap: wrap;
    gap: .65rem;
    margin: 0 0 1.35rem;
}

.s6-moulding-filter-bar button {
    border: 1px solid rgba(20, 24, 22, .18);
    border-radius: 999px;
    background: rgba(255,255,255,.62);
    color: var(--s6-ink);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.75rem;
    padding: .72rem 1.05rem;
    font-size: .78rem;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
    cursor: pointer;
    transition: border-color .24s ease, background-color .24s ease, color .24s ease;
}

.s6-moulding-filter-bar button:hover,
.s6-moulding-filter-bar button:focus-visible,
.s6-moulding-filter-bar button.is-active {
    border-color: rgba(142, 196, 63, .72);
    background: var(--s6-green);
    color: #11130f;
    outline: none;
}

.s6-material-card--moulding.is-hidden {
    display: none;
}

.s6-division-page--stucco .s6-material-card-grid--mouldings {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(1rem, 1.8vw, 1.35rem);
    align-items: stretch;
}

.s6-division-page--stucco .s6-material-card--moulding {
    position: relative;
    overflow: visible;
    min-height: 17rem;
    padding: clamp(1rem, 1.45vw, 1.25rem);
    isolation: isolate;
    background:
        linear-gradient(90deg, rgba(20,24,22,.024) 1px, transparent 1px),
        linear-gradient(180deg, rgba(20,24,22,.02) 1px, transparent 1px),
        #fbfaf5;
    background-size: 22px 22px, 22px 22px, auto;
    border: 1px solid rgba(20,24,22,.15);
    border-radius: .72rem;
    box-shadow:
        0 .15rem .18rem rgba(20,24,22,.05),
        0 .75rem 1.45rem rgba(20,24,22,.075),
        0 1.65rem 3.2rem rgba(20,24,22,.045);
    transform: translateZ(0);
    transition: border-color .28s ease, box-shadow .28s ease, background-color .28s ease;
}

.s6-division-page--stucco .s6-material-card--moulding::after {
    content: "";
    position: absolute;
    inset: .42rem -.34rem -.38rem .34rem;
    z-index: -2;
    border-radius: .72rem;
    background: rgba(20,24,22,.055);
    filter: blur(.15rem);
    pointer-events: none;
}

.s6-division-page--stucco .s6-material-card--moulding::before {
    content: "";
    position: absolute;
    top: .72rem;
    right: .72rem;
    width: 2.15rem;
    height: 2px;
    background: rgba(142,196,63,.78);
    border-radius: 999px;
    pointer-events: none;
}

.s6-division-page--stucco .s6-material-card--moulding:hover,
.s6-division-page--stucco .s6-material-card--moulding:focus-visible {
    background-color: #fffdf7;
    border-color: rgba(20,24,22,.18);
    box-shadow:
        0 .18rem .22rem rgba(20,24,22,.055),
        0 .8rem 1.55rem rgba(20,24,22,.08),
        0 1.8rem 3.4rem rgba(20,24,22,.05);
}

.s6-material-card__profile--image {
    position: relative;
    min-height: clamp(9.75rem, 13vw, 12.4rem);
    margin-bottom: 1.15rem;
    border-radius: .42rem;
    border: 1px solid rgba(20,24,22,.12);
    background-color: #f4f2ea;
    background-image:
        linear-gradient(90deg, rgba(20,24,22,.045) 1px, transparent 1px),
        linear-gradient(180deg, rgba(20,24,22,.04) 1px, transparent 1px);
    background-size: 18px 18px, 18px 18px;
    background-position: center;
    box-shadow:
        0 .08rem .08rem rgba(20,24,22,.035),
        0 .35rem .8rem rgba(20,24,22,.055);
    filter: saturate(.86) contrast(.98);
    transform-origin: 50% 100%;
    transition: transform .32s cubic-bezier(.2,.78,.24,1), filter .28s ease, border-color .28s ease, box-shadow .28s ease;
}

.s6-material-card__profile--image::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background:
        linear-gradient(135deg, rgba(255,255,255,.42), rgba(255,255,255,0) 42%),
        linear-gradient(315deg, rgba(20,24,22,.035), rgba(20,24,22,0) 36%);
    pointer-events: none;
}

.s6-material-card__profile--image::after {
    content: "";
    position: absolute;
    left: 10%;
    right: 10%;
    bottom: -.35rem;
    height: .65rem;
    border-radius: 999px;
    background: rgba(20,24,22,.12);
    filter: blur(.45rem);
    opacity: 0;
    transform: translateY(-.15rem) scaleX(.86);
    transition: opacity .32s ease, transform .32s ease;
    pointer-events: none;
}

.s6-division-page--stucco .s6-material-card--moulding:hover .s6-material-card__profile--image,
.s6-division-page--stucco .s6-material-card--moulding:focus-visible .s6-material-card__profile--image {
    transform: translateY(-.28rem) rotateX(1.5deg);
    border-color: rgba(142,196,63,.38);
    box-shadow:
        0 .12rem .12rem rgba(20,24,22,.04),
        0 .8rem 1.35rem rgba(20,24,22,.105);
    filter: saturate(.9) contrast(1.02);
}

.s6-division-page--stucco .s6-material-card--moulding:hover .s6-material-card__profile--image::after,
.s6-division-page--stucco .s6-material-card--moulding:focus-visible .s6-material-card__profile--image::after {
    opacity: 1;
    transform: translateY(0) scaleX(1);
}

.s6-division-page--stucco .s6-material-card--moulding small {
    color: rgba(20,24,22,.46);
    font-size: .64rem;
    letter-spacing: .2em;
}

.s6-division-page--stucco .s6-material-card--moulding strong {
    margin: .5rem 0 .58rem;
    font-size: clamp(1.14rem, 1.42vw, 1.42rem);
    line-height: 1.04;
}

.s6-material-card__moulding-copy {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin: 0 0 1rem;
    color: rgba(20,24,22,.6);
    font-size: .86rem;
    line-height: 1.55;
}

.s6-division-page--stucco .s6-material-card--moulding em {
    margin-top: auto;
    color: rgba(20,24,22,.52);
    font-style: normal;
}

@media (max-width: 1060px) {
    .s6-division-page--stucco .s6-material-card-grid--mouldings {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 680px) {
    .s6-division-page--stucco .s6-material-card-grid--mouldings {
        grid-template-columns: 1fr;
    }
}

.s6-division-page--stucco .s6-division-explainer__visual {
    position: relative;
    overflow: hidden;
    align-items: stretch;
    padding: 0;
    isolation: isolate;
    background:
        linear-gradient(180deg, rgba(0,0,0,.1), rgba(0,0,0,.45)),
        var(--s6-division-detail-bg) center center / cover no-repeat;
    transition: box-shadow .35s ease, filter .35s ease;
}

.s6-division-page--stucco .s6-division-explainer__visual::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 30% 22%, rgba(142,198,64,.22), transparent 28%),
        linear-gradient(120deg, rgba(0,0,0,.18), rgba(0,0,0,.58));
    z-index: 1;
    pointer-events: none;
}

.s6-division-page--stucco .s6-division-explainer__visual::after {
    content: "";
    position: absolute;
    inset: 1rem;
    border: 1px solid rgba(255,255,255,.34);
    z-index: 2;
    pointer-events: none;
}

.s6-division-page--stucco .s6-division-explainer__hotspots {
    position: absolute;
    left: 1.5rem;
    right: 1.5rem;
    bottom: 1.5rem;
    z-index: 3;
    display: flex;
    flex-wrap: wrap;
    gap: .6rem;
    align-items: center;
    justify-content: center;
    width: auto;
    box-shadow: none;
}

.s6-division-page--stucco .s6-explainer-hotspot {
    position: relative;
    appearance: none;
    border: 1px solid rgba(255,255,255,.52);
    border-radius: 999px;
    background: rgba(245,244,241,.86);
    color: var(--s6-ink);
    min-width: 4.9rem;
    min-height: 2.45rem;
    padding: .62rem .95rem;
    display: inline-grid;
    place-items: center;
    cursor: pointer;
    box-shadow:
        0 1rem 2.2rem rgba(0,0,0,.24),
        inset 0 1px 0 rgba(255,255,255,.75);
    transition: transform .24s ease, background .24s ease, color .24s ease, border-color .24s ease, box-shadow .24s ease;
}

.s6-division-page--stucco .s6-explainer-hotspot span {
    min-height: auto;
    background: transparent;
    color: inherit;
    font-size: .7rem;
    font-weight: 900;
    letter-spacing: .14em;
    line-height: 1;
}

.s6-division-page--stucco .s6-explainer-hotspot:hover,
.s6-division-page--stucco .s6-explainer-hotspot:focus-visible,
.s6-division-page--stucco .s6-explainer-hotspot.is-active {
    transform: translateY(-2px);
    background: var(--s6-green);
    border-color: rgba(142,198,64,.86);
    color: #11150f;
    outline: none;
    box-shadow:
        0 1.25rem 2.8rem rgba(0,0,0,.28),
        0 0 0 .32rem rgba(142,198,64,.14),
        inset 0 1px 0 rgba(255,255,255,.48);
}

.s6-division-page--stucco .s6-division-explainer__default {
    transition: opacity .3s ease, transform .3s ease, max-height .3s ease;
}

.s6-division-page--stucco .s6-division-explainer.is-hotspot-active .s6-division-explainer__default {
    opacity: 0;
    transform: translateY(-.35rem);
    max-height: 0;
    overflow: hidden;
    pointer-events: none;
}

.s6-division-page--stucco .s6-division-explainer__point-system {
    margin-top: 0;
    padding-top: 0;
    border-top: 0;
    opacity: 0;
    transform: translateY(.65rem);
    transition: opacity .34s ease, transform .34s ease;
    pointer-events: none;
}

.s6-division-page--stucco .s6-division-explainer.is-hotspot-active .s6-division-explainer__point-system,
.s6-division-page--stucco .s6-division-explainer__point-system.is-visible {
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}

.s6-division-page--stucco .s6-division-explainer__point-system.is-fading {
    opacity: 0;
    transform: translateY(.35rem);
}

.s6-division-page--stucco .s6-division-explainer__point-system > span {
    display: inline-flex;
    color: var(--s6-green);
    font-weight: 900;
    font-size: .75rem;
    letter-spacing: .16em;
    text-transform: uppercase;
    margin-bottom: 1rem;
}

.s6-division-page--stucco .s6-division-explainer__point-system h3 {
    color: var(--s6-ink);
    font-size: clamp(1.65rem, 2.6vw, 2.7rem);
    line-height: .98;
    letter-spacing: -.055em;
    margin: 0 0 .9rem;
}

.s6-division-page--stucco .s6-division-explainer__point-system p {
    margin: 0;
}

.s6-division-page--stucco .s6-division-explainer__point-system ul {
    margin-top: 1.5rem;
}


.s6-division-page--stucco .s6-division-explainer__default p:not(.s6-section-label) {
    color: var(--s6-muted-ink);
    font-size: clamp(1rem, 1.25vw, 1.14rem);
    line-height: 1.75;
    margin: 0;
}

.s6-division-page--stucco .s6-division-explainer__visual {
    background:
        linear-gradient(180deg, rgba(0,0,0,.1), rgba(0,0,0,.45)),
        var(--s6-division-detail-bg) center center / cover no-repeat !important;
}

@media (max-width: 760px) {
    .s6-division-page--stucco .s6-division-explainer__hotspots {
        left: 1rem;
        right: 1rem;
        bottom: 1rem;
        gap: .45rem;
    }

    .s6-division-page--stucco .s6-explainer-hotspot {
        min-width: 4rem;
        min-height: 2.25rem;
        padding: .52rem .68rem;
    }
}


.s6-division-page--stucco .s6-division-explainer {
    align-items: stretch;
}

.s6-division-page--stucco .s6-division-explainer__visual {
    min-height: clamp(28rem, 46vw, 38rem);
    height: 100%;
    background-position: center center !important;
    background-size: cover !important;
    will-change: auto;
}

.s6-division-page--stucco .s6-division-explainer__visual .s6-division-explainer__hotspots {
    box-shadow: none;
}

.s6-division-page--stucco .s6-division-explainer__copy {
    position: relative;
    display: grid;
    grid-template-areas: "stack";
    align-content: center;
    min-height: clamp(26rem, 42vw, 36rem);
}

.s6-division-page--stucco .s6-division-explainer__default,
.s6-division-page--stucco .s6-division-explainer__point-system {
    grid-area: stack;
    align-self: center;
    width: 100%;
}

.s6-division-page--stucco .s6-division-explainer.is-hotspot-active .s6-division-explainer__default {
    max-height: none;
    overflow: visible;
    visibility: hidden;
}

.s6-division-page--stucco .s6-division-explainer__point-system {
    visibility: hidden;
}

.s6-division-page--stucco .s6-division-explainer.is-hotspot-active .s6-division-explainer__point-system,
.s6-division-page--stucco .s6-division-explainer__point-system.is-visible {
    visibility: visible;
}

@media (max-width: 900px) {
    .s6-division-page--stucco .s6-division-explainer__copy {
        min-height: 0;
    }

    .s6-division-page--stucco .s6-division-explainer__default,
    .s6-division-page--stucco .s6-division-explainer__point-system {
        align-self: start;
    }
}

.s6-division-page--stucco .s6-colour-filter-bar button,
.s6-division-page--stucco .s6-texture-filter-bar button,
.s6-division-page--stucco .s6-moulding-filter-bar button,
.s6-division-page--stucco .s6-pill-link {
    border-color: rgba(142, 196, 63, .6);
    transition: background .3s var(--s6-ease), color .3s var(--s6-ease), border-color .3s var(--s6-ease), box-shadow .3s var(--s6-ease);
}

.s6-division-page--stucco .s6-colour-filter-bar button:hover,
.s6-division-page--stucco .s6-colour-filter-bar button:focus-visible,
.s6-division-page--stucco .s6-colour-filter-bar button.is-active,
.s6-division-page--stucco .s6-texture-filter-bar button:hover,
.s6-division-page--stucco .s6-texture-filter-bar button:focus-visible,
.s6-division-page--stucco .s6-texture-filter-bar button.is-active,
.s6-division-page--stucco .s6-moulding-filter-bar button:hover,
.s6-division-page--stucco .s6-moulding-filter-bar button:focus-visible,
.s6-division-page--stucco .s6-moulding-filter-bar button.is-active,
.s6-division-page--stucco .s6-pill-link:hover,
.s6-division-page--stucco .s6-pill-link:focus-visible {
    border-color: rgba(142, 196, 63, .86);
    background: var(--s6-green);
    color: #000;
    transform: none;
    box-shadow: none;
    outline: none;
}

.s6-division-page--stucco .s6-pill-link--dark {
    border-color: rgba(142, 196, 63, .6);
}

.s6-division-page--stucco .s6-material-card--moulding,
.s6-division-page--stucco .s6-material-card--moulding:hover,
.s6-division-page--stucco .s6-material-card--moulding:focus-visible {
    transform: none !important;
}

.s6-division-page--stucco .s6-material-card--moulding {
    min-height: 15.25rem;
    box-shadow:
        0 .18rem .18rem rgba(20,24,22,.05),
        0 .9rem 1.7rem rgba(20,24,22,.08),
        0 2rem 3.8rem rgba(20,24,22,.05);
}

.s6-division-page--stucco .s6-material-card--moulding:hover,
.s6-division-page--stucco .s6-material-card--moulding:focus-visible {
    box-shadow:
        0 .18rem .18rem rgba(20,24,22,.05),
        0 .9rem 1.7rem rgba(20,24,22,.08),
        0 2rem 3.8rem rgba(20,24,22,.05) !important;
}

.s6-division-page--stucco .s6-material-card--moulding strong {
    margin: .9rem 0 .28rem;
    font-size: clamp(1.08rem, 1.28vw, 1.28rem);
    line-height: 1.05;
}

.s6-division-page--stucco .s6-material-card--moulding small {
    color: rgba(20,24,22,.54);
    font-size: .66rem;
    letter-spacing: .18em;
}

.s6-division-page--stucco .s6-material-card--moulding .s6-material-card__moulding-copy,
.s6-division-page--stucco .s6-material-card--moulding em {
    display: none !important;
}

.s6-division-page--stucco .s6-material-card--moulding:hover .s6-material-card__profile--image,
.s6-division-page--stucco .s6-material-card--moulding:focus-visible .s6-material-card__profile--image {
    transform: translateY(-.42rem) rotateX(2deg) rotateZ(-.35deg);
    border-color: rgba(142,196,63,.36);
    box-shadow:
        0 .16rem .14rem rgba(20,24,22,.045),
        0 .95rem 1.55rem rgba(20,24,22,.13),
        0 1.65rem 2.8rem rgba(20,24,22,.08);
}

.s6-division-page--stucco .s6-system-card-grid {
    gap: clamp(1rem, 2vw, 1.4rem);
    border: 0;
}

.s6-division-page--stucco .s6-system-card {
    position: relative;
    overflow: hidden;
    min-height: 34rem;
    border: 1px solid rgba(20, 24, 22, 0.13);
    border-radius: 1.35rem;
    background:
        linear-gradient(180deg, rgba(252,251,246,0.96), rgba(239,236,226,0.9)),
        repeating-linear-gradient(0deg, rgba(20,24,22,.035) 0 1px, transparent 1px 18px),
        repeating-linear-gradient(90deg, rgba(20,24,22,.028) 0 1px, transparent 1px 18px);
    box-shadow:
        0 1.1rem 2.6rem rgba(20, 24, 22, 0.09),
        inset 0 1px 0 rgba(255,255,255,.88);
    padding: clamp(1rem, 1.6vw, 1.35rem);
    display: grid;
    grid-template-rows: auto auto minmax(13rem, 1fr) auto auto;
    gap: 1rem;
    transform: none !important;
    transition: border-color .28s ease, box-shadow .28s ease, background-color .28s ease;
}

.s6-division-page--stucco .s6-system-card:hover,
.s6-division-page--stucco .s6-system-card:focus-visible {
    transform: none !important;
    border-color: rgba(142, 196, 63, 0.72);
    background:
        linear-gradient(180deg, rgba(255,255,250,0.98), rgba(240,237,228,0.94)),
        repeating-linear-gradient(0deg, rgba(20,24,22,.035) 0 1px, transparent 1px 18px),
        repeating-linear-gradient(90deg, rgba(20,24,22,.028) 0 1px, transparent 1px 18px);
    box-shadow:
        0 1.35rem 3rem rgba(20, 24, 22, 0.11),
        0 0 0 1px rgba(142, 196, 63, 0.18),
        inset 0 1px 0 rgba(255,255,255,.92);
    outline: none;
}

.s6-division-page--stucco .s6-system-card:before {
    content: "";
    position: absolute;
    inset: .65rem;
    border: 1px solid rgba(20, 24, 22, 0.055);
    border-radius: 1rem;
    pointer-events: none;
}

.s6-division-page--stucco .s6-system-card__label,
.s6-division-page--stucco .s6-system-card em {
    position: relative;
    z-index: 2;
    color: rgba(20, 24, 22, 0.58);
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .2em;
    text-transform: uppercase;
    font-style: normal;
}

.s6-division-page--stucco .s6-system-card__label:before {
    content: "SYSTEM TYPE";
    display: block;
    margin-bottom: .28rem;
    color: var(--s6-green);
    font-size: .58rem;
    letter-spacing: .24em;
}

.s6-division-page--stucco .s6-system-card__rule {
    display: block;
    width: 100%;
    height: 1px;
    background: linear-gradient(90deg, rgba(142,196,63,.85), rgba(20,24,22,.12), transparent);
}

.s6-division-page--stucco .s6-system-card__visual {
    position: relative;
    z-index: 1;
    display: grid;
    place-items: center;
    min-height: 13.5rem;
    border: 1px solid rgba(20, 24, 22, 0.1);
    border-radius: 1rem;
    background:
        radial-gradient(circle at 22% 16%, rgba(142,196,63,.1), transparent 28%),
        linear-gradient(145deg, rgba(255,255,255,.74), rgba(231,228,218,.72));
    box-shadow: inset 0 .5rem 1.4rem rgba(20,24,22,.065);
    padding: 1rem;
}

.s6-division-page--stucco .s6-system-card__visual img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter: saturate(.75) contrast(1.05);
    transition: filter .28s ease, transform .28s ease;
}

.s6-division-page--stucco .s6-system-card:hover .s6-system-card__visual img,
.s6-division-page--stucco .s6-system-card:focus-visible .s6-system-card__visual img {
    filter: saturate(.95) contrast(1.14);
    transform: scale(1.012);
}

.s6-division-page--stucco .s6-system-cutaway {
    display: grid;
    grid-template-columns: minmax(5.5rem, 7rem) minmax(0, 1fr);
    align-items: center;
    gap: .9rem;
    width: 100%;
}

.s6-division-page--stucco .s6-system-cutaway__stack {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: flex-end;
    gap: .25rem;
    min-height: 8.25rem;
    perspective: 420px;
}

.s6-division-page--stucco .s6-system-cutaway__layer {
    display: block;
    width: .78rem;
    height: calc(7.4rem - (var(--s6-layer-index) * .38rem));
    border: 1px solid rgba(20,24,22,.16);
    border-radius: .18rem;
    background: linear-gradient(180deg, rgba(255,255,255,.9), rgba(199,197,187,.92));
    box-shadow: .22rem .32rem .6rem rgba(20,24,22,.12);
    transform: skewY(-7deg);
    transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}

.s6-division-page--stucco .s6-system-cutaway__layer:nth-child(1) { background: linear-gradient(180deg, #f5f3ec, #d9d5c8); }
.s6-division-page--stucco .s6-system-cutaway__layer:nth-child(2) { background: linear-gradient(180deg, #ece8dc, #cfc8b7); }
.s6-division-page--stucco .s6-system-cutaway__layer:nth-child(3) { background: repeating-linear-gradient(45deg, #d7d2c3 0 3px, #bbb4a4 3px 5px); }
.s6-division-page--stucco .s6-system-cutaway__layer:nth-child(4) { background: linear-gradient(180deg, rgba(142,196,63,.34), rgba(201,218,166,.7)); }
.s6-division-page--stucco .s6-system-cutaway__layer:nth-child(5) { background: linear-gradient(180deg, #c8d6dc, #9cafb8); }
.s6-division-page--stucco .s6-system-cutaway__layer:nth-child(6) { background: linear-gradient(180deg, #b7b1a4, #8f8b82); }
.s6-division-page--stucco .s6-system-cutaway__layer:nth-child(7) { background: linear-gradient(180deg, #8b8377, #615b53); }

.s6-division-page--stucco .s6-system-card--impact .s6-system-cutaway__layer:nth-child(3),
.s6-division-page--stucco .s6-system-card--impact .s6-system-cutaway__layer:nth-child(4) {
    background: repeating-linear-gradient(45deg, rgba(142,196,63,.5) 0 3px, rgba(90,113,60,.45) 3px 6px);
}

.s6-division-page--stucco .s6-system-card--direct .s6-system-cutaway__layer:nth-child(4) {
    width: 1.15rem;
    background: linear-gradient(180deg, #b7b1a4, #7f786d);
}

.s6-division-page--stucco .s6-system-card--noncombustible .s6-system-cutaway__layer:nth-child(4) {
    background: repeating-linear-gradient(-45deg, #d8d6cf 0 4px, #aaa89f 4px 7px);
}

.s6-division-page--stucco .s6-system-card:hover .s6-system-cutaway__layer,
.s6-division-page--stucco .s6-system-card:focus-visible .s6-system-cutaway__layer {
    transform: skewY(-7deg) translateY(-.12rem);
    border-color: rgba(142,196,63,.36);
    box-shadow: .28rem .42rem .72rem rgba(20,24,22,.16);
}

.s6-division-page--stucco .s6-system-cutaway__callouts {
    display: grid;
    gap: .34rem;
}

.s6-division-page--stucco .s6-system-cutaway__callouts span {
    position: relative;
    display: block;
    padding-left: 1.25rem;
    color: rgba(20,24,22,.64);
    font-size: .62rem;
    font-weight: 900;
    line-height: 1.2;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.s6-division-page--stucco .s6-system-cutaway__callouts span:before {
    content: "";
    position: absolute;
    left: 0;
    top: .42em;
    width: .75rem;
    height: 1px;
    background: rgba(142,196,63,.78);
}

.s6-division-page--stucco .s6-system-card__body {
    position: relative;
    z-index: 2;
    display: grid;
    gap: .75rem;
}

.s6-division-page--stucco .s6-system-card__body strong {
    display: block;
    max-width: 11.5rem;
    color: var(--s6-ink);
    font-size: clamp(1.2rem, 1.45vw, 1.55rem);
    font-weight: 900;
    line-height: .98;
    letter-spacing: -.045em;
    text-transform: uppercase;
}

.s6-division-page--stucco .s6-system-card__body small {
    display: block;
    color: rgba(20,24,22,.62);
    font-size: .86rem;
    line-height: 1.55;
}

.s6-division-page--stucco .s6-system-card__points {
    display: grid;
    gap: .38rem;
    margin-top: .2rem;
}

.s6-division-page--stucco .s6-system-card__points span {
    position: relative;
    display: block;
    padding-left: 1rem;
    color: rgba(20,24,22,.72);
    font-size: .67rem;
    font-weight: 900;
    line-height: 1.25;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.s6-division-page--stucco .s6-system-card__points span:before {
    content: "";
    position: absolute;
    left: 0;
    top: .42em;
    width: .38rem;
    height: .38rem;
    border: 1px solid rgba(142,196,63,.8);
    border-radius: 999px;
    background: rgba(142,196,63,.14);
}

.s6-division-page--stucco .s6-system-card em {
    align-self: start;
    padding-top: .75rem;
    border-top: 1px solid rgba(20,24,22,.08);
    color: rgba(20,24,22,.52);
}

.s6-division-page--stucco .s6-system-card:hover em,
.s6-division-page--stucco .s6-system-card:focus-visible em {
    color: var(--s6-green);
}

@media (max-width: 980px) {
    .s6-division-page--stucco .s6-system-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .s6-division-page--stucco .s6-system-card-grid {
        grid-template-columns: 1fr;
    }

    .s6-division-page--stucco .s6-system-card {
        min-height: auto;
    }
}

.s6-division-page--stucco .s6-system-card-grid {
    gap: clamp(1.15rem, 2vw, 1.6rem);
    align-items: stretch;
}

.s6-division-page--stucco .s6-system-card {
    min-height: 0 !important;
    padding: clamp(1.05rem, 1.5vw, 1.35rem) !important;
    grid-template-rows: auto auto auto auto auto !important;
    gap: .9rem !important;
    border-color: rgba(20,24,22,.11) !important;
    border-radius: 1.25rem !important;
    background:
        linear-gradient(180deg, rgba(252,251,246,.98), rgba(243,240,232,.94)),
        repeating-linear-gradient(0deg, rgba(20,24,22,.024) 0 1px, transparent 1px 22px),
        repeating-linear-gradient(90deg, rgba(20,24,22,.018) 0 1px, transparent 1px 22px) !important;
    box-shadow:
        0 .85rem 1.9rem rgba(20,24,22,.075),
        inset 0 1px 0 rgba(255,255,255,.88) !important;
}

.s6-division-page--stucco .s6-system-card:hover,
.s6-division-page--stucco .s6-system-card:focus-visible {
    border-color: rgba(142,196,63,.7) !important;
    box-shadow:
        0 .9rem 2rem rgba(20,24,22,.085),
        0 0 0 1px rgba(142,196,63,.16),
        inset 0 1px 0 rgba(255,255,255,.92) !important;
}

.s6-division-page--stucco .s6-system-card:before {
    inset: .55rem !important;
    border-color: rgba(20,24,22,.04) !important;
}

.s6-division-page--stucco .s6-system-card__label,
.s6-division-page--stucco .s6-system-card em {
    font-size: .61rem !important;
    letter-spacing: .18em !important;
}

.s6-division-page--stucco .s6-system-card__label:before {
    font-size: .5rem !important;
    letter-spacing: .22em !important;
    margin-bottom: .22rem !important;
}

.s6-division-page--stucco .s6-system-card__rule {
    opacity: .65;
}

.s6-division-page--stucco .s6-system-card__visual {
    min-height: 10.75rem !important;
    padding: .85rem !important;
    border-color: rgba(20,24,22,.085) !important;
    border-radius: .95rem !important;
    background:
        radial-gradient(circle at 24% 18%, rgba(142,196,63,.075), transparent 30%),
        linear-gradient(145deg, rgba(255,255,255,.76), rgba(234,231,221,.72)) !important;
}

.s6-division-page--stucco .s6-system-cutaway {
    grid-template-columns: minmax(4.3rem, 5.6rem) minmax(0, 1fr) !important;
    gap: .65rem !important;
    max-width: 15.5rem;
    margin: 0 auto;
}

.s6-division-page--stucco .s6-system-cutaway__stack {
    min-height: 6.6rem !important;
    gap: .18rem !important;
}

.s6-division-page--stucco .s6-system-cutaway__layer {
    width: .58rem !important;
    height: calc(5.8rem - (var(--s6-layer-index) * .28rem)) !important;
    border-radius: .14rem !important;
    box-shadow: .14rem .22rem .36rem rgba(20,24,22,.105) !important;
}

.s6-division-page--stucco .s6-system-card:hover .s6-system-cutaway__layer,
.s6-division-page--stucco .s6-system-card:focus-visible .s6-system-cutaway__layer {
    transform: skewY(-7deg) !important;
    box-shadow: .17rem .25rem .42rem rgba(20,24,22,.13) !important;
}

.s6-division-page--stucco .s6-system-cutaway__callouts {
    gap: .25rem !important;
}

.s6-division-page--stucco .s6-system-cutaway__callouts span {
    padding-left: .95rem !important;
    font-size: .5rem !important;
    line-height: 1.12 !important;
    letter-spacing: .11em !important;
    color: rgba(20,24,22,.56) !important;
}

.s6-division-page--stucco .s6-system-cutaway__callouts span:before {
    width: .55rem !important;
    top: .46em !important;
}

.s6-division-page--stucco .s6-system-card__body {
    gap: .55rem !important;
}

.s6-division-page--stucco .s6-system-card__body strong {
    max-width: 12.5rem !important;
    font-size: clamp(1.05rem, 1.25vw, 1.34rem) !important;
    line-height: 1 !important;
    letter-spacing: -.04em !important;
}

.s6-division-page--stucco .s6-system-card__body small {
    color: rgba(20,24,22,.58) !important;
    font-size: .74rem !important;
    line-height: 1.42 !important;
    letter-spacing: .015em !important;
    text-transform: none !important;
    font-weight: 650 !important;
}

.s6-division-page--stucco .s6-system-card__points {
    display: flex !important;
    flex-wrap: wrap;
    gap: .35rem !important;
    margin-top: .15rem !important;
}

.s6-division-page--stucco .s6-system-card__points span {
    display: inline-flex !important;
    align-items: center;
    min-height: 1.55rem;
    padding: .35rem .52rem .34rem .62rem !important;
    border: 1px solid rgba(20,24,22,.075);
    border-radius: 999px;
    background: rgba(255,255,255,.48);
    color: rgba(20,24,22,.62) !important;
    font-size: .52rem !important;
    line-height: 1 !important;
    letter-spacing: .1em !important;
    white-space: nowrap;
}

.s6-division-page--stucco .s6-system-card__points span:before {
    position: static !important;
    display: inline-block;
    flex: 0 0 auto;
    width: .32rem !important;
    height: .32rem !important;
    margin-right: .42rem;
}

.s6-division-page--stucco .s6-system-card em {
    margin-top: .1rem;
    padding-top: .72rem !important;
    font-size: .58rem !important;
}

@media (max-width: 1280px) {
    .s6-division-page--stucco .s6-system-card__points span {
        white-space: normal;
    }
}

.s6-division-page--stucco .s6-system-card-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(1.05rem, 1.6vw, 1.35rem) !important;
}

.s6-division-page--stucco .s6-system-card {
    overflow: hidden;
    min-width: 0;
    min-height: 27rem !important;
    padding: clamp(1rem, 1.35vw, 1.25rem) !important;
    grid-template-rows: auto auto 10.25rem auto auto !important;
    gap: .82rem !important;
}

.s6-division-page--stucco .s6-system-card__visual {
    min-width: 0;
    min-height: 0 !important;
    height: 10.25rem;
    padding: .85rem !important;
    overflow: hidden;
}

.s6-division-page--stucco .s6-system-cutaway {
    display: flex !important;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 9.5rem !important;
    margin: 0 auto !important;
}

.s6-division-page--stucco .s6-system-cutaway__stack {
    min-height: 6.9rem !important;
    gap: .22rem !important;
    transform: translateX(.15rem);
}

.s6-division-page--stucco .s6-system-cutaway__layer {
    width: .64rem !important;
    height: calc(6.15rem - (var(--s6-layer-index) * .3rem)) !important;
}

.s6-division-page--stucco .s6-system-cutaway__callouts {
    display: none !important;
}

.s6-division-page--stucco .s6-system-card__body {
    min-width: 0;
    gap: .55rem !important;
}

.s6-division-page--stucco .s6-system-card__body strong {
    max-width: 100% !important;
    min-height: 2.7rem;
    font-size: clamp(1.05rem, 1.15vw, 1.25rem) !important;
    line-height: 1.02 !important;
}

.s6-division-page--stucco .s6-system-card__body small {
    max-width: 100%;
    min-height: 3rem;
    font-size: .72rem !important;
    line-height: 1.42 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.s6-division-page--stucco .s6-system-card__points {
    display: grid !important;
    grid-template-columns: 1fr;
    gap: .34rem !important;
    min-width: 0;
}

.s6-division-page--stucco .s6-system-card__points span {
    width: 100%;
    min-width: 0;
    min-height: 1.42rem;
    justify-content: flex-start;
    padding: .32rem .5rem !important;
    border-radius: .55rem !important;
    font-size: .5rem !important;
    line-height: 1.1 !important;
    letter-spacing: .095em !important;
    white-space: normal !important;
    overflow-wrap: anywhere;
}

.s6-division-page--stucco .s6-system-card em {
    align-self: end;
    white-space: nowrap;
}

@media (max-width: 1280px) {
    .s6-division-page--stucco .s6-system-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .s6-division-page--stucco .s6-system-card {
        min-height: 24rem !important;
    }
}

@media (max-width: 640px) {
    .s6-division-page--stucco .s6-system-card-grid {
        grid-template-columns: 1fr;
    }
}

.s6-division-page--stucco .s6-system-card-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: clamp(1.1rem, 1.85vw, 1.6rem) !important;
    align-items: stretch;
}

.s6-division-page--stucco .s6-system-card {
    position: relative;
    min-height: 34rem !important;
    padding: clamp(1.25rem, 1.55vw, 1.55rem) !important;
    display: grid !important;
    grid-template-rows: auto auto minmax(13.25rem, 1fr) auto auto auto !important;
    gap: .85rem !important;
    border: 1px solid rgba(20,24,22,.105) !important;
    border-radius: 0 !important;
    overflow: hidden;
    background:
        linear-gradient(180deg, rgba(255,255,252,.98), rgba(248,246,239,.96)) !important;
    box-shadow:
        0 .25rem .55rem rgba(20,24,22,.06),
        0 1.05rem 2.2rem rgba(20,24,22,.09) !important;
    transform: none !important;
    transition: border-color .26s ease, box-shadow .26s ease, background-color .26s ease;
}

.s6-division-page--stucco .s6-system-card:hover,
.s6-division-page--stucco .s6-system-card:focus-visible {
    transform: none !important;
    border-color: rgba(142,196,63,.42) !important;
    box-shadow:
        0 .32rem .65rem rgba(20,24,22,.065),
        0 1.15rem 2.4rem rgba(20,24,22,.105) !important;
    outline: none;
}

.s6-division-page--stucco .s6-system-card:before {
    display: none !important;
}

.s6-division-page--stucco .s6-system-card__top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    width: 100%;
}

.s6-division-page--stucco .s6-system-card__kicker {
    display: block;
    margin: 0 0 .58rem;
    color: rgba(20,24,22,.68);
    font-size: .55rem;
    font-weight: 900;
    line-height: 1.18;
    letter-spacing: .18em;
    text-transform: uppercase;
}

.s6-division-page--stucco .s6-system-card__label {
    display: block !important;
    margin: 0 !important;
    color: rgba(20,24,22,.94) !important;
    font-size: clamp(1.05rem, 1.3vw, 1.35rem) !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    letter-spacing: -.035em !important;
    text-transform: uppercase !important;
}

.s6-division-page--stucco .s6-system-card__label:before {
    display: none !important;
}

.s6-division-page--stucco .s6-system-card__badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.2rem;
    height: 2.2rem;
    flex: 0 0 2.2rem;
    border: 1px solid rgba(142,196,63,.78);
    color: var(--s6-green);
    font-size: .9rem;
    font-weight: 950;
    letter-spacing: -.04em;
    line-height: 1;
}

.s6-division-page--stucco .s6-system-card__rule {
    width: 1.15rem !important;
    height: 1px !important;
    background: var(--s6-green) !important;
    opacity: .9 !important;
}

.s6-division-page--stucco .s6-system-card__visual {
    height: auto !important;
    min-height: 13.25rem !important;
    padding: .45rem .2rem .2rem !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.s6-division-page--stucco .s6-system-card__visual img {
    width: 100%;
    height: 100%;
    object-fit: contain !important;
    filter: drop-shadow(0 .85rem 1.4rem rgba(20,24,22,.12));
}

.s6-division-page--stucco .s6-system-cutaway {
    width: 100% !important;
    max-width: 15.75rem !important;
    min-height: 12.7rem !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
    perspective: 760px;
    margin: 0 auto !important;
}

.s6-division-page--stucco .s6-system-cutaway__stack {
    min-height: 11.25rem !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
    gap: .34rem !important;
    transform: rotateX(56deg) rotateZ(-31deg) translateY(.25rem) !important;
    transform-style: preserve-3d;
    filter: drop-shadow(.75rem 1.05rem 1.15rem rgba(20,24,22,.16));
}

.s6-division-page--stucco .s6-system-cutaway__layer {
    width: 1.02rem !important;
    height: calc(7.6rem - (var(--s6-layer-index) * .18rem)) !important;
    border-radius: .08rem !important;
    border: 1px solid rgba(20,24,22,.14) !important;
    transform: none !important;
    box-shadow:
        .22rem .28rem .36rem rgba(20,24,22,.12),
        inset .08rem 0 rgba(255,255,255,.42) !important;
}

.s6-division-page--stucco .s6-system-card:hover .s6-system-cutaway__layer,
.s6-division-page--stucco .s6-system-card:focus-visible .s6-system-cutaway__layer {
    transform: translateY(-.08rem) !important;
}

.s6-division-page--stucco .s6-system-cutaway__callouts {
    display: none !important;
}

.s6-division-page--stucco .s6-system-card__body {
    display: grid !important;
    gap: .42rem !important;
    min-width: 0;
}

.s6-division-page--stucco .s6-system-card__icon {
    position: relative;
    width: 1.05rem;
    height: 1.05rem;
    display: block;
    color: var(--s6-green);
}

.s6-division-page--stucco .s6-system-card__icon:before,
.s6-division-page--stucco .s6-system-card__icon:after {
    content: "";
    position: absolute;
    inset: 0;
    border: 1.7px solid currentColor;
}

.s6-division-page--stucco .s6-system-card__icon--drop:before {
    border-radius: 70% 70% 70% 0;
    transform: rotate(-45deg) scale(.78);
}

.s6-division-page--stucco .s6-system-card__icon--drop:after {
    display: none;
}

.s6-division-page--stucco .s6-system-card__icon--shield:before {
    inset: .06rem .12rem .03rem;
    clip-path: polygon(50% 0, 94% 18%, 84% 78%, 50% 100%, 16% 78%, 6% 18%);
    border: 0;
    background: currentColor;
    opacity: .9;
}

.s6-division-page--stucco .s6-system-card__icon--shield:after {
    display: none;
}

.s6-division-page--stucco .s6-system-card__icon--layers:before,
.s6-division-page--stucco .s6-system-card__icon--layers:after {
    inset: auto;
    width: .74rem;
    height: .45rem;
    border-radius: .08rem;
    transform: rotate(45deg) skew(-9deg, -9deg);
}

.s6-division-page--stucco .s6-system-card__icon--layers:before {
    left: .14rem;
    top: .16rem;
}

.s6-division-page--stucco .s6-system-card__icon--layers:after {
    left: .14rem;
    top: .44rem;
    opacity: .7;
}

.s6-division-page--stucco .s6-system-card__icon--fire:before {
    inset: .05rem .22rem .02rem;
    border: 0;
    background: currentColor;
    clip-path: polygon(48% 0, 72% 30%, 65% 48%, 86% 70%, 66% 100%, 34% 100%, 12% 74%, 25% 45%, 42% 58%, 34% 30%);
}

.s6-division-page--stucco .s6-system-card__icon--fire:after {
    display: none;
}

.s6-division-page--stucco .s6-system-card__body strong {
    min-height: 0 !important;
    max-width: 13rem !important;
    color: rgba(20,24,22,.96) !important;
    font-size: clamp(1.12rem, 1.25vw, 1.42rem) !important;
    line-height: .98 !important;
    letter-spacing: -.055em !important;
    text-transform: uppercase;
}

.s6-division-page--stucco .s6-system-card__body small {
    min-height: 3.9rem !important;
    color: rgba(20,24,22,.66) !important;
    font-size: .7rem !important;
    font-weight: 650 !important;
    line-height: 1.56 !important;
    letter-spacing: .015em !important;
    text-transform: none !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.s6-division-page--stucco .s6-system-card__points {
    display: none !important;
}

.s6-division-page--stucco .s6-system-card__specs {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border-top: 1px solid rgba(20,24,22,.1);
    border-bottom: 1px solid rgba(20,24,22,.1);
    margin-top: .4rem;
}

.s6-division-page--stucco .s6-system-card__spec {
    min-width: 0;
    padding: .64rem .55rem .7rem;
    border-right: 1px solid rgba(20,24,22,.1);
    display: grid;
    gap: .42rem;
}

.s6-division-page--stucco .s6-system-card__spec:last-child {
    border-right: 0;
}

.s6-division-page--stucco .s6-system-card__spec span {
    color: rgba(20,24,22,.52) !important;
    font-size: .46rem !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    letter-spacing: .11em !important;
    text-transform: uppercase !important;
    white-space: nowrap;
}

.s6-division-page--stucco .s6-system-card__spec strong {
    color: rgba(20,24,22,.96) !important;
    font-size: clamp(.68rem, .8vw, .86rem) !important;
    font-weight: 850 !important;
    line-height: 1.05 !important;
    letter-spacing: -.015em !important;
    text-transform: uppercase;
    white-space: nowrap;
}

.s6-division-page--stucco .s6-system-card em {
    margin-top: .25rem !important;
    padding-top: .15rem !important;
    border-top: 0 !important;
    color: rgba(20,24,22,.82) !important;
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    font-size: .62rem !important;
    font-weight: 900;
    letter-spacing: .13em !important;
    text-transform: uppercase;
}

.s6-division-page--stucco .s6-system-card em span:last-child {
    color: var(--s6-green);
    font-size: 1.05rem;
    line-height: 1;
    transition: transform .24s ease;
}

.s6-division-page--stucco .s6-system-card:hover em span:last-child,
.s6-division-page--stucco .s6-system-card:focus-visible em span:last-child {
    transform: translateX(.2rem);
}

@media (max-width: 1380px) {
    .s6-division-page--stucco .s6-system-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .s6-division-page--stucco .s6-system-card {
        min-height: 32rem !important;
    }
}

@media (max-width: 720px) {
    .s6-division-page--stucco .s6-system-card-grid {
        grid-template-columns: 1fr !important;
    }

    .s6-division-page--stucco .s6-system-card {
        min-height: auto !important;
    }

    .s6-division-page--stucco .s6-system-card__specs {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .s6-division-page--stucco .s6-system-card__spec:nth-child(2) {
        border-right: 0;
    }

    .s6-division-page--stucco .s6-system-card__spec:nth-child(-n+2) {
        border-bottom: 1px solid rgba(20,24,22,.1);
    }
}

.s6-division-page--stucco .s6-system-card-grid {
    gap: clamp(1rem, 1.7vw, 1.45rem) !important;
}

.s6-division-page--stucco .s6-system-card {
    border-radius: 1.35rem !important;
    background:
        linear-gradient(180deg, rgba(248,247,241,.94), rgba(235,232,224,.92)) !important;
    border-top: 1px solid rgba(20,24,22,.16) !important;
    border-left: 1px solid rgba(20,24,22,.12) !important;
    border-right: 1px solid rgba(255,255,255,.64) !important;
    border-bottom: 1px solid rgba(255,255,255,.7) !important;
    box-shadow:
        inset 0 .85rem 1.55rem rgba(20,24,22,.085),
        inset 0 -.45rem .85rem rgba(255,255,255,.55) !important;
    transform: none !important;
    transition: border-color .24s ease, box-shadow .24s ease, background-color .24s ease;
}

.s6-division-page--stucco .s6-system-card:hover,
.s6-division-page--stucco .s6-system-card:focus-visible {
    transform: none !important;
    border-top-color: rgba(142,196,63,.42) !important;
    border-left-color: rgba(142,196,63,.34) !important;
    border-right-color: rgba(255,255,255,.76) !important;
    border-bottom-color: rgba(255,255,255,.8) !important;
    box-shadow:
        inset 0 1rem 1.85rem rgba(20,24,22,.105),
        inset 0 -.5rem .95rem rgba(255,255,255,.58) !important;
}

.s6-division-page--stucco .s6-system-card__top,
.s6-division-page--stucco .s6-system-card__body,
.s6-division-page--stucco .s6-system-card__specs,
.s6-division-page--stucco .s6-system-card em {
    position: relative;
    z-index: 2;
}

.s6-division-page--stucco .s6-system-card__visual {
    position: relative;
    z-index: 1;
    margin: .15rem -.15rem .05rem !important;
    border-radius: 1.1rem !important;
    background:
        linear-gradient(180deg, rgba(255,255,252,.74), rgba(238,235,226,.54)) !important;
    box-shadow:
        inset 0 .55rem 1.1rem rgba(20,24,22,.07),
        inset 0 -.25rem .65rem rgba(255,255,255,.62) !important;
    overflow: hidden !important;
}

.s6-division-page--stucco .s6-system-cutaway__stack {
    filter: none !important;
    transform: rotateX(56deg) rotateZ(-31deg) translateY(.12rem) !important;
}

.s6-division-page--stucco .s6-system-cutaway__layer {
    box-shadow:
        .08rem .12rem .16rem rgba(20,24,22,.08),
        inset .08rem 0 rgba(255,255,255,.42) !important;
}

.s6-division-page--stucco .s6-system-card:hover .s6-system-cutaway__layer,
.s6-division-page--stucco .s6-system-card:focus-visible .s6-system-cutaway__layer {
    transform: none !important;
}

.s6-division-page--stucco .s6-system-card__badge {
    border-radius: .15rem;
    background: rgba(142,196,63,.06);
}

.s6-division-page--stucco .s6-system-card__icon {
    width: 1.35rem !important;
    height: 1.35rem !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    color: var(--s6-green);
    margin-bottom: .05rem;
}

.s6-division-page--stucco .s6-system-card__icon:before,
.s6-division-page--stucco .s6-system-card__icon:after {
    content: none !important;
    display: none !important;
}

.s6-division-page--stucco .s6-system-card__icon svg {
    width: 100%;
    height: 100%;
    display: block;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.65;
    stroke-linecap: round;
    stroke-linejoin: round;
    opacity: .98;
}

.s6-division-page--stucco .s6-system-card__body {
    gap: .36rem !important;
}

.s6-division-page--stucco .s6-system-card__specs {
    background: rgba(255,255,252,.34);
    border-top-color: rgba(20,24,22,.085) !important;
    border-bottom-color: rgba(20,24,22,.085) !important;
}

.s6-division-page--stucco .s6-system-card-grid {
    gap: clamp(1rem, 1.55vw, 1.35rem) !important;
}

.s6-division-page--stucco .s6-system-card {
    border-radius: 0 !important;
    background: #eeece4 !important;
    border-top: 1px solid rgba(20,24,22,.18) !important;
    border-left: 1px solid rgba(20,24,22,.14) !important;
    border-right: 1px solid rgba(255,255,255,.48) !important;
    border-bottom: 1px solid rgba(255,255,255,.52) !important;
    box-shadow:
        inset .18rem .22rem .55rem rgba(20,24,22,.075),
        inset -.14rem -.16rem .36rem rgba(255,255,255,.42) !important;
    outline: 1px solid rgba(20,24,22,.035);
    outline-offset: -7px;
    transform: none !important;
    transition: border-color .22s ease, box-shadow .22s ease, background-color .22s ease, outline-color .22s ease;
}

.s6-division-page--stucco .s6-system-card:hover,
.s6-division-page--stucco .s6-system-card:focus-visible {
    border-top-color: rgba(20,24,22,.2) !important;
    border-left-color: rgba(20,24,22,.16) !important;
    border-right-color: rgba(255,255,255,.5) !important;
    border-bottom-color: rgba(255,255,255,.54) !important;
    box-shadow:
        inset .22rem .26rem .62rem rgba(20,24,22,.09),
        inset -.16rem -.18rem .4rem rgba(255,255,255,.44) !important;
    outline-color: rgba(142,196,63,.36);
    transform: none !important;
}

.s6-division-page--stucco .s6-system-card__visual {
    border-radius: 0 !important;
    margin: .1rem 0 0 !important;
    background: #e6e3da !important;
    border-top: 1px solid rgba(20,24,22,.13) !important;
    border-left: 1px solid rgba(20,24,22,.1) !important;
    border-right: 1px solid rgba(255,255,255,.42) !important;
    border-bottom: 1px solid rgba(255,255,255,.46) !important;
    box-shadow:
        inset .18rem .22rem .46rem rgba(20,24,22,.075),
        inset -.12rem -.14rem .32rem rgba(255,255,255,.34) !important;
    overflow: hidden !important;
}

.s6-division-page--stucco .s6-system-card:hover .s6-system-card__visual,
.s6-division-page--stucco .s6-system-card:focus-visible .s6-system-card__visual {
    box-shadow:
        inset .2rem .24rem .52rem rgba(20,24,22,.085),
        inset -.12rem -.14rem .34rem rgba(255,255,255,.36) !important;
}

.s6-division-page--stucco .s6-system-card__badge {
    border-radius: 0 !important;
    background: transparent !important;
    border-color: rgba(142,196,63,.72) !important;
}

.s6-division-page--stucco .s6-system-card__specs {
    background: transparent !important;
    border-top-color: rgba(20,24,22,.12) !important;
    border-bottom-color: rgba(20,24,22,.12) !important;
}

.s6-division-page--stucco .s6-system-card__spec {
    border-right-color: rgba(20,24,22,.1) !important;
}

.s6-division-page--stucco .s6-system-card__icon svg {
    stroke-width: 1.85;
}

.s6-division-page--stucco .s6-system-card {
    grid-template-rows: auto auto minmax(13.25rem, 1fr) auto auto auto !important;
    min-height: 31.5rem !important;
}

.s6-division-page--stucco .s6-system-card__specs {
    display: none !important;
}

.s6-division-page--stucco .s6-system-card__attributes {
    display: grid;
    grid-template-columns: 1fr;
    gap: .42rem;
    margin-top: .12rem;
    padding: .72rem 0 .2rem;
    border-top: 1px solid rgba(20,24,22,.11);
}

.s6-division-page--stucco .s6-system-card__attributes span {
    position: relative;
    display: block;
    padding-left: .95rem;
    color: rgba(20,24,22,.72);
    font-size: .56rem;
    font-weight: 900;
    line-height: 1.15;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.s6-division-page--stucco .s6-system-card__attributes span:before {
    content: "";
    position: absolute;
    left: 0;
    top: .36em;
    width: .42rem;
    height: 1px;
    background: var(--s6-green);
}

.s6-division-page--stucco .s6-system-card__body small {
    min-height: 3.25rem !important;
    -webkit-line-clamp: 3;
}

@media (max-width: 1380px) {
    .s6-division-page--stucco .s6-system-card {
        min-height: 30rem !important;
    }
}

@media (max-width: 720px) {
    .s6-division-page--stucco .s6-system-card {
        min-height: auto !important;
    }
}

.s6-division-page--stucco .s6-system-card__label {
    font-size: clamp(.72rem, .78vw, .86rem) !important;
    font-weight: 800 !important;
    line-height: 1.05 !important;
    letter-spacing: .12em !important;
    color: rgba(20,24,22,.72) !important;
}

.s6-division-page--stucco .s6-system-card__kicker {
    margin-bottom: .38rem !important;
}

.s6-system-modal__media {
    background-position: center center !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-color: #edeae2;
}

@media (max-width: 820px) {
    .s6-system-modal__media {
        min-height: clamp(18rem, 56vw, 28rem);
    }
}

/* =========================================================
   Stucco moulding profile image render fix
   Prevent uploaded profile images from inheriting sketch/grid repeat sizing.
========================================================= */
.s6-division-page--stucco .s6-material-card--moulding .s6-material-card__profile--image[style*="background-image"] {
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
}

.s6-division-page--stucco .s6-material-card--moulding .s6-material-card__profile--image[style*="background-image"]::before {
    opacity: .45;
}

.s6-division-page--stucco .s6-material-card--moulding .s6-material-card__profile--image {
    background-color: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    filter: none !important;
    overflow: visible !important;
}

.s6-division-page--stucco .s6-material-card--moulding .s6-material-card__profile--image[style*="background-image"] {
    background-color: transparent !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
}

.s6-division-page--stucco .s6-material-card--moulding .s6-material-card__profile--image::before,
.s6-division-page--stucco .s6-material-card--moulding .s6-material-card__profile--image::after {
    display: none !important;
}

.s6-division-page--stucco .s6-material-card--moulding:hover .s6-material-card__profile--image,
.s6-division-page--stucco .s6-material-card--moulding:focus-visible .s6-material-card__profile--image {
    transform: translateY(-.52rem) rotateZ(-.25deg) !important;
    border-color: transparent !important;
    box-shadow: none !important;
    filter: drop-shadow(0 .8rem .75rem rgba(20,24,22,.16)) !important;
}

.s6-pdf-resource-modal {
    position: fixed;
    inset: 0;
    z-index: 9998;
    display: none;
    align-items: center;
    justify-content: center;
    padding: clamp(1rem, 3vw, 2.25rem);
}

.s6-pdf-resource-modal.is-open {
    display: flex;
}

.s6-pdf-resource-modal__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(7, 9, 7, .78);
    backdrop-filter: blur(5px);
}

.s6-pdf-resource-modal__dialog {
    position: relative;
    z-index: 1;
    width: min(92vw, 980px);
    height: min(88vh, 920px);
    background: transparent;
    border: 0;
    box-shadow: none;
    overflow: visible;
}

.s6-pdf-resource-modal__viewer {
    position: absolute;
    inset: 0;
    background: #fff;
    border: 0;
    overflow: hidden;
    box-shadow: 0 1.2rem 3rem rgba(0, 0, 0, .34);
}

.s6-pdf-resource-modal__viewer iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
    background: #fff;
}

.s6-pdf-resource-modal__controls {
    position: absolute;
    z-index: 3;
    top: .65rem;
    right: .65rem;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: .35rem;
    pointer-events: none;
}

.s6-pdf-resource-modal__title {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.s6-pdf-resource-modal__open,
.s6-pdf-resource-modal__close {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2rem;
    border: 1px solid rgba(255, 255, 255, .18);
    background: rgba(6, 8, 6, .62);
    color: #fff;
    backdrop-filter: blur(8px);
    pointer-events: auto;
}

.s6-pdf-resource-modal__open {
    padding: 0 .65rem;
    font-size: .58rem;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
    text-decoration: none;
}

.s6-pdf-resource-modal__close {
    width: 2rem;
    padding: 0;
    cursor: pointer;
    font-size: 1.2rem;
    line-height: 1;
}

.s6-pdf-resource-modal__open:hover,
.s6-pdf-resource-modal__open:focus-visible,
.s6-pdf-resource-modal__close:hover,
.s6-pdf-resource-modal__close:focus-visible {
    background: var(--s6-green);
    border-color: var(--s6-green);
    color: #060806;
    outline: none;
}

@media (max-width: 767px) {
    .s6-pdf-resource-modal {
        display: none !important;
    }
}


.s6-division-page--stucco .s6-system-card {
    overflow: hidden !important;
    transform: none !important;
}

.s6-division-page--stucco .s6-system-card__visual {
    overflow: visible !important;
    isolation: isolate;
}

.s6-division-page--stucco .s6-system-card__visual img {
    position: relative;
    z-index: 2;
    max-width: 104%;
    max-height: 106%;
    transform: translateY(0) scale(1);
    transform-origin: center center;
    filter: drop-shadow(0 .35rem .45rem rgba(20,24,22,.10));
    transition: transform .28s ease, filter .28s ease;
}

.s6-division-page--stucco .s6-system-card:hover .s6-system-card__visual img,
.s6-division-page--stucco .s6-system-card:focus-visible .s6-system-card__visual img {
    transform: translateY(-.72rem) scale(1.085) !important;
    filter: drop-shadow(0 1.05rem .9rem rgba(20,24,22,.17));
}

.s6-division-page--stucco .s6-system-cutaway {
    position: relative;
    z-index: 2;
    transform: translateY(0) scale(1);
    transform-origin: center center;
    transition: transform .28s ease, filter .28s ease;
}

.s6-division-page--stucco .s6-system-card:hover .s6-system-cutaway,
.s6-division-page--stucco .s6-system-card:focus-visible .s6-system-cutaway {
    transform: translateY(-.72rem) scale(1.08);
    filter: drop-shadow(0 1rem .9rem rgba(20,24,22,.16));
}

.s6-division-page--stucco .s6-system-card:hover .s6-system-cutaway__stack,
.s6-division-page--stucco .s6-system-card:focus-visible .s6-system-cutaway__stack {
    transform: rotateX(56deg) rotateZ(-31deg) translateY(.12rem) !important;
}

.s6-division-projects .s6-division-project-card a {
    position: relative;
    background: rgba(245, 242, 234, .72);
    border: 1px solid rgba(16, 19, 15, .12);
    box-shadow: none;
    overflow: hidden;
    transform: none;
    transition: border-color .28s ease, background .28s ease;
}

.s6-division-projects .s6-division-project-card a::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
    border: 1px solid rgba(142, 198, 64, 0);
    transition: border-color .28s ease;
}

.s6-division-projects .s6-division-project-card a:hover,
.s6-division-projects .s6-division-project-card a:focus-visible {
    transform: none;
    background: rgba(245, 242, 234, .82);
    border-color: rgba(16, 19, 15, .18);
}

.s6-division-projects .s6-division-project-card a:hover::before,
.s6-division-projects .s6-division-project-card a:focus-visible::before {
    border-color: rgba(142, 198, 64, .72);
}

.s6-division-projects .s6-division-project-card__image {
    position: relative;
    min-height: 300px;
    overflow: hidden;
    background: none;
    isolation: isolate;
}

.s6-division-projects .s6-division-project-card__image::before {
    content: '';
    position: absolute;
    inset: -7%;
    z-index: 0;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, .02), rgba(16, 19, 15, .16)),
        var(--s6-division-project-bg, none);
    background-size: cover;
    background-position: center;
    filter: saturate(.86) contrast(1.02);
    transform: scale(1);
    transition: transform .46s cubic-bezier(.2,.8,.2,1), filter .32s ease;
}

.s6-division-projects .s6-division-project-card__image::after {
    content: 'PROJECT PROFILE →';
    position: absolute;
    left: 18px;
    bottom: 18px;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 14px;
    background: rgba(16, 19, 15, .82);
    color: #f6f4ee;
    border-left: 3px solid var(--s6-green);
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
    opacity: 0;
    transform: translateY(10px);
    transition: opacity .28s ease, transform .28s ease;
}

.s6-division-projects .s6-division-project-card a:hover .s6-division-project-card__image,
.s6-division-projects .s6-division-project-card a:focus-visible .s6-division-project-card__image {
    transform: none;
    filter: none;
}

.s6-division-projects .s6-division-project-card a:hover .s6-division-project-card__image::before,
.s6-division-projects .s6-division-project-card a:focus-visible .s6-division-project-card__image::before {
    transform: scale(1.065);
    filter: saturate(1.05) contrast(1.04);
}

.s6-division-projects .s6-division-project-card a:hover .s6-division-project-card__image::after,
.s6-division-projects .s6-division-project-card a:focus-visible .s6-division-project-card__image::after {
    opacity: 1;
    transform: translateY(0);
}

.s6-division-projects .s6-division-project-card__content {
    position: relative;
    z-index: 1;
    padding: 22px 22px 24px;
    border-top: 1px solid rgba(16, 19, 15, .11);
}

.s6-division-projects .s6-division-project-card__content span {
    display: inline-flex;
    margin: 0 0 12px;
    color: rgba(16, 19, 15, .58);
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .17em;
    text-transform: uppercase;
}

.s6-division-projects .s6-division-project-card__content h3 {
    margin: 0;
    font-size: clamp(1.05rem, 1.5vw, 1.38rem);
    line-height: 1.05;
}

.s6-division-projects .s6-division-project-card__content p {
    margin-top: 10px;
    color: rgba(16, 19, 15, .62);
}

.s6-division-projects .s6-division-project-board {
    position: relative;
    margin-top: clamp(1.75rem, 3vw, 2.8rem);
    padding: clamp(1.2rem, 2.4vw, 2rem);
    background:
        linear-gradient(135deg, rgba(255,255,255,.20), rgba(255,255,255,0)),
        rgba(232, 229, 219, .62);
    border-top: 1px solid rgba(16,19,15,.13);
    border-left: 1px solid rgba(16,19,15,.10);
    border-right: 1px solid rgba(255,255,255,.58);
    border-bottom: 1px solid rgba(255,255,255,.62);
    box-shadow:
        inset 0 1rem 2.4rem rgba(16,19,15,.075),
        inset 0 -1px 0 rgba(255,255,255,.42);
}

.s6-division-projects .s6-division-project-feature-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(1rem, 2vw, 1.45rem);
    margin-bottom: clamp(1.15rem, 2vw, 1.55rem);
}

.s6-division-projects .s6-division-project-feature,
.s6-division-projects .s6-division-project-card {
    min-width: 0;
}

.s6-division-projects .s6-division-project-feature a {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(220px, .75fr);
    min-height: clamp(320px, 30vw, 430px);
    color: inherit;
    text-decoration: none;
    background: rgba(246,244,236,.9);
    border: 1px solid rgba(16,19,15,.13);
    overflow: hidden;
    position: relative;
    transform: none;
    box-shadow: none;
    transition: border-color .28s ease, background .28s ease;
}

.s6-division-projects .s6-division-project-feature a::after {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    border: 1px solid rgba(142,198,64,0);
    transition: border-color .28s ease;
}

.s6-division-projects .s6-division-project-feature a:hover,
.s6-division-projects .s6-division-project-feature a:focus-visible {
    background: rgba(248,246,240,.96);
    border-color: rgba(16,19,15,.18);
}

.s6-division-projects .s6-division-project-feature a:hover::after,
.s6-division-projects .s6-division-project-feature a:focus-visible::after {
    border-color: rgba(142,198,64,.72);
}

.s6-division-projects .s6-division-project-feature__image {
    position: relative;
    min-height: 100%;
    overflow: hidden;
    isolation: isolate;
    background: rgba(16,19,15,.08);
}

.s6-division-projects .s6-division-project-feature__image::before {
    content: '';
    position: absolute;
    inset: -5%;
    background:
        linear-gradient(135deg, rgba(16,19,15,.06), rgba(16,19,15,.24)),
        var(--s6-division-project-bg, none);
    background-size: cover;
    background-position: center;
    transform: scale(1);
    filter: saturate(.9) contrast(1.02);
    transition: transform .52s cubic-bezier(.2,.8,.2,1), filter .32s ease;
}

.s6-division-projects .s6-division-project-feature a:hover .s6-division-project-feature__image::before,
.s6-division-projects .s6-division-project-feature a:focus-visible .s6-division-project-feature__image::before {
    transform: scale(1.055);
    filter: saturate(1.04) contrast(1.05);
}

.s6-division-projects .s6-division-project-feature__image span {
    position: absolute;
    left: 18px;
    bottom: 18px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 14px;
    background: rgba(16,19,15,.86);
    color: #f6f4ee;
    border-left: 3px solid var(--s6-green);
    font-size: .67rem;
    font-weight: 800;
    letter-spacing: .15em;
    text-transform: uppercase;
}

.s6-division-projects .s6-division-project-feature__content {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    gap: .75rem;
    padding: clamp(1.35rem, 2.4vw, 2rem);
    border-left: 1px solid rgba(16,19,15,.12);
}

.s6-division-projects .s6-division-project-feature__content small,
.s6-division-projects .s6-division-project-latest-head span {
    color: rgba(16,19,15,.55);
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .17em;
    text-transform: uppercase;
}

.s6-division-projects .s6-division-project-feature__content h3 {
    margin: 0;
    font-size: clamp(1.35rem, 2.2vw, 2.15rem);
    line-height: .96;
    letter-spacing: -.045em;
}

.s6-division-projects .s6-division-project-feature__content p {
    margin: 0;
    color: rgba(16,19,15,.62);
}

.s6-division-projects .s6-division-project-latest-head {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin: .25rem 0 1rem;
}

.s6-division-projects .s6-division-project-latest-head::after {
    content: '';
    height: 1px;
    flex: 1;
    background: rgba(16,19,15,.14);
}

.s6-division-projects .s6-division-project-grid--latest {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(.85rem, 1.5vw, 1.1rem);
}

.s6-division-projects .s6-division-project-grid--latest .s6-division-project-card__image {
    min-height: clamp(175px, 18vw, 235px);
}

.s6-division-projects .s6-division-project-grid--latest .s6-division-project-card__content {
    padding: 18px 18px 20px;
}

.s6-division-projects .s6-division-project-grid--latest .s6-division-project-card__content h3 {
    font-size: clamp(.98rem, 1.1vw, 1.18rem);
}

@media (max-width: 1050px) {
    .s6-division-projects .s6-division-project-feature-grid,
    .s6-division-projects .s6-division-project-grid--latest {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .s6-division-projects .s6-division-project-feature a {
        grid-template-columns: 1fr;
    }

    .s6-division-projects .s6-division-project-feature__image {
        min-height: 280px;
    }

    .s6-division-projects .s6-division-project-feature__content {
        border-left: 0;
        border-top: 1px solid rgba(16,19,15,.12);
    }
}

@media (max-width: 680px) {
    .s6-division-projects .s6-division-project-board {
        padding: 1rem;
    }

    .s6-division-projects .s6-division-project-feature-grid,
    .s6-division-projects .s6-division-project-grid--latest {
        grid-template-columns: 1fr;
    }
}

.s6-division-page--stucco .s6-division-explainer {
    position: relative;
    grid-template-columns: minmax(0, 1.08fr) minmax(20rem, .82fr) !important;
    gap: clamp(1.25rem, 3.2vw, 2.4rem) !important;
    align-items: stretch !important;
    padding: clamp(1rem, 2.2vw, 1.45rem) !important;
    background: #eeece4 !important;
    border-radius: 0 !important;
    border-top: 1px solid rgba(20,24,22,.18) !important;
    border-left: 1px solid rgba(20,24,22,.14) !important;
    border-right: 1px solid rgba(255,255,255,.48) !important;
    border-bottom: 1px solid rgba(255,255,255,.52) !important;
    box-shadow:
        inset .18rem .22rem .55rem rgba(20,24,22,.075),
        inset -.14rem -.16rem .36rem rgba(255,255,255,.42) !important;
    outline: 1px solid rgba(20,24,22,.035);
    outline-offset: -7px;
    overflow: visible !important;
}

.s6-division-page--stucco .s6-division-explainer__visual {
    position: relative !important;
    min-height: clamp(25rem, 39vw, 34rem) !important;
    height: auto !important;
    padding: 0 !important;
    border-radius: 0 !important;
    background: #e6e3da !important;
    border-top: 1px solid rgba(20,24,22,.13) !important;
    border-left: 1px solid rgba(20,24,22,.1) !important;
    border-right: 1px solid rgba(255,255,255,.42) !important;
    border-bottom: 1px solid rgba(255,255,255,.46) !important;
    box-shadow:
        inset .18rem .22rem .46rem rgba(20,24,22,.075),
        inset -.12rem -.14rem .32rem rgba(255,255,255,.34) !important;
    overflow: visible !important;
    isolation: isolate;
}

.s6-division-page--stucco .s6-division-explainer__visual::before {
    content: "";
    position: absolute;
    inset: clamp(1.15rem, 2.2vw, 1.75rem) clamp(1rem, 2vw, 1.6rem) clamp(5.6rem, 8vw, 6.5rem);
    z-index: 1;
    pointer-events: none;
    background: var(--s6-division-detail-bg) center center / contain no-repeat !important;
    transform: translateY(0) scale(1);
    transform-origin: center center;
    filter: drop-shadow(0 .35rem .45rem rgba(20,24,22,.10));
    transition: transform .28s ease, filter .28s ease, opacity .28s ease;
}

.s6-division-page--stucco .s6-division-explainer.is-hotspot-active .s6-division-explainer__visual::before,
.s6-division-page--stucco .s6-division-explainer__visual:has(.s6-explainer-hotspot:hover)::before,
.s6-division-page--stucco .s6-division-explainer__visual:has(.s6-explainer-hotspot:focus-visible)::before {
    transform: translateY(-.75rem) scale(1.075);
    filter: drop-shadow(0 1.05rem .9rem rgba(20,24,22,.17));
}

.s6-division-page--stucco .s6-division-explainer__visual::after {
    content: "";
    position: absolute;
    inset: .82rem;
    z-index: 0;
    border: 1px solid rgba(20,24,22,.045);
    background:
        linear-gradient(rgba(20,24,22,.026) 1px, transparent 1px),
        linear-gradient(90deg, rgba(20,24,22,.026) 1px, transparent 1px);
    background-size: 24px 24px;
    opacity: .55;
    pointer-events: none;
}

.s6-division-page--stucco .s6-division-explainer__hotspots {
    left: clamp(.85rem, 1.7vw, 1.25rem) !important;
    right: clamp(.85rem, 1.7vw, 1.25rem) !important;
    bottom: clamp(.85rem, 1.7vw, 1.25rem) !important;
    z-index: 4 !important;
    justify-content: center !important;
    gap: .48rem !important;
}

.s6-division-page--stucco .s6-explainer-hotspot {
    border-radius: 0 !important;
    min-height: 2.25rem !important;
    min-width: 4.4rem !important;
    padding: .55rem .72rem !important;
    background: rgba(245,244,238,.9) !important;
    border: 1px solid rgba(20,24,22,.16) !important;
    box-shadow: none !important;
    transform: none !important;
}

.s6-division-page--stucco .s6-explainer-hotspot:hover,
.s6-division-page--stucco .s6-explainer-hotspot:focus-visible,
.s6-division-page--stucco .s6-explainer-hotspot.is-active {
    transform: none !important;
    background: var(--s6-green) !important;
    color: #11150f !important;
    border-color: rgba(142,196,63,.86) !important;
    box-shadow: none !important;
}

.s6-division-page--stucco .s6-division-explainer__copy {
    min-height: clamp(25rem, 39vw, 34rem) !important;
    padding: clamp(1.1rem, 2.4vw, 1.75rem) !important;
    background: rgba(246,244,237,.64);
    border-left: 1px solid rgba(20,24,22,.08);
}

.s6-division-page--stucco .s6-division-explainer__default h2,
.s6-division-page--stucco .s6-division-explainer__point-system h3 {
    max-width: 11ch;
}

.s6-division-page--stucco .s6-division-explainer__point-system > span {
    font-size: .68rem !important;
    letter-spacing: .14em !important;
    margin-bottom: .85rem !important;
}

.s6-division-page--stucco .s6-division-explainer__point-system ul {
    display: grid;
    gap: .55rem;
    margin-top: 1.35rem !important;
    border-top: 1px solid rgba(20,24,22,.12) !important;
    padding-top: 1rem !important;
}

.s6-division-page--stucco .s6-division-explainer__point-system li {
    position: relative;
    border: 0 !important;
    padding: 0 0 0 .95rem !important;
    color: rgba(20,24,22,.72) !important;
    font-size: .72rem;
    font-weight: 900;
    letter-spacing: .1em;
    line-height: 1.25;
    text-transform: uppercase;
}

.s6-division-page--stucco .s6-division-explainer__point-system li::before {
    content: "";
    position: absolute;
    left: 0;
    top: .55em;
    width: .42rem;
    height: 1px;
    background: var(--s6-green);
}

@media (max-width: 980px) {
    .s6-division-page--stucco .s6-division-explainer {
        grid-template-columns: 1fr !important;
    }

    .s6-division-page--stucco .s6-division-explainer__visual,
    .s6-division-page--stucco .s6-division-explainer__copy {
        min-height: auto !important;
    }

    .s6-division-page--stucco .s6-division-explainer__visual {
        min-height: clamp(22rem, 72vw, 32rem) !important;
    }

    .s6-division-page--stucco .s6-division-explainer__copy {
        border-left: 0;
        border-top: 1px solid rgba(20,24,22,.08);
    }
}

@media (max-width: 640px) {
    .s6-division-page--stucco .s6-division-explainer {
        padding: .85rem !important;
    }

    .s6-division-page--stucco .s6-division-explainer__visual::before {
        inset: 1rem .8rem 5.75rem;
    }

    .s6-division-page--stucco .s6-explainer-hotspot span {
        font-size: .6rem !important;
        letter-spacing: .1em !important;
    }
}

.s6-division-page--stucco .s6-division-explainer {
    grid-template-columns: minmax(0, 1.02fr) minmax(20rem, .98fr) !important;
    gap: clamp(1rem, 2.8vw, 2rem) !important;
}

.s6-division-page--stucco .s6-division-explainer__visual {
    min-height: clamp(22rem, 34vw, 29rem) !important;
    display: block !important;
    padding: clamp(.9rem, 1.8vw, 1.25rem) !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

.s6-division-page--stucco .s6-division-explainer__visual::after {
    inset: clamp(.65rem, 1.4vw, .95rem) clamp(.7rem, 1.5vw, 1rem) clamp(4.25rem, 6vw, 4.9rem) !important;
    background:
        linear-gradient(rgba(20,24,22,.026) 1px, transparent 1px),
        linear-gradient(90deg, rgba(20,24,22,.026) 1px, transparent 1px),
        #e6e3da !important;
    background-size: 24px 24px, 24px 24px, auto !important;
    border-top: 1px solid rgba(20,24,22,.13) !important;
    border-left: 1px solid rgba(20,24,22,.1) !important;
    border-right: 1px solid rgba(255,255,255,.42) !important;
    border-bottom: 1px solid rgba(255,255,255,.46) !important;
    box-shadow:
        inset .18rem .22rem .46rem rgba(20,24,22,.075),
        inset -.12rem -.14rem .32rem rgba(255,255,255,.34) !important;
    opacity: 1 !important;
}

.s6-division-page--stucco .s6-division-explainer__visual::before {
    inset: clamp(1.1rem, 2vw, 1.55rem) clamp(1.1rem, 2vw, 1.55rem) clamp(5.2rem, 7.2vw, 5.9rem) !important;
    z-index: 2 !important;
}

.s6-division-page--stucco .s6-division-explainer__hotspots {
    position: absolute !important;
    left: clamp(.65rem, 1.4vw, .95rem) !important;
    right: clamp(.65rem, 1.4vw, .95rem) !important;
    bottom: clamp(.55rem, 1.2vw, .75rem) !important;
    z-index: 5 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

.s6-division-page--stucco .s6-division-explainer__copy {
    min-height: clamp(22rem, 34vw, 29rem) !important;
    padding: clamp(1.15rem, 2.2vw, 1.75rem) clamp(1rem, 2vw, 1.55rem) !important;
    background: transparent !important;
    border-left: 0 !important;
    box-shadow: none !important;
}

.s6-division-page--stucco .s6-division-explainer__default,
.s6-division-page--stucco .s6-division-explainer__point-system {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
}

@media (max-width: 980px) {
    .s6-division-page--stucco .s6-division-explainer__visual,
    .s6-division-page--stucco .s6-division-explainer__copy {
        min-height: auto !important;
    }

    .s6-division-page--stucco .s6-division-explainer__visual {
        min-height: clamp(20rem, 68vw, 29rem) !important;
    }

    .s6-division-page--stucco .s6-division-explainer__copy {
        border-top: 1px solid rgba(20,24,22,.08) !important;
        padding-top: clamp(1rem, 4vw, 1.45rem) !important;
    }
}

@media (max-width: 640px) {
    .s6-division-page--stucco .s6-division-explainer__visual::after {
        inset: .65rem .65rem 5.15rem !important;
    }

    .s6-division-page--stucco .s6-division-explainer__visual::before {
        inset: 1rem .95rem 6rem !important;
    }

    .s6-division-page--stucco .s6-division-explainer__hotspots {
        left: .65rem !important;
        right: .65rem !important;
        bottom: .65rem !important;
    }
}

.s6-division-page--stucco .s6-division-explainer-section {
    display: block !important;
    padding: clamp(4rem, 8vw, 7rem) var(--s6-section-x, clamp(1.25rem, 5vw, 5rem)) !important;
    background: var(--s6-light-concrete, #f4f2ec) !important;
}

.s6-division-page--stucco .s6-explainer-section-header {
    margin-bottom: clamp(1.35rem, 3vw, 2.2rem) !important;
}

.s6-division-page--stucco .s6-explainer-section-header > p {
    max-width: 44rem;
    color: rgba(20,24,22,.66);
}

.s6-division-page--stucco .s6-division-explainer-section > .s6-division-explainer {
    display: grid !important;
    max-width: var(--s6-content-max, 1180px);
    margin: 0 auto !important;
}

.s6-division-page--stucco .s6-division-explainer__default > span {
    display: inline-flex;
    margin-bottom: .85rem;
    color: rgba(20,24,22,.48);
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .16em;
    line-height: 1;
    text-transform: uppercase;
}

.s6-division-page--stucco .s6-division-explainer__default h3 {
    margin: 0 0 .85rem;
    max-width: 12ch;
    color: #151814;
    font-family: var(--s6-heading-font, inherit);
    font-size: clamp(1.85rem, 3.4vw, 3.35rem);
    font-weight: 800;
    letter-spacing: -.055em;
    line-height: .94;
}

.s6-division-page--stucco .s6-division-explainer__default p {
    max-width: 36rem;
}

@media (max-width: 980px) {
    .s6-division-page--stucco .s6-division-explainer-section > .s6-division-explainer {
        grid-template-columns: 1fr !important;
    }
}


.s6-division-page--stucco .s6-division-explainer-section {
    width: min(1240px, calc(100% - 2.5rem)) !important;
    margin: 0 auto !important;
    padding: clamp(4.5rem, 8vw, 8rem) 0 !important;
    background: transparent !important;
}

.s6-division-page--stucco .s6-explainer-section-header {
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.s6-division-page--stucco .s6-division-explainer-section > .s6-division-explainer {
    max-width: none !important;
}

@media (max-width: 980px) {
    .s6-division-page--stucco .s6-division-explainer-section {
        width: min(100% - 1.5rem, 1240px) !important;
        padding: 4rem 0 !important;
    }
}


.s6-division-page--stucco .s6-division-explainer__copy {
    overflow: hidden !important;
    padding: clamp(.85rem, 1.55vw, 1.18rem) clamp(.85rem, 1.45vw, 1.2rem) !important;
}

.s6-division-page--stucco .s6-division-explainer__default,
.s6-division-page--stucco .s6-division-explainer__point-system {
    height: 100% !important;
    align-content: start !important;
}

.s6-division-page--stucco .s6-division-explainer__default > span,
.s6-division-page--stucco .s6-division-explainer__point-system > span {
    margin-bottom: .42rem !important;
    font-size: .58rem !important;
    letter-spacing: .16em !important;
    line-height: 1 !important;
}

.s6-division-page--stucco .s6-division-explainer__default h3,
.s6-division-page--stucco .s6-division-explainer__point-system h3 {
    max-width: none !important;
    margin: 0 0 .55rem !important;
    font-size: clamp(1.02rem, 1.45vw, 1.32rem) !important;
    letter-spacing: -.025em !important;
    line-height: 1.06 !important;
}

.s6-division-page--stucco .s6-division-explainer__default p,
.s6-division-page--stucco .s6-division-explainer__point-system p {
    max-width: none !important;
    margin: 0 !important;
    color: rgba(20,24,22,.74) !important;
    font-size: clamp(.72rem, .86vw, .82rem) !important;
    line-height: 1.43 !important;
    letter-spacing: -.005em !important;
    white-space: pre-line !important;
}

.s6-division-page--stucco .s6-division-explainer__point-system ul {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: .34rem .65rem !important;
    margin-top: .72rem !important;
    padding-top: .58rem !important;
}

.s6-division-page--stucco .s6-division-explainer__point-system li {
    padding-left: .72rem !important;
    font-size: .58rem !important;
    line-height: 1.18 !important;
    letter-spacing: .075em !important;
}

.s6-division-page--stucco .s6-division-explainer__point-system li::before {
    top: .48em !important;
    width: .32rem !important;
}

@media (max-width: 980px) {
    .s6-division-page--stucco .s6-division-explainer__copy {
        overflow: visible !important;
    }
}

@media (max-width: 640px) {
    .s6-division-page--stucco .s6-division-explainer__point-system ul {
        grid-template-columns: 1fr !important;
    }
}


.s6-division-page--stucco .s6-division-explainer__default,
.s6-division-page--stucco .s6-division-explainer__point-system {
    display: grid !important;
    grid-template-rows: auto minmax(0, 1fr) auto !important;
    gap: .55rem !important;
    min-height: 100% !important;
}

.s6-division-page--stucco .s6-division-explainer__default > span,
.s6-division-page--stucco .s6-division-explainer__point-system > span {
    align-self: start !important;
}

.s6-division-page--stucco .s6-division-explainer__default h3,
.s6-division-page--stucco .s6-division-explainer__point-system h3 {
    align-self: start !important;
    margin-bottom: .18rem !important;
}

.s6-division-page--stucco .s6-division-explainer__default p,
.s6-division-page--stucco .s6-division-explainer__point-system p {
    align-self: stretch !important;
    overflow: hidden !important;
}

.s6-division-page--stucco .s6-division-explainer__point-system ul {
    align-self: end !important;
    margin-top: .35rem !important;
}

@media (max-width: 980px) {
    .s6-division-page--stucco .s6-division-explainer__default p,
    .s6-division-page--stucco .s6-division-explainer__point-system p {
        overflow: visible !important;
    }
}

.s6-division-page--stucco .s6-division-explainer__copy {
    display: grid !important;
    grid-template-areas: "stack" !important;
    align-items: stretch !important;
    align-content: stretch !important;
}

.s6-division-page--stucco .s6-division-explainer__default,
.s6-division-page--stucco .s6-division-explainer__point-system {
    grid-area: stack !important;
    align-self: stretch !important;
    justify-self: stretch !important;
    min-height: 100% !important;
    height: 100% !important;
    display: grid !important;
    grid-template-rows: auto auto minmax(0, 1fr) auto !important;
    align-content: stretch !important;
    gap: .42rem !important;
    transform: none !important;
}

.s6-division-page--stucco .s6-division-explainer__default > span,
.s6-division-page--stucco .s6-division-explainer__point-system > span {
    grid-row: 1 !important;
    align-self: start !important;
    margin: 0 !important;
}

.s6-division-page--stucco .s6-division-explainer__default h3,
.s6-division-page--stucco .s6-division-explainer__point-system h3 {
    grid-row: 2 !important;
    align-self: start !important;
    margin: 0 0 .18rem !important;
}

.s6-division-page--stucco .s6-division-explainer__default p,
.s6-division-page--stucco .s6-division-explainer__point-system p {
    grid-row: 3 !important;
    align-self: stretch !important;
    min-height: 0 !important;
    overflow: hidden !important;
}

.s6-division-page--stucco .s6-division-explainer__point-system ul {
    grid-row: 4 !important;
    align-self: end !important;
    margin-top: .28rem !important;
}

.s6-division-page--stucco .s6-division-explainer.is-hotspot-active .s6-division-explainer__default,
.s6-division-page--stucco .s6-division-explainer__point-system,
.s6-division-page--stucco .s6-division-explainer.is-hotspot-active .s6-division-explainer__point-system,
.s6-division-page--stucco .s6-division-explainer__point-system.is-visible,
.s6-division-page--stucco .s6-division-explainer__point-system.is-fading {
    transform: none !important;
}

@media (max-width: 980px) {
    .s6-division-page--stucco .s6-division-explainer__default,
    .s6-division-page--stucco .s6-division-explainer__point-system {
        min-height: auto !important;
        height: auto !important;
    }

    .s6-division-page--stucco .s6-division-explainer__default p,
    .s6-division-page--stucco .s6-division-explainer__point-system p {
        overflow: visible !important;
    }
}

.s6-division-page--stucco .s6-division-explainer__default p,
.s6-division-page--stucco .s6-division-explainer__point-system p {
    align-self: center !important;
    margin: 0 !important;
}

.s6-division-page--stucco .s6-division-explainer__default {
    position: relative !important;
}

.s6-division-page--stucco .s6-division-explainer__default::after {
    content: "WRB  •  INSULATION  •  MESH  •  BASE  •  FINISH";
    grid-row: 4 !important;
    align-self: end !important;
    display: block;
    width: 100%;
    box-sizing: border-box;
    padding: .72rem .85rem .68rem;
    border: 1px solid rgba(21, 29, 23, .12);
    border-left: 3px solid var(--s6-green, #8dc63f);
    background:
        linear-gradient(90deg, rgba(141, 198, 63, .11), rgba(141, 198, 63, 0) 45%),
        repeating-linear-gradient(90deg, rgba(21, 29, 23, .055) 0 1px, transparent 1px 28px),
        repeating-linear-gradient(0deg, rgba(21, 29, 23, .04) 0 1px, transparent 1px 28px);
    color: rgba(21, 29, 23, .64);
    font-size: .66rem;
    font-weight: 800;
    letter-spacing: .13em;
    line-height: 1.35;
    text-transform: uppercase;
}

@media (max-width: 980px) {
    .s6-division-page--stucco .s6-division-explainer__default p,
    .s6-division-page--stucco .s6-division-explainer__point-system p {
        align-self: start !important;
    }

    .s6-division-page--stucco .s6-division-explainer__default::after {
        margin-top: 1rem;
    }
}

@media (max-width: 640px) {
    .s6-division-page--stucco .s6-division-explainer__default::after {
        font-size: .58rem;
        letter-spacing: .09em;
        padding: .65rem .7rem;
    }
}

.s6-division-page--stucco .s6-division-explainer__default::after {
    content: none !important;
    display: none !important;
}

.s6-division-page--stucco .s6-explainer-interaction-cue {
    position: absolute;
    left: clamp(.65rem, 1.4vw, .95rem);
    right: clamp(.65rem, 1.4vw, .95rem);
    bottom: clamp(3.55rem, 5.6vw, 4.45rem);
    z-index: 5;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: .55rem .8rem;
    align-items: center;
    padding: .62rem .78rem .58rem;
    border-left: 3px solid var(--s6-green, #8dc63f);
    background:
        linear-gradient(90deg, rgba(141,198,63,.12), rgba(141,198,63,.02) 52%, rgba(245,244,238,.42)),
        rgba(245,244,238,.58);
    color: rgba(20,24,22,.68);
    pointer-events: none;
    box-shadow: inset 0 0 0 1px rgba(20,24,22,.07);
}

.s6-division-page--stucco .s6-explainer-interaction-cue::after {
    content: "";
    position: absolute;
    left: 1rem;
    bottom: -.55rem;
    width: 1px;
    height: .55rem;
    background: var(--s6-green, #8dc63f);
    opacity: .75;
}

.s6-division-page--stucco .s6-explainer-interaction-cue span {
    color: rgba(20,24,22,.86);
    font-size: .58rem;
    font-weight: 900;
    letter-spacing: .15em;
    line-height: 1.1;
    text-transform: uppercase;
    white-space: nowrap;
}

.s6-division-page--stucco .s6-explainer-interaction-cue p {
    margin: 0;
    color: rgba(20,24,22,.62);
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .02em;
    line-height: 1.25;
}

.s6-division-page--stucco .s6-explainer-hotspot {
    min-height: 2.45rem !important;
    min-width: 4.75rem !important;
    padding: .68rem .86rem !important;
    background: rgba(248,247,242,.94) !important;
    border: 1px solid rgba(20,24,22,.22) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.68),
        0 .2rem .55rem rgba(20,24,22,.07) !important;
}

.s6-division-page--stucco .s6-explainer-hotspot span {
    font-size: .68rem !important;
    letter-spacing: .15em !important;
}

.s6-division-page--stucco .s6-explainer-hotspot:hover,
.s6-division-page--stucco .s6-explainer-hotspot:focus-visible,
.s6-division-page--stucco .s6-explainer-hotspot.is-active {
    background: var(--s6-green) !important;
    border-color: rgba(20,24,22,.28) !important;
    color: #11150f !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.42),
        0 0 0 .18rem rgba(142,198,64,.16) !important;
}

.s6-division-page--stucco .s6-division-explainer.is-hotspot-active .s6-explainer-interaction-cue {
    opacity: .42;
}

@media (max-width: 760px) {
    .s6-division-page--stucco .s6-explainer-interaction-cue {
        position: relative;
        left: auto;
        right: auto;
        bottom: auto;
        margin: 0 .65rem .7rem;
        grid-template-columns: 1fr;
        gap: .25rem;
    }

    .s6-division-page--stucco .s6-explainer-interaction-cue::after {
        display: none;
    }
}


.s6-division-page--stucco .s6-explainer-interaction-cue {
    position: absolute !important;
    left: clamp(.65rem, 1.4vw, .95rem) !important;
    right: clamp(.65rem, 1.4vw, .95rem) !important;
    bottom: clamp(3.45rem, 5.4vw, 4.25rem) !important;
    z-index: 5 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .18rem !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-left: 0 !important;
    box-shadow: none !important;
    color: rgba(20,24,22,.72) !important;
    pointer-events: none !important;
    text-align: center !important;
}

.s6-division-page--stucco .s6-explainer-interaction-cue::after {
    display: none !important;
    content: none !important;
}

.s6-division-page--stucco .s6-explainer-interaction-cue span {
    display: block !important;
    color: rgba(20,24,22,.78) !important;
    font-size: .62rem !important;
    font-weight: 900 !important;
    letter-spacing: .16em !important;
    line-height: 1.15 !important;
    text-transform: uppercase !important;
    white-space: normal !important;
}

.s6-division-page--stucco .s6-explainer-interaction-cue p {
    margin: 0 !important;
    color: rgba(20,24,22,.54) !important;
    font-size: .66rem !important;
    font-weight: 700 !important;
    letter-spacing: .035em !important;
    line-height: 1.25 !important;
}

.s6-division-page--stucco .s6-division-explainer.is-hotspot-active .s6-explainer-interaction-cue {
    opacity: 0 !important;
}

@media (max-width: 760px) {
    .s6-division-page--stucco .s6-explainer-interaction-cue {
        position: absolute !important;
        left: .75rem !important;
        right: .75rem !important;
        bottom: 4.05rem !important;
        margin: 0 !important;
        display: flex !important;
    }
}

.s6-division-page--stucco .s6-division-explainer__visual::after {
    inset: clamp(.65rem, 1.4vw, .95rem) clamp(.7rem, 1.5vw, 1rem) clamp(6.25rem, 8.6vw, 7rem) !important;
}

.s6-division-page--stucco .s6-division-explainer__visual::before {
    inset: clamp(1.1rem, 2vw, 1.55rem) clamp(1.1rem, 2vw, 1.55rem) clamp(7rem, 9.6vw, 7.8rem) !important;
}

.s6-division-page--stucco .s6-explainer-interaction-cue {
    position: absolute !important;
    left: clamp(.65rem, 1.4vw, .95rem) !important;
    right: clamp(.65rem, 1.4vw, .95rem) !important;
    bottom: clamp(3.35rem, 4.9vw, 3.85rem) !important;
    z-index: 6 !important;
    width: auto !important;
    min-height: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .42rem !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    pointer-events: none !important;
    text-align: center !important;
}

.s6-division-page--stucco .s6-explainer-interaction-cue span {
    display: none !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.s6-division-page--stucco .s6-explainer-interaction-cue p {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: .42rem !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    color: var(--s6-green, #8dc63f) !important;
    font-size: .68rem !important;
    font-weight: 900 !important;
    letter-spacing: .12em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
    text-shadow: 0 1px 0 rgba(255,255,255,.55) !important;
}

.s6-division-page--stucco .s6-explainer-interaction-cue p::after {
    content: "↓";
    display: inline-block;
    font-size: .78rem;
    line-height: 1;
    transform: translateY(-.02rem);
}

.s6-division-page--stucco .s6-division-explainer.is-hotspot-active .s6-explainer-interaction-cue {
    opacity: 0 !important;
}

.s6-division-page--stucco .s6-division-explainer__default::after {
    content: "S6" !important;
    grid-row: 4 !important;
    align-self: end !important;
    justify-self: end !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 2.15rem !important;
    height: 2.15rem !important;
    box-sizing: border-box !important;
    border: 1px solid rgba(142,196,63,.72) !important;
    background: transparent !important;
    color: var(--s6-green, #8dc63f) !important;
    font-size: .88rem !important;
    font-weight: 950 !important;
    letter-spacing: -.04em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
}

.s6-division-page--stucco .s6-division-explainer__hotspots {
    bottom: clamp(.45rem, 1vw, .62rem) !important;
}

@media (max-width: 760px) {
    .s6-division-page--stucco .s6-explainer-interaction-cue {
        display: none !important;
    }
}

.s6-division-opening__callouts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
    margin-top: clamp(1.35rem, 2.5vw, 2rem);
}

.s6-overview-callout {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 5.75rem;
    padding: 1rem 1.05rem;
    background: rgba(255, 255, 255, 0.38);
    border: 1px solid rgba(34, 38, 32, 0.12);
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.55),
        inset 0 -10px 18px rgba(31, 36, 31, 0.035);
}

.s6-overview-callout strong {
    color: var(--s6-green);
    font-size: clamp(1.1rem, 2vw, 1.55rem);
    line-height: 1;
    font-weight: 750;
    letter-spacing: -0.045em;
    text-transform: uppercase;
}

.s6-overview-callout small {
    display: block;
    margin-top: 0.38rem;
    color: rgba(31, 36, 31, 0.72);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    line-height: 1.35;
    text-transform: uppercase;
}

@media (max-width: 620px) {
    .s6-division-opening__callouts {
        grid-template-columns: 1fr;
    }

    .s6-overview-callout {
        min-height: 4.6rem;
    }
}

/* =========================================================
   Project Before / After Foundation
   Adds non-invasive project type indicators for future slider work.
========================================================= */

.s6-project-card__badge {
  position: absolute;
  top: 18px;
  right: 18px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  padding: 0 11px;
  border: 1px solid rgba(142, 198, 64, .42);
  background: rgba(5, 6, 5, .58);
  color: #8EC640;
  font-size: .58rem;
  font-weight: 900;
  letter-spacing: .14em;
  line-height: 1;
  text-transform: uppercase;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.s6-project-card--before-after .s6-project-card__link::after {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(90deg, rgba(142, 198, 64, .14), transparent 28%, transparent 72%, rgba(255, 255, 255, .08));
  opacity: .42;
  mix-blend-mode: screen;
}

.s6-project-before-after-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 9999 !important;
  display: none !important;
  align-items: center !important;
  justify-content: center !important;
  padding: clamp(18px, 3vw, 42px) !important;
  background: rgba(0, 0, 0, .78) !important;
  backdrop-filter: blur(18px) !important;
  -webkit-backdrop-filter: blur(18px) !important;
}

.s6-project-before-after-modal.is-open {
  display: flex !important;
}

.s6-project-before-after-modal__panel {
  position: relative !important;
  width: min(1180px, 100%) !important;
  max-height: min(88vh, 820px) !important;
  display: grid !important;
  grid-template-rows: auto minmax(360px, 1fr) auto !important;
  gap: 16px !important;
  overflow: hidden !important;
  background: #0b0b0b !important;
  border: 1px solid rgba(255, 255, 255, .12) !important;
  box-shadow: 0 34px 120px rgba(0, 0, 0, .62) !important;
}

.s6-project-before-after-modal__header {
  padding: 20px clamp(20px, 3vw, 32px) 0 !important;
}

.s6-project-before-after-modal__header span {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin-bottom: 8px !important;
  color: #8ec43f !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: .2em !important;
  text-transform: uppercase !important;
}

.s6-project-before-after-modal__header h2 {
  margin: 0 !important;
  color: #fff !important;
  font-size: clamp(1.8rem, 3vw, 3.4rem) !important;
  line-height: .95 !important;
  text-transform: uppercase !important;
}

.s6-project-before-after-modal__header p {
  max-width: 760px !important;
  margin: 10px 0 0 !important;
  color: rgba(255, 255, 255, .68) !important;
  font-size: .95rem !important;
  line-height: 1.55 !important;
}

.s6-project-before-after-modal__close {
  position: absolute !important;
  top: clamp(18px, 2.4vw, 28px) !important;
  right: clamp(18px, 2.4vw, 28px) !important;
  z-index: 5 !important;
  width: 42px !important;
  height: 42px !important;
  display: grid !important;
  place-items: center !important;
  border: 1px solid rgba(255, 255, 255, .16) !important;
  border-radius: 0 !important;
  color: #fff !important;
  background: rgba(0, 0, 0, .64) !important;
  font-size: 28px !important;
  line-height: 1 !important;
  cursor: pointer !important;
}

.s6-project-before-after-modal__close:hover {
  color: #101010 !important;
  border-color: #8ec43f !important;
  background: #8ec43f !important;
}

.s6-before-after--project-modal {
  height: min(58vh, 560px) !important;
  min-height: 360px !important;
  margin: 0 clamp(20px, 3vw, 32px) !important;
  box-shadow: none !important;
  border-color: rgba(255, 255, 255, .12) !important;
}

.s6-project-before-after-modal__link {
  justify-self: end !important;
  margin: 0 clamp(20px, 3vw, 32px) 22px !important;
  color: #8ec43f !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
}

.s6-project-before-after-modal__link:hover {
  color: #fff !important;
}

.s6-project-card--before-after .s6-project-card__badge {
  border-color: rgba(142, 196, 63, .55) !important;
  color: #101010 !important;
  background: #8ec43f !important;
}

@media (max-width: 760px) {
  .s6-project-before-after-modal {
    padding: 12px !important;
  }

  .s6-project-before-after-modal__panel {
    max-height: 92vh !important;
    grid-template-rows: auto minmax(300px, 1fr) auto !important;
  }

  .s6-project-before-after-modal__header {
    padding: 18px 16px 0 !important;
  }

  .s6-project-before-after-modal__header h2 {
    padding-right: 48px !important;
  }

  .s6-before-after--project-modal {
    height: 430px !important;
    min-height: 300px !important;
    margin: 0 16px !important;
  }

  .s6-project-before-after-modal__link {
    margin: 0 16px 18px !important;
  }
}


.s6-project-before-after-modal {
  overflow: hidden !important;
  isolation: isolate !important;
}

.s6-project-before-after-modal.is-open {
  display: grid !important;
  place-items: center !important;
}

.s6-project-before-after-modal__panel {
  width: min(1180px, calc(100vw - 48px)) !important;
  height: auto !important;
  max-height: calc(100vh - 48px) !important;
  overflow: hidden !important;
}

.s6-before-after--project-modal {
  width: auto !important;
  max-width: none !important;
  min-height: 0 !important;
  height: min(58vh, 560px) !important;
}

.s6-division-project-feature--before-after .s6-division-project-feature__image span,
.s6-division-project-card--before-after .s6-division-project-card__content span {
  border-color: rgba(142, 196, 63, .55) !important;
  color: #101010 !important;
  background: #8ec43f !important;
}

@media (max-width: 760px) {
  .s6-project-before-after-modal__panel {
    width: calc(100vw - 24px) !important;
    max-height: calc(100vh - 24px) !important;
  }

  .s6-before-after--project-modal {
    height: min(52vh, 430px) !important;
  }
}

.s6-project-gallery-modal__panel {
  grid-template-rows: auto minmax(360px, 1fr) auto !important;
}

.s6-project-gallery-modal--image .s6-project-gallery-modal__panel {
  width: min(1040px, calc(100vw - 48px)) !important;
}

.s6-project-gallery-modal__image {
  position: relative !important;
  min-height: min(62vh, 620px) !important;
  margin: 0 clamp(20px, 3vw, 32px) !important;
  overflow: hidden !important;
  border: 1px solid rgba(255, 255, 255, .12) !important;
  background: #050505 !important;
}

.s6-project-gallery-modal__image img {
  width: 100% !important;
  height: 100% !important;
  min-height: min(62vh, 620px) !important;
  display: block !important;
  object-fit: contain !important;
  object-position: center !important;
}

.s6-project-gallery-modal--image .s6-project-before-after-modal__header span::before,
.s6-project-gallery-modal--before-after .s6-project-before-after-modal__header span::before {
  content: '' !important;
  width: 18px !important;
  height: 2px !important;
  display: inline-block !important;
  background: #8ec43f !important;
}

.s6-project-gallery-modal:not(:has(.s6-project-before-after-modal__link)) .s6-project-gallery-modal__panel {
  padding-bottom: clamp(20px, 3vw, 32px) !important;
}

.s6-project-card__link,
.s6-division-project-feature a,
.s6-division-project-card a,
.s6-gallery-tile a,
.s6-feature-project .s6-ghost-button {
  cursor: pointer;
}

@media (max-width: 760px) {
  .s6-project-gallery-modal--image .s6-project-gallery-modal__panel {
    width: calc(100vw - 24px) !important;
  }

  .s6-project-gallery-modal__image {
    min-height: min(56vh, 460px) !important;
    margin: 0 16px !important;
  }

  .s6-project-gallery-modal__image img {
    min-height: min(56vh, 460px) !important;
  }
}

.s6-project-gallery-modal .s6-project-before-after-modal__panel {
  width: min(1120px, calc(100vw - 48px)) !important;
  max-height: calc(100vh - 48px) !important;
  grid-template-rows: auto minmax(330px, 1fr) auto !important;
  gap: clamp(14px, 2vw, 20px) !important;
  background:
    linear-gradient(135deg, rgba(255,255,255,.045), rgba(255,255,255,.015)),
    #090a08 !important;
  border: 1px solid rgba(142, 196, 63, .22) !important;
  box-shadow: 0 34px 110px rgba(0,0,0,.72) !important;
}

.s6-project-gallery-modal .s6-project-before-after-modal__header {
  padding: clamp(22px, 3vw, 34px) clamp(22px, 3.4vw, 42px) 0 !important;
  display: grid !important;
  gap: 10px !important;
}

.s6-project-gallery-modal .s6-project-gallery-modal__kicker,
.s6-project-gallery-modal .s6-project-before-after-modal__header > span:first-child {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  width: max-content !important;
  margin: 0 !important;
  color: #8ec43f !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  letter-spacing: .2em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
}

.s6-project-gallery-modal .s6-project-gallery-modal__kicker::before,
.s6-project-gallery-modal .s6-project-before-after-modal__header > span:first-child::before {
  content: '' !important;
  width: 24px !important;
  height: 2px !important;
  display: inline-block !important;
  background: #8ec43f !important;
}

.s6-project-gallery-modal .s6-project-before-after-modal__header h2 {
  max-width: 860px !important;
  margin: 0 !important;
  padding-right: 54px !important;
  color: #fff !important;
  font-size: clamp(1.65rem, 3vw, 3.05rem) !important;
  letter-spacing: -.045em !important;
  line-height: .96 !important;
  text-transform: uppercase !important;
}

.s6-project-gallery-modal__meta {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin-top: 2px !important;
}

.s6-project-gallery-modal__meta span {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 28px !important;
  padding: 0 10px !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  background: rgba(255,255,255,.045) !important;
  color: rgba(255,255,255,.72) !important;
  font-size: 10px !important;
  font-weight: 850 !important;
  letter-spacing: .13em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
}

.s6-project-gallery-modal__meta span:first-child {
  border-color: rgba(142,196,63,.34) !important;
  color: #8ec43f !important;
}

.s6-project-gallery-modal__description,
.s6-project-gallery-modal .s6-project-before-after-modal__header p {
  max-width: 820px !important;
  margin: 0 !important;
  color: rgba(255,255,255,.68) !important;
  font-size: .94rem !important;
  line-height: 1.55 !important;
}

.s6-project-gallery-modal .s6-before-after--project-modal,
.s6-project-gallery-modal .s6-project-gallery-modal__image {
  margin: 0 clamp(22px, 3.4vw, 42px) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  background: #050605 !important;
}

.s6-project-gallery-modal .s6-project-gallery-modal__image {
  min-height: min(58vh, 590px) !important;
}

.s6-project-gallery-modal .s6-project-gallery-modal__image img {
  min-height: min(58vh, 590px) !important;
}

.s6-project-gallery-modal__actions {
  display: flex !important;
  justify-content: flex-end !important;
  padding: 0 clamp(22px, 3.4vw, 42px) clamp(22px, 3vw, 30px) !important;
}

.s6-project-gallery-modal .s6-project-before-after-modal__link,
.s6-project-gallery-modal__project-link {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 46px !important;
  margin: 0 !important;
  padding: 0 20px !important;
  border: 1px solid rgba(142, 196, 63, .72) !important;
  background: #8ec43f !important;
  color: #10110f !important;
  font-size: 11px !important;
  font-weight: 950 !important;
  letter-spacing: .16em !important;
  line-height: 1 !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  box-shadow: 0 14px 34px rgba(142,196,63,.18) !important;
}

.s6-project-gallery-modal .s6-project-before-after-modal__link::after,
.s6-project-gallery-modal__project-link::after {
  content: '→' !important;
  margin-left: 10px !important;
  font-size: 14px !important;
  transform: translateY(-1px) !important;
}

.s6-project-gallery-modal .s6-project-before-after-modal__link:hover,
.s6-project-gallery-modal__project-link:hover {
  border-color: #fff !important;
  background: #fff !important;
  color: #10110f !important;
}

.s6-project-gallery-modal:not(:has(.s6-project-gallery-modal__actions)) .s6-project-gallery-modal__panel {
  padding-bottom: clamp(22px, 3vw, 34px) !important;
}

@media (max-width: 760px) {
  .s6-project-gallery-modal .s6-project-before-after-modal__panel {
    width: calc(100vw - 24px) !important;
    max-height: calc(100vh - 24px) !important;
    grid-template-rows: auto minmax(260px, 1fr) auto !important;
  }

  .s6-project-gallery-modal .s6-project-before-after-modal__header {
    padding: 18px 16px 0 !important;
  }

  .s6-project-gallery-modal .s6-project-before-after-modal__header h2 {
    padding-right: 48px !important;
    font-size: clamp(1.35rem, 8vw, 2.15rem) !important;
  }

  .s6-project-gallery-modal__meta {
    gap: 6px !important;
  }

  .s6-project-gallery-modal__meta span {
    min-height: 26px !important;
    font-size: 9px !important;
  }

  .s6-project-gallery-modal .s6-before-after--project-modal,
  .s6-project-gallery-modal .s6-project-gallery-modal__image {
    margin: 0 16px !important;
  }

  .s6-project-gallery-modal .s6-project-gallery-modal__image,
  .s6-project-gallery-modal .s6-project-gallery-modal__image img {
    min-height: min(50vh, 420px) !important;
  }

  .s6-project-gallery-modal__actions {
    justify-content: stretch !important;
    padding: 0 16px 18px !important;
  }

  .s6-project-gallery-modal .s6-project-before-after-modal__link,
  .s6-project-gallery-modal__project-link {
    width: 100% !important;
  }
}

.s6-project-gallery-modal .s6-project-before-after-modal__panel {
  position: relative !important;
  overflow: hidden !important;
}

.s6-project-gallery-modal__actions {
  position: absolute !important;
  top: clamp(22px, 3vw, 34px) !important;
  right: clamp(78px, 6vw, 104px) !important;
  z-index: 8 !important;
  display: flex !important;
  justify-content: flex-end !important;
  padding: 0 !important;
  margin: 0 !important;
}

.s6-project-gallery-modal .s6-project-before-after-modal__header h2 {
  padding-right: min(360px, 34vw) !important;
}

.s6-project-gallery-modal .s6-project-before-after-modal__link,
.s6-project-gallery-modal__project-link {
  min-height: 40px !important;
  padding: 0 16px !important;
  white-space: nowrap !important;
  box-shadow: none !important;
}

.s6-project-gallery-modal .s6-project-gallery-modal__image,
.s6-project-gallery-modal .s6-before-after--project-modal {
  background: transparent !important;
  border-color: rgba(255,255,255,.10) !important;
}

.s6-project-gallery-modal .s6-project-gallery-modal__image {
  display: grid !important;
  place-items: center !important;
  min-height: min(58vh, 590px) !important;
  overflow: hidden !important;
}

.s6-project-gallery-modal .s6-project-gallery-modal__image img {
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: min(58vh, 590px) !important;
  min-height: 0 !important;
  object-fit: contain !important;
  object-position: center center !important;
}

.s6-project-gallery-modal .s6-before-after--project-modal {
  display: block !important;
  overflow: hidden !important;
}

.s6-project-gallery-modal .s6-before-after--project-modal .s6-before-after__after,
.s6-project-gallery-modal .s6-before-after--project-modal .s6-before-after__before {
  background: transparent !important;
}

.s6-project-gallery-modal .s6-before-after--project-modal .s6-before-after__after img,
.s6-project-gallery-modal .s6-before-after--project-modal .s6-before-after__before img {
  object-fit: cover !important;
  object-position: center center !important;
  background: transparent !important;
}

@media (max-width: 900px) {
  .s6-project-gallery-modal__actions {
    position: static !important;
    padding: 0 16px 18px !important;
    justify-content: stretch !important;
  }

  .s6-project-gallery-modal .s6-project-before-after-modal__header h2 {
    padding-right: 48px !important;
  }

  .s6-project-gallery-modal .s6-project-before-after-modal__link,
  .s6-project-gallery-modal__project-link {
    width: 100% !important;
  }

  .s6-project-gallery-modal .s6-project-gallery-modal__image img {
    max-height: min(50vh, 420px) !important;
  }
}

.s6-project-gallery-modal .s6-project-before-after-modal__header h2 {
  font-size: clamp(.95rem, 1.45vw, 1.45rem) !important;
  line-height: 1.08 !important;
  letter-spacing: -.025em !important;
  max-width: 680px !important;
}

.s6-project-gallery-modal .s6-project-gallery-modal__image,
.s6-project-gallery-modal .s6-before-after--project-modal {
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

.s6-project-gallery-modal .s6-project-gallery-modal__image {
  min-height: min(56vh, 560px) !important;
}

.s6-project-gallery-modal .s6-project-gallery-modal__image img {
  max-height: min(56vh, 560px) !important;
}

.s6-project-gallery-modal .s6-before-after--project-modal {
  --s6-ba-ratio-number: 1.6;
  aspect-ratio: var(--s6-ba-match-ratio, var(--s6-ba-ratio, 16 / 10)) !important;
  width: min(100%, calc(min(56vh, 560px) * var(--s6-ba-ratio-number))) !important;
  max-width: calc(100% - clamp(44px, 6.8vw, 84px)) !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: min(56vh, 560px) !important;
  margin-inline: auto !important;
  position: relative !important;
}

.s6-project-gallery-modal .s6-before-after--project-modal .s6-before-after__after,
.s6-project-gallery-modal .s6-before-after--project-modal .s6-before-after__before {
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  background: transparent !important;
}

.s6-project-gallery-modal .s6-before-after--project-modal .s6-before-after__after img,
.s6-project-gallery-modal .s6-before-after--project-modal .s6-before-after__before img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center center !important;
  background: #050505 !important;
}

.s6-project-gallery-modal .s6-before-after--project-modal .s6-before-after__line {
  height: 100% !important;
}

.s6-project-gallery-modal .s6-before-after--project-modal .s6-before-after__label {
  transform: none !important;
}

@media (max-width: 900px) {
  .s6-project-gallery-modal .s6-project-before-after-modal__header h2 {
    font-size: clamp(.95rem, 5vw, 1.35rem) !important;
  }

  .s6-project-gallery-modal .s6-before-after--project-modal {
    width: min(100%, calc(min(50vh, 420px) * var(--s6-ba-ratio-number))) !important;
    max-width: calc(100% - 32px) !important;
    max-height: min(50vh, 420px) !important;
  }
}

.s6-project-gallery-modal .s6-project-before-after-modal__header {
  padding-right: clamp(22px, 3.4vw, 42px) !important;
}

.s6-project-gallery-modal .s6-project-before-after-modal__header h2 {
  max-width: min(980px, calc(100% - 300px)) !important;
  padding-right: 0 !important;
  font-size: clamp(.9rem, 1.32vw, 1.28rem) !important;
  line-height: 1.12 !important;
  letter-spacing: -.02em !important;
}

.s6-project-gallery-modal__meta,
.s6-project-gallery-modal__description,
.s6-project-gallery-modal .s6-project-before-after-modal__header p {
  max-width: min(980px, calc(100% - 300px)) !important;
}

@media (max-width: 900px) {
  .s6-project-gallery-modal .s6-project-before-after-modal__header h2,
  .s6-project-gallery-modal__meta,
  .s6-project-gallery-modal__description,
  .s6-project-gallery-modal .s6-project-before-after-modal__header p {
    max-width: 100% !important;
  }

  .s6-project-gallery-modal .s6-project-before-after-modal__header h2 {
    font-size: clamp(.95rem, 5vw, 1.35rem) !important;
  }
}

.s6-project-grid--editorial {
  display: grid !important;
  grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
  grid-auto-flow: row !important;
  align-items: stretch !important;
  gap: clamp(18px, 1.8vw, 28px) !important;
  counter-reset: project-card !important;
}

.s6-project-grid--editorial .s6-project-card,
.s6-project-grid--editorial .s6-project-card--featured,
.s6-project-grid--editorial .s6-project-card--pattern-1,
.s6-project-grid--editorial .s6-project-card--pattern-2,
.s6-project-grid--editorial .s6-project-card--pattern-3,
.s6-project-grid--editorial .s6-project-card--pattern-4,
.s6-project-grid--editorial .s6-project-card--pattern-5,
.s6-project-grid--editorial .s6-project-card--pattern-6,
.s6-project-grid--editorial .s6-project-card--pattern-0 {
  margin-top: 0 !important;
  transform: none !important;
}


.s6-project-grid--editorial .s6-project-card--pattern-1,
.s6-project-grid--editorial .s6-project-card--pattern-2,
.s6-project-grid--editorial .s6-project-card--featured {
  grid-column: span 6 !important;
  min-height: clamp(480px, 44vw, 620px) !important;
}

.s6-project-grid--editorial .s6-project-card--pattern-3,
.s6-project-grid--editorial .s6-project-card--pattern-4,
.s6-project-grid--editorial .s6-project-card--pattern-5,
.s6-project-grid--editorial .s6-project-card--pattern-6 {
  grid-column: span 3 !important;
  min-height: clamp(330px, 30vw, 430px) !important;
}

.s6-project-grid--editorial .s6-project-card--pattern-0 {
  grid-column: span 6 !important;
  min-height: clamp(390px, 34vw, 500px) !important;
}

.s6-project-grid--editorial .s6-project-card__link {
  height: 100% !important;
  min-height: inherit !important;
  border-radius: 0 !important;
  border: 1px solid rgba(255,255,255,.105) !important;
  box-shadow: 0 22px 70px rgba(0,0,0,.34) !important;
  transform: none !important;
}

.s6-project-grid--editorial .s6-project-card:hover .s6-project-card__link {
  transform: none !important;
  border-color: rgba(142,198,64,.38) !important;
  box-shadow:
    0 28px 90px rgba(0,0,0,.46),
    0 0 52px rgba(142,198,64,.045) !important;
}

.s6-project-grid--editorial .s6-project-card__image {
  transform: scale(1.02) !important;
  background-position: center center !important;
  transition: transform .7s cubic-bezier(.22,1,.36,1), filter .7s cubic-bezier(.22,1,.36,1) !important;
}

.s6-project-grid--editorial .s6-project-card:hover .s6-project-card__image {
  transform: scale(1.08) !important;
}

.s6-project-grid--editorial .s6-project-card__content {
  padding: clamp(20px, 2vw, 30px) !important;
  transform: none !important;
}

.s6-project-grid--editorial .s6-project-card:hover .s6-project-card__content {
  transform: none !important;
}

.s6-project-grid--editorial .s6-project-card h2,
.s6-project-grid--editorial .s6-project-card--featured h2,
.s6-project-grid--editorial .s6-project-card--pattern-1 h2,
.s6-project-grid--editorial .s6-project-card--pattern-2 h2,
.s6-project-grid--editorial .s6-project-card--pattern-4 h2,
.s6-project-grid--editorial .s6-project-card--pattern-0 h2 {
  max-width: 820px !important;
  font-size: clamp(1.35rem, 2.1vw, 2.8rem) !important;
  line-height: .98 !important;
}

.s6-project-grid--editorial .s6-project-card--pattern-3 h2,
.s6-project-grid--editorial .s6-project-card--pattern-5 h2,
.s6-project-grid--editorial .s6-project-card--pattern-6 h2 {
  font-size: clamp(1.1rem, 1.35vw, 1.65rem) !important;
  line-height: 1 !important;
}

.s6-project-grid--editorial .s6-project-card p {
  max-width: 620px !important;
  color: rgba(255,255,255,.68) !important;
}

.s6-project-grid--editorial .s6-project-card--pattern-3 p,
.s6-project-grid--editorial .s6-project-card--pattern-4 p,
.s6-project-grid--editorial .s6-project-card--pattern-5 p,
.s6-project-grid--editorial .s6-project-card--pattern-6 p {
  display: none !important;
}

.s6-project-grid--editorial .s6-project-card::before {
  display: none !important;
  content: none !important;
}

@media (max-width: 1180px) and (min-width: 761px) {
  .s6-project-grid--editorial .s6-project-card,
  .s6-project-grid--editorial .s6-project-card--featured,
  .s6-project-grid--editorial .s6-project-card--pattern-1,
  .s6-project-grid--editorial .s6-project-card--pattern-2,
  .s6-project-grid--editorial .s6-project-card--pattern-3,
  .s6-project-grid--editorial .s6-project-card--pattern-4,
  .s6-project-grid--editorial .s6-project-card--pattern-5,
  .s6-project-grid--editorial .s6-project-card--pattern-6,
  .s6-project-grid--editorial .s6-project-card--pattern-0 {
    grid-column: span 6 !important;
    min-height: 430px !important;
  }
}

@media (max-width: 760px) {
  .s6-project-grid--editorial {
    grid-template-columns: 1fr !important;
  }

  .s6-project-grid--editorial .s6-project-card,
  .s6-project-grid--editorial .s6-project-card--featured,
  .s6-project-grid--editorial .s6-project-card--pattern-1,
  .s6-project-grid--editorial .s6-project-card--pattern-2,
  .s6-project-grid--editorial .s6-project-card--pattern-3,
  .s6-project-grid--editorial .s6-project-card--pattern-4,
  .s6-project-grid--editorial .s6-project-card--pattern-5,
  .s6-project-grid--editorial .s6-project-card--pattern-6,
  .s6-project-grid--editorial .s6-project-card--pattern-0 {
    grid-column: 1 / -1 !important;
    min-height: 360px !important;
  }
}


.s6-project-grid--editorial .s6-project-card__image {
  background-image: none !important;
  background-color: rgba(255,255,255,.025) !important;
}

.s6-project-grid--editorial .s6-project-card__image img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  transform: scale(1.02);
  filter: grayscale(.16) contrast(1.06);
  transition:
    transform .7s cubic-bezier(.22,1,.36,1),
    filter .7s cubic-bezier(.22,1,.36,1);
}

.s6-project-grid--editorial .s6-project-card:hover .s6-project-card__image img {
  transform: scale(1.08);
  filter: grayscale(0) contrast(1.12) saturate(1.06);
}

.s6-project-grid--editorial .s6-project-card__image {
  transform: none !important;
  filter: none !important;
}

.s6-project-grid--editorial .s6-project-card:hover .s6-project-card__image {
  transform: none !important;
  filter: none !important;
}

/* Keep equal-sized cards using equal title hierarchy. */
.s6-project-grid--editorial .s6-project-card--featured h2,
.s6-project-grid--editorial .s6-project-card--pattern-1 h2,
.s6-project-grid--editorial .s6-project-card--pattern-2 h2,
.s6-project-grid--editorial .s6-project-card--pattern-0 h2 {
  max-width: 760px !important;
  font-size: clamp(1.35rem, 2.05vw, 2.55rem) !important;
  line-height: .98 !important;
  letter-spacing: -.052em !important;
}

.s6-project-grid--editorial .s6-project-card--pattern-3 h2,
.s6-project-grid--editorial .s6-project-card--pattern-4 h2,
.s6-project-grid--editorial .s6-project-card--pattern-5 h2,
.s6-project-grid--editorial .s6-project-card--pattern-6 h2 {
  max-width: 420px !important;
  font-size: clamp(1.08rem, 1.25vw, 1.55rem) !important;
  line-height: 1.02 !important;
  letter-spacing: -.035em !important;
}

.s6-project-grid--editorial .s6-project-card--pattern-3 .s6-project-card__content,
.s6-project-grid--editorial .s6-project-card--pattern-4 .s6-project-card__content,
.s6-project-grid--editorial .s6-project-card--pattern-5 .s6-project-card__content,
.s6-project-grid--editorial .s6-project-card--pattern-6 .s6-project-card__content {
  padding: clamp(18px, 1.65vw, 24px) !important;
}

.s6-project-card__badges {
  position: absolute;
  top: 18px;
  right: 18px;
  z-index: 6;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 7px;
  pointer-events: none;
}

.s6-project-card__badges .s6-project-card__badge {
  position: static !important;
  top: auto !important;
  right: auto !important;
}

.s6-project-card__badge--before-after {
  border-color: rgba(142, 196, 63, .55) !important;
  color: #101010 !important;
  background: #8ec43f !important;
}

.s6-project-card__badge--full-project {
  border-color: rgba(255,255,255,.18) !important;
  color: rgba(255,255,255,.92) !important;
  background: rgba(5, 6, 5, .68) !important;
}

@media (max-width: 760px) {
  .s6-project-grid--editorial .s6-project-card h2,
  .s6-project-grid--editorial .s6-project-card--featured h2,
  .s6-project-grid--editorial .s6-project-card--pattern-1 h2,
  .s6-project-grid--editorial .s6-project-card--pattern-2 h2,
  .s6-project-grid--editorial .s6-project-card--pattern-3 h2,
  .s6-project-grid--editorial .s6-project-card--pattern-4 h2,
  .s6-project-grid--editorial .s6-project-card--pattern-5 h2,
  .s6-project-grid--editorial .s6-project-card--pattern-6 h2,
  .s6-project-grid--editorial .s6-project-card--pattern-0 h2 {
    font-size: clamp(1.35rem, 7vw, 2.1rem) !important;
    line-height: 1 !important;
  }

  .s6-project-card__badges {
    top: 14px;
    right: 14px;
  }
}

/* Gallery load visibility fix: project archive grids should not wait for scroll reveal. */
.s6-projects-page .s6-projects-gallery-section.s6-reveal,
.s6-projects-page .s6-projects-gallery-section.s6-reveal.is-visible {
  opacity: 1 !important;
  transform: none !important;
  filter: none !important;
}

.s6-projects-page .s6-project-grid,
.s6-projects-page .s6-project-card,
.s6-projects-page .s6-project-card__image img {
  opacity: 1;
  visibility: visible;
}

/* =========================================================
   Homepage Interactive Cards
   Full-card affordance, blog metadata alignment, and external
   contact-link treatment.
========================================================= */
.s6-feature-project[data-s6-before-after-open],
.s6-blog-feature[data-s6-card-href],
.s6-blog-list article[data-s6-card-href] {
  cursor: pointer;
}

.s6-feature-project[data-s6-before-after-open]:focus-visible,
.s6-blog-feature[data-s6-card-href]:focus-visible,
.s6-blog-list article[data-s6-card-href]:focus-visible {
  outline: 2px solid rgba(142, 196, 63, .9);
  outline-offset: 4px;
}

.s6-home-blog-card-meta {
  display: flex !important;
  align-items: center !important;
  gap: 8px 10px !important;
  margin-bottom: 12px !important;
  line-height: 1 !important;
}

.s6-home-blog-card-meta > a,
.s6-home-blog-card-meta > span:first-child {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 27px !important;
  margin: 0 !important;
  padding: 7px 12px 6px !important;
  border: 1px solid rgba(142, 196, 63, .45) !important;
  border-radius: 999px !important;
  background: rgba(142, 196, 63, .08) !important;
  color: rgba(181, 239, 114, .92) !important;
  line-height: 1 !important;
  text-decoration: none !important;
}

.s6-home-blog-card-meta > span:not(:first-child) {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 27px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: rgba(255, 255, 255, .5) !important;
  line-height: 1 !important;
}

.s6-contact-methods a[target="_blank"] strong::after {
  content: "↗";
  display: inline-block;
  margin-left: 8px;
  color: var(--s6-green);
  font-size: .82em;
  transform: translateY(-1px);
}

.s6-logo {
  min-height: 42px;
  max-height: 46px;
  overflow: visible;
}

.s6-logo__custom {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: clamp(132px, 11vw, 184px);
  height: 42px;
  min-width: 0;
  overflow: hidden;
}

.s6-logo__image,
.s6-logo__custom img {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 38px !important;
  object-fit: contain !important;
}

@media (max-width: 980px) {
  .s6-logo__custom {
    width: 146px;
    height: 40px;
  }

  .s6-logo__image,
  .s6-logo__custom img {
    max-height: 34px !important;
  }
}

@media (max-width: 760px) {
  .s6-logo__custom {
    width: 132px;
    height: 38px;
  }

  .s6-logo__image,
  .s6-logo__custom img {
    max-height: 32px !important;
  }
}

.s6-footer {
  position: relative;
  overflow: hidden;
  border-top: 1px solid rgba(142, 198, 64, .22);
  background:
    radial-gradient(circle at 12% 0%, rgba(142, 198, 64, .14), transparent 34%),
    linear-gradient(180deg, #080908 0%, #000 100%);
  color: #fff;
  padding: clamp(58px, 7vw, 96px) clamp(22px, 5vw, 64px) 30px;
}

.s6-footer::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .16;
  background-image:
    linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);
  background-size: 42px 42px;
  mask-image: linear-gradient(180deg, rgba(0,0,0,.85), transparent 76%);
}

.s6-footer__inner {
  position: relative;
  z-index: 1;
  display: block;
  max-width: 1550px;
  margin: 0 auto;
}

.s6-footer__top {
  display: grid;
  grid-template-columns: minmax(220px, 340px) minmax(0, 760px);
  gap: clamp(34px, 6vw, 96px);
  align-items: start;
  padding-bottom: clamp(34px, 5vw, 62px);
  border-bottom: 1px solid rgba(255,255,255,.10);
}

.s6-footer__brand {
  display: inline-flex;
  width: fit-content;
  max-width: min(320px, 100%);
  align-items: center;
  gap: 14px;
  color: #fff;
  text-decoration: none;
}

.s6-footer__brand .s6-logo__custom {
  width: clamp(170px, 16vw, 250px);
  height: 56px;
  overflow: visible;
}

.s6-footer__brand .s6-logo__image,
.s6-footer__brand .s6-logo__custom img {
  max-width: 100% !important;
  max-height: 54px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
}

.s6-footer__brand .s6-logo__text {
  display: block;
}

.s6-footer__brand .s6-logo__title {
  font-size: 20px;
}

.s6-footer__brand .s6-logo__sub {
  font-size: 10px;
}

.s6-footer__statement {
  max-width: 760px;
}

.s6-footer__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 16px;
  color: var(--s6-green);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.s6-footer__eyebrow::before {
  content: "";
  width: 42px;
  height: 2px;
  background: var(--s6-green);
}

.s6-footer__statement h2 {
  max-width: 660px;
  margin: 0;
  font-size: clamp(34px, 5vw, 74px);
  line-height: .92;
  letter-spacing: -.055em;
  text-transform: uppercase;
}

.s6-footer__statement > p:not(.s6-footer__eyebrow) {
  max-width: 650px;
  margin: 18px 0 0;
  color: rgba(255,255,255,.58);
  font-size: clamp(14px, 1.2vw, 17px);
  line-height: 1.7;
}

.s6-footer__grid {
  display: grid;
  grid-template-columns: 1.05fr 1fr 1.25fr minmax(240px, .9fr);
  gap: clamp(22px, 3vw, 54px);
  padding: clamp(32px, 5vw, 60px) 0;
}

.s6-footer__column h3 {
  margin: 0 0 18px;
  color: rgba(255,255,255,.92);
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .2em;
  text-transform: uppercase;
}

.s6-footer__column nav,
.s6-footer__socials {
  display: grid;
  gap: 12px;
}

.s6-footer__column a,
.s6-footer__socials a {
  width: fit-content;
  color: rgba(255,255,255,.54);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .05em;
  text-decoration: none;
  transition: color .25s ease, transform .25s ease;
}

.s6-footer__column a:hover,
.s6-footer__socials a:hover {
  color: var(--s6-green);
  transform: translateX(3px);
}

.s6-footer__column--contact a[target="_blank"]::after {
  content: "↗";
  margin-left: 7px;
  color: var(--s6-green);
  font-size: .84em;
}

.s6-footer__cta {
  display: flex;
  min-height: 210px;
  flex-direction: column;
  justify-content: space-between;
  border: 1px solid rgba(142,198,64,.28);
  background:
    linear-gradient(180deg, rgba(142,198,64,.12), rgba(142,198,64,.035)),
    rgba(255,255,255,.025);
  padding: 22px;
}

.s6-footer__cta span {
  display: grid;
  width: 46px;
  height: 46px;
  place-items: center;
  border: 1px solid rgba(142,198,64,.55);
  color: var(--s6-green);
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .12em;
}

.s6-footer__cta p {
  margin: 30px 0 16px;
  color: #fff;
  font-size: 21px;
  font-weight: 850;
  line-height: 1.12;
  letter-spacing: -.035em;
}

.s6-footer__cta a {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--s6-green);
  background: var(--s6-green);
  color: #050505;
  padding: 12px 18px;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .14em;
  text-decoration: none;
  text-transform: uppercase;
}

.s6-footer__bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  border-top: 1px solid rgba(255,255,255,.10);
  padding-top: 24px;
}

.s6-footer__bottom p {
  margin: 0;
  color: rgba(255,255,255,.42);
  font-size: 10px;
  font-weight: 850;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.s6-footer__credit {
  color: rgba(255,255,255,.50);
}

.s6-footer__credit a {
  color: inherit;
  text-decoration: none;
}

.s6-footer__credit a:hover,
.s6-footer__credit a:focus-visible {
  color: rgba(255,255,255,.72);
}

.s6-footer__socials {
  grid-auto-flow: column;
  gap: 18px;
}

@media (max-width: 1180px) {
  .s6-footer__top,
  .s6-footer__grid {
    grid-template-columns: 1fr 1fr;
  }

  .s6-footer__statement {
    max-width: none;
  }
}

@media (max-width: 760px) {
  .s6-footer {
    padding: 54px 20px 26px;
  }

  .s6-footer__top,
  .s6-footer__grid {
    grid-template-columns: 1fr;
  }

  .s6-footer__top {
    gap: 30px;
  }

  .s6-footer__brand .s6-logo__custom {
    width: 170px;
    height: 48px;
  }

  .s6-footer__brand .s6-logo__image,
  .s6-footer__brand .s6-logo__custom img {
    max-height: 44px !important;
  }

  .s6-footer__grid {
    gap: 30px;
  }

  .s6-footer__cta {
    min-height: 180px;
  }

  .s6-footer__bottom {
    flex-direction: column;
    align-items: flex-start;
  }

  .s6-footer__socials {
    grid-auto-flow: row;
  }
}

.s6-division-page--stone-masonry .s6-stone-systems .s6-stone-section-head {
  max-width: 1120px;
}

.s6-division-page--stone-masonry .s6-stone-systems .s6-stone-section-head p:not(.s6-section-label) {
  max-width: 780px;
  margin-top: -8px;
}

.s6-division-page--stone-masonry .s6-stone-system-card-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(1rem, 1.7vw, 1.45rem);
  align-items: stretch;
}

.s6-division-page--stone-masonry .s6-stone-system-card {
  position: relative;
  min-height: 34rem;
  padding: clamp(1.25rem, 1.55vw, 1.55rem);
  display: grid;
  grid-template-rows: auto auto minmax(14.35rem, 1fr) auto auto auto;
  gap: .85rem;
  border-radius: 0;
  overflow: hidden;
  background:
    linear-gradient(180deg, rgba(224,214,198,.96), rgba(196,181,158,.93));
  border-top: 1px solid rgba(54,42,30,.22);
  border-left: 1px solid rgba(54,42,30,.18);
  border-right: 1px solid rgba(255,255,255,.48);
  border-bottom: 1px solid rgba(255,255,255,.52);
  box-shadow:
    inset 0 .9rem 1.75rem rgba(54,42,30,.09),
    inset 0 -.45rem .9rem rgba(255,255,255,.35);
  transform: none;
  transition: border-color .24s ease, box-shadow .24s ease, background-color .24s ease;
}

.s6-division-page--stone-masonry .s6-stone-system-card:hover,
.s6-division-page--stone-masonry .s6-stone-system-card:focus-visible {
  transform: none;
  border-top-color: rgba(142,196,63,.48);
  border-left-color: rgba(142,196,63,.38);
  outline: none;
}

.s6-division-page--stone-masonry .s6-stone-system-card__top,
.s6-division-page--stone-masonry .s6-stone-system-card .s6-system-card__top,
.s6-division-page--stone-masonry .s6-stone-system-card .s6-system-card__body,
.s6-division-page--stone-masonry .s6-stone-system-card .s6-system-card__specs,
.s6-division-page--stone-masonry .s6-stone-system-card em {
  position: relative;
  z-index: 2;
}

.s6-division-page--stone-masonry .s6-stone-system-card .s6-system-card__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}

.s6-division-page--stone-masonry .s6-stone-system-card .s6-system-card__kicker {
  display: block;
  margin: 0 0 .58rem;
  color: rgba(39,31,24,.68);
  font-size: .55rem;
  font-weight: 900;
  line-height: 1.18;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.s6-division-page--stone-masonry .s6-stone-system-card .s6-system-card__label {
  display: block;
  margin: 0;
  color: rgba(27,23,19,.95);
  font-size: clamp(1.05rem, 1.3vw, 1.35rem);
  font-weight: 900;
  line-height: 1;
  letter-spacing: -.035em;
  text-transform: uppercase;
}

.s6-division-page--stone-masonry .s6-stone-system-card .s6-system-card__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.2rem;
  height: 2.2rem;
  flex: 0 0 2.2rem;
  border: 1px solid rgba(142,196,63,.78);
  color: var(--s6-green);
  background: rgba(142,196,63,.06);
  font-size: .9rem;
  font-weight: 950;
  letter-spacing: -.04em;
  line-height: 1;
}

.s6-division-page--stone-masonry .s6-stone-system-card .s6-system-card__rule {
  width: 1.15rem;
  height: 1px;
  background: var(--s6-green);
  opacity: .9;
}

.s6-division-page--stone-masonry .s6-stone-system-card .s6-system-card__visual {
  position: relative;
  z-index: 1;
  min-height: 14.35rem;
  margin: .05rem -.35rem .05rem;
  padding: .55rem .2rem .2rem;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
  display: flex;
  align-items: center;
  justify-content: center;
}

.s6-stone-system-visual {
  position: relative;
  width: min(100%, 15.8rem);
  min-height: 12.3rem;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: .44rem;
  perspective: 720px;
  filter: drop-shadow(.75rem 1rem 1.1rem rgba(54,42,30,.2));
  transition: transform .28s ease, filter .28s ease;
}

.s6-stone-system-card:hover .s6-stone-system-visual,
.s6-stone-system-card:focus-visible .s6-stone-system-visual {
  transform: translateY(-.38rem) scale(1.055);
  filter: drop-shadow(.85rem 1.12rem 1.22rem rgba(54,42,30,.24));
}

.s6-stone-system-visual span {
  display: block;
  width: clamp(1.42rem, 2vw, 1.9rem);
  height: calc(7.8rem - (var(--stone-piece, 0) * .18rem));
  transform: rotateX(56deg) rotateZ(-31deg);
  border: 1px solid rgba(44,35,27,.18);
  box-shadow:
    .22rem .3rem .36rem rgba(54,42,30,.16),
    inset .12rem .04rem rgba(255,255,255,.34);
}

.s6-stone-system-visual span:nth-child(1) { --stone-piece: 0; }
.s6-stone-system-visual span:nth-child(2) { --stone-piece: 1; }
.s6-stone-system-visual span:nth-child(3) { --stone-piece: 2; }
.s6-stone-system-visual span:nth-child(4) { --stone-piece: 3; }

.s6-stone-system-visual--veneer span { background: linear-gradient(135deg, #6f6250, #a89478); }
.s6-stone-system-visual--veneer span:nth-child(2n) { background: linear-gradient(135deg, #917f67, #c0ad8d); }
.s6-stone-system-visual--brick span { background: linear-gradient(135deg, #8d3e2f, #c66b4a); }
.s6-stone-system-visual--brick span:nth-child(2n) { background: linear-gradient(135deg, #6f322a, #aa553c); }
.s6-stone-system-visual--natural span { background: linear-gradient(135deg, #5d5c53, #b9b2a3); }
.s6-stone-system-visual--natural span:nth-child(2n) { background: linear-gradient(135deg, #777266, #d2c8b8); }
.s6-stone-system-visual--block span { background: linear-gradient(135deg, #75726a, #b8b4aa); }
.s6-stone-system-visual--block span:nth-child(2n) { background: linear-gradient(135deg, #5d5a54, #9b978f); }

.s6-division-page--stone-masonry .s6-stone-system-card .s6-system-card__body {
  display: grid;
  gap: .42rem;
  min-width: 0;
}

.s6-division-page--stone-masonry .s6-stone-system-card .s6-system-card__icon {
  width: 1.35rem;
  height: 1.35rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--s6-green);
  margin-bottom: .05rem;
  position: relative;
}

.s6-division-page--stone-masonry .s6-stone-system-card .s6-system-card__icon:before,
.s6-division-page--stone-masonry .s6-stone-system-card .s6-system-card__icon:after {
  content: "";
  position: absolute;
  border: 1.6px solid currentColor;
  opacity: .95;
}

.s6-division-page--stone-masonry .s6-system-card__icon--grid:before {
  inset: .1rem;
  background: linear-gradient(currentColor,currentColor) 50% 0/1.5px 100% no-repeat,
              linear-gradient(currentColor,currentColor) 0 50%/100% 1.5px no-repeat;
}
.s6-division-page--stone-masonry .s6-system-card__icon--stone:before {
  inset: .12rem;
  clip-path: polygon(15% 28%, 45% 5%, 82% 18%, 94% 58%, 72% 92%, 28% 86%, 4% 56%);
}
.s6-division-page--stone-masonry .s6-system-card__icon--block:before {
  inset: .18rem .08rem;
  box-shadow: .34rem .34rem 0 -.02rem transparent;
}
.s6-division-page--stone-masonry .s6-system-card__icon--block:after {
  inset: .48rem .08rem .18rem;
}

.s6-division-page--stone-masonry .s6-stone-system-card .s6-system-card__body strong {
  max-width: 100%;
  color: rgba(27,23,19,.96);
  font-size: clamp(.86rem, .95vw, 1.08rem);
  line-height: 1;
  letter-spacing: -.045em;
  text-transform: uppercase;
  white-space: nowrap;
}

.s6-division-page--stone-masonry .s6-stone-system-card .s6-system-card__body small {
  min-height: 4.5rem;
  color: rgba(39,31,24,.67);
  font-size: .7rem;
  font-weight: 650;
  line-height: 1.56;
  letter-spacing: .015em;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.s6-division-page--stone-masonry .s6-stone-system-card .s6-system-card__specs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid rgba(54,42,30,.13);
  border-bottom: 1px solid rgba(54,42,30,.13);
  margin-top: .4rem;
}

.s6-division-page--stone-masonry .s6-stone-system-card .s6-system-card__spec {
  min-width: 0;
  padding: .64rem .55rem .7rem;
  border-right: 1px solid rgba(54,42,30,.13);
  display: grid;
  gap: .42rem;
}
.s6-division-page--stone-masonry .s6-stone-system-card .s6-system-card__spec:last-child { border-right: 0; }

.s6-division-page--stone-masonry .s6-stone-system-card .s6-system-card__spec span {
  color: rgba(39,31,24,.55);
  font-size: .46rem;
  font-weight: 900;
  line-height: 1;
  letter-spacing: .11em;
  text-transform: uppercase;
  white-space: nowrap;
}

.s6-division-page--stone-masonry .s6-stone-system-card .s6-system-card__spec strong {
  color: rgba(27,23,19,.96);
  font-size: clamp(.68rem, .8vw, .86rem);
  font-weight: 850;
  line-height: 1.05;
  letter-spacing: -.015em;
  text-transform: uppercase;
  white-space: nowrap;
}

.s6-division-page--stone-masonry .s6-stone-system-card em {
  margin-top: .25rem;
  padding-top: .15rem;
  color: rgba(39,31,24,.84);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  font-size: .62rem;
  font-weight: 900;
  letter-spacing: .13em;
  text-transform: uppercase;
  font-style: normal;
}

.s6-division-page--stone-masonry .s6-stone-system-card em span:last-child {
  color: var(--s6-green);
  font-size: 1.05rem;
  line-height: 1;
  transition: transform .24s ease;
}

.s6-division-page--stone-masonry .s6-stone-system-card:hover em span:last-child,
.s6-division-page--stone-masonry .s6-stone-system-card:focus-visible em span:last-child {
  transform: translateX(.2rem);
}

@media (max-width: 1380px) {
  .s6-division-page--stone-masonry .s6-stone-system-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .s6-division-page--stone-masonry .s6-stone-system-card { min-height: 32rem; }
}

@media (max-width: 720px) {
  .s6-division-page--stone-masonry .s6-stone-system-card-grid {
    grid-template-columns: 1fr;
  }
  .s6-division-page--stone-masonry .s6-stone-system-card { min-height: auto; }
}

.s6-division-page--stone-masonry .s6-stone-explainer-section {
  padding: clamp(72px, 8vw, 120px) 0;
  background: #f4f1ea;
}

.s6-division-page--stone-masonry .s6-stone-system-explainer {
  display: grid;
  grid-template-columns: minmax(0, .92fr) minmax(360px, 1.08fr);
  gap: clamp(26px, 4vw, 54px);
  align-items: stretch;
  margin-top: clamp(24px, 4vw, 42px);
  padding: clamp(22px, 3vw, 34px);
  background:
    linear-gradient(135deg, rgba(255,255,255,.64), rgba(228,222,210,.58)),
    repeating-linear-gradient(0deg, rgba(24, 31, 28, .035) 0 1px, transparent 1px 18px),
    repeating-linear-gradient(90deg, rgba(24, 31, 28, .028) 0 1px, transparent 1px 18px);
  border: 1px solid rgba(33, 39, 34, .16);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.74),
    inset 0 -18px 36px rgba(46, 42, 34, .055);
}

.s6-division-page--stone-masonry .s6-stone-system-explainer__copy {
  min-height: 520px;
  padding: clamp(14px, 2vw, 22px) clamp(8px, 1.2vw, 16px);
  display: grid;
  align-items: stretch;
  position: relative;
}

.s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__default,
.s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__point-system {
  grid-area: 1 / 1;
  min-height: 100%;
  display: grid;
  grid-template-rows: auto auto 1fr auto;
  align-content: stretch;
  gap: 14px;
  opacity: 1;
  transform: none;
  transition: opacity .22s ease;
}

.s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__point-system {
  opacity: 0;
  pointer-events: none;
}

.s6-division-page--stone-masonry .s6-stone-system-explainer.is-hotspot-active .s6-division-explainer__default {
  opacity: 0;
}

.s6-division-page--stone-masonry .s6-stone-system-explainer.is-hotspot-active .s6-division-explainer__point-system,
.s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__point-system.is-visible {
  opacity: 1;
  pointer-events: auto;
}

.s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__default > span,
.s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__point-system > span {
  display: inline-flex;
  width: fit-content;
  color: #6f7a34;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__default h3,
.s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__point-system h3 {
  margin: 0;
  color: #1d231f;
  font-size: clamp(1.45rem, 2.35vw, 2.45rem);
  line-height: .98;
  letter-spacing: -.055em;
  text-transform: uppercase;
  max-width: 12ch;
}

.s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__default p,
.s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__point-system p {
  align-self: center;
  margin: 0;
  color: rgba(29, 35, 31, .74);
  font-size: .98rem;
  line-height: 1.75;
  max-width: 58ch;
}

.s6-division-page--stone-masonry .s6-stone-system-explainer__overview-points,
.s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__point-system ul {
  align-self: end;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.s6-division-page--stone-masonry .s6-stone-system-explainer__overview-points li,
.s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__point-system li {
  min-height: 58px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 10px 12px;
  background: rgba(255,255,255,.46);
  border: 1px solid rgba(31, 39, 32, .12);
  color: rgba(29, 35, 31, .76);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.s6-division-page--stone-masonry .s6-stone-system-explainer__visual {
  min-height: 520px;
  position: relative;
  display: grid;
  align-content: end;
  padding: clamp(16px, 2vw, 24px);
  background:
    linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.18)),
    var(--s6-division-detail-bg) center/cover no-repeat;
  border: 1px solid rgba(28, 34, 29, .26);
  overflow: visible;
  isolation: isolate;
}

.s6-division-page--stone-masonry .s6-stone-system-explainer__visual::before {
  content: "";
  position: absolute;
  inset: 14px;
  border: 1px solid rgba(255,255,255,.18);
  pointer-events: none;
  z-index: 1;
}

.s6-division-page--stone-masonry .s6-stone-system-explainer__visual::after {
  content: "";
  position: absolute;
  inset: auto 9% 70px 9%;
  height: 48%;
  background: linear-gradient(180deg, transparent, rgba(0,0,0,.58));
  pointer-events: none;
  z-index: 1;
}

.s6-division-page--stone-masonry .s6-stone-system-explainer__image-label {
  position: absolute;
  top: 26px;
  right: 26px;
  z-index: 2;
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  background: rgba(142,198,64,.92);
  color: #111;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .08em;
}

.s6-division-page--stone-masonry .s6-stone-system-explainer__pills {
  position: relative;
  z-index: 3;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
  padding: 0;
  background: none;
  box-shadow: none;
}

.s6-division-page--stone-masonry .s6-stone-system-explainer__pills .s6-explainer-hotspot {
  position: static;
  width: auto;
  height: auto;
  min-height: 44px;
  border-radius: 0;
  padding: 11px 10px;
  background: rgba(12, 15, 13, .72);
  border: 1px solid rgba(255,255,255,.22);
  color: #f6f4ef;
  box-shadow: none;
  transform: none;
}

.s6-division-page--stone-masonry .s6-stone-system-explainer__pills .s6-explainer-hotspot span {
  position: static;
  width: auto;
  height: auto;
  display: block;
  background: none;
  border: 0;
  color: inherit;
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  white-space: nowrap;
}

.s6-division-page--stone-masonry .s6-stone-system-explainer__pills .s6-explainer-hotspot:hover,
.s6-division-page--stone-masonry .s6-stone-system-explainer__pills .s6-explainer-hotspot:focus-visible,
.s6-division-page--stone-masonry .s6-stone-system-explainer__pills .s6-explainer-hotspot.is-active {
  background: #8ec640;
  border-color: #8ec640;
  color: #111;
}

@media (max-width: 980px) {
  .s6-division-page--stone-masonry .s6-stone-system-explainer {
    grid-template-columns: 1fr;
  }
  .s6-division-page--stone-masonry .s6-stone-system-explainer__copy,
  .s6-division-page--stone-masonry .s6-stone-system-explainer__visual {
    min-height: auto;
  }
  .s6-division-page--stone-masonry .s6-stone-system-explainer__visual {
    min-height: 420px;
    order: -1;
  }
}

@media (max-width: 680px) {
  .s6-division-page--stone-masonry .s6-stone-system-explainer {
    padding: 18px;
  }
  .s6-division-page--stone-masonry .s6-stone-system-explainer__pills {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .s6-division-page--stone-masonry .s6-stone-system-explainer__overview-points,
  .s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__point-system ul {
    grid-template-columns: 1fr;
  }
  .s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__default h3,
  .s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__point-system h3 {
    max-width: none;
  }
}

.s6-division-page--stone-masonry .s6-stone-explainer-section {
  background: #f4f1ea;
}

.s6-division-page--stone-masonry .s6-stone-system-explainer {
  grid-template-columns: minmax(0, .94fr) minmax(360px, 1.06fr);
  gap: clamp(22px, 3.5vw, 44px);
  padding: clamp(24px, 3.2vw, 38px);
  background:
    linear-gradient(135deg, rgba(246,244,238,.88), rgba(225,218,205,.68)),
    repeating-linear-gradient(0deg, rgba(31, 36, 31, .035) 0 1px, transparent 1px 20px),
    repeating-linear-gradient(90deg, rgba(31, 36, 31, .03) 0 1px, transparent 1px 20px);
  border: 1px solid rgba(31, 39, 32, .18);
  box-shadow:
    inset 0 10px 28px rgba(38, 35, 28, .055),
    inset 0 -10px 26px rgba(255,255,255,.34);
}

.s6-division-page--stone-masonry .s6-stone-system-explainer__visual-stack {
  display: grid;
  grid-template-rows: minmax(340px, 1fr) auto;
  gap: 14px;
  min-height: 520px;
}

.s6-division-page--stone-masonry .s6-stone-system-explainer__visual {
  min-height: 0;
  height: 100%;
  padding: 0;
  align-content: stretch;
  background:
    linear-gradient(180deg, rgba(0,0,0,.04), rgba(0,0,0,.10)),
    var(--s6-division-detail-bg) center/cover no-repeat;
  border: 1px solid rgba(28, 34, 29, .22);
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.16),
    0 12px 26px rgba(24, 21, 17, .10);
}

.s6-division-page--stone-masonry .s6-stone-system-explainer__visual::after {
  display: none;
}

.s6-division-page--stone-masonry .s6-stone-system-explainer__visual::before {
  inset: 12px;
  border-color: rgba(255,255,255,.22);
}

.s6-division-page--stone-masonry .s6-stone-system-explainer__copy {
  min-height: 520px;
  padding: clamp(8px, 1.2vw, 14px) clamp(4px, .8vw, 10px);
}

.s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__default,
.s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__point-system {
  gap: clamp(10px, 1.4vw, 16px);
}

.s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__default h3,
.s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__point-system h3 {
  font-size: clamp(1.28rem, 2vw, 2rem);
  line-height: 1.02;
  max-width: 15ch;
}

.s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__default p,
.s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__point-system p {
  font-size: .95rem;
  line-height: 1.68;
}

.s6-division-page--stone-masonry .s6-stone-system-explainer__overview-points li,
.s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__point-system li {
  background: rgba(255,255,255,.36);
  border-color: rgba(31, 39, 32, .14);
}

.s6-division-page--stone-masonry .s6-stone-system-explainer__pills {
  position: static;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
}

.s6-division-page--stone-masonry .s6-stone-system-explainer__pills .s6-explainer-hotspot {
  min-height: 46px;
  padding: 12px 10px;
  background: rgba(246,244,238,.72);
  border: 1px solid rgba(31,39,32,.2);
  color: #202720;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.55);
  transition: background .22s ease, border-color .22s ease, color .22s ease, transform .22s ease;
}

.s6-division-page--stone-masonry .s6-stone-system-explainer__pills .s6-explainer-hotspot:hover,
.s6-division-page--stone-masonry .s6-stone-system-explainer__pills .s6-explainer-hotspot:focus-visible,
.s6-division-page--stone-masonry .s6-stone-system-explainer__pills .s6-explainer-hotspot.is-active {
  background: #8ec640;
  border-color: #8ec640;
  color: #111;
  transform: translateY(-1px);
}

@media (max-width: 980px) {
  .s6-division-page--stone-masonry .s6-stone-system-explainer__visual-stack {
    order: -1;
    min-height: 460px;
    grid-template-rows: minmax(350px, 1fr) auto;
  }
}

@media (max-width: 680px) {
  .s6-division-page--stone-masonry .s6-stone-system-explainer__visual-stack {
    min-height: auto;
    grid-template-rows: minmax(280px, auto) auto;
  }

  .s6-division-page--stone-masonry .s6-stone-system-explainer__pills {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Stone catalogue / profiles & colour blends */
.s6-stone-catalogue {
  padding: clamp(4.5rem, 8vw, 7rem) 0;
  background:
    radial-gradient(circle at 14% 12%, rgba(142, 198, 64, .08), transparent 30%),
    linear-gradient(180deg, #f4f1ea 0%, #ebe6dc 100%);
}
.s6-stone-catalogue__stack {
  display: grid;
  gap: clamp(2rem, 4vw, 3rem);
  margin-top: clamp(2rem, 4vw, 3rem);
}
.s6-stone-catalogue-group {
  position: relative;
  padding: clamp(1.35rem, 2.5vw, 2rem);
  background: rgba(238, 233, 222, .92);
  border: 1px solid rgba(34, 31, 28, .11);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.65),
    inset 0 -18px 38px rgba(42, 35, 28, .045);
  overflow: hidden;
}
.s6-stone-catalogue-group::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(40,35,28,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(40,35,28,.03) 1px, transparent 1px);
  background-size: 36px 36px;
  opacity: .55;
}
.s6-stone-catalogue-group__head {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1.5rem;
  align-items: start;
  margin-bottom: clamp(1.35rem, 2.6vw, 2rem);
}
.s6-stone-catalogue-group__head h3 {
  margin: .25rem 0 .55rem;
  font-size: clamp(1.6rem, 3vw, 2.55rem);
  line-height: .96;
  letter-spacing: -.045em;
  color: #171615;
  max-width: 780px;
}
.s6-stone-catalogue-group__head p:not(.s6-section-label) {
  margin: 0;
  max-width: 760px;
  color: rgba(28,26,24,.68);
  line-height: 1.65;
}
.s6-stone-catalogue-group__head > span {
  font-size: clamp(2.8rem, 7vw, 5.4rem);
  line-height: .82;
  font-weight: 800;
  color: rgba(20,18,16,.075);
}
.s6-stone-catalogue-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(1rem, 1.8vw, 1.35rem);
}
.s6-stone-product-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: clamp(.82rem, 1.1vw, 1rem);
  background: linear-gradient(180deg, #fbf8f1 0%, #f4efe5 100%);
  border: 1px solid rgba(30,27,24,.13);
  box-shadow: 0 16px 32px rgba(34,28,22,.09);
  overflow: hidden;
  transition: border-color .28s ease, box-shadow .28s ease;
}
.s6-stone-product-card.is-extra {
  display: none;
}
.s6-stone-catalogue-group.is-expanded .s6-stone-product-card.is-extra,
.s6-stone-catalogue-subgroup.is-expanded .s6-stone-product-card.is-extra {
  display: flex;
}
.s6-stone-product-card:hover {
  border-color: rgba(142, 198, 64, .58);
  box-shadow: 0 16px 32px rgba(34,28,22,.09);
}
.s6-stone-product-card:focus-within {
  border-color: rgba(142, 198, 64, .32);
  box-shadow: 0 16px 32px rgba(34,28,22,.09);
}
.s6-stone-product-card__image {
  position: relative;
  min-height: clamp(142px, 15vw, 205px);
  margin: .18rem .18rem .42rem;
  background-image: var(--s6-stone-product-bg);
  background-size: cover;
  background-position: center;
  border: 1px solid rgba(35,31,27,.2);
  box-shadow: 0 26px 44px rgba(34,28,22,.28), 0 8px 14px rgba(34,28,22,.12), 0 2px 0 rgba(255,255,255,.48) inset;
  transform: translateY(-1px) translateZ(0);
  transition: transform .38s ease, filter .38s ease, box-shadow .38s ease;
}
.s6-stone-product-card:hover .s6-stone-product-card__image {
  transform: translateY(-10px) scale(1.032);
  filter: saturate(1.08) contrast(1.05);
  box-shadow: 0 34px 56px rgba(34,28,22,.34), 0 14px 22px rgba(34,28,22,.16), 0 2px 0 rgba(255,255,255,.5) inset;
}
.s6-stone-product-card__image::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(255,255,255,.05), rgba(0,0,0,.18));
  pointer-events: none;
}
.s6-stone-product-card__image span {
  position: absolute;
  z-index: 1;
  left: 1rem;
  top: 1rem;
  padding: .42rem .62rem;
  background: rgba(16,16,14,.72);
  color: #f7f3e9;
  font-size: .66rem;
  letter-spacing: .13em;
  text-transform: uppercase;
  font-weight: 800;
}
.s6-stone-product-card__body {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  flex: 1;
  gap: .65rem;
  padding: .95rem .1rem .05rem;
}
.s6-stone-product-card__body h4 {
  margin: 0;
  font-size: clamp(1.14rem, 1.65vw, 1.38rem);
  letter-spacing: -.025em;
  color: #191816;
}
.s6-stone-product-card__body p {
  margin: 0;
  color: rgba(29,27,25,.64);
  line-height: 1.48;
  font-size: .88rem;
}
.s6-stone-product-card__color-name {
  color: rgba(29,27,25,.68);
  font-size: .92rem;
  font-weight: 700;
  letter-spacing: .015em;
}
.s6-stone-product-card__swatches {
  display: flex;
  gap: .42rem;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin-top: auto;
  padding-top: .35rem;
}
.s6-stone-product-swatch {
  width: 19px;
  height: 19px;
  border-radius: 999px;
  border: 2px solid rgba(255,255,255,.95);
  background: var(--s6-stone-swatch, #777);
  box-shadow: 0 0 0 1px rgba(0,0,0,.16), 0 5px 10px rgba(0,0,0,.13);
  cursor: pointer;
  transition: transform .18s ease, box-shadow .18s ease;
}
.s6-stone-product-swatch:hover,
.s6-stone-product-swatch.is-active {
  transform: translateY(-2px) scale(1.08);
  box-shadow: 0 0 0 2px rgba(142,198,64,.55), 0 7px 14px rgba(0,0,0,.18);
}
.s6-stone-catalogue-group__toggle {
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  gap: .7rem;
  margin: clamp(1.25rem, 2vw, 1.7rem) auto 0;
  padding: .82rem 1.25rem;
  border: 1px solid rgba(31,29,26,.2);
  background: #171615;
  color: #f5f1e8;
  text-transform: uppercase;
  letter-spacing: .11em;
  font-size: .72rem;
  font-weight: 800;
  cursor: pointer;
  transition: background .22s ease, color .22s ease, border-color .22s ease;
}
.s6-stone-catalogue-group__toggle:hover {
  background: #8ec640;
  color: #10100f;
  border-color: #8ec640;
}
.s6-stone-catalogue-group.is-expanded .s6-stone-catalogue-group__toggle span:last-child {
  transform: rotate(180deg);
}
.s6-stone-catalogue-group__toggle span:last-child {
  display: inline-block;
  transition: transform .2s ease;
}
@media (max-width: 1100px) {
  .s6-stone-catalogue-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 680px) {
  .s6-stone-catalogue-group { padding: 1rem; }
  .s6-stone-catalogue-group__head { grid-template-columns: 1fr; }
  .s6-stone-catalogue-group__head > span { display:none; }
  .s6-stone-catalogue-grid { grid-template-columns: 1fr; }
  .s6-stone-product-card__image { min-height: 210px; }
}

/* Stone catalogue footer / manufacturer resource block */
.s6-stone-catalogue-footer {
  position: relative;
  margin-top: clamp(2rem, 4vw, 3rem);
  padding: clamp(1.35rem, 2.8vw, 2.2rem);
  background: #171615;
  color: #f5f1e8;
  border: 1px solid rgba(142, 198, 64, .28);
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(320px, 1.1fr);
  gap: clamp(1.5rem, 3vw, 2.5rem);
  overflow: hidden;
}
.s6-stone-catalogue-footer::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 8% 0%, rgba(142,198,64,.16), transparent 36%),
    linear-gradient(135deg, rgba(255,255,255,.05), transparent 44%);
  opacity: .75;
}
.s6-stone-catalogue-footer__copy,
.s6-stone-catalogue-footer__manufacturers {
  position: relative;
  z-index: 1;
}
.s6-stone-catalogue-footer__copy h3 {
  margin: .25rem 0 .7rem;
  font-size: clamp(1.45rem, 2.4vw, 2.2rem);
  line-height: 1;
  letter-spacing: -.04em;
  color: #fff;
  max-width: 620px;
}
.s6-stone-catalogue-footer__copy p:not(.s6-section-label) {
  margin: 0;
  color: rgba(245,241,232,.74);
  line-height: 1.65;
  max-width: 700px;
}
.s6-stone-catalogue-footer__actions {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
  margin-top: 1.25rem;
}
.s6-stone-catalogue-footer__actions .s6-green-button,
.s6-stone-catalogue-footer__actions .s6-outline-button {
  min-height: 42px;
  padding: .72rem 1rem;
  font-size: .7rem;
}
.s6-stone-catalogue-footer__manufacturers {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .85rem;
}
.s6-stone-manufacturer-group {
  padding: 1rem;
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.1);
}
.s6-stone-manufacturer-group > span {
  display: block;
  margin-bottom: .65rem;
  color: #8ec640;
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.s6-stone-manufacturer-group > div {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
}
.s6-stone-manufacturer-group a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: .52rem .72rem;
  border: 1px solid rgba(245,241,232,.22);
  color: #f5f1e8;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: .66rem;
  font-weight: 800;
  transition: background .22s ease, color .22s ease, border-color .22s ease;
}
.s6-stone-manufacturer-group a:hover,
.s6-stone-manufacturer-group a:focus-visible {
  background: #8ec640;
  color: #10100f;
  border-color: #8ec640;
}

.s6-stone-catalogue-footer__manufacturers--flat {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .65rem;
}
.s6-stone-catalogue-footer__manufacturers--flat .s6-stone-manufacturer-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: .7rem .8rem;
  border: 1px solid rgba(245,241,232,.22);
  background: rgba(255,255,255,.045);
  color: #f5f1e8;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: .07em;
  font-size: .64rem;
  font-weight: 800;
  text-align: center;
  transition: background .22s ease, color .22s ease, border-color .22s ease, transform .22s ease;
}
.s6-stone-catalogue-footer__manufacturers--flat .s6-stone-manufacturer-link:hover,
.s6-stone-catalogue-footer__manufacturers--flat .s6-stone-manufacturer-link:focus-visible {
  background: #8ec640;
  color: #10100f;
  border-color: #8ec640;
  transform: translateY(-1px);
}
@media (max-width: 1100px) {
  .s6-stone-catalogue-footer__manufacturers--flat {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 760px) {
  .s6-stone-catalogue-footer__manufacturers--flat {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 480px) {
  .s6-stone-catalogue-footer__manufacturers--flat {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 900px) {
  .s6-stone-catalogue-footer {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 620px) {
  .s6-stone-catalogue-footer__manufacturers {
    grid-template-columns: 1fr;
  }
}

/* Stone catalogue compound section: Brick + Manufactured Stone as one main collection */
.s6-stone-catalogue-group--compound {
  display: grid;
  gap: 1.5rem;
  background: rgba(238, 233, 222, .92);
  border-color: rgba(34, 31, 28, .11);
  color: #171615;
}
.s6-stone-catalogue-group--compound::before {
  opacity: .55;
  background-image:
    linear-gradient(rgba(40,35,28,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(40,35,28,.03) 1px, transparent 1px);
}
.s6-stone-catalogue-group--compound .s6-stone-catalogue-group__head h3 {
  color: #171615;
}
.s6-stone-catalogue-group--compound .s6-stone-catalogue-group__head p:not(.s6-section-label) {
  color: rgba(28,26,24,.68);
}
.s6-stone-catalogue-group--compound .s6-stone-catalogue-group__head > span {
  color: rgba(20,18,16,.075);
}
.s6-stone-catalogue-subgroups {
  display: grid;
  gap: 1.25rem;
}
.s6-stone-catalogue-subgroup {
  border-top: 1px solid rgba(34,31,28,.12);
  padding-top: 1.25rem;
}
.s6-stone-catalogue-subgroup__head {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: .35rem;
  margin-bottom: 1rem;
}
.s6-stone-catalogue-subgroup__head h4 {
  margin: 0;
  color: #171615;
  font-size: clamp(1.05rem, 1.8vw, 1.45rem);
  letter-spacing: -.02em;
}
.s6-stone-catalogue-subgroup__head p:not(.s6-section-label) {
  margin: 0;
  color: rgba(28,26,24,.68);
  max-width: 760px;
  line-height: 1.6;
}

.s6-stone-elements {
  background:
    radial-gradient(circle at 18% 12%, rgba(80, 65, 45, .10), transparent 34%),
    linear-gradient(135deg, #eee5d8 0%, #dcd0bd 100%);
  color: var(--stone-ink);
  padding: clamp(92px, 11vw, 170px) 0;
}

.s6-stone-elements-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(18px, 2vw, 26px);
}

.s6-stone-element-card {
  position: relative;
  min-height: 390px;
  overflow: hidden;
  border: 1px solid rgba(71, 58, 40, .20);
  background:
    linear-gradient(180deg, rgba(255,255,255,.16), rgba(255,255,255,.04)),
    #d0c1aa;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.16);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  isolation: isolate;
}

.s6-stone-element-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 24% 18%, rgba(255,255,255,.22), transparent 20%),
    radial-gradient(circle at 82% 72%, rgba(0,0,0,.22), transparent 30%),
    var(--s6-stone-element-tone);
  opacity: .92;
  z-index: -2;
}

.s6-stone-element-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(20, 16, 11, .02), rgba(20, 16, 11, .48));
  z-index: -1;
}

.s6-stone-element-card__visual {
  position: absolute;
  inset: 24px 24px auto 24px;
  height: 44%;
  border: 1px solid rgba(255,255,255,.20);
  background:
    repeating-linear-gradient(135deg, rgba(255,255,255,.10) 0 1px, transparent 1px 14px),
    rgba(255,255,255,.06);
  display: grid;
  grid-template-columns: 1fr .65fr 1.15fr;
  gap: 8px;
  padding: 12px;
  transform: translateY(0);
  transition: transform .35s ease, border-color .35s ease, background .35s ease;
}

.s6-stone-element-card__visual span {
  display: block;
  min-height: 100%;
  background: rgba(255,255,255,.16);
  border: 1px solid rgba(255,255,255,.16);
}

.s6-stone-element-card__visual span:nth-child(2) {
  transform: translateY(18px);
}

.s6-stone-element-card__body {
  position: relative;
  padding: clamp(26px, 3vw, 36px);
  color: #fff;
}

.s6-stone-element-card__number {
  display: block;
  margin-bottom: 12px;
  font-size: .72rem;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: rgba(255,255,255,.68);
}

.s6-stone-element-card h3 {
  margin: 0 0 12px;
  font-size: clamp(1.35rem, 2.1vw, 2.35rem);
  line-height: .95;
  letter-spacing: -.045em;
}

.s6-stone-element-card p {
  margin: 0;
  color: rgba(255,255,255,.78);
  font-size: .98rem;
  line-height: 1.55;
}

.s6-stone-element-card:hover .s6-stone-element-card__visual,
.s6-stone-element-card:focus-within .s6-stone-element-card__visual {
  transform: translateY(-8px);
  border-color: rgba(142, 196, 63, .55);
  background:
    repeating-linear-gradient(135deg, rgba(255,255,255,.13) 0 1px, transparent 1px 14px),
    rgba(255,255,255,.09);
}

.s6-stone-elements-note {
  position: relative;
  margin-top: clamp(30px, 4vw, 52px);
  padding: clamp(26px, 3.2vw, 42px);
  border: 1px solid rgba(71, 58, 40, .18);
  background:
    radial-gradient(circle at 10% 10%, rgba(142, 196, 63, .14), transparent 28%),
    linear-gradient(135deg, rgba(255,255,255,.42), rgba(255,255,255,.18));
  max-width: 1120px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(22px, 4vw, 54px);
  overflow: hidden;
  box-shadow: 0 24px 70px rgba(71, 58, 40, .10), inset 0 0 0 1px rgba(255,255,255,.25);
}

.s6-stone-elements-note::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  background: var(--s6-green);
}

.s6-stone-elements-note__copy {
  position: relative;
  z-index: 1;
  max-width: 780px;
}

.s6-stone-elements-note h3 {
  margin: 8px 0 10px;
  color: var(--stone-ink);
  font-size: clamp(1.55rem, 2.2vw, 2.35rem);
  line-height: 1;
  letter-spacing: -.045em;
}

.s6-stone-elements-note__copy p:last-child {
  margin: 0;
  color: var(--stone-muted);
  line-height: 1.65;
}

.s6-stone-elements-note__button {
  position: relative;
  z-index: 1;
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 14px 18px;
  border: 1px solid rgba(71, 58, 40, .20);
  background: rgba(255,255,255,.56);
  color: var(--stone-ink);
  text-decoration: none;
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  box-shadow: 0 14px 34px rgba(71, 58, 40, .12);
  transition: transform .28s ease, border-color .28s ease, background .28s ease, box-shadow .28s ease;
}

.s6-stone-elements-note__button em {
  font-style: normal;
  color: var(--s6-green);
  transform: translateY(-1px);
}

.s6-stone-elements-note__button:hover,
.s6-stone-elements-note__button:focus-visible {
  transform: translateY(-2px);
  border-color: rgba(142, 196, 63, .55);
  background: rgba(255,255,255,.76);
  box-shadow: 0 18px 44px rgba(71, 58, 40, .16);
}

@media (max-width: 1180px) {
  .s6-stone-elements-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 680px) {
  .s6-stone-elements-grid {
    grid-template-columns: 1fr;
  }

  .s6-stone-element-card {
    min-height: 340px;
  }

  .s6-stone-elements-note {
    align-items: flex-start;
    flex-direction: column;
  }
}

/* Stone ACF image support — architectural element cards */
.s6-stone-element-card--has-image .s6-stone-element-card__visual {
    background: linear-gradient(180deg, rgba(0,0,0,.18), rgba(0,0,0,.52)), var(--s6-stone-element-image) center/cover no-repeat;
}
.s6-stone-element-card--has-image .s6-stone-element-card__visual span {
    opacity: .18;
}


.s6-division-page--stone-masonry .s6-division-hero__copy h1,
.s6-division-page--stone .s6-division-hero__copy h1 {
    max-width: 13.75ch;
    line-height: 0.91;
}

.s6-division-page--stone-masonry .s6-division-hero__copy h1 span,
.s6-division-page--stone .s6-division-hero__copy h1 span {
    display: block;
    margin-top: 0.1em;
    font-size: 0.74em;
    letter-spacing: -0.055em;
    color: rgba(255, 255, 255, 0.86);
}

.s6-stone-trade-page section:not(.s6-division-hero) .s6-section-label,
.s6-stone-trade-page .s6-stone-section-head .s6-section-label,
.s6-stone-trade-page .s6-stone-catalogue-group__head .s6-section-label,
.s6-stone-trade-page .s6-stone-catalogue-subgroup__head .s6-section-label,
.s6-stone-trade-page .s6-stone-catalogue-footer__copy .s6-section-label,
.s6-stone-trade-page .s6-stone-explainer__copy > .s6-section-label {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    margin: 0 0 clamp(0.85rem, 1.35vw, 1.15rem);
    color: var(--s6-green);
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .22em;
    line-height: 1;
    text-transform: uppercase;
}

.s6-stone-trade-page section:not(.s6-division-hero) .s6-section-label::before,
.s6-stone-trade-page .s6-stone-section-head .s6-section-label::before,
.s6-stone-trade-page .s6-stone-catalogue-group__head .s6-section-label::before,
.s6-stone-trade-page .s6-stone-catalogue-subgroup__head .s6-section-label::before,
.s6-stone-trade-page .s6-stone-catalogue-footer__copy .s6-section-label::before,
.s6-stone-trade-page .s6-stone-explainer__copy > .s6-section-label::before {
    content: "";
    display: block;
    width: 48px;
    height: 2px;
    flex: 0 0 48px;
    background: var(--s6-green);
}

@media (max-width: 680px) {
    .s6-stone-trade-page section:not(.s6-division-hero) .s6-section-label,
    .s6-stone-trade-page .s6-stone-section-head .s6-section-label,
    .s6-stone-trade-page .s6-stone-catalogue-group__head .s6-section-label,
    .s6-stone-trade-page .s6-stone-catalogue-subgroup__head .s6-section-label,
    .s6-stone-trade-page .s6-stone-catalogue-footer__copy .s6-section-label,
    .s6-stone-trade-page .s6-stone-explainer__copy > .s6-section-label {
        gap: 12px;
        font-size: 11px;
        letter-spacing: .18em;
    }

    .s6-stone-trade-page section:not(.s6-division-hero) .s6-section-label::before,
    .s6-stone-trade-page .s6-stone-section-head .s6-section-label::before,
    .s6-stone-trade-page .s6-stone-catalogue-group__head .s6-section-label::before,
    .s6-stone-trade-page .s6-stone-catalogue-subgroup__head .s6-section-label::before,
    .s6-stone-trade-page .s6-stone-catalogue-footer__copy .s6-section-label::before,
    .s6-stone-trade-page .s6-stone-explainer__copy > .s6-section-label::before {
        width: 36px;
        flex-basis: 36px;
    }
}

.s6-stone-overview {
  position: relative;
}

.s6-stone-overview__media {
  overflow: hidden;
}

.s6-stone-overview__media::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,0.02), rgba(0,0,0,0.28));
  pointer-events: none;
}

.s6-stone-overview__image-label {
  position: absolute;
  left: clamp(1.25rem, 3vw, 2.25rem);
  bottom: clamp(1.25rem, 3vw, 2.25rem);
  z-index: 2;
  color: rgba(255,255,255,0.76);
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.22em;
  line-height: 1;
  text-transform: uppercase;
}

.s6-stone-overview .s6-overview-callout small {
  letter-spacing: 0.08em;
}

/* Stone Masonry — ACF system card images */
.s6-division-page--stone-masonry .s6-stone-system-card__image {
  width: min(108%, 18.1rem);
  height: 13.75rem;
  display: block;
  object-fit: contain;
  object-position: center;
  filter: drop-shadow(.75rem 1rem 1.1rem rgba(54,42,30,.2));
  transition: transform .28s ease, filter .28s ease;
}

.s6-division-page--stone-masonry .s6-stone-system-card:hover .s6-stone-system-card__image,
.s6-division-page--stone-masonry .s6-stone-system-card:focus-visible .s6-stone-system-card__image {
  transform: translateY(-.38rem) scale(1.055);
  filter: drop-shadow(.85rem 1.12rem 1.22rem rgba(54,42,30,.24));
}

/* Stone Masonry — card lightbox / no-notes polish */
.s6-division-page--stone-masonry .s6-stone-system-card {
  grid-template-rows: auto minmax(14.35rem, 1fr) auto auto;
  border-top: 0;
  cursor: zoom-in;
}

.s6-division-page--stone-masonry .s6-stone-system-card:not([data-s6-stone-system-lightbox]) {
  cursor: default;
}

.s6-division-page--stone-masonry .s6-stone-system-card .s6-system-card__rule,
.s6-division-page--stone-masonry .s6-stone-system-card em {
  display: none !important;
}

.s6-stone-system-lightbox {
  position: fixed;
  inset: 0;
  z-index: 9999;
  padding: clamp(1rem, 3vw, 3rem);
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, .86);
  backdrop-filter: blur(10px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .22s ease, visibility .22s ease;
  cursor: zoom-out;
}

.s6-stone-system-lightbox.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.s6-stone-system-lightbox img {
  max-width: min(94vw, 72rem);
  max-height: 88vh;
  display: block;
  object-fit: contain;
  filter: drop-shadow(0 1.4rem 2.6rem rgba(0,0,0,.46));
}

.s6-stone-system-lightbox__hint {
  position: fixed;
  left: 50%;
  bottom: clamp(1rem, 2vw, 1.65rem);
  transform: translateX(-50%);
  color: rgba(255,255,255,.72);
  font-size: .68rem;
  font-weight: 850;
  letter-spacing: .16em;
  text-transform: uppercase;
}


.s6-division-page--stone-masonry .s6-stone-system-explainer {
  grid-template-columns: minmax(0, 1.12fr) minmax(340px, .88fr);
  max-width: min(1500px, 100%);
  margin-left: auto;
  margin-right: auto;
}
.s6-division-page--stone-masonry .s6-stone-system-explainer__copy,
.s6-division-page--stone-masonry .s6-stone-system-explainer__visual-stack {
  min-height: clamp(540px, 58vh, 660px);
}
.s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__default,
.s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__point-system {
  grid-template-rows: auto auto auto 1fr;
  align-content: start;
}
.s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__point-system p {
  max-width: 82ch;
  font-size: clamp(.9rem, .92vw, 1rem);
  line-height: 1.62;
}
.s6-division-page--stone-masonry .s6-stone-system-explainer__detail-grid {
  align-self: end;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(10px, 1.1vw, 14px);
  margin-top: clamp(16px, 2vw, 24px);
}
.s6-division-page--stone-masonry .s6-stone-system-explainer__detail-panel {
  padding: clamp(14px, 1.4vw, 18px);
  background: rgba(255,255,255,.38);
  border: 1px solid rgba(31, 39, 32, .14);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.42);
}
.s6-division-page--stone-masonry .s6-stone-system-explainer__detail-panel h4 {
  margin: 0 0 .7rem;
  padding-bottom: .58rem;
  border-bottom: 1px solid rgba(31,39,32,.14);
  color: #1d231f;
  font-size: clamp(.68rem, .78vw, .82rem);
  font-weight: 900;
  letter-spacing: .14em;
  line-height: 1.15;
  text-transform: uppercase;
}
.s6-division-page--stone-masonry .s6-stone-system-explainer__detail-panel ul {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: .46rem !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  border: 0 !important;
}
.s6-division-page--stone-masonry .s6-stone-system-explainer__detail-panel li {
  position: relative !important;
  min-height: 0 !important;
  width: auto !important;
  height: auto !important;
  display: block !important;
  padding: 0 0 0 .82rem !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: rgba(29, 35, 31, .74) !important;
  font-size: clamp(.76rem, .78vw, .88rem) !important;
  font-weight: 750 !important;
  letter-spacing: -.01em !important;
  line-height: 1.32 !important;
  text-align: left !important;
  text-transform: none !important;
}
.s6-division-page--stone-masonry .s6-stone-system-explainer__detail-panel li::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: .52em !important;
  width: .28rem !important;
  height: .28rem !important;
  background: #8ec640 !important;
}
@media (max-width: 1180px) {
  .s6-division-page--stone-masonry .s6-stone-system-explainer {
    grid-template-columns: 1fr;
  }
  .s6-division-page--stone-masonry .s6-stone-system-explainer__visual-stack {
    order: -1;
    min-height: 460px;
  }
}
@media (max-width: 760px) {
  .s6-division-page--stone-masonry .s6-stone-system-explainer__detail-grid {
    grid-template-columns: 1fr !important;
  }
}


.s6-division-page--stone-masonry .s6-stone-system-explainer__detail-panel h4 {
  white-space: nowrap;
  font-size: clamp(.62rem, .7vw, .76rem) !important;
  letter-spacing: .12em !important;
}
@media (max-width: 760px) {
  .s6-division-page--stone-masonry .s6-stone-system-explainer__detail-panel h4 {
    white-space: normal;
  }
}

.s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__default h3,
.s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__point-system h3 {
  max-width: none !important;
  width: 100% !important;
  font-size: clamp(1.85rem, 3.2vw, 3.7rem) !important;
  line-height: .98 !important;
  letter-spacing: -.07em !important;
}
.s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__default p,
.s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__point-system p {
  max-width: 88ch !important;
  white-space: normal !important;
}
.s6-division-page--stone-masonry .s6-stone-system-explainer__overview-panel {
  align-self: end;
  width: 100%;
  padding: clamp(16px, 1.5vw, 22px);
  background: rgba(255,255,255,.36);
  border: 1px solid rgba(31,39,32,.14);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.42);
}
.s6-division-page--stone-masonry .s6-stone-system-explainer__overview-panel h4 {
  margin: 0 0 .85rem;
  padding-bottom: .65rem;
  border-bottom: 1px solid rgba(31,39,32,.14);
  color: #1d231f;
  font-size: clamp(.68rem, .78vw, .82rem);
  font-weight: 900;
  letter-spacing: .14em;
  line-height: 1.1;
  text-transform: uppercase;
  white-space: nowrap;
}
.s6-division-page--stone-masonry .s6-stone-system-explainer__overview-panel .s6-stone-system-explainer__overview-points {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: .5rem 1rem !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  border: 0 !important;
}
.s6-division-page--stone-masonry .s6-stone-system-explainer__overview-panel .s6-stone-system-explainer__overview-points li {
  position: relative !important;
  min-height: 0 !important;
  display: block !important;
  width: auto !important;
  height: auto !important;
  padding: 0 0 0 .85rem !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: rgba(29,35,31,.76) !important;
  font-size: clamp(.76rem, .78vw, .9rem) !important;
  font-weight: 760 !important;
  letter-spacing: -.01em !important;
  line-height: 1.28 !important;
  text-align: left !important;
  text-transform: none !important;
  align-items: initial !important;
  justify-content: initial !important;
}
.s6-division-page--stone-masonry .s6-stone-system-explainer__overview-panel .s6-stone-system-explainer__overview-points li::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: .48em !important;
  width: .28rem !important;
  height: .28rem !important;
  background: #8ec640 !important;
}
.s6-division-page--stone-masonry .s6-stone-system-explainer__detail-panel h4 {
  white-space: nowrap !important;
  font-size: clamp(.66rem, .72vw, .8rem) !important;
  letter-spacing: .105em !important;
}
@media (max-width: 760px) {
  .s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__default h3,
  .s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__point-system h3 {
    font-size: clamp(1.85rem, 10vw, 3rem) !important;
  }
  .s6-division-page--stone-masonry .s6-stone-system-explainer__overview-panel .s6-stone-system-explainer__overview-points {
    grid-template-columns: 1fr !important;
  }
  .s6-division-page--stone-masonry .s6-stone-system-explainer__overview-panel h4,
  .s6-division-page--stone-masonry .s6-stone-system-explainer__detail-panel h4 {
    white-space: normal !important;
  }
}


.s6-division-page--stone-masonry .s6-stone-system-explainer__detail-panel h4,
.s6-division-page--stone-masonry .s6-stone-system-explainer__overview-panel h4 {
  white-space: nowrap !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  max-width: none !important;
}
.s6-division-page--stone-masonry .s6-stone-system-explainer__overview-panel .s6-stone-system-explainer__overview-points,
.s6-division-page--stone-masonry .s6-stone-system-explainer__detail-panel ul {
  display: grid !important;
  grid-template-columns: 1fr !important;
}
.s6-division-page--stone-masonry .s6-stone-system-explainer__overview-panel .s6-stone-system-explainer__overview-points li,
.s6-division-page--stone-masonry .s6-stone-system-explainer__detail-panel li {
  white-space: normal !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}
@media (min-width: 1181px) {
  .s6-division-page--stone-masonry .s6-stone-system-explainer {
    grid-template-columns: minmax(0, 1.18fr) minmax(320px, .82fr) !important;
  }
}


.s6-division-page--stone-masonry .s6-stone-system-explainer__overview-panel {
  max-width: min(760px, 100%) !important;
  align-self: start !important;
}
.s6-division-page--stone-masonry .s6-stone-system-explainer__overview-panel .s6-stone-system-explainer__overview-points {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  max-width: 680px !important;
}
.s6-division-page--stone-masonry .s6-stone-system-explainer__detail-panel h4,
.s6-division-page--stone-masonry .s6-stone-system-explainer__overview-panel h4 {
  white-space: nowrap !important;
  word-break: keep-all !important;
}
@media (max-width: 760px) {
  .s6-division-page--stone-masonry .s6-stone-system-explainer__overview-panel,
  .s6-division-page--stone-masonry .s6-stone-system-explainer__overview-panel .s6-stone-system-explainer__overview-points {
    max-width: 100% !important;
  }
  .s6-division-page--stone-masonry .s6-stone-system-explainer__overview-panel .s6-stone-system-explainer__overview-points {
    grid-template-columns: 1fr !important;
  }
}

.s6-division-page--stone-masonry .s6-stone-system-explainer .s6-division-explainer__default p {
  margin-bottom: clamp(18px, 2.4vw, 34px) !important;
}
.s6-division-page--stone-masonry .s6-stone-system-explainer__overview-panel {
  margin-top: clamp(10px, 1.6vw, 22px) !important;
}
.s6-division-page--stone-masonry .s6-stone-system-explainer__image-label {
  display: none !important;
}
.s6-division-page--stone-masonry .s6-stone-system-explainer__cutout {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 4;
  width: min(62%, 420px);
  max-height: 74%;
  object-fit: contain;
  transform: translate(-50%, -50%) scale(.96);
  opacity: 0;
  pointer-events: none;
  filter: drop-shadow(0 22px 32px rgba(0,0,0,.28));
  transition: opacity .22s ease, transform .22s ease;
}
.s6-division-page--stone-masonry .s6-stone-system-explainer__cutout.is-visible {
  opacity: 1;
  transform: translate(-50%, -50%) scale(1);
}
.s6-division-page--stone-masonry .s6-stone-system-explainer.has-cutout .s6-stone-system-explainer__visual::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  display: block !important;
  background:
    linear-gradient(180deg, rgba(4, 5, 4, .30), rgba(4, 5, 4, .52)),
    radial-gradient(circle at 50% 48%, rgba(142, 198, 64, .10), transparent 50%);
  pointer-events: none;
}
.s6-division-page--stone-masonry .s6-stone-system-explainer.has-cutout .s6-stone-system-explainer__visual {
  background:
    linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.18)),
    var(--s6-division-detail-bg) center/cover no-repeat;
}
.s6-division-page--stone-masonry .s6-stone-system-explainer.has-cutout .s6-stone-system-explainer__visual::before {
  z-index: 3;
  border-color: rgba(255,255,255,.28);
}
.s6-division-page--stone-masonry .s6-stone-system-explainer.has-cutout .s6-stone-system-explainer__cutout {
  filter: drop-shadow(0 26px 36px rgba(0,0,0,.42));
}
@media (max-width: 1180px) {
  .s6-division-page--stone-masonry .s6-stone-system-explainer__cutout {
    width: min(58%, 360px);
  }
}
@media (max-width: 680px) {
  .s6-division-page--stone-masonry .s6-stone-system-explainer__cutout {
    width: min(72%, 300px);
    max-height: 68%;
  }
}


.s6-division-page--stone-masonry .s6-stone-system-explainer.has-cutout .s6-stone-system-explainer__visual::after {
  inset: 0 !important;
  height: auto !important;
  background:
    linear-gradient(180deg, rgba(4, 5, 4, .34), rgba(4, 5, 4, .48)),
    radial-gradient(circle at 50% 46%, rgba(142, 198, 64, .08), transparent 52%) !important;
}
.s6-division-page--stone-masonry .s6-stone-system-explainer__visual::after {
  inset: 0 !important;
  height: auto !important;
}
.s6-division-page--stone-masonry .s6-stone-system-explainer__hint {
  margin-top: clamp(10px, 1.1vw, 16px);
  text-align: center;
  color: rgba(31, 37, 32, .58);
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.s6-division-page--stone-masonry .s6-stone-system-explainer__hint span {
  display: block;
  color: #8ec640;
  font-size: 1rem;
  line-height: 1;
  margin-bottom: 4px;
}
.s6-division-page--stone-masonry .s6-stone-system-explainer__hint p {
  margin: 0;
}
@media (max-width: 680px) {
  .s6-division-page--stone-masonry .s6-stone-system-explainer__hint {
    font-size: .68rem;
    letter-spacing: .1em;
  }
}


.s6-division-page--stone-masonry .s6-stone-system-explainer__visual-stack {
  grid-template-rows: minmax(370px, 1fr) auto;
  gap: 8px;
}
.s6-division-page--stone-masonry .s6-stone-system-explainer__hint {
  margin-top: 0 !important;
  padding: 0 !important;
  line-height: 1.15;
}
.s6-division-page--stone-masonry .s6-stone-system-explainer__hint p {
  margin: 0 !important;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .45em;
}
.s6-division-page--stone-masonry .s6-stone-system-explainer__hint span {
  display: inline-block !important;
  margin: 0 !important;
  line-height: 1;
  transform: translateY(-1px);
}
@media (max-width: 980px) {
  .s6-division-page--stone-masonry .s6-stone-system-explainer__visual-stack {
    grid-template-rows: minmax(360px, 1fr) auto;
    gap: 8px;
  }
}
@media (max-width: 680px) {
  .s6-division-page--stone-masonry .s6-stone-system-explainer__visual-stack {
    grid-template-rows: minmax(300px, auto) auto;
  }
}

.s6-division-page--architectural-coatings .s6-coatings-systems--classification,
.s6-division-page--architectural-coatings .s6-coatings-explainer-section {
  padding: clamp(72px, 8vw, 120px) 0;
  background: #f4f1ea;
}

.s6-division-page--architectural-coatings .s6-coatings-systems--classification .s6-coatings-section-head {
  max-width: 760px;
  margin-bottom: clamp(28px, 4vw, 48px);
}

.s6-division-page--architectural-coatings .s6-coatings-systems--classification .s6-coatings-section-head p:last-child,
.s6-division-page--architectural-coatings .s6-coatings-section-head--split > p {
  color: rgba(29,35,31,.72);
  line-height: 1.7;
}

.s6-division-page--architectural-coatings .s6-coatings-section-head--split {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, .48fr);
  gap: clamp(22px, 4vw, 54px);
  align-items: end;
  margin-bottom: clamp(24px, 4vw, 42px);
}

.s6-division-page--architectural-coatings .s6-coatings-system-card-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-color: rgba(31,39,32,.14);
}

.s6-division-page--architectural-coatings .s6-coatings-classification-card {
  min-height: 34rem;
  gap: 1.1rem;
  background:
    linear-gradient(145deg, rgba(255,255,255,.72), rgba(230,225,214,.5)),
    repeating-linear-gradient(0deg, rgba(31,36,31,.028) 0 1px, transparent 1px 18px);
}

.s6-division-page--architectural-coatings .s6-coatings-classification-card .s6-system-card__top,
.s6-division-page--architectural-coatings .s6-coatings-classification-card .s6-system-card__specs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
}

.s6-division-page--architectural-coatings .s6-coatings-classification-card .s6-system-card__top {
  grid-template-columns: 1fr auto;
  align-items: start;
}

.s6-division-page--architectural-coatings .s6-system-card__kicker,
.s6-division-page--architectural-coatings .s6-system-card__label,
.s6-division-page--architectural-coatings .s6-system-card__badge {
  display: block;
}

.s6-division-page--architectural-coatings .s6-system-card__badge {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  background: #8ec640;
  color: #10140f;
  letter-spacing: .08em;
}

.s6-division-page--architectural-coatings .s6-system-card__rule {
  display: block;
  height: 1px;
  width: 100%;
  background: rgba(31,39,32,.16);
}

.s6-division-page--architectural-coatings .s6-coatings-classification-card__visual {
  min-height: 8.5rem;
  display: grid;
  place-items: stretch;
  background: rgba(255,255,255,.32);
  border: 1px solid rgba(31,39,32,.12);
  padding: .7rem;
}

.s6-division-page--architectural-coatings .s6-coatings-system-visual {
  display: grid;
  gap: 5px;
  align-content: end;
}

.s6-division-page--architectural-coatings .s6-coatings-system-visual span {
  min-height: 20px;
  display: grid;
  place-items: center;
  background: linear-gradient(90deg, rgba(142,198,64,.24), rgba(27,32,28,.14));
  border: 1px solid rgba(31,39,32,.12);
  color: rgba(29,35,31,.76);
  font-size: .58rem;
  font-weight: 900;
  letter-spacing: .08em;
}

.s6-division-page--architectural-coatings .s6-system-card__body strong,
.s6-division-page--architectural-coatings .s6-system-card__body small {
  display: block;
}

.s6-division-page--architectural-coatings .s6-system-card__body strong {
  font-size: clamp(1.32rem, 1.7vw, 1.9rem);
  line-height: 1;
  letter-spacing: -.045em;
  text-transform: uppercase;
  color: #1d231f;
}

.s6-division-page--architectural-coatings .s6-system-card__body small {
  margin-top: .85rem;
  color: rgba(29,35,31,.7);
  font-size: .9rem;
  line-height: 1.6;
}

.s6-division-page--architectural-coatings .s6-system-card__specs {
  border: 1px solid rgba(31,39,32,.13);
  background: rgba(255,255,255,.36);
}

.s6-division-page--architectural-coatings .s6-system-card__spec {
  min-height: 62px;
  padding: .75rem .65rem;
  border-right: 1px solid rgba(31,39,32,.11);
}
.s6-division-page--architectural-coatings .s6-system-card__spec:last-child { border-right: 0; }
.s6-division-page--architectural-coatings .s6-system-card__spec span,
.s6-division-page--architectural-coatings .s6-system-card__spec strong { display: block; }
.s6-division-page--architectural-coatings .s6-system-card__spec strong {
  margin-top: .25rem;
  color: #1d231f;
  font-size: .86rem;
  letter-spacing: -.02em;
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer {
  display: grid;
  grid-template-columns: minmax(0, .94fr) minmax(360px, 1.06fr);
  gap: clamp(22px, 3.5vw, 44px);
  align-items: stretch;
  margin-top: clamp(24px, 4vw, 42px);
  padding: clamp(24px, 3.2vw, 38px);
  background:
    linear-gradient(135deg, rgba(246,244,238,.88), rgba(225,218,205,.68)),
    repeating-linear-gradient(0deg, rgba(31,36,31,.035) 0 1px, transparent 1px 20px),
    repeating-linear-gradient(90deg, rgba(31,36,31,.03) 0 1px, transparent 1px 20px);
  border: 1px solid rgba(31,39,32,.18);
  box-shadow: inset 0 10px 28px rgba(38,35,28,.055), inset 0 -10px 26px rgba(255,255,255,.34);
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer__copy {
  min-height: 520px;
  padding: clamp(14px, 2vw, 22px) clamp(8px, 1.2vw, 16px);
  display: grid;
  align-items: stretch;
  position: relative;
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer .s6-division-explainer__default,
.s6-division-page--architectural-coatings .s6-coatings-system-explainer .s6-division-explainer__point-system {
  grid-area: 1 / 1;
  min-height: 100%;
  display: grid;
  grid-template-rows: auto auto 1fr auto;
  align-content: stretch;
  gap: 14px;
  opacity: 1;
  transition: opacity .22s ease;
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer .s6-division-explainer__point-system {
  opacity: 0;
  pointer-events: none;
}
.s6-division-page--architectural-coatings .s6-coatings-system-explainer.is-hotspot-active .s6-division-explainer__default { opacity: 0; }
.s6-division-page--architectural-coatings .s6-coatings-system-explainer.is-hotspot-active .s6-division-explainer__point-system,
.s6-division-page--architectural-coatings .s6-coatings-system-explainer .s6-division-explainer__point-system.is-visible {
  opacity: 1;
  pointer-events: auto;
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer .s6-division-explainer__default > span,
.s6-division-page--architectural-coatings .s6-coatings-system-explainer .s6-division-explainer__point-system > span {
  display: inline-flex;
  width: fit-content;
  color: #6f7a34;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer h3 {
  margin: 0;
  color: #1d231f;
  font-size: clamp(1.45rem, 2.35vw, 2.45rem);
  line-height: .98;
  letter-spacing: -.055em;
  text-transform: uppercase;
  max-width: 14ch;
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer p {
  align-self: center;
  margin: 0;
  color: rgba(29,35,31,.74);
  font-size: .98rem;
  line-height: 1.75;
  max-width: 58ch;
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer__overview-points,
.s6-division-page--architectural-coatings .s6-coatings-system-explainer .s6-division-explainer__point-system ul {
  align-self: end;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
  border: 0;
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer__overview-points li,
.s6-division-page--architectural-coatings .s6-coatings-system-explainer .s6-division-explainer__point-system li {
  min-height: 58px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 10px 12px;
  background: rgba(255,255,255,.46);
  border: 1px solid rgba(31,39,32,.12);
  color: rgba(29,35,31,.76);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer__detail-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer__detail-panel h4,
.s6-division-page--architectural-coatings .s6-stone-system-explainer__detail-panel h4,
.s6-division-page--architectural-coatings .s6-coatings-system-explainer__overview-panel h4 {
  margin: 0 0 10px;
  color: #1d231f;
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer__visual-stack {
  display: grid;
  grid-template-rows: minmax(340px, 1fr) auto;
  gap: 14px;
  min-height: 520px;
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer__visual {
  min-height: 0;
  height: 100%;
  padding: 0;
  align-content: stretch;
  background: linear-gradient(180deg, rgba(0,0,0,.04), rgba(0,0,0,.1)), var(--s6-division-detail-bg) center/cover no-repeat;
  border: 1px solid rgba(28,34,29,.22);
  position: relative;
  overflow: hidden;
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer__visual::before {
  content: "";
  position: absolute;
  inset: 14px;
  border: 1px solid rgba(255,255,255,.22);
  z-index: 1;
  pointer-events: none;
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer__pills {
  position: relative;
  z-index: 3;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
  padding: 0;
  background: none;
  box-shadow: none;
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer__pills .s6-explainer-hotspot {
  position: static;
  width: auto;
  height: auto;
  min-height: 44px;
  border-radius: 0;
  padding: 11px 10px;
  background: rgba(12,15,13,.72);
  border: 1px solid rgba(255,255,255,.22);
  color: #f6f4ef;
  box-shadow: none;
  transform: none;
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer__pills .s6-explainer-hotspot span {
  position: static;
  width: auto;
  height: auto;
  display: block;
  background: none;
  border: 0;
  color: inherit;
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  white-space: nowrap;
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer__pills .s6-explainer-hotspot:hover,
.s6-division-page--architectural-coatings .s6-coatings-system-explainer__pills .s6-explainer-hotspot:focus-visible,
.s6-division-page--architectural-coatings .s6-coatings-system-explainer__pills .s6-explainer-hotspot.is-active {
  background: #8ec640;
  border-color: #8ec640;
  color: #111;
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer__hint p {
  margin: 0;
  color: rgba(29,35,31,.58);
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

@media (max-width: 1380px) {
  .s6-division-page--architectural-coatings .s6-coatings-system-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 980px) {
  .s6-division-page--architectural-coatings .s6-coatings-section-head--split,
  .s6-division-page--architectural-coatings .s6-coatings-system-explainer { grid-template-columns: 1fr; }
  .s6-division-page--architectural-coatings .s6-coatings-system-explainer__copy,
  .s6-division-page--architectural-coatings .s6-coatings-system-explainer__visual { min-height: auto; }
  .s6-division-page--architectural-coatings .s6-coatings-system-explainer__visual-stack { min-height: auto; }
  .s6-division-page--architectural-coatings .s6-coatings-system-explainer__visual { min-height: 420px; }
}

@media (max-width: 680px) {
  .s6-division-page--architectural-coatings .s6-coatings-system-card-grid,
  .s6-division-page--architectural-coatings .s6-coatings-system-explainer__pills,
  .s6-division-page--architectural-coatings .s6-coatings-system-explainer__overview-points,
  .s6-division-page--architectural-coatings .s6-coatings-system-explainer__detail-grid,
  .s6-division-page--architectural-coatings .s6-coatings-system-explainer .s6-division-explainer__point-system ul { grid-template-columns: 1fr; }
  .s6-division-page--architectural-coatings .s6-coatings-classification-card { min-height: auto; }
  .s6-division-page--architectural-coatings .s6-coatings-system-explainer { padding: 18px; }
  .s6-division-page--architectural-coatings .s6-coatings-system-explainer h3 { max-width: none; }
}


.s6-division-page--architectural-coatings .s6-coatings-systems--classification,
.s6-division-page--architectural-coatings .s6-coatings-explainer-section {
  background:
    radial-gradient(circle at 12% 8%, rgba(142,198,64,.10), transparent 28rem),
    linear-gradient(180deg, #f3efe6 0%, #e7dfd0 100%);
}

.s6-division-page--architectural-coatings .s6-coatings-system-card-grid {
  display: grid;
  gap: clamp(1rem, 1.7vw, 1.45rem);
  align-items: stretch;
}

.s6-division-page--architectural-coatings .s6-coatings-classification-card {
  position: relative;
  min-height: 34rem;
  padding: clamp(1.25rem, 1.55vw, 1.55rem);
  display: grid;
  grid-template-rows: auto auto minmax(14.35rem, 1fr) auto auto;
  gap: .85rem;
  border-radius: 0;
  overflow: hidden;
  background:
    linear-gradient(180deg, rgba(235,230,219,.97), rgba(207,198,181,.94));
  border-top: 1px solid rgba(32,40,31,.22);
  border-left: 1px solid rgba(32,40,31,.18);
  border-right: 1px solid rgba(255,255,255,.52);
  border-bottom: 1px solid rgba(255,255,255,.58);
  box-shadow:
    inset 0 .9rem 1.75rem rgba(39,42,31,.075),
    inset 0 -.45rem .9rem rgba(255,255,255,.36);
  transform: none;
  transition: border-color .24s ease, box-shadow .24s ease, background-color .24s ease;
}

.s6-division-page--architectural-coatings .s6-coatings-classification-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(142,198,64,.22), transparent 35%),
    repeating-linear-gradient(0deg, rgba(31,36,31,.028) 0 1px, transparent 1px 19px);
  opacity: .58;
  pointer-events: none;
}

.s6-division-page--architectural-coatings .s6-coatings-classification-card:hover,
.s6-division-page--architectural-coatings .s6-coatings-classification-card:focus-visible {
  border-top-color: rgba(142,198,64,.52);
  border-left-color: rgba(142,198,64,.42);
  outline: none;
}

.s6-division-page--architectural-coatings .s6-coatings-classification-card .s6-system-card__top,
.s6-division-page--architectural-coatings .s6-coatings-classification-card .s6-system-card__body,
.s6-division-page--architectural-coatings .s6-coatings-classification-card .s6-system-card__specs,
.s6-division-page--architectural-coatings .s6-coatings-classification-card .s6-system-card__rule,
.s6-division-page--architectural-coatings .s6-coatings-classification-card__visual {
  position: relative;
  z-index: 2;
}

.s6-division-page--architectural-coatings .s6-coatings-classification-card .s6-system-card__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}

.s6-division-page--architectural-coatings .s6-system-card__kicker {
  margin: 0 0 .58rem;
  color: rgba(39,45,34,.68);
  font-size: .55rem;
  font-weight: 900;
  line-height: 1.18;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.s6-division-page--architectural-coatings .s6-system-card__label {
  color: rgba(20,27,22,.96);
  font-size: clamp(1.05rem, 1.3vw, 1.35rem);
  font-weight: 900;
  line-height: 1;
  letter-spacing: -.035em;
  text-transform: uppercase;
}

.s6-division-page--architectural-coatings .s6-system-card__badge {
  width: 2.2rem;
  height: 2.2rem;
  flex: 0 0 2.2rem;
  border: 1px solid rgba(142,198,64,.78);
  color: var(--s6-green);
  background: rgba(142,198,64,.07);
  font-size: .9rem;
  font-weight: 950;
  letter-spacing: -.04em;
}

.s6-division-page--architectural-coatings .s6-system-card__rule {
  width: 1.15rem;
  height: 1px;
  background: var(--s6-green);
  opacity: .9;
}

.s6-division-page--architectural-coatings .s6-coatings-classification-card__visual {
  min-height: 14.35rem;
  margin: .05rem -.35rem .05rem;
  padding: .55rem .2rem .2rem;
  border: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
  display: flex;
  align-items: center;
  justify-content: center;
}

.s6-division-page--architectural-coatings .s6-coatings-system-visual {
  position: relative;
  width: min(100%, 16rem);
  min-height: 12.1rem;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: .34rem;
  perspective: 760px;
  filter: drop-shadow(.75rem 1rem 1.1rem rgba(39,42,31,.18));
  transition: transform .28s ease, filter .28s ease;
}

.s6-division-page--architectural-coatings .s6-coatings-classification-card:hover .s6-coatings-system-visual,
.s6-division-page--architectural-coatings .s6-coatings-classification-card:focus-visible .s6-coatings-system-visual {
  transform: translateY(-.34rem) scale(1.045);
  filter: drop-shadow(.85rem 1.12rem 1.22rem rgba(39,42,31,.22));
}

.s6-division-page--architectural-coatings .s6-coatings-system-visual span {
  width: clamp(1.35rem, 1.75vw, 1.72rem);
  height: calc(7.65rem - (var(--coat-layer, 0) * .18rem));
  min-height: 0;
  padding: 0;
  display: block;
  color: transparent;
  font-size: 0;
  transform: rotateX(56deg) rotateZ(-31deg);
  border: 1px solid rgba(33,40,30,.18);
  box-shadow:
    .22rem .3rem .36rem rgba(38,42,31,.14),
    inset .12rem .04rem rgba(255,255,255,.34);
}

.s6-division-page--architectural-coatings .s6-coatings-system-visual span:nth-child(1) { --coat-layer: 0; }
.s6-division-page--architectural-coatings .s6-coatings-system-visual span:nth-child(2) { --coat-layer: 1; }
.s6-division-page--architectural-coatings .s6-coatings-system-visual span:nth-child(3) { --coat-layer: 2; }
.s6-division-page--architectural-coatings .s6-coatings-system-visual span:nth-child(4) { --coat-layer: 3; }
.s6-division-page--architectural-coatings .s6-coatings-system-visual span:nth-child(5) { --coat-layer: 4; }

.s6-division-page--architectural-coatings .s6-coatings-system-visual--protective span { background: linear-gradient(135deg, #59624a, #b7ca85); }
.s6-division-page--architectural-coatings .s6-coatings-system-visual--protective span:nth-child(2n) { background: linear-gradient(135deg, #75835d, #d4dfaa); }
.s6-division-page--architectural-coatings .s6-coatings-system-visual--concrete span { background: linear-gradient(135deg, #686961, #b9b8ad); }
.s6-division-page--architectural-coatings .s6-coatings-system-visual--concrete span:nth-child(2n) { background: linear-gradient(135deg, #4f524d, #96988f); }
.s6-division-page--architectural-coatings .s6-coatings-system-visual--waterproofing span { background: linear-gradient(135deg, #3f5d5d, #9ac4bd); }
.s6-division-page--architectural-coatings .s6-coatings-system-visual--waterproofing span:nth-child(2n) { background: linear-gradient(135deg, #55736c, #bfd9d2); }
.s6-division-page--architectural-coatings .s6-coatings-system-visual--paint-refresh span { background: linear-gradient(135deg, #615841, #d6c58f); }
.s6-division-page--architectural-coatings .s6-coatings-system-visual--paint-refresh span:nth-child(2n) { background: linear-gradient(135deg, #7b704f, #efe0ad); }

.s6-division-page--architectural-coatings .s6-system-card__body {
  display: grid;
  gap: .42rem;
  min-width: 0;
}

.s6-division-page--architectural-coatings .s6-system-card__body strong {
  font-size: clamp(1.18rem, 1.38vw, 1.56rem);
  line-height: .98;
  letter-spacing: -.045em;
}

.s6-division-page--architectural-coatings .s6-system-card__body small {
  margin-top: .35rem;
  font-size: .86rem;
  line-height: 1.52;
}

.s6-division-page--architectural-coatings .s6-system-card__specs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border: 1px solid rgba(32,40,31,.16);
  background: rgba(255,255,255,.28);
}

.s6-division-page--architectural-coatings .s6-system-card__spec {
  min-height: 4.6rem;
  padding: .72rem .62rem;
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer {
  background:
    linear-gradient(135deg, rgba(235,230,219,.92), rgba(207,198,181,.74)),
    repeating-linear-gradient(0deg, rgba(31,36,31,.035) 0 1px, transparent 1px 20px),
    repeating-linear-gradient(90deg, rgba(31,36,31,.03) 0 1px, transparent 1px 20px);
  border: 1px solid rgba(32,40,31,.2);
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer__detail-panel {
  padding: 1rem;
  background: rgba(255,255,255,.34);
  border: 1px solid rgba(32,40,31,.13);
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer__detail-panel ul {
  grid-template-columns: 1fr !important;
  gap: .45rem !important;
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer__detail-panel li {
  min-height: 0 !important;
  justify-content: flex-start !important;
  text-align: left !important;
  padding: 0 0 0 .85rem !important;
  background: transparent !important;
  border: 0 !important;
  font-size: .72rem !important;
  line-height: 1.45 !important;
  letter-spacing: .035em !important;
  position: relative;
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer__detail-panel li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .55em;
  width: .32rem;
  height: .32rem;
  background: var(--s6-green);
}

/* Coatings product collections — reuses signed-off Stone catalogue mechanics with coatings-specific surface styling. */
.s6-coatings-catalogue {
  padding: clamp(4.5rem, 8vw, 7rem) 0;
  background:
    radial-gradient(circle at 16% 14%, rgba(142,198,64,.13), transparent 34%),
    linear-gradient(180deg, rgba(8,10,8,.98), rgba(13,16,13,.98));
}
.s6-coatings-catalogue .s6-coatings-section-head {
  margin-bottom: clamp(1.75rem, 4vw, 3rem);
}
.s6-coatings-catalogue-group {
  border-color: rgba(142,198,64,.18);
  background:
    linear-gradient(145deg, rgba(255,255,255,.055), rgba(255,255,255,.018)),
    radial-gradient(circle at 88% 0%, rgba(142,198,64,.09), transparent 32%);
}
.s6-coatings-catalogue-group::before {
  background: linear-gradient(90deg, rgba(142,198,64,.8), transparent);
}
.s6-coatings-product-card .s6-stone-product-card__image::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    linear-gradient(135deg, rgba(255,255,255,.12), transparent 35%),
    repeating-linear-gradient(90deg, rgba(255,255,255,.055) 0 1px, transparent 1px 18px);
  mix-blend-mode: screen;
  opacity: .45;
  pointer-events: none;
}
.s6-coatings-product-card .s6-stone-product-card__image span {
  background: rgba(7,10,7,.82);
  border-color: rgba(142,198,64,.28);
}
.s6-coatings-catalogue .s6-stone-product-swatch.is-active,
.s6-coatings-catalogue .s6-stone-product-swatch:hover {
  border-color: rgba(142,198,64,.9);
  box-shadow: 0 0 0 3px rgba(142,198,64,.16), 0 0 18px rgba(142,198,64,.22);
}

.s6-coatings-catalogue {
  background:
    radial-gradient(circle at 15% 10%, rgba(142,198,64,.10), transparent 32%),
    radial-gradient(circle at 86% 18%, rgba(255,255,255,.52), transparent 26%),
    linear-gradient(180deg, #f5f1e8 0%, #ebe5d9 100%);
}
.s6-coatings-catalogue-group {
  border-color: rgba(31,29,25,.12);
  background:
    linear-gradient(145deg, rgba(255,255,255,.82), rgba(236,230,217,.9)),
    radial-gradient(circle at 88% 0%, rgba(142,198,64,.07), transparent 34%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.72),
    0 22px 44px rgba(34,28,22,.07);
}
.s6-coatings-catalogue-group::before {
  background-image:
    linear-gradient(rgba(40,35,28,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(40,35,28,.03) 1px, transparent 1px);
  background-size: 36px 36px;
  opacity: .5;
}
.s6-coatings-catalogue .s6-coatings-section-head h2,
.s6-coatings-catalogue .s6-stone-catalogue-group__head h3,
.s6-coatings-product-card .s6-stone-product-card__body h4 {
  color: #171615;
}
.s6-coatings-catalogue .s6-coatings-section-head p,
.s6-coatings-catalogue .s6-stone-catalogue-group__head p:not(.s6-section-label),
.s6-coatings-product-card .s6-stone-product-card__body p {
  color: rgba(28,26,23,.68);
}
.s6-coatings-product-card {
  background: linear-gradient(180deg, #fffdf8 0%, #f4efe4 100%);
  border-color: rgba(31,28,24,.13);
  box-shadow: 0 16px 32px rgba(34,28,22,.08);
}
.s6-coatings-product-card .s6-stone-product-card__image {
  border-color: rgba(35,31,27,.18);
  box-shadow:
    0 24px 38px rgba(34,28,22,.16),
    0 7px 12px rgba(34,28,22,.08),
    0 2px 0 rgba(255,255,255,.55) inset;
}
.s6-coatings-product-card:hover .s6-stone-product-card__image {
  box-shadow:
    0 30px 48px rgba(34,28,22,.19),
    0 12px 18px rgba(34,28,22,.1),
    0 2px 0 rgba(255,255,255,.58) inset;
}
.s6-coatings-product-card .s6-stone-product-card__image::after {
  background:
    linear-gradient(135deg, rgba(255,255,255,.24), transparent 38%),
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(26,22,18,.08)),
    repeating-linear-gradient(90deg, rgba(255,255,255,.12) 0 1px, transparent 1px 18px);
  mix-blend-mode: normal;
  opacity: .42;
}
.s6-coatings-product-card .s6-stone-product-card__image span {
  background: rgba(255,255,255,.78);
  color: #1d2119;
  border: 1px solid rgba(142,198,64,.35);
  box-shadow: 0 10px 22px rgba(32,28,22,.1);
}
.s6-coatings-catalogue .s6-stone-catalogue-group__toggle {
  background: #171615;
  color: #f5f1e8;
}
.s6-coatings-catalogue .s6-stone-catalogue-group__toggle:hover {
  background: #8ec640;
  color: #10100f;
}

/* Coatings — ACF system card images */
.s6-division-page--architectural-coatings .s6-coatings-system-card__image {
  width: min(108%, 18rem);
  height: 12.8rem;
  display: block;
  object-fit: contain;
  object-position: center;
  margin: auto;
  filter: drop-shadow(.65rem .85rem 1rem rgba(31,39,32,.18));
  transition: transform .28s ease, filter .28s ease;
}

.s6-division-page--architectural-coatings .s6-coatings-classification-card:hover .s6-coatings-system-card__image,
.s6-division-page--architectural-coatings .s6-coatings-classification-card:focus-visible .s6-coatings-system-card__image {
  transform: translateY(-.32rem) scale(1.04);
  filter: drop-shadow(.75rem 1rem 1.12rem rgba(31,39,32,.22));
}


.s6-division-page--architectural-coatings .s6-coatings-classification-card {
  display: flex !important;
  flex-direction: column !important;
  min-height: 34rem;
}

.s6-division-page--architectural-coatings .s6-coatings-classification-card__visual {
  flex: 0 0 14.35rem;
  min-height: 14.35rem;
}

.s6-division-page--architectural-coatings .s6-coatings-classification-card .s6-system-card__body {
  flex: 1 1 auto;
  align-content: start;
}

.s6-division-page--architectural-coatings .s6-coatings-classification-card .s6-system-card__body strong {
  min-height: 3.05rem;
  display: flex;
  align-items: flex-end;
}

.s6-division-page--architectural-coatings .s6-coatings-classification-card .s6-system-card__body small {
  min-height: 4.65rem;
  display: block;
}

.s6-division-page--architectural-coatings .s6-coatings-classification-card .s6-system-card__specs {
  margin-top: auto;
  flex: 0 0 auto;
}

.s6-division-page--architectural-coatings .s6-coatings-classification-card .s6-system-card__spec {
  min-width: 0;
  display: grid;
  align-content: start;
  gap: .42rem;
  border-right: 1px solid rgba(32,40,31,.12);
}

.s6-division-page--architectural-coatings .s6-coatings-classification-card .s6-system-card__spec:last-child {
  border-right: 0;
}

.s6-division-page--architectural-coatings .s6-coatings-classification-card .s6-system-card__spec span {
  display: block;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: normal;
  color: var(--s6-green) !important;
  font-size: clamp(.46rem, .48vw, .54rem) !important;
  font-weight: 900 !important;
  line-height: 1.08 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  white-space: normal !important;
}

.s6-division-page--architectural-coatings .s6-coatings-classification-card .s6-system-card__spec strong {
  display: block;
  max-width: 100%;
  overflow-wrap: anywhere;
  color: rgba(20,24,22,.96) !important;
  font-size: clamp(.72rem, .82vw, .92rem) !important;
  line-height: 1.08 !important;
  letter-spacing: -.02em !important;
}

@media (max-width: 1380px) {
  .s6-division-page--architectural-coatings .s6-coatings-classification-card .s6-system-card__body strong,
  .s6-division-page--architectural-coatings .s6-coatings-classification-card .s6-system-card__body small {
    min-height: 0;
  }
}

@media (max-width: 720px) {
  .s6-division-page--architectural-coatings .s6-coatings-classification-card {
    min-height: auto;
  }

  .s6-division-page--architectural-coatings .s6-coatings-classification-card__visual {
    flex-basis: auto;
  }

  .s6-division-page--architectural-coatings .s6-coatings-classification-card .s6-system-card__specs {
    grid-template-columns: 1fr;
  }

  .s6-division-page--architectural-coatings .s6-coatings-classification-card .s6-system-card__spec {
    border-right: 0;
    border-bottom: 1px solid rgba(32,40,31,.12);
  }

  .s6-division-page--architectural-coatings .s6-coatings-classification-card .s6-system-card__spec:last-child {
    border-bottom: 0;
  }
}


.s6-caulking-trade-page {
  --coating-bg: #ebe5db;
  --coating-bg-soft: #f6f1e8;
  --coating-bg-deep: #d9d0c2;
  --coating-dark: #171513;
  --coating-muted: rgba(23,21,19,.68);
  --coating-line: rgba(23,21,19,.12);
}

.s6-caulking-hero {
  position: relative;
  min-height: 112svh;
  overflow: hidden;
  color: #fff;
  background: var(--s6-caulking-hero-bg) center/cover no-repeat;
}

.s6-caulking-hero__overlay {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(0,0,0,.84) 0%, rgba(0,0,0,.52) 45%, rgba(0,0,0,.12) 100%),
    linear-gradient(180deg, rgba(0,0,0,.1) 0%, rgba(0,0,0,.16) 55%, rgba(235,229,219,.96) 100%);
  pointer-events: none;
}

.s6-caulking-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, .42fr);
  gap: clamp(32px, 6vw, 100px);
  align-items: end;
}

.s6-caulking-hero__panel {
  align-self: end;
  margin-bottom: 7vh;
  padding: clamp(28px, 4vw, 54px);
  min-height: 360px;
  border-left: 1px solid rgba(255,255,255,.24);
  background: linear-gradient(135deg, rgba(255,255,255,.055), rgba(255,255,255,.012));
  backdrop-filter: blur(12px);
  display: grid;
  align-content: end;
  gap: 14px;
}

.s6-caulking-hero__panel span {
  display: block;
  font-size: clamp(1.65rem, 3.5vw, 4rem);
  line-height: .92;
  letter-spacing: -.055em;
  text-transform: uppercase;
  color: rgba(255,255,255,.9);
}

.s6-caulking-overview,
.s6-caulking-renewal,
.s6-caulking-systems,
.s6-caulking-finishes,
.s6-caulking-restoration,
.s6-caulking-projects,
.s6-caulking-faq {
  background:
    radial-gradient(circle at 88% 8%, rgba(142,196,63,.08), transparent 28%),
    linear-gradient(135deg, #f6f1e8 0%, #e5dccf 100%);
  color: var(--coating-dark);
  padding: clamp(92px, 11vw, 170px) 0;
}

.s6-caulking-overview__grid,
.s6-caulking-waterproofing__grid {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  gap: clamp(42px, 6vw, 96px);
  align-items: center;
}

.s6-caulking-overview__image {
  min-height: 640px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.1), rgba(0,0,0,.22)),
    var(--s6-caulking-intro-bg) center/cover no-repeat;
  box-shadow: 0 46px 110px rgba(44,34,22,.18);
  border-radius: 2px;
}

.s6-caulking-overview__copy h2,
.s6-caulking-section-head h2,
.s6-caulking-waterproofing h2 {
  margin: 0 0 28px;
  font-size: clamp(2.15rem, 5.2vw, 6rem);
  line-height: .9;
  letter-spacing: -.06em;
}

.s6-caulking-overview__copy p:not(.s6-section-label),
.s6-caulking-section-head p:not(.s6-section-label),
.s6-caulking-waterproofing p {
  max-width: 760px;
  color: var(--coating-muted);
  font-size: clamp(1rem, 1.35vw, 1.22rem);
  line-height: 1.75;
}

.s6-caulking-section-head {
  max-width: 1040px;
  margin-bottom: clamp(44px, 6vw, 88px);
}

.s6-caulking-section-head--split {
  max-width: none;
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(320px, .55fr);
  gap: clamp(36px, 6vw, 96px);
  align-items: end;
}

.s6-caulking-renewal__band {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 0;
  border-top: 1px solid var(--coating-line);
  border-left: 1px solid var(--coating-line);
  background: rgba(255,255,255,.18);
}

.s6-caulking-renewal__band article {
  min-height: 320px;
  padding: clamp(28px, 4vw, 46px);
  border-right: 1px solid var(--coating-line);
  border-bottom: 1px solid var(--coating-line);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 18px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.22), rgba(255,255,255,.02)),
    rgba(232,226,216,.72);
}

.s6-caulking-renewal__band span,
.s6-caulking-system-card span {
  font-size: .72rem;
  letter-spacing: .24em;
  text-transform: uppercase;
  color: rgba(23,21,19,.52);
}

.s6-caulking-renewal__band strong {
  font-size: clamp(1.25rem, 2vw, 2.1rem);
  line-height: 1;
  letter-spacing: -.04em;
}

.s6-caulking-systems__grid {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  grid-auto-rows: minmax(260px, auto);
  gap: clamp(24px, 3vw, 38px);
}

.s6-caulking-system-card {
  padding: clamp(34px, 4.5vw, 64px);
  min-height: 300px;
  background:
    radial-gradient(circle at 70% 18%, rgba(142,196,63,.1), transparent 28%),
    linear-gradient(145deg, rgba(255,255,255,.55), rgba(217,208,194,.72));
  border: 1px solid rgba(23,21,19,.1);
  box-shadow: 0 28px 80px rgba(35,30,24,.11);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.s6-caulking-system-card--large {
  grid-row: span 2;
  min-height: 680px;
}

.s6-caulking-system-card h3 {
  margin: 16px 0 18px;
  font-size: clamp(1.8rem, 4vw, 4.8rem);
  line-height: .9;
  letter-spacing: -.055em;
}

.s6-caulking-system-card p {
  max-width: 620px;
  color: var(--coating-muted);
  line-height: 1.7;
}

.s6-caulking-waterproofing {
  background:
    radial-gradient(circle at 80% 30%, rgba(142,196,63,.12), transparent 28%),
    linear-gradient(135deg, #181716 0%, #2a2925 100%);
  color: #fff;
  padding: clamp(92px, 11vw, 170px) 0;
}

.s6-caulking-waterproofing p,
.s6-caulking-waterproofing li {
  color: rgba(255,255,255,.7);
}

.s6-caulking-waterproofing__visual {
  min-height: 560px;
  padding: clamp(30px, 4vw, 60px);
  display: grid;
  align-content: end;
  gap: 12px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(0,0,0,.22)),
    radial-gradient(circle at 30% 20%, rgba(142,196,63,.12), transparent 30%),
    #111;
  border: 1px solid rgba(255,255,255,.12);
}

.s6-caulking-waterproofing__visual span {
  display: block;
  padding: 18px 0;
  border-bottom: 1px solid rgba(255,255,255,.16);
  font-size: clamp(1.5rem, 3vw, 3.3rem);
  line-height: .92;
  letter-spacing: -.05em;
  text-transform: uppercase;
}

.s6-caulking-waterproofing ul {
  margin: 30px 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 14px;
}

.s6-caulking-waterproofing li {
  position: relative;
  padding-left: 22px;
}

.s6-caulking-waterproofing li::before {
  content: "";
  width: 7px;
  height: 7px;
  background: var(--s6-green, #8EC43F);
  position: absolute;
  left: 0;
  top: .7em;
}

.s6-caulking-palette-wall {
  display: grid;
  grid-template-columns: 1.25fr repeat(4, .75fr);
  min-height: 420px;
  border: 1px solid var(--coating-line);
}

.s6-caulking-palette-wall span {
  display: block;
  background:
    linear-gradient(180deg, rgba(255,255,255,.16), rgba(0,0,0,.08)),
    var(--tone);
  border-right: 1px solid rgba(23,21,19,.1);
}

.s6-caulking-palette-wall span:last-child {
  border-right: 0;
}

.s6-caulking-restoration__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 22px;
}

.s6-caulking-restoration__grid article {
  min-height: 220px;
  padding: 32px;
  display: flex;
  align-items: flex-end;
  background: rgba(255,255,255,.42);
  border: 1px solid var(--coating-line);
}

.s6-caulking-restoration__grid strong {
  font-size: clamp(1.15rem, 1.8vw, 1.8rem);
  line-height: 1.08;
  letter-spacing: -.035em;
}

@media (max-width: 1180px) {
  .s6-caulking-hero__panel {
    display: none;
  }

  .s6-caulking-hero__grid,
  .s6-caulking-overview__grid,
  .s6-caulking-waterproofing__grid,
  .s6-caulking-section-head--split,
  .s6-caulking-systems__grid {
    grid-template-columns: 1fr;
  }

  .s6-caulking-system-card--large {
    grid-row: auto;
    min-height: 420px;
  }

  .s6-caulking-renewal__band,
  .s6-caulking-restoration__grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
}

@media (max-width: 760px) {
  .s6-caulking-overview__image,
  .s6-caulking-waterproofing__visual {
    min-height: 380px;
  }

  .s6-caulking-renewal__band,
  .s6-caulking-restoration__grid,
  .s6-caulking-palette-wall {
    grid-template-columns: 1fr;
  }

  .s6-caulking-palette-wall {
    min-height: auto;
  }

  .s6-caulking-palette-wall span {
    min-height: 120px;
    border-right: 0;
    border-bottom: 1px solid rgba(23,21,19,.1);
  }
}


.s6-division-page--caulking .s6-caulking-system-visual span {
  width: clamp(1.35rem, 1.75vw, 1.72rem);
  height: calc(7.65rem - (var(--coat-layer, 0) * .18rem));
  min-height: 0;
  padding: 0;
  display: block;
  color: transparent;
  font-size: 0;
  transform: rotateX(56deg) rotateZ(-31deg);
  border: 1px solid rgba(33,40,30,.18);
  box-shadow:
    .22rem .3rem .36rem rgba(38,42,31,.14),
    inset .12rem .04rem rgba(255,255,255,.34);
}

.s6-division-page--caulking .s6-caulking-system-visual span:nth-child(1) { --coat-layer: 0; }
.s6-division-page--caulking .s6-caulking-system-visual span:nth-child(2) { --coat-layer: 1; }
.s6-division-page--caulking .s6-caulking-system-visual span:nth-child(3) { --coat-layer: 2; }
.s6-division-page--caulking .s6-caulking-system-visual span:nth-child(4) { --coat-layer: 3; }
.s6-division-page--caulking .s6-caulking-system-visual span:nth-child(5) { --coat-layer: 4; }

.s6-division-page--caulking .s6-caulking-system-visual--protective span { background: linear-gradient(135deg, #59624a, #b7ca85); }
.s6-division-page--caulking .s6-caulking-system-visual--protective span:nth-child(2n) { background: linear-gradient(135deg, #75835d, #d4dfaa); }
.s6-division-page--caulking .s6-caulking-system-visual--concrete span { background: linear-gradient(135deg, #686961, #b9b8ad); }
.s6-division-page--caulking .s6-caulking-system-visual--concrete span:nth-child(2n) { background: linear-gradient(135deg, #4f524d, #96988f); }
.s6-division-page--caulking .s6-caulking-system-visual--waterproofing span { background: linear-gradient(135deg, #3f5d5d, #9ac4bd); }
.s6-division-page--caulking .s6-caulking-system-visual--waterproofing span:nth-child(2n) { background: linear-gradient(135deg, #55736c, #bfd9d2); }
.s6-division-page--caulking .s6-caulking-system-visual--paint-refresh span { background: linear-gradient(135deg, #615841, #d6c58f); }
.s6-division-page--caulking .s6-caulking-system-visual--paint-refresh span:nth-child(2n) { background: linear-gradient(135deg, #7b704f, #efe0ad); }

.s6-division-page--caulking .s6-system-card__body {
  display: grid;
  gap: .42rem;
  min-width: 0;
}

.s6-division-page--caulking .s6-system-card__body strong {
  font-size: clamp(1.18rem, 1.38vw, 1.56rem);
  line-height: .98;
  letter-spacing: -.045em;
}

.s6-division-page--caulking .s6-system-card__body small {
  margin-top: .35rem;
  font-size: .86rem;
  line-height: 1.52;
}

.s6-division-page--caulking .s6-system-card__specs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border: 1px solid rgba(32,40,31,.16);
  background: rgba(255,255,255,.28);
}

.s6-division-page--caulking .s6-system-card__spec {
  min-height: 4.6rem;
  padding: .72rem .62rem;
}

.s6-division-page--caulking .s6-caulking-system-explainer {
  background:
    linear-gradient(135deg, rgba(235,230,219,.92), rgba(207,198,181,.74)),
    repeating-linear-gradient(0deg, rgba(31,36,31,.035) 0 1px, transparent 1px 20px),
    repeating-linear-gradient(90deg, rgba(31,36,31,.03) 0 1px, transparent 1px 20px);
  border: 1px solid rgba(32,40,31,.2);
}

.s6-division-page--caulking .s6-caulking-system-explainer__detail-panel {
  padding: 1rem;
  background: rgba(255,255,255,.34);
  border: 1px solid rgba(32,40,31,.13);
}

.s6-division-page--caulking .s6-caulking-system-explainer__detail-panel ul {
  grid-template-columns: 1fr !important;
  gap: .45rem !important;
}

.s6-division-page--caulking .s6-caulking-system-explainer__detail-panel li {
  min-height: 0 !important;
  justify-content: flex-start !important;
  text-align: left !important;
  padding: 0 0 0 .85rem !important;
  background: transparent !important;
  border: 0 !important;
  font-size: .72rem !important;
  line-height: 1.45 !important;
  letter-spacing: .035em !important;
  position: relative;
}

.s6-division-page--caulking .s6-caulking-system-explainer__detail-panel li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .55em;
  width: .32rem;
  height: .32rem;
  background: var(--s6-green);
}

/* Coatings product collections — reuses signed-off Stone catalogue mechanics with coatings-specific surface styling. */
.s6-caulking-catalogue {
  padding: clamp(4.5rem, 8vw, 7rem) 0;
  background:
    radial-gradient(circle at 16% 14%, rgba(142,198,64,.13), transparent 34%),
    linear-gradient(180deg, rgba(8,10,8,.98), rgba(13,16,13,.98));
}
.s6-caulking-catalogue .s6-caulking-section-head {
  margin-bottom: clamp(1.75rem, 4vw, 3rem);
}
.s6-caulking-catalogue-group {
  border-color: rgba(142,198,64,.18);
  background:
    linear-gradient(145deg, rgba(255,255,255,.055), rgba(255,255,255,.018)),
    radial-gradient(circle at 88% 0%, rgba(142,198,64,.09), transparent 32%);
}
.s6-caulking-catalogue-group::before {
  background: linear-gradient(90deg, rgba(142,198,64,.8), transparent);
}
.s6-caulking-product-card .s6-stone-product-card__image::after {
  content: '';
  position: absolute;
  inset: 0;
  background:
    linear-gradient(135deg, rgba(255,255,255,.12), transparent 35%),
    repeating-linear-gradient(90deg, rgba(255,255,255,.055) 0 1px, transparent 1px 18px);
  mix-blend-mode: screen;
  opacity: .45;
  pointer-events: none;
}
.s6-caulking-product-card .s6-stone-product-card__image span {
  background: rgba(7,10,7,.82);
  border-color: rgba(142,198,64,.28);
}
.s6-caulking-catalogue .s6-stone-product-swatch.is-active,
.s6-caulking-catalogue .s6-stone-product-swatch:hover {
  border-color: rgba(142,198,64,.9);
  box-shadow: 0 0 0 3px rgba(142,198,64,.16), 0 0 18px rgba(142,198,64,.22);
}

.s6-caulking-catalogue {
  background:
    radial-gradient(circle at 15% 10%, rgba(142,198,64,.10), transparent 32%),
    radial-gradient(circle at 86% 18%, rgba(255,255,255,.52), transparent 26%),
    linear-gradient(180deg, #f5f1e8 0%, #ebe5d9 100%);
}
.s6-caulking-catalogue-group {
  border-color: rgba(31,29,25,.12);
  background:
    linear-gradient(145deg, rgba(255,255,255,.82), rgba(236,230,217,.9)),
    radial-gradient(circle at 88% 0%, rgba(142,198,64,.07), transparent 34%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.72),
    0 22px 44px rgba(34,28,22,.07);
}
.s6-caulking-catalogue-group::before {
  background-image:
    linear-gradient(rgba(40,35,28,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(40,35,28,.03) 1px, transparent 1px);
  background-size: 36px 36px;
  opacity: .5;
}
.s6-caulking-catalogue .s6-caulking-section-head h2,
.s6-caulking-catalogue .s6-stone-catalogue-group__head h3,
.s6-caulking-product-card .s6-stone-product-card__body h4 {
  color: #171615;
}
.s6-caulking-catalogue .s6-caulking-section-head p,
.s6-caulking-catalogue .s6-stone-catalogue-group__head p:not(.s6-section-label),
.s6-caulking-product-card .s6-stone-product-card__body p {
  color: rgba(28,26,23,.68);
}
.s6-caulking-product-card {
  background: linear-gradient(180deg, #fffdf8 0%, #f4efe4 100%);
  border-color: rgba(31,28,24,.13);
  box-shadow: 0 16px 32px rgba(34,28,22,.08);
}
.s6-caulking-product-card .s6-stone-product-card__image {
  border-color: rgba(35,31,27,.18);
  box-shadow:
    0 24px 38px rgba(34,28,22,.16),
    0 7px 12px rgba(34,28,22,.08),
    0 2px 0 rgba(255,255,255,.55) inset;
}
.s6-caulking-product-card:hover .s6-stone-product-card__image {
  box-shadow:
    0 30px 48px rgba(34,28,22,.19),
    0 12px 18px rgba(34,28,22,.1),
    0 2px 0 rgba(255,255,255,.58) inset;
}
.s6-caulking-product-card .s6-stone-product-card__image::after {
  background:
    linear-gradient(135deg, rgba(255,255,255,.24), transparent 38%),
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(26,22,18,.08)),
    repeating-linear-gradient(90deg, rgba(255,255,255,.12) 0 1px, transparent 1px 18px);
  mix-blend-mode: normal;
  opacity: .42;
}
.s6-caulking-product-card .s6-stone-product-card__image span {
  background: rgba(255,255,255,.78);
  color: #1d2119;
  border: 1px solid rgba(142,198,64,.35);
  box-shadow: 0 10px 22px rgba(32,28,22,.1);
}
.s6-caulking-catalogue .s6-stone-catalogue-group__toggle {
  background: #171615;
  color: #f5f1e8;
}
.s6-caulking-catalogue .s6-stone-catalogue-group__toggle:hover {
  background: #8ec640;
  color: #10100f;
}

/* Coatings — ACF system card images */
.s6-division-page--caulking .s6-caulking-system-card__image {
  width: min(108%, 18rem);
  height: 12.8rem;
  display: block;
  object-fit: contain;
  object-position: center;
  margin: auto;
  filter: drop-shadow(.65rem .85rem 1rem rgba(31,39,32,.18));
  transition: transform .28s ease, filter .28s ease;
}

.s6-division-page--caulking .s6-caulking-classification-card:hover .s6-caulking-system-card__image,
.s6-division-page--caulking .s6-caulking-classification-card:focus-visible .s6-caulking-system-card__image {
  transform: translateY(-.32rem) scale(1.04);
  filter: drop-shadow(.75rem 1rem 1.12rem rgba(31,39,32,.22));
}


.s6-division-page--caulking .s6-caulking-classification-card {
  display: flex !important;
  flex-direction: column !important;
  min-height: 34rem;
}

.s6-division-page--caulking .s6-caulking-classification-card__visual {
  flex: 0 0 14.35rem;
  min-height: 14.35rem;
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__body {
  flex: 1 1 auto;
  align-content: start;
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__body strong {
  min-height: 3.05rem;
  display: flex;
  align-items: flex-end;
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__body small {
  min-height: 4.65rem;
  display: block;
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__specs {
  margin-top: auto;
  flex: 0 0 auto;
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__spec {
  min-width: 0;
  display: grid;
  align-content: start;
  gap: .42rem;
  border-right: 1px solid rgba(32,40,31,.12);
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__spec:last-child {
  border-right: 0;
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__spec span {
  display: block;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: normal;
  color: var(--s6-green) !important;
  font-size: clamp(.46rem, .48vw, .54rem) !important;
  font-weight: 900 !important;
  line-height: 1.08 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  white-space: normal !important;
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__spec strong {
  display: block;
  max-width: 100%;
  overflow-wrap: anywhere;
  color: rgba(20,24,22,.96) !important;
  font-size: clamp(.72rem, .82vw, .92rem) !important;
  line-height: 1.08 !important;
  letter-spacing: -.02em !important;
}



/* Caulking systems: keep classification cards clean when populated with transparent render assets. */
.s6-division-page--caulking .s6-caulking-classification-card {
  background: linear-gradient(180deg, rgba(235,230,219,.97), rgba(207,198,181,.94));
  border: 1px solid rgba(32,40,31,.16);
  box-shadow: 0 .8rem 1.8rem rgba(39,42,31,.08);
}

.s6-division-page--caulking .s6-caulking-classification-card::before {
  background: none;
  opacity: 0;
}

.s6-division-page--caulking .s6-caulking-system-card-grid {
  background: transparent;
}

@media (max-width: 1380px) {
  .s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__body strong,
  .s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__body small {
    min-height: 0;
  }
}

@media (max-width: 720px) {
  .s6-division-page--caulking .s6-caulking-classification-card {
    min-height: auto;
  }

  .s6-division-page--caulking .s6-caulking-classification-card__visual {
    flex-basis: auto;
  }

  .s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__specs {
    grid-template-columns: 1fr;
  }

  .s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__spec {
    border-right: 0;
    border-bottom: 1px solid rgba(32,40,31,.12);
  }

  .s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__spec:last-child {
    border-bottom: 0;
  }
}


.s6-division-page--caulking .s6-caulking-systems--classification {
  background:
    radial-gradient(circle at 14% 8%, rgba(142,198,64,.12), transparent 32%),
    radial-gradient(circle at 88% 16%, rgba(255,255,255,.58), transparent 28%),
    linear-gradient(180deg, #f6f1e8 0%, #e9dfd1 100%);
  color: #171615;
}

.s6-division-page--caulking .s6-caulking-section-head {
  max-width: 1080px;
}

.s6-division-page--caulking .s6-caulking-section-head h2 {
  color: #171615;
  max-width: 980px;
}

.s6-division-page--caulking .s6-caulking-section-head p:not(.s6-section-label) {
  color: rgba(28,26,23,.68);
}

.s6-division-page--caulking .s6-caulking-system-card-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(1rem, 1.7vw, 1.45rem);
}

.s6-division-page--caulking .s6-caulking-classification-card {
  position: relative;
  overflow: hidden;
  display: flex !important;
  flex-direction: column !important;
  min-height: 34rem;
  padding: clamp(1.05rem, 1.4vw, 1.38rem);
  border: 1px solid rgba(31,28,24,.13);
  background:
    linear-gradient(180deg, rgba(255,255,255,.94), rgba(244,238,226,.96)),
    radial-gradient(circle at 82% 0%, rgba(142,198,64,.08), transparent 32%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.75),
    0 18px 42px rgba(34,28,22,.09);
}

.s6-division-page--caulking .s6-caulking-classification-card::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(40,35,28,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(40,35,28,.03) 1px, transparent 1px);
  background-size: 34px 34px;
  opacity: .45;
  pointer-events: none;
}

.s6-division-page--caulking .s6-caulking-classification-card > * {
  position: relative;
  z-index: 1;
}

.s6-division-page--caulking .s6-caulking-classification-card:hover,
.s6-division-page--caulking .s6-caulking-classification-card:focus-visible {
  transform: translateY(-.28rem);
  border-color: rgba(142,198,64,.42);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.82),
    0 24px 56px rgba(34,28,22,.13);
}

.s6-division-page--caulking .s6-caulking-classification-card__visual {
  flex: 0 0 13.8rem;
  min-height: 13.8rem;
  display: grid;
  place-items: center;
  margin: .65rem 0 1rem;
  border: 1px solid rgba(31,28,24,.10);
  background:
    radial-gradient(circle at 50% 42%, rgba(142,198,64,.12), transparent 42%),
    linear-gradient(145deg, rgba(255,255,255,.72), rgba(232,224,210,.56));
}

.s6-division-page--caulking .s6-caulking-system-visual {
  width: min(100%, 16rem);
  min-height: 10.25rem;
  display: grid;
  align-content: center;
  gap: .42rem;
  transform: rotateX(58deg) rotateZ(-30deg);
  transform-style: preserve-3d;
}

.s6-division-page--caulking .s6-caulking-system-visual span {
  width: auto;
  height: .78rem;
  min-height: .78rem;
  padding: 0;
  display: block;
  color: transparent;
  font-size: 0;
  transform: translateX(calc(var(--joint-layer, 0) * .42rem));
  border: 1px solid rgba(33,40,30,.14);
  border-radius: 999px;
  box-shadow:
    .18rem .24rem .32rem rgba(38,42,31,.13),
    inset .12rem .04rem rgba(255,255,255,.38);
}

.s6-division-page--caulking .s6-caulking-system-visual span:nth-child(1) { --joint-layer: 0; width: 78%; background: linear-gradient(135deg, #8b8f83, #d8d5c9); }
.s6-division-page--caulking .s6-caulking-system-visual span:nth-child(2) { --joint-layer: 1; width: 86%; background: linear-gradient(135deg, #6d7468, #c8ccb8); }
.s6-division-page--caulking .s6-caulking-system-visual span:nth-child(3) { --joint-layer: 2; width: 68%; background: linear-gradient(135deg, #303730, #78816f); }
.s6-division-page--caulking .s6-caulking-system-visual span:nth-child(4) { --joint-layer: 3; width: 82%; background: linear-gradient(135deg, #8ec640, #d7e8a8); }
.s6-division-page--caulking .s6-caulking-system-visual span:nth-child(5) { --joint-layer: 4; width: 62%; background: linear-gradient(135deg, #20241f, #58634e); }

.s6-division-page--caulking .s6-caulking-system-visual--perimeter span:nth-child(4),
.s6-division-page--caulking .s6-caulking-system-visual--perimeter span:nth-child(5) { background: linear-gradient(135deg, #8ec640, #dcebb2); }
.s6-division-page--caulking .s6-caulking-system-visual--expansion span:nth-child(3),
.s6-division-page--caulking .s6-caulking-system-visual--expansion span:nth-child(5) { background: linear-gradient(135deg, #243026, #8ec640); }
.s6-division-page--caulking .s6-caulking-system-visual--traffic span:nth-child(5) { background: linear-gradient(135deg, #1f2720, #5f6f5b); }
.s6-division-page--caulking .s6-caulking-system-visual--restoration span:nth-child(1) { background: linear-gradient(135deg, #6b5345, #cdbba8); }

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__body {
  flex: 1 1 auto;
  display: grid;
  align-content: start;
  gap: .45rem;
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__body strong {
  min-height: 3.05rem;
  display: flex;
  align-items: flex-end;
  color: #171615;
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__body small {
  min-height: 4.85rem;
  color: rgba(28,26,23,.66);
}

.s6-division-page--caulking .s6-caulking-explainer-section {
  padding: clamp(5.75rem, 9vw, 8.5rem) 0;
  background:
    radial-gradient(circle at 12% 10%, rgba(142,198,64,.10), transparent 30%),
    linear-gradient(180deg, #eee7da 0%, #f8f4ec 100%);
}

.s6-division-page--caulking .s6-caulking-system-explainer {
  display: grid;
  grid-template-columns: minmax(0, .96fr) minmax(340px, .82fr);
  gap: clamp(1.25rem, 3vw, 2.2rem);
  padding: clamp(1rem, 1.8vw, 1.45rem);
  background:
    linear-gradient(145deg, rgba(255,255,255,.88), rgba(235,228,215,.92)),
    radial-gradient(circle at 90% 8%, rgba(142,198,64,.08), transparent 32%);
  border: 1px solid rgba(32,40,31,.15);
  box-shadow: 0 24px 58px rgba(34,28,22,.10);
}

.s6-division-page--caulking .s6-caulking-system-explainer__copy {
  min-width: 0;
}

.s6-division-page--caulking .s6-caulking-system-explainer__detail-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .75rem;
  margin-top: 1.1rem;
}

.s6-division-page--caulking .s6-caulking-system-explainer__detail-panel,
.s6-division-page--caulking .s6-coatings-system-explainer__detail-panel.s6-caulking-system-explainer__detail-panel {
  min-width: 0;
  padding: .95rem;
  background: rgba(255,255,255,.48);
  border: 1px solid rgba(32,40,31,.12);
}

.s6-division-page--caulking .s6-caulking-system-explainer__visual-stack {
  min-width: 0;
  display: grid;
  gap: .9rem;
}

.s6-division-page--caulking .s6-caulking-system-explainer__visual {
  min-height: clamp(18rem, 34vw, 29rem);
  border: 1px solid rgba(31,28,24,.13);
  box-shadow: 0 22px 48px rgba(34,28,22,.13);
}

.s6-division-page--caulking .s6-caulking-system-explainer__pills {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .65rem;
  position: static;
  transform: none;
}

.s6-division-page--caulking .s6-caulking-system-explainer__pills .s6-explainer-hotspot {
  position: static;
  width: auto;
  min-height: 3.45rem;
  border-radius: 0;
  background: rgba(255,255,255,.58);
  border: 1px solid rgba(32,40,31,.14);
  color: #171615;
  box-shadow: none;
}

.s6-division-page--caulking .s6-caulking-system-explainer__pills .s6-explainer-hotspot span {
  display: block;
  transform: none;
  font-size: .72rem;
  letter-spacing: .16em;
  color: inherit;
}

.s6-division-page--caulking .s6-caulking-system-explainer__pills .s6-explainer-hotspot:hover,
.s6-division-page--caulking .s6-caulking-system-explainer__pills .s6-explainer-hotspot:focus-visible,
.s6-division-page--caulking .s6-caulking-system-explainer__pills .s6-explainer-hotspot.is-active {
  background: #8ec640;
  color: #10110f;
  border-color: rgba(142,198,64,.85);
}

@media (max-width: 1180px) {
  .s6-division-page--caulking .s6-caulking-system-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .s6-division-page--caulking .s6-caulking-system-explainer {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .s6-division-page--caulking .s6-caulking-system-card-grid,
  .s6-division-page--caulking .s6-caulking-system-explainer__detail-grid,
  .s6-division-page--caulking .s6-caulking-system-explainer__pills {
    grid-template-columns: 1fr;
  }
  .s6-division-page--caulking .s6-caulking-classification-card {
    min-height: auto;
  }
  .s6-division-page--caulking .s6-caulking-classification-card__visual,
  .s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__body strong,
  .s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__body small {
    min-height: 0;
    flex-basis: auto;
  }
}

.s6-division-page--caulking .s6-caulking-explainer-section {
  padding: clamp(5.75rem, 9vw, 8.5rem) 0;
  background:
    radial-gradient(circle at 12% 10%, rgba(142,198,64,.10), transparent 30%),
    linear-gradient(180deg, #eee7da 0%, #f8f4ec 100%);
}

.s6-division-page--caulking .s6-caulking-system-explainer.s6-coatings-system-explainer {
  display: grid;
  grid-template-columns: minmax(360px, 1.06fr) minmax(0, .94fr);
  gap: clamp(22px, 3.5vw, 44px);
  align-items: stretch;
  margin-top: clamp(24px, 4vw, 42px);
  padding: clamp(24px, 3.2vw, 38px);
  background:
    linear-gradient(135deg, rgba(246,244,238,.88), rgba(225,218,205,.68)),
    repeating-linear-gradient(0deg, rgba(31,36,31,.035) 0 1px, transparent 1px 20px),
    repeating-linear-gradient(90deg, rgba(31,36,31,.03) 0 1px, transparent 1px 20px);
  border: 1px solid rgba(31,39,32,.18);
  box-shadow: inset 0 10px 28px rgba(38,35,28,.055), inset 0 -10px 26px rgba(255,255,255,.34);
}

.s6-division-page--caulking .s6-caulking-system-explainer__visual-stack {
  display: grid;
  grid-template-rows: minmax(340px, 1fr) auto auto;
  gap: 14px;
  min-height: 520px;
}

.s6-division-page--caulking .s6-caulking-system-explainer__visual.s6-coatings-system-explainer__visual {
  min-height: 0;
  height: 100%;
  padding: 0;
  align-content: stretch;
  background: linear-gradient(180deg, rgba(0,0,0,.04), rgba(0,0,0,.1)), var(--s6-division-detail-bg) center/cover no-repeat;
  border: 1px solid rgba(28,34,29,.22);
  position: relative;
  overflow: hidden;
  box-shadow: none;
}

.s6-division-page--caulking .s6-caulking-system-explainer__visual.s6-coatings-system-explainer__visual::before {
  content: "";
  position: absolute;
  inset: 14px;
  border: 1px solid rgba(255,255,255,.22);
  z-index: 1;
  pointer-events: none;
}

.s6-division-page--caulking .s6-caulking-system-explainer__pills.s6-coatings-system-explainer__pills {
  position: relative;
  z-index: 3;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
  padding: 0;
  background: none;
  box-shadow: none;
  transform: none;
}

.s6-division-page--caulking .s6-caulking-system-explainer__pills.s6-coatings-system-explainer__pills .s6-explainer-hotspot {
  position: static;
  width: auto;
  height: auto;
  min-height: 44px;
  border-radius: 0;
  padding: 11px 10px;
  background: rgba(12,15,13,.72);
  border: 1px solid rgba(255,255,255,.22);
  color: #f6f4ef;
  box-shadow: none;
  transform: none;
}

.s6-division-page--caulking .s6-caulking-system-explainer__pills.s6-coatings-system-explainer__pills .s6-explainer-hotspot span {
  position: static;
  width: auto;
  height: auto;
  display: block;
  background: none;
  border: 0;
  color: inherit;
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  white-space: nowrap;
  transform: none;
}

.s6-division-page--caulking .s6-caulking-system-explainer__pills.s6-coatings-system-explainer__pills .s6-explainer-hotspot:hover,
.s6-division-page--caulking .s6-caulking-system-explainer__pills.s6-coatings-system-explainer__pills .s6-explainer-hotspot:focus-visible,
.s6-division-page--caulking .s6-caulking-system-explainer__pills.s6-coatings-system-explainer__pills .s6-explainer-hotspot.is-active {
  background: #8ec640;
  border-color: #8ec640;
  color: #111;
}

.s6-division-page--caulking .s6-caulking-system-explainer__copy.s6-coatings-system-explainer__copy {
  min-height: 520px;
  padding: clamp(14px, 2vw, 22px) clamp(8px, 1.2vw, 16px);
  display: grid;
  align-items: stretch;
  position: relative;
  min-width: 0;
}

.s6-division-page--caulking .s6-caulking-system-explainer.s6-coatings-system-explainer .s6-division-explainer__default,
.s6-division-page--caulking .s6-caulking-system-explainer.s6-coatings-system-explainer .s6-division-explainer__point-system {
  grid-area: 1 / 1;
  min-height: 100%;
  display: grid;
  grid-template-rows: auto auto 1fr auto;
  align-content: stretch;
  gap: 14px;
  opacity: 1;
  transition: opacity .22s ease;
}

.s6-division-page--caulking .s6-caulking-system-explainer.s6-coatings-system-explainer .s6-division-explainer__point-system {
  opacity: 0;
  pointer-events: none;
}

.s6-division-page--caulking .s6-caulking-system-explainer.s6-coatings-system-explainer.is-hotspot-active .s6-division-explainer__default { opacity: 0; }
.s6-division-page--caulking .s6-caulking-system-explainer.s6-coatings-system-explainer.is-hotspot-active .s6-division-explainer__point-system,
.s6-division-page--caulking .s6-caulking-system-explainer.s6-coatings-system-explainer .s6-division-explainer__point-system.is-visible {
  opacity: 1;
  pointer-events: auto;
}

.s6-division-page--caulking .s6-caulking-system-explainer.s6-coatings-system-explainer .s6-division-explainer__default > span,
.s6-division-page--caulking .s6-caulking-system-explainer.s6-coatings-system-explainer .s6-division-explainer__point-system > span {
  display: inline-flex;
  width: fit-content;
  color: #6f7a34;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.s6-division-page--caulking .s6-caulking-system-explainer.s6-coatings-system-explainer h3 {
  margin: 0;
  color: #1d231f;
  font-size: clamp(1.45rem, 2.35vw, 2.45rem);
  line-height: .98;
  letter-spacing: -.055em;
  text-transform: uppercase;
  max-width: 14ch;
}

.s6-division-page--caulking .s6-caulking-system-explainer.s6-coatings-system-explainer p {
  align-self: center;
  margin: 0;
  color: rgba(29,35,31,.74);
  font-size: .98rem;
  line-height: 1.75;
  max-width: 58ch;
}

.s6-division-page--caulking .s6-caulking-system-explainer__overview-points,
.s6-division-page--caulking .s6-caulking-system-explainer__detail-grid,
.s6-division-page--caulking .s6-caulking-system-explainer.s6-coatings-system-explainer .s6-division-explainer__point-system ul {
  align-self: end;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
  border: 0;
}

.s6-division-page--caulking .s6-caulking-system-explainer__overview-points li,
.s6-division-page--caulking .s6-caulking-system-explainer.s6-coatings-system-explainer .s6-division-explainer__point-system li {
  min-height: 58px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 10px 12px;
  background: rgba(255,255,255,.46);
  border: 1px solid rgba(31,39,32,.12);
  color: rgba(29,35,31,.76);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.s6-division-page--caulking .s6-caulking-system-explainer__detail-panel {
  min-width: 0;
  padding: .95rem;
  background: rgba(255,255,255,.48);
  border: 1px solid rgba(32,40,31,.12);
}

.s6-division-page--caulking .s6-caulking-system-explainer__detail-panel h4,
.s6-division-page--caulking .s6-caulking-system-explainer__overview-panel h4 {
  margin: 0 0 10px;
  color: #1d231f;
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.s6-division-page--caulking .s6-caulking-system-explainer__hint p {
  margin: 0;
  color: rgba(29,35,31,.58);
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

@media (max-width: 1180px) {
  .s6-division-page--caulking .s6-caulking-system-explainer.s6-coatings-system-explainer {
    grid-template-columns: 1fr;
  }
  .s6-division-page--caulking .s6-caulking-system-explainer__copy,
  .s6-division-page--caulking .s6-caulking-system-explainer__visual {
    min-height: auto;
  }
  .s6-division-page--caulking .s6-caulking-system-explainer__visual-stack {
    min-height: auto;
  }
  .s6-division-page--caulking .s6-caulking-system-explainer__visual {
    min-height: 420px;
  }
}

@media (max-width: 720px) {
  .s6-division-page--caulking .s6-caulking-system-explainer__pills,
  .s6-division-page--caulking .s6-caulking-system-explainer__overview-points,
  .s6-division-page--caulking .s6-caulking-system-explainer__detail-grid,
  .s6-division-page--caulking .s6-caulking-system-explainer.s6-coatings-system-explainer .s6-division-explainer__point-system ul {
    grid-template-columns: 1fr;
  }
  .s6-division-page--caulking .s6-caulking-system-explainer.s6-coatings-system-explainer {
    padding: 18px;
  }
  .s6-division-page--caulking .s6-caulking-system-explainer.s6-coatings-system-explainer h3 {
    max-width: none;
  }
}

.s6-division-page--caulking .s6-caulking-systems--classification {
  background:
    radial-gradient(circle at 12% 8%, rgba(142,198,64,.10), transparent 28rem),
    linear-gradient(180deg, #f3efe6 0%, #e7dfd0 100%);
}

.s6-division-page--caulking .s6-caulking-system-card-grid {
  display: grid;
  gap: clamp(1rem, 1.7vw, 1.45rem);
  align-items: stretch;
}

.s6-division-page--caulking .s6-caulking-classification-card {
  position: relative;
  min-height: 34rem;
  padding: clamp(1.25rem, 1.55vw, 1.55rem);
  display: flex !important;
  flex-direction: column !important;
  gap: .85rem;
  border-radius: 0;
  overflow: hidden;
  background:
    linear-gradient(180deg, rgba(235,230,219,.97), rgba(207,198,181,.94));
  border-top: 1px solid rgba(32,40,31,.22);
  border-left: 1px solid rgba(32,40,31,.18);
  border-right: 1px solid rgba(255,255,255,.52);
  border-bottom: 1px solid rgba(255,255,255,.58);
  box-shadow:
    inset 0 .9rem 1.75rem rgba(39,42,31,.075),
    inset 0 -.45rem .9rem rgba(255,255,255,.36);
  transform: none;
  transition: border-color .24s ease, box-shadow .24s ease, background-color .24s ease;
}

.s6-division-page--caulking .s6-caulking-classification-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(142,198,64,.22), transparent 35%),
    repeating-linear-gradient(0deg, rgba(31,36,31,.028) 0 1px, transparent 1px 19px);
  opacity: .58;
  pointer-events: none;
}

.s6-division-page--caulking .s6-caulking-classification-card:hover,
.s6-division-page--caulking .s6-caulking-classification-card:focus-visible {
  border-top-color: rgba(142,198,64,.52);
  border-left-color: rgba(142,198,64,.42);
  outline: none;
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__top,
.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__body,
.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__specs,
.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__rule,
.s6-division-page--caulking .s6-caulking-classification-card__visual {
  position: relative;
  z-index: 2;
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__kicker {
  margin: 0 0 .58rem;
  color: rgba(39,45,34,.68);
  font-size: .55rem;
  font-weight: 900;
  line-height: 1.18;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__label {
  color: rgba(20,27,22,.96);
  font-size: clamp(1.05rem, 1.3vw, 1.35rem);
  font-weight: 900;
  line-height: 1;
  letter-spacing: -.035em;
  text-transform: uppercase;
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__badge {
  width: 2.2rem;
  height: 2.2rem;
  flex: 0 0 2.2rem;
  border: 1px solid rgba(142,198,64,.78);
  color: var(--s6-green);
  background: rgba(142,198,64,.07);
  font-size: .9rem;
  font-weight: 950;
  letter-spacing: -.04em;
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__rule {
  width: 1.15rem;
  height: 1px;
  background: var(--s6-green);
  opacity: .9;
}

.s6-division-page--caulking .s6-caulking-classification-card__visual {
  flex: 0 0 14.35rem;
  min-height: 14.35rem;
  margin: .05rem -.35rem .05rem;
  padding: .55rem .2rem .2rem;
  border: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
  display: flex;
  align-items: center;
  justify-content: center;
}

.s6-division-page--caulking .s6-caulking-system-card__image {
  width: min(108%, 18rem);
  height: 12.8rem;
  display: block;
  object-fit: contain;
  object-position: center;
  margin: auto;
  filter: drop-shadow(.65rem .85rem 1rem rgba(31,39,32,.18));
  transition: transform .28s ease, filter .28s ease;
}

.s6-division-page--caulking .s6-caulking-classification-card:hover .s6-caulking-system-card__image,
.s6-division-page--caulking .s6-caulking-classification-card:focus-visible .s6-caulking-system-card__image {
  transform: translateY(-.32rem) scale(1.04);
  filter: drop-shadow(.75rem 1rem 1.12rem rgba(31,39,32,.22));
}

.s6-division-page--caulking .s6-caulking-system-visual {
  position: relative;
  width: min(100%, 16rem);
  min-height: 12.1rem;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: .34rem;
  perspective: 760px;
  filter: drop-shadow(.75rem 1rem 1.1rem rgba(39,42,31,.18));
  transition: transform .28s ease, filter .28s ease;
}

.s6-division-page--caulking .s6-caulking-classification-card:hover .s6-caulking-system-visual,
.s6-division-page--caulking .s6-caulking-classification-card:focus-visible .s6-caulking-system-visual {
  transform: translateY(-.34rem) scale(1.045);
  filter: drop-shadow(.85rem 1.12rem 1.22rem rgba(39,42,31,.22));
}

.s6-division-page--caulking .s6-caulking-system-visual span {
  width: clamp(1.35rem, 1.75vw, 1.72rem);
  height: calc(7.65rem - (var(--coat-layer, 0) * .18rem));
  min-height: 0;
  padding: 0;
  display: block;
  color: transparent;
  font-size: 0;
  transform: rotateX(56deg) rotateZ(-31deg);
  border: 1px solid rgba(33,40,30,.18);
  box-shadow:
    .22rem .3rem .36rem rgba(38,42,31,.14),
    inset .12rem .04rem rgba(255,255,255,.34);
}

.s6-division-page--caulking .s6-caulking-system-visual span:nth-child(1) { --coat-layer: 0; }
.s6-division-page--caulking .s6-caulking-system-visual span:nth-child(2) { --coat-layer: 1; }
.s6-division-page--caulking .s6-caulking-system-visual span:nth-child(3) { --coat-layer: 2; }
.s6-division-page--caulking .s6-caulking-system-visual span:nth-child(4) { --coat-layer: 3; }
.s6-division-page--caulking .s6-caulking-system-visual span:nth-child(5) { --coat-layer: 4; }

.s6-division-page--caulking .s6-caulking-system-visual--perimeter span { background: linear-gradient(135deg, #5b6258, #d8d1c2); }
.s6-division-page--caulking .s6-caulking-system-visual--perimeter span:nth-child(2n) { background: linear-gradient(135deg, #75806d, #eee6d7); }
.s6-division-page--caulking .s6-caulking-system-visual--expansion span { background: linear-gradient(135deg, #505750, #a7b98a); }
.s6-division-page--caulking .s6-caulking-system-visual--expansion span:nth-child(2n) { background: linear-gradient(135deg, #717b70, #d5dfbd); }
.s6-division-page--caulking .s6-caulking-system-visual--traffic span { background: linear-gradient(135deg, #4f5558, #b8c0c1); }
.s6-division-page--caulking .s6-caulking-system-visual--traffic span:nth-child(2n) { background: linear-gradient(135deg, #657073, #d8dddd); }
.s6-division-page--caulking .s6-caulking-system-visual--restoration span { background: linear-gradient(135deg, #5d574b, #ccb98d); }
.s6-division-page--caulking .s6-caulking-system-visual--restoration span:nth-child(2n) { background: linear-gradient(135deg, #7a715f, #ead9ad); }

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__body {
  display: grid;
  gap: .42rem;
  min-width: 0;
  flex: 1 1 auto;
  align-content: start;
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__body strong {
  min-height: 3.05rem;
  display: flex;
  align-items: flex-end;
  color: rgba(20,24,22,.98);
  font-size: clamp(1.18rem, 1.38vw, 1.56rem);
  line-height: .98;
  letter-spacing: -.045em;
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__body small {
  min-height: 4.65rem;
  display: block;
  margin-top: .35rem;
  color: rgba(38,43,38,.76);
  font-size: .86rem;
  line-height: 1.52;
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__specs {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: auto;
  flex: 0 0 auto;
  border: 1px solid rgba(32,40,31,.16);
  background: rgba(255,255,255,.28);
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__spec {
  min-width: 0;
  min-height: 4.6rem;
  padding: .72rem .62rem;
  display: grid;
  align-content: start;
  gap: .42rem;
  border-right: 1px solid rgba(32,40,31,.12);
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__spec:last-child {
  border-right: 0;
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__spec span {
  display: block;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: normal;
  color: var(--s6-green) !important;
  font-size: clamp(.46rem, .48vw, .54rem) !important;
  font-weight: 900 !important;
  line-height: 1.08 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  white-space: normal !important;
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__spec strong {
  display: block;
  max-width: 100%;
  overflow-wrap: anywhere;
  color: rgba(20,24,22,.96) !important;
  font-size: clamp(.72rem, .82vw, .92rem) !important;
  line-height: 1.08 !important;
  letter-spacing: -.02em !important;
}



/* Caulking systems: keep classification cards clean when populated with transparent render assets. */
.s6-division-page--caulking .s6-caulking-classification-card {
  background: linear-gradient(180deg, rgba(235,230,219,.97), rgba(207,198,181,.94));
  border: 1px solid rgba(32,40,31,.16);
  box-shadow: 0 .8rem 1.8rem rgba(39,42,31,.08);
}

.s6-division-page--caulking .s6-caulking-classification-card::before {
  background: none;
  opacity: 0;
}

.s6-division-page--caulking .s6-caulking-system-card-grid {
  background: transparent;
}

@media (max-width: 1380px) {
  .s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__body strong,
  .s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__body small {
    min-height: 0;
  }
}

@media (max-width: 720px) {
  .s6-division-page--caulking .s6-caulking-classification-card {
    min-height: auto;
  }

  .s6-division-page--caulking .s6-caulking-classification-card__visual {
    flex-basis: auto;
  }

  .s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__specs {
    grid-template-columns: 1fr;
  }

  .s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__spec {
    border-right: 0;
    border-bottom: 1px solid rgba(32,40,31,.12);
  }

  .s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__spec:last-child {
    border-bottom: 0;
  }
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__top > div {
  min-width: 0;
  display: block;
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__kicker,
.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__label,
.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__badge {
  display: block;
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__kicker {
  margin: 0 0 .58rem;
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__label {
  clear: both;
  width: 100%;
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__badge {
  width: 2.2rem;
  height: 2.2rem;
  flex: 0 0 2.2rem;
  display: grid;
  place-items: center;
  align-self: start;
  justify-self: end;
  border: 1px solid rgba(142,198,64,.78);
  color: var(--s6-green);
  background: rgba(142,198,64,.07);
  font-size: .9rem;
  font-weight: 950;
  line-height: 1;
  letter-spacing: -.04em;
}

.s6-division-page--caulking .s6-caulking-classification-card {
  border-radius: 1.05rem;
  border-color: rgba(35, 39, 33, .16);
  background:
    linear-gradient(90deg, rgba(142,198,64,.42) 0 .18rem, transparent .18rem),
    radial-gradient(circle at 84% 6%, rgba(142,198,64,.12), transparent 30%),
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(244,239,229,.97));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.86),
    inset .38rem 0 .72rem rgba(142,198,64,.045),
    0 18px 44px rgba(32,28,22,.09);
}

.s6-division-page--caulking .s6-caulking-classification-card::before {
  background-image:
    linear-gradient(90deg, rgba(32,40,31,.055) 1px, transparent 1px),
    linear-gradient(rgba(32,40,31,.026) 1px, transparent 1px);
  background-size: 3.25rem 100%, 100% 2.4rem;
  opacity: .38;
}

.s6-division-page--caulking .s6-caulking-classification-card::after {
  content: '';
  position: absolute;
  left: clamp(1.05rem, 1.4vw, 1.38rem);
  right: clamp(1.05rem, 1.4vw, 1.38rem);
  bottom: clamp(1.05rem, 1.4vw, 1.38rem);
  height: .18rem;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(31,38,31,.10), rgba(142,198,64,.56), rgba(31,38,31,.10));
  opacity: .52;
  pointer-events: none;
  z-index: 0;
}

.s6-division-page--caulking .s6-caulking-classification-card:hover,
.s6-division-page--caulking .s6-caulking-classification-card:focus-visible {
  border-color: rgba(142,198,64,.5);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.9),
    inset .42rem 0 .84rem rgba(142,198,64,.07),
    0 25px 58px rgba(32,28,22,.13);
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__badge {
  border-radius: .32rem;
  border-color: rgba(142,198,64,.9);
  background:
    linear-gradient(180deg, rgba(142,198,64,.2), rgba(142,198,64,.08));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.72),
    0 .35rem .85rem rgba(142,198,64,.13);
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__rule {
  width: 2.35rem;
  height: .12rem;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--s6-green), rgba(142,198,64,.05));
}

.s6-division-page--caulking .s6-caulking-classification-card__visual {
  border-radius: .88rem;
  border-color: rgba(32,40,31,.13);
  background:
    linear-gradient(90deg, transparent calc(50% - .09rem), rgba(142,198,64,.2) calc(50% - .09rem), rgba(142,198,64,.2) calc(50% + .09rem), transparent calc(50% + .09rem)),
    radial-gradient(circle at 50% 46%, rgba(142,198,64,.13), transparent 40%),
    linear-gradient(145deg, rgba(255,255,255,.82), rgba(231,224,211,.6));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.78),
    inset 0 -.75rem 1.6rem rgba(35,32,25,.035);
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__body {
  border-top: 1px solid rgba(32,40,31,.09);
  padding-top: .8rem;
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__specs {
  border-radius: .78rem;
  overflow: hidden;
  border-color: rgba(32,40,31,.15);
  background:
    linear-gradient(180deg, rgba(255,255,255,.48), rgba(245,240,230,.38));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.66);
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__spec {
  position: relative;
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__spec::before {
  content: '';
  width: .42rem;
  height: .42rem;
  border-radius: 999px;
  border: 1px solid rgba(142,198,64,.72);
  background: rgba(142,198,64,.08);
  margin-bottom: .1rem;
}

@media (max-width: 720px) {
  .s6-division-page--caulking .s6-caulking-classification-card::after {
    opacity: .32;
  }
}

/* Landscaping architecture pass: current systems/explainer parity */
.s6-landscape-hero {
  background-image: linear-gradient(120deg, rgba(4, 8, 6, .92), rgba(10, 22, 16, .68)), var(--s6-landscape-hero-bg);
  background-size: cover;
  background-position: center;
}
.s6-landscape-systems--classification .s6-coatings-section-head,
.s6-landscape-explainer-section .s6-coatings-section-head { max-width: 980px; }
.s6-landscape-classification-card { position: relative; overflow: hidden; }
.s6-landscape-classification-card:after {
  content: "";
  position: absolute;
  inset: auto 1.25rem 1.25rem 1.25rem;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(142,198,64,.45), transparent);
  opacity: .55;
  pointer-events: none;
}
.s6-landscape-classification-card__visual {
  background: radial-gradient(circle at 30% 20%, rgba(142,198,64,.16), transparent 38%), linear-gradient(145deg, rgba(18,33,25,.92), rgba(7,13,10,.96));
}
.s6-landscape-system-visual {
  width: min(13rem, 100%);
  min-height: 8.75rem;
  margin: 0 auto;
  display: grid;
  align-content: end;
  gap: .38rem;
  transform: perspective(560px) rotateX(58deg) rotateZ(-22deg);
}
.s6-landscape-system-visual span {
  display: block;
  border: 1px solid rgba(232,238,228,.18);
  background: linear-gradient(90deg, rgba(119,88,55,.62), rgba(142,198,64,.22));
  color: rgba(246,249,242,.86);
  font-size: .58rem;
  line-height: 1;
  letter-spacing: .11em;
  text-transform: uppercase;
  padding: .42rem .55rem;
  border-radius: .65rem;
  box-shadow: 0 10px 20px rgba(0,0,0,.22);
}
.s6-landscape-system-visual--retaining span { background: linear-gradient(90deg, rgba(110,94,70,.8), rgba(72,88,62,.38)); }
.s6-landscape-system-visual--water span { background: linear-gradient(90deg, rgba(38,85,88,.72), rgba(142,198,64,.22)); }
.s6-landscape-system-visual--siteworks span { background: linear-gradient(90deg, rgba(82,70,52,.8), rgba(62,82,71,.42)); }
.s6-landscape-products .s6-landscape-groundworks__grid article { min-height: 11rem; }
.s6-landscape-system-explainer .s6-division-explainer__visual { min-height: 25rem; }
.s6-landscape-system-explainer__hint p span { color: #8ec640; }
@media (max-width: 760px) {
  .s6-landscape-system-visual { transform: none; min-height: 7.5rem; }
  .s6-landscape-system-explainer .s6-division-explainer__visual { min-height: 18rem; }
}

.s6-division-page--landscaping .s6-landscape-system-card-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(1rem, 1.7vw, 1.45rem);
}

.s6-division-page--landscaping .s6-landscape-classification-card {
  position: relative;
  overflow: hidden;
  display: flex !important;
  flex-direction: column !important;
  min-height: 34rem;
  padding: clamp(1.05rem, 1.4vw, 1.38rem);
  border: 1px solid rgba(31, 45, 28, .14);
  background:
    linear-gradient(180deg, rgba(255,255,255,.94), rgba(239,235,223,.96)),
    radial-gradient(circle at 84% 4%, rgba(142,198,64,.11), transparent 32%);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.76),
    0 18px 42px rgba(34,32,22,.09);
  transition: transform .24s ease, border-color .24s ease, box-shadow .24s ease;
}

.s6-division-page--landscaping .s6-landscape-classification-card::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(40, 50, 30, .034) 1px, transparent 1px),
    linear-gradient(90deg, rgba(40, 50, 30, .03) 1px, transparent 1px);
  background-size: 38px 38px;
  opacity: .42;
  pointer-events: none;
}

.s6-division-page--landscaping .s6-landscape-classification-card > * {
  position: relative;
  z-index: 1;
}

.s6-division-page--landscaping .s6-landscape-classification-card:hover,
.s6-division-page--landscaping .s6-landscape-classification-card:focus-visible {
  transform: translateY(-.28rem);
  border-color: rgba(142,198,64,.42);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.82),
    0 24px 56px rgba(34,32,22,.13);
}

.s6-division-page--landscaping .s6-landscape-classification-card .s6-system-card__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: .85rem;
}

.s6-division-page--landscaping .s6-landscape-classification-card .s6-system-card__kicker,
.s6-division-page--landscaping .s6-landscape-classification-card .s6-system-card__label {
  display: block;
}

.s6-division-page--landscaping .s6-landscape-classification-card .s6-system-card__kicker {
  font-size: .66rem;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: rgba(28, 31, 24, .52);
  line-height: 1.25;
}

.s6-division-page--landscaping .s6-landscape-classification-card .s6-system-card__label {
  margin-top: .32rem;
  font-size: .9rem;
  letter-spacing: .14em;
  text-transform: uppercase;
  font-weight: 800;
  color: #1b1d17;
}

.s6-division-page--landscaping .s6-landscape-classification-card .s6-system-card__badge {
  flex: 0 0 auto;
  width: 2.9rem;
  height: 2.9rem;
  display: grid;
  place-items: center;
  border: 1px solid rgba(142,198,64,.58);
  background: rgba(142,198,64,.12);
  color: #20251b;
  font-weight: 900;
  letter-spacing: .06em;
}

.s6-division-page--landscaping .s6-landscape-classification-card .s6-system-card__rule {
  display: block;
  width: 100%;
  height: 1px;
  margin: .8rem 0 .2rem;
  background: linear-gradient(90deg, rgba(142,198,64,.7), rgba(31,36,28,.08));
}

.s6-division-page--landscaping .s6-landscape-classification-card__visual {
  flex: 0 0 13.8rem;
  min-height: 13.8rem;
  display: grid;
  place-items: center;
  margin: .65rem 0 1rem;
  border: 1px solid rgba(31,28,24,.10);
  background:
    radial-gradient(circle at 48% 40%, rgba(142,198,64,.13), transparent 42%),
    linear-gradient(145deg, rgba(255,255,255,.72), rgba(224,218,202,.58));
}

.s6-division-page--landscaping .s6-landscape-system-visual {
  width: min(100%, 16rem);
  min-height: 10.25rem;
  display: grid;
  align-content: center;
  gap: .42rem;
  transform: rotateX(58deg) rotateZ(-30deg);
  transform-style: preserve-3d;
}

.s6-division-page--landscaping .s6-landscape-system-visual span {
  width: auto;
  height: .82rem;
  min-height: .82rem;
  padding: 0;
  display: block;
  color: transparent;
  font-size: 0;
  transform: translateX(calc(var(--land-layer, 0) * .42rem));
  border: 1px solid rgba(33,40,30,.14);
  border-radius: .18rem;
  box-shadow:
    .18rem .24rem .32rem rgba(38,42,31,.13),
    inset .12rem .04rem rgba(255,255,255,.38);
}

.s6-division-page--landscaping .s6-landscape-system-visual span:nth-child(1) { --land-layer: 0; width: 78%; background: linear-gradient(135deg, #80725c, #d8c7a8); }
.s6-division-page--landscaping .s6-landscape-system-visual span:nth-child(2) { --land-layer: 1; width: 86%; background: linear-gradient(135deg, #5f6d47, #b8c991); }
.s6-division-page--landscaping .s6-landscape-system-visual span:nth-child(3) { --land-layer: 2; width: 68%; background: linear-gradient(135deg, #353b2c, #8ec640); }
.s6-division-page--landscaping .s6-landscape-system-visual span:nth-child(4) { --land-layer: 3; width: 82%; background: linear-gradient(135deg, #2f4537, #a9d671); }

.s6-division-page--landscaping .s6-landscape-system-visual--retaining span:nth-child(2),
.s6-division-page--landscaping .s6-landscape-system-visual--retaining span:nth-child(3) { background: linear-gradient(135deg, #6e6a5a, #c7b993); }
.s6-division-page--landscaping .s6-landscape-system-visual--water span:nth-child(3) { background: linear-gradient(135deg, #42656a, #9ecdd0); }
.s6-division-page--landscaping .s6-landscape-system-visual--siteworks span:nth-child(2) { background: linear-gradient(135deg, #5f513d, #b99562); }

.s6-division-page--landscaping .s6-landscape-system-card__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(.92) contrast(1.02);
  transition: transform .35s ease, filter .35s ease;
}

.s6-division-page--landscaping .s6-landscape-classification-card:hover .s6-landscape-system-card__image,
.s6-division-page--landscaping .s6-landscape-classification-card:focus-visible .s6-landscape-system-card__image {
  transform: scale(1.035);
  filter: saturate(1.05) contrast(1.04);
}

.s6-division-page--landscaping .s6-landscape-classification-card .s6-system-card__body {
  flex: 1 1 auto;
  display: grid;
  align-content: start;
  gap: .45rem;
}

.s6-division-page--landscaping .s6-landscape-classification-card .s6-system-card__body strong {
  min-height: 3.05rem;
  display: flex;
  align-items: flex-end;
  color: #171615;
  font-size: clamp(1.08rem, 1.35vw, 1.32rem);
  line-height: 1.12;
}

.s6-division-page--landscaping .s6-landscape-classification-card .s6-system-card__body small {
  min-height: 4.85rem;
  color: rgba(28,26,23,.66);
  line-height: 1.58;
}

.s6-division-page--landscaping .s6-landscape-classification-card .s6-system-card__specs {
  margin-top: auto;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid rgba(31,28,24,.11);
}

.s6-division-page--landscaping .s6-landscape-classification-card .s6-system-card__spec {
  min-width: 0;
  padding: .82rem .62rem .2rem;
  border-right: 1px solid rgba(31,28,24,.10);
}

.s6-division-page--landscaping .s6-landscape-classification-card .s6-system-card__spec:last-child { border-right: 0; }

.s6-division-page--landscaping .s6-landscape-classification-card .s6-system-card__spec span,
.s6-division-page--landscaping .s6-landscape-classification-card .s6-system-card__spec strong {
  display: block;
  overflow-wrap: anywhere;
}

.s6-division-page--landscaping .s6-landscape-classification-card .s6-system-card__spec span {
  font-size: .58rem;
  letter-spacing: .13em;
  text-transform: uppercase;
  color: rgba(28,26,23,.48);
}

.s6-division-page--landscaping .s6-landscape-classification-card .s6-system-card__spec strong {
  margin-top: .22rem;
  font-size: .78rem;
  line-height: 1.15;
  color: #171615;
}

.s6-division-page--landscaping .s6-landscape-explainer-section {
  padding: clamp(5.75rem, 9vw, 8.5rem) 0;
  background:
    radial-gradient(circle at 14% 10%, rgba(142,198,64,.10), transparent 30%),
    linear-gradient(180deg, #eee7da 0%, #f8f4ec 100%);
}

.s6-division-page--landscaping .s6-landscape-system-explainer.s6-coatings-system-explainer {
  display: grid;
  grid-template-columns: minmax(360px, 1.06fr) minmax(0, .94fr);
  gap: clamp(22px, 3.5vw, 44px);
  align-items: stretch;
  margin-top: clamp(24px, 4vw, 42px);
  padding: clamp(24px, 3.2vw, 38px);
  background:
    linear-gradient(135deg, rgba(246,244,238,.88), rgba(225,218,205,.68)),
    repeating-linear-gradient(0deg, rgba(31,36,31,.035) 0 1px, transparent 1px 20px),
    repeating-linear-gradient(90deg, rgba(31,36,31,.03) 0 1px, transparent 1px 20px);
  border: 1px solid rgba(31,39,32,.18);
  box-shadow: inset 0 10px 28px rgba(38,35,28,.055), inset 0 -10px 26px rgba(255,255,255,.34);
}

.s6-division-page--landscaping .s6-landscape-system-explainer__visual-stack {
  display: grid;
  grid-template-rows: minmax(340px, 1fr) auto auto;
  gap: 14px;
  min-height: 520px;
}

.s6-division-page--landscaping .s6-landscape-system-explainer__visual {
  min-height: clamp(18rem, 34vw, 29rem);
  border: 1px solid rgba(31,28,24,.13);
  box-shadow: 0 22px 48px rgba(34,28,22,.13);
}

.s6-division-page--landscaping .s6-landscape-system-explainer__pills {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .65rem;
  position: static;
  transform: none;
}

.s6-division-page--landscaping .s6-landscape-system-explainer__pills .s6-explainer-hotspot {
  position: static;
  width: auto;
  min-height: 3.45rem;
  border-radius: 0;
  background: rgba(255,255,255,.58);
  border: 1px solid rgba(32,40,31,.14);
  color: #171615;
  box-shadow: none;
}

.s6-division-page--landscaping .s6-landscape-system-explainer__pills .s6-explainer-hotspot span {
  display: block;
  transform: none;
  font-size: .72rem;
  letter-spacing: .16em;
  color: inherit;
}

.s6-division-page--landscaping .s6-landscape-system-explainer__pills .s6-explainer-hotspot:hover,
.s6-division-page--landscaping .s6-landscape-system-explainer__pills .s6-explainer-hotspot:focus-visible,
.s6-division-page--landscaping .s6-landscape-system-explainer__pills .s6-explainer-hotspot.is-active {
  background: #8ec640;
  color: #10110f;
  border-color: rgba(142,198,64,.85);
}

.s6-division-page--landscaping .s6-landscape-system-explainer__copy { min-width: 0; }

.s6-division-page--landscaping .s6-landscape-system-explainer__detail-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .75rem;
  margin-top: 1.1rem;
}

.s6-division-page--landscaping .s6-landscape-system-explainer__detail-panel,
.s6-division-page--landscaping .s6-coatings-system-explainer__detail-panel.s6-landscape-system-explainer__detail-panel {
  min-width: 0;
  padding: .95rem;
  background: rgba(255,255,255,.48);
  border: 1px solid rgba(32,40,31,.12);
}

.s6-division-page--landscaping .s6-landscape-catalogue {
  padding: clamp(5.75rem, 9vw, 8.5rem) 0;
  background:
    radial-gradient(circle at 84% 8%, rgba(142,198,64,.10), transparent 30%),
    linear-gradient(180deg, #f7f2e9 0%, #ebe4d5 100%);
}

.s6-landscape-catalogue .s6-stone-catalogue-group {
  background:
    linear-gradient(145deg, rgba(255,255,255,.88), rgba(235,228,214,.9)),
    radial-gradient(circle at 92% 10%, rgba(142,198,64,.08), transparent 32%);
  border-color: rgba(31,45,28,.15);
}

.s6-landscape-catalogue .s6-stone-catalogue-group__head h3,
.s6-landscape-catalogue .s6-stone-product-card__content h4 { color: #171615; }

.s6-landscape-catalogue .s6-stone-catalogue-group__head p:not(.s6-section-label),
.s6-landscape-catalogue .s6-stone-product-card__content p { color: rgba(28,26,23,.66); }

.s6-landscape-catalogue .s6-stone-product-card__image {
  min-height: 12.5rem;
  background-image: var(--s6-stone-product-bg);
  background-size: cover;
  background-position: center;
}

.s6-landscape-catalogue .s6-stone-catalogue-group__toggle:hover {
  border-color: rgba(142,198,64,.75);
  color: #111;
}

@media (max-width: 1180px) {
  .s6-division-page--landscaping .s6-landscape-system-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .s6-division-page--landscaping .s6-landscape-system-explainer.s6-coatings-system-explainer {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .s6-division-page--landscaping .s6-landscape-system-card-grid,
  .s6-division-page--landscaping .s6-landscape-system-explainer__detail-grid,
  .s6-division-page--landscaping .s6-landscape-system-explainer__pills {
    grid-template-columns: 1fr;
  }
  .s6-division-page--landscaping .s6-landscape-classification-card {
    min-height: auto;
  }
  .s6-division-page--landscaping .s6-landscape-classification-card__visual,
  .s6-division-page--landscaping .s6-landscape-classification-card .s6-system-card__body strong,
  .s6-division-page--landscaping .s6-landscape-classification-card .s6-system-card__body small {
    min-height: 0;
    flex-basis: auto;
  }
  .s6-division-page--landscaping .s6-landscape-classification-card .s6-system-card__specs {
    grid-template-columns: 1fr;
  }
  .s6-division-page--landscaping .s6-landscape-classification-card .s6-system-card__spec {
    border-right: 0;
    border-bottom: 1px solid rgba(31,28,24,.10);
  }
  .s6-division-page--landscaping .s6-landscape-classification-card .s6-system-card__spec:last-child {
    border-bottom: 0;
  }
}


.s6-division-page--landscaping .s6-landscape-system-explainer.s6-coatings-system-explainer {
  display: grid;
  grid-template-columns: minmax(360px, 1.06fr) minmax(0, .94fr);
  gap: clamp(22px, 3.5vw, 44px);
  align-items: stretch;
  margin-top: clamp(24px, 4vw, 42px);
  padding: clamp(24px, 3.2vw, 38px);
  background:
    linear-gradient(135deg, rgba(246,244,238,.88), rgba(225,218,205,.68)),
    repeating-linear-gradient(0deg, rgba(31,36,31,.035) 0 1px, transparent 1px 20px),
    repeating-linear-gradient(90deg, rgba(31,36,31,.03) 0 1px, transparent 1px 20px);
  border: 1px solid rgba(31,39,32,.18);
  box-shadow: inset 0 10px 28px rgba(38,35,28,.055), inset 0 -10px 26px rgba(255,255,255,.34);
}

.s6-division-page--landscaping .s6-landscape-system-explainer__visual-stack {
  display: grid;
  grid-template-rows: minmax(340px, 1fr) auto auto;
  gap: 14px;
  min-height: 520px;
}

.s6-division-page--landscaping .s6-landscape-system-explainer__visual.s6-coatings-system-explainer__visual {
  min-height: 0;
  height: 100%;
  padding: 0;
  align-content: stretch;
  background: linear-gradient(180deg, rgba(0,0,0,.04), rgba(0,0,0,.1)), var(--s6-division-detail-bg) center/cover no-repeat;
  border: 1px solid rgba(28,34,29,.22);
  position: relative;
  overflow: hidden;
  box-shadow: none;
}

.s6-division-page--landscaping .s6-landscape-system-explainer__visual.s6-coatings-system-explainer__visual::before {
  content: "";
  position: absolute;
  inset: 14px;
  border: 1px solid rgba(255,255,255,.22);
  z-index: 1;
  pointer-events: none;
}

.s6-division-page--landscaping .s6-landscape-system-explainer__pills.s6-coatings-system-explainer__pills {
  position: relative;
  z-index: 3;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
  padding: 0;
  background: none;
  box-shadow: none;
  transform: none;
}

.s6-division-page--landscaping .s6-landscape-system-explainer__pills.s6-coatings-system-explainer__pills .s6-explainer-hotspot {
  position: static;
  width: auto;
  height: auto;
  min-height: 44px;
  border-radius: 0;
  padding: 11px 10px;
  background: rgba(12,15,13,.72);
  border: 1px solid rgba(255,255,255,.22);
  color: #f6f4ef;
  box-shadow: none;
  transform: none;
}

.s6-division-page--landscaping .s6-landscape-system-explainer__pills.s6-coatings-system-explainer__pills .s6-explainer-hotspot span {
  position: static;
  width: auto;
  height: auto;
  display: block;
  background: none;
  border: 0;
  color: inherit;
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  white-space: nowrap;
  transform: none;
}

.s6-division-page--landscaping .s6-landscape-system-explainer__pills.s6-coatings-system-explainer__pills .s6-explainer-hotspot:hover,
.s6-division-page--landscaping .s6-landscape-system-explainer__pills.s6-coatings-system-explainer__pills .s6-explainer-hotspot:focus-visible,
.s6-division-page--landscaping .s6-landscape-system-explainer__pills.s6-coatings-system-explainer__pills .s6-explainer-hotspot.is-active {
  background: #8ec640;
  border-color: #8ec640;
  color: #111;
}

.s6-division-page--landscaping .s6-landscape-system-explainer__copy.s6-coatings-system-explainer__copy {
  min-height: 520px;
  padding: clamp(14px, 2vw, 22px) clamp(8px, 1.2vw, 16px);
  display: grid;
  align-items: stretch;
  position: relative;
  min-width: 0;
}

.s6-division-page--landscaping .s6-landscape-system-explainer.s6-coatings-system-explainer .s6-division-explainer__default,
.s6-division-page--landscaping .s6-landscape-system-explainer.s6-coatings-system-explainer .s6-division-explainer__point-system {
  grid-area: 1 / 1;
  min-height: 100%;
  display: grid;
  grid-template-rows: auto auto 1fr auto;
  align-content: stretch;
  gap: 14px;
  opacity: 1;
  transition: opacity .22s ease;
}

.s6-division-page--landscaping .s6-landscape-system-explainer.s6-coatings-system-explainer .s6-division-explainer__point-system {
  opacity: 0;
  pointer-events: none;
}

.s6-division-page--landscaping .s6-landscape-system-explainer.s6-coatings-system-explainer.is-hotspot-active .s6-division-explainer__default { opacity: 0; }
.s6-division-page--landscaping .s6-landscape-system-explainer.s6-coatings-system-explainer.is-hotspot-active .s6-division-explainer__point-system,
.s6-division-page--landscaping .s6-landscape-system-explainer.s6-coatings-system-explainer .s6-division-explainer__point-system.is-visible {
  opacity: 1;
  pointer-events: auto;
}

.s6-division-page--landscaping .s6-landscape-system-explainer.s6-coatings-system-explainer .s6-division-explainer__default > span,
.s6-division-page--landscaping .s6-landscape-system-explainer.s6-coatings-system-explainer .s6-division-explainer__point-system > span {
  display: inline-flex;
  width: fit-content;
  color: #6f7a34;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
}

.s6-division-page--landscaping .s6-landscape-system-explainer.s6-coatings-system-explainer h3 {
  margin: 0;
  color: #1d231f;
  font-size: clamp(1.45rem, 2.35vw, 2.45rem);
  line-height: .98;
  letter-spacing: -.055em;
  text-transform: uppercase;
  max-width: 14ch;
}

.s6-division-page--landscaping .s6-landscape-system-explainer.s6-coatings-system-explainer p {
  align-self: center;
  margin: 0;
  color: rgba(29,35,31,.74);
  font-size: .98rem;
  line-height: 1.75;
  max-width: 58ch;
}

.s6-division-page--landscaping .s6-landscape-system-explainer__overview-points,
.s6-division-page--landscaping .s6-landscape-system-explainer__detail-grid,
.s6-division-page--landscaping .s6-landscape-system-explainer.s6-coatings-system-explainer .s6-division-explainer__point-system ul {
  align-self: end;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
  border: 0;
}

.s6-division-page--landscaping .s6-landscape-system-explainer__overview-points li,
.s6-division-page--landscaping .s6-landscape-system-explainer.s6-coatings-system-explainer .s6-division-explainer__point-system li {
  min-height: 58px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 10px 12px;
  background: rgba(255,255,255,.46);
  border: 1px solid rgba(31,39,32,.12);
  color: rgba(29,35,31,.76);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.s6-division-page--landscaping .s6-landscape-system-explainer__detail-panel,
.s6-division-page--landscaping .s6-coatings-system-explainer__detail-panel.s6-landscape-system-explainer__detail-panel,
.s6-division-page--landscaping .s6-coatings-system-explainer__detail-panel.s6-caulking-system-explainer__detail-panel {
  min-width: 0;
  padding: .95rem;
  background: rgba(255,255,255,.48);
  border: 1px solid rgba(32,40,31,.12);
}

.s6-division-page--landscaping .s6-landscape-system-explainer__detail-panel h4,
.s6-division-page--landscaping .s6-landscape-system-explainer__overview-panel h4,
.s6-division-page--landscaping .s6-coatings-system-explainer__detail-panel h4 {
  margin: 0 0 10px;
  color: #1d231f;
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.s6-division-page--landscaping .s6-landscape-system-explainer__hint p {
  margin: 0;
  color: rgba(29,35,31,.58);
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

@media (max-width: 1180px) {
  .s6-division-page--landscaping .s6-landscape-system-explainer.s6-coatings-system-explainer {
    grid-template-columns: 1fr;
  }
  .s6-division-page--landscaping .s6-landscape-system-explainer__copy,
  .s6-division-page--landscaping .s6-landscape-system-explainer__visual {
    min-height: auto;
  }
  .s6-division-page--landscaping .s6-landscape-system-explainer__visual-stack {
    min-height: auto;
  }
  .s6-division-page--landscaping .s6-landscape-system-explainer__visual {
    min-height: 420px;
  }
}

@media (max-width: 720px) {
  .s6-division-page--landscaping .s6-landscape-system-explainer__pills,
  .s6-division-page--landscaping .s6-landscape-system-explainer__overview-points,
  .s6-division-page--landscaping .s6-landscape-system-explainer__detail-grid,
  .s6-division-page--landscaping .s6-landscape-system-explainer.s6-coatings-system-explainer .s6-division-explainer__point-system ul {
    grid-template-columns: 1fr;
  }
  .s6-division-page--landscaping .s6-landscape-system-explainer.s6-coatings-system-explainer {
    padding: 18px;
  }
  .s6-division-page--landscaping .s6-landscape-system-explainer.s6-coatings-system-explainer h3 {
    max-width: none;
  }
}

.s6-division-page--exterior-restoration .s6-restoration-systems--classification {
  background:
    radial-gradient(circle at 12% 8%, rgba(142,198,64,.10), transparent 28rem),
    linear-gradient(180deg, #f3efe6 0%, #e7dfd0 100%);
}

.s6-division-page--exterior-restoration .s6-restoration-system-card-grid {
  display: grid;
  gap: clamp(1rem, 1.7vw, 1.45rem);
  align-items: stretch;
}

.s6-division-page--exterior-restoration .s6-restoration-classification-card {
  position: relative;
  min-height: 34rem;
  padding: clamp(1.25rem, 1.55vw, 1.55rem);
  display: flex !important;
  flex-direction: column !important;
  gap: .85rem;
  border-radius: 0;
  overflow: hidden;
  background: linear-gradient(180deg, rgba(235,230,219,.97), rgba(207,198,181,.94));
  border-top: 1px solid rgba(32,40,31,.22);
  border-left: 1px solid rgba(32,40,31,.18);
  border-right: 1px solid rgba(255,255,255,.52);
  border-bottom: 1px solid rgba(255,255,255,.58);
  box-shadow: inset 0 .9rem 1.75rem rgba(39,42,31,.075), inset 0 -.45rem .9rem rgba(255,255,255,.36);
  transform: none;
  transition: border-color .24s ease, box-shadow .24s ease, background-color .24s ease;
}

.s6-division-page--exterior-restoration .s6-restoration-classification-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(142,198,64,.18), transparent 35%),
    repeating-linear-gradient(0deg, rgba(31,36,31,.028) 0 1px, transparent 1px 19px);
  opacity: .58;
  pointer-events: none;
}

.s6-division-page--exterior-restoration .s6-restoration-classification-card:hover,
.s6-division-page--exterior-restoration .s6-restoration-classification-card:focus-visible {
  border-top-color: rgba(142,198,64,.52);
  border-left-color: rgba(142,198,64,.42);
  outline: none;
}

.s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__top,
.s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__body,
.s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__specs,
.s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__rule,
.s6-division-page--exterior-restoration .s6-restoration-classification-card__visual {
  position: relative;
  z-index: 2;
}

.s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__top {
  min-height: 3.25rem;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}

.s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__top > div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: .35rem;
}

.s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__kicker,
.s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__label,
.s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__badge {
  display: block;
}

.s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__kicker {
  font-size: .63rem;
  line-height: 1;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: rgba(32,35,30,.68);
  font-weight: 800;
}

.s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__label {
  font-size: clamp(1.05rem, 1.45vw, 1.35rem);
  line-height: 1.05;
  font-weight: 900;
  color: #171814;
}

.s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__badge {
  width: 2.8rem;
  height: 2.8rem;
  flex: 0 0 2.8rem;
  display: grid;
  place-items: center;
  border: 1px solid rgba(142,198,64,.72);
  background: rgba(235,242,220,.55);
  color: #7fc338;
  font-weight: 900;
  font-size: 1.05rem;
}

.s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__rule {
  width: 1.45rem;
  height: 1px;
  background: #8ec640;
  display: block;
  margin: .25rem 0 .2rem;
}

.s6-division-page--exterior-restoration .s6-restoration-classification-card__visual {
  min-height: clamp(11rem, 13vw, 14rem);
  display: grid;
  place-items: center;
}

.s6-division-page--exterior-restoration .s6-restoration-system-card__image {
  display: block;
  width: min(92%, 18rem);
  height: auto;
  max-height: 14rem;
  object-fit: contain;
  filter: drop-shadow(0 1rem 1.35rem rgba(20,24,18,.18));
  transition: transform .28s ease, filter .28s ease;
}

.s6-division-page--exterior-restoration .s6-restoration-classification-card:hover .s6-restoration-system-card__image,
.s6-division-page--exterior-restoration .s6-restoration-classification-card:focus-visible .s6-restoration-system-card__image {
  transform: translateY(-.2rem) scale(1.025);
  filter: drop-shadow(0 1.2rem 1.6rem rgba(20,24,18,.22));
}

.s6-division-page--exterior-restoration .s6-restoration-system-visual {
  width: min(86%, 18rem);
  min-height: 9.5rem;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: .22rem;
  transform: perspective(36rem) rotateX(54deg) rotateZ(-10deg);
  filter: drop-shadow(0 1rem 1.2rem rgba(20,24,18,.16));
}

.s6-division-page--exterior-restoration .s6-restoration-system-visual span {
  display: block;
  width: 2.2rem;
  min-height: 6rem;
  border: 1px solid rgba(20,24,18,.16);
  background: linear-gradient(135deg, rgba(250,248,240,.95), rgba(172,164,148,.86));
}

.s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__body {
  min-height: 9.25rem;
  display: flex;
  flex-direction: column;
  gap: .65rem;
}

.s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__body strong {
  display: block;
  min-height: 3rem;
  font-size: clamp(1.35rem, 1.5vw, 1.7rem);
  line-height: .98;
  letter-spacing: -.055em;
  text-transform: uppercase;
  color: #171814;
}

.s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__body small {
  display: block;
  font-size: .98rem;
  line-height: 1.55;
  color: rgba(31,34,30,.74);
}

.s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__specs {
  margin-top: auto;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border: 1px solid rgba(40,45,35,.12);
  background: rgba(238,233,222,.58);
}

.s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__spec {
  min-width: 0;
  padding: .78rem .7rem;
  border-right: 1px solid rgba(40,45,35,.11);
}
.s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__spec:last-child { border-right: 0; }

.s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__spec span {
  display: block;
  font-size: .65rem;
  line-height: 1.1;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: #8ec640;
  font-weight: 900;
  overflow-wrap: anywhere;
}

.s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__spec strong {
  display: block;
  margin-top: .35rem;
  font-size: .9rem;
  line-height: 1.2;
  color: #171814;
  overflow-wrap: anywhere;
}

.s6-division-page--exterior-restoration .s6-restoration-explainer-section {
  background: linear-gradient(180deg, #f3efe6 0%, #e7dfd0 100%);
}

.s6-division-page--exterior-restoration .s6-restoration-system-explainer.s6-coatings-system-explainer {
  display: grid;
  grid-template-columns: minmax(18rem, .95fr) minmax(20rem, 1.05fr);
  gap: clamp(1.1rem, 2.2vw, 2rem);
  align-items: stretch;
  border: 1px solid rgba(32,40,31,.14);
  background: rgba(245,241,231,.76);
  box-shadow: 0 1.4rem 3rem rgba(21,26,20,.09);
  padding: clamp(1rem, 1.6vw, 1.45rem);
}

.s6-division-page--exterior-restoration .s6-restoration-system-explainer__visual-stack {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: .85rem;
}

.s6-division-page--exterior-restoration .s6-restoration-system-explainer__visual.s6-coatings-system-explainer__visual {
  min-height: clamp(20rem, 32vw, 30rem);
  border: 1px solid rgba(32,40,31,.12);
  background-image: linear-gradient(180deg, rgba(26,30,24,.12), rgba(26,30,24,.2)), var(--s6-division-detail-bg);
  background-size: cover;
  background-position: center;
  overflow: hidden;
}

.s6-division-page--exterior-restoration .s6-restoration-system-explainer__pills.s6-coatings-system-explainer__pills {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .55rem;
}

.s6-division-page--exterior-restoration .s6-restoration-system-explainer__pills.s6-coatings-system-explainer__pills .s6-explainer-hotspot {
  position: static;
  transform: none;
  width: auto;
  min-height: 3rem;
  border: 1px solid rgba(32,40,31,.14);
  border-radius: 0;
  background: rgba(250,247,239,.86);
  color: #172014;
  box-shadow: none;
  padding: .65rem .75rem;
  text-align: left;
}

.s6-division-page--exterior-restoration .s6-restoration-system-explainer__pills.s6-coatings-system-explainer__pills .s6-explainer-hotspot span {
  font-size: .7rem;
  letter-spacing: .08em;
  font-weight: 900;
  text-transform: uppercase;
}

.s6-division-page--exterior-restoration .s6-restoration-system-explainer__pills.s6-coatings-system-explainer__pills .s6-explainer-hotspot:hover,
.s6-division-page--exterior-restoration .s6-restoration-system-explainer__pills.s6-coatings-system-explainer__pills .s6-explainer-hotspot:focus-visible,
.s6-division-page--exterior-restoration .s6-restoration-system-explainer__pills.s6-coatings-system-explainer__pills .s6-explainer-hotspot.is-active {
  background: #8ec640;
  color: #11170f;
  outline: none;
}

.s6-division-page--exterior-restoration .s6-restoration-system-explainer__copy.s6-coatings-system-explainer__copy {
  position: relative;
  min-height: clamp(20rem, 32vw, 30rem);
  border: 1px solid rgba(32,40,31,.12);
  background: rgba(250,247,239,.9);
  padding: clamp(1.2rem, 1.8vw, 1.85rem);
  overflow: hidden;
}

.s6-division-page--exterior-restoration .s6-restoration-system-explainer.s6-coatings-system-explainer .s6-division-explainer__default,
.s6-division-page--exterior-restoration .s6-restoration-system-explainer.s6-coatings-system-explainer .s6-division-explainer__point-system {
  position: absolute;
  inset: clamp(1.2rem, 1.8vw, 1.85rem);
  transition: opacity .22s ease, transform .22s ease;
}

.s6-division-page--exterior-restoration .s6-restoration-system-explainer.s6-coatings-system-explainer .s6-division-explainer__point-system {
  opacity: 0;
  pointer-events: none;
  transform: translateY(.5rem);
}

.s6-division-page--exterior-restoration .s6-restoration-system-explainer.s6-coatings-system-explainer.is-hotspot-active .s6-division-explainer__default { opacity: 0; }
.s6-division-page--exterior-restoration .s6-restoration-system-explainer.s6-coatings-system-explainer.is-hotspot-active .s6-division-explainer__point-system,
.s6-division-page--exterior-restoration .s6-restoration-system-explainer.s6-coatings-system-explainer .s6-division-explainer__point-system.is-visible {
  opacity: 1;
  pointer-events: auto;
  transform: translateY(0);
}

.s6-division-page--exterior-restoration .s6-restoration-system-explainer.s6-coatings-system-explainer h3 {
  font-size: clamp(2rem, 3vw, 3.4rem);
  line-height: .95;
  letter-spacing: -.075em;
  color: #151813;
  margin: .35rem 0 1rem;
}

.s6-division-page--exterior-restoration .s6-restoration-system-explainer.s6-coatings-system-explainer p {
  color: rgba(29,34,27,.72);
  line-height: 1.62;
}

.s6-division-page--exterior-restoration .s6-restoration-system-explainer__detail-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .7rem;
  margin-top: 1.2rem;
}

.s6-division-page--exterior-restoration .s6-restoration-system-explainer__detail-panel,
.s6-division-page--exterior-restoration .s6-coatings-system-explainer__detail-panel.s6-restoration-system-explainer__detail-panel {
  border: 1px solid rgba(32,40,31,.12);
  background: rgba(242,238,227,.82);
  padding: .9rem;
}

.s6-division-page--exterior-restoration .s6-restoration-system-explainer__detail-panel h4 {
  margin: 0 0 .55rem;
  font-size: .72rem;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: #8ec640;
}

.s6-division-page--exterior-restoration .s6-restoration-system-explainer__detail-panel ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.s6-division-page--exterior-restoration .s6-restoration-system-explainer__detail-panel li {
  font-size: .82rem;
  line-height: 1.45;
  color: rgba(24,29,22,.78);
}

@media (max-width: 980px) {
  .s6-division-page--exterior-restoration .s6-restoration-system-explainer.s6-coatings-system-explainer {
    grid-template-columns: 1fr;
  }
  .s6-division-page--exterior-restoration .s6-restoration-system-explainer__detail-grid,
  .s6-division-page--exterior-restoration .s6-restoration-system-explainer__pills.s6-coatings-system-explainer__pills {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .s6-division-page--exterior-restoration .s6-restoration-classification-card {
    min-height: auto;
  }
  .s6-division-page--exterior-restoration .s6-restoration-classification-card__visual,
  .s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__body strong,
  .s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__body small {
    min-height: auto;
  }
  .s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__specs {
    grid-template-columns: 1fr;
  }
  .s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__spec {
    border-right: 0;
    border-bottom: 1px solid rgba(40,45,35,.11);
  }
  .s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__spec:last-child {
    border-bottom: 0;
  }
}


.s6-division-page--stucco .s6-division-project-board {
    margin-top: clamp(1.75rem, 3vw, 2.8rem) !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

.s6-division-page--stucco .s6-division-project-feature-grid {
    margin-bottom: clamp(1.15rem, 2vw, 1.55rem) !important;
}

.s6-division-page--stucco .s6-division-project-latest-head {
    margin-top: clamp(1.2rem, 2vw, 1.6rem) !important;
}

.s6-division-page--stucco .s6-division-projects .s6-division-project-card a,
.s6-division-page--stucco .s6-division-projects .s6-division-project-feature a {
    box-shadow:
        0 1.25rem 3rem rgba(20,24,22,.075),
        inset 0 1px 0 rgba(255,255,255,.58) !important;
}

.s6-division-page--stucco .s6-faq-list {
    display: grid;
    gap: .85rem;
    border-top: 0 !important;
}

.s6-division-page--stucco .s6-faq-item {
    border-bottom: 0 !important;
}

.s6-division-page--stucco .s6-faq-question {
    min-height: 4.45rem;
    padding: 1rem 1.15rem 1rem 1.35rem !important;
    background:
        linear-gradient(135deg, rgba(255,255,255,.64), rgba(244,242,235,.78));
    border: 1px solid rgba(16,19,15,.12) !important;
    border-radius: 1rem;
    box-shadow:
        0 .9rem 2.25rem rgba(20,24,22,.055),
        inset 0 1px 0 rgba(255,255,255,.72);
    transition: background .25s ease, border-color .25s ease, box-shadow .25s ease, transform .25s ease;
}

.s6-division-page--stucco .s6-faq-question:hover,
.s6-division-page--stucco .s6-faq-question:focus-visible,
.s6-division-page--stucco .s6-faq-question[aria-expanded="true"] {
    background:
        linear-gradient(135deg, rgba(255,255,255,.78), rgba(246,244,238,.94));
    border-color: rgba(142,198,64,.52) !important;
    box-shadow:
        0 1.15rem 2.85rem rgba(20,24,22,.075),
        inset 0 1px 0 rgba(255,255,255,.8);
    transform: translateY(-1px);
}

.s6-division-page--stucco .s6-faq-question span {
    padding-right: 1rem;
}

.s6-division-page--stucco .s6-faq-question em {
    width: 2.15rem;
    height: 2.15rem;
    flex: 0 0 2.15rem;
    display: inline-grid;
    place-items: center;
    border-radius: 999px;
    background: rgba(142,198,64,.14);
    border: 1px solid rgba(142,198,64,.35);
    color: var(--s6-green) !important;
    line-height: 1;
    font-size: 1.25rem !important;
    transition: background .25s ease, transform .25s ease;
}

.s6-division-page--stucco .s6-faq-question[aria-expanded="true"] em {
    background: rgba(142,198,64,.2);
    transform: rotate(180deg);
}

.s6-division-page--stucco .s6-faq-answer {
    margin: .55rem clamp(.75rem, 2vw, 1.65rem) .2rem clamp(1.4rem, 3vw, 3rem);
    padding: clamp(1rem, 2vw, 1.35rem) clamp(1.1rem, 2.2vw, 1.55rem);
    background:
        linear-gradient(135deg, rgba(255,255,255,.36), rgba(238,234,223,.72));
    border-left: 3px solid rgba(142,198,64,.82);
    border-top: 1px solid rgba(16,19,15,.08);
    border-right: 1px solid rgba(255,255,255,.58);
    border-bottom: 1px solid rgba(255,255,255,.64);
    border-radius: 0 1rem 1rem 0;
    box-shadow:
        inset 0 .85rem 1.8rem rgba(16,19,15,.045),
        0 .8rem 2rem rgba(20,24,22,.035);
}

.s6-division-page--stucco .s6-faq-answer p {
    max-width: 58rem !important;
    margin: 0 !important;
}

@media (max-width: 680px) {
    .s6-division-page--stucco .s6-faq-question {
        min-height: 4rem;
        border-radius: .9rem;
    }

    .s6-division-page--stucco .s6-faq-answer {
        margin-left: .8rem;
        margin-right: .35rem;
        border-radius: 0 .85rem .85rem 0;
    }
}


.s6-division-page--stucco .s6-division-projects .s6-division-project-board {
    margin-top: clamp(1.75rem, 3vw, 2.8rem) !important;
    padding: 0 !important;
    background: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
}

.s6-division-page--stucco .s6-division-projects .s6-division-project-board::before,
.s6-division-page--stucco .s6-division-projects .s6-division-project-board::after {
    display: none !important;
    content: none !important;
}

.s6-division-page--stucco .s6-division-projects .s6-division-project-latest-head {
    margin: clamp(1.1rem, 2vw, 1.45rem) 0 .9rem !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

.s6-division-page--stucco .s6-division-projects .s6-division-project-latest-head::after {
    opacity: .28 !important;
}

.s6-division-page--stucco .s6-faq-list {
    display: grid !important;
    gap: .95rem !important;
    border-top: 0 !important;
}

.s6-division-page--stucco .s6-faq-item {
    border-bottom: 0 !important;
}

.s6-division-page--stucco .s6-faq-question {
    min-height: 4.35rem !important;
    padding: 1rem 1.05rem 1rem 1.35rem !important;
    background:
        linear-gradient(180deg, rgba(255,255,255,.86), rgba(238,235,225,.82)) !important;
    border: 1px solid rgba(16,19,15,.14) !important;
    border-radius: 999px !important;
    box-shadow:
        0 .75rem 1.8rem rgba(20,24,22,.06),
        inset 0 1px 0 rgba(255,255,255,.82),
        inset 0 -1px 0 rgba(16,19,15,.055) !important;
    transition: transform .24s ease, border-color .24s ease, box-shadow .24s ease, background .24s ease !important;
}

.s6-division-page--stucco .s6-faq-question:hover,
.s6-division-page--stucco .s6-faq-question:focus-visible,
.s6-division-page--stucco .s6-faq-question[aria-expanded="true"] {
    transform: translateY(-1px) !important;
    border-color: rgba(142,198,64,.62) !important;
    background:
        linear-gradient(180deg, rgba(255,255,255,.96), rgba(244,242,235,.94)) !important;
    box-shadow:
        0 1rem 2.35rem rgba(20,24,22,.08),
        inset 0 1px 0 rgba(255,255,255,.9),
        inset 0 -1px 0 rgba(142,198,64,.16) !important;
}

.s6-division-page--stucco .s6-faq-question em {
    width: 2.35rem !important;
    height: 2.35rem !important;
    flex: 0 0 2.35rem !important;
    display: inline-grid !important;
    place-items: center !important;
    border-radius: 999px !important;
    background: rgba(142,198,64,.14) !important;
    border: 1px solid rgba(142,198,64,.42) !important;
    color: var(--s6-green) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.72) !important;
}

.s6-division-page--stucco .s6-faq-question[aria-expanded="true"] em {
    background: rgba(142,198,64,.22) !important;
    transform: rotate(45deg) !important;
}

.s6-division-page--stucco .s6-faq-answer {
    position: relative !important;
    margin: .55rem clamp(.8rem, 2vw, 1.4rem) .25rem clamp(2.1rem, 4vw, 4.25rem) !important;
    padding: clamp(1.05rem, 2vw, 1.45rem) clamp(1.15rem, 2.3vw, 1.75rem) !important;
    background:
        linear-gradient(90deg, rgba(142,198,64,.15), rgba(142,198,64,0) 1.15rem),
        linear-gradient(180deg, rgba(252,250,243,.92), rgba(235,231,219,.84)) !important;
    border: 1px solid rgba(16,19,15,.10) !important;
    border-left: 4px solid rgba(142,198,64,.86) !important;
    border-radius: .35rem 1.1rem 1.1rem .35rem !important;
    box-shadow:
        inset 0 .8rem 1.7rem rgba(16,19,15,.045),
        0 .8rem 2rem rgba(20,24,22,.04) !important;
}

.s6-division-page--stucco .s6-faq-answer::before,
.s6-division-page--stucco .s6-faq-answer::after {
    content: "" !important;
    position: absolute !important;
    left: .85rem !important;
    right: .85rem !important;
    height: 1px !important;
    background: linear-gradient(90deg, transparent, rgba(16,19,15,.12), transparent) !important;
    pointer-events: none !important;
}

.s6-division-page--stucco .s6-faq-answer::before { top: .7rem !important; }
.s6-division-page--stucco .s6-faq-answer::after { bottom: .7rem !important; }

@media (max-width: 680px) {
    .s6-division-page--stucco .s6-faq-question {
        min-height: 4rem !important;
        border-radius: 1.15rem !important;
    }

    .s6-division-page--stucco .s6-faq-answer {
        margin-left: .95rem !important;
        margin-right: .25rem !important;
    }
}


.s6-division-page--stucco .s6-division-projects .s6-division-project-board {
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
}

.s6-division-page--stucco .s6-division-projects .s6-division-project-board::before,
.s6-division-page--stucco .s6-division-projects .s6-division-project-board::after {
    display: none !important;
    content: none !important;
}

.s6-division-page--stucco .s6-faq-list {
    display: grid !important;
    gap: .72rem !important;
    border-top: 0 !important;
}

.s6-division-page--stucco .s6-faq-item {
    border-bottom: 0 !important;
}

.s6-division-page--stucco .s6-faq-question {
    min-height: 4.05rem !important;
    padding: .95rem 1rem .95rem 1.15rem !important;
    background: rgba(248,246,239,.92) !important;
    border: 1px solid rgba(28,32,24,.16) !important;
    border-left: 3px solid rgba(142,198,64,.58) !important;
    border-radius: .18rem !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.65) !important;
    transform: none !important;
    transition: background .18s ease, border-color .18s ease, box-shadow .18s ease !important;
}

.s6-division-page--stucco .s6-faq-question:hover,
.s6-division-page--stucco .s6-faq-question:focus-visible,
.s6-division-page--stucco .s6-faq-question[aria-expanded="true"] {
    background: rgba(253,251,244,.96) !important;
    border-color: rgba(28,32,24,.2) !important;
    border-left-color: rgba(142,198,64,.9) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.72) !important;
    transform: none !important;
}

.s6-division-page--stucco .s6-faq-question span {
    padding-right: 1rem !important;
}

.s6-division-page--stucco .s6-faq-question em {
    width: 2rem !important;
    height: 2rem !important;
    flex: 0 0 2rem !important;
    display: inline-grid !important;
    place-items: center !important;
    border-radius: .12rem !important;
    background: rgba(255,255,255,.62) !important;
    border: 1px solid rgba(28,32,24,.16) !important;
    color: rgba(49,62,35,.92) !important;
    box-shadow: none !important;
    transform: none !important;
    transition: background .18s ease, border-color .18s ease, transform .18s ease !important;
}

.s6-division-page--stucco .s6-faq-question[aria-expanded="true"] em {
    background: rgba(142,198,64,.12) !important;
    border-color: rgba(142,198,64,.48) !important;
    transform: rotate(45deg) !important;
}

.s6-division-page--stucco .s6-faq-answer {
    position: relative !important;
    margin: .45rem .25rem .25rem clamp(1.4rem, 3.2vw, 3rem) !important;
    padding: 1rem clamp(1rem, 2vw, 1.45rem) !important;
    background: rgba(243,240,231,.72) !important;
    border: 1px solid rgba(28,32,24,.12) !important;
    border-left: 3px solid rgba(142,198,64,.62) !important;
    border-radius: .12rem !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.34) !important;
}

.s6-division-page--stucco .s6-faq-answer::before,
.s6-division-page--stucco .s6-faq-answer::after {
    content: none !important;
    display: none !important;
}

.s6-division-page--stucco .s6-faq-answer p {
    max-width: 58rem !important;
    margin: 0 !important;
}

@media (max-width: 680px) {
    .s6-division-page--stucco .s6-faq-question {
        min-height: 3.85rem !important;
        border-radius: .16rem !important;
    }

    .s6-division-page--stucco .s6-faq-answer {
        margin-left: .85rem !important;
        margin-right: .1rem !important;
        border-radius: .12rem !important;
    }
}


.s6-division-page--stucco {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

.s6-division-page--stucco .s6-division-cta--v32 {
    margin-bottom: 0 !important;
}

.s6-division-page--stucco + .s6-footer,
.s6-footer {
    margin-top: 0 !important;
}


.s6-division-page--stucco .s6-division-projects .s6-division-section-header h2 {
    max-width: none !important;
    white-space: normal !important;
}

.s6-division-page--stucco .s6-division-projects .s6-division-project-feature a {
    display: block !important;
    min-height: clamp(20rem, 32vw, 28rem) !important;
    position: relative !important;
    overflow: hidden !important;
    background: #000 !important;
    border: 1px solid rgba(28, 32, 24, .16) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.s6-division-page--stucco .s6-division-projects .s6-division-project-feature a::before {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    background: linear-gradient(90deg, rgba(0,0,0,.78) 0%, rgba(0,0,0,.48) 42%, rgba(0,0,0,.08) 100%) !important;
    pointer-events: none !important;
}

.s6-division-page--stucco .s6-division-projects .s6-division-project-feature a::after {
    z-index: 4 !important;
    inset: 0 !important;
    border-color: rgba(255,255,255,.16) !important;
}

.s6-division-page--stucco .s6-division-projects .s6-division-project-feature a:hover::after,
.s6-division-page--stucco .s6-division-projects .s6-division-project-feature a:focus-visible::after {
    border-color: rgba(142,198,64,.72) !important;
}

.s6-division-page--stucco .s6-division-projects .s6-division-project-feature__image {
    position: absolute !important;
    inset: 0 !important;
    min-height: 100% !important;
    width: 100% !important;
    z-index: 0 !important;
    background: rgba(16,19,15,.12) !important;
}

.s6-division-page--stucco .s6-division-projects .s6-division-project-feature__image::before {
    inset: -8px !important;
    transform: scale(1) !important;
    filter: saturate(.9) contrast(1.03) !important;
}

.s6-division-page--stucco .s6-division-projects .s6-division-project-feature a:hover .s6-division-project-feature__image::before,
.s6-division-page--stucco .s6-division-projects .s6-division-project-feature a:focus-visible .s6-division-project-feature__image::before {
    transform: scale(1.04) !important;
    filter: saturate(1) contrast(1.06) !important;
}

.s6-division-page--stucco .s6-division-projects .s6-division-project-feature__image span {
    top: 24px !important;
    bottom: auto !important;
    left: 24px !important;
    z-index: 3 !important;
    min-height: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    color: var(--s6-green) !important;
    border: 0 !important;
    font-size: .62rem !important;
    letter-spacing: .22em !important;
}

.s6-division-page--stucco .s6-division-projects .s6-division-project-feature__content {
    position: absolute !important;
    left: clamp(1.5rem, 3vw, 3rem) !important;
    right: clamp(1.5rem, 3vw, 3rem) !important;
    bottom: clamp(1.5rem, 3vw, 3rem) !important;
    z-index: 3 !important;
    max-width: 34rem !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    color: #fff !important;
}

.s6-division-page--stucco .s6-division-projects .s6-division-project-feature__content small {
    color: rgba(255,255,255,.58) !important;
    letter-spacing: .2em !important;
}

.s6-division-page--stucco .s6-division-projects .s6-division-project-feature__content h3 {
    color: #fff !important;
    font-size: clamp(2rem, 3.8vw, 4.4rem) !important;
    line-height: .9 !important;
    letter-spacing: -.06em !important;
    text-transform: uppercase !important;
    text-shadow: 0 1.25rem 3rem rgba(0,0,0,.38) !important;
}

.s6-division-page--stucco .s6-division-projects .s6-division-project-feature__content p {
    color: var(--s6-green) !important;
    font-size: .68rem !important;
    font-weight: 900 !important;
    letter-spacing: .18em !important;
    text-transform: uppercase !important;
}

@media (max-width: 1050px) {
    .s6-division-page--stucco .s6-division-projects .s6-division-project-feature a {
        display: block !important;
        min-height: 24rem !important;
    }
}

@media (max-width: 680px) {
    .s6-division-page--stucco .s6-division-projects .s6-division-project-feature-grid {
        grid-template-columns: 1fr !important;
    }

    .s6-division-page--stucco .s6-division-projects .s6-division-project-feature a {
        min-height: 24rem !important;
    }

    .s6-division-page--stucco .s6-division-projects .s6-division-project-feature__image span {
        left: 18px !important;
        top: 18px !important;
    }

    .s6-division-page--stucco .s6-division-projects .s6-division-project-feature__content {
        left: 18px !important;
        right: 18px !important;
        bottom: 18px !important;
    }
}

.s6-division-page--stucco .s6-division-projects .s6-division-project-feature__content small {
    display: block !important;
    margin: 0 0 .65rem !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    color: var(--s6-green) !important;
    font-size: .68rem !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    letter-spacing: .2em !important;
    text-transform: uppercase !important;
    text-shadow: 0 .65rem 1.4rem rgba(0,0,0,.36) !important;
}

body.s6-division-current--stucco {
  --s6-division-theme-accent: #8EC640;
  --s6-division-theme-accent-soft: rgba(142, 198, 64, .18);
  --s6-division-theme-nav-bg: linear-gradient(135deg, rgba(238, 234, 224, .94), rgba(217, 211, 197, .9));
  --s6-division-theme-nav-ink: #11130f;
  --s6-division-theme-nav-muted: rgba(17, 19, 15, .56);
  --s6-division-theme-nav-border: rgba(35, 35, 30, .14);
}

body.s6-division-current--stone-masonry {
  --s6-division-theme-accent: #6f7476;
  --s6-division-theme-accent-soft: rgba(111, 116, 118, .2);
  --s6-division-theme-nav-bg: linear-gradient(135deg, rgba(241, 240, 236, .96), rgba(207, 209, 207, .92));
  --s6-division-theme-nav-ink: #181a19;
  --s6-division-theme-nav-muted: rgba(24, 26, 25, .58);
  --s6-division-theme-nav-border: rgba(34, 38, 37, .16);
}

body.s6-division-current--architectural-coatings {
  --s6-division-theme-accent: #4f8795;
  --s6-division-theme-accent-soft: rgba(79, 135, 149, .18);
  --s6-division-theme-nav-bg: linear-gradient(135deg, rgba(236, 242, 241, .96), rgba(204, 218, 219, .92));
  --s6-division-theme-nav-ink: #131b1d;
  --s6-division-theme-nav-muted: rgba(19, 27, 29, .58);
  --s6-division-theme-nav-border: rgba(30, 67, 74, .16);
}

body.s6-division-current--caulking {
  --s6-division-theme-accent: #58636a;
  --s6-division-theme-accent-soft: rgba(88, 99, 106, .18);
  --s6-division-theme-nav-bg: linear-gradient(135deg, rgba(239, 241, 240, .96), rgba(210, 215, 215, .92));
  --s6-division-theme-nav-ink: #151819;
  --s6-division-theme-nav-muted: rgba(21, 24, 25, .58);
  --s6-division-theme-nav-border: rgba(36, 46, 50, .16);
}

body.s6-division-current--landscaping {
  --s6-division-theme-accent: #6f8b55;
  --s6-division-theme-accent-soft: rgba(111, 139, 85, .18);
  --s6-division-theme-nav-bg: linear-gradient(135deg, rgba(239, 242, 234, .96), rgba(210, 220, 199, .92));
  --s6-division-theme-nav-ink: #171c14;
  --s6-division-theme-nav-muted: rgba(23, 28, 20, .58);
  --s6-division-theme-nav-border: rgba(52, 75, 42, .16);
}

body.s6-division-current--exterior-restoration {
  --s6-division-theme-accent: #8b765d;
  --s6-division-theme-accent-soft: rgba(139, 118, 93, .18);
  --s6-division-theme-nav-bg: linear-gradient(135deg, rgba(241, 237, 229, .96), rgba(216, 205, 190, .92));
  --s6-division-theme-nav-ink: #1d1813;
  --s6-division-theme-nav-muted: rgba(29, 24, 19, .58);
  --s6-division-theme-nav-border: rgba(78, 61, 43, .16);
}

body[class*="s6-division-current--"] .s6-header--division-mode > .s6-division-nav > .s6-division-nav__inner {
  background: var(--s6-division-theme-nav-bg) !important;
  border-color: var(--s6-division-theme-nav-border) !important;
}

body[class*="s6-division-current--"] .s6-header--division-mode .s6-division-nav__label,
body[class*="s6-division-current--"] .s6-header--division-mode .s6-division-nav__links a.is-active,
body[class*="s6-division-current--"] .s6-header--division-mode .s6-division-nav__links a[aria-current="true"] {
  color: var(--s6-division-theme-nav-ink) !important;
}

body[class*="s6-division-current--"] .s6-header--division-mode .s6-division-nav__label em,
body[class*="s6-division-current--"] .s6-header--division-mode .s6-division-nav__links a,
body[class*="s6-division-current--"] .s6-header--division-mode .s6-division-ecosystem-nav__item {
  color: var(--s6-division-theme-nav-muted) !important;
}

body[class*="s6-division-current--"] .s6-header--division-mode .s6-division-nav__label em::before,
body[class*="s6-division-current--"] .s6-division-nav__links a.is-active::after,
body[class*="s6-division-current--"] .s6-division-nav__links a[aria-current="true"]::after {
  background: var(--s6-division-theme-accent) !important;
}

body[class*="s6-division-current--"] .s6-header--division-mode .s6-division-nav__links a:hover,
body[class*="s6-division-current--"] .s6-header--division-mode .s6-division-ecosystem-nav__item:hover {
  color: var(--s6-division-theme-nav-ink) !important;
}

body.s6-division-current--stone-masonry .s6-stone-trade-page,
.s6-stone-trade-page {
  --stone-bg: #e6e5df;
  --stone-bg-soft: #f3f2ee;
  --stone-bg-deep: #c9cbc8;
  --stone-bg-dark: #232626;
  --stone-ink: #171918;
  --stone-muted: rgba(23, 25, 24, .66);
  --stone-line: rgba(38, 42, 41, .16);
  --stone-accent: #6f7476;
}
.s6-stone-materials,
.s6-stone-projects,
.s6-stone-faq,
.s6-stone-overview,
.s6-stone-systems,
.s6-stone-explainer-section,
.s6-stone-catalogue,
.s6-stone-related-projects {
  background:
    radial-gradient(circle at 12% 10%, rgba(50, 54, 53, .07), transparent 34%),
    linear-gradient(135deg, #f0efeb 0%, #d7d9d6 100%) !important;
  color: var(--stone-ink) !important;
}
.s6-stone-system-card,
.s6-stone-catalogue-group,
.s6-stone-catalogue-item,
.s6-stone-system-explainer,
.s6-stone-system-explainer__overview-panel,
.s6-stone-system-explainer__detail-panel{
  background:
    radial-gradient(circle at 26% 18%, rgba(255,255,255,.18), transparent 24%),
    linear-gradient(135deg, #e1e1dc 0%, #c8cbc8 100%) !important;
  border-color: var(--stone-line) !important;
  box-shadow: none !important;
}
.s6-stone-section-head .s6-section-label,
.s6-stone-overview .s6-section-label,
.s6-stone-system-card .s6-system-card__eyebrow,
.s6-stone-catalogue-group__label {
  color: var(--stone-accent) !important;
}
.s6-stone-system-explainer__pills button.is-active,
.s6-stone-system-explainer__pills button:hover {
  background: var(--stone-accent) !important;
}

.s6-stone-projects,
.s6-stone-faq {
  background: #e6e5df !important;
}

.s6-stone-trade-page {
  --stone-gray-page: #e6e7e4;
  --stone-gray-page-soft: #f2f3f1;
  --stone-gray-panel: #ecedea;
  --stone-gray-panel-deep: #d6d9d6;
  --stone-gray-border: rgba(34, 38, 37, .17);
  --stone-gray-ink: #171918;
  --stone-gray-muted: rgba(23, 25, 24, .66);
  --stone-gray-accent: #6f7476;
}

/* Actual Stone overview section */
.s6-stone-trade-page .s6-stone-overview {
  background:
    radial-gradient(circle at 14% 10%, rgba(46, 50, 49, .065), transparent 32%),
    linear-gradient(135deg, var(--stone-gray-page-soft) 0%, var(--stone-gray-page) 100%) !important;
  color: var(--stone-gray-ink) !important;
}

.s6-stone-trade-page .s6-stone-overview__copy {
  background: linear-gradient(135deg, #f4f5f3 0%, #e1e3e0 100%) !important;
  border-color: var(--stone-gray-border) !important;
  color: var(--stone-gray-ink) !important;
}

.s6-stone-trade-page .s6-stone-overview__copy p,
.s6-stone-trade-page .s6-stone-overview__copy li,
.s6-stone-trade-page .s6-stone-overview__copy .s6-overview-callout {
  color: var(--stone-gray-muted) !important;
}

.s6-stone-trade-page .s6-stone-overview__media {
  border-color: var(--stone-gray-border) !important;
}

/* Actual Stone product/profile catalogue section */
.s6-stone-trade-page .s6-stone-catalogue {
  background:
    radial-gradient(circle at 14% 12%, rgba(53, 57, 56, .06), transparent 30%),
    linear-gradient(180deg, #f1f2f0 0%, #e1e3e0 100%) !important;
}

.s6-stone-trade-page .s6-stone-catalogue-group,
.s6-stone-trade-page .s6-stone-catalogue-subgroup {
  background: rgba(232, 234, 231, .94) !important;
  border-color: var(--stone-gray-border) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.56), inset 0 -18px 38px rgba(28,32,31,.045) !important;
}

.s6-stone-trade-page .s6-stone-catalogue-group::before {
  background-image:
    linear-gradient(rgba(38,42,41,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(38,42,41,.03) 1px, transparent 1px) !important;
}

.s6-stone-trade-page .s6-stone-product-card {
  background: linear-gradient(180deg, #f6f7f5 0%, #e4e6e3 100%) !important;
  border-color: var(--stone-gray-border) !important;
  box-shadow: 0 16px 32px rgba(28,32,31,.075) !important;
}

.s6-stone-trade-page .s6-stone-product-card__body h4,
.s6-stone-trade-page .s6-stone-catalogue-group__head h3,
.s6-stone-trade-page .s6-stone-catalogue-subgroup__head h4 {
  color: var(--stone-gray-ink) !important;
}

.s6-stone-trade-page .s6-stone-product-card__body p,
.s6-stone-trade-page .s6-stone-catalogue-group__head p:not(.s6-section-label),
.s6-stone-trade-page .s6-stone-catalogue-subgroup__head p {
  color: var(--stone-gray-muted) !important;
}

/* Actual Stone architectural elements section */
.s6-stone-trade-page .s6-stone-elements {
  background:
    radial-gradient(circle at 86% 10%, rgba(53, 57, 56, .06), transparent 28%),
    linear-gradient(180deg, #e8e9e6 0%, #f2f3f1 100%) !important;
  color: var(--stone-gray-ink) !important;
}

.s6-stone-trade-page .s6-stone-element-card {
  background: linear-gradient(180deg, #f3f4f2 0%, #dfe2df 100%) !important;
  border-color: var(--stone-gray-border) !important;
  box-shadow: 0 18px 34px rgba(28,32,31,.08) !important;
}

.s6-stone-trade-page .s6-stone-element-card__body h3,
.s6-stone-trade-page .s6-stone-elements h2,
.s6-stone-trade-page .s6-stone-elements h3 {
  color: var(--stone-gray-ink) !important;
}

.s6-stone-trade-page .s6-stone-element-card__body p,
.s6-stone-trade-page .s6-stone-elements p {
  color: var(--stone-gray-muted) !important;
}

/* Actual shared Related Projects section, scoped to Stone page only */
.s6-stone-trade-page .s6-division-projects {
  background:
    radial-gradient(circle at 12% 10%, rgba(46, 50, 49, .06), transparent 32%),
    linear-gradient(180deg, #f1f2f0 0%, #e3e5e2 100%) !important;
}

.s6-stone-trade-page .s6-division-project-board,
.s6-stone-trade-page .s6-division-project-card,
.s6-stone-trade-page .s6-division-project-feature {
  border-color: rgba(255,255,255,.14) !important;
}

.s6-stone-trade-page .s6-division-project-latest-head span,
.s6-stone-trade-page .s6-division-project-feature__content small,
.s6-stone-trade-page .s6-division-project-card__content span {
  color: #c9cecb !important;
}

/* Actual shared FAQ section, scoped to Stone page only */
.s6-stone-trade-page .s6-division-faq {
  background:
    radial-gradient(circle at 88% 8%, rgba(46, 50, 49, .06), transparent 30%),
    linear-gradient(180deg, #e4e6e3 0%, #f1f2f0 100%) !important;
}

.s6-stone-trade-page .s6-faq-item {
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

.s6-stone-trade-page .s6-faq-question {
  background: linear-gradient(135deg, #f4f5f3 0%, #dfe2df 100%) !important;
  border-color: var(--stone-gray-border) !important;
  color: var(--stone-gray-ink) !important;
}

.s6-stone-trade-page .s6-faq-answer {
  background: rgba(246,247,245,.62) !important;
  border-left-color: var(--stone-gray-accent) !important;
  color: var(--stone-gray-muted) !important;
}

.s6-stone-trade-page .s6-section-label,
.s6-stone-trade-page .s6-stone-catalogue-group__label,
.s6-stone-trade-page .s6-stone-element-card__number {
  color: var(--stone-gray-accent) !important;
}


.s6-division-page--stone-masonry {
  --stone-v9216-bg: #e5e7e5;
  --stone-v9216-bg-soft: #f1f2f0;
  --stone-v9216-bg-mid: #d6d9d6;
  --stone-v9216-panel: #eceeeb;
  --stone-v9216-panel-deep: #d9ddda;
  --stone-v9216-ink: #171918;
  --stone-v9216-muted: rgba(23,25,24,.66);
  --stone-v9216-line: rgba(34,38,37,.18);
  --stone-v9216-accent: #6f7476;
}

/* Actual shared overview section: not .s6-stone-overview */
.s6-division-page--stone-masonry .s6-division-opening.s6-light-concrete-section,
.s6-division-page--stone-masonry #division-overview {
  background:
    radial-gradient(circle at 12% 8%, rgba(45,49,48,.07), transparent 32%),
    linear-gradient(135deg, var(--stone-v9216-bg-soft) 0%, var(--stone-v9216-bg) 100%) !important;
  color: var(--stone-v9216-ink) !important;
}

.s6-division-page--stone-masonry .s6-division-opening__copy {
  color: var(--stone-v9216-ink) !important;
}

.s6-division-page--stone-masonry .s6-division-opening__copy h2,
.s6-division-page--stone-masonry .s6-division-opening__copy p:not(.s6-section-label),
.s6-division-page--stone-masonry .s6-division-opening__callouts,
.s6-division-page--stone-masonry .s6-division-opening__callouts li {
  color: inherit !important;
}

.s6-division-page--stone-masonry .s6-division-opening__copy p:not(.s6-section-label),
.s6-division-page--stone-masonry .s6-division-opening__callouts li {
  color: var(--stone-v9216-muted) !important;
}

.s6-division-page--stone-masonry .s6-division-opening__media {
  background-color: var(--stone-v9216-panel-deep) !important;
  box-shadow: 0 2rem 5rem rgba(28,32,31,.13) !important;
}

.s6-division-page--stone-masonry .s6-division-opening__media::after {
  border-color: rgba(255,255,255,.36) !important;
}

/* Actual shared related-projects section and card surfaces */
.s6-division-page--stone-masonry .s6-division-projects.s6-light-concrete-section,
.s6-division-page--stone-masonry #division-projects {
  background:
    radial-gradient(circle at 10% 8%, rgba(45,49,48,.07), transparent 32%),
    linear-gradient(180deg, var(--stone-v9216-bg-soft) 0%, var(--stone-v9216-bg-mid) 100%) !important;
  color: var(--stone-v9216-ink) !important;
}

.s6-division-page--stone-masonry .s6-division-project-board {
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

.s6-division-page--stone-masonry .s6-division-project-feature a,
.s6-division-page--stone-masonry .s6-division-project-card a {
  background: linear-gradient(180deg, #eef0ed 0%, #d9ddda 100%) !important;
  border-color: var(--stone-v9216-line) !important;
  box-shadow: 0 16px 34px rgba(28,32,31,.08) !important;
}

.s6-division-page--stone-masonry .s6-division-project-feature a:hover,
.s6-division-page--stone-masonry .s6-division-project-feature a:focus-visible,
.s6-division-page--stone-masonry .s6-division-project-card a:hover,
.s6-division-page--stone-masonry .s6-division-project-card a:focus-visible {
  background: linear-gradient(180deg, #f4f5f3 0%, #dfe3df 100%) !important;
  border-color: rgba(34,38,37,.28) !important;
}

.s6-division-page--stone-masonry .s6-division-project-card__content {
  background: linear-gradient(180deg, rgba(244,245,243,.98) 0%, rgba(224,227,224,.98) 100%) !important;
  color: var(--stone-v9216-ink) !important;
}

.s6-division-page--stone-masonry .s6-division-project-card__content h3,
.s6-division-page--stone-masonry .s6-division-project-latest-head h3,
.s6-division-page--stone-masonry .s6-division-projects .s6-division-section-header h2 {
  color: var(--stone-v9216-ink) !important;
}

.s6-division-page--stone-masonry .s6-division-project-card__content p,
.s6-division-page--stone-masonry .s6-division-projects .s6-division-section-header > p {
  color: var(--stone-v9216-muted) !important;
}

.s6-division-page--stone-masonry .s6-division-project-card__content span,
.s6-division-page--stone-masonry .s6-division-project-feature__content small,
.s6-division-page--stone-masonry .s6-division-project-latest-head span {
  color: var(--stone-v9216-accent) !important;
}

/* Actual shared FAQ section */
.s6-division-page--stone-masonry .s6-division-faq.s6-light-concrete-section,
.s6-division-page--stone-masonry #division-faq {
  background:
    radial-gradient(circle at 88% 8%, rgba(45,49,48,.07), transparent 30%),
    linear-gradient(180deg, var(--stone-v9216-bg-mid) 0%, var(--stone-v9216-bg-soft) 100%) !important;
  color: var(--stone-v9216-ink) !important;
}

.s6-division-page--stone-masonry .s6-division-faq .s6-division-section-header h2 {
  color: var(--stone-v9216-ink) !important;
}

.s6-division-page--stone-masonry .s6-division-faq .s6-division-section-header > p {
  color: var(--stone-v9216-muted) !important;
}

.s6-division-page--stone-masonry .s6-faq-question {
  background: linear-gradient(135deg, #f4f5f3 0%, #dfe2df 100%) !important;
  border-color: var(--stone-v9216-line) !important;
  color: var(--stone-v9216-ink) !important;
}

.s6-division-page--stone-masonry .s6-faq-answer {
  background: rgba(246,247,245,.66) !important;
  border-left-color: var(--stone-v9216-accent) !important;
  color: var(--stone-v9216-muted) !important;
}

.s6-division-page--stone-masonry .s6-section-label {
  color: var(--stone-v9216-accent) !important;
}

.s6-division-page--stone-masonry .s6-division-opening::before {
  background:
    radial-gradient(circle at 12% 8%, rgba(45,49,48,.07), transparent 32%),
    linear-gradient(135deg, var(--stone-v9216-bg-soft) 0%, var(--stone-v9216-bg) 100%) !important;
}

.s6-division-page--stone-masonry .s6-division-opening__media::after {
  border-color: rgba(34,38,37,.18) !important;
}

.s6-division-page--stone-masonry .s6-division-project-board,
.s6-division-page--stone-masonry .s6-division-project-board::before,
.s6-division-page--stone-masonry .s6-division-project-board::after {
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

.s6-division-page--stone-masonry .s6-division-project-feature,
.s6-division-page--stone-masonry .s6-division-project-card {
  border-color: transparent !important;
  background: transparent !important;
  box-shadow: none !important;
}

.s6-division-page--stone-masonry .s6-division-project-feature a,
.s6-division-page--stone-masonry .s6-division-project-card a {
  border-color: rgba(34,38,37,.22) !important;
}

.s6-division-page--stone-masonry .s6-faq-list {
  border-top-color: rgba(34,38,37,.18) !important;
}

.s6-division-page--stone-masonry .s6-faq-item {
  border-bottom-color: rgba(34,38,37,.16) !important;
}

.s6-division-page--stone-masonry .s6-faq-answer {
  border-color: rgba(34,38,37,.14) !important;
  border-left-color: var(--stone-v9216-accent) !important;
}

.s6-division-page--stone-masonry.s6-division-page,
.s6-division-page--stone-masonry.s6-division-page--v32 {
  --s6-concrete: #e5e7e5;
  --s6-concrete-2: #d6d9d6;
  --s6-concrete-3: #f1f2f0;
  --s6-concrete-soft: #f1f2f0;
  --s6-concrete-warm: #d6d9d6;
  --s6-mineral-line: rgba(34,38,37,.15);
  --s6-concrete-line: rgba(34,38,37,.15);
  background:
    radial-gradient(circle at 18% 0%, rgba(255,255,255,.58), transparent 34rem),
    linear-gradient(135deg, #f1f2f0 0%, #e5e7e5 48%, #d6d9d6 100%) !important;
}

.s6-division-page--stone-masonry.s6-division-page::before {
  background-image:
    linear-gradient(90deg, rgba(34,38,37,.035) 1px, transparent 1px),
    linear-gradient(180deg, rgba(34,38,37,.03) 1px, transparent 1px),
    radial-gradient(circle at 22% 18%, rgba(34,38,37,.045), transparent 1px),
    radial-gradient(circle at 68% 72%, rgba(34,38,37,.035), transparent 1px) !important;
  background-size: 120px 120px, 120px 120px, 7px 7px, 11px 11px !important;
}

.s6-division-page--stone-masonry .s6-division-projects .s6-division-project-board {
    margin-top: clamp(1.75rem, 3vw, 2.8rem) !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
}

.s6-division-page--stone-masonry .s6-division-projects .s6-division-project-board::before,
.s6-division-page--stone-masonry .s6-division-projects .s6-division-project-board::after {
    display: none !important;
    content: none !important;
}

.s6-division-page--stone-masonry .s6-division-projects .s6-division-section-header h2 {
    max-width: none !important;
    white-space: normal !important;
    color: var(--stone-v9216-ink, #171918) !important;
}

.s6-division-page--stone-masonry .s6-division-projects .s6-division-project-latest-head {
    margin: clamp(1.1rem, 2vw, 1.45rem) 0 .9rem !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

.s6-division-page--stone-masonry .s6-division-projects .s6-division-project-latest-head::after {
    opacity: .28 !important;
}

.s6-division-page--stone-masonry .s6-division-projects .s6-division-project-feature-grid {
    margin-bottom: clamp(1.15rem, 2vw, 1.55rem) !important;
}

.s6-division-page--stone-masonry .s6-division-projects .s6-division-project-feature,
.s6-division-page--stone-masonry .s6-division-projects .s6-division-project-card {
    background: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
}

.s6-division-page--stone-masonry .s6-division-projects .s6-division-project-feature a {
    display: block !important;
    min-height: clamp(20rem, 32vw, 28rem) !important;
    position: relative !important;
    overflow: hidden !important;
    background: #000 !important;
    border: 1px solid rgba(34,38,37,.2) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.s6-division-page--stone-masonry .s6-division-projects .s6-division-project-feature a::before {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    background: linear-gradient(90deg, rgba(0,0,0,.78) 0%, rgba(0,0,0,.48) 42%, rgba(0,0,0,.08) 100%) !important;
    pointer-events: none !important;
}

.s6-division-page--stone-masonry .s6-division-projects .s6-division-project-feature a::after {
    z-index: 4 !important;
    inset: 0 !important;
    border-color: rgba(255,255,255,.16) !important;
}

.s6-division-page--stone-masonry .s6-division-projects .s6-division-project-feature a:hover::after,
.s6-division-page--stone-masonry .s6-division-projects .s6-division-project-feature a:focus-visible::after {
    border-color: rgba(111,116,118,.78) !important;
}

.s6-division-page--stone-masonry .s6-division-projects .s6-division-project-feature__image {
    position: absolute !important;
    inset: 0 !important;
    min-height: 100% !important;
    width: 100% !important;
    z-index: 0 !important;
    background: rgba(23,25,24,.16) !important;
}

.s6-division-page--stone-masonry .s6-division-projects .s6-division-project-feature__image::before {
    inset: -8px !important;
    transform: scale(1) !important;
    filter: saturate(.82) contrast(1.04) !important;
}

.s6-division-page--stone-masonry .s6-division-projects .s6-division-project-feature a:hover .s6-division-project-feature__image::before,
.s6-division-page--stone-masonry .s6-division-projects .s6-division-project-feature a:focus-visible .s6-division-project-feature__image::before {
    transform: scale(1.04) !important;
    filter: saturate(.92) contrast(1.07) !important;
}

.s6-division-page--stone-masonry .s6-division-projects .s6-division-project-feature__image span {
    top: 24px !important;
    bottom: auto !important;
    left: 24px !important;
    z-index: 3 !important;
    min-height: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    color: #b9bfbd !important;
    border: 0 !important;
    font-size: .62rem !important;
    letter-spacing: .22em !important;
}

.s6-division-page--stone-masonry .s6-division-projects .s6-division-project-feature__content {
    position: absolute !important;
    left: clamp(1.5rem, 3vw, 3rem) !important;
    right: clamp(1.5rem, 3vw, 3rem) !important;
    bottom: clamp(1.5rem, 3vw, 3rem) !important;
    z-index: 3 !important;
    max-width: 34rem !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    color: #fff !important;
}

.s6-division-page--stone-masonry .s6-division-projects .s6-division-project-feature__content small {
    display: block !important;
    margin: 0 0 .65rem !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    color: #b9bfbd !important;
    font-size: .68rem !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    letter-spacing: .2em !important;
    text-transform: uppercase !important;
    text-shadow: 0 .65rem 1.4rem rgba(0,0,0,.36) !important;
}

.s6-division-page--stone-masonry .s6-division-projects .s6-division-project-feature__content h3 {
    color: #fff !important;
    font-size: clamp(2rem, 3.8vw, 4.4rem) !important;
    line-height: .9 !important;
    letter-spacing: -.06em !important;
    text-transform: uppercase !important;
    text-shadow: 0 1.25rem 3rem rgba(0,0,0,.38) !important;
}

.s6-division-page--stone-masonry .s6-division-projects .s6-division-project-feature__content p {
    color: #c9cecb !important;
    font-size: .68rem !important;
    font-weight: 900 !important;
    letter-spacing: .18em !important;
    text-transform: uppercase !important;
}

/* latest project cards retain locked Stucco architecture, but in Stone gray */
.s6-division-page--stone-masonry .s6-division-projects .s6-division-project-card a {
    background: linear-gradient(180deg, #eef0ed 0%, #d9ddda 100%) !important;
    border-color: rgba(34,38,37,.22) !important;
    border-radius: 0 !important;
    box-shadow:
        0 1.25rem 3rem rgba(20,24,22,.075),
        inset 0 1px 0 rgba(255,255,255,.58) !important;
}

.s6-division-page--stone-masonry .s6-division-project-card__content {
    background: linear-gradient(180deg, rgba(244,245,243,.98) 0%, rgba(224,227,224,.98) 100%) !important;
    color: var(--stone-v9216-ink, #171918) !important;
}

.s6-division-page--stone-masonry .s6-division-project-card__content h3 {
    color: var(--stone-v9216-ink, #171918) !important;
}

.s6-division-page--stone-masonry .s6-division-project-card__content p {
    color: var(--stone-v9216-muted, rgba(23,25,24,.66)) !important;
}

.s6-division-page--stone-masonry .s6-division-project-card__content span,
.s6-division-page--stone-masonry .s6-division-project-latest-head span {
    color: var(--stone-v9216-accent, #6f7476) !important;
}

.s6-division-page--stone-masonry .s6-faq-list {
    display: grid !important;
    gap: .95rem !important;
    border-top: 0 !important;
}

.s6-division-page--stone-masonry .s6-faq-item {
    border-bottom: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.s6-division-page--stone-masonry .s6-faq-question {
    min-height: 4.15rem !important;
    padding: 1rem 1.05rem 1rem 1.25rem !important;
    background: rgba(244,245,243,.9) !important;
    border: 1px solid rgba(34,38,37,.16) !important;
    border-left: 3px solid rgba(111,116,118,.5) !important;
    border-radius: .18rem !important;
    color: var(--stone-v9216-ink, #171918) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.65) !important;
    transform: none !important;
    transition: background .18s ease, border-color .18s ease, box-shadow .18s ease !important;
}

.s6-division-page--stone-masonry .s6-faq-question:hover,
.s6-division-page--stone-masonry .s6-faq-question:focus-visible,
.s6-division-page--stone-masonry .s6-faq-question[aria-expanded="true"] {
    background: rgba(250,251,249,.96) !important;
    border-color: rgba(34,38,37,.22) !important;
    border-left-color: rgba(111,116,118,.9) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.72) !important;
    transform: none !important;
}

.s6-division-page--stone-masonry .s6-faq-question span {
    padding-right: 1rem !important;
}

.s6-division-page--stone-masonry .s6-faq-question em {
    width: 2rem !important;
    height: 2rem !important;
    flex: 0 0 2rem !important;
    display: inline-grid !important;
    place-items: center !important;
    border-radius: .12rem !important;
    background: rgba(255,255,255,.62) !important;
    border: 1px solid rgba(34,38,37,.16) !important;
    color: rgba(62,67,66,.95) !important;
    box-shadow: none !important;
    transform: none !important;
    transition: background .18s ease, border-color .18s ease, transform .18s ease !important;
}

.s6-division-page--stone-masonry .s6-faq-question[aria-expanded="true"] em {
    background: rgba(111,116,118,.14) !important;
    border-color: rgba(111,116,118,.52) !important;
    transform: rotate(45deg) !important;
}

.s6-division-page--stone-masonry .s6-faq-answer {
    position: relative !important;
    margin: .45rem .25rem .25rem clamp(1.4rem, 3.2vw, 3rem) !important;
    padding: 1rem clamp(1rem, 2vw, 1.45rem) !important;
    background: rgba(235,237,234,.74) !important;
    border: 1px solid rgba(34,38,37,.12) !important;
    border-left: 3px solid rgba(111,116,118,.68) !important;
    border-radius: .12rem !important;
    color: var(--stone-v9216-muted, rgba(23,25,24,.66)) !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.34) !important;
}

.s6-division-page--stone-masonry .s6-faq-answer::before,
.s6-division-page--stone-masonry .s6-faq-answer::after {
    content: none !important;
    display: none !important;
}

.s6-division-page--stone-masonry .s6-faq-answer p {
    max-width: 58rem !important;
    margin: 0 !important;
}

@media (max-width: 1050px) {
    .s6-division-page--stone-masonry .s6-division-projects .s6-division-project-feature a {
        display: block !important;
        min-height: 24rem !important;
    }
}

@media (max-width: 680px) {
    .s6-division-page--stone-masonry .s6-division-projects .s6-division-project-feature-grid {
        grid-template-columns: 1fr !important;
    }

    .s6-division-page--stone-masonry .s6-division-projects .s6-division-project-feature a {
        min-height: 24rem !important;
    }

    .s6-division-page--stone-masonry .s6-division-projects .s6-division-project-feature__image span {
        left: 18px !important;
        top: 18px !important;
    }

    .s6-division-page--stone-masonry .s6-division-projects .s6-division-project-feature__content {
        left: 18px !important;
        right: 18px !important;
        bottom: 18px !important;
    }

    .s6-division-page--stone-masonry .s6-faq-question {
        min-height: 3.85rem !important;
        border-radius: .16rem !important;
    }

    .s6-division-page--stone-masonry .s6-faq-answer {
        margin-left: .85rem !important;
        margin-right: .1rem !important;
        border-radius: .12rem !important;
    }
}

.s6-division-page--stone-masonry .s6-division-projects.s6-light-concrete-section,
.s6-division-page--stone-masonry #division-projects,
.s6-division-page--stone-masonry .s6-division-faq.s6-light-concrete-section,
.s6-division-page--stone-masonry #division-faq {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
}

.s6-division-page--stone-masonry .s6-division-projects.s6-light-concrete-section::before,
.s6-division-page--stone-masonry .s6-division-projects.s6-light-concrete-section::after,
.s6-division-page--stone-masonry #division-projects::before,
.s6-division-page--stone-masonry #division-projects::after,
.s6-division-page--stone-masonry .s6-division-faq.s6-light-concrete-section::before,
.s6-division-page--stone-masonry .s6-division-faq.s6-light-concrete-section::after,
.s6-division-page--stone-masonry #division-faq::before,
.s6-division-page--stone-masonry #division-faq::after {
    content: none !important;
    display: none !important;
}

.s6-division-page--stone-masonry .s6-division-projects .s6-division-project-board,
.s6-division-page--stone-masonry .s6-division-faq .s6-faq-list {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
}

.s6-division-page--stone-masonry .s6-stone-overview.s6-light-concrete-section,
.s6-division-page--stone-masonry #division-overview {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
}

.s6-division-page--stone-masonry .s6-stone-overview.s6-light-concrete-section::before,
.s6-division-page--stone-masonry .s6-stone-overview.s6-light-concrete-section::after,
.s6-division-page--stone-masonry #division-overview::before,
.s6-division-page--stone-masonry #division-overview::after {
    content: none !important;
    display: none !important;
}

.s6-division-page--stone-masonry .s6-stone-overview__copy {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
}

.s6-division-page--stone-masonry .s6-stone-catalogue-group--compound,
.s6-division-page--stone-masonry .s6-stone-catalogue-group--compound .s6-stone-catalogue-subgroup {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
}

.s6-division-page--stone-masonry .s6-stone-catalogue-group--compound::before,
.s6-division-page--stone-masonry .s6-stone-catalogue-group--compound::after,
.s6-division-page--stone-masonry .s6-stone-catalogue-group--compound .s6-stone-catalogue-subgroup::before,
.s6-division-page--stone-masonry .s6-stone-catalogue-group--compound .s6-stone-catalogue-subgroup::after {
    content: none !important;
    display: none !important;
}

.s6-division-page--stone-masonry .s6-stone-catalogue-group--compound {
    position: relative !important;
    display: grid !important;
    gap: 1.5rem !important;
    padding: clamp(1.35rem, 2.5vw, 2rem) !important;
    background: rgba(238, 233, 222, .92) !important;
    border: 1px solid rgba(34, 31, 28, .11) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.65),
        inset 0 -18px 38px rgba(42, 35, 28, .045) !important;
    overflow: hidden !important;
}

.s6-division-page--stone-masonry .s6-stone-catalogue-group--compound::before {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    pointer-events: none !important;
    background-image:
        linear-gradient(rgba(40,35,28,.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(40,35,28,.03) 1px, transparent 1px) !important;
    background-size: 36px 36px !important;
    opacity: .55 !important;
}

.s6-division-page--stone-masonry .s6-stone-catalogue-group--compound::after {
    content: none !important;
    display: none !important;
}

.s6-division-page--stone-masonry .s6-stone-catalogue-group--compound .s6-stone-catalogue-subgroup {
    background: transparent !important;
    border: 0 !important;
    border-top: 1px solid rgba(34,31,28,.12) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
    padding-top: 1.25rem !important;
}

.s6-division-page--stone-masonry .s6-stone-catalogue-group--compound .s6-stone-catalogue-subgroup::before,
.s6-division-page--stone-masonry .s6-stone-catalogue-group--compound .s6-stone-catalogue-subgroup::after {
    content: none !important;
    display: none !important;
}

.s6-division-page--stone-masonry .s6-stone-catalogue-group--compound {
    background:
        radial-gradient(circle at 18% 10%, rgba(53,57,56,.055), transparent 30%),
        linear-gradient(135deg, #eef0ed 0%, #d9ddda 100%) !important;
    border-color: rgba(34,38,37,.18) !important;
    color: var(--stone-v9216-ink, #171918) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.58),
        inset 0 -18px 38px rgba(28,32,31,.045) !important;
}

.s6-division-page--stone-masonry .s6-stone-catalogue-group--compound::before {
    opacity: .5 !important;
    background-image:
        linear-gradient(rgba(38,42,41,.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(38,42,41,.03) 1px, transparent 1px) !important;
}

.s6-division-page--stone-masonry .s6-stone-catalogue-group--compound .s6-stone-catalogue-subgroup {
    background: rgba(232,234,231,.72) !important;
    border-top-color: rgba(34,38,37,.16) !important;
}

.s6-division-page--stone-masonry .s6-stone-catalogue-group--compound .s6-stone-catalogue-group__head h3,
.s6-division-page--stone-masonry .s6-stone-catalogue-group--compound .s6-stone-catalogue-subgroup__head h4 {
    color: var(--stone-v9216-ink, #171918) !important;
}

.s6-division-page--stone-masonry .s6-stone-catalogue-group--compound .s6-stone-catalogue-group__head p:not(.s6-section-label),
.s6-division-page--stone-masonry .s6-stone-catalogue-group--compound .s6-stone-catalogue-subgroup__head p:not(.s6-section-label) {
    color: var(--stone-v9216-muted, rgba(23,25,24,.66)) !important;
}

.s6-division-page--stone-masonry .s6-stone-elements,
.s6-stone-trade-page .s6-stone-elements {
    background:
        radial-gradient(circle at 86% 10%, rgba(53,57,56,.06), transparent 28%),
        linear-gradient(180deg, #e8e9e6 0%, #f2f3f1 100%) !important;
    color: var(--stone-v9216-ink, #171918) !important;
}

.s6-division-page--stone-masonry .s6-stone-element-card,
.s6-stone-trade-page .s6-stone-element-card {
    background:
        linear-gradient(180deg, rgba(255,255,255,.18), rgba(255,255,255,.04)),
        linear-gradient(180deg, #f3f4f2 0%, #dfe2df 100%) !important;
    border-color: rgba(34,38,37,.18) !important;
    box-shadow: 0 18px 34px rgba(28,32,31,.08), inset 0 1px 0 rgba(255,255,255,.55) !important;
}

.s6-division-page--stone-masonry .s6-stone-element-card::before,
.s6-stone-trade-page .s6-stone-element-card::before {
    background:
        radial-gradient(circle at 24% 18%, rgba(255,255,255,.18), transparent 20%),
        radial-gradient(circle at 82% 72%, rgba(28,32,31,.16), transparent 30%),
        linear-gradient(135deg, #cfd3d0 0%, #737a79 100%) !important;
    opacity: .94 !important;
}

.s6-division-page--stone-masonry .s6-stone-element-card::after,
.s6-stone-trade-page .s6-stone-element-card::after {
    background: linear-gradient(180deg, rgba(20,24,23,.03), rgba(20,24,23,.46)) !important;
}

.s6-division-page--stone-masonry .s6-stone-element-card__visual,
.s6-stone-trade-page .s6-stone-element-card__visual {
    border-color: rgba(255,255,255,.22) !important;
    background:
        repeating-linear-gradient(135deg, rgba(255,255,255,.10) 0 1px, transparent 1px 14px),
        rgba(255,255,255,.07) !important;
}

.s6-division-page--stone-masonry .s6-stone-element-card__visual span,
.s6-stone-trade-page .s6-stone-element-card__visual span {
    background: rgba(235,238,235,.18) !important;
    border-color: rgba(255,255,255,.18) !important;
}

.s6-division-page--stone-masonry .s6-stone-elements-note,
.s6-stone-trade-page .s6-stone-elements-note {
    border-color: rgba(34,38,37,.18) !important;
    background:
        radial-gradient(circle at 10% 10%, rgba(111,116,118,.12), transparent 28%),
        linear-gradient(135deg, rgba(246,247,245,.72), rgba(224,227,224,.46)) !important;
    box-shadow: 0 24px 70px rgba(28,32,31,.10), inset 0 0 0 1px rgba(255,255,255,.32) !important;
}

.s6-division-page--stone-masonry .s6-stone-elements-note__button,
.s6-stone-trade-page .s6-stone-elements-note__button {
    border-color: rgba(34,38,37,.2) !important;
    background: rgba(246,247,245,.66) !important;
    color: var(--stone-v9216-ink, #171918) !important;
    box-shadow: 0 14px 34px rgba(28,32,31,.10) !important;
}

.s6-division-page--stone-masonry .s6-stone-catalogue-group--compound .s6-stone-catalogue-subgroup {
    background: transparent !important;
    border: 0 !important;
    border-top: 1px solid rgba(34,38,37,.16) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
    padding: 1.25rem 0 0 !important;
}

.s6-division-page--stone-masonry .s6-stone-catalogue-group--compound .s6-stone-catalogue-subgroup::before,
.s6-division-page--stone-masonry .s6-stone-catalogue-group--compound .s6-stone-catalogue-subgroup::after {
    content: none !important;
    display: none !important;
}

.s6-division-page--stone-masonry .s6-stone-catalogue-footer,
.s6-division-page--stone-masonry .s6-stone-catalogue-footer h3,
.s6-division-page--stone-masonry .s6-stone-catalogue-footer p,
.s6-division-page--stone-masonry .s6-stone-catalogue-footer a,
.s6-division-page--stone-masonry .s6-stone-catalogue-footer .s6-section-label,
.s6-division-page--stone-masonry .s6-stone-catalogue-footer__copy,
.s6-division-page--stone-masonry .s6-stone-catalogue-footer__copy p:not(.s6-section-label),
.s6-division-page--stone-masonry .s6-stone-catalogue-footer__manufacturers,
.s6-division-page--stone-masonry .s6-stone-manufacturer-group a {
    color: #f7f7f3 !important;
}

.s6-division-page--stone-masonry .s6-stone-catalogue-footer .s6-outline-button,
.s6-division-page--stone-masonry .s6-stone-catalogue-footer .s6-green-button {
    color: #f7f7f3 !important;
    border-color: rgba(247,247,243,.32) !important;
}

.s6-division-page--stone-masonry .s6-stone-catalogue-footer .s6-green-button:hover,
.s6-division-page--stone-masonry .s6-stone-catalogue-footer .s6-outline-button:hover,
.s6-division-page--stone-masonry .s6-stone-manufacturer-group a:hover,
.s6-division-page--stone-masonry .s6-stone-manufacturer-group a:focus-visible {
    color: #111312 !important;
}


.s6-division-page--stone-masonry {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

.s6-division-page--stone-masonry .s6-division-cta--v32,
.s6-division-page--stone-masonry > section:last-of-type {
    margin-bottom: 0 !important;
}

.s6-division-page--stone-masonry + .s6-footer {
    margin-top: 0 !important;
}

.s6-division-page--stone-masonry .s6-division-projects .s6-division-project-feature__image > span {
    display: none !important;
}

body.s6-division-current--caulking {
  --s6-division-theme-accent: #5f6f7b;
  --s6-division-theme-accent-soft: rgba(95, 111, 123, .20);
  --s6-division-theme-nav-bg: linear-gradient(135deg, rgba(244, 247, 249, .96), rgba(220, 228, 234, .92));
  --s6-division-theme-nav-ink: #12171b;
  --s6-division-theme-nav-muted: rgba(18, 23, 27, .58);
  --s6-division-theme-nav-border: rgba(54, 72, 84, .16);
}

.s6-division-page--caulking,
.s6-caulking-trade-page {
  --caulk-slate: #5f6f7b;
  --caulk-slate-dark: #27323a;
  --caulk-slate-mid: #748592;
  --caulk-bluegray: #dfe7ed;
  --caulk-bluegray-soft: #f4f7f9;
  --caulk-bluegray-deep: #cbd6de;
  --caulk-ink: #11171b;
  --caulk-muted-2: rgba(17, 23, 27, .66);
  --caulk-line-2: rgba(54, 72, 84, .17);
  --coating-bg: #e8edf1;
  --coating-bg-soft: #f4f7f9;
  --coating-bg-deep: #d7e1e8;
  --coating-dark: #11171b;
  --coating-muted: rgba(17, 23, 27, .66);
  --coating-line: rgba(54, 72, 84, .17);
  background: var(--caulk-bluegray-soft) !important;
  color: var(--caulk-ink) !important;
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

.s6-division-page--caulking .s6-caulking-hero__overlay {
  background:
    linear-gradient(90deg, rgba(10, 15, 18, .88) 0%, rgba(21, 34, 43, .58) 48%, rgba(41, 55, 64, .14) 100%),
    linear-gradient(180deg, rgba(12, 18, 22, .08) 0%, rgba(21, 34, 43, .20) 58%, rgba(232, 237, 241, .96) 100%) !important;
}

.s6-division-page--caulking .s6-caulking-hero__panel {
  border-left-color: rgba(174, 192, 204, .34) !important;
  background:
    repeating-linear-gradient(90deg, rgba(255,255,255,.055) 0 1px, transparent 1px 18px),
    linear-gradient(135deg, rgba(95,111,123,.20), rgba(255,255,255,.035)) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08) !important;
}

.s6-division-page--caulking .s6-green-button,
.s6-division-page--caulking .s6-outline-button:hover,
.s6-division-page--caulking .s6-caulking-catalogue .s6-stone-catalogue-toggle:hover,
.s6-division-page--caulking .s6-caulking-catalogue .s6-stone-catalogue-toggle:focus-visible {
  background: var(--caulk-slate) !important;
  border-color: var(--caulk-slate) !important;
  color: #fff !important;
}

.s6-division-page--caulking .s6-outline-button,
.s6-division-page--caulking .s6-caulking-catalogue .s6-stone-catalogue-toggle {
  border-color: rgba(54, 72, 84, .24) !important;
  color: var(--caulk-ink) !important;
}

.s6-division-page--caulking .s6-section-label::before,
.s6-division-page--caulking .s6-system-card__rule,
.s6-division-page--caulking .s6-faq-question em,
.s6-division-page--caulking .s6-division-project-latest-head::before,
.s6-division-page--caulking .s6-caulking-waterproofing li::before {
  background: var(--caulk-slate) !important;
}

.s6-division-page--caulking .s6-section-label,
.s6-division-page--caulking .s6-system-card__label,
.s6-division-page--caulking .s6-system-card__kicker,
.s6-division-page--caulking .s6-caulking-section-head .s6-section-label,
.s6-division-page--caulking .s6-division-project-card__content span,
.s6-division-page--caulking .s6-division-project-feature__content small {
  color: rgba(17, 23, 27, .58) !important;
}

.s6-division-page--caulking .s6-caulking-opening,
.s6-division-page--caulking .s6-coatings-systems--classification,
.s6-division-page--caulking .s6-caulking-explainer-section,
.s6-division-page--caulking .s6-caulking-catalogue,
.s6-division-page--caulking .s6-division-projects,
.s6-division-page--caulking .s6-division-faq {
  background:
    radial-gradient(circle at 92% 8%, rgba(95, 111, 123, .12), transparent 30%),
    linear-gradient(135deg, #f4f7f9 0%, #e3eaf0 52%, #d6e0e8 100%) !important;
  color: var(--caulk-ink) !important;
}

.s6-division-page--caulking .s6-caulking-opening {
  border-top: 1px solid rgba(54, 72, 84, .12) !important;
  border-bottom: 1px solid rgba(54, 72, 84, .12) !important;
}

.s6-division-page--caulking .s6-division-opening__media,
.s6-division-page--caulking .s6-caulking-opening__media {
  box-shadow: 0 40px 110px rgba(28, 43, 52, .16) !important;
  filter: saturate(.88) contrast(1.03) !important;
}

.s6-division-page--caulking .s6-overview-callout,
.s6-division-page--caulking .s6-caulking-opening__callouts .s6-overview-callout {
  background: rgba(255,255,255,.54) !important;
  border: 1px solid var(--caulk-line-2) !important;
  box-shadow: 0 18px 44px rgba(33, 48, 58, .08) !important;
}

/* Slightly redesigned system cards: more technical, flatter, and less masonry-like. */
.s6-division-page--caulking .s6-caulking-system-card-grid,
.s6-division-page--caulking .s6-system-card-grid.s6-caulking-system-card-grid {
  gap: clamp(18px, 2.2vw, 30px) !important;
}

.s6-division-page--caulking .s6-caulking-classification-card {
  position: relative !important;
  overflow: hidden !important;
  border: 1px solid rgba(54, 72, 84, .18) !important;
  border-radius: 0 !important;
  background:
    linear-gradient(90deg, rgba(95,111,123,.14) 0 4px, transparent 4px),
    repeating-linear-gradient(0deg, rgba(54,72,84,.045) 0 1px, transparent 1px 24px),
    linear-gradient(145deg, rgba(255,255,255,.78), rgba(218,228,236,.72)) !important;
  box-shadow: 0 24px 70px rgba(30, 45, 54, .10) !important;
}

.s6-division-page--caulking .s6-caulking-classification-card::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  background: linear-gradient(90deg, rgba(95,111,123,.12), transparent 34%) !important;
  opacity: .55 !important;
}

.s6-division-page--caulking .s6-caulking-classification-card:hover,
.s6-division-page--caulking .s6-caulking-classification-card:focus-visible {
  transform: translateY(-4px) !important;
  border-color: rgba(95, 111, 123, .42) !important;
  box-shadow: 0 30px 86px rgba(30, 45, 54, .16) !important;
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__top,
.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__body,
.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__specs,
.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__visual {
  position: relative !important;
  z-index: 1 !important;
}

.s6-division-page--caulking .s6-caulking-classification-card .s6-system-card__badge {
  background: var(--caulk-slate-dark) !important;
  color: #fff !important;
  border-color: rgba(255,255,255,.18) !important;
}

.s6-division-page--caulking .s6-caulking-system-visual span {
  border-color: rgba(54,72,84,.26) !important;
  box-shadow:
    .22rem .3rem .36rem rgba(30,45,54,.13),
    inset .12rem .04rem rgba(255,255,255,.38) !important;
}

.s6-division-page--caulking .s6-caulking-system-visual--perimeter span,
.s6-division-page--caulking .s6-caulking-system-visual--movement span,
.s6-division-page--caulking .s6-caulking-system-visual--traffic span,
.s6-division-page--caulking .s6-caulking-system-visual--restoration span,
.s6-division-page--caulking .s6-caulking-system-visual--protective span,
.s6-division-page--caulking .s6-caulking-system-visual--waterproofing span {
  background: linear-gradient(135deg, #536371, #b8c7d1) !important;
}

.s6-division-page--caulking .s6-caulking-system-visual span:nth-child(2n) {
  background: linear-gradient(135deg, #748592, #d2dce3) !important;
}

.s6-division-page--caulking .s6-system-card__specs {
  background: rgba(244,247,249,.58) !important;
  border-color: rgba(54,72,84,.18) !important;
}

.s6-division-page--caulking .s6-system-card__spec {
  border-color: rgba(54,72,84,.14) !important;
}

.s6-division-page--caulking .s6-system-card__spec span {
  color: rgba(17,23,27,.54) !important;
}

/* Explainer: blue-gray technical console instead of beige shell. */
.s6-division-page--caulking .s6-caulking-system-explainer,
.s6-division-page--caulking .s6-coatings-system-explainer {
  background:
    linear-gradient(135deg, rgba(244,247,249,.94), rgba(211,222,230,.78)),
    repeating-linear-gradient(0deg, rgba(54,72,84,.05) 0 1px, transparent 1px 20px),
    repeating-linear-gradient(90deg, rgba(54,72,84,.04) 0 1px, transparent 1px 20px) !important;
  border-color: rgba(54,72,84,.20) !important;
  box-shadow: 0 34px 100px rgba(30,45,54,.12) !important;
}

.s6-division-page--caulking .s6-explainer-hotspot,
.s6-division-page--caulking .s6-caulking-system-explainer__detail-panel,
.s6-division-page--caulking .s6-coatings-system-explainer__detail-panel {
  background: rgba(255,255,255,.48) !important;
  border-color: rgba(54,72,84,.18) !important;
}

.s6-division-page--caulking .s6-explainer-hotspot.is-active,
.s6-division-page--caulking .s6-explainer-hotspot[aria-pressed="true"] {
  background: var(--caulk-slate) !important;
  border-color: var(--caulk-slate) !important;
  color: #fff !important;
}

/* Product catalogue: keep architecture, make it a sealant/spec catalogue. */
.s6-division-page--caulking .s6-caulking-catalogue .s6-stone-catalogue-group,
.s6-division-page--caulking .s6-caulking-catalogue-group {
  background:
    linear-gradient(135deg, rgba(247,249,250,.78), rgba(223,231,237,.56)) !important;
  border: 1px solid rgba(54,72,84,.16) !important;
  border-radius: 0 !important;
  box-shadow: 0 26px 76px rgba(30,45,54,.10) !important;
}
.s6-division-page--caulking .s6-caulking-catalogue .s6-stone-product-card,
.s6-division-page--caulking .s6-caulking-catalogue article {
  border-color: rgba(54,72,84,.16) !important;
  background: rgba(255,255,255,.56) !important;
  box-shadow: 0 18px 48px rgba(30,45,54,.08) !important;
}
.s6-division-page--caulking .s6-caulking-catalogue .s6-stone-product-card:hover,
.s6-division-page--caulking .s6-caulking-catalogue article:hover {
  border-color: rgba(95,111,123,.36) !important;
}

/* Related Projects and FAQ: match the locked Stucco behavior, recoloured only. */
.s6-division-page--caulking .s6-division-projects,
.s6-division-page--caulking .s6-division-faq {
  padding-bottom: clamp(76px, 9vw, 135px) !important;
  margin-bottom: 0 !important;
}

.s6-division-page--caulking .s6-division-projects > .s6-container,
.s6-division-page--caulking .s6-division-faq > .s6-container{
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.s6-division-page--caulking .s6-division-project-feature,
.s6-division-page--caulking .s6-division-project-card {
  border: 1px solid rgba(54,72,84,.16) !important;
  border-radius: 0 !important;
  box-shadow: 0 26px 72px rgba(30,45,54,.13) !important;
}

.s6-division-page--caulking .s6-division-project-feature__content,
.s6-division-page--caulking .s6-division-project-card__content {
  background: linear-gradient(180deg, transparent, rgba(11,16,19,.78)) !important;
  color: #fff !important;
  text-shadow: 0 1px 18px rgba(0,0,0,.34) !important;
}

.s6-division-page--caulking .s6-division-project-feature__content small,
.s6-division-page--caulking .s6-division-project-card__content span,
.s6-division-page--caulking .s6-division-project-feature__content p,
.s6-division-page--caulking .s6-division-project-card__content p {
  color: rgba(255,255,255,.76) !important;
}

.s6-division-page--caulking .s6-division-project-feature__image > span {
  display: none !important;
}

.s6-division-page--caulking .s6-faq-list {
  gap: .85rem !important;
}

.s6-division-page--caulking .s6-faq-item {
  border: 1px solid rgba(54,72,84,.17) !important;
  border-radius: 0 !important;
  background: rgba(255,255,255,.56) !important;
  box-shadow: 0 16px 46px rgba(30,45,54,.08) !important;
}

.s6-division-page--caulking .s6-faq-question {
  background: rgba(244,247,249,.68) !important;
  color: var(--caulk-ink) !important;
}

.s6-division-page--caulking .s6-faq-answer {
  margin: 0 clamp(18px, 3vw, 34px) clamp(18px, 3vw, 30px) !important;
  padding: clamp(16px, 2vw, 24px) 0 0 clamp(18px, 2vw, 28px) !important;
  border-left: 2px solid rgba(95,111,123,.46) !important;
  color: var(--caulk-muted-2) !important;
}

.s6-division-page--caulking .s6-division-cta--v32,
.s6-division-page--caulking > section:last-of-type {
  margin-bottom: 0 !important;
}

.s6-division-page--caulking + .s6-footer {
  margin-top: 0 !important;
}

@media (max-width: 760px) {
  .s6-division-page--caulking .s6-caulking-classification-card {
    border-left: 4px solid var(--caulk-slate) !important;
  }
}

.s6-division-page--caulking.s6-division-page,
.s6-division-page--caulking.s6-caulking-trade-page {
  --s6-concrete: #d7e1e8;
  --s6-concrete-2: #cbd6de;
  --s6-concrete-3: #f4f7f9;
  --s6-concrete-soft: #e8edf1;
  --s6-concrete-warm: #d7e1e8;
  --s6-mineral-line: rgba(54,72,84,.15);
  --s6-concrete-line: rgba(54,72,84,.15);
  background:
    radial-gradient(circle at 18% 0%, rgba(255,255,255,.62), transparent 34rem),
    radial-gradient(circle at 86% 12%, rgba(95,111,123,.16), transparent 28rem),
    linear-gradient(135deg, #f4f7f9 0%, #e8edf1 48%, #d7e1e8 100%) !important;
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

.s6-division-page--caulking.s6-division-page::before {
  background-image:
    linear-gradient(90deg, rgba(54,72,84,.035) 1px, transparent 1px),
    linear-gradient(180deg, rgba(54,72,84,.03) 1px, transparent 1px),
    radial-gradient(circle at 22% 18%, rgba(54,72,84,.045), transparent 1px),
    radial-gradient(circle at 68% 72%, rgba(54,72,84,.035), transparent 1px) !important;
  background-size: 120px 120px, 120px 120px, 7px 7px, 11px 11px !important;
}

.s6-division-page--caulking .s6-division-projects.s6-light-concrete-section,
.s6-division-page--caulking #division-projects,
.s6-division-page--caulking .s6-division-faq.s6-light-concrete-section,
.s6-division-page--caulking #division-faq {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: max(1.25rem, calc((100vw - 1240px) / 2)) !important;
  padding-right: max(1.25rem, calc((100vw - 1240px) / 2)) !important;
  box-sizing: border-box !important;
  background:
    radial-gradient(circle at 92% 8%, rgba(95,111,123,.12), transparent 30rem),
    linear-gradient(135deg, #f4f7f9 0%, #e3eaf0 52%, #d6e0e8 100%) !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
}

.s6-division-page--caulking .s6-division-projects.s6-light-concrete-section::before,
.s6-division-page--caulking .s6-division-projects.s6-light-concrete-section::after,
.s6-division-page--caulking #division-projects::before,
.s6-division-page--caulking #division-projects::after,
.s6-division-page--caulking .s6-division-faq.s6-light-concrete-section::before,
.s6-division-page--caulking .s6-division-faq.s6-light-concrete-section::after,
.s6-division-page--caulking #division-faq::before,
.s6-division-page--caulking #division-faq::after {
  content: none !important;
  display: none !important;
}

.s6-division-page--caulking .s6-division-projects .s6-division-project-board,
.s6-division-page--caulking .s6-division-faq .s6-faq-list {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
}

.s6-division-page--caulking .s6-division-projects .s6-division-project-board {
  margin-top: clamp(1.75rem, 3vw, 2.8rem) !important;
  padding: 0 !important;
  overflow: visible !important;
}

.s6-division-page--caulking .s6-division-projects .s6-division-project-board::before,
.s6-division-page--caulking .s6-division-projects .s6-division-project-board::after {
  content: none !important;
  display: none !important;
}

.s6-division-page--caulking .s6-division-projects .s6-division-section-header h2,
.s6-division-page--caulking .s6-division-faq .s6-division-section-header h2 {
  color: var(--caulk-ink, #11171b) !important;
}

.s6-division-page--caulking .s6-division-projects .s6-division-project-feature,
.s6-division-page--caulking .s6-division-projects .s6-division-project-card {
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

.s6-division-page--caulking .s6-division-projects .s6-division-project-feature a {
  display: block !important;
  min-height: clamp(20rem, 32vw, 28rem) !important;
  position: relative !important;
  overflow: hidden !important;
  background: #000 !important;
  border: 1px solid rgba(54,72,84,.20) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.s6-division-page--caulking .s6-division-projects .s6-division-project-feature a::before {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background: linear-gradient(90deg, rgba(0,0,0,.78) 0%, rgba(0,0,0,.48) 42%, rgba(0,0,0,.08) 100%) !important;
  pointer-events: none !important;
}

.s6-division-page--caulking .s6-division-projects .s6-division-project-feature a::after {
  z-index: 4 !important;
  inset: 0 !important;
  border-color: rgba(255,255,255,.16) !important;
}

.s6-division-page--caulking .s6-division-projects .s6-division-project-feature a:hover::after,
.s6-division-page--caulking .s6-division-projects .s6-division-project-feature a:focus-visible::after {
  border-color: rgba(95,111,123,.82) !important;
}

.s6-division-page--caulking .s6-division-projects .s6-division-project-feature__image {
  position: absolute !important;
  inset: 0 !important;
  min-height: 100% !important;
  width: 100% !important;
  z-index: 0 !important;
  background: rgba(17,23,27,.18) !important;
}

.s6-division-page--caulking .s6-division-projects .s6-division-project-feature__image::before {
  inset: -8px !important;
  transform: scale(1) !important;
  filter: saturate(.86) contrast(1.04) !important;
}

.s6-division-page--caulking .s6-division-projects .s6-division-project-feature a:hover .s6-division-project-feature__image::before,
.s6-division-page--caulking .s6-division-projects .s6-division-project-feature a:focus-visible .s6-division-project-feature__image::before {
  transform: scale(1.04) !important;
  filter: saturate(.95) contrast(1.07) !important;
}

.s6-division-page--caulking .s6-division-projects .s6-division-project-feature__image > span {
  display: none !important;
}

.s6-division-page--caulking .s6-division-projects .s6-division-project-feature__content {
  position: absolute !important;
  left: clamp(1.5rem, 3vw, 3rem) !important;
  right: clamp(1.5rem, 3vw, 3rem) !important;
  bottom: clamp(1.5rem, 3vw, 3rem) !important;
  z-index: 3 !important;
  max-width: 34rem !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  color: #fff !important;
  text-shadow: 0 1.25rem 3rem rgba(0,0,0,.38) !important;
}

.s6-division-page--caulking .s6-division-projects .s6-division-project-feature__content small {
  display: block !important;
  margin: 0 0 .65rem !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  color: #c5d0d8 !important;
  font-size: .68rem !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: .2em !important;
  text-transform: uppercase !important;
  text-shadow: 0 .65rem 1.4rem rgba(0,0,0,.36) !important;
}

.s6-division-page--caulking .s6-division-projects .s6-division-project-feature__content h3 {
  color: #fff !important;
  font-size: clamp(2rem, 3.8vw, 4.4rem) !important;
  line-height: .9 !important;
  letter-spacing: -.06em !important;
  text-transform: uppercase !important;
}

.s6-division-page--caulking .s6-division-projects .s6-division-project-feature__content p {
  color: #d6e0e8 !important;
  font-size: .68rem !important;
  font-weight: 900 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
}

.s6-division-page--caulking .s6-division-project-card__content {
  background: linear-gradient(180deg, rgba(244,247,249,.98) 0%, rgba(223,231,237,.98) 100%) !important;
  color: var(--caulk-ink, #11171b) !important;
}

.s6-division-page--caulking .s6-division-project-card__content h3 {
  color: var(--caulk-ink, #11171b) !important;
}

.s6-division-page--caulking .s6-division-project-card__content p {
  color: rgba(17,23,27,.66) !important;
}

.s6-division-page--caulking .s6-division-project-card__content span,
.s6-division-page--caulking .s6-division-project-latest-head span {
  color: var(--caulk-slate, #5f6f7b) !important;
}

.s6-division-page--caulking .s6-faq-list {
  display: grid !important;
  gap: .95rem !important;
  border-top: 0 !important;
}

.s6-division-page--caulking .s6-faq-item {
  border-bottom: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.s6-division-page--caulking .s6-faq-question {
  min-height: 4.15rem !important;
  padding: 1rem 1.05rem 1rem 1.25rem !important;
  background: rgba(244,247,249,.9) !important;
  border: 1px solid rgba(54,72,84,.16) !important;
  border-left: 3px solid rgba(95,111,123,.58) !important;
  border-radius: .18rem !important;
  color: var(--caulk-ink, #11171b) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.65) !important;
  transform: none !important;
  transition: background .18s ease, border-color .18s ease, box-shadow .18s ease !important;
}

.s6-division-page--caulking .s6-faq-question:hover,
.s6-division-page--caulking .s6-faq-question:focus-visible,
.s6-division-page--caulking .s6-faq-question[aria-expanded="true"] {
  background: rgba(250,252,253,.96) !important;
  border-color: rgba(54,72,84,.22) !important;
  border-left-color: rgba(95,111,123,.92) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.72) !important;
  transform: none !important;
}

.s6-division-page--caulking .s6-faq-question span {
  padding-right: 1rem !important;
}

.s6-division-page--caulking .s6-faq-question em {
  width: 2rem !important;
  height: 2rem !important;
  flex: 0 0 2rem !important;
  display: inline-grid !important;
  place-items: center !important;
  border-radius: .12rem !important;
  background: rgba(255,255,255,.62) !important;
  border: 1px solid rgba(54,72,84,.16) !important;
  color: rgba(39,50,58,.95) !important;
  box-shadow: none !important;
  transform: none !important;
  transition: background .18s ease, border-color .18s ease, transform .18s ease !important;
}

.s6-division-page--caulking .s6-faq-question[aria-expanded="true"] em {
  background: rgba(95,111,123,.14) !important;
  border-color: rgba(95,111,123,.52) !important;
  transform: rotate(45deg) !important;
}

.s6-division-page--caulking .s6-faq-answer {
  position: relative !important;
  margin: .45rem .25rem .25rem clamp(1.4rem, 3.2vw, 3rem) !important;
  padding: 1rem clamp(1rem, 2vw, 1.45rem) !important;
  background: rgba(223,231,237,.74) !important;
  border: 1px solid rgba(54,72,84,.12) !important;
  border-left: 3px solid rgba(95,111,123,.70) !important;
  border-radius: .12rem !important;
  color: rgba(17,23,27,.66) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.34) !important;
}

.s6-division-page--caulking .s6-faq-answer::before,
.s6-division-page--caulking .s6-faq-answer::after {
  content: none !important;
  display: none !important;
}

.s6-division-page--caulking .s6-faq-answer p {
  max-width: 58rem !important;
  margin: 0 !important;
}

.s6-division-page--caulking .s6-division-cta--v32,
.s6-division-page--caulking > section:last-of-type {
  margin-bottom: 0 !important;
}

.s6-division-page--caulking + .s6-footer {
  margin-top: 0 !important;
}

@media (max-width: 680px) {
  .s6-division-page--caulking .s6-division-projects.s6-light-concrete-section,
  .s6-division-page--caulking #division-projects,
  .s6-division-page--caulking .s6-division-faq.s6-light-concrete-section,
  .s6-division-page--caulking #division-faq {
    padding-left: .85rem !important;
    padding-right: .85rem !important;
  }

  .s6-division-page--caulking .s6-division-projects .s6-division-project-feature-grid {
    grid-template-columns: 1fr !important;
  }

  .s6-division-page--caulking .s6-division-projects .s6-division-project-feature a {
    min-height: 24rem !important;
  }

  .s6-division-page--caulking .s6-division-projects .s6-division-project-feature__content {
    left: 18px !important;
    right: 18px !important;
    bottom: 18px !important;
  }

  .s6-division-page--caulking .s6-faq-question {
    min-height: 3.85rem !important;
    border-radius: .16rem !important;
  }

  .s6-division-page--caulking .s6-faq-answer {
    margin-left: .85rem !important;
    margin-right: .1rem !important;
    border-radius: .12rem !important;
  }
}

.s6-division-page--caulking .s6-section:not(.s6-division-hero) .s6-section-label,
.s6-division-page--caulking .s6-division-section-header .s6-section-label,
.s6-division-page--caulking .s6-division-opening__copy .s6-section-label,
.s6-division-page--caulking .s6-caulking-section-head .s6-section-label,
.s6-division-page--caulking .s6-coatings-section-head .s6-section-label,
.s6-division-page--caulking .s6-stone-catalogue-group__head .s6-section-label,
.s6-division-page--caulking .s6-stone-catalogue-subgroup__head .s6-section-label,
.s6-division-page--caulking .s6-stone-catalogue-footer__copy .s6-section-label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 14px !important;
  color: var(--caulk-slate, #5f6f7b) !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: .22em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
}

.s6-division-page--caulking .s6-section:not(.s6-division-hero) .s6-section-label::before,
.s6-division-page--caulking .s6-division-section-header .s6-section-label::before,
.s6-division-page--caulking .s6-division-opening__copy .s6-section-label::before,
.s6-division-page--caulking .s6-caulking-section-head .s6-section-label::before,
.s6-division-page--caulking .s6-coatings-section-head .s6-section-label::before,
.s6-division-page--caulking .s6-stone-catalogue-group__head .s6-section-label::before,
.s6-division-page--caulking .s6-stone-catalogue-subgroup__head .s6-section-label::before,
.s6-division-page--caulking .s6-stone-catalogue-footer__copy .s6-section-label::before {
  content: "" !important;
  display: block !important;
  width: 48px !important;
  height: 2px !important;
  flex: 0 0 48px !important;
  background: var(--caulk-slate, #5f6f7b) !important;
}

@media (max-width: 680px) {
  .s6-division-page--caulking .s6-section:not(.s6-division-hero) .s6-section-label,
  .s6-division-page--caulking .s6-division-section-header .s6-section-label,
  .s6-division-page--caulking .s6-division-opening__copy .s6-section-label,
  .s6-division-page--caulking .s6-caulking-section-head .s6-section-label,
  .s6-division-page--caulking .s6-coatings-section-head .s6-section-label,
  .s6-division-page--caulking .s6-stone-catalogue-group__head .s6-section-label,
  .s6-division-page--caulking .s6-stone-catalogue-subgroup__head .s6-section-label,
  .s6-division-page--caulking .s6-stone-catalogue-footer__copy .s6-section-label {
    gap: 12px !important;
    font-size: 11px !important;
    letter-spacing: .18em !important;
  }

  .s6-division-page--caulking .s6-section:not(.s6-division-hero) .s6-section-label::before,
  .s6-division-page--caulking .s6-division-section-header .s6-section-label::before,
  .s6-division-page--caulking .s6-division-opening__copy .s6-section-label::before,
  .s6-division-page--caulking .s6-caulking-section-head .s6-section-label::before,
  .s6-division-page--caulking .s6-coatings-section-head .s6-section-label::before,
  .s6-division-page--caulking .s6-stone-catalogue-group__head .s6-section-label::before,
  .s6-division-page--caulking .s6-stone-catalogue-subgroup__head .s6-section-label::before,
  .s6-division-page--caulking .s6-stone-catalogue-footer__copy .s6-section-label::before {
    width: 34px !important;
    flex-basis: 34px !important;
  }
}

/* Stone: remove remaining inherited System 6 green signature lines / micro accents. */
.s6-division-page--stone-masonry {
  --stone-accent-v9304: #6f7472;
  --stone-accent-v9304-soft: rgba(111, 116, 114, .24);
  --stone-accent-v9304-line: rgba(78, 84, 82, .38);
}

.s6-division-page--stone-masonry .s6-section:not(.s6-division-hero) .s6-section-label,
.s6-division-page--stone-masonry .s6-division-section-header .s6-section-label,
.s6-division-page--stone-masonry .s6-division-opening__copy .s6-section-label,
.s6-division-page--stone-masonry .s6-division-explainer__copy > .s6-section-label,
.s6-division-page--stone-masonry .s6-stone-section-head .s6-section-label,
.s6-division-page--stone-masonry .s6-stone-catalogue-group__head .s6-section-label,
.s6-division-page--stone-masonry .s6-stone-catalogue-subgroup__head .s6-section-label,
.s6-division-page--stone-masonry .s6-stone-catalogue-footer__copy .s6-section-label {
  color: var(--stone-accent-v9304) !important;
}

.s6-division-page--stone-masonry .s6-section:not(.s6-division-hero) .s6-section-label::before,
.s6-division-page--stone-masonry .s6-division-section-header .s6-section-label::before,
.s6-division-page--stone-masonry .s6-division-opening__copy .s6-section-label::before,
.s6-division-page--stone-masonry .s6-division-explainer__copy > .s6-section-label::before,
.s6-division-page--stone-masonry .s6-stone-section-head .s6-section-label::before,
.s6-division-page--stone-masonry .s6-stone-catalogue-group__head .s6-section-label::before,
.s6-division-page--stone-masonry .s6-stone-catalogue-subgroup__head .s6-section-label::before,
.s6-division-page--stone-masonry .s6-stone-catalogue-footer__copy .s6-section-label::before,
.s6-division-page--stone-masonry .s6-system-card__rule,
.s6-division-page--stone-masonry .s6-division-project-latest-head::before,
.s6-division-page--stone-masonry .s6-stone-system-explainer__overview-panel .s6-stone-system-explainer__overview-points li::before {
  background: var(--stone-accent-v9304) !important;
}

.s6-division-page--stone-masonry .s6-stone-system-card:hover,
.s6-division-page--stone-masonry .s6-stone-system-card:focus-visible,
.s6-division-page--stone-masonry .s6-stone-product-card:hover,
.s6-division-page--stone-masonry .s6-stone-product-card:focus-within,
.s6-division-page--stone-masonry .s6-stone-catalogue-toggle:hover,
.s6-division-page--stone-masonry .s6-stone-catalogue-toggle:focus-visible {
  border-color: var(--stone-accent-v9304-line) !important;
}

.s6-division-page--stone-masonry .s6-stone-system-card .s6-system-card__badge,
.s6-division-page--stone-masonry .s6-stone-system-card .s6-system-card__icon,
.s6-division-page--stone-masonry .s6-stone-system-explainer__hint span,
.s6-division-page--stone-masonry .s6-division-project-card__content span,
.s6-division-page--stone-masonry .s6-division-project-feature__content small {
  color: var(--stone-accent-v9304) !important;
}

.s6-division-page--stone-masonry .s6-stone-system-card .s6-system-card__badge,
.s6-division-page--stone-masonry .s6-stone-product-swatch:hover,
.s6-division-page--stone-masonry .s6-stone-product-swatch.is-active {
  border-color: var(--stone-accent-v9304-line) !important;
  box-shadow: 0 0 0 2px var(--stone-accent-v9304-soft), 0 7px 14px rgba(0,0,0,.15) !important;
}

.s6-division-page--stone-masonry .s6-green-button,
.s6-division-page--stone-masonry .s6-outline-button:hover,
.s6-division-page--stone-masonry .s6-stone-catalogue-group__toggle:hover,
.s6-division-page--stone-masonry .s6-stone-catalogue-group__toggle:focus-visible {
  background: #4f5553 !important;
  border-color: #4f5553 !important;
  color: #f7f8f6 !important;
}

/* Caulking: same catalogue grid/layout, redesigned card skin as a technical sealant/spec sheet. */
.s6-division-page--caulking .s6-caulking-catalogue .s6-stone-catalogue-grid {
  gap: clamp(1rem, 1.8vw, 1.35rem) !important;
}

.s6-division-page--caulking .s6-caulking-catalogue .s6-stone-catalogue-group,
.s6-division-page--caulking .s6-caulking-catalogue-group {
  background:
    linear-gradient(90deg, rgba(95,111,123,.10) 0 5px, transparent 5px),
    repeating-linear-gradient(0deg, rgba(54,72,84,.045) 0 1px, transparent 1px 28px),
    linear-gradient(135deg, rgba(248,250,251,.82), rgba(221,230,236,.66)) !important;
  border-color: rgba(54,72,84,.20) !important;
  box-shadow: 0 26px 76px rgba(30,45,54,.10), inset 0 1px 0 rgba(255,255,255,.55) !important;
}

.s6-division-page--caulking .s6-caulking-product-card,
.s6-division-page--caulking .s6-caulking-catalogue .s6-stone-product-card {
  padding: 0 !important;
  border: 1px solid rgba(54,72,84,.20) !important;
  border-left: 4px solid rgba(95,111,123,.62) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.82), rgba(230,237,242,.74)) !important;
  box-shadow: 0 18px 48px rgba(30,45,54,.08) !important;
  overflow: hidden !important;
}

.s6-division-page--caulking .s6-caulking-product-card:hover,
.s6-division-page--caulking .s6-caulking-catalogue .s6-stone-product-card:hover {
  border-color: rgba(95,111,123,.42) !important;
  border-left-color: rgba(95,111,123,.96) !important;
  box-shadow: 0 22px 62px rgba(30,45,54,.12) !important;
}

.s6-division-page--caulking .s6-caulking-product-card .s6-stone-product-card__image,
.s6-division-page--caulking .s6-caulking-catalogue .s6-stone-product-card__image {
  min-height: clamp(138px, 14vw, 190px) !important;
  margin: 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(54,72,84,.16) !important;
  box-shadow: none !important;
  transform: none !important;
  filter: saturate(.82) contrast(1.02) !important;
}

.s6-division-page--caulking .s6-caulking-product-card:hover .s6-stone-product-card__image,
.s6-division-page--caulking .s6-caulking-catalogue .s6-stone-product-card:hover .s6-stone-product-card__image {
  transform: none !important;
  filter: saturate(.94) contrast(1.04) !important;
  box-shadow: none !important;
}

.s6-division-page--caulking .s6-caulking-product-card .s6-stone-product-card__image::after,
.s6-division-page--caulking .s6-caulking-catalogue .s6-stone-product-card__image::after {
  background:
    linear-gradient(180deg, rgba(15,22,27,.04), rgba(15,22,27,.18)),
    repeating-linear-gradient(90deg, rgba(255,255,255,.13) 0 1px, transparent 1px 18px) !important;
  opacity: .7 !important;
  mix-blend-mode: normal !important;
}

.s6-division-page--caulking .s6-caulking-product-card .s6-stone-product-card__image span,
.s6-division-page--caulking .s6-caulking-catalogue .s6-stone-product-card__image span {
  left: 0 !important;
  top: 0 !important;
  padding: .58rem .72rem !important;
  background: rgba(39,50,58,.94) !important;
  color: #f7fbfd !important;
  border: 0 !important;
  box-shadow: none !important;
  font-size: .62rem !important;
  letter-spacing: .16em !important;
}

.s6-division-page--caulking .s6-caulking-product-card .s6-stone-product-card__body,
.s6-division-page--caulking .s6-caulking-catalogue .s6-stone-product-card__body {
  padding: 1.05rem 1rem 1rem !important;
  gap: .6rem !important;
  background:
    linear-gradient(90deg, rgba(95,111,123,.09) 0 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.38), rgba(255,255,255,0)) !important;
}

.s6-division-page--caulking .s6-caulking-product-card .s6-stone-product-card__body h4,
.s6-division-page--caulking .s6-caulking-catalogue .s6-stone-product-card__body h4 {
  color: #11171b !important;
  font-size: clamp(1rem, 1.35vw, 1.18rem) !important;
  letter-spacing: -.02em !important;
  text-transform: none !important;
}

.s6-division-page--caulking .s6-caulking-product-card .s6-stone-product-card__body h4::after,
.s6-division-page--caulking .s6-caulking-catalogue .s6-stone-product-card__body h4::after {
  content: "" !important;
  display: block !important;
  width: 34px !important;
  height: 2px !important;
  margin-top: .62rem !important;
  background: rgba(95,111,123,.76) !important;
}

.s6-division-page--caulking .s6-caulking-product-card .s6-stone-product-card__body p,
.s6-division-page--caulking .s6-caulking-catalogue .s6-stone-product-card__body p {
  color: rgba(17,23,27,.64) !important;
  font-size: .84rem !important;
  line-height: 1.5 !important;
}

.s6-division-page--caulking .s6-caulking-product-card .s6-stone-product-card__swatches,
.s6-division-page--caulking .s6-caulking-catalogue .s6-stone-product-card__swatches {
  padding-top: .65rem !important;
  border-top: 1px solid rgba(54,72,84,.12) !important;
}

.s6-division-page--caulking .s6-caulking-catalogue .s6-stone-product-swatch:hover,
.s6-division-page--caulking .s6-caulking-catalogue .s6-stone-product-swatch.is-active {
  box-shadow: 0 0 0 2px rgba(95,111,123,.28), 0 7px 14px rgba(30,45,54,.16) !important;
}


.s6-division-page--caulking #division-explainer .s6-caulking-section-head,
.s6-division-page--caulking #division-products .s6-caulking-section-head {
  max-width: none !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1.1fr) minmax(16rem, 0.55fr) !important;
  gap: clamp(1.5rem, 5vw, 4rem) !important;
  align-items: end !important;
  margin-bottom: clamp(2rem, 5vw, 4rem) !important;
}

.s6-division-page--caulking #division-explainer .s6-caulking-section-head h2,
.s6-division-page--caulking #division-products .s6-caulking-section-head h2 {
  color: var(--caulk-ink, #11171b) !important;
  font-size: clamp(2.4rem, 5vw, 5.6rem) !important;
  line-height: 0.92 !important;
  letter-spacing: -0.065em !important;
  margin: 0.22em 0 0.38em !important;
  max-width: none !important;
}

.s6-division-page--caulking #division-explainer .s6-caulking-section-head > p,
.s6-division-page--caulking #division-products .s6-caulking-section-head > p {
  color: var(--caulk-muted-2, rgba(17, 23, 27, .66)) !important;
  font-size: clamp(1rem, 1.25vw, 1.14rem) !important;
  line-height: 1.75 !important;
  margin: 0 !important;
  max-width: 36rem !important;
}

.s6-division-page--caulking #division-explainer .s6-caulking-section-head .s6-section-label,
.s6-division-page--caulking #division-products .s6-caulking-section-head .s6-section-label {
  color: var(--caulk-slate, #5f6f7b) !important;
}

@media (max-width: 900px) {
  .s6-division-page--caulking #division-explainer .s6-caulking-section-head,
  .s6-division-page--caulking #division-products .s6-caulking-section-head {
    grid-template-columns: 1fr !important;
    align-items: start !important;
  }

  .s6-division-page--caulking #division-explainer .s6-caulking-section-head > p,
  .s6-division-page--caulking #division-products .s6-caulking-section-head > p {
    max-width: none !important;
  }
}

.s6-division-page--caulking .s6-division-hero .s6-section-label,
.s6-division-page--caulking #division-contact .s6-section-label,
.s6-division-page--caulking .s6-division-cta--v32 .s6-section-label {
  color: #aec0cc !important;
}

.s6-division-page--caulking .s6-division-hero .s6-section-label::before,
.s6-division-page--caulking #division-contact .s6-section-label::before,
.s6-division-page--caulking .s6-division-cta--v32 .s6-section-label::before {
  background: #aec0cc !important;
}

.s6-division-page--caulking .s6-caulking-system-explainer__pills .s6-explainer-hotspot,
.s6-division-page--caulking .s6-caulking-system-explainer__pills.s6-coatings-system-explainer__pills .s6-explainer-hotspot,
.s6-division-page--caulking .s6-explainer-hotspot {
  background: rgba(244, 247, 249, .86) !important;
  border-color: rgba(95, 111, 123, .44) !important;
  color: var(--caulk-slate, #5f6f7b) !important;
}

.s6-division-page--caulking .s6-caulking-system-explainer__pills .s6-explainer-hotspot span,
.s6-division-page--caulking .s6-caulking-system-explainer__pills.s6-coatings-system-explainer__pills .s6-explainer-hotspot span,
.s6-division-page--caulking .s6-explainer-hotspot span {
  color: inherit !important;
}

.s6-division-page--caulking .s6-caulking-system-explainer__pills .s6-explainer-hotspot:hover,
.s6-division-page--caulking .s6-caulking-system-explainer__pills .s6-explainer-hotspot:focus-visible,
.s6-division-page--caulking .s6-caulking-system-explainer__pills .s6-explainer-hotspot.is-active,
.s6-division-page--caulking .s6-caulking-system-explainer__pills .s6-explainer-hotspot[aria-pressed="true"],
.s6-division-page--caulking .s6-caulking-system-explainer__pills.s6-coatings-system-explainer__pills .s6-explainer-hotspot:hover,
.s6-division-page--caulking .s6-caulking-system-explainer__pills.s6-coatings-system-explainer__pills .s6-explainer-hotspot:focus-visible,
.s6-division-page--caulking .s6-caulking-system-explainer__pills.s6-coatings-system-explainer__pills .s6-explainer-hotspot.is-active,
.s6-division-page--caulking .s6-caulking-system-explainer__pills.s6-coatings-system-explainer__pills .s6-explainer-hotspot[aria-pressed="true"],
.s6-division-page--caulking .s6-explainer-hotspot:hover,
.s6-division-page--caulking .s6-explainer-hotspot:focus-visible,
.s6-division-page--caulking .s6-explainer-hotspot.is-active,
.s6-division-page--caulking .s6-explainer-hotspot[aria-pressed="true"] {
  background: var(--caulk-slate, #5f6f7b) !important;
  border-color: var(--caulk-slate, #5f6f7b) !important;
  color: #ffffff !important;
}

body.s6-division-current--landscaping {
  --s6-division-theme-accent: #6f9f2f;
  --s6-division-theme-accent-soft: rgba(111, 159, 47, .20);
  --s6-division-theme-nav-bg: linear-gradient(135deg, rgba(246, 249, 241, .96), rgba(223, 232, 213, .92));
  --s6-division-theme-nav-ink: #162015;
  --s6-division-theme-nav-muted: rgba(22, 32, 21, .58);
  --s6-division-theme-nav-border: rgba(77, 104, 52, .18);
}

.s6-division-page--landscaping,
.s6-landscape-page {
  --land-accent: #6f9f2f;
  --land-accent-bright: #8ec640;
  --land-accent-dark: #26361f;
  --land-olive: #4f6b34;
  --land-sage: #dfe8d4;
  --land-sage-soft: #f5f8f1;
  --land-sage-mid: #cedcc2;
  --land-soil: #76644d;
  --land-ink: #162015;
  --land-muted: rgba(22, 32, 21, .66);
  --land-line: rgba(77, 104, 52, .18);
  background: var(--land-sage-soft) !important;
  color: var(--land-ink) !important;
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

.s6-division-page--landscaping .s6-landscape-hero {
  background-image:
    linear-gradient(120deg, rgba(7, 18, 11, .92), rgba(26, 50, 30, .68)),
    var(--s6-landscape-hero-bg) !important;
}

.s6-division-page--landscaping .s6-landscape-hero__overlay {
  background:
    radial-gradient(circle at 80% 16%, rgba(142, 198, 64, .16), transparent 34%),
    linear-gradient(90deg, rgba(7, 14, 9, .88) 0%, rgba(22, 44, 24, .54) 56%, rgba(142, 198, 64, .08) 100%) !important;
}

.s6-division-page--landscaping .s6-section-label,
.s6-division-page--landscaping .s6-coatings-section-head .s6-section-label,
.s6-division-page--landscaping .s6-division-section-header .s6-section-label,
.s6-division-page--landscaping .s6-division-opening__copy .s6-section-label,
.s6-division-page--landscaping .s6-stone-catalogue-group__head .s6-section-label,
.s6-division-page--landscaping .s6-stone-catalogue-footer__copy .s6-section-label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 14px !important;
  color: var(--land-accent, #6f9f2f) !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: .22em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
}

.s6-division-page--landscaping .s6-section-label::before,
.s6-division-page--landscaping .s6-coatings-section-head .s6-section-label::before,
.s6-division-page--landscaping .s6-division-section-header .s6-section-label::before,
.s6-division-page--landscaping .s6-division-opening__copy .s6-section-label::before,
.s6-division-page--landscaping .s6-stone-catalogue-group__head .s6-section-label::before,
.s6-division-page--landscaping .s6-stone-catalogue-footer__copy .s6-section-label::before {
  content: "" !important;
  display: block !important;
  width: 48px !important;
  height: 2px !important;
  flex: 0 0 48px !important;
  background: var(--land-accent, #6f9f2f) !important;
}

.s6-division-page--landscaping .s6-green-button,
.s6-division-page--landscaping .s6-outline-button:hover,
.s6-division-page--landscaping .s6-stone-catalogue-group__toggle:hover,
.s6-division-page--landscaping .s6-stone-catalogue-group__toggle:focus-visible {
  background: var(--land-accent, #6f9f2f) !important;
  border-color: var(--land-accent, #6f9f2f) !important;
  color: #10150f !important;
}

.s6-division-page--landscaping .s6-outline-button,
.s6-division-page--landscaping .s6-stone-catalogue-group__toggle {
  border-color: rgba(111, 159, 47, .34) !important;
  color: var(--land-ink, #162015) !important;
}

.s6-division-page--landscaping .s6-landscape-opening,
.s6-division-page--landscaping .s6-coatings-systems--classification,
.s6-division-page--landscaping .s6-landscape-explainer-section,
.s6-division-page--landscaping .s6-landscape-catalogue,
.s6-division-page--landscaping .s6-division-projects,
.s6-division-page--landscaping .s6-division-faq {
  background:
    radial-gradient(circle at 88% 8%, rgba(142,198,64,.13), transparent 32%),
    radial-gradient(circle at 8% 84%, rgba(118,100,77,.10), transparent 34%),
    linear-gradient(135deg, #f5f8f1 0%, #e5eddc 52%, #d6e3cb 100%) !important;
  color: var(--land-ink, #162015) !important;
}

.s6-division-page--landscaping .s6-overview-callout,
.s6-division-page--landscaping .s6-landscape-opening__callouts .s6-overview-callout {
  background: rgba(255,255,255,.58) !important;
  border: 1px solid var(--land-line, rgba(77,104,52,.18)) !important;
  box-shadow: 0 18px 44px rgba(45, 62, 34, .08) !important;
}

/* Landscape system cards: same grid, more outdoor-layered and organic than Stucco/Stone/Caulking. */
.s6-division-page--landscaping .s6-landscape-classification-card {
  position: relative !important;
  overflow: hidden !important;
  border: 1px solid rgba(77,104,52,.20) !important;
  border-radius: 0 !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.86), rgba(229,237,220,.82)),
    radial-gradient(circle at 86% 10%, rgba(142,198,64,.18), transparent 34%) !important;
  box-shadow: 0 24px 64px rgba(45, 54, 34, .11) !important;
}

.s6-division-page--landscaping .s6-landscape-classification-card::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  background:
    linear-gradient(90deg, rgba(111,159,47,.18) 0 4px, transparent 4px),
    repeating-linear-gradient(135deg, rgba(77,104,52,.055) 0 1px, transparent 1px 20px) !important;
  opacity: .72 !important;
}

.s6-division-page--landscaping .s6-landscape-classification-card::after {
  background: linear-gradient(90deg, rgba(111,159,47,.86), rgba(118,100,77,.16), transparent) !important;
  opacity: .78 !important;
}

.s6-division-page--landscaping .s6-landscape-classification-card:hover,
.s6-division-page--landscaping .s6-landscape-classification-card:focus-visible {
  transform: translateY(-4px) !important;
  border-color: rgba(111,159,47,.48) !important;
  box-shadow: 0 30px 82px rgba(45, 54, 34, .16) !important;
}

.s6-division-page--landscaping .s6-landscape-classification-card .s6-system-card__badge {
  background: var(--land-accent-dark, #26361f) !important;
  color: #f5f8f1 !important;
  border-color: rgba(255,255,255,.18) !important;
}

.s6-division-page--landscaping .s6-landscape-classification-card .s6-system-card__kicker {
  color: rgba(22,32,21,.54) !important;
}

.s6-division-page--landscaping .s6-landscape-classification-card .s6-system-card__label {
  color: var(--land-accent, #6f9f2f) !important;
}

.s6-division-page--landscaping .s6-landscape-classification-card .s6-system-card__rule {
  background: linear-gradient(90deg, rgba(111,159,47,.82), rgba(77,104,52,.12)) !important;
}

.s6-division-page--landscaping .s6-landscape-classification-card__visual {
  border: 1px solid rgba(77,104,52,.16) !important;
  background:
    radial-gradient(circle at 48% 38%, rgba(142,198,64,.18), transparent 44%),
    linear-gradient(145deg, rgba(255,255,255,.70), rgba(204,221,190,.62)) !important;
}

.s6-division-page--landscaping .s6-landscape-system-visual span:nth-child(1) { background: linear-gradient(135deg, #74634e, #d8c7a8) !important; }
.s6-division-page--landscaping .s6-landscape-system-visual span:nth-child(2) { background: linear-gradient(135deg, #4f6b34, #aeca86) !important; }
.s6-division-page--landscaping .s6-landscape-system-visual span:nth-child(3) { background: linear-gradient(135deg, #2f4d2f, #8ec640) !important; }
.s6-division-page--landscaping .s6-landscape-system-visual span:nth-child(4) { background: linear-gradient(135deg, #1f3625, #bddf83) !important; }

.s6-division-page--landscaping .s6-landscape-classification-card .s6-system-card__specs {
  background: rgba(245,248,241,.62) !important;
  border-top-color: rgba(77,104,52,.16) !important;
}

.s6-division-page--landscaping .s6-landscape-classification-card .s6-system-card__spec {
  border-color: rgba(77,104,52,.14) !important;
}

.s6-division-page--landscaping .s6-landscape-classification-card .s6-system-card__spec span {
  color: rgba(22,32,21,.52) !important;
}

/* Explainer: landscape field-board treatment, preserving approved Caulking/Coatings split behavior. */
.s6-division-page--landscaping .s6-landscape-system-explainer.s6-coatings-system-explainer {
  background:
    linear-gradient(135deg, rgba(245,248,241,.94), rgba(214,227,203,.80)),
    repeating-linear-gradient(0deg, rgba(77,104,52,.05) 0 1px, transparent 1px 20px),
    repeating-linear-gradient(90deg, rgba(77,104,52,.04) 0 1px, transparent 1px 20px) !important;
  border-color: rgba(77,104,52,.20) !important;
  box-shadow: 0 34px 100px rgba(45, 54, 34, .12) !important;
}

.s6-division-page--landscaping .s6-landscape-system-explainer__pills.s6-coatings-system-explainer__pills .s6-explainer-hotspot {
  background: rgba(18, 32, 21, .78) !important;
  border-color: rgba(255,255,255,.22) !important;
  color: #f5f8f1 !important;
}

.s6-division-page--landscaping .s6-landscape-system-explainer__pills.s6-coatings-system-explainer__pills .s6-explainer-hotspot:hover,
.s6-division-page--landscaping .s6-landscape-system-explainer__pills.s6-coatings-system-explainer__pills .s6-explainer-hotspot:focus-visible,
.s6-division-page--landscaping .s6-landscape-system-explainer__pills.s6-coatings-system-explainer__pills .s6-explainer-hotspot.is-active,
.s6-division-page--landscaping .s6-landscape-system-explainer__pills.s6-coatings-system-explainer__pills .s6-explainer-hotspot[aria-pressed="true"] {
  background: var(--land-accent, #6f9f2f) !important;
  border-color: var(--land-accent, #6f9f2f) !important;
  color: #10150f !important;
}

.s6-division-page--landscaping .s6-landscape-system-explainer.s6-coatings-system-explainer .s6-division-explainer__default > span,
.s6-division-page--landscaping .s6-landscape-system-explainer.s6-coatings-system-explainer .s6-division-explainer__point-system > span,
.s6-division-page--landscaping .s6-landscape-system-explainer__hint p span {
  color: var(--land-accent, #6f9f2f) !important;
}

.s6-division-page--landscaping .s6-landscape-system-explainer__detail-panel,
.s6-division-page--landscaping .s6-coatings-system-explainer__detail-panel.s6-landscape-system-explainer__detail-panel,
.s6-division-page--landscaping .s6-landscape-system-explainer__overview-panel {
  background: rgba(255,255,255,.52) !important;
  border-color: rgba(77,104,52,.16) !important;
}

/* Product catalogue: same grid/layout, new outdoor material card skin. */
.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-catalogue-group {
  border: 1px solid rgba(77,104,52,.18) !important;
  background:
    linear-gradient(135deg, rgba(255,255,255,.82), rgba(223,232,213,.80)),
    radial-gradient(circle at 92% 8%, rgba(142,198,64,.12), transparent 32%) !important;
  box-shadow: 0 28px 78px rgba(45,54,34,.10) !important;
}

.s6-division-page--landscaping .s6-landscape-product-card,
.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card {
  overflow: hidden !important;
  border: 1px solid rgba(77,104,52,.17) !important;
  border-radius: 0 !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.86), rgba(238,244,232,.84)) !important;
  box-shadow: 0 20px 54px rgba(45,54,34,.10) !important;
}

.s6-division-page--landscaping .s6-landscape-product-card:hover,
.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card:hover {
  transform: translateY(-3px) !important;
  border-color: rgba(111,159,47,.46) !important;
  box-shadow: 0 28px 72px rgba(45,54,34,.15) !important;
}

.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card__image {
  min-height: 13rem !important;
  position: relative !important;
  background-image:
    linear-gradient(180deg, rgba(12,22,14,.04), rgba(12,22,14,.18)),
    var(--s6-stone-product-bg) !important;
  background-size: cover !important;
  background-position: center !important;
}

.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card__image::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(0deg, rgba(22,32,21,.22), transparent 56%),
    radial-gradient(circle at 84% 16%, rgba(142,198,64,.22), transparent 32%) !important;
  pointer-events: none !important;
}

.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card__content {
  position: relative !important;
  background:
    linear-gradient(90deg, rgba(111,159,47,.14) 0 4px, transparent 4px),
    rgba(245,248,241,.95) !important;
  color: var(--land-ink, #162015) !important;
}

.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card__content h4 {
  color: var(--land-ink, #162015) !important;
}

.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card__content p {
  color: var(--land-muted, rgba(22,32,21,.66)) !important;
}

.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-swatch:hover,
.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-swatch.is-active {
  border-color: rgba(111,159,47,.72) !important;
  box-shadow: 0 0 0 2px rgba(111,159,47,.16), 0 7px 14px rgba(45,54,34,.14) !important;
}

/* Related Projects + FAQ: approved Stucco/Stone behavior, recoloured only. */
.s6-division-page--landscaping .s6-division-projects.s6-light-concrete-section,
.s6-division-page--landscaping #division-projects,
.s6-division-page--landscaping .s6-division-faq.s6-light-concrete-section,
.s6-division-page--landscaping #division-faq {
  margin: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
}

.s6-division-page--landscaping .s6-division-projects .s6-division-project-feature a {
  position: relative !important;
  overflow: hidden !important;
  min-height: clamp(26rem, 44vw, 38rem) !important;
  display: block !important;
  background: #121a12 !important;
  border: 1px solid rgba(77,104,52,.22) !important;
  box-shadow: 0 30px 90px rgba(26,38,24,.18) !important;
}

.s6-division-page--landscaping .s6-division-projects .s6-division-project-feature__image {
  position: absolute !important;
  inset: 0 !important;
  min-height: 100% !important;
  background-image:
    linear-gradient(180deg, rgba(7,14,9,.05), rgba(7,14,9,.72)),
    var(--s6-division-project-bg) !important;
  background-size: cover !important;
  background-position: center !important;
  transform: scale(1.01) !important;
}

.s6-division-page--landscaping .s6-division-projects .s6-division-project-feature__image > span {
  display: none !important;
}

.s6-division-page--landscaping .s6-division-projects .s6-division-project-feature__content {
  position: absolute !important;
  left: clamp(1.5rem, 3vw, 3rem) !important;
  right: clamp(1.5rem, 3vw, 3rem) !important;
  bottom: clamp(1.5rem, 3vw, 3rem) !important;
  z-index: 3 !important;
  max-width: 34rem !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: #fff !important;
  text-shadow: 0 1.25rem 3rem rgba(0,0,0,.42) !important;
}

.s6-division-page--landscaping .s6-division-projects .s6-division-project-feature__content small {
  display: block !important;
  margin: 0 0 .65rem !important;
  color: #bfe18a !important;
  font-size: .68rem !important;
  font-weight: 900 !important;
  letter-spacing: .2em !important;
  text-transform: uppercase !important;
}

.s6-division-page--landscaping .s6-division-projects .s6-division-project-feature__content h3 {
  color: #fff !important;
  font-size: clamp(2rem, 3.8vw, 4.4rem) !important;
  line-height: .9 !important;
  letter-spacing: -.06em !important;
  text-transform: uppercase !important;
}

.s6-division-page--landscaping .s6-division-projects .s6-division-project-feature__content p {
  color: #e7f0dc !important;
  font-size: .68rem !important;
  font-weight: 900 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
}

.s6-division-page--landscaping .s6-division-project-card__content {
  background: linear-gradient(180deg, rgba(245,248,241,.98) 0%, rgba(223,232,213,.98) 100%) !important;
  color: var(--land-ink, #162015) !important;
}

.s6-division-page--landscaping .s6-division-project-card__content h3 {
  color: var(--land-ink, #162015) !important;
}

.s6-division-page--landscaping .s6-division-project-card__content span,
.s6-division-page--landscaping .s6-division-project-latest-head span {
  color: var(--land-accent, #6f9f2f) !important;
}

.s6-division-page--landscaping .s6-faq-list {
  display: grid !important;
  gap: .95rem !important;
  border-top: 0 !important;
}

.s6-division-page--landscaping .s6-faq-item {
  border-bottom: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.s6-division-page--landscaping .s6-faq-question {
  min-height: 4.15rem !important;
  padding: 1rem 1.05rem 1rem 1.25rem !important;
  background: rgba(245,248,241,.92) !important;
  border: 1px solid rgba(77,104,52,.16) !important;
  border-left: 3px solid rgba(111,159,47,.62) !important;
  border-radius: .18rem !important;
  color: var(--land-ink, #162015) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.70) !important;
}

.s6-division-page--landscaping .s6-faq-question:hover,
.s6-division-page--landscaping .s6-faq-question:focus-visible,
.s6-division-page--landscaping .s6-faq-question[aria-expanded="true"] {
  background: rgba(250,252,247,.98) !important;
  border-color: rgba(77,104,52,.24) !important;
  border-left-color: rgba(111,159,47,.95) !important;
}

.s6-division-page--landscaping .s6-faq-question em {
  width: 2rem !important;
  height: 2rem !important;
  flex: 0 0 2rem !important;
  display: inline-grid !important;
  place-items: center !important;
  border-radius: .12rem !important;
  background: rgba(255,255,255,.66) !important;
  border: 1px solid rgba(77,104,52,.18) !important;
  color: var(--land-ink, #162015) !important;
  box-shadow: none !important;
}

.s6-division-page--landscaping .s6-faq-question[aria-expanded="true"] em {
  background: rgba(111,159,47,.15) !important;
  border-color: rgba(111,159,47,.56) !important;
  transform: rotate(45deg) !important;
}

.s6-division-page--landscaping .s6-faq-answer {
  position: relative !important;
  margin: .45rem .25rem .25rem clamp(1.4rem, 3.2vw, 3rem) !important;
  padding: 1rem clamp(1rem, 2vw, 1.45rem) !important;
  background: rgba(223,232,213,.76) !important;
  border: 1px solid rgba(77,104,52,.12) !important;
  border-left: 3px solid rgba(111,159,47,.72) !important;
  border-radius: .12rem !important;
  color: var(--land-muted, rgba(22,32,21,.66)) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.34) !important;
}

.s6-division-page--landscaping .s6-faq-answer::before,
.s6-division-page--landscaping .s6-faq-answer::after {
  content: none !important;
  display: none !important;
}

.s6-division-page--landscaping .s6-division-cta--v32,
.s6-division-page--landscaping > section:last-of-type {
  margin-bottom: 0 !important;
}

.s6-division-page--landscaping + .s6-footer {
  margin-top: 0 !important;
}

@media (max-width: 680px) {
  .s6-division-page--landscaping .s6-section-label,
  .s6-division-page--landscaping .s6-coatings-section-head .s6-section-label,
  .s6-division-page--landscaping .s6-division-section-header .s6-section-label,
  .s6-division-page--landscaping .s6-division-opening__copy .s6-section-label,
  .s6-division-page--landscaping .s6-stone-catalogue-group__head .s6-section-label,
  .s6-division-page--landscaping .s6-stone-catalogue-footer__copy .s6-section-label {
    gap: 12px !important;
    font-size: 11px !important;
    letter-spacing: .18em !important;
  }

  .s6-division-page--landscaping .s6-section-label::before,
  .s6-division-page--landscaping .s6-coatings-section-head .s6-section-label::before,
  .s6-division-page--landscaping .s6-division-section-header .s6-section-label::before,
  .s6-division-page--landscaping .s6-division-opening__copy .s6-section-label::before,
  .s6-division-page--landscaping .s6-stone-catalogue-group__head .s6-section-label::before,
  .s6-division-page--landscaping .s6-stone-catalogue-footer__copy .s6-section-label::before {
    width: 34px !important;
    flex-basis: 34px !important;
  }

  .s6-division-page--landscaping .s6-division-projects .s6-division-project-feature-grid {
    grid-template-columns: 1fr !important;
  }

  .s6-division-page--landscaping .s6-division-projects .s6-division-project-feature a {
    min-height: 24rem !important;
  }

  .s6-division-page--landscaping .s6-division-projects .s6-division-project-feature__content {
    left: 18px !important;
    right: 18px !important;
    bottom: 18px !important;
  }

  .s6-division-page--landscaping .s6-faq-answer {
    margin-left: .85rem !important;
    margin-right: .1rem !important;
  }
}

.s6-division-page--landscaping {
  --land-accent: #6f9f2f;
  --land-accent-bright: #8ec640;
  --land-ink: #162015;
  --land-muted: rgba(22, 32, 21, .66);
  --land-canvas: #e4ecdc;
  --land-canvas-2: #f3f7ef;
  --land-panel: #f6f9f2;
  --land-panel-2: #dde8d1;
  background: linear-gradient(180deg, var(--land-canvas-2) 0%, var(--land-canvas) 100%) !important;
}

/* Division overview: make the section read as Landscaping, not inherited concrete/beige. */
.s6-division-page--landscaping .s6-landscape-opening,
.s6-division-page--landscaping #division-overview.s6-landscape-opening {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  padding: clamp(5rem, 8vw, 8rem) clamp(1.5rem, 6vw, 5.75rem) !important;
  background:
    radial-gradient(circle at 14% 10%, rgba(142,198,64,.14), transparent 31rem),
    radial-gradient(circle at 84% 18%, rgba(111,159,47,.10), transparent 28rem),
    linear-gradient(180deg, #f3f7ef 0%, #e2ebda 100%) !important;
  border-top: 1px solid rgba(77,104,52,.12) !important;
  border-bottom: 1px solid rgba(77,104,52,.14) !important;
}

.s6-division-page--landscaping .s6-landscape-opening__media {
  border: 1px solid rgba(77,104,52,.18) !important;
  box-shadow: 0 2rem 5rem rgba(33, 53, 28, .16) !important;
}

.s6-division-page--landscaping .s6-landscape-opening__media::after {
  border-color: rgba(255,255,255,.42) !important;
}

.s6-division-page--landscaping .s6-landscape-opening__copy h2,
.s6-division-page--landscaping .s6-landscape-opening__copy p:not(.s6-section-label) {
  color: var(--land-ink) !important;
}

.s6-division-page--landscaping .s6-landscape-opening__copy p:not(.s6-section-label) {
  color: var(--land-muted) !important;
}

.s6-division-page--landscaping .s6-landscape-opening__callouts {
  border-color: rgba(77,104,52,.14) !important;
  background: rgba(246,249,242,.72) !important;
}

.s6-division-page--landscaping .s6-landscape-opening__callouts span,
.s6-division-page--landscaping .s6-landscape-opening__callouts strong {
  color: var(--land-ink) !important;
}

/* Related projects + FAQ: full themed canvas, centered internal content. */
.s6-division-page--landscaping .s6-division-projects,
.s6-division-page--landscaping .s6-division-faq {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  padding-left: clamp(1.5rem, 6vw, 5.75rem) !important;
  padding-right: clamp(1.5rem, 6vw, 5.75rem) !important;
  background:
    radial-gradient(circle at 12% 6%, rgba(142,198,64,.12), transparent 30rem),
    linear-gradient(180deg, #eef5e8 0%, #dfead6 100%) !important;
  border-top: 1px solid rgba(77,104,52,.11) !important;
  border-bottom: 1px solid rgba(77,104,52,.12) !important;
}

.s6-division-page--landscaping .s6-division-projects .s6-division-section-header,
.s6-division-page--landscaping .s6-division-projects .s6-division-project-board,
.s6-division-page--landscaping .s6-division-projects .s6-division-empty-projects,
.s6-division-page--landscaping .s6-division-faq .s6-division-section-header,
.s6-division-page--landscaping .s6-division-faq .s6-faq-list {
  width: min(100%, 1240px) !important;
  max-width: 1240px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.s6-division-page--landscaping .s6-division-faq .s6-division-section-header {
  margin-bottom: clamp(1.75rem, 3vw, 2.75rem) !important;
}

/* Remove any leftover white shell/frame from inherited section/card wrappers. */
.s6-division-page--landscaping .s6-division-project-board,
.s6-division-page--landscaping .s6-faq-list {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.s6-division-page--landscaping .s6-division-project-board::before,
.s6-division-page--landscaping .s6-division-project-board::after,
.s6-division-page--landscaping .s6-faq-list::before,
.s6-division-page--landscaping .s6-faq-list::after {
  content: none !important;
  display: none !important;
}

@media (max-width: 760px) {
  .s6-division-page--landscaping .s6-landscape-opening,
  .s6-division-page--landscaping #division-overview.s6-landscape-opening,
  .s6-division-page--landscaping .s6-division-projects,
  .s6-division-page--landscaping .s6-division-faq {
    padding-left: 1.1rem !important;
    padding-right: 1.1rem !important;
  }
}

.s6-division-page--landscaping #division-overview.s6-division-opening,
.s6-division-page--landscaping .s6-division-opening.s6-light-concrete-section {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  padding: clamp(5rem, 8vw, 8rem) clamp(1.5rem, 6vw, 5.75rem) !important;
  background:
    radial-gradient(circle at 14% 10%, rgba(142,198,64,.15), transparent 31rem),
    radial-gradient(circle at 84% 18%, rgba(111,159,47,.11), transparent 28rem),
    linear-gradient(180deg, #f3f7ef 0%, #e3ecda 58%, #d8e5cf 100%) !important;
  border-top: 1px solid rgba(77,104,52,.12) !important;
  border-bottom: 1px solid rgba(77,104,52,.14) !important;
  color: var(--land-ink, #162015) !important;
}

.s6-division-page--landscaping #division-overview .s6-division-opening__media,
.s6-division-page--landscaping .s6-division-opening.s6-light-concrete-section .s6-division-opening__media {
  border: 1px solid rgba(77,104,52,.18) !important;
  box-shadow: 0 2rem 5rem rgba(33,53,28,.16) !important;
}

.s6-division-page--landscaping #division-overview .s6-division-opening__media::after,
.s6-division-page--landscaping .s6-division-opening.s6-light-concrete-section .s6-division-opening__media::after {
  border-color: rgba(255,255,255,.42) !important;
}

.s6-division-page--landscaping #division-overview .s6-division-opening__copy h2,
.s6-division-page--landscaping #division-overview .s6-division-opening__copy p:not(.s6-section-label),
.s6-division-page--landscaping .s6-division-opening.s6-light-concrete-section .s6-division-opening__copy h2,
.s6-division-page--landscaping .s6-division-opening.s6-light-concrete-section .s6-division-opening__copy p:not(.s6-section-label) {
  color: var(--land-ink, #162015) !important;
}

.s6-division-page--landscaping #division-overview .s6-division-opening__copy p:not(.s6-section-label),
.s6-division-page--landscaping .s6-division-opening.s6-light-concrete-section .s6-division-opening__copy p:not(.s6-section-label) {
  color: var(--land-muted, rgba(22,32,21,.66)) !important;
}

.s6-division-page--landscaping #division-overview .s6-division-opening__callouts,
.s6-division-page--landscaping .s6-division-opening.s6-light-concrete-section .s6-division-opening__callouts {
  border-color: rgba(77,104,52,.14) !important;
  background: rgba(246,249,242,.74) !important;
  box-shadow: 0 18px 44px rgba(45,62,34,.08) !important;
}

.s6-division-page--landscaping #division-overview .s6-overview-callout,
.s6-division-page--landscaping .s6-division-opening.s6-light-concrete-section .s6-overview-callout {
  background: rgba(255,255,255,.58) !important;
  border: 1px solid rgba(77,104,52,.18) !important;
}

.s6-division-page--landscaping #division-overview .s6-overview-callout strong,
.s6-division-page--landscaping #division-overview .s6-overview-callout small,
.s6-division-page--landscaping .s6-division-opening.s6-light-concrete-section .s6-overview-callout strong,
.s6-division-page--landscaping .s6-division-opening.s6-light-concrete-section .s6-overview-callout small {
  color: var(--land-ink, #162015) !important;
}

@media (max-width: 760px) {
  .s6-division-page--landscaping #division-overview.s6-division-opening,
  .s6-division-page--landscaping .s6-division-opening.s6-light-concrete-section {
    padding-left: 1.1rem !important;
    padding-right: 1.1rem !important;
  }
}

.s6-division-page--landscaping #division-overview.s6-division-opening::before,
.s6-division-page--landscaping .s6-landscape-opening.s6-division-opening::before,
.s6-division-page--landscaping .s6-division-opening.s6-light-concrete-section::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  top: 0 !important;
  bottom: 0 !important;
  left: 50% !important;
  width: 100vw !important;
  transform: translateX(-50%) !important;
  background:
    radial-gradient(circle at 14% 10%, rgba(142,198,64,.15), transparent 31rem),
    radial-gradient(circle at 84% 18%, rgba(111,159,47,.11), transparent 28rem),
    linear-gradient(180deg, #f3f7ef 0%, #e3ecda 58%, #d8e5cf 100%) !important;
  pointer-events: none !important;
  z-index: -1 !important;
}

.s6-division-page--landscaping #division-overview.s6-division-opening,
.s6-division-page--landscaping .s6-landscape-opening.s6-division-opening,
.s6-division-page--landscaping .s6-division-opening.s6-light-concrete-section {
  isolation: isolate !important;
  background: transparent !important;
}

.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-catalogue-group {
  border: 1px solid rgba(61, 93, 43, .22) !important;
  background:
    linear-gradient(135deg, rgba(232, 239, 221, .96), rgba(211, 226, 196, .92)),
    radial-gradient(circle at 100% 0%, rgba(142, 198, 64, .16), transparent 34%) !important;
  box-shadow: 0 26px 70px rgba(31, 54, 37, .13) !important;
}

.s6-division-page--landscaping .s6-landscape-product-card,
.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  border-radius: 0 !important;
  border: 1px solid rgba(31, 54, 37, .22) !important;
  background: #172414 !important;
  box-shadow: 0 24px 58px rgba(31, 54, 37, .18) !important;
  isolation: isolate !important;
}

.s6-division-page--landscaping .s6-landscape-product-card::before,
.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  pointer-events: none !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.10), transparent 18%),
    linear-gradient(0deg, rgba(12, 23, 14, .88), rgba(12, 23, 14, .16) 58%, rgba(12, 23, 14, .08)) !important;
}

.s6-division-page--landscaping .s6-landscape-product-card::after,
.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card::after {
  content: "" !important;
  position: absolute !important;
  left: 1.25rem !important;
  right: 1.25rem !important;
  bottom: 1.1rem !important;
  height: 1px !important;
  z-index: 4 !important;
  background: linear-gradient(90deg, rgba(142,198,64,.95), rgba(142,198,64,0)) !important;
  pointer-events: none !important;
}

.s6-division-page--landscaping .s6-landscape-product-card:hover,
.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card:hover {
  transform: translateY(-4px) !important;
  border-color: rgba(142,198,64,.58) !important;
  box-shadow: 0 32px 82px rgba(31, 54, 37, .25) !important;
}

.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card__image {
  position: absolute !important;
  inset: 0 !important;
  min-height: 0 !important;
  height: 100% !important;
  z-index: 1 !important;
  background-image:
    linear-gradient(180deg, rgba(12,22,14,.10), rgba(12,22,14,.34)),
    var(--s6-stone-product-bg) !important;
  background-size: cover !important;
  background-position: center !important;
  transform: scale(1.01) !important;
  transition: transform .45s ease, filter .45s ease !important;
}

.s6-division-page--landscaping .s6-landscape-product-card:hover .s6-stone-product-card__image,
.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card:hover .s6-stone-product-card__image {
  transform: scale(1.045) !important;
  filter: saturate(1.06) contrast(1.02) !important;
}

.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card__image::after {
  display: none !important;
}

.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card__content {
  position: relative !important;
  z-index: 3 !important;
  margin-top: auto !important;
  min-height: 17rem !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-end !important;
  padding: clamp(1.25rem, 2vw, 1.65rem) !important;
  background: transparent !important;
  color: #f5f8f1 !important;
}

.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card__content h4 {
  color: #ffffff !important;
  max-width: 18rem !important;
  text-shadow: 0 2px 18px rgba(0,0,0,.42) !important;
}

.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card__content p {
  color: rgba(245,248,241,.82) !important;
  max-width: 24rem !important;
  text-shadow: 0 2px 14px rgba(0,0,0,.36) !important;
}

.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card__content small,
.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card__content span {
  color: rgba(190, 225, 137, .92) !important;
}

.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-swatch {
  border-color: rgba(245,248,241,.52) !important;
  box-shadow: 0 8px 18px rgba(0,0,0,.20) !important;
}

.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-swatch:hover,
.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-swatch.is-active {
  border-color: rgba(190,225,137,.95) !important;
  box-shadow: 0 0 0 2px rgba(142,198,64,.28), 0 10px 24px rgba(0,0,0,.24) !important;
}

.s6-division-page--architectural-coatings {
  --s6-coatings-blue: #4f7396;
  --s6-coatings-blue-dark: #355a7a;
  --s6-coatings-blue-soft: rgba(79, 115, 150, .18);
  --s6-coatings-bg: #e8eef3;
  --s6-coatings-bg-2: #dde7ef;
  --s6-coatings-panel: #f4f7fa;
  --s6-coatings-ink: #182734;
  --s6-coatings-muted: rgba(24, 39, 52, .68);
  --s6-division-theme-accent: #4f7396;
  --s6-division-theme-accent-soft: rgba(79,115,150,.18);
  --s6-division-theme-nav-bg: linear-gradient(135deg, rgba(244,247,250,.96), rgba(221,231,239,.92));
  --s6-division-theme-nav-ink: #182734;
  --s6-division-theme-nav-muted: rgba(24,39,52,.58);
  --s6-division-theme-nav-border: rgba(79,115,150,.24);
  background: linear-gradient(180deg, #e8eef3 0%, #dce7ef 52%, #e8eef3 100%) !important;
}

.s6-division-page--architectural-coatings .s6-section-label,
.s6-division-page--architectural-coatings .s6-section-label::before {
  color: var(--s6-coatings-blue) !important;
  border-color: var(--s6-coatings-blue) !important;
  background-color: var(--s6-coatings-blue) !important;
}

.s6-division-page--architectural-coatings .s6-green-button {
  background: var(--s6-coatings-blue) !important;
  border-color: var(--s6-coatings-blue) !important;
  color: #fff !important;
}

.s6-division-page--architectural-coatings .s6-outline-button,
.s6-division-page--architectural-coatings .s6-outline-button--dark {
  border-color: rgba(79,115,150,.55) !important;
  color: var(--s6-coatings-blue-dark) !important;
}

.s6-division-page--architectural-coatings .s6-division-opening,
.s6-division-page--architectural-coatings .s6-coatings-opening,
.s6-division-page--architectural-coatings .s6-coatings-systems--classification,
.s6-division-page--architectural-coatings .s6-coatings-explainer-section,
.s6-division-page--architectural-coatings .s6-coatings-catalogue,
.s6-division-page--architectural-coatings #division-projects,
.s6-division-page--architectural-coatings #division-faq {
  background:
    radial-gradient(circle at 12% 8%, rgba(79,115,150,.12), transparent 28rem),
    linear-gradient(180deg, var(--s6-coatings-bg) 0%, var(--s6-coatings-bg-2) 100%) !important;
  color: var(--s6-coatings-ink) !important;
}

.s6-division-page--architectural-coatings .s6-division-opening__copy,
.s6-division-page--architectural-coatings .s6-coatings-opening__copy,
.s6-division-page--architectural-coatings .s6-coatings-section-head,
.s6-division-page--architectural-coatings .s6-division-section-header,
.s6-division-page--architectural-coatings .s6-division-faq__header {
  color: var(--s6-coatings-ink) !important;
}

.s6-division-page--architectural-coatings .s6-division-opening__copy p:not(.s6-section-label),
.s6-division-page--architectural-coatings .s6-coatings-section-head p:not(.s6-section-label),
.s6-division-page--architectural-coatings .s6-division-section-header p:not(.s6-section-label) {
  color: var(--s6-coatings-muted) !important;
}

.s6-division-page--architectural-coatings .s6-overview-callout,
.s6-division-page--architectural-coatings .s6-coatings-opening__callouts .s6-overview-callout {
  background: rgba(244,247,250,.82) !important;
  border-color: rgba(79,115,150,.24) !important;
  box-shadow: inset 0 1px rgba(255,255,255,.62) !important;
}

.s6-division-page--architectural-coatings .s6-overview-callout span,
.s6-division-page--architectural-coatings .s6-overview-callout strong {
  color: var(--s6-coatings-blue-dark) !important;
}

/* Coatings systems/cards: technical coating-film specification look. */
.s6-division-page--architectural-coatings .s6-coatings-classification-card {
  background:
    linear-gradient(180deg, rgba(244,247,250,.98), rgba(219,230,238,.94)) !important;
  border: 1px solid rgba(79,115,150,.25) !important;
  border-left: 4px solid var(--s6-coatings-blue) !important;
  box-shadow: inset 0 1px rgba(255,255,255,.72), 0 1.1rem 2.2rem rgba(24,39,52,.08) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-classification-card::before {
  background:
    linear-gradient(90deg, rgba(79,115,150,.16), transparent 38%),
    repeating-linear-gradient(0deg, rgba(24,39,52,.035) 0 1px, transparent 1px 18px) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-classification-card:hover,
.s6-division-page--architectural-coatings .s6-coatings-classification-card:focus-visible {
  border-color: rgba(79,115,150,.46) !important;
  border-left-color: var(--s6-coatings-blue-dark) !important;
}

.s6-division-page--architectural-coatings .s6-system-card__badge {
  border-color: rgba(79,115,150,.72) !important;
  color: var(--s6-coatings-blue-dark) !important;
  background: rgba(79,115,150,.10) !important;
}

.s6-division-page--architectural-coatings .s6-system-card__rule,
.s6-division-page--architectural-coatings .s6-coatings-system-explainer__hint p span {
  background: var(--s6-coatings-blue) !important;
  color: var(--s6-coatings-blue) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer {
  background:
    linear-gradient(135deg, rgba(244,247,250,.96), rgba(217,229,238,.84)),
    repeating-linear-gradient(0deg, rgba(24,39,52,.035) 0 1px, transparent 1px 20px),
    repeating-linear-gradient(90deg, rgba(24,39,52,.03) 0 1px, transparent 1px 20px) !important;
  border: 1px solid rgba(79,115,150,.28) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer__detail-panel,
.s6-division-page--architectural-coatings .s6-coatings-system-explainer__overview-panel {
  background: rgba(244,247,250,.78) !important;
  border-color: rgba(79,115,150,.22) !important;
}

.s6-division-page--architectural-coatings .s6-explainer-hotspot,
.s6-division-page--architectural-coatings .s6-coatings-system-explainer__pills .s6-explainer-hotspot {
  background: rgba(244,247,250,.92) !important;
  border-color: rgba(79,115,150,.28) !important;
  color: var(--s6-coatings-blue-dark) !important;
}

.s6-division-page--architectural-coatings .s6-explainer-hotspot:hover,
.s6-division-page--architectural-coatings .s6-explainer-hotspot:focus-visible,
.s6-division-page--architectural-coatings .s6-explainer-hotspot.is-active,
.s6-division-page--architectural-coatings .s6-explainer-hotspot[aria-pressed="true"] {
  background: var(--s6-coatings-blue) !important;
  border-color: var(--s6-coatings-blue-dark) !important;
  color: #fff !important;
}

.s6-division-page--architectural-coatings .s6-explainer-hotspot:hover span,
.s6-division-page--architectural-coatings .s6-explainer-hotspot:focus-visible span,
.s6-division-page--architectural-coatings .s6-explainer-hotspot.is-active span,
.s6-division-page--architectural-coatings .s6-explainer-hotspot[aria-pressed="true"] span {
  color: #fff !important;
}

/* Coatings product catalogue: same grid/layout, redesigned as technical coating specification cards. */
.s6-division-page--architectural-coatings .s6-coatings-catalogue .s6-stone-catalogue-group,
.s6-division-page--architectural-coatings .s6-coatings-catalogue-group {
  background: rgba(244,247,250,.72) !important;
  border: 1px solid rgba(79,115,150,.24) !important;
  box-shadow: inset 0 1px rgba(255,255,255,.74) !important;
}

.s6-division-page--architectural-coatings .s6-stone-catalogue-group__head {
  border-color: rgba(79,115,150,.2) !important;
}

.s6-division-page--architectural-coatings .s6-stone-catalogue-group__head > span {
  color: var(--s6-coatings-blue) !important;
  border-color: rgba(79,115,150,.28) !important;
  background: rgba(79,115,150,.08) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-product-card,
.s6-division-page--architectural-coatings .s6-coatings-catalogue .s6-stone-product-card {
  position: relative;
  border-radius: 0 !important;
  overflow: hidden;
  background: linear-gradient(180deg, #f7f9fb 0%, #e6eef5 100%) !important;
  border: 1px solid rgba(79,115,150,.26) !important;
  border-top: 4px solid var(--s6-coatings-blue) !important;
  box-shadow: inset 0 1px rgba(255,255,255,.75), 0 1rem 2rem rgba(24,39,52,.08) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-product-card::before,
.s6-division-page--architectural-coatings .s6-coatings-catalogue .s6-stone-product-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(79,115,150,.08), transparent 34%),
    repeating-linear-gradient(0deg, rgba(24,39,52,.032) 0 1px, transparent 1px 16px);
  pointer-events: none;
  z-index: 1;
}

.s6-division-page--architectural-coatings .s6-coatings-product-card:hover,
.s6-division-page--architectural-coatings .s6-coatings-catalogue .s6-stone-product-card:hover {
  border-color: rgba(79,115,150,.48) !important;
  border-top-color: var(--s6-coatings-blue-dark) !important;
  transform: translateY(-2px);
}

.s6-division-page--architectural-coatings .s6-coatings-catalogue .s6-stone-product-card__image {
  min-height: 15.5rem;
  background-color: #dbe7f0 !important;
  filter: saturate(.92) contrast(1.04);
}

.s6-division-page--architectural-coatings .s6-coatings-catalogue .s6-stone-product-card__image::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(24,39,52,.04), rgba(24,39,52,.22)) !important;
  pointer-events: none;
}

.s6-division-page--architectural-coatings .s6-coatings-catalogue .s6-stone-product-card__image span {
  color: #fff !important;
  background: rgba(24,39,52,.72) !important;
  border: 1px solid rgba(255,255,255,.22) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-catalogue .s6-stone-product-card__body {
  position: relative;
  z-index: 2;
  background: transparent !important;
  border-top: 1px solid rgba(79,115,150,.2) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-catalogue .s6-stone-product-card__body h4 {
  color: var(--s6-coatings-ink) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-catalogue .s6-stone-product-card__body h4::after {
  content: "";
  display: block;
  width: 2rem;
  height: 2px;
  margin-top: .72rem;
  background: var(--s6-coatings-blue) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-catalogue .s6-stone-product-card__body p {
  color: var(--s6-coatings-muted) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-catalogue .s6-stone-product-swatch:hover,
.s6-division-page--architectural-coatings .s6-coatings-catalogue .s6-stone-product-swatch.is-active {
  border-color: var(--s6-coatings-blue) !important;
  box-shadow: 0 0 0 2px rgba(79,115,150,.24) !important;
}

.s6-division-page--architectural-coatings .s6-stone-catalogue-group__toggle {
  background: #182734 !important;
  color: #fff !important;
  border-color: #182734 !important;
}

.s6-division-page--architectural-coatings .s6-stone-catalogue-group__toggle span,
.s6-division-page--architectural-coatings .s6-stone-catalogue-footer__copy,
.s6-division-page--architectural-coatings .s6-stone-catalogue-footer__copy p {
  color: #fff !important;
}

/* Approved related-project and FAQ behavior, recoloured for Coatings. */
.s6-division-page--architectural-coatings #division-projects,
.s6-division-page--architectural-coatings #division-faq {
  margin-bottom: 0 !important;
  padding-left: max(1.25rem, calc((100vw - 1180px) / 2)) !important;
  padding-right: max(1.25rem, calc((100vw - 1180px) / 2)) !important;
}

.s6-division-page--architectural-coatings .s6-division-project-board,
.s6-division-page--architectural-coatings .s6-faq-list {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.s6-division-page--architectural-coatings .s6-division-project-feature a,
.s6-division-page--architectural-coatings .s6-division-project-card a {
  background: #182734 !important;
  border-color: rgba(79,115,150,.42) !important;
}

.s6-division-page--architectural-coatings .s6-division-project-feature__content {
  background: linear-gradient(180deg, transparent 0%, rgba(24,39,52,.72) 64%, rgba(24,39,52,.94) 100%) !important;
  color: #fff !important;
}

.s6-division-page--architectural-coatings .s6-division-project-feature__content small,
.s6-division-page--architectural-coatings .s6-division-project-card__content span {
  color: #9fb9d2 !important;
}

.s6-division-page--architectural-coatings .s6-division-project-feature__content h3,
.s6-division-page--architectural-coatings .s6-division-project-feature__content p,
.s6-division-page--architectural-coatings .s6-division-project-card__content h3,
.s6-division-page--architectural-coatings .s6-division-project-card__content p {
  color: #fff !important;
}

.s6-division-page--architectural-coatings .s6-faq-item {
  background: rgba(244,247,250,.86) !important;
  border: 1px solid rgba(79,115,150,.25) !important;
  border-radius: 0 !important;
  box-shadow: inset 0 1px rgba(255,255,255,.72) !important;
}

.s6-division-page--architectural-coatings .s6-faq-question {
  background: transparent !important;
  color: var(--s6-coatings-ink) !important;
}

.s6-division-page--architectural-coatings .s6-faq-question em {
  color: #fff !important;
  background: var(--s6-coatings-blue) !important;
  border-color: var(--s6-coatings-blue) !important;
}

.s6-division-page--architectural-coatings .s6-faq-answer {
  margin: 0 clamp(1rem, 2vw, 1.4rem) clamp(1rem, 2vw, 1.4rem) clamp(1.6rem, 3vw, 2.25rem) !important;
  padding: clamp(1rem, 2vw, 1.35rem) !important;
  background: rgba(221,231,239,.7) !important;
  border-left: 3px solid var(--s6-coatings-blue) !important;
}

.s6-division-page--architectural-coatings .s6-faq-answer p {
  color: var(--s6-coatings-muted) !important;
}

.s6-division-page--architectural-coatings .s6-division-cta--v32,
.s6-division-page--architectural-coatings > section:last-of-type {
  margin-bottom: 0 !important;
}

.s6-division-page--architectural-coatings + .s6-footer {
  margin-top: 0 !important;
}

.s6-division-page--architectural-coatings {
  --s6-coatings-purple: #6b4fa3;
  --s6-coatings-purple-dark: #533a86;
  --s6-coatings-purple-mid: #7d61b8;
  --s6-coatings-purple-soft: rgba(107, 79, 163, .18);
  --s6-coatings-bg: #f1eef8;
  --s6-coatings-bg-2: #e7e1f3;
  --s6-coatings-bg-3: #dcd3ec;
  --s6-coatings-ink: #1d1728;
  --s6-coatings-muted: rgba(29, 23, 40, .68);
  --s6-coatings-line: rgba(83, 58, 134, .22);
  --s6-coatings-blue: var(--s6-coatings-purple);
  --s6-coatings-blue-dark: var(--s6-coatings-purple-dark);
  --s6-coatings-blue-soft: var(--s6-coatings-purple-soft);
  background: var(--s6-coatings-bg) !important;
}

.s6-division-page--architectural-coatings .s6-division-menu__link.is-active,
.s6-division-page--architectural-coatings .s6-division-menu__link:hover,
.s6-division-page--architectural-coatings .s6-section-label,
.s6-division-page--architectural-coatings .s6-section-label span,
.s6-division-page--architectural-coatings .s6-eyebrow,
.s6-division-page--architectural-coatings .s6-eyebrow span,
.s6-division-page--architectural-coatings .s6-hero-eyebrow,
.s6-division-page--architectural-coatings .s6-contact-eyebrow,
.s6-division-page--architectural-coatings .s6-system-card__kicker,
.s6-division-page--architectural-coatings .s6-system-card__label,
.s6-division-page--architectural-coatings .s6-system-card__spec span,
.s6-division-page--architectural-coatings .s6-stone-catalogue-group__head > span,
.s6-division-page--architectural-coatings .s6-division-project-feature__content small,
.s6-division-page--architectural-coatings .s6-division-project-card__content span {
  color: var(--s6-coatings-purple) !important;
}

.s6-division-page--architectural-coatings .s6-section-label::before,
.s6-division-page--architectural-coatings .s6-eyebrow::before,
.s6-division-page--architectural-coatings .s6-hero-eyebrow::before,
.s6-division-page--architectural-coatings .s6-contact-eyebrow::before,
.s6-division-page--architectural-coatings .s6-system-card__rule,
.s6-division-page--architectural-coatings .s6-coatings-system-explainer__hint p span,
.s6-division-page--architectural-coatings .s6-coatings-catalogue .s6-stone-product-card__body h4::after,
.s6-division-page--architectural-coatings .s6-coatings-catalogue-group::before,
.s6-division-page--architectural-coatings .s6-stone-catalogue-group::before {
  background: var(--s6-coatings-purple) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-overview,
.s6-division-page--architectural-coatings .s6-coatings-renewal,
.s6-division-page--architectural-coatings .s6-coatings-systems,
.s6-division-page--architectural-coatings .s6-coatings-finishes,
.s6-division-page--architectural-coatings .s6-coatings-restoration,
.s6-division-page--architectural-coatings .s6-coatings-projects,
.s6-division-page--architectural-coatings .s6-coatings-faq,
.s6-division-page--architectural-coatings .s6-coatings-catalogue,
.s6-division-page--architectural-coatings #division-overview,
.s6-division-page--architectural-coatings #division-systems,
.s6-division-page--architectural-coatings #division-products,
.s6-division-page--architectural-coatings #division-projects,
.s6-division-page--architectural-coatings #division-faq {
  background:
    radial-gradient(circle at 14% 9%, rgba(107,79,163,.13), transparent 34%),
    radial-gradient(circle at 88% 18%, rgba(255,255,255,.56), transparent 28%),
    linear-gradient(180deg, var(--s6-coatings-bg) 0%, var(--s6-coatings-bg-2) 100%) !important;
  color: var(--s6-coatings-ink) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-overview__copy h2,
.s6-division-page--architectural-coatings .s6-coatings-section-head h2,
.s6-division-page--architectural-coatings .s6-stone-catalogue-group__head h3,
.s6-division-page--architectural-coatings .s6-coatings-catalogue .s6-coatings-section-head h2,
.s6-division-page--architectural-coatings .s6-faq-question,
.s6-division-page--architectural-coatings .s6-coatings-product-card .s6-stone-product-card__body h4,
.s6-division-page--architectural-coatings .s6-coatings-catalogue .s6-stone-product-card__body h4 {
  color: var(--s6-coatings-ink) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-overview__copy p:not(.s6-section-label),
.s6-division-page--architectural-coatings .s6-coatings-section-head p:not(.s6-section-label),
.s6-division-page--architectural-coatings .s6-stone-catalogue-group__head p:not(.s6-section-label),
.s6-division-page--architectural-coatings .s6-coatings-product-card .s6-stone-product-card__body p,
.s6-division-page--architectural-coatings .s6-coatings-catalogue .s6-stone-product-card__body p,
.s6-division-page--architectural-coatings .s6-faq-answer p {
  color: var(--s6-coatings-muted) !important;
}

/* Premium coatings/specification card styling without changing the grid. */
.s6-division-page--architectural-coatings .s6-coatings-classification-card,
.s6-division-page--architectural-coatings .s6-coatings-product-card,
.s6-division-page--architectural-coatings .s6-coatings-catalogue .s6-stone-product-card,
.s6-division-page--architectural-coatings .s6-coatings-catalogue .s6-stone-catalogue-group,
.s6-division-page--architectural-coatings .s6-coatings-catalogue-group {
  border-radius: 0 !important;
  border-color: var(--s6-coatings-line) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.84), rgba(231,225,243,.84)),
    repeating-linear-gradient(0deg, rgba(83,58,134,.035) 0 1px, transparent 1px 18px) !important;
  box-shadow: inset 0 1px rgba(255,255,255,.76), 0 1.1rem 2.2rem rgba(49,35,78,.08) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-classification-card,
.s6-division-page--architectural-coatings .s6-coatings-product-card,
.s6-division-page--architectural-coatings .s6-coatings-catalogue .s6-stone-product-card {
  border-top: 4px solid var(--s6-coatings-purple) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-classification-card::before,
.s6-division-page--architectural-coatings .s6-coatings-product-card::before,
.s6-division-page--architectural-coatings .s6-coatings-catalogue .s6-stone-product-card::before {
  background:
    linear-gradient(90deg, rgba(107,79,163,.11), transparent 36%),
    repeating-linear-gradient(0deg, rgba(83,58,134,.038) 0 1px, transparent 1px 16px) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-classification-card:hover,
.s6-division-page--architectural-coatings .s6-coatings-classification-card:focus-visible,
.s6-division-page--architectural-coatings .s6-coatings-product-card:hover,
.s6-division-page--architectural-coatings .s6-coatings-catalogue .s6-stone-product-card:hover {
  border-color: rgba(107,79,163,.5) !important;
  border-top-color: var(--s6-coatings-purple-dark) !important;
}

.s6-division-page--architectural-coatings .s6-system-card__badge,
.s6-division-page--architectural-coatings .s6-stone-catalogue-group__head > span {
  color: var(--s6-coatings-purple-dark) !important;
  border-color: rgba(107,79,163,.34) !important;
  background: rgba(107,79,163,.09) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-system-visual--protective span,
.s6-division-page--architectural-coatings .s6-coatings-system-visual--concrete span,
.s6-division-page--architectural-coatings .s6-coatings-system-visual--waterproofing span,
.s6-division-page--architectural-coatings .s6-coatings-system-visual--paint-refresh span {
  background: linear-gradient(135deg, #533a86, #a996d2) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-system-visual--protective span:nth-child(2n),
.s6-division-page--architectural-coatings .s6-coatings-system-visual--concrete span:nth-child(2n),
.s6-division-page--architectural-coatings .s6-coatings-system-visual--waterproofing span:nth-child(2n),
.s6-division-page--architectural-coatings .s6-coatings-system-visual--paint-refresh span:nth-child(2n) {
  background: linear-gradient(135deg, #6b4fa3, #d7cdea) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer,
.s6-division-page--architectural-coatings .s6-coatings-system-explainer__detail-panel,
.s6-division-page--architectural-coatings .s6-coatings-system-explainer__overview-panel,
.s6-division-page--architectural-coatings .s6-faq-item {
  background: rgba(255,255,255,.76) !important;
  border-color: rgba(107,79,163,.25) !important;
  box-shadow: inset 0 1px rgba(255,255,255,.72) !important;
}

.s6-division-page--architectural-coatings .s6-explainer-hotspot,
.s6-division-page--architectural-coatings .s6-coatings-system-explainer__pills .s6-explainer-hotspot {
  background: rgba(255,255,255,.88) !important;
  border-color: rgba(107,79,163,.3) !important;
  color: var(--s6-coatings-purple-dark) !important;
}

.s6-division-page--architectural-coatings .s6-explainer-hotspot:hover,
.s6-division-page--architectural-coatings .s6-explainer-hotspot:focus-visible,
.s6-division-page--architectural-coatings .s6-explainer-hotspot.is-active,
.s6-division-page--architectural-coatings .s6-explainer-hotspot[aria-pressed="true"],
.s6-division-page--architectural-coatings .s6-faq-question em,
.s6-division-page--architectural-coatings .s6-stone-catalogue-group__toggle:hover {
  background: var(--s6-coatings-purple) !important;
  border-color: var(--s6-coatings-purple-dark) !important;
  color: #fff !important;
}

.s6-division-page--architectural-coatings .s6-explainer-hotspot:hover span,
.s6-division-page--architectural-coatings .s6-explainer-hotspot:focus-visible span,
.s6-division-page--architectural-coatings .s6-explainer-hotspot.is-active span,
.s6-division-page--architectural-coatings .s6-explainer-hotspot[aria-pressed="true"] span {
  color: #fff !important;
}

.s6-division-page--architectural-coatings .s6-coatings-catalogue .s6-stone-product-card__image {
  background-color: #dcd3ec !important;
  filter: saturate(.96) contrast(1.03);
}

.s6-division-page--architectural-coatings .s6-coatings-catalogue .s6-stone-product-card__image::after {
  background:
    linear-gradient(180deg, rgba(29,23,40,.02), rgba(83,58,134,.22)),
    radial-gradient(circle at 18% 12%, rgba(255,255,255,.26), transparent 24%) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-catalogue .s6-stone-product-card__image span {
  color: #fff !important;
  background: rgba(29,23,40,.76) !important;
  border-color: rgba(255,255,255,.24) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-catalogue .s6-stone-product-swatch:hover,
.s6-division-page--architectural-coatings .s6-coatings-catalogue .s6-stone-product-swatch.is-active {
  border-color: var(--s6-coatings-purple) !important;
  box-shadow: 0 0 0 2px rgba(107,79,163,.24) !important;
}

.s6-division-page--architectural-coatings .s6-stone-catalogue-group__toggle,
.s6-division-page--architectural-coatings .s6-division-project-feature a,
.s6-division-page--architectural-coatings .s6-division-project-card a {
  background: #1d1728 !important;
  border-color: rgba(107,79,163,.42) !important;
  color: #fff !important;
}

.s6-division-page--architectural-coatings .s6-division-project-feature__content {
  background: linear-gradient(180deg, transparent 0%, rgba(29,23,40,.72) 64%, rgba(29,23,40,.95) 100%) !important;
  color: #fff !important;
}

.s6-division-page--architectural-coatings .s6-division-project-feature__content small,
.s6-division-page--architectural-coatings .s6-division-project-card__content span {
  color: #cfc4ea !important;
}

.s6-division-page--architectural-coatings .s6-faq-answer {
  background: rgba(220,211,236,.62) !important;
  border-left-color: var(--s6-coatings-purple) !important;
}

.s6-division-page--architectural-coatings .s6-button,
.s6-division-page--architectural-coatings .button {
  border-color: var(--s6-coatings-purple) !important;
}

.s6-division-page--architectural-coatings .s6-section:not(.s6-division-hero) .s6-section-label,
.s6-division-page--architectural-coatings .s6-division-section-header .s6-section-label,
.s6-division-page--architectural-coatings .s6-division-opening__copy .s6-section-label,
.s6-division-page--architectural-coatings .s6-division-explainer__copy > .s6-section-label,
.s6-division-page--architectural-coatings .s6-division-cta--v32 .s6-section-label,
.s6-division-page--architectural-coatings .s6-coatings-section-head .s6-section-label,
.s6-division-page--architectural-coatings .s6-eyebrow,
.s6-division-page--architectural-coatings .s6-hero-eyebrow,
.s6-division-page--architectural-coatings .s6-contact-eyebrow {
  display: inline-flex !important;
  align-items: center !important;
  gap: 14px !important;
  margin: 0 0 clamp(0.85rem, 1.35vw, 1.15rem) !important;
  color: var(--s6-coatings-purple, #6b4fa3) !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: .22em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.s6-division-page--architectural-coatings .s6-section:not(.s6-division-hero) .s6-section-label::before,
.s6-division-page--architectural-coatings .s6-division-section-header .s6-section-label::before,
.s6-division-page--architectural-coatings .s6-division-opening__copy .s6-section-label::before,
.s6-division-page--architectural-coatings .s6-division-explainer__copy > .s6-section-label::before,
.s6-division-page--architectural-coatings .s6-division-cta--v32 .s6-section-label::before,
.s6-division-page--architectural-coatings .s6-coatings-section-head .s6-section-label::before,
.s6-division-page--architectural-coatings .s6-eyebrow::before,
.s6-division-page--architectural-coatings .s6-hero-eyebrow::before,
.s6-division-page--architectural-coatings .s6-contact-eyebrow::before {
  content: "" !important;
  display: block !important;
  width: 48px !important;
  height: 2px !important;
  flex: 0 0 48px !important;
  background: var(--s6-coatings-purple, #6b4fa3) !important;
  border: 0 !important;
  opacity: 1 !important;
  transform: none !important;
}

.s6-division-page--architectural-coatings .s6-section-label span,
.s6-division-page--architectural-coatings .s6-eyebrow span,
.s6-division-page--architectural-coatings .s6-hero-eyebrow span,
.s6-division-page--architectural-coatings .s6-contact-eyebrow span {
  color: var(--s6-coatings-purple, #6b4fa3) !important;
}

@media (max-width: 680px) {
  .s6-division-page--architectural-coatings .s6-section:not(.s6-division-hero) .s6-section-label,
  .s6-division-page--architectural-coatings .s6-division-section-header .s6-section-label,
  .s6-division-page--architectural-coatings .s6-division-opening__copy .s6-section-label,
  .s6-division-page--architectural-coatings .s6-division-explainer__copy > .s6-section-label,
  .s6-division-page--architectural-coatings .s6-division-cta--v32 .s6-section-label,
  .s6-division-page--architectural-coatings .s6-coatings-section-head .s6-section-label,
  .s6-division-page--architectural-coatings .s6-eyebrow,
  .s6-division-page--architectural-coatings .s6-hero-eyebrow,
  .s6-division-page--architectural-coatings .s6-contact-eyebrow {
    gap: 12px !important;
    font-size: 11px !important;
    letter-spacing: .18em !important;
  }

  .s6-division-page--architectural-coatings .s6-section:not(.s6-division-hero) .s6-section-label::before,
  .s6-division-page--architectural-coatings .s6-division-section-header .s6-section-label::before,
  .s6-division-page--architectural-coatings .s6-division-opening__copy .s6-section-label::before,
  .s6-division-page--architectural-coatings .s6-division-explainer__copy > .s6-section-label::before,
  .s6-division-page--architectural-coatings .s6-division-cta--v32 .s6-section-label::before,
  .s6-division-page--architectural-coatings .s6-coatings-section-head .s6-section-label::before,
  .s6-division-page--architectural-coatings .s6-eyebrow::before,
  .s6-division-page--architectural-coatings .s6-hero-eyebrow::before,
  .s6-division-page--architectural-coatings .s6-contact-eyebrow::before {
    width: 34px !important;
    flex-basis: 34px !important;
  }
}

body.s6-division-current--architectural-coatings {
  --s6-division-theme-accent: #6b4fa3 !important;
  --s6-division-theme-accent-soft: rgba(107, 79, 163, .18) !important;
  --s6-division-theme-nav-bg: linear-gradient(135deg, rgba(246, 243, 252, .96), rgba(220, 211, 236, .94)) !important;
  --s6-division-theme-nav-ink: #1d1728 !important;
  --s6-division-theme-nav-muted: rgba(29, 23, 40, .58) !important;
  --s6-division-theme-nav-border: rgba(83, 58, 134, .18) !important;
}

.s6-division-page--architectural-coatings {
  --coat-purple: #6b4fa3;
  --coat-purple-dark: #533a86;
  --coat-purple-mid: #7d61b8;
  --coat-canvas: #f1eef8;
  --coat-canvas-2: #e7e1f3;
  --coat-panel: #f8f6fc;
  --coat-panel-2: #dcd3ec;
  --coat-ink: #1d1728;
  --coat-muted: rgba(29,23,40,.68);
  --coat-line: rgba(83,58,134,.18);
  background: linear-gradient(180deg, var(--coat-canvas) 0%, var(--coat-canvas-2) 100%) !important;
}

/* Eyebrow/signature line parity — hero, catalogue, contact, and all section labels. */
.s6-division-page--architectural-coatings .s6-section-label,
.s6-division-page--architectural-coatings .s6-section-label span,
.s6-division-page--architectural-coatings .s6-eyebrow,
.s6-division-page--architectural-coatings .s6-eyebrow span,
.s6-division-page--architectural-coatings .s6-division-hero .s6-section-label,
.s6-division-page--architectural-coatings .s6-coatings-hero .s6-section-label,
.s6-division-page--architectural-coatings .s6-coatings-section-head .s6-section-label,
.s6-division-page--architectural-coatings .s6-stone-catalogue-group__head .s6-section-label,
.s6-division-page--architectural-coatings .s6-division-section-header .s6-section-label,
.s6-division-page--architectural-coatings .s6-division-opening__copy .s6-section-label,
.s6-division-page--architectural-coatings .s6-division-cta--v32 .s6-section-label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 14px !important;
  margin: 0 0 clamp(.85rem, 1.35vw, 1.15rem) !important;
  padding: 0 !important;
  color: var(--coat-purple) !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.s6-division-page--architectural-coatings .s6-section-label::before,
.s6-division-page--architectural-coatings .s6-eyebrow::before,
.s6-division-page--architectural-coatings .s6-division-hero .s6-section-label::before,
.s6-division-page--architectural-coatings .s6-coatings-hero .s6-section-label::before,
.s6-division-page--architectural-coatings .s6-coatings-section-head .s6-section-label::before,
.s6-division-page--architectural-coatings .s6-stone-catalogue-group__head .s6-section-label::before,
.s6-division-page--architectural-coatings .s6-division-section-header .s6-section-label::before,
.s6-division-page--architectural-coatings .s6-division-opening__copy .s6-section-label::before,
.s6-division-page--architectural-coatings .s6-division-cta--v32 .s6-section-label::before {
  content: "" !important;
  display: block !important;
  width: 48px !important;
  height: 2px !important;
  flex: 0 0 48px !important;
  background: var(--coat-purple) !important;
  border: 0 !important;
  opacity: 1 !important;
  transform: none !important;
}

/* Division overview: remove inherited beige/concrete canvas. */
.s6-division-page--architectural-coatings .s6-division-opening,
.s6-division-page--architectural-coatings .s6-coatings-opening,
.s6-division-page--architectural-coatings #division-overview.s6-division-opening,
.s6-division-page--architectural-coatings #division-overview.s6-coatings-opening {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  padding: clamp(5rem, 8vw, 8rem) clamp(1.5rem, 6vw, 5.75rem) !important;
  background:
    radial-gradient(circle at 13% 10%, rgba(107,79,163,.14), transparent 31rem),
    radial-gradient(circle at 86% 16%, rgba(125,97,184,.10), transparent 30rem),
    linear-gradient(180deg, #f5f2fb 0%, #e7e1f3 100%) !important;
  border-top: 1px solid rgba(83,58,134,.12) !important;
  border-bottom: 1px solid rgba(83,58,134,.14) !important;
  color: var(--coat-ink) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-opening__media,
.s6-division-page--architectural-coatings .s6-division-opening__media {
  border: 1px solid rgba(83,58,134,.18) !important;
  box-shadow: 0 2rem 5rem rgba(49,35,78,.16) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-opening__copy h2,
.s6-division-page--architectural-coatings .s6-division-opening__copy h2 {
  color: var(--coat-ink) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-opening__copy p:not(.s6-section-label),
.s6-division-page--architectural-coatings .s6-division-opening__copy p:not(.s6-section-label) {
  color: var(--coat-muted) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-opening__callouts,
.s6-division-page--architectural-coatings .s6-division-opening__callouts {
  background: rgba(248,246,252,.78) !important;
  border-color: rgba(83,58,134,.14) !important;
  box-shadow: inset 0 1px rgba(255,255,255,.62) !important;
}

.s6-division-page--architectural-coatings .s6-overview-callout strong,
.s6-division-page--architectural-coatings .s6-overview-callout small {
  color: var(--coat-ink) !important;
}

/* Related projects: match locked full-image feature overlay and themed canvas. */
.s6-division-page--architectural-coatings .s6-division-projects,
.s6-division-page--architectural-coatings #division-projects {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  padding-left: clamp(1.5rem, 6vw, 5.75rem) !important;
  padding-right: clamp(1.5rem, 6vw, 5.75rem) !important;
  background:
    radial-gradient(circle at 12% 6%, rgba(107,79,163,.12), transparent 30rem),
    linear-gradient(180deg, #f4f1fa 0%, #e6dff2 100%) !important;
  border-top: 1px solid rgba(83,58,134,.11) !important;
  border-bottom: 1px solid rgba(83,58,134,.12) !important;
}

.s6-division-page--architectural-coatings .s6-division-projects .s6-division-section-header,
.s6-division-page--architectural-coatings .s6-division-projects .s6-division-project-board,
.s6-division-page--architectural-coatings .s6-division-projects .s6-division-empty-projects {
  width: min(100%, 1240px) !important;
  max-width: 1240px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.s6-division-page--architectural-coatings .s6-division-project-board {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.s6-division-page--architectural-coatings .s6-division-project-feature a {
  position: relative !important;
  overflow: hidden !important;
  min-height: clamp(24rem, 42vw, 38rem) !important;
  background: #1d1728 !important;
  border: 1px solid rgba(107,79,163,.42) !important;
  border-radius: 0 !important;
  box-shadow: 0 1.6rem 4rem rgba(49,35,78,.22) !important;
}

.s6-division-page--architectural-coatings .s6-division-project-feature__image {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  min-height: 100% !important;
  z-index: 0 !important;
  background: rgba(29,23,40,.22) !important;
}

.s6-division-page--architectural-coatings .s6-division-project-feature__image::before {
  inset: -8px !important;
  transform: scale(1) !important;
  filter: saturate(.9) contrast(1.04) !important;
}

.s6-division-page--architectural-coatings .s6-division-project-feature a::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  background: linear-gradient(180deg, rgba(29,23,40,0) 0%, rgba(29,23,40,.52) 54%, rgba(29,23,40,.92) 100%) !important;
  pointer-events: none !important;
}

.s6-division-page--architectural-coatings .s6-division-project-feature__content {
  position: absolute !important;
  left: clamp(1.5rem, 3vw, 3rem) !important;
  right: clamp(1.5rem, 3vw, 3rem) !important;
  bottom: clamp(1.5rem, 3vw, 3rem) !important;
  z-index: 3 !important;
  max-width: 34rem !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  color: #fff !important;
  text-shadow: 0 1.25rem 3rem rgba(0,0,0,.38) !important;
}

.s6-division-page--architectural-coatings .s6-division-project-feature__content small {
  display: block !important;
  margin: 0 0 .65rem !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  color: #d8ceef !important;
  font-size: .68rem !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: .2em !important;
  text-transform: uppercase !important;
}

.s6-division-page--architectural-coatings .s6-division-project-feature__content h3 {
  color: #fff !important;
  font-size: clamp(2rem, 3.8vw, 4.4rem) !important;
  line-height: .9 !important;
  letter-spacing: -.06em !important;
  text-transform: uppercase !important;
}

.s6-division-page--architectural-coatings .s6-division-project-feature__content p {
  color: #eee8fb !important;
  font-size: .68rem !important;
  font-weight: 900 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
}

.s6-division-page--architectural-coatings .s6-division-project-card__content,
.s6-division-page--architectural-coatings .s6-division-project-latest-head {
  background: linear-gradient(180deg, rgba(248,246,252,.98), rgba(231,225,243,.98)) !important;
  border-color: rgba(83,58,134,.16) !important;
  color: var(--coat-ink) !important;
}

.s6-division-page--architectural-coatings .s6-division-project-card__content h3,
.s6-division-page--architectural-coatings .s6-division-project-card__content p {
  color: var(--coat-ink) !important;
}

.s6-division-page--architectural-coatings .s6-division-project-card__content span,
.s6-division-page--architectural-coatings .s6-division-project-latest-head span {
  color: var(--coat-purple) !important;
}

/* FAQ: match locked button/indented-answer treatment in purple. */
.s6-division-page--architectural-coatings .s6-division-faq,
.s6-division-page--architectural-coatings #division-faq {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  padding-left: clamp(1.5rem, 6vw, 5.75rem) !important;
  padding-right: clamp(1.5rem, 6vw, 5.75rem) !important;
  background:
    radial-gradient(circle at 12% 6%, rgba(107,79,163,.10), transparent 30rem),
    linear-gradient(180deg, #f5f2fb 0%, #e7e1f3 100%) !important;
  border-top: 1px solid rgba(83,58,134,.11) !important;
  border-bottom: 1px solid rgba(83,58,134,.12) !important;
}

.s6-division-page--architectural-coatings .s6-division-faq .s6-division-section-header,
.s6-division-page--architectural-coatings .s6-division-faq .s6-faq-list {
  width: min(100%, 1240px) !important;
  max-width: 1240px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.s6-division-page--architectural-coatings .s6-faq-list {
  display: grid !important;
  gap: .95rem !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.s6-division-page--architectural-coatings .s6-faq-item {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.s6-division-page--architectural-coatings .s6-faq-question {
  min-height: 4.15rem !important;
  padding: 1rem 1.05rem 1rem 1.25rem !important;
  background: rgba(248,246,252,.92) !important;
  border: 1px solid rgba(83,58,134,.16) !important;
  border-left: 3px solid rgba(107,79,163,.58) !important;
  border-radius: .18rem !important;
  color: var(--coat-ink) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.65) !important;
  transform: none !important;
}

.s6-division-page--architectural-coatings .s6-faq-question:hover,
.s6-division-page--architectural-coatings .s6-faq-question:focus-visible,
.s6-division-page--architectural-coatings .s6-faq-question[aria-expanded="true"] {
  background: rgba(255,255,255,.96) !important;
  border-color: rgba(83,58,134,.24) !important;
  border-left-color: rgba(107,79,163,.92) !important;
  transform: none !important;
}

.s6-division-page--architectural-coatings .s6-faq-question em {
  width: 2rem !important;
  height: 2rem !important;
  flex: 0 0 2rem !important;
  display: inline-grid !important;
  place-items: center !important;
  border-radius: .12rem !important;
  background: rgba(255,255,255,.66) !important;
  border: 1px solid rgba(83,58,134,.18) !important;
  color: var(--coat-purple-dark) !important;
  box-shadow: none !important;
  transform: none !important;
}

.s6-division-page--architectural-coatings .s6-faq-question[aria-expanded="true"] em {
  background: rgba(107,79,163,.15) !important;
  border-color: rgba(107,79,163,.56) !important;
  color: var(--coat-purple-dark) !important;
  transform: rotate(45deg) !important;
}

.s6-division-page--architectural-coatings .s6-faq-answer {
  position: relative !important;
  margin: .45rem .25rem .25rem clamp(1.4rem, 3.2vw, 3rem) !important;
  padding: 1rem clamp(1rem, 2vw, 1.45rem) !important;
  background: rgba(220,211,236,.76) !important;
  border: 1px solid rgba(83,58,134,.12) !important;
  border-left: 3px solid rgba(107,79,163,.72) !important;
  border-radius: .12rem !important;
  color: var(--coat-muted) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.34) !important;
}

.s6-division-page--architectural-coatings .s6-faq-answer::before,
.s6-division-page--architectural-coatings .s6-faq-answer::after {
  content: none !important;
  display: none !important;
}

.s6-division-page--architectural-coatings .s6-division-cta--v32,
.s6-division-page--architectural-coatings > section:last-of-type {
  margin-bottom: 0 !important;
}

.s6-division-page--architectural-coatings + .s6-footer {
  margin-top: 0 !important;
}

@media (max-width: 680px) {
  .s6-division-page--architectural-coatings .s6-section-label,
  .s6-division-page--architectural-coatings .s6-section-label span,
  .s6-division-page--architectural-coatings .s6-eyebrow,
  .s6-division-page--architectural-coatings .s6-division-hero .s6-section-label,
  .s6-division-page--architectural-coatings .s6-coatings-section-head .s6-section-label,
  .s6-division-page--architectural-coatings .s6-stone-catalogue-group__head .s6-section-label,
  .s6-division-page--architectural-coatings .s6-division-section-header .s6-section-label,
  .s6-division-page--architectural-coatings .s6-division-opening__copy .s6-section-label,
  .s6-division-page--architectural-coatings .s6-division-cta--v32 .s6-section-label {
    gap: 12px !important;
    font-size: 11px !important;
    letter-spacing: .18em !important;
  }

  .s6-division-page--architectural-coatings .s6-section-label::before,
  .s6-division-page--architectural-coatings .s6-eyebrow::before,
  .s6-division-page--architectural-coatings .s6-division-hero .s6-section-label::before,
  .s6-division-page--architectural-coatings .s6-coatings-section-head .s6-section-label::before,
  .s6-division-page--architectural-coatings .s6-stone-catalogue-group__head .s6-section-label::before,
  .s6-division-page--architectural-coatings .s6-division-section-header .s6-section-label::before,
  .s6-division-page--architectural-coatings .s6-division-opening__copy .s6-section-label::before,
  .s6-division-page--architectural-coatings .s6-division-cta--v32 .s6-section-label::before {
    width: 34px !important;
    flex-basis: 34px !important;
  }

  .s6-division-page--architectural-coatings .s6-division-projects,
  .s6-division-page--architectural-coatings .s6-division-faq,
  .s6-division-page--architectural-coatings .s6-division-opening {
    padding-left: .85rem !important;
    padding-right: .85rem !important;
  }
}

.s6-division-page--architectural-coatings #division-overview.s6-division-opening,
.s6-division-page--architectural-coatings .s6-division-opening.s6-light-concrete-section.s6-coatings-opening,
.s6-division-page--architectural-coatings .s6-coatings-opening {
  background:
    radial-gradient(circle at 14% 8%, rgba(107, 79, 163, .16), transparent 30rem),
    radial-gradient(circle at 88% 16%, rgba(255, 255, 255, .58), transparent 26rem),
    linear-gradient(180deg, #f4f1fa 0%, #e7e1f3 100%) !important;
  border-top: 1px solid rgba(83, 58, 134, .12) !important;
  border-bottom: 1px solid rgba(83, 58, 134, .14) !important;
  color: var(--s6-coatings-ink, #1d1728) !important;
}

.s6-division-page--architectural-coatings #division-overview.s6-division-opening::before,
.s6-division-page--architectural-coatings .s6-coatings-opening::before {
  background: linear-gradient(90deg, rgba(107, 79, 163, .14), transparent 70%) !important;
  opacity: 1 !important;
}

.s6-division-page--architectural-coatings .s6-coatings-opening__copy,
.s6-division-page--architectural-coatings .s6-division-opening__copy {
  background: transparent !important;
  color: var(--s6-coatings-ink, #1d1728) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-opening__media,
.s6-division-page--architectural-coatings .s6-division-opening__media {
  border-color: rgba(83, 58, 134, .18) !important;
  box-shadow: 0 1.35rem 3rem rgba(49, 35, 78, .14) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-opening__media::after,
.s6-division-page--architectural-coatings .s6-division-opening__media::after {
  background:
    linear-gradient(180deg, rgba(29, 23, 40, .02), rgba(29, 23, 40, .34)),
    linear-gradient(135deg, rgba(107, 79, 163, .24), transparent 58%) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-opening__copy h2,
.s6-division-page--architectural-coatings .s6-division-opening__copy h2 {
  color: var(--s6-coatings-ink, #1d1728) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-opening__copy p:not(.s6-section-label),
.s6-division-page--architectural-coatings .s6-division-opening__copy p:not(.s6-section-label) {
  color: var(--s6-coatings-muted, rgba(29, 23, 40, .68)) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-opening__callouts,
.s6-division-page--architectural-coatings .s6-division-opening__callouts {
  background: rgba(248, 246, 252, .66) !important;
  border: 1px solid rgba(83, 58, 134, .14) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .65) !important;
}

.s6-division-page--architectural-coatings .s6-overview-callout {
  background: rgba(255, 255, 255, .72) !important;
  border-color: rgba(83, 58, 134, .15) !important;
  color: var(--s6-coatings-ink, #1d1728) !important;
}

.s6-division-page--architectural-coatings .s6-overview-callout strong {
  color: var(--s6-coatings-purple-dark, #533a86) !important;
}

.s6-division-page--architectural-coatings .s6-overview-callout small {
  color: var(--s6-coatings-muted, rgba(29, 23, 40, .68)) !important;
}

.s6-division-page--architectural-coatings #division-explainer.s6-coatings-explainer-section {
  background:
    radial-gradient(circle at 12% 12%, rgba(107, 79, 163, .12), transparent 28rem),
    linear-gradient(180deg, #eee8f7 0%, #f8f6fc 100%) !important;
  border-top: 1px solid rgba(83, 58, 134, .12) !important;
  border-bottom: 1px solid rgba(83, 58, 134, .12) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer.s6-division-explainer,
.s6-division-page--architectural-coatings .s6-coatings-system-explainer,
.s6-division-page--architectural-coatings .s6-division-explainer {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .88), rgba(231, 225, 243, .88)),
    repeating-linear-gradient(0deg, rgba(83, 58, 134, .035) 0 1px, transparent 1px 18px) !important;
  border: 1px solid rgba(83, 58, 134, .18) !important;
  border-radius: 0 !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.72), 0 1.35rem 3rem rgba(49,35,78,.11) !important;
}

.s6-division-page--architectural-coatings .s6-division-explainer__copy,
.s6-division-page--architectural-coatings .s6-coatings-system-explainer__copy {
  background: rgba(248, 246, 252, .72) !important;
  border-color: rgba(83, 58, 134, .14) !important;
  color: var(--s6-coatings-ink, #1d1728) !important;
}

.s6-division-page--architectural-coatings .s6-division-explainer__default > span,
.s6-division-page--architectural-coatings .s6-division-explainer__point-system > span,
.s6-division-page--architectural-coatings [data-s6-explainer-kicker] {
  color: var(--s6-coatings-purple, #6b4fa3) !important;
}

.s6-division-page--architectural-coatings .s6-division-explainer__default h3,
.s6-division-page--architectural-coatings .s6-division-explainer__point-system h3 {
  color: var(--s6-coatings-ink, #1d1728) !important;
}

.s6-division-page--architectural-coatings .s6-division-explainer__default p,
.s6-division-page--architectural-coatings .s6-division-explainer__point-system p {
  color: var(--s6-coatings-muted, rgba(29, 23, 40, .68)) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer__overview-panel,
.s6-division-page--architectural-coatings .s6-coatings-system-explainer__detail-panel {
  background: rgba(220, 211, 236, .62) !important;
  border: 1px solid rgba(83, 58, 134, .16) !important;
  border-left: 3px solid rgba(107, 79, 163, .68) !important;
  color: var(--s6-coatings-ink, #1d1728) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer__overview-panel h4,
.s6-division-page--architectural-coatings .s6-coatings-system-explainer__detail-panel h4 {
  color: var(--s6-coatings-purple-dark, #533a86) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer__overview-panel li,
.s6-division-page--architectural-coatings .s6-coatings-system-explainer__detail-panel li {
  color: var(--s6-coatings-muted, rgba(29, 23, 40, .68)) !important;
}

.s6-division-page--architectural-coatings .s6-coatings-system-explainer__visual,
.s6-division-page--architectural-coatings .s6-division-explainer__visual {
  border-color: rgba(83, 58, 134, .2) !important;
  background-color: #1d1728 !important;
}

.s6-division-page--architectural-coatings {
  --s6-coatings-purple: #6b4fa3;
  --s6-coatings-purple-dark: #533a86;
  --s6-coatings-purple-mid: #7d61b8;
  --s6-coatings-purple-soft: rgba(107, 79, 163, .18);
  --s6-coatings-purple-panel: #f4f1fa;
  --s6-coatings-purple-panel-2: #ebe5f6;
  --s6-coatings-purple-line: rgba(83, 58, 134, .22);
  --s6-coatings-ink: #1d1728;
  --s6-coatings-muted: rgba(29, 23, 40, .68);
}

.s6-division-page--architectural-coatings #division-explainer,
.s6-division-page--architectural-coatings #division-explainer.s6-coatings-explainer-section {
  background:
    radial-gradient(circle at 13% 10%, rgba(107, 79, 163, .16), transparent 30rem),
    radial-gradient(circle at 88% 18%, rgba(125, 97, 184, .10), transparent 26rem),
    linear-gradient(180deg, #f3effa 0%, #e8e1f4 100%) !important;
  border-top: 1px solid rgba(83, 58, 134, .16) !important;
  border-bottom: 1px solid rgba(83, 58, 134, .16) !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-section-label,
.s6-division-page--architectural-coatings #division-explainer .s6-section-label span,
.s6-division-page--architectural-coatings #division-explainer .s6-eyebrow {
  color: var(--s6-coatings-purple, #6b4fa3) !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-section-label::before,
.s6-division-page--architectural-coatings #division-explainer .s6-eyebrow::before {
  background: var(--s6-coatings-purple, #6b4fa3) !important;
  border-color: var(--s6-coatings-purple, #6b4fa3) !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-division-explainer,
.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer,
.s6-division-page--architectural-coatings #division-explainer .s6-division-explainer {
  background:
    linear-gradient(135deg, rgba(248, 246, 252, .96), rgba(231, 225, 243, .92)),
    repeating-linear-gradient(0deg, rgba(83, 58, 134, .045) 0 1px, transparent 1px 20px),
    repeating-linear-gradient(90deg, rgba(83, 58, 134, .035) 0 1px, transparent 1px 20px) !important;
  border: 1px solid rgba(83, 58, 134, .24) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.72), 0 1.35rem 3.2rem rgba(49, 35, 78, .13) !important;
  color: var(--s6-coatings-ink, #1d1728) !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-division-explainer__copy,
.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer__copy {
  background:
    linear-gradient(180deg, rgba(248, 246, 252, .76), rgba(235, 229, 246, .84)) !important;
  border: 1px solid rgba(83, 58, 134, .18) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.68) !important;
  color: var(--s6-coatings-ink, #1d1728) !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-division-explainer__default > span,
.s6-division-page--architectural-coatings #division-explainer .s6-division-explainer__point-system > span,
.s6-division-page--architectural-coatings #division-explainer [data-s6-explainer-kicker] {
  color: var(--s6-coatings-purple, #6b4fa3) !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-division-explainer__default h3,
.s6-division-page--architectural-coatings #division-explainer .s6-division-explainer__point-system h3,
.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer h3 {
  color: var(--s6-coatings-ink, #1d1728) !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-division-explainer__default p,
.s6-division-page--architectural-coatings #division-explainer .s6-division-explainer__point-system p,
.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer p {
  color: var(--s6-coatings-muted, rgba(29, 23, 40, .68)) !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer__overview-panel,
.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer__detail-panel {
  background:
    linear-gradient(180deg, rgba(244, 241, 250, .88), rgba(231, 225, 243, .78)) !important;
  border: 1px solid rgba(83, 58, 134, .22) !important;
  border-left: 3px solid rgba(107, 79, 163, .74) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.62) !important;
  color: var(--s6-coatings-ink, #1d1728) !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer__overview-panel h4,
.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer__detail-panel h4 {
  color: var(--s6-coatings-purple-dark, #533a86) !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer__overview-points,
.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer .s6-division-explainer__point-system ul {
  border-color: rgba(83, 58, 134, .20) !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer__overview-points li,
.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer .s6-division-explainer__point-system li {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .78), rgba(235, 229, 246, .86)) !important;
  border: 1px solid rgba(83, 58, 134, .22) !important;
  color: rgba(29, 23, 40, .72) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.72) !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer__visual-stack {
  color: var(--s6-coatings-ink, #1d1728) !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer__visual,
.s6-division-page--architectural-coatings #division-explainer .s6-division-explainer__visual {
  border: 1px solid rgba(83, 58, 134, .28) !important;
  background-color: #1d1728 !important;
  box-shadow: 0 1.15rem 2.6rem rgba(49, 35, 78, .18) !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer__visual::before,
.s6-division-page--architectural-coatings #division-explainer .s6-division-explainer__visual::before {
  border-color: rgba(244, 241, 250, .34) !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer__pills,
.s6-division-page--architectural-coatings #division-explainer .s6-division-explainer__hotspots {
  background: transparent !important;
  box-shadow: none !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-explainer-hotspot,
.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer__pills .s6-explainer-hotspot,
.s6-division-page--architectural-coatings #division-explainer .s6-division-explainer__hotspots .s6-explainer-hotspot {
  background:
    linear-gradient(180deg, rgba(255,255,255,.92), rgba(235,229,246,.92)) !important;
  border: 1px solid rgba(83, 58, 134, .28) !important;
  border-bottom: 3px solid rgba(107, 79, 163, .82) !important;
  color: var(--s6-coatings-purple-dark, #533a86) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.78), 0 .65rem 1.4rem rgba(49,35,78,.08) !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-explainer-hotspot span,
.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer__pills .s6-explainer-hotspot span,
.s6-division-page--architectural-coatings #division-explainer .s6-division-explainer__hotspots .s6-explainer-hotspot span {
  color: var(--s6-coatings-purple-dark, #533a86) !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-explainer-hotspot:hover,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-hotspot:focus-visible,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-hotspot.is-active,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-hotspot[aria-pressed="true"],
.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer__pills .s6-explainer-hotspot:hover,
.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer__pills .s6-explainer-hotspot:focus-visible,
.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer__pills .s6-explainer-hotspot.is-active,
.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer__pills .s6-explainer-hotspot[aria-pressed="true"] {
  background: var(--s6-coatings-purple, #6b4fa3) !important;
  border-color: var(--s6-coatings-purple-dark, #533a86) !important;
  border-bottom-color: var(--s6-coatings-purple-dark, #533a86) !important;
  color: #fff !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-explainer-hotspot:hover span,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-hotspot:focus-visible span,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-hotspot.is-active span,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-hotspot[aria-pressed="true"] span {
  color: #fff !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer__hint,
.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer__hint p {
  color: rgba(29, 23, 40, .62) !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer__hint p span {
  background: var(--s6-coatings-purple, #6b4fa3) !important;
  color: var(--s6-coatings-purple, #6b4fa3) !important;
}

.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-card,
.s6-division-page--architectural-coatings #division-products .s6-coatings-product-card {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate !important;
  border-radius: 0 !important;
  border: 1px solid rgba(255,255,255,.58) !important;
  border-top: 0 !important;
  background:
    linear-gradient(145deg, rgba(255,255,255,.74), rgba(231,225,243,.36) 52%, rgba(107,79,163,.18)),
    radial-gradient(circle at 16% 0%, rgba(255,255,255,.82), transparent 34%),
    linear-gradient(180deg, rgba(107,79,163,.11), rgba(83,58,134,.05)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.82),
    inset 0 -1px 0 rgba(83,58,134,.10),
    0 1.2rem 2.6rem rgba(49,35,78,.12) !important;
  backdrop-filter: blur(14px) saturate(1.08);
  -webkit-backdrop-filter: blur(14px) saturate(1.08);
}

.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-card::before,
.s6-division-page--architectural-coatings #division-products .s6-coatings-product-card::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  background:
    linear-gradient(115deg, rgba(255,255,255,.55) 0%, rgba(255,255,255,.16) 24%, transparent 42%),
    radial-gradient(circle at 86% 16%, rgba(125,97,184,.24), transparent 28%),
    repeating-linear-gradient(90deg, rgba(83,58,134,.035) 0 1px, transparent 1px 18px) !important;
  opacity: 1 !important;
}

.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-card::after,
.s6-division-page--architectural-coatings #division-products .s6-coatings-product-card::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 4px;
  z-index: 3;
  background: linear-gradient(90deg, #533a86, #7d61b8, #d9cef0) !important;
  pointer-events: none;
}

.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-card:hover,
.s6-division-page--architectural-coatings #division-products .s6-coatings-product-card:hover {
  transform: translateY(-3px) !important;
  border-color: rgba(125,97,184,.48) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.88),
    0 1.55rem 3.2rem rgba(49,35,78,.18),
    0 0 0 1px rgba(107,79,163,.12) !important;
}

.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-card__image {
  position: relative !important;
  z-index: 2 !important;
  margin: .9rem .9rem 0 !important;
  min-height: 15.75rem !important;
  border: 1px solid rgba(255,255,255,.56) !important;
  background-color: #dcd3ec !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.56),
    0 .85rem 1.7rem rgba(49,35,78,.12) !important;
  filter: saturate(1.04) contrast(1.03) !important;
}

.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-card__image::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  background:
    linear-gradient(180deg, rgba(29,23,40,.03), rgba(29,23,40,.34)),
    radial-gradient(circle at 18% 10%, rgba(255,255,255,.34), transparent 24%),
    linear-gradient(135deg, rgba(107,79,163,.06), rgba(125,97,184,.2)) !important;
}

.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-card__image span {
  z-index: 3 !important;
  color: #fff !important;
  background: rgba(29,23,40,.62) !important;
  border: 1px solid rgba(255,255,255,.28) !important;
  box-shadow: 0 .55rem 1.15rem rgba(29,23,40,.2) !important;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-card__body {
  position: relative !important;
  z-index: 2 !important;
  background: transparent !important;
  border-top: 0 !important;
  padding-top: clamp(1.15rem, 2vw, 1.55rem) !important;
}

.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-card__body h4 {
  color: #1d1728 !important;
  letter-spacing: -.035em !important;
}

.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-card__body h4::after {
  width: 3.1rem !important;
  height: 3px !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, #533a86, #7d61b8) !important;
}

.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-card__body p {
  color: rgba(29,23,40,.66) !important;
}

.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-swatch {
  border-color: rgba(255,255,255,.78) !important;
  box-shadow:
    0 0 0 1px rgba(83,58,134,.18),
    0 .32rem .75rem rgba(49,35,78,.12) !important;
}

.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-swatch:hover,
.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-swatch.is-active {
  border-color: #fff !important;
  box-shadow:
    0 0 0 2px rgba(107,79,163,.36),
    0 .44rem .95rem rgba(49,35,78,.16) !important;
}

.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-card,
.s6-division-page--architectural-coatings #division-products .s6-coatings-product-card {
  border-radius: 1.45rem !important;
  border: 1px solid rgba(255,255,255,.72) !important;
  border-top: 1px solid rgba(255,255,255,.84) !important;
  overflow: hidden !important;
  background:
    radial-gradient(circle at 12% 8%, rgba(255,255,255,.92), transparent 34%),
    radial-gradient(circle at 92% 0%, rgba(174,145,224,.38), transparent 34%),
    linear-gradient(145deg, rgba(255,255,255,.76) 0%, rgba(246,242,252,.82) 42%, rgba(224,214,242,.72) 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.9),
    inset 0 -1px 0 rgba(83,58,134,.08),
    0 1.35rem 3.1rem rgba(49,35,78,.13),
    0 .45rem 1rem rgba(49,35,78,.06) !important;
  backdrop-filter: blur(18px) saturate(1.14) !important;
  -webkit-backdrop-filter: blur(18px) saturate(1.14) !important;
}

.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-card::before,
.s6-division-page--architectural-coatings #division-products .s6-coatings-product-card::before {
  border-radius: inherit !important;
  background:
    linear-gradient(125deg, rgba(255,255,255,.78) 0%, rgba(255,255,255,.28) 22%, transparent 43%),
    radial-gradient(circle at 80% 14%, rgba(125,97,184,.24), transparent 26%),
    radial-gradient(circle at 18% 84%, rgba(255,255,255,.38), transparent 30%) !important;
  opacity: .9 !important;
}

.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-card::after,
.s6-division-page--architectural-coatings #division-products .s6-coatings-product-card::after {
  left: 1.15rem !important;
  right: 1.15rem !important;
  bottom: 1.05rem !important;
  height: .42rem !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, #533a86 0%, #7d61b8 38%, #cdb9ee 70%, rgba(255,255,255,.9) 100%) !important;
  opacity: .92 !important;
}

.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-card:hover,
.s6-division-page--architectural-coatings #division-products .s6-coatings-product-card:hover {
  transform: translateY(-5px) !important;
  border-color: rgba(255,255,255,.92) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.94),
    0 1.75rem 3.8rem rgba(49,35,78,.19),
    0 .75rem 1.45rem rgba(49,35,78,.09),
    0 0 0 1px rgba(125,97,184,.16) !important;
}

.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-card__image {
  margin: .95rem .95rem 0 !important;
  min-height: 15.75rem !important;
  border-radius: 1.1rem !important;
  border: 1px solid rgba(255,255,255,.76) !important;
  overflow: hidden !important;
  background:
    radial-gradient(circle at 18% 12%, rgba(255,255,255,.58), transparent 28%),
    linear-gradient(145deg, #eee8f8, #cdbfe7) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.7),
    inset 0 -1px 0 rgba(83,58,134,.12),
    0 .9rem 1.85rem rgba(49,35,78,.13) !important;
}

.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-card__image::after {
  border-radius: inherit !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(29,23,40,.26)),
    radial-gradient(circle at 14% 10%, rgba(255,255,255,.42), transparent 24%),
    radial-gradient(circle at 86% 8%, rgba(125,97,184,.26), transparent 30%) !important;
}

.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-card__image span {
  left: .9rem !important;
  top: .9rem !important;
  border-radius: 999px !important;
  padding: .48rem .72rem !important;
  color: #fff !important;
  background: rgba(83,58,134,.72) !important;
  border: 1px solid rgba(255,255,255,.34) !important;
  box-shadow: 0 .65rem 1.35rem rgba(49,35,78,.22) !important;
  backdrop-filter: blur(12px) saturate(1.16) !important;
  -webkit-backdrop-filter: blur(12px) saturate(1.16) !important;
}

.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-card__body {
  padding: clamp(1.2rem, 2.2vw, 1.65rem) clamp(1.2rem, 2vw, 1.55rem) calc(clamp(1.2rem, 2vw, 1.55rem) + .55rem) !important;
  background: transparent !important;
  border-top: 0 !important;
}

.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-card__body h4 {
  color: #241833 !important;
  letter-spacing: -.045em !important;
}

.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-card__body h4::after {
  width: 4.2rem !important;
  height: .35rem !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, #533a86 0%, #7d61b8 58%, #dbcff0 100%) !important;
}

.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-card__body p {
  color: rgba(36,24,51,.66) !important;
}

.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-card__swatches,
.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-card__chips,
.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-card__meta {
  position: relative !important;
  z-index: 2 !important;
}

.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-swatch {
  border-radius: 999px !important;
  border-color: rgba(255,255,255,.9) !important;
  box-shadow:
    0 0 0 1px rgba(83,58,134,.16),
    0 .38rem .82rem rgba(49,35,78,.13) !important;
}

.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-card,
.s6-division-page--architectural-coatings #division-products .s6-coatings-product-card {
  padding-bottom: 1.25rem !important;
}

.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-card::after,
.s6-division-page--architectural-coatings #division-products .s6-coatings-product-card::after {
  left: 1.35rem !important;
  right: 1.35rem !important;
  bottom: .7rem !important;
  height: .34rem !important;
  z-index: 1 !important;
}

.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-card__body {
  z-index: 3 !important;
  padding-bottom: clamp(1.95rem, 2.4vw, 2.35rem) !important;
}

.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-card__swatches,
.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-card__chips,
.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-card__meta {
  position: relative !important;
  z-index: 5 !important;
  margin-bottom: .25rem !important;
  padding-bottom: .2rem !important;
}

.s6-division-page--architectural-coatings #division-products .s6-coatings-catalogue .s6-stone-product-swatch {
  position: relative !important;
  z-index: 6 !important;
}

body.s6-division-current--exterior-restoration {
  --s6-division-theme-accent: #a65a3a;
  --s6-division-theme-accent-soft: rgba(166, 90, 58, .20);
  --s6-division-theme-nav-bg: linear-gradient(135deg, rgba(246, 238, 232, .96), rgba(224, 200, 183, .92));
  --s6-division-theme-nav-ink: #2b1710;
  --s6-division-theme-nav-muted: rgba(43, 23, 16, .60);
  --s6-division-theme-nav-border: rgba(112, 55, 34, .18);
}

.s6-division-page--exterior-restoration {
  --s6-restoration-rust: #a65a3a;
  --s6-restoration-rust-dark: #6f331f;
  --s6-restoration-copper: #c2784f;
  --s6-restoration-copper-soft: rgba(166, 90, 58, .18);
  --s6-restoration-bg: #f3ece6;
  --s6-restoration-bg-2: #e8d9cf;
  --s6-restoration-panel: #fff8f3;
  --s6-restoration-panel-2: #f5e8df;
  --s6-restoration-line: rgba(111, 51, 31, .18);
  --s6-restoration-ink: #2b1710;
  --s6-restoration-muted: rgba(43, 23, 16, .66);
  background: var(--s6-restoration-bg) !important;
  color: var(--s6-restoration-ink) !important;
}

.s6-division-page--exterior-restoration .s6-section-label,
.s6-division-page--exterior-restoration .s6-section-label span,
.s6-division-page--exterior-restoration .s6-eyebrow,
.s6-division-page--exterior-restoration .s6-division-hero .s6-section-label,
.s6-division-page--exterior-restoration .s6-division-cta--v32 .s6-section-label {
  color: var(--s6-restoration-rust) !important;
}

.s6-division-page--exterior-restoration .s6-section-label::before,
.s6-division-page--exterior-restoration .s6-eyebrow::before,
.s6-division-page--exterior-restoration .s6-division-hero .s6-section-label::before,
.s6-division-page--exterior-restoration .s6-division-cta--v32 .s6-section-label::before {
  background: var(--s6-restoration-rust) !important;
  border-color: var(--s6-restoration-rust) !important;
}

.s6-division-page--exterior-restoration .s6-green-button {
  background: var(--s6-restoration-rust) !important;
  border-color: var(--s6-restoration-rust) !important;
  color: #fff !important;
}

.s6-division-page--exterior-restoration .s6-outline-button,
.s6-division-page--exterior-restoration .s6-outline-button--dark {
  border-color: rgba(166, 90, 58, .42) !important;
  color: var(--s6-restoration-rust-dark) !important;
}

.s6-division-page--exterior-restoration .s6-outline-button:hover,
.s6-division-page--exterior-restoration .s6-outline-button--dark:hover {
  background: var(--s6-restoration-rust) !important;
  border-color: var(--s6-restoration-rust) !important;
  color: #fff !important;
}

.s6-division-page--exterior-restoration .s6-division-hero .s6-section-label,
.s6-division-page--exterior-restoration .s6-division-hero .s6-section-label::before {
  color: var(--s6-restoration-copper) !important;
}

.s6-division-page--exterior-restoration .s6-division-hero .s6-section-label::before {
  background: var(--s6-restoration-copper) !important;
  border-color: var(--s6-restoration-copper) !important;
}

.s6-division-page--exterior-restoration .s6-landscape-hero__panel,
.s6-division-page--exterior-restoration .s6-landscape-hero__panel span {
  border-color: rgba(194, 120, 79, .42) !important;
  color: #fff3ea !important;
}

.s6-division-page--exterior-restoration .s6-division-opening,
.s6-division-page--exterior-restoration #division-overview,
.s6-division-page--exterior-restoration .s6-light-concrete-section.s6-restoration-opening {
  background:
    radial-gradient(circle at 8% 0%, rgba(194, 120, 79, .20), transparent 34%),
    linear-gradient(135deg, #f4ede7 0%, #e6d4c7 100%) !important;
  border-color: rgba(111, 51, 31, .16) !important;
  color: var(--s6-restoration-ink) !important;
}

.s6-division-page--exterior-restoration .s6-division-opening__copy,
.s6-division-page--exterior-restoration .s6-restoration-opening__copy {
  background: rgba(255, 248, 243, .76) !important;
  border-color: rgba(111, 51, 31, .16) !important;
  color: var(--s6-restoration-ink) !important;
}

.s6-division-page--exterior-restoration .s6-division-opening__copy h2,
.s6-division-page--exterior-restoration .s6-restoration-opening__copy h2,
.s6-division-page--exterior-restoration .s6-coatings-section-head h2,
.s6-division-page--exterior-restoration .s6-division-section-header h2,
.s6-division-page--exterior-restoration .s6-stone-catalogue-group__head h3 {
  color: var(--s6-restoration-ink) !important;
}

.s6-division-page--exterior-restoration .s6-division-opening__copy p:not(.s6-section-label),
.s6-division-page--exterior-restoration .s6-restoration-opening__copy p:not(.s6-section-label),
.s6-division-page--exterior-restoration .s6-coatings-section-head > p,
.s6-division-page--exterior-restoration .s6-stone-catalogue-group__head p,
.s6-division-page--exterior-restoration .s6-division-section-header p:not(.s6-section-label) {
  color: var(--s6-restoration-muted) !important;
}

.s6-division-page--exterior-restoration .s6-overview-callout {
  background: rgba(255, 248, 243, .78) !important;
  border-color: rgba(111, 51, 31, .16) !important;
  color: var(--s6-restoration-ink) !important;
}

.s6-division-page--exterior-restoration .s6-overview-callout strong {
  color: var(--s6-restoration-rust-dark) !important;
}

.s6-division-page--exterior-restoration .s6-overview-callout small {
  color: var(--s6-restoration-muted) !important;
}

.s6-division-page--exterior-restoration .s6-coatings-systems,
.s6-division-page--exterior-restoration .s6-restoration-systems--classification,
.s6-division-page--exterior-restoration .s6-restoration-explainer-section,
.s6-division-page--exterior-restoration .s6-stone-catalogue,
.s6-division-page--exterior-restoration .s6-restoration-catalogue,
.s6-division-page--exterior-restoration .s6-division-projects,
.s6-division-page--exterior-restoration .s6-division-faq,
.s6-division-page--exterior-restoration .s6-division-cta--v32 {
  background:
    radial-gradient(circle at 12% 0%, rgba(194, 120, 79, .18), transparent 30%),
    linear-gradient(135deg, #f3ece6 0%, #e4d2c5 100%) !important;
  color: var(--s6-restoration-ink) !important;
  border-color: rgba(111, 51, 31, .16) !important;
}

.s6-division-page--exterior-restoration .s6-restoration-classification-card {
  border-color: rgba(111, 51, 31, .18) !important;
  background:
    linear-gradient(145deg, rgba(255,248,243,.96), rgba(241,221,207,.92)),
    radial-gradient(circle at 100% 0%, rgba(194,120,79,.22), transparent 34%) !important;
  box-shadow: 0 1.1rem 2.4rem rgba(80, 42, 28, .12) !important;
}

.s6-division-page--exterior-restoration .s6-restoration-classification-card::before {
  background: linear-gradient(90deg, var(--s6-restoration-rust-dark), var(--s6-restoration-copper)) !important;
}

.s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__kicker,
.s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__label,
.s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__spec span {
  color: var(--s6-restoration-rust) !important;
}

.s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__body strong,
.s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__spec strong {
  color: var(--s6-restoration-ink) !important;
}

.s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__body small {
  color: var(--s6-restoration-muted) !important;
}

.s6-division-page--exterior-restoration .s6-restoration-classification-card__visual,
.s6-division-page--exterior-restoration .s6-restoration-system-explainer__visual,
.s6-division-page--exterior-restoration .s6-coatings-system-explainer__visual {
  background:
    radial-gradient(circle at 18% 10%, rgba(255,248,243,.88), transparent 28%),
    linear-gradient(145deg, #d6b5a0, #8f4a31) !important;
  border-color: rgba(111, 51, 31, .22) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer,
.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer,
.s6-division-page--exterior-restoration #division-explainer .s6-division-explainer {
  background:
    radial-gradient(circle at 0% 0%, rgba(194,120,79,.18), transparent 34%),
    linear-gradient(145deg, rgba(255,248,243,.95), rgba(238,216,203,.94)) !important;
  border-color: rgba(111, 51, 31, .18) !important;
  color: var(--s6-restoration-ink) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-explainer-hotspot,
.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer__pills .s6-explainer-hotspot {
  background: rgba(255, 248, 243, .82) !important;
  border-color: rgba(111, 51, 31, .20) !important;
  color: var(--s6-restoration-rust-dark) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-explainer-hotspot span {
  color: var(--s6-restoration-rust-dark) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-explainer-hotspot:hover,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-hotspot:focus-visible,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-hotspot.is-active,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-hotspot[aria-pressed="true"] {
  background: var(--s6-restoration-rust) !important;
  border-color: var(--s6-restoration-rust-dark) !important;
  color: #fff !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-explainer-hotspot:hover span,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-hotspot:focus-visible span,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-hotspot.is-active span,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-hotspot[aria-pressed="true"] span {
  color: #fff !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-division-explainer__default > span,
.s6-division-page--exterior-restoration #division-explainer .s6-division-explainer__point-system > span,
.s6-division-page--exterior-restoration #division-explainer [data-s6-explainer-kicker],
.s6-division-page--exterior-restoration #division-explainer h4 {
  color: var(--s6-restoration-rust-dark) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-division-explainer__default h3,
.s6-division-page--exterior-restoration #division-explainer .s6-division-explainer__point-system h3 {
  color: var(--s6-restoration-ink) !important;
}

.s6-division-page--exterior-restoration #division-explainer p,
.s6-division-page--exterior-restoration #division-explainer li {
  color: var(--s6-restoration-muted) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer__overview-panel,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer__overview-panel,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer__detail-panel,
.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer__detail-panel {
  background: rgba(255, 248, 243, .74) !important;
  border-color: rgba(111, 51, 31, .16) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.7) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer__hint,
.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer__hint p {
  color: var(--s6-restoration-rust-dark) !important;
}

.s6-division-page--exterior-restoration .s6-stone-catalogue-group,
.s6-division-page--exterior-restoration .s6-restoration-catalogue-group {
  background:
    linear-gradient(145deg, rgba(255,248,243,.88), rgba(238,216,203,.78)) !important;
  border-color: rgba(111, 51, 31, .18) !important;
}

.s6-division-page--exterior-restoration .s6-stone-catalogue-group__head > span,
.s6-division-page--exterior-restoration .s6-stone-catalogue-group__toggle {
  background: var(--s6-restoration-rust-dark) !important;
  border-color: var(--s6-restoration-rust-dark) !important;
  color: #fff !important;
}

.s6-division-page--exterior-restoration #division-products .s6-restoration-product-card,
.s6-division-page--exterior-restoration #division-products .s6-stone-product-card {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate !important;
  border-radius: 1.25rem !important;
  padding-bottom: 1.2rem !important;
  border: 1px solid rgba(255,255,255,.74) !important;
  background:
    radial-gradient(circle at 14% 8%, rgba(255,255,255,.88), transparent 34%),
    radial-gradient(circle at 88% 2%, rgba(194,120,79,.34), transparent 34%),
    linear-gradient(145deg, rgba(255,248,243,.86) 0%, rgba(244,226,215,.82) 46%, rgba(213,169,144,.66) 100%) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.9),
    0 1.35rem 3.1rem rgba(80,42,28,.14) !important;
}

.s6-division-page--exterior-restoration #division-products .s6-restoration-product-card::before,
.s6-division-page--exterior-restoration #division-products .s6-stone-product-card::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  border-radius: inherit !important;
  background:
    linear-gradient(125deg, rgba(255,255,255,.64) 0%, rgba(255,255,255,.18) 24%, transparent 46%),
    radial-gradient(circle at 82% 16%, rgba(166,90,58,.24), transparent 28%) !important;
}

.s6-division-page--exterior-restoration #division-products .s6-restoration-product-card::after,
.s6-division-page--exterior-restoration #division-products .s6-stone-product-card::after {
  content: "" !important;
  position: absolute !important;
  left: 1.35rem !important;
  right: 1.35rem !important;
  bottom: .7rem !important;
  height: .34rem !important;
  z-index: 1 !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, var(--s6-restoration-rust-dark), var(--s6-restoration-rust), #e0b08f) !important;
  pointer-events: none !important;
}

.s6-division-page--exterior-restoration #division-products .s6-restoration-product-card:hover,
.s6-division-page--exterior-restoration #division-products .s6-stone-product-card:hover {
  transform: translateY(-4px) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.94),
    0 1.7rem 3.6rem rgba(80,42,28,.19) !important;
}

.s6-division-page--exterior-restoration #division-products .s6-stone-product-card__image {
  position: relative !important;
  z-index: 2 !important;
  margin: .95rem .95rem 0 !important;
  border-radius: .95rem !important;
  border: 1px solid rgba(255,255,255,.72) !important;
  overflow: hidden !important;
  background-color: #d9b69f !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.65), 0 .8rem 1.6rem rgba(80,42,28,.13) !important;
}

.s6-division-page--exterior-restoration #division-products .s6-stone-product-card__content {
  position: relative !important;
  z-index: 3 !important;
  padding-bottom: clamp(1.95rem, 2.4vw, 2.35rem) !important;
  background: transparent !important;
  border-top: 0 !important;
}

.s6-division-page--exterior-restoration #division-products .s6-stone-product-card__content > span {
  color: var(--s6-restoration-rust) !important;
}

.s6-division-page--exterior-restoration #division-products .s6-stone-product-card__content h4 {
  color: var(--s6-restoration-ink) !important;
}

.s6-division-page--exterior-restoration #division-products .s6-stone-product-card__content h4::after {
  width: 4.1rem !important;
  height: .32rem !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, var(--s6-restoration-rust-dark), var(--s6-restoration-copper)) !important;
}

.s6-division-page--exterior-restoration #division-products .s6-stone-product-card__content p {
  color: var(--s6-restoration-muted) !important;
}

.s6-division-page--exterior-restoration #division-products .s6-stone-product-swatches {
  position: relative !important;
  z-index: 5 !important;
  margin-bottom: .25rem !important;
  padding-bottom: .2rem !important;
}

.s6-division-page--exterior-restoration #division-products .s6-stone-product-swatch {
  position: relative !important;
  z-index: 6 !important;
  border-radius: 999px !important;
  border-color: rgba(255,255,255,.9) !important;
  box-shadow: 0 0 0 1px rgba(111,51,31,.16), 0 .38rem .82rem rgba(80,42,28,.13) !important;
}

.s6-division-page--exterior-restoration .s6-division-projects,
.s6-division-page--exterior-restoration .s6-division-faq {
  margin-bottom: 0 !important;
  padding-left: max(1.25rem, env(safe-area-inset-left)) !important;
  padding-right: max(1.25rem, env(safe-area-inset-right)) !important;
  background:
    radial-gradient(circle at 10% 0%, rgba(194,120,79,.16), transparent 32%),
    linear-gradient(135deg, #f3ece6 0%, #e4d2c5 100%) !important;
}

.s6-division-page--exterior-restoration .s6-division-project-board,
.s6-division-page--exterior-restoration .s6-faq-list {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.s6-division-page--exterior-restoration .s6-division-project-feature a,
.s6-division-page--exterior-restoration .s6-division-project-card a {
  border-color: rgba(111,51,31,.18) !important;
  background: #2b1710 !important;
}

.s6-division-page--exterior-restoration .s6-division-project-feature__content small,
.s6-division-page--exterior-restoration .s6-division-project-card__content span {
  color: #e0b08f !important;
}

.s6-division-page--exterior-restoration .s6-division-project-feature__content h3,
.s6-division-page--exterior-restoration .s6-division-project-card__content h3,
.s6-division-page--exterior-restoration .s6-division-project-feature__content p,
.s6-division-page--exterior-restoration .s6-division-project-card__content p {
  color: #fff !important;
}

.s6-division-page--exterior-restoration .s6-faq-item {
  background: rgba(255,248,243,.82) !important;
  border-color: rgba(111,51,31,.18) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.72) !important;
}

.s6-division-page--exterior-restoration .s6-faq-question {
  color: var(--s6-restoration-ink) !important;
}

.s6-division-page--exterior-restoration .s6-faq-question em {
  background: var(--s6-restoration-rust) !important;
  color: #fff !important;
}

.s6-division-page--exterior-restoration .s6-faq-answer {
  border-left-color: var(--s6-restoration-rust) !important;
}

.s6-division-page--exterior-restoration .s6-faq-answer p {
  color: var(--s6-restoration-muted) !important;
}
body.s6-division-current--exterior-restoration footer {
  margin-top: 0 !important;
}

.s6-division-page--exterior-restoration {
  --s6-restoration-rust: #a65a3a;
  --s6-restoration-rust-dark: #6f331f;
  --s6-restoration-copper: #c2784f;
  --s6-restoration-copper-light: #dfad91;
  --s6-restoration-canvas: #ead8ce;
  --s6-restoration-canvas-2: #d9b6a3;
  --s6-restoration-surface: rgba(255, 244, 238, .86);
  --s6-restoration-surface-2: rgba(245, 225, 214, .78);
  --s6-restoration-border: rgba(111, 51, 31, .20);
  background: linear-gradient(135deg, #ead8ce 0%, #d9b6a3 100%) !important;
}

body.s6-division-current--exterior-restoration {
  --s6-division-theme-accent: #a65a3a;
  --s6-division-theme-accent-soft: rgba(166, 90, 58, .22);
  --s6-division-theme-nav-bg: linear-gradient(135deg, rgba(241, 221, 211, .96), rgba(213, 174, 154, .92));
  --s6-division-theme-nav-ink: #2b1710;
  --s6-division-theme-nav-muted: rgba(43, 23, 16, .62);
  --s6-division-theme-nav-border: rgba(111, 51, 31, .22);
}

.s6-division-page--exterior-restoration #division-overview.s6-division-opening,
.s6-division-page--exterior-restoration #division-overview.s6-light-concrete-section,
.s6-division-page--exterior-restoration .s6-division-opening.s6-light-concrete-section.s6-restoration-opening {
  background:
    radial-gradient(circle at 8% 0%, rgba(166, 90, 58, .30), transparent 34%),
    radial-gradient(circle at 92% 12%, rgba(194, 120, 79, .22), transparent 32%),
    linear-gradient(135deg, #ead7cc 0%, #d2a992 100%) !important;
  border-color: rgba(111, 51, 31, .22) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.44), 0 24px 80px rgba(80,42,28,.10) !important;
}

.s6-division-page--exterior-restoration #division-overview::before,
.s6-division-page--exterior-restoration #division-overview::after {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.s6-division-page--exterior-restoration #division-overview .s6-division-opening__copy,
.s6-division-page--exterior-restoration #division-overview .s6-restoration-opening__copy {
  background: linear-gradient(145deg, rgba(255,244,238,.84), rgba(239,207,190,.62)) !important;
  border-color: rgba(111, 51, 31, .22) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.62), 0 18px 50px rgba(80,42,28,.10) !important;
}

.s6-division-page--exterior-restoration #division-overview .s6-overview-callout,
.s6-division-page--exterior-restoration #division-overview .s6-division-opening__callouts li {
  background: rgba(255,244,238,.64) !important;
  border-color: rgba(111, 51, 31, .20) !important;
  color: var(--s6-restoration-ink) !important;
}

.s6-division-page--exterior-restoration #division-explainer.s6-restoration-explainer-section,
.s6-division-page--exterior-restoration #division-explainer.s6-caulking-explainer-section {
  background:
    radial-gradient(circle at 12% 0%, rgba(166,90,58,.24), transparent 34%),
    radial-gradient(circle at 88% 8%, rgba(194,120,79,.18), transparent 30%),
    linear-gradient(135deg, #ead7cc 0%, #d5ad99 100%) !important;
  border-color: rgba(111,51,31,.22) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer,
.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer,
.s6-division-page--exterior-restoration #division-explainer .s6-caulking-system-explainer,
.s6-division-page--exterior-restoration #division-explainer .s6-division-explainer {
  background:
    radial-gradient(circle at 0% 0%, rgba(194,120,79,.24), transparent 36%),
    linear-gradient(145deg, rgba(255,244,238,.86), rgba(236,203,185,.78)) !important;
  border-color: rgba(111,51,31,.24) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.62), 0 28px 90px rgba(80,42,28,.14) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer__overview-panel,
.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer__overview-panel,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer__detail-panel,
.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer__detail-panel,
.s6-division-page--exterior-restoration #division-explainer .s6-division-explainer__default,
.s6-division-page--exterior-restoration #division-explainer .s6-division-explainer__point-system {
  background: rgba(255,244,238,.72) !important;
  border-color: rgba(111,51,31,.20) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.62) !important;
}

.s6-division-page--exterior-restoration #division-projects.s6-division-projects,
.s6-division-page--exterior-restoration #division-faq.s6-division-faq {
  width: min(100% - 2rem, 1240px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
}

.s6-division-page--exterior-restoration #division-projects::before,
.s6-division-page--exterior-restoration #division-projects::after,
.s6-division-page--exterior-restoration #division-faq::before,
.s6-division-page--exterior-restoration #division-faq::after {
  content: none !important;
  display: none !important;
}

.s6-division-page--exterior-restoration #division-projects .s6-division-project-board,
.s6-division-page--exterior-restoration #division-faq .s6-faq-list {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.s6-division-page--exterior-restoration #division-projects .s6-division-project-feature,
.s6-division-page--exterior-restoration #division-projects .s6-division-project-card {
  border: 1px solid rgba(111,51,31,.20) !important;
  border-radius: 0 !important;
  box-shadow: 0 26px 72px rgba(80,42,28,.16) !important;
  background: #2b1710 !important;
}

.s6-division-page--exterior-restoration #division-projects .s6-division-project-feature a,
.s6-division-page--exterior-restoration #division-projects .s6-division-project-card a {
  background: #2b1710 !important;
  border-color: rgba(111,51,31,.20) !important;
}

.s6-division-page--exterior-restoration #division-projects .s6-division-project-feature__image > span {
  display: none !important;
}

.s6-division-page--exterior-restoration #division-projects .s6-division-project-feature__content,
.s6-division-page--exterior-restoration #division-projects .s6-division-project-card__content {
  background: linear-gradient(180deg, transparent 0%, rgba(43,23,16,.86) 100%) !important;
  color: #fff !important;
  text-shadow: 0 1px 18px rgba(0,0,0,.34) !important;
}

.s6-division-page--exterior-restoration #division-projects .s6-division-project-feature__content small,
.s6-division-page--exterior-restoration #division-projects .s6-division-project-card__content span,
.s6-division-page--exterior-restoration #division-projects .s6-division-project-feature__content p,
.s6-division-page--exterior-restoration #division-projects .s6-division-project-card__content p {
  color: rgba(255,226,207,.84) !important;
}

.s6-division-page--exterior-restoration #division-projects .s6-division-project-feature__content h3,
.s6-division-page--exterior-restoration #division-projects .s6-division-project-card__content h3 {
  color: #fff !important;
}

.s6-division-page--exterior-restoration #division-faq .s6-faq-list {
  gap: .85rem !important;
}

.s6-division-page--exterior-restoration #division-faq .s6-faq-item {
  background: rgba(255,244,238,.72) !important;
  border: 1px solid rgba(111,51,31,.20) !important;
  border-radius: 0 !important;
  box-shadow: 0 16px 46px rgba(80,42,28,.10), inset 0 1px 0 rgba(255,255,255,.64) !important;
}

.s6-division-page--exterior-restoration #division-faq .s6-faq-question {
  background: rgba(247,230,219,.74) !important;
  color: var(--s6-restoration-ink) !important;
}

.s6-division-page--exterior-restoration #division-faq .s6-faq-question em {
  background: var(--s6-restoration-rust) !important;
  color: #fff !important;
}

.s6-division-page--exterior-restoration #division-faq .s6-faq-answer {
  margin: 0 clamp(18px, 3vw, 34px) clamp(18px, 3vw, 30px) !important;
  padding: clamp(16px, 2vw, 24px) 0 0 clamp(18px, 2vw, 28px) !important;
  border-left: 2px solid rgba(166,90,58,.52) !important;
  color: var(--s6-restoration-muted) !important;
}

body.s6-division-current--exterior-restoration {
  --s6-division-theme-accent: #a65a3a !important;
  --s6-division-theme-accent-soft: rgba(166, 90, 58, .18) !important;
  --s6-division-theme-nav-bg: linear-gradient(135deg, rgba(250, 242, 237, .96), rgba(231, 209, 197, .94)) !important;
  --s6-division-theme-nav-ink: #23130d !important;
  --s6-division-theme-nav-muted: rgba(35, 19, 13, .58) !important;
  --s6-division-theme-nav-border: rgba(111, 51, 31, .18) !important;
}

.s6-division-page--exterior-restoration {
  --rest-rust: #a65a3a;
  --rest-rust-dark: #6f331f;
  --rest-copper: #c2784f;
  --rest-copper-soft: rgba(166,90,58,.18);
  --rest-canvas: #f4ebe5;
  --rest-canvas-2: #e8d2c4;
  --rest-canvas-3: #d9b49d;
  --rest-panel: #fbf4ef;
  --rest-panel-2: #ead6c9;
  --rest-ink: #24140e;
  --rest-muted: rgba(36, 20, 14, .68);
  --rest-line: rgba(111, 51, 31, .18);
  --s6-restoration-rust: var(--rest-rust);
  --s6-restoration-rust-dark: var(--rest-rust-dark);
  --s6-restoration-copper: var(--rest-copper);
  --s6-restoration-ink: var(--rest-ink);
  --s6-restoration-muted: var(--rest-muted);
  background: linear-gradient(180deg, var(--rest-canvas) 0%, var(--rest-canvas-2) 100%) !important;
}

/* Approved eyebrow/signature treatment, Restoration colours only. */
.s6-division-page--exterior-restoration .s6-section-label,
.s6-division-page--exterior-restoration .s6-section-label span,
.s6-division-page--exterior-restoration .s6-eyebrow,
.s6-division-page--exterior-restoration .s6-eyebrow span,
.s6-division-page--exterior-restoration .s6-division-hero .s6-section-label,
.s6-division-page--exterior-restoration .s6-division-section-header .s6-section-label,
.s6-division-page--exterior-restoration .s6-division-opening__copy .s6-section-label,
.s6-division-page--exterior-restoration .s6-coatings-section-head .s6-section-label,
.s6-division-page--exterior-restoration .s6-stone-catalogue-group__head .s6-section-label,
.s6-division-page--exterior-restoration .s6-division-explainer__copy > .s6-section-label,
.s6-division-page--exterior-restoration .s6-division-cta--v32 .s6-section-label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 14px !important;
  margin: 0 0 clamp(.85rem, 1.35vw, 1.15rem) !important;
  padding: 0 !important;
  color: var(--rest-rust) !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: .22em !important;
  text-transform: uppercase !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.s6-division-page--exterior-restoration .s6-section-label::before,
.s6-division-page--exterior-restoration .s6-eyebrow::before,
.s6-division-page--exterior-restoration .s6-division-hero .s6-section-label::before,
.s6-division-page--exterior-restoration .s6-division-section-header .s6-section-label::before,
.s6-division-page--exterior-restoration .s6-division-opening__copy .s6-section-label::before,
.s6-division-page--exterior-restoration .s6-coatings-section-head .s6-section-label::before,
.s6-division-page--exterior-restoration .s6-stone-catalogue-group__head .s6-section-label::before,
.s6-division-page--exterior-restoration .s6-division-explainer__copy > .s6-section-label::before,
.s6-division-page--exterior-restoration .s6-division-cta--v32 .s6-section-label::before {
  content: "" !important;
  display: block !important;
  width: 48px !important;
  height: 2px !important;
  flex: 0 0 48px !important;
  background: var(--rest-rust) !important;
  border: 0 !important;
  opacity: 1 !important;
  transform: none !important;
}

/* Same section canvas logic as Coatings, with Restoration copper/rust palette. */
.s6-division-page--exterior-restoration .s6-division-opening,
.s6-division-page--exterior-restoration #division-overview.s6-division-opening,
.s6-division-page--exterior-restoration #division-overview.s6-light-concrete-section,
.s6-division-page--exterior-restoration .s6-restoration-opening,
.s6-division-page--exterior-restoration .s6-light-concrete-section.s6-restoration-opening {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  padding: clamp(5rem, 8vw, 8rem) clamp(1.5rem, 6vw, 5.75rem) !important;
  background:
    radial-gradient(circle at 14% 8%, rgba(166, 90, 58, .15), transparent 30rem),
    radial-gradient(circle at 88% 16%, rgba(255, 255, 255, .54), transparent 26rem),
    linear-gradient(180deg, #f7eee8 0%, #e8d2c4 100%) !important;
  border-top: 1px solid rgba(111, 51, 31, .12) !important;
  border-bottom: 1px solid rgba(111, 51, 31, .14) !important;
  border-left: 0 !important;
  border-right: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: var(--rest-ink) !important;
}

.s6-division-page--exterior-restoration #division-overview::before,
.s6-division-page--exterior-restoration #division-overview::after {
  content: none !important;
  display: none !important;
}

.s6-division-page--exterior-restoration #division-overview .s6-division-opening__copy,
.s6-division-page--exterior-restoration #division-overview .s6-restoration-opening__copy {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: var(--rest-ink) !important;
}

.s6-division-page--exterior-restoration .s6-division-opening__copy h2,
.s6-division-page--exterior-restoration .s6-coatings-section-head h2,
.s6-division-page--exterior-restoration .s6-division-section-header h2,
.s6-division-page--exterior-restoration .s6-stone-catalogue-group__head h3,
.s6-division-page--exterior-restoration .s6-faq-question,
.s6-division-page--exterior-restoration .s6-restoration-product-card .s6-stone-product-card__body h4,
.s6-division-page--exterior-restoration .s6-stone-product-card .s6-stone-product-card__body h4 {
  color: var(--rest-ink) !important;
}

.s6-division-page--exterior-restoration .s6-division-opening__copy p:not(.s6-section-label),
.s6-division-page--exterior-restoration .s6-coatings-section-head p:not(.s6-section-label),
.s6-division-page--exterior-restoration .s6-division-section-header p:not(.s6-section-label),
.s6-division-page--exterior-restoration .s6-stone-catalogue-group__head p:not(.s6-section-label),
.s6-division-page--exterior-restoration .s6-restoration-product-card .s6-stone-product-card__body p,
.s6-division-page--exterior-restoration .s6-stone-product-card .s6-stone-product-card__body p,
.s6-division-page--exterior-restoration .s6-faq-answer p {
  color: var(--rest-muted) !important;
}

.s6-division-page--exterior-restoration .s6-overview-callout,
.s6-division-page--exterior-restoration #division-overview .s6-division-opening__callouts li {
  background: rgba(251, 244, 239, .78) !important;
  border: 1px solid rgba(111, 51, 31, .14) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.64) !important;
  color: var(--rest-ink) !important;
}

.s6-division-page--exterior-restoration .s6-green-button {
  background: var(--rest-rust) !important;
  border-color: var(--rest-rust) !important;
  color: #fff !important;
}

.s6-division-page--exterior-restoration .s6-outline-button,
.s6-division-page--exterior-restoration .s6-outline-button--dark {
  border-color: rgba(166, 90, 58, .42) !important;
  color: var(--rest-rust-dark) !important;
}

.s6-division-page--exterior-restoration .s6-outline-button:hover,
.s6-division-page--exterior-restoration .s6-outline-button--dark:hover {
  background: var(--rest-rust) !important;
  border-color: var(--rest-rust) !important;
  color: #fff !important;
}

/* Product/system/cards follow Coatings visual structure, copper colours only. */
.s6-division-page--exterior-restoration .s6-coatings-systems,
.s6-division-page--exterior-restoration .s6-restoration-systems--classification,
.s6-division-page--exterior-restoration .s6-restoration-explainer-section,
.s6-division-page--exterior-restoration .s6-stone-catalogue,
.s6-division-page--exterior-restoration .s6-restoration-catalogue,
.s6-division-page--exterior-restoration #division-products,
.s6-division-page--exterior-restoration .s6-division-projects,
.s6-division-page--exterior-restoration .s6-division-faq,
.s6-division-page--exterior-restoration .s6-division-cta--v32 {
  background:
    radial-gradient(circle at 14% 9%, rgba(166,90,58,.12), transparent 34%),
    radial-gradient(circle at 88% 18%, rgba(255,255,255,.50), transparent 28%),
    linear-gradient(180deg, var(--rest-canvas) 0%, var(--rest-canvas-2) 100%) !important;
  color: var(--rest-ink) !important;
  border-top: 1px solid rgba(111,51,31,.11) !important;
  border-bottom: 1px solid rgba(111,51,31,.12) !important;
  border-left: 0 !important;
  border-right: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.s6-division-page--exterior-restoration .s6-restoration-classification-card,
.s6-division-page--exterior-restoration .s6-restoration-product-card,
.s6-division-page--exterior-restoration .s6-stone-product-card,
.s6-division-page--exterior-restoration .s6-stone-catalogue-group,
.s6-division-page--exterior-restoration .s6-restoration-catalogue-group {
  border-color: var(--rest-line) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.84), rgba(232,210,196,.84)),
    repeating-linear-gradient(0deg, rgba(111,51,31,.035) 0 1px, transparent 1px 18px) !important;
  box-shadow: inset 0 1px rgba(255,255,255,.76), 0 1.1rem 2.2rem rgba(80,42,28,.08) !important;
}

.s6-division-page--exterior-restoration .s6-restoration-classification-card,
.s6-division-page--exterior-restoration .s6-restoration-product-card,
.s6-division-page--exterior-restoration #division-products .s6-stone-product-card {
  border-top: 4px solid var(--rest-rust) !important;
}

.s6-division-page--exterior-restoration .s6-restoration-classification-card::before,
.s6-division-page--exterior-restoration .s6-restoration-product-card::before,
.s6-division-page--exterior-restoration #division-products .s6-stone-product-card::before {
  background:
    linear-gradient(90deg, rgba(166,90,58,.11), transparent 36%),
    repeating-linear-gradient(0deg, rgba(111,51,31,.038) 0 1px, transparent 1px 16px) !important;
}

.s6-division-page--exterior-restoration .s6-restoration-classification-card:hover,
.s6-division-page--exterior-restoration .s6-restoration-product-card:hover,
.s6-division-page--exterior-restoration #division-products .s6-stone-product-card:hover {
  border-color: rgba(166,90,58,.50) !important;
  border-top-color: var(--rest-rust-dark) !important;
}

.s6-division-page--exterior-restoration .s6-system-card__badge,
.s6-division-page--exterior-restoration .s6-stone-catalogue-group__head > span {
  color: var(--rest-rust-dark) !important;
  border-color: rgba(166,90,58,.34) !important;
  background: rgba(166,90,58,.09) !important;
}

.s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__kicker,
.s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__label,
.s6-division-page--exterior-restoration .s6-restoration-classification-card .s6-system-card__spec span,
.s6-division-page--exterior-restoration .s6-stone-catalogue-group__head > span,
.s6-division-page--exterior-restoration .s6-division-project-feature__content small,
.s6-division-page--exterior-restoration .s6-division-project-card__content span {
  color: var(--rest-rust) !important;
}

.s6-division-page--exterior-restoration .s6-restoration-classification-card__visual,
.s6-division-page--exterior-restoration .s6-restoration-system-explainer__visual,
.s6-division-page--exterior-restoration .s6-coatings-system-explainer__visual,
.s6-division-page--exterior-restoration .s6-division-explainer__visual {
  background:
    radial-gradient(circle at 18% 10%, rgba(255,255,255,.70), transparent 28%),
    linear-gradient(145deg, #d7b19c, #8f4a31) !important;
  border-color: rgba(111, 51, 31, .22) !important;
}

/* Explainer: same integration level as Coatings, Restoration colours only. */
.s6-division-page--exterior-restoration #division-explainer,
.s6-division-page--exterior-restoration #division-explainer.s6-restoration-explainer-section,
.s6-division-page--exterior-restoration #division-explainer.s6-caulking-explainer-section {
  background:
    radial-gradient(circle at 14% 8%, rgba(166,90,58,.14), transparent 30rem),
    radial-gradient(circle at 88% 16%, rgba(255,255,255,.52), transparent 26rem),
    linear-gradient(180deg, #f7eee8 0%, #e8d2c4 100%) !important;
  border-top: 1px solid rgba(111,51,31,.12) !important;
  border-bottom: 1px solid rgba(111,51,31,.14) !important;
  border-left: 0 !important;
  border-right: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer,
.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer,
.s6-division-page--exterior-restoration #division-explainer .s6-division-explainer {
  background:
    linear-gradient(180deg, rgba(255,255,255,.80), rgba(232,210,196,.82)),
    radial-gradient(circle at 0 0, rgba(166,90,58,.12), transparent 30rem) !important;
  border-color: rgba(111,51,31,.18) !important;
  box-shadow: inset 0 1px rgba(255,255,255,.74), 0 1.1rem 2.2rem rgba(80,42,28,.08) !important;
  color: var(--rest-ink) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer__overview-panel,
.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer__overview-panel,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer__detail-panel,
.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer__detail-panel,
.s6-division-page--exterior-restoration #division-explainer .s6-division-explainer__default,
.s6-division-page--exterior-restoration #division-explainer .s6-division-explainer__point-system,
.s6-division-page--exterior-restoration .s6-faq-item {
  background: rgba(255,255,255,.74) !important;
  border-color: rgba(166,90,58,.23) !important;
  box-shadow: inset 0 1px rgba(255,255,255,.72) !important;
}

.s6-division-page--exterior-restoration #division-explainer h3,
.s6-division-page--exterior-restoration #division-explainer h4,
.s6-division-page--exterior-restoration #division-explainer .s6-division-explainer__default h3,
.s6-division-page--exterior-restoration #division-explainer .s6-division-explainer__point-system h3 {
  color: var(--rest-ink) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-division-explainer__default > span,
.s6-division-page--exterior-restoration #division-explainer .s6-division-explainer__point-system > span,
.s6-division-page--exterior-restoration #division-explainer [data-s6-explainer-kicker] {
  color: var(--rest-rust-dark) !important;
}

.s6-division-page--exterior-restoration #division-explainer p,
.s6-division-page--exterior-restoration #division-explainer li {
  color: var(--rest-muted) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-explainer-hotspot,
.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer__pills .s6-explainer-hotspot,
.s6-division-page--exterior-restoration #division-explainer .s6-division-explainer__hotspots .s6-explainer-hotspot {
  background: rgba(255,255,255,.88) !important;
  border-color: rgba(166,90,58,.30) !important;
  color: var(--rest-rust-dark) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-explainer-hotspot span {
  color: var(--rest-rust-dark) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-explainer-hotspot:hover,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-hotspot:focus-visible,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-hotspot.is-active,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-hotspot[aria-pressed="true"] {
  background: var(--rest-rust) !important;
  border-color: var(--rest-rust-dark) !important;
  color: #fff !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-explainer-hotspot:hover span,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-hotspot:focus-visible span,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-hotspot.is-active span,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-hotspot[aria-pressed="true"] span {
  color: #fff !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer__hint,
.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer__hint p {
  color: var(--rest-rust-dark) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer__hint p span {
  background: var(--rest-rust) !important;
}

.s6-division-page--exterior-restoration #division-products .s6-restoration-product-card,
.s6-division-page--exterior-restoration #division-products .s6-stone-product-card {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate !important;
  border-radius: 1.25rem !important;
  padding-bottom: 1.2rem !important;
  border: 1px solid rgba(255,255,255,.74) !important;
  background:
    radial-gradient(circle at 14% 8%, rgba(255,255,255,.88), transparent 34%),
    radial-gradient(circle at 88% 2%, rgba(194,120,79,.30), transparent 34%),
    linear-gradient(145deg, rgba(255,250,246,.88) 0%, rgba(244,226,215,.82) 46%, rgba(213,169,144,.58) 100%) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 1.35rem 3.1rem rgba(80,42,28,.14) !important;
}

.s6-division-page--exterior-restoration #division-products .s6-restoration-product-card::before,
.s6-division-page--exterior-restoration #division-products .s6-stone-product-card::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  border-radius: inherit !important;
  background:
    linear-gradient(125deg, rgba(255,255,255,.64) 0%, rgba(255,255,255,.18) 24%, transparent 46%),
    radial-gradient(circle at 82% 16%, rgba(166,90,58,.22), transparent 28%) !important;
}

.s6-division-page--exterior-restoration #division-products .s6-restoration-product-card::after,
.s6-division-page--exterior-restoration #division-products .s6-stone-product-card::after {
  content: "" !important;
  position: absolute !important;
  left: 1.35rem !important;
  right: 1.35rem !important;
  bottom: .95rem !important;
  z-index: 2 !important;
  height: .18rem !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, var(--rest-rust-dark), var(--rest-copper)) !important;
  pointer-events: none !important;
}

.s6-division-page--exterior-restoration #division-products .s6-stone-product-card__image,
.s6-division-page--exterior-restoration #division-products .s6-restoration-product-card__image {
  position: relative !important;
  z-index: 3 !important;
  margin: .95rem .95rem 0 !important;
  border-radius: 1rem !important;
  overflow: hidden !important;
  background-color: #ead6c9 !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.46), 0 .9rem 1.8rem rgba(80,42,28,.10) !important;
  filter: saturate(.96) contrast(1.03) !important;
}

.s6-division-page--exterior-restoration #division-products .s6-stone-product-card__image::after {
  background:
    linear-gradient(180deg, rgba(36,20,14,.02), rgba(111,51,31,.20)),
    radial-gradient(circle at 18% 12%, rgba(255,255,255,.26), transparent 24%) !important;
}

.s6-division-page--exterior-restoration #division-products .s6-stone-product-card__image span {
  color: #fff !important;
  background: rgba(36,20,14,.76) !important;
  border-color: rgba(255,255,255,.24) !important;
}

.s6-division-page--exterior-restoration #division-products .s6-stone-product-card__body,
.s6-division-page--exterior-restoration #division-products .s6-stone-product-card__content {
  position: relative !important;
  z-index: 4 !important;
  padding: 1.15rem 1.25rem 1.65rem !important;
  background: transparent !important;
  border: 0 !important;
  color: var(--rest-ink) !important;
}

.s6-division-page--exterior-restoration #division-products .s6-stone-product-card__body h4,
.s6-division-page--exterior-restoration #division-products .s6-stone-product-card__content h4 {
  color: var(--rest-ink) !important;
}

.s6-division-page--exterior-restoration #division-products .s6-stone-product-card__body h4::after,
.s6-division-page--exterior-restoration #division-products .s6-stone-product-card__content h4::after {
  display: block !important;
  width: 4.1rem !important;
  height: .32rem !important;
  margin-top: .65rem !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, var(--rest-rust-dark), var(--rest-copper)) !important;
}

.s6-division-page--exterior-restoration #division-products .s6-stone-product-card__swatches,
.s6-division-page--exterior-restoration #division-products .s6-stone-product-card__chips,
.s6-division-page--exterior-restoration #division-products .s6-stone-product-card__meta,
.s6-division-page--exterior-restoration #division-products .s6-stone-product-swatches {
  position: relative !important;
  z-index: 5 !important;
  margin-bottom: .55rem !important;
  padding-bottom: .55rem !important;
}

.s6-division-page--exterior-restoration #division-products .s6-stone-product-swatch {
  position: relative !important;
  z-index: 6 !important;
  border-radius: 999px !important;
  border-color: rgba(255,255,255,.90) !important;
  box-shadow: 0 0 0 1px rgba(111,51,31,.16), 0 .38rem .82rem rgba(80,42,28,.13) !important;
}

.s6-division-page--exterior-restoration #division-products .s6-stone-product-swatch:hover,
.s6-division-page--exterior-restoration #division-products .s6-stone-product-swatch.is-active {
  border-color: var(--rest-rust) !important;
  box-shadow: 0 0 0 2px rgba(166,90,58,.24), 0 .38rem .82rem rgba(80,42,28,.13) !important;
}

.s6-division-page--exterior-restoration .s6-stone-catalogue-group__toggle {
  background: var(--rest-ink) !important;
  border-color: rgba(166,90,58,.42) !important;
  color: #fff !important;
}

.s6-division-page--exterior-restoration .s6-stone-catalogue-group__toggle:hover {
  background: var(--rest-rust) !important;
  border-color: var(--rest-rust-dark) !important;
  color: #fff !important;
}

/* Related Projects: exact approved overlay pattern, copper colours. */
.s6-division-page--exterior-restoration .s6-division-projects,
.s6-division-page--exterior-restoration #division-projects.s6-division-projects {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  padding-left: clamp(1.5rem, 6vw, 5.75rem) !important;
  padding-right: clamp(1.5rem, 6vw, 5.75rem) !important;
  background:
    radial-gradient(circle at 12% 6%, rgba(166,90,58,.10), transparent 30rem),
    linear-gradient(180deg, #f7eee8 0%, #e8d2c4 100%) !important;
  border-top: 1px solid rgba(111,51,31,.11) !important;
  border-bottom: 1px solid rgba(111,51,31,.12) !important;
  border-left: 0 !important;
  border-right: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.s6-division-page--exterior-restoration .s6-division-projects .s6-division-section-header,
.s6-division-page--exterior-restoration .s6-division-projects .s6-division-project-board {
  width: min(100%, 1240px) !important;
  max-width: 1240px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.s6-division-page--exterior-restoration .s6-division-project-board {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.s6-division-page--exterior-restoration .s6-division-project-feature,
.s6-division-page--exterior-restoration .s6-division-project-card {
  border: 1px solid rgba(111,51,31,.18) !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  box-shadow: 0 26px 72px rgba(80,42,28,.16) !important;
  background: #2b1710 !important;
}

.s6-division-page--exterior-restoration .s6-division-project-feature a,
.s6-division-page--exterior-restoration .s6-division-project-card a {
  background: #2b1710 !important;
  border-color: rgba(111,51,31,.18) !important;
}

.s6-division-page--exterior-restoration .s6-division-project-feature__image > span {
  display: none !important;
}

.s6-division-page--exterior-restoration .s6-division-project-feature__content {
  position: absolute !important;
  left: clamp(1.5rem, 3vw, 3rem) !important;
  right: clamp(1.5rem, 3vw, 3rem) !important;
  bottom: clamp(1.5rem, 3vw, 3rem) !important;
  z-index: 3 !important;
  max-width: 34rem !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  color: #fff !important;
  text-shadow: 0 1.25rem 3rem rgba(0,0,0,.38) !important;
}

.s6-division-page--exterior-restoration .s6-division-project-feature__content small {
  display: block !important;
  margin: 0 0 .65rem !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  color: #e2b08d !important;
  font-size: .68rem !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: .2em !important;
  text-transform: uppercase !important;
}

.s6-division-page--exterior-restoration .s6-division-project-feature__content h3 {
  color: #fff !important;
  font-size: clamp(2rem, 3.8vw, 4.4rem) !important;
  line-height: .9 !important;
  letter-spacing: -.06em !important;
  text-transform: uppercase !important;
}

.s6-division-page--exterior-restoration .s6-division-project-feature__content p {
  color: #f4d1bd !important;
  font-size: .68rem !important;
  font-weight: 900 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
}

.s6-division-page--exterior-restoration .s6-division-project-card__content,
.s6-division-page--exterior-restoration .s6-division-project-latest-head {
  background: linear-gradient(180deg, rgba(251,244,239,.98), rgba(232,210,196,.98)) !important;
  border-color: rgba(111,51,31,.16) !important;
  color: var(--rest-ink) !important;
}

.s6-division-page--exterior-restoration .s6-division-project-card__content h3,
.s6-division-page--exterior-restoration .s6-division-project-card__content p {
  color: var(--rest-ink) !important;
}

.s6-division-page--exterior-restoration .s6-division-project-card__content span,
.s6-division-page--exterior-restoration .s6-division-project-latest-head span {
  color: var(--rest-rust) !important;
}

/* FAQ: same locked button/indented-answer treatment, copper colours. */
.s6-division-page--exterior-restoration .s6-division-faq,
.s6-division-page--exterior-restoration #division-faq.s6-division-faq {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  padding-left: clamp(1.5rem, 6vw, 5.75rem) !important;
  padding-right: clamp(1.5rem, 6vw, 5.75rem) !important;
  background:
    radial-gradient(circle at 12% 6%, rgba(166,90,58,.10), transparent 30rem),
    linear-gradient(180deg, #f7eee8 0%, #e8d2c4 100%) !important;
  border-top: 1px solid rgba(111,51,31,.11) !important;
  border-bottom: 1px solid rgba(111,51,31,.12) !important;
  border-left: 0 !important;
  border-right: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.s6-division-page--exterior-restoration .s6-division-faq .s6-division-section-header,
.s6-division-page--exterior-restoration .s6-division-faq .s6-faq-list {
  width: min(100%, 1240px) !important;
  max-width: 1240px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.s6-division-page--exterior-restoration .s6-faq-list {
  display: grid !important;
  gap: .95rem !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.s6-division-page--exterior-restoration .s6-faq-item {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.s6-division-page--exterior-restoration .s6-faq-question {
  min-height: 4.15rem !important;
  padding: 1rem 1.05rem 1rem 1.25rem !important;
  background: rgba(251,244,239,.92) !important;
  border: 1px solid rgba(111,51,31,.16) !important;
  border-left: 3px solid rgba(166,90,58,.58) !important;
  border-radius: .18rem !important;
  color: var(--rest-ink) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.65) !important;
  transform: none !important;
}

.s6-division-page--exterior-restoration .s6-faq-question:hover,
.s6-division-page--exterior-restoration .s6-faq-question:focus-visible,
.s6-division-page--exterior-restoration .s6-faq-question[aria-expanded="true"] {
  background: rgba(255,255,255,.96) !important;
  border-color: rgba(111,51,31,.24) !important;
  border-left-color: rgba(166,90,58,.92) !important;
  transform: none !important;
}

.s6-division-page--exterior-restoration .s6-faq-question em {
  width: 2rem !important;
  height: 2rem !important;
  flex: 0 0 2rem !important;
  display: inline-grid !important;
  place-items: center !important;
  border-radius: .12rem !important;
  background: rgba(255,255,255,.66) !important;
  border: 1px solid rgba(111,51,31,.18) !important;
  color: var(--rest-rust-dark) !important;
  box-shadow: none !important;
  transform: none !important;
}

.s6-division-page--exterior-restoration .s6-faq-question[aria-expanded="true"] em {
  background: rgba(166,90,58,.15) !important;
  border-color: rgba(166,90,58,.56) !important;
  color: var(--rest-rust-dark) !important;
  transform: rotate(45deg) !important;
}

.s6-division-page--exterior-restoration .s6-faq-answer {
  position: relative !important;
  margin: .45rem .25rem .25rem clamp(1.4rem, 3.2vw, 3rem) !important;
  padding: 1rem clamp(1rem, 2vw, 1.45rem) !important;
  background: rgba(232,210,196,.76) !important;
  border: 1px solid rgba(111,51,31,.12) !important;
  border-left: 3px solid rgba(166,90,58,.72) !important;
  border-radius: .12rem !important;
  color: var(--rest-muted) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.34) !important;
}

.s6-division-page--exterior-restoration .s6-faq-answer::before,
.s6-division-page--exterior-restoration .s6-faq-answer::after {
  content: none !important;
  display: none !important;
}

.s6-division-page--exterior-restoration .s6-division-cta--v32,
.s6-division-page--exterior-restoration > section:last-of-type,
.s6-division-page--exterior-restoration + .s6-footer,
body.s6-division-current--exterior-restoration footer {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

@media (max-width: 680px) {
  .s6-division-page--exterior-restoration .s6-section-label,
  .s6-division-page--exterior-restoration .s6-section-label span,
  .s6-division-page--exterior-restoration .s6-eyebrow,
  .s6-division-page--exterior-restoration .s6-division-hero .s6-section-label,
  .s6-division-page--exterior-restoration .s6-coatings-section-head .s6-section-label,
  .s6-division-page--exterior-restoration .s6-stone-catalogue-group__head .s6-section-label,
  .s6-division-page--exterior-restoration .s6-division-section-header .s6-section-label,
  .s6-division-page--exterior-restoration .s6-division-opening__copy .s6-section-label,
  .s6-division-page--exterior-restoration .s6-division-cta--v32 .s6-section-label {
    gap: 12px !important;
    font-size: 11px !important;
    letter-spacing: .18em !important;
  }

  .s6-division-page--exterior-restoration .s6-section-label::before,
  .s6-division-page--exterior-restoration .s6-eyebrow::before,
  .s6-division-page--exterior-restoration .s6-division-hero .s6-section-label::before,
  .s6-division-page--exterior-restoration .s6-coatings-section-head .s6-section-label::before,
  .s6-division-page--exterior-restoration .s6-stone-catalogue-group__head .s6-section-label::before,
  .s6-division-page--exterior-restoration .s6-division-section-header .s6-section-label::before,
  .s6-division-page--exterior-restoration .s6-division-opening__copy .s6-section-label::before,
  .s6-division-page--exterior-restoration .s6-division-cta--v32 .s6-section-label::before {
    width: 34px !important;
    flex-basis: 34px !important;
  }

  .s6-division-page--exterior-restoration .s6-division-projects,
  .s6-division-page--exterior-restoration .s6-division-faq,
  .s6-division-page--exterior-restoration .s6-division-opening {
    padding-left: .85rem !important;
    padding-right: .85rem !important;
  }
}

.s6-division-page--exterior-restoration #division-explainer,
.s6-division-page--exterior-restoration #division-explainer.s6-restoration-explainer-section,
.s6-division-page--exterior-restoration #division-explainer.s6-caulking-explainer-section {
  background:
    radial-gradient(circle at 12% 8%, rgba(166, 90, 58, .18), transparent 31rem),
    radial-gradient(circle at 88% 18%, rgba(194, 120, 79, .13), transparent 28rem),
    linear-gradient(180deg, #f3e2d8 0%, #dcc0ae 100%) !important;
  border-top: 1px solid rgba(111, 51, 31, .16) !important;
  border-bottom: 1px solid rgba(111, 51, 31, .16) !important;
  border-left: 0 !important;
  border-right: 0 !important;
  box-shadow: none !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-container {
  max-width: 1440px !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-division-explainer,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer,
.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer,
.s6-division-page--exterior-restoration #division-explainer .s6-division-explainer {
  background:
    linear-gradient(135deg, rgba(252, 244, 238, .96), rgba(232, 210, 196, .92)),
    repeating-linear-gradient(0deg, rgba(111, 51, 31, .045) 0 1px, transparent 1px 20px),
    repeating-linear-gradient(90deg, rgba(111, 51, 31, .035) 0 1px, transparent 1px 20px) !important;
  border: 1px solid rgba(111, 51, 31, .24) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.72), 0 1.35rem 3.2rem rgba(80,42,28,.13) !important;
  color: var(--rest-ink, #24140e) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer__copy,
.s6-division-page--exterior-restoration #division-explainer .s6-caulking-system-explainer__copy,
.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer__copy,
.s6-division-page--exterior-restoration #division-explainer .s6-division-explainer__copy {
  background:
    radial-gradient(circle at 8% 4%, rgba(255,255,255,.78), transparent 18rem),
    linear-gradient(180deg, rgba(252, 244, 238, .82), rgba(232, 210, 196, .88)) !important;
  border: 1px solid rgba(111, 51, 31, .20) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.70) !important;
  color: var(--rest-ink, #24140e) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-division-explainer__default,
.s6-division-page--exterior-restoration #division-explainer .s6-division-explainer__point-system {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-division-explainer__default > span,
.s6-division-page--exterior-restoration #division-explainer .s6-division-explainer__point-system > span,
.s6-division-page--exterior-restoration #division-explainer [data-s6-explainer-kicker] {
  color: var(--rest-rust-dark, #6f331f) !important;
  letter-spacing: .18em !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-division-explainer__default h3,
.s6-division-page--exterior-restoration #division-explainer .s6-division-explainer__point-system h3,
.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer h3 {
  color: var(--rest-ink, #24140e) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-division-explainer__default p,
.s6-division-page--exterior-restoration #division-explainer .s6-division-explainer__point-system p,
.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer p {
  color: var(--rest-muted, rgba(36,20,14,.68)) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer__overview-panel,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer__overview-panel,
.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer__detail-panel,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer__detail-panel {
  background:
    linear-gradient(180deg, rgba(252,244,238,.90), rgba(232,210,196,.82)) !important;
  border: 1px solid rgba(111,51,31,.22) !important;
  border-left: 3px solid rgba(166,90,58,.78) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.62) !important;
  color: var(--rest-ink, #24140e) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer__overview-panel h4,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer__overview-panel h4,
.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer__detail-panel h4,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer__detail-panel h4 {
  color: var(--rest-rust-dark, #6f331f) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer__overview-points,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer__overview-points,
.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer .s6-division-explainer__point-system ul,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer .s6-division-explainer__point-system ul {
  border-color: rgba(111,51,31,.20) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer__overview-points li,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer__overview-points li,
.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer .s6-division-explainer__point-system li,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer .s6-division-explainer__point-system li,
.s6-division-page--exterior-restoration #division-explainer .s6-division-explainer__point-system li {
  background:
    linear-gradient(180deg, rgba(255,255,255,.80), rgba(232,210,196,.86)) !important;
  border: 1px solid rgba(111,51,31,.22) !important;
  color: rgba(36,20,14,.72) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.72) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer__visual,
.s6-division-page--exterior-restoration #division-explainer .s6-caulking-system-explainer__visual,
.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer__visual,
.s6-division-page--exterior-restoration #division-explainer .s6-division-explainer__visual {
  border: 1px solid rgba(111,51,31,.30) !important;
  background-color: #24140e !important;
  box-shadow: 0 1.15rem 2.6rem rgba(80,42,28,.20) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-explainer-hotspot,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer__pills .s6-explainer-hotspot,
.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer__pills .s6-explainer-hotspot,
.s6-division-page--exterior-restoration #division-explainer .s6-division-explainer__hotspots .s6-explainer-hotspot {
  background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(232,210,196,.92)) !important;
  border: 1px solid rgba(111,51,31,.28) !important;
  border-bottom: 3px solid rgba(166,90,58,.82) !important;
  color: var(--rest-rust-dark, #6f331f) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.78), 0 .65rem 1.4rem rgba(80,42,28,.08) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-explainer-hotspot span {
  color: var(--rest-rust-dark, #6f331f) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-explainer-hotspot:hover,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-hotspot:focus-visible,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-hotspot.is-active,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-hotspot[aria-pressed="true"] {
  background: var(--rest-rust, #a65a3a) !important;
  border-color: var(--rest-rust-dark, #6f331f) !important;
  border-bottom-color: var(--rest-rust-dark, #6f331f) !important;
  color: #fff !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-explainer-hotspot:hover span,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-hotspot:focus-visible span,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-hotspot.is-active span,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-hotspot[aria-pressed="true"] span {
  color: #fff !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer__hint,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer__hint,
.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer__hint p,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer__hint p {
  color: var(--rest-rust-dark, #6f331f) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-coatings-system-explainer__hint p span,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer__hint p span {
  background: var(--rest-rust, #a65a3a) !important;
  color: var(--rest-rust, #a65a3a) !important;
}

/* Restore large related-project cards to locked image-overlay pattern. */
.s6-division-page--exterior-restoration .s6-division-projects .s6-division-project-feature-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr) !important;
  gap: clamp(1rem, 2vw, 1.5rem) !important;
}

.s6-division-page--exterior-restoration .s6-division-projects .s6-division-project-feature {
  position: relative !important;
  min-height: clamp(26rem, 42vw, 39rem) !important;
  border: 1px solid rgba(111,51,31,.18) !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  background: #2b1710 !important;
  box-shadow: 0 26px 72px rgba(80,42,28,.16) !important;
}

.s6-division-page--exterior-restoration .s6-division-projects .s6-division-project-feature a,
.s6-division-page--exterior-restoration .s6-division-projects .s6-division-project-feature__image {
  position: absolute !important;
  inset: 0 !important;
  min-height: 100% !important;
  width: 100% !important;
  display: block !important;
  background: transparent !important;
}

.s6-division-page--exterior-restoration .s6-division-projects .s6-division-project-feature__image::before {
  content: "" !important;
  position: absolute !important;
  inset: -8px !important;
  background-image: var(--s6-division-project-bg) !important;
  background-size: cover !important;
  background-position: center !important;
  transform: scale(1) !important;
  transition: transform .55s ease, filter .55s ease !important;
  filter: saturate(.82) contrast(1.04) !important;
}

.s6-division-page--exterior-restoration .s6-division-projects .s6-division-project-feature__image::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(90deg, rgba(43,23,16,.78) 0%, rgba(43,23,16,.44) 42%, rgba(43,23,16,.10) 100%),
    linear-gradient(180deg, rgba(43,23,16,.10) 0%, rgba(43,23,16,.78) 100%) !important;
  z-index: 2 !important;
}

.s6-division-page--exterior-restoration .s6-division-projects .s6-division-project-feature a:hover .s6-division-project-feature__image::before,
.s6-division-page--exterior-restoration .s6-division-projects .s6-division-project-feature a:focus-visible .s6-division-project-feature__image::before {
  transform: scale(1.04) !important;
  filter: saturate(.92) contrast(1.07) !important;
}

.s6-division-page--exterior-restoration .s6-division-projects .s6-division-project-feature__content {
  position: absolute !important;
  left: clamp(1.5rem, 3vw, 3rem) !important;
  right: clamp(1.5rem, 3vw, 3rem) !important;
  bottom: clamp(1.5rem, 3vw, 3rem) !important;
  z-index: 4 !important;
  max-width: 34rem !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  color: #fff !important;
  text-shadow: 0 1.25rem 3rem rgba(0,0,0,.38) !important;
}

.s6-division-page--exterior-restoration .s6-division-projects .s6-division-project-feature__content small {
  display: block !important;
  margin: 0 0 .65rem !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  color: #e2b08d !important;
  font-size: .68rem !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: .2em !important;
  text-transform: uppercase !important;
}

.s6-division-page--exterior-restoration .s6-division-projects .s6-division-project-feature__content h3 {
  color: #fff !important;
  font-size: clamp(2rem, 3.8vw, 4.4rem) !important;
  line-height: .9 !important;
  letter-spacing: -.06em !important;
  text-transform: uppercase !important;
}

.s6-division-page--exterior-restoration .s6-division-projects .s6-division-project-feature__content p {
  color: #f4d1bd !important;
  font-size: .68rem !important;
  font-weight: 900 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
}

@media (max-width: 860px) {
  .s6-division-page--exterior-restoration .s6-division-projects .s6-division-project-feature-grid {
    grid-template-columns: 1fr !important;
  }
}

.s6-division-page .s6-division-hero--v32 {
    color: #fff !important;
}

.s6-division-page .s6-division-hero__inner--v32 {
    display: grid !important;
    grid-template-columns: 1fr !important;
    align-items: center !important;
    width: min(1420px, 100%) !important;
}

.s6-division-page .s6-division-hero__copy {
    max-width: min(1120px, 100%) !important;
}

.s6-division-page .s6-division-hero__copy .s6-section-label,
.s6-division-page--caulking .s6-division-hero .s6-section-label,
.s6-division-page--architectural-coatings .s6-division-hero .s6-section-label,
.s6-division-page--exterior-restoration .s6-division-hero .s6-section-label {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
    margin: 0 0 clamp(1rem, 1.8vw, 1.35rem) !important;
    color: rgba(255,255,255,0.72) !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    letter-spacing: .30em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

.s6-division-page .s6-division-hero__copy .s6-section-label::before,
.s6-division-page--caulking .s6-division-hero .s6-section-label::before,
.s6-division-page--architectural-coatings .s6-division-hero .s6-section-label::before,
.s6-division-page--exterior-restoration .s6-division-hero .s6-section-label::before {
    content: "" !important;
    display: block !important;
    width: 56px !important;
    height: 2px !important;
    flex: 0 0 56px !important;
    background: var(--s6-green) !important;
    border: 0 !important;
}

.s6-division-page .s6-division-hero__copy h1,
.s6-division-page--stucco .s6-division-hero__copy h1,
.s6-division-page--stone-masonry .s6-division-hero__copy h1,
.s6-division-page--stone .s6-division-hero__copy h1,
.s6-division-page--caulking .s6-division-hero__copy h1,
.s6-division-page--landscaping .s6-division-hero__copy h1,
.s6-division-page--architectural-coatings .s6-division-hero__copy h1,
.s6-division-page--exterior-restoration .s6-division-hero__copy h1 {
    max-width: 13.75ch !important;
    font-size: clamp(3.8rem, 5.75vw, 6.85rem) !important;
    line-height: 0.91 !important;
    letter-spacing: -0.07em !important;
    margin: 0 0 clamp(1rem, 1.8vw, 1.45rem) !important;
    color: #fff !important;
}

.s6-division-page .s6-division-hero__copy h1 span,
.s6-division-page--stucco .s6-division-hero__copy h1 span,
.s6-division-page--stone-masonry .s6-division-hero__copy h1 span,
.s6-division-page--stone .s6-division-hero__copy h1 span,
.s6-division-page--caulking .s6-division-hero__copy h1 span,
.s6-division-page--landscaping .s6-division-hero__copy h1 span,
.s6-division-page--architectural-coatings .s6-division-hero__copy h1 span,
.s6-division-page--exterior-restoration .s6-division-hero__copy h1 span {
    display: block !important;
    margin-top: 0.1em !important;
    font-size: 0.74em !important;
    letter-spacing: -0.055em !important;
    line-height: 1 !important;
    color: rgba(255,255,255,0.86) !important;
}

.s6-division-page .s6-division-hero__copy > p:not(.s6-section-label) {
    max-width: 38rem !important;
    color: rgba(255,255,255,0.76) !important;
    font-size: clamp(1rem, 1.15vw, 1.14rem) !important;
    line-height: 1.6 !important;
}

.s6-division-page .s6-division-hero__actions {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    gap: clamp(1.6rem, 4vw, 4.5rem) !important;
    margin-top: clamp(1.45rem, 2.2vw, 2rem) !important;
}

.s6-division-page .s6-division-hero__button-group {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 0.85rem !important;
}

.s6-division-page .s6-division-hero__actions .s6-division-hero__panel.s6-division-hero__brand-panel {
    display: flex !important;
    position: static !important;
    flex: 0 1 min(27rem, 34vw) !important;
    width: min(27rem, 34vw) !important;
    min-width: min(18rem, 28vw) !important;
    min-height: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    overflow: visible !important;
    opacity: 0.26 !important;
    justify-content: flex-start !important;
    align-items: center !important;
    align-self: center !important;
    justify-self: start !important;
    margin-left: auto !important;
    transform: none !important;
    mix-blend-mode: screen !important;
    pointer-events: none !important;
}

.s6-division-page .s6-division-hero__actions .s6-division-hero__brand-logo {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
    object-position: left center !important;
    opacity: 0.74 !important;
    filter: drop-shadow(0 2rem 5rem rgba(0,0,0,0.55)) !important;
}

.s6-division-page .s6-division-hero__scroll-cue {
    display: inline-flex;
    align-items: center;
    gap: 0.85rem;
    margin-top: clamp(1.1rem, 1.8vw, 1.55rem);
    color: rgba(255,255,255,0.68);
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.2em;
    line-height: 1;
    text-decoration: none;
    text-transform: uppercase;
    transition: color 180ms ease;
}

.s6-division-page .s6-division-hero__scroll-cue i {
    position: relative;
    display: block;
    width: 1px;
    height: 2rem;
    background: rgba(255,255,255,0.55);
    animation: s6-division-scroll-cue 1.8s ease-in-out infinite;
}

.s6-division-page .s6-division-hero__scroll-cue i::after {
    content: "";
    position: absolute;
    right: -3px;
    bottom: 0;
    width: 7px;
    height: 7px;
    border-right: 1px solid rgba(255,255,255,0.75);
    border-bottom: 1px solid rgba(255,255,255,0.75);
    transform: rotate(45deg);
}

.s6-division-page .s6-division-hero__scroll-cue:hover,
.s6-division-page .s6-division-hero__scroll-cue:focus-visible {
    color: #fff;
}

.s6-division-page .s6-division-hero__scroll-cue:focus-visible {
    outline: 2px solid var(--s6-green);
    outline-offset: 6px;
}

@keyframes s6-division-scroll-cue {
    0%,
    100% {
        transform: translateY(-2px);
        opacity: 0.55;
    }
    50% {
        transform: translateY(4px);
        opacity: 1;
    }
}

@media (prefers-reduced-motion: reduce) {
    .s6-division-page .s6-division-hero__scroll-cue i {
        animation: none;
    }
}

@media (max-width: 1180px) {
    .s6-division-page .s6-division-hero__actions .s6-division-hero__panel.s6-division-hero__brand-panel {
        display: none !important;
    }
}

@media (max-width: 680px) {
    .s6-division-page .s6-division-hero__copy .s6-section-label,
    .s6-division-page--caulking .s6-division-hero .s6-section-label,
    .s6-division-page--architectural-coatings .s6-division-hero .s6-section-label,
    .s6-division-page--exterior-restoration .s6-division-hero .s6-section-label {
        gap: 12px !important;
        margin-bottom: 0.95rem !important;
        font-size: 11px !important;
        letter-spacing: .22em !important;
    }

    .s6-division-page .s6-division-hero__copy .s6-section-label::before,
    .s6-division-page--caulking .s6-division-hero .s6-section-label::before,
    .s6-division-page--architectural-coatings .s6-division-hero .s6-section-label::before,
    .s6-division-page--exterior-restoration .s6-division-hero .s6-section-label::before {
        width: 38px !important;
        flex-basis: 38px !important;
    }

    .s6-division-page .s6-division-hero__copy h1,
    .s6-division-page--stucco .s6-division-hero__copy h1,
    .s6-division-page--stone-masonry .s6-division-hero__copy h1,
    .s6-division-page--stone .s6-division-hero__copy h1,
    .s6-division-page--caulking .s6-division-hero__copy h1,
    .s6-division-page--landscaping .s6-division-hero__copy h1,
    .s6-division-page--architectural-coatings .s6-division-hero__copy h1,
    .s6-division-page--exterior-restoration .s6-division-hero__copy h1 {
        max-width: 11.75ch !important;
        font-size: clamp(3rem, 13vw, 4.65rem) !important;
        line-height: 0.94 !important;
    }

    .s6-division-page .s6-division-hero__copy h1 span,
    .s6-division-page--stucco .s6-division-hero__copy h1 span,
    .s6-division-page--stone-masonry .s6-division-hero__copy h1 span,
    .s6-division-page--stone .s6-division-hero__copy h1 span,
    .s6-division-page--caulking .s6-division-hero__copy h1 span,
    .s6-division-page--landscaping .s6-division-hero__copy h1 span,
    .s6-division-page--architectural-coatings .s6-division-hero__copy h1 span,
    .s6-division-page--exterior-restoration .s6-division-hero__copy h1 span {
        font-size: 0.78em !important;
    }

    .s6-division-page .s6-division-hero__actions {
        display: grid !important;
        align-items: stretch !important;
        gap: .75rem !important;
    }

    .s6-division-page .s6-division-hero__button-group {
        display: grid !important;
        gap: .75rem !important;
    }

    .s6-division-page .s6-division-hero__actions a {
        justify-content: center !important;
        width: 100% !important;
    }

    .s6-division-page .s6-division-hero__scroll-cue {
        margin-top: 1.25rem;
    }
}

.s6-stone-baseline-explainer{--s6-explainer-baseline:1;}

.s6-division-page--caulking { --s6-explainer-accent: #536f84; --s6-explainer-accent-rgb: 83,111,132; }
.s6-division-page--landscaping { --s6-explainer-accent: #61784b; --s6-explainer-accent-rgb: 97,120,75; }
.s6-division-page--architectural-coatings { --s6-explainer-accent: #6f5b8c; --s6-explainer-accent-rgb: 111,91,140; }
.s6-division-page--exterior-restoration { --s6-explainer-accent: #9b5b3f; --s6-explainer-accent-rgb: 155,91,63; }

.s6-stone-baseline-explainer.s6-division-explainer {
  display: grid !important;
  grid-template-columns: minmax(0, 1.18fr) minmax(320px, .82fr) !important;
  gap: clamp(18px, 2.4vw, 28px) !important;
  max-width: min(1500px, 100%) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding: clamp(18px, 2.2vw, 28px) !important;
  border: 1px solid rgba(31,39,32,.12) !important;
  background:
    linear-gradient(135deg, rgba(255,255,255,.64), rgba(255,255,255,.32)),
    rgba(244,241,234,.76) !important;
  box-shadow: 0 28px 70px rgba(24, 26, 22, .11) !important;
}

.s6-stone-baseline-explainer .s6-division-explainer__copy,
.s6-stone-baseline-explainer .s6-stone-system-explainer__visual-stack,
.s6-stone-baseline-explainer .s6-caulking-system-explainer__visual-stack,
.s6-stone-baseline-explainer .s6-landscape-system-explainer__visual-stack,
.s6-stone-baseline-explainer .s6-coatings-system-explainer__visual-stack,
.s6-stone-baseline-explainer .s6-restoration-system-explainer__visual-stack {
  min-height: clamp(540px, 58vh, 660px) !important;
}

.s6-stone-baseline-explainer .s6-division-explainer__copy {
  position: relative !important;
  min-width: 0 !important;
  padding: clamp(26px, 3vw, 46px) !important;
  background: rgba(255,255,255,.42) !important;
  border: 1px solid rgba(31,39,32,.12) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.48) !important;
  overflow: hidden !important;
}

.s6-stone-baseline-explainer .s6-division-explainer__default,
.s6-stone-baseline-explainer .s6-division-explainer__point-system {
  grid-template-rows: auto auto auto 1fr !important;
  align-content: start !important;
}

.s6-stone-baseline-explainer .s6-division-explainer__default > span,
.s6-stone-baseline-explainer .s6-division-explainer__point-system > span {
  color: var(--s6-explainer-accent, #8ec640) !important;
  font-size: .72rem !important;
  font-weight: 900 !important;
  letter-spacing: .18em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

.s6-stone-baseline-explainer .s6-division-explainer__default h3,
.s6-stone-baseline-explainer .s6-division-explainer__point-system h3 {
  max-width: none !important;
  width: 100% !important;
  margin: clamp(10px, 1.1vw, 16px) 0 clamp(14px, 1.5vw, 22px) !important;
  color: #1d231f !important;
  font-size: clamp(1.85rem, 3.2vw, 3.7rem) !important;
  line-height: .98 !important;
  letter-spacing: -.07em !important;
}

.s6-stone-baseline-explainer .s6-division-explainer__default p,
.s6-stone-baseline-explainer .s6-division-explainer__point-system p {
  max-width: 88ch !important;
  margin: 0 0 clamp(18px, 2.4vw, 34px) !important;
  color: rgba(29,35,31,.74) !important;
  font-size: clamp(.9rem, .92vw, 1rem) !important;
  line-height: 1.62 !important;
  letter-spacing: -.01em !important;
  white-space: normal !important;
}

.s6-stone-baseline-explainer .s6-coatings-system-explainer__overview-panel,
.s6-stone-baseline-explainer .s6-caulking-system-explainer__overview-panel,
.s6-stone-baseline-explainer .s6-landscape-system-explainer__overview-panel,
.s6-stone-baseline-explainer .s6-restoration-system-explainer__overview-panel,
.s6-stone-baseline-explainer .s6-stone-system-explainer__overview-panel {
  align-self: start !important;
  width: 100% !important;
  max-width: min(760px, 100%) !important;
  margin-top: clamp(10px, 1.6vw, 22px) !important;
  padding: clamp(16px, 1.5vw, 22px) !important;
  background: rgba(255,255,255,.36) !important;
  border: 1px solid rgba(31,39,32,.14) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.42) !important;
}

.s6-stone-baseline-explainer .s6-coatings-system-explainer__overview-panel h4,
.s6-stone-baseline-explainer .s6-caulking-system-explainer__overview-panel h4,
.s6-stone-baseline-explainer .s6-landscape-system-explainer__overview-panel h4,
.s6-stone-baseline-explainer .s6-restoration-system-explainer__overview-panel h4,
.s6-stone-baseline-explainer .s6-stone-system-explainer__overview-panel h4,
.s6-stone-baseline-explainer .s6-coatings-system-explainer__detail-panel h4,
.s6-stone-baseline-explainer .s6-caulking-system-explainer__detail-panel h4,
.s6-stone-baseline-explainer .s6-landscape-system-explainer__detail-panel h4,
.s6-stone-baseline-explainer .s6-restoration-system-explainer__detail-panel h4,
.s6-stone-baseline-explainer .s6-stone-system-explainer__detail-panel h4 {
  margin: 0 0 .75rem !important;
  padding-bottom: .62rem !important;
  border-bottom: 1px solid rgba(31,39,32,.14) !important;
  color: #1d231f !important;
  font-size: clamp(.66rem, .72vw, .8rem) !important;
  font-weight: 900 !important;
  letter-spacing: .105em !important;
  line-height: 1.12 !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  word-break: keep-all !important;
}

.s6-stone-baseline-explainer .s6-coatings-system-explainer__overview-points,
.s6-stone-baseline-explainer .s6-caulking-system-explainer__overview-points,
.s6-stone-baseline-explainer .s6-landscape-system-explainer__overview-points,
.s6-stone-baseline-explainer .s6-restoration-system-explainer__overview-points,
.s6-stone-baseline-explainer .s6-stone-system-explainer__overview-points {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: .5rem 1rem !important;
  max-width: 680px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  border: 0 !important;
}

.s6-stone-baseline-explainer .s6-coatings-system-explainer__detail-grid,
.s6-stone-baseline-explainer .s6-caulking-system-explainer__detail-grid,
.s6-stone-baseline-explainer .s6-landscape-system-explainer__detail-grid,
.s6-stone-baseline-explainer .s6-restoration-system-explainer__detail-grid,
.s6-stone-baseline-explainer .s6-stone-system-explainer__detail-grid {
  align-self: end !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(10px, 1.1vw, 14px) !important;
  margin-top: clamp(16px, 2vw, 24px) !important;
}

.s6-stone-baseline-explainer .s6-coatings-system-explainer__detail-panel,
.s6-stone-baseline-explainer .s6-caulking-system-explainer__detail-panel,
.s6-stone-baseline-explainer .s6-landscape-system-explainer__detail-panel,
.s6-stone-baseline-explainer .s6-restoration-system-explainer__detail-panel,
.s6-stone-baseline-explainer .s6-stone-system-explainer__detail-panel {
  padding: clamp(14px, 1.4vw, 18px) !important;
  background: rgba(255,255,255,.38) !important;
  border: 1px solid rgba(31,39,32,.14) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.42) !important;
}

.s6-stone-baseline-explainer .s6-coatings-system-explainer__overview-points li,
.s6-stone-baseline-explainer .s6-caulking-system-explainer__overview-points li,
.s6-stone-baseline-explainer .s6-landscape-system-explainer__overview-points li,
.s6-stone-baseline-explainer .s6-restoration-system-explainer__overview-points li,
.s6-stone-baseline-explainer .s6-stone-system-explainer__overview-points li,
.s6-stone-baseline-explainer .s6-coatings-system-explainer__detail-panel li,
.s6-stone-baseline-explainer .s6-caulking-system-explainer__detail-panel li,
.s6-stone-baseline-explainer .s6-landscape-system-explainer__detail-panel li,
.s6-stone-baseline-explainer .s6-restoration-system-explainer__detail-panel li,
.s6-stone-baseline-explainer .s6-stone-system-explainer__detail-panel li {
  position: relative !important;
  min-height: 0 !important;
  width: auto !important;
  height: auto !important;
  display: block !important;
  padding: 0 0 0 .85rem !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: rgba(29,35,31,.76) !important;
  font-size: clamp(.76rem, .78vw, .9rem) !important;
  font-weight: 760 !important;
  letter-spacing: -.01em !important;
  line-height: 1.3 !important;
  text-align: left !important;
  text-transform: none !important;
  white-space: normal !important;
  list-style: none !important;
}

.s6-stone-baseline-explainer .s6-coatings-system-explainer__overview-points li::before,
.s6-stone-baseline-explainer .s6-caulking-system-explainer__overview-points li::before,
.s6-stone-baseline-explainer .s6-landscape-system-explainer__overview-points li::before,
.s6-stone-baseline-explainer .s6-restoration-system-explainer__overview-points li::before,
.s6-stone-baseline-explainer .s6-stone-system-explainer__overview-points li::before,
.s6-stone-baseline-explainer .s6-coatings-system-explainer__detail-panel li::before,
.s6-stone-baseline-explainer .s6-caulking-system-explainer__detail-panel li::before,
.s6-stone-baseline-explainer .s6-landscape-system-explainer__detail-panel li::before,
.s6-stone-baseline-explainer .s6-restoration-system-explainer__detail-panel li::before,
.s6-stone-baseline-explainer .s6-stone-system-explainer__detail-panel li::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: .5em !important;
  width: .28rem !important;
  height: .28rem !important;
  background: var(--s6-explainer-accent, #8ec640) !important;
}

.s6-stone-baseline-explainer .s6-caulking-system-explainer__visual-stack,
.s6-stone-baseline-explainer .s6-landscape-system-explainer__visual-stack,
.s6-stone-baseline-explainer .s6-coatings-system-explainer__visual-stack,
.s6-stone-baseline-explainer .s6-restoration-system-explainer__visual-stack,
.s6-stone-baseline-explainer .s6-stone-system-explainer__visual-stack {
  display: grid !important;
  grid-template-rows: minmax(370px, 1fr) auto !important;
  gap: 8px !important;
  min-width: 0 !important;
}

.s6-stone-baseline-explainer .s6-division-explainer__visual {
  position: relative !important;
  min-height: 0 !important;
  height: auto !important;
  overflow: hidden !important;
  background: var(--s6-division-detail-bg) center/cover no-repeat !important;
  border: 1px solid rgba(31,39,32,.14) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.32) !important;
}

.s6-stone-baseline-explainer .s6-division-explainer__visual::before {
  content: "" !important;
  position: absolute !important;
  inset: clamp(14px, 1.4vw, 20px) !important;
  z-index: 3 !important;
  border: 1px solid rgba(255,255,255,.28) !important;
  pointer-events: none !important;
}

.s6-stone-baseline-explainer .s6-division-explainer__visual::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  display: block !important;
  height: auto !important;
  background:
    linear-gradient(180deg, rgba(4,5,4,.34), rgba(4,5,4,.48)),
    radial-gradient(circle at 50% 46%, rgba(var(--s6-explainer-accent-rgb, 142,198,64), .08), transparent 52%) !important;
  pointer-events: none !important;
}

.s6-stone-baseline-explainer [data-s6-explainer-cutout] {
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  z-index: 4 !important;
  width: min(62%, 420px) !important;
  max-height: 74% !important;
  object-fit: contain !important;
  transform: translate(-50%, -50%) scale(.96) !important;
  opacity: 0 !important;
  pointer-events: none !important;
  filter: drop-shadow(0 22px 32px rgba(0,0,0,.28)) !important;
  transition: opacity .22s ease, transform .22s ease !important;
}

.s6-stone-baseline-explainer [data-s6-explainer-cutout].is-visible {
  opacity: 1 !important;
  transform: translate(-50%, -50%) scale(1) !important;
}

.s6-stone-baseline-explainer.has-cutout [data-s6-explainer-cutout] {
  filter: drop-shadow(0 26px 36px rgba(0,0,0,.42)) !important;
}

.s6-stone-baseline-explainer .s6-division-explainer__hotspots {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(8px, .8vw, 12px) !important;
  margin: 0 !important;
}

.s6-stone-baseline-explainer .s6-division-explainer__hotspots .s6-explainer-hotspot {
  position: relative !important;
  width: 100% !important;
  min-height: 48px !important;
  padding: .82rem .75rem !important;
  border: 1px solid rgba(31,39,32,.16) !important;
  background: rgba(255,255,255,.54) !important;
  color: #1d231f !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.5) !important;
  font-size: .7rem !important;
  font-weight: 900 !important;
  letter-spacing: .11em !important;
  line-height: 1.1 !important;
  text-align: center !important;
  text-transform: uppercase !important;
}

.s6-stone-baseline-explainer .s6-division-explainer__hotspots .s6-explainer-hotspot:hover,
.s6-stone-baseline-explainer .s6-division-explainer__hotspots .s6-explainer-hotspot:focus-visible,
.s6-stone-baseline-explainer .s6-division-explainer__hotspots .s6-explainer-hotspot.is-active {
  transform: translateY(-2px) !important;
  border-color: rgba(var(--s6-explainer-accent-rgb, 142,198,64), .58) !important;
  background: rgba(var(--s6-explainer-accent-rgb, 142,198,64), .12) !important;
  box-shadow: 0 14px 28px rgba(24,26,22,.12), inset 0 1px 0 rgba(255,255,255,.62) !important;
}

.s6-stone-baseline-explainer .s6-coatings-system-explainer__hint,
.s6-stone-baseline-explainer .s6-caulking-system-explainer__hint,
.s6-stone-baseline-explainer .s6-landscape-system-explainer__hint,
.s6-stone-baseline-explainer .s6-restoration-system-explainer__hint,
.s6-stone-baseline-explainer .s6-stone-system-explainer__hint {
  margin-top: 0 !important;
  padding: 0 !important;
  color: rgba(31,37,32,.58) !important;
  font-size: .76rem !important;
  font-weight: 800 !important;
  letter-spacing: .14em !important;
  line-height: 1.15 !important;
  text-align: center !important;
  text-transform: uppercase !important;
}

.s6-stone-baseline-explainer .s6-coatings-system-explainer__hint p,
.s6-stone-baseline-explainer .s6-caulking-system-explainer__hint p,
.s6-stone-baseline-explainer .s6-landscape-system-explainer__hint p,
.s6-stone-baseline-explainer .s6-restoration-system-explainer__hint p,
.s6-stone-baseline-explainer .s6-stone-system-explainer__hint p {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: .45em !important;
  margin: 0 !important;
}

.s6-stone-baseline-explainer .s6-coatings-system-explainer__hint span,
.s6-stone-baseline-explainer .s6-caulking-system-explainer__hint span,
.s6-stone-baseline-explainer .s6-landscape-system-explainer__hint span,
.s6-stone-baseline-explainer .s6-restoration-system-explainer__hint span,
.s6-stone-baseline-explainer .s6-stone-system-explainer__hint span {
  display: inline-block !important;
  margin: 0 !important;
  color: var(--s6-explainer-accent, #8ec640) !important;
  line-height: 1 !important;
  transform: translateY(-1px) !important;
}

@media (max-width: 1180px) {
  .s6-stone-baseline-explainer.s6-division-explainer {
    grid-template-columns: 1fr !important;
  }
  .s6-stone-baseline-explainer .s6-caulking-system-explainer__visual-stack,
  .s6-stone-baseline-explainer .s6-landscape-system-explainer__visual-stack,
  .s6-stone-baseline-explainer .s6-coatings-system-explainer__visual-stack,
  .s6-stone-baseline-explainer .s6-restoration-system-explainer__visual-stack,
  .s6-stone-baseline-explainer .s6-stone-system-explainer__visual-stack {
    min-height: 460px !important;
    grid-template-rows: minmax(360px, 1fr) auto !important;
  }
}

@media (max-width: 760px) {
  .s6-stone-baseline-explainer.s6-division-explainer {
    padding: 18px !important;
  }
  .s6-stone-baseline-explainer .s6-division-explainer__copy {
    padding: 22px !important;
  }
  .s6-stone-baseline-explainer .s6-division-explainer__default h3,
  .s6-stone-baseline-explainer .s6-division-explainer__point-system h3 {
    font-size: clamp(1.85rem, 10vw, 3rem) !important;
  }
  .s6-stone-baseline-explainer .s6-division-explainer__hotspots,
  .s6-stone-baseline-explainer .s6-coatings-system-explainer__overview-points,
  .s6-stone-baseline-explainer .s6-caulking-system-explainer__overview-points,
  .s6-stone-baseline-explainer .s6-landscape-system-explainer__overview-points,
  .s6-stone-baseline-explainer .s6-restoration-system-explainer__overview-points,
  .s6-stone-baseline-explainer .s6-coatings-system-explainer__detail-grid,
  .s6-stone-baseline-explainer .s6-caulking-system-explainer__detail-grid,
  .s6-stone-baseline-explainer .s6-landscape-system-explainer__detail-grid,
  .s6-stone-baseline-explainer .s6-restoration-system-explainer__detail-grid {
    grid-template-columns: 1fr !important;
  }
  .s6-stone-baseline-explainer .s6-coatings-system-explainer__overview-panel h4,
  .s6-stone-baseline-explainer .s6-caulking-system-explainer__overview-panel h4,
  .s6-stone-baseline-explainer .s6-landscape-system-explainer__overview-panel h4,
  .s6-stone-baseline-explainer .s6-restoration-system-explainer__overview-panel h4,
  .s6-stone-baseline-explainer .s6-coatings-system-explainer__detail-panel h4,
  .s6-stone-baseline-explainer .s6-caulking-system-explainer__detail-panel h4,
  .s6-stone-baseline-explainer .s6-landscape-system-explainer__detail-panel h4,
  .s6-stone-baseline-explainer .s6-restoration-system-explainer__detail-panel h4 {
    white-space: normal !important;
  }
}

@media (max-width: 680px) {
  .s6-stone-baseline-explainer .s6-caulking-system-explainer__visual-stack,
  .s6-stone-baseline-explainer .s6-landscape-system-explainer__visual-stack,
  .s6-stone-baseline-explainer .s6-coatings-system-explainer__visual-stack,
  .s6-stone-baseline-explainer .s6-restoration-system-explainer__visual-stack,
  .s6-stone-baseline-explainer .s6-stone-system-explainer__visual-stack {
    grid-template-rows: minmax(300px, auto) auto !important;
  }
  .s6-stone-baseline-explainer [data-s6-explainer-cutout] {
    width: min(72%, 300px) !important;
    max-height: 68% !important;
  }
  .s6-stone-baseline-explainer .s6-coatings-system-explainer__hint,
  .s6-stone-baseline-explainer .s6-caulking-system-explainer__hint,
  .s6-stone-baseline-explainer .s6-landscape-system-explainer__hint,
  .s6-stone-baseline-explainer .s6-restoration-system-explainer__hint {
    font-size: .68rem !important;
    letter-spacing: .1em !important;
  }
}

.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer.s6-division-explainer {
  display: grid !important;
  grid-template-columns: minmax(0, 1.18fr) minmax(320px, .82fr) !important;
  gap: clamp(18px, 2.4vw, 28px) !important;
  max-width: min(1500px, 100%) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding: clamp(18px, 2.2vw, 28px) !important;
  background:
    linear-gradient(135deg, rgba(255,255,255,.64), rgba(255,255,255,.32)),
    rgba(244,241,234,.76) !important;
  border: 1px solid rgba(31,39,32,.12) !important;
  box-shadow: 0 28px 70px rgba(24,26,22,.11) !important;
  color: #1d231f !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-restoration-system-explainer__visual-stack {
  display: grid !important;
  grid-template-rows: minmax(370px, 1fr) auto !important;
  gap: 8px !important;
  min-height: clamp(540px, 58vh, 660px) !important;
  min-width: 0 !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-division-explainer__copy,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-restoration-system-explainer__copy {
  position: relative !important;
  min-width: 0 !important;
  min-height: clamp(540px, 58vh, 660px) !important;
  padding: clamp(26px, 3vw, 46px) !important;
  background: rgba(255,255,255,.42) !important;
  border: 1px solid rgba(31,39,32,.12) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.48) !important;
  color: #1d231f !important;
  overflow: hidden !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-division-explainer__default,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-division-explainer__point-system {
  display: grid !important;
  grid-template-rows: auto auto auto 1fr !important;
  align-content: start !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-division-explainer__default > span,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-division-explainer__point-system > span,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer [data-s6-explainer-kicker] {
  color: var(--s6-explainer-accent, #9b5b3f) !important;
  font-size: .72rem !important;
  font-weight: 900 !important;
  letter-spacing: .18em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-division-explainer__default h3,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-division-explainer__point-system h3 {
  max-width: none !important;
  width: 100% !important;
  margin: clamp(10px, 1.1vw, 16px) 0 clamp(14px, 1.5vw, 22px) !important;
  color: #1d231f !important;
  font-size: clamp(1.85rem, 3.2vw, 3.7rem) !important;
  line-height: .98 !important;
  letter-spacing: -.07em !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-division-explainer__default p,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-division-explainer__point-system p {
  max-width: 88ch !important;
  margin: 0 0 clamp(18px, 2.4vw, 34px) !important;
  color: rgba(29,35,31,.74) !important;
  font-size: clamp(.9rem, .92vw, 1rem) !important;
  line-height: 1.62 !important;
  letter-spacing: -.01em !important;
  white-space: normal !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-restoration-system-explainer__overview-panel,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-restoration-system-explainer__detail-panel {
  align-self: start !important;
  width: 100% !important;
  max-width: min(760px, 100%) !important;
  margin-top: clamp(10px, 1.6vw, 22px) !important;
  padding: clamp(16px, 1.5vw, 22px) !important;
  background: rgba(255,255,255,.36) !important;
  border: 1px solid rgba(31,39,32,.14) !important;
  border-left: 1px solid rgba(31,39,32,.14) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.42) !important;
  color: #1d231f !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-restoration-system-explainer__overview-panel h4,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-restoration-system-explainer__detail-panel h4 {
  margin: 0 0 .75rem !important;
  padding-bottom: .62rem !important;
  border-bottom: 1px solid rgba(31,39,32,.14) !important;
  color: #1d231f !important;
  font-size: clamp(.66rem, .72vw, .8rem) !important;
  font-weight: 900 !important;
  letter-spacing: .105em !important;
  line-height: 1.12 !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-restoration-system-explainer__overview-points,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-restoration-system-explainer__detail-panel ul,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-division-explainer__point-system ul {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: .5rem 1rem !important;
  max-width: 680px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  border: 0 !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-restoration-system-explainer__detail-grid {
  align-self: end !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(10px, 1.1vw, 14px) !important;
  margin-top: clamp(16px, 2vw, 24px) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-restoration-system-explainer__detail-panel ul {
  grid-template-columns: 1fr !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-restoration-system-explainer__overview-points li,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-restoration-system-explainer__detail-panel li,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-division-explainer__point-system li {
  position: relative !important;
  min-height: 0 !important;
  width: auto !important;
  height: auto !important;
  display: block !important;
  padding: 0 0 0 .85rem !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: rgba(29,35,31,.76) !important;
  font-size: clamp(.76rem, .78vw, .9rem) !important;
  font-weight: 760 !important;
  letter-spacing: -.01em !important;
  line-height: 1.3 !important;
  text-align: left !important;
  text-transform: none !important;
  white-space: normal !important;
  list-style: none !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-restoration-system-explainer__overview-points li::before,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-restoration-system-explainer__detail-panel li::before,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-division-explainer__point-system li::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: .5em !important;
  width: .28rem !important;
  height: .28rem !important;
  background: var(--s6-explainer-accent, #9b5b3f) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-division-explainer__visual {
  position: relative !important;
  min-height: 0 !important;
  height: auto !important;
  overflow: hidden !important;
  background: var(--s6-division-detail-bg) center/cover no-repeat !important;
  background-color: transparent !important;
  border: 1px solid rgba(31,39,32,.14) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.32) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-division-explainer__visual::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  display: block !important;
  background:
    linear-gradient(180deg, rgba(4,5,4,.34), rgba(4,5,4,.48)),
    radial-gradient(circle at 50% 46%, rgba(var(--s6-explainer-accent-rgb, 155,91,63), .08), transparent 52%) !important;
  pointer-events: none !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-division-explainer__hotspots {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(8px, .8vw, 12px) !important;
  margin: 0 !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-division-explainer__hotspots .s6-explainer-hotspot {
  position: relative !important;
  width: 100% !important;
  min-height: 48px !important;
  padding: .82rem .75rem !important;
  background: rgba(255,255,255,.54) !important;
  border: 1px solid rgba(31,39,32,.16) !important;
  border-bottom: 1px solid rgba(31,39,32,.16) !important;
  color: #1d231f !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.5) !important;
  font-size: .7rem !important;
  font-weight: 900 !important;
  letter-spacing: .11em !important;
  line-height: 1.1 !important;
  text-align: center !important;
  text-transform: uppercase !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-division-explainer__hotspots .s6-explainer-hotspot:hover,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-division-explainer__hotspots .s6-explainer-hotspot:focus-visible,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-division-explainer__hotspots .s6-explainer-hotspot.is-active {
  transform: translateY(-2px) !important;
  border-color: rgba(var(--s6-explainer-accent-rgb, 155,91,63), .58) !important;
  background: rgba(var(--s6-explainer-accent-rgb, 155,91,63), .12) !important;
  color: #1d231f !important;
  box-shadow: 0 14px 28px rgba(24,26,22,.12), inset 0 1px 0 rgba(255,255,255,.62) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-restoration-system-explainer__hint,
.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-restoration-system-explainer__hint p {
  margin-top: 0 !important;
  padding: 0 !important;
  color: rgba(31,37,32,.58) !important;
  background: transparent !important;
  font-size: .76rem !important;
  font-weight: 800 !important;
  letter-spacing: .14em !important;
  line-height: 1.15 !important;
  text-align: center !important;
  text-transform: uppercase !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-restoration-system-explainer__hint p span {
  background: transparent !important;
  color: var(--s6-explainer-accent, #9b5b3f) !important;
}

@media (max-width: 1180px) {
  .s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer.s6-division-explainer {
    grid-template-columns: 1fr !important;
  }
  .s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-restoration-system-explainer__visual-stack {
    min-height: 460px !important;
    grid-template-rows: minmax(360px, 1fr) auto !important;
  }
}

@media (max-width: 760px) {
  .s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer.s6-division-explainer {
    padding: 18px !important;
  }
  .s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-division-explainer__copy {
    padding: 22px !important;
  }
  .s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-division-explainer__hotspots,
  .s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-restoration-system-explainer__overview-points,
  .s6-division-page--exterior-restoration #division-explainer .s6-restoration-system-explainer.s6-stone-baseline-explainer .s6-restoration-system-explainer__detail-grid {
    grid-template-columns: 1fr !important;
  }
}

.s6-division-page--caulking .s6-stone-baseline-explainer,
.s6-division-page--landscaping .s6-stone-baseline-explainer,
.s6-division-page--architectural-coatings .s6-stone-baseline-explainer,
.s6-division-page--exterior-restoration .s6-stone-baseline-explainer {
  display: grid !important;
  grid-template-columns: minmax(0, 1.18fr) minmax(320px, .82fr) !important;
  gap: clamp(22px, 3.5vw, 44px) !important;
  align-items: stretch !important;
  max-width: min(1500px, 100%) !important;
  margin: clamp(24px, 4vw, 42px) auto 0 !important;
  padding: clamp(24px, 3.2vw, 38px) !important;
}

.s6-division-page--caulking .s6-stone-baseline-explainer > [class*="__copy"],
.s6-division-page--landscaping .s6-stone-baseline-explainer > [class*="__copy"],
.s6-division-page--architectural-coatings .s6-stone-baseline-explainer > [class*="__copy"],
.s6-division-page--exterior-restoration .s6-stone-baseline-explainer > [class*="__copy"],
.s6-division-page--caulking .s6-stone-baseline-explainer > [class*="__visual-stack"],
.s6-division-page--landscaping .s6-stone-baseline-explainer > [class*="__visual-stack"],
.s6-division-page--architectural-coatings .s6-stone-baseline-explainer > [class*="__visual-stack"],
.s6-division-page--exterior-restoration .s6-stone-baseline-explainer > [class*="__visual-stack"] {
  min-height: clamp(540px, 58vh, 660px) !important;
}

.s6-division-page--caulking .s6-stone-baseline-explainer > [class*="__visual-stack"],
.s6-division-page--landscaping .s6-stone-baseline-explainer > [class*="__visual-stack"],
.s6-division-page--architectural-coatings .s6-stone-baseline-explainer > [class*="__visual-stack"],
.s6-division-page--exterior-restoration .s6-stone-baseline-explainer > [class*="__visual-stack"] {
  display: grid !important;
  grid-template-rows: minmax(370px, 1fr) auto auto !important;
  gap: 8px !important;
}

.s6-division-page--caulking .s6-stone-baseline-explainer .s6-division-explainer__visual,
.s6-division-page--landscaping .s6-stone-baseline-explainer .s6-division-explainer__visual,
.s6-division-page--architectural-coatings .s6-stone-baseline-explainer .s6-division-explainer__visual,
.s6-division-page--exterior-restoration .s6-stone-baseline-explainer .s6-division-explainer__visual {
  min-height: 0 !important;
  height: 100% !important;
}

.s6-division-page--caulking .s6-stone-baseline-explainer .s6-division-explainer__copy,
.s6-division-page--landscaping .s6-stone-baseline-explainer .s6-division-explainer__copy,
.s6-division-page--architectural-coatings .s6-stone-baseline-explainer .s6-division-explainer__copy,
.s6-division-page--exterior-restoration .s6-stone-baseline-explainer .s6-division-explainer__copy {
  padding: clamp(14px, 2vw, 22px) clamp(8px, 1.2vw, 16px) !important;
  display: grid !important;
  align-items: stretch !important;
  position: relative !important;
  min-width: 0 !important;
}

.s6-division-page--caulking .s6-stone-baseline-explainer .s6-division-explainer__default,
.s6-division-page--caulking .s6-stone-baseline-explainer .s6-division-explainer__point-system,
.s6-division-page--landscaping .s6-stone-baseline-explainer .s6-division-explainer__default,
.s6-division-page--landscaping .s6-stone-baseline-explainer .s6-division-explainer__point-system,
.s6-division-page--architectural-coatings .s6-stone-baseline-explainer .s6-division-explainer__default,
.s6-division-page--architectural-coatings .s6-stone-baseline-explainer .s6-division-explainer__point-system,
.s6-division-page--exterior-restoration .s6-stone-baseline-explainer .s6-division-explainer__default,
.s6-division-page--exterior-restoration .s6-stone-baseline-explainer .s6-division-explainer__point-system {
  grid-area: 1 / 1 !important;
  min-height: 100% !important;
  display: grid !important;
  grid-template-rows: auto auto auto 1fr !important;
  align-content: start !important;
  gap: 14px !important;
}

.s6-division-page--caulking .s6-stone-baseline-explainer h3,
.s6-division-page--landscaping .s6-stone-baseline-explainer h3,
.s6-division-page--architectural-coatings .s6-stone-baseline-explainer h3,
.s6-division-page--exterior-restoration .s6-stone-baseline-explainer h3 {
  max-width: none !important;
  width: 100% !important;
  font-size: clamp(1.85rem, 3.2vw, 3.7rem) !important;
  line-height: .98 !important;
  letter-spacing: -.07em !important;
}

.s6-division-page--caulking .s6-stone-baseline-explainer p,
.s6-division-page--landscaping .s6-stone-baseline-explainer p,
.s6-division-page--architectural-coatings .s6-stone-baseline-explainer p,
.s6-division-page--exterior-restoration .s6-stone-baseline-explainer p {
  max-width: 88ch !important;
  font-size: clamp(.9rem, .92vw, 1rem) !important;
  line-height: 1.62 !important;
  white-space: normal !important;
}

.s6-division-page--caulking .s6-stone-baseline-explainer [class*="__overview-panel"],
.s6-division-page--landscaping .s6-stone-baseline-explainer [class*="__overview-panel"],
.s6-division-page--architectural-coatings .s6-stone-baseline-explainer [class*="__overview-panel"],
.s6-division-page--exterior-restoration .s6-stone-baseline-explainer [class*="__overview-panel"] {
  max-width: min(760px, 100%) !important;
  align-self: start !important;
  width: 100% !important;
  margin-top: clamp(10px, 1.6vw, 22px) !important;
  padding: clamp(16px, 1.5vw, 22px) !important;
  background: rgba(255,255,255,.36) !important;
  border: 1px solid rgba(31,39,32,.14) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.42) !important;
}

.s6-division-page--caulking .s6-stone-baseline-explainer [class*="__detail-grid"],
.s6-division-page--landscaping .s6-stone-baseline-explainer [class*="__detail-grid"],
.s6-division-page--architectural-coatings .s6-stone-baseline-explainer [class*="__detail-grid"],
.s6-division-page--exterior-restoration .s6-stone-baseline-explainer [class*="__detail-grid"] {
  align-self: end !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(10px, 1.1vw, 14px) !important;
  margin: clamp(16px, 2vw, 24px) 0 0 !important;
}

.s6-division-page--caulking .s6-stone-baseline-explainer [class*="__detail-panel"],
.s6-division-page--landscaping .s6-stone-baseline-explainer [class*="__detail-panel"],
.s6-division-page--architectural-coatings .s6-stone-baseline-explainer [class*="__detail-panel"],
.s6-division-page--exterior-restoration .s6-stone-baseline-explainer [class*="__detail-panel"] {
  min-width: 0 !important;
  padding: clamp(14px, 1.4vw, 18px) !important;
  background: rgba(255,255,255,.38) !important;
  border: 1px solid rgba(31,39,32,.14) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.42) !important;
}

.s6-division-page--caulking .s6-stone-baseline-explainer [class*="__overview-panel"] h4,
.s6-division-page--caulking .s6-stone-baseline-explainer [class*="__detail-panel"] h4,
.s6-division-page--landscaping .s6-stone-baseline-explainer [class*="__overview-panel"] h4,
.s6-division-page--landscaping .s6-stone-baseline-explainer [class*="__detail-panel"] h4,
.s6-division-page--architectural-coatings .s6-stone-baseline-explainer [class*="__overview-panel"] h4,
.s6-division-page--architectural-coatings .s6-stone-baseline-explainer [class*="__detail-panel"] h4,
.s6-division-page--exterior-restoration .s6-stone-baseline-explainer [class*="__overview-panel"] h4,
.s6-division-page--exterior-restoration .s6-stone-baseline-explainer [class*="__detail-panel"] h4 {
  margin: 0 0 .7rem !important;
  padding-bottom: .58rem !important;
  border-bottom: 1px solid rgba(31,39,32,.14) !important;
  font-size: clamp(.66rem, .72vw, .8rem) !important;
  font-weight: 900 !important;
  letter-spacing: .105em !important;
  line-height: 1.15 !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  word-break: keep-all !important;
}

.s6-division-page--caulking .s6-stone-baseline-explainer [class*="__overview-points"],
.s6-division-page--caulking .s6-stone-baseline-explainer [class*="__detail-panel"] ul,
.s6-division-page--caulking .s6-stone-baseline-explainer .s6-division-explainer__point-system ul,
.s6-division-page--landscaping .s6-stone-baseline-explainer [class*="__overview-points"],
.s6-division-page--landscaping .s6-stone-baseline-explainer [class*="__detail-panel"] ul,
.s6-division-page--landscaping .s6-stone-baseline-explainer .s6-division-explainer__point-system ul,
.s6-division-page--architectural-coatings .s6-stone-baseline-explainer [class*="__overview-points"],
.s6-division-page--architectural-coatings .s6-stone-baseline-explainer [class*="__detail-panel"] ul,
.s6-division-page--architectural-coatings .s6-stone-baseline-explainer .s6-division-explainer__point-system ul,
.s6-division-page--exterior-restoration .s6-stone-baseline-explainer [class*="__overview-points"],
.s6-division-page--exterior-restoration .s6-stone-baseline-explainer [class*="__detail-panel"] ul,
.s6-division-page--exterior-restoration .s6-stone-baseline-explainer .s6-division-explainer__point-system ul {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: .46rem !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  border: 0 !important;
}

.s6-division-page--caulking .s6-stone-baseline-explainer [class*="__overview-points"] li,
.s6-division-page--caulking .s6-stone-baseline-explainer [class*="__detail-panel"] li,
.s6-division-page--caulking .s6-stone-baseline-explainer .s6-division-explainer__point-system li,
.s6-division-page--landscaping .s6-stone-baseline-explainer [class*="__overview-points"] li,
.s6-division-page--landscaping .s6-stone-baseline-explainer [class*="__detail-panel"] li,
.s6-division-page--landscaping .s6-stone-baseline-explainer .s6-division-explainer__point-system li,
.s6-division-page--architectural-coatings .s6-stone-baseline-explainer [class*="__overview-points"] li,
.s6-division-page--architectural-coatings .s6-stone-baseline-explainer [class*="__detail-panel"] li,
.s6-division-page--architectural-coatings .s6-stone-baseline-explainer .s6-division-explainer__point-system li,
.s6-division-page--exterior-restoration .s6-stone-baseline-explainer [class*="__overview-points"] li,
.s6-division-page--exterior-restoration .s6-stone-baseline-explainer [class*="__detail-panel"] li,
.s6-division-page--exterior-restoration .s6-stone-baseline-explainer .s6-division-explainer__point-system li {
  position: relative !important;
  min-height: 0 !important;
  width: auto !important;
  height: auto !important;
  display: block !important;
  padding: 0 0 0 .82rem !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: rgba(29,35,31,.74) !important;
  font-size: clamp(.76rem, .78vw, .88rem) !important;
  font-weight: 750 !important;
  letter-spacing: -.01em !important;
  line-height: 1.32 !important;
  text-align: left !important;
  text-transform: none !important;
}

.s6-division-page--caulking .s6-stone-baseline-explainer [class*="__overview-points"] li::before,
.s6-division-page--caulking .s6-stone-baseline-explainer [class*="__detail-panel"] li::before,
.s6-division-page--landscaping .s6-stone-baseline-explainer [class*="__overview-points"] li::before,
.s6-division-page--landscaping .s6-stone-baseline-explainer [class*="__detail-panel"] li::before,
.s6-division-page--architectural-coatings .s6-stone-baseline-explainer [class*="__overview-points"] li::before,
.s6-division-page--architectural-coatings .s6-stone-baseline-explainer [class*="__detail-panel"] li::before,
.s6-division-page--exterior-restoration .s6-stone-baseline-explainer [class*="__overview-points"] li::before,
.s6-division-page--exterior-restoration .s6-stone-baseline-explainer [class*="__detail-panel"] li::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: .52em !important;
  width: .28rem !important;
  height: .28rem !important;
  background: var(--s6-division-accent, #8ec640) !important;
}

.s6-division-page--caulking .s6-stone-baseline-explainer [class*="__pills"],
.s6-division-page--landscaping .s6-stone-baseline-explainer [class*="__pills"],
.s6-division-page--architectural-coatings .s6-stone-baseline-explainer [class*="__pills"],
.s6-division-page--exterior-restoration .s6-stone-baseline-explainer [class*="__pills"] {
  position: relative !important;
  z-index: 3 !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  box-shadow: none !important;
  transform: none !important;
}

.s6-division-page--caulking .s6-stone-baseline-explainer [class*="__hint"],
.s6-division-page--landscaping .s6-stone-baseline-explainer [class*="__hint"],
.s6-division-page--architectural-coatings .s6-stone-baseline-explainer [class*="__hint"],
.s6-division-page--exterior-restoration .s6-stone-baseline-explainer [class*="__hint"] {
  margin-top: 0 !important;
  padding: 0 !important;
  text-align: center !important;
  line-height: 1.15 !important;
}

.s6-division-page--caulking .s6-stone-baseline-explainer [class*="__hint"] p,
.s6-division-page--landscaping .s6-stone-baseline-explainer [class*="__hint"] p,
.s6-division-page--architectural-coatings .s6-stone-baseline-explainer [class*="__hint"] p,
.s6-division-page--exterior-restoration .s6-stone-baseline-explainer [class*="__hint"] p {
  margin: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: .45em !important;
  font-size: .76rem !important;
  font-weight: 800 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
}

@media (max-width: 1180px) {
  .s6-division-page--caulking .s6-stone-baseline-explainer,
  .s6-division-page--landscaping .s6-stone-baseline-explainer,
  .s6-division-page--architectural-coatings .s6-stone-baseline-explainer,
  .s6-division-page--exterior-restoration .s6-stone-baseline-explainer {
    grid-template-columns: 1fr !important;
  }
  .s6-division-page--caulking .s6-stone-baseline-explainer > [class*="__visual-stack"],
  .s6-division-page--landscaping .s6-stone-baseline-explainer > [class*="__visual-stack"],
  .s6-division-page--architectural-coatings .s6-stone-baseline-explainer > [class*="__visual-stack"],
  .s6-division-page--exterior-restoration .s6-stone-baseline-explainer > [class*="__visual-stack"] {
    min-height: 460px !important;
  }
}

@media (max-width: 760px) {
  .s6-division-page--caulking .s6-stone-baseline-explainer [class*="__detail-grid"],
  .s6-division-page--caulking .s6-stone-baseline-explainer [class*="__pills"],
  .s6-division-page--landscaping .s6-stone-baseline-explainer [class*="__detail-grid"],
  .s6-division-page--landscaping .s6-stone-baseline-explainer [class*="__pills"],
  .s6-division-page--architectural-coatings .s6-stone-baseline-explainer [class*="__detail-grid"],
  .s6-division-page--architectural-coatings .s6-stone-baseline-explainer [class*="__pills"],
  .s6-division-page--exterior-restoration .s6-stone-baseline-explainer [class*="__detail-grid"],
  .s6-division-page--exterior-restoration .s6-stone-baseline-explainer [class*="__pills"] {
    grid-template-columns: 1fr !important;
  }
  .s6-division-page--caulking .s6-stone-baseline-explainer h3,
  .s6-division-page--landscaping .s6-stone-baseline-explainer h3,
  .s6-division-page--architectural-coatings .s6-stone-baseline-explainer h3,
  .s6-division-page--exterior-restoration .s6-stone-baseline-explainer h3 {
    font-size: clamp(1.85rem, 10vw, 3rem) !important;
  }
  .s6-division-page--caulking .s6-stone-baseline-explainer [class*="__overview-panel"] h4,
  .s6-division-page--caulking .s6-stone-baseline-explainer [class*="__detail-panel"] h4,
  .s6-division-page--landscaping .s6-stone-baseline-explainer [class*="__overview-panel"] h4,
  .s6-division-page--landscaping .s6-stone-baseline-explainer [class*="__detail-panel"] h4,
  .s6-division-page--architectural-coatings .s6-stone-baseline-explainer [class*="__overview-panel"] h4,
  .s6-division-page--architectural-coatings .s6-stone-baseline-explainer [class*="__detail-panel"] h4,
  .s6-division-page--exterior-restoration .s6-stone-baseline-explainer [class*="__overview-panel"] h4,
  .s6-division-page--exterior-restoration .s6-stone-baseline-explainer [class*="__detail-panel"] h4 {
    white-space: normal !important;
  }
}


.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer {
  --s6-explainer-accent: #6f5b8c;
  --s6-explainer-accent-rgb: 111,91,140;
  display: grid !important;
  grid-template-columns: minmax(0, 1.18fr) minmax(320px, .82fr) !important;
  gap: clamp(22px, 3.5vw, 44px) !important;
  align-items: stretch !important;
  max-width: min(1500px, 100%) !important;
  margin: clamp(24px, 4vw, 42px) auto 0 !important;
  padding: clamp(24px, 3.2vw, 38px) !important;
  border-radius: 0 !important;
  background: linear-gradient(135deg, rgba(255,255,255,.64), rgba(246,242,251,.84)) !important;
  border: 1px solid rgba(31,39,32,.14) !important;
  box-shadow: 0 1.15rem 2.6rem rgba(49,35,78,.12) !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer > .s6-coatings-system-explainer__visual-stack,
.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer > .s6-division-explainer__copy {
  min-height: clamp(540px, 58vh, 660px) !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer > .s6-coatings-system-explainer__visual-stack {
  display: grid !important;
  grid-template-rows: minmax(370px, 1fr) auto auto !important;
  gap: 8px !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer > .s6-division-explainer__copy {
  display: grid !important;
  align-content: center !important;
  padding: clamp(26px, 3vw, 42px) !important;
  background: rgba(255,255,255,.44) !important;
  border: 1px solid rgba(31,39,32,.14) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.52) !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-division-explainer__visual,
.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-coatings-system-explainer__visual {
  position: relative !important;
  min-height: 0 !important;
  height: 100% !important;
  overflow: hidden !important;
  border-radius: 0 !important;
  border: 1px solid rgba(31,39,32,.16) !important;
  background-color: #211b2e !important;
  background-image: var(--s6-division-detail-bg) !important;
  background-size: cover !important;
  background-position: center !important;
  box-shadow: 0 .95rem 2.2rem rgba(49,35,78,.14) !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-division-explainer__visual::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  border: 1px solid rgba(255,255,255,.24) !important;
  pointer-events: none !important;
  z-index: 2 !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-division-explainer__visual::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(180deg, rgba(21,16,31,.08), rgba(21,16,31,.34)) !important;
  pointer-events: none !important;
  z-index: 1 !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer [data-s6-explainer-cutout] {
  position: absolute !important;
  inset: auto 50% 0 auto !important;
  transform: translateX(50%) translateY(10px) !important;
  width: min(72%, 420px) !important;
  max-height: 86% !important;
  object-fit: contain !important;
  opacity: 0 !important;
  pointer-events: none !important;
  z-index: 3 !important;
  transition: opacity .28s ease, transform .28s ease !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer [data-s6-explainer-cutout].is-visible,
.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer.has-cutout [data-s6-explainer-cutout] {
  opacity: 1 !important;
  transform: translateX(50%) translateY(0) !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-division-explainer__default,
.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-division-explainer__point-system {
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: #1d1728 !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer [data-s6-explainer-kicker],
.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-division-explainer__default > span {
  display: inline-flex !important;
  margin: 0 0 1rem !important;
  color: var(--s6-explainer-accent) !important;
  font-size: .72rem !important;
  font-weight: 900 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer h3 {
  margin: 0 0 clamp(14px, 1.8vw, 22px) !important;
  color: #1d1728 !important;
  font-size: clamp(2.4rem, 4vw, 4.45rem) !important;
  font-weight: 900 !important;
  letter-spacing: -.065em !important;
  line-height: .92 !important;
  text-transform: none !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer p {
  max-width: 62ch !important;
  margin: 0 0 clamp(18px, 2vw, 26px) !important;
  color: rgba(29,23,40,.70) !important;
  font-size: clamp(.98rem, 1vw, 1.08rem) !important;
  font-weight: 600 !important;
  line-height: 1.72 !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-coatings-system-explainer__overview-panel,
.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-coatings-system-explainer__detail-panel {
  padding: clamp(14px, 1.4vw, 18px) !important;
  background: rgba(255,255,255,.38) !important;
  border: 1px solid rgba(31,39,32,.14) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.42) !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-coatings-system-explainer__detail-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: .72rem !important;
  margin-top: clamp(18px, 2vw, 28px) !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-coatings-system-explainer__overview-points,
.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-coatings-system-explainer__detail-panel ul {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: .46rem !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-coatings-system-explainer__overview-points li,
.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-coatings-system-explainer__detail-panel li {
  position: relative !important;
  display: block !important;
  min-height: 0 !important;
  padding: 0 0 0 .82rem !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: rgba(29,23,40,.74) !important;
  font-size: clamp(.76rem, .78vw, .88rem) !important;
  font-weight: 750 !important;
  line-height: 1.32 !important;
  text-align: left !important;
  text-transform: none !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-coatings-system-explainer__overview-points li::before,
.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-coatings-system-explainer__detail-panel li::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: .52em !important;
  width: .28rem !important;
  height: .28rem !important;
  background: var(--s6-explainer-accent) !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-coatings-system-explainer__overview-panel h4,
.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-coatings-system-explainer__detail-panel h4 {
  margin: 0 0 .7rem !important;
  padding-bottom: .58rem !important;
  border-bottom: 1px solid rgba(31,39,32,.14) !important;
  color: #1d1728 !important;
  font-size: clamp(.66rem, .72vw, .8rem) !important;
  font-weight: 900 !important;
  letter-spacing: .105em !important;
  line-height: 1.15 !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-coatings-system-explainer__pills {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  border: 0 !important;
  box-shadow: none !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-explainer-hotspot {
  min-height: 54px !important;
  padding: .7rem .55rem !important;
  border-radius: 0 !important;
  background: rgba(255,255,255,.62) !important;
  border: 1px solid rgba(31,39,32,.16) !important;
  border-bottom: 3px solid rgba(var(--s6-explainer-accent-rgb), .66) !important;
  color: #1d1728 !important;
  box-shadow: none !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-explainer-hotspot:hover,
.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-explainer-hotspot:focus-visible,
.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-explainer-hotspot.is-active {
  background: rgba(var(--s6-explainer-accent-rgb), .12) !important;
  border-color: rgba(var(--s6-explainer-accent-rgb), .58) !important;
  color: var(--s6-explainer-accent) !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-explainer-hotspot span {
  color: inherit !important;
  font-size: .7rem !important;
  font-weight: 900 !important;
  letter-spacing: .08em !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-coatings-system-explainer__hint,
.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-coatings-system-explainer__hint p {
  margin: 0 !important;
  padding: 0 !important;
  color: rgba(29,23,40,.62) !important;
  text-align: center !important;
  font-size: .76rem !important;
  font-weight: 800 !important;
  letter-spacing: .14em !important;
  line-height: 1.15 !important;
  text-transform: uppercase !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-coatings-system-explainer__hint p {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: .45em !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-coatings-system-explainer__hint span {
  color: var(--s6-explainer-accent) !important;
  background: transparent !important;
}

@media (max-width: 1180px) {
  .s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer {
    grid-template-columns: 1fr !important;
  }
  .s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer > .s6-coatings-system-explainer__visual-stack,
  .s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer > .s6-division-explainer__copy {
    min-height: 460px !important;
  }
}

@media (max-width: 760px) {
  .s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-coatings-system-explainer__detail-grid,
  .s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-coatings-system-explainer__pills {
    grid-template-columns: 1fr !important;
  }
  .s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer h3 {
    font-size: clamp(1.85rem, 10vw, 3rem) !important;
  }
  .s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-coatings-system-explainer__overview-panel h4,
  .s6-division-page--architectural-coatings #division-explainer .s6-coatings-system-explainer.s6-stone-baseline-explainer .s6-coatings-system-explainer__detail-panel h4 {
    white-space: normal !important;
  }
}


#division-explainer .s6-stone-system-explainer,
#division-explainer .s6-stone-baseline-explainer {
  display: grid !important;
  grid-template-columns: minmax(0, 1.18fr) minmax(320px, .82fr) !important;
  gap: clamp(26px, 4vw, 54px) !important;
  align-items: stretch !important;
  max-width: min(1500px, 100%) !important;
  margin: clamp(24px, 4vw, 42px) auto 0 !important;
  padding: clamp(22px, 3vw, 34px) !important;
  border: 1px solid rgba(33, 39, 34, .16) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.74), inset 0 -18px 36px rgba(46,42,34,.055) !important;
}

#division-explainer .s6-stone-system-explainer__copy,
#division-explainer .s6-stone-system-explainer__visual-stack,
#division-explainer .s6-stone-baseline-explainer > .s6-division-explainer__copy,
#division-explainer .s6-stone-baseline-explainer > [class*="__visual-stack"] {
  min-height: clamp(540px, 58vh, 660px) !important;
  height: auto !important;
  align-self: stretch !important;
}

#division-explainer .s6-stone-system-explainer__copy,
#division-explainer .s6-stone-baseline-explainer > .s6-division-explainer__copy {
  display: grid !important;
  position: relative !important;
  align-items: stretch !important;
  padding: clamp(14px, 2vw, 22px) clamp(8px, 1.2vw, 16px) !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

#division-explainer .s6-stone-system-explainer .s6-division-explainer__default,
#division-explainer .s6-stone-system-explainer .s6-division-explainer__point-system,
#division-explainer .s6-stone-baseline-explainer .s6-division-explainer__default,
#division-explainer .s6-stone-baseline-explainer .s6-division-explainer__point-system {
  grid-area: 1 / 1 !important;
  min-height: 100% !important;
  display: grid !important;
  grid-template-rows: auto auto auto 1fr !important;
  align-content: start !important;
  gap: 14px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  transform: none !important;
  transition: opacity .22s ease !important;
}

#division-explainer .s6-stone-system-explainer .s6-division-explainer__point-system,
#division-explainer .s6-stone-baseline-explainer .s6-division-explainer__point-system {
  opacity: 0 !important;
  pointer-events: none !important;
}

#division-explainer .s6-stone-system-explainer.is-hotspot-active .s6-division-explainer__default,
#division-explainer .s6-stone-baseline-explainer.is-hotspot-active .s6-division-explainer__default {
  opacity: 0 !important;
}

#division-explainer .s6-stone-system-explainer.is-hotspot-active .s6-division-explainer__point-system,
#division-explainer .s6-stone-system-explainer .s6-division-explainer__point-system.is-visible,
#division-explainer .s6-stone-baseline-explainer.is-hotspot-active .s6-division-explainer__point-system,
#division-explainer .s6-stone-baseline-explainer .s6-division-explainer__point-system.is-visible {
  opacity: 1 !important;
  pointer-events: auto !important;
}

#division-explainer .s6-stone-system-explainer .s6-division-explainer__default > span,
#division-explainer .s6-stone-system-explainer .s6-division-explainer__point-system > span,
#division-explainer .s6-stone-baseline-explainer .s6-division-explainer__default > span,
#division-explainer .s6-stone-baseline-explainer .s6-division-explainer__point-system > span,
#division-explainer .s6-stone-baseline-explainer [data-s6-explainer-kicker] {
  display: inline-flex !important;
  width: fit-content !important;
  margin: 0 !important;
  font-size: .72rem !important;
  font-weight: 800 !important;
  letter-spacing: .18em !important;
  line-height: 1.1 !important;
  text-transform: uppercase !important;
}

#division-explainer .s6-stone-system-explainer h3,
#division-explainer .s6-stone-baseline-explainer h3,
#division-explainer .s6-stone-system-explainer .s6-division-explainer__default h3,
#division-explainer .s6-stone-system-explainer .s6-division-explainer__point-system h3,
#division-explainer .s6-stone-baseline-explainer .s6-division-explainer__default h3,
#division-explainer .s6-stone-baseline-explainer .s6-division-explainer__point-system h3 {
  margin: 0 !important;
  max-width: none !important;
  width: 100% !important;
  font-size: clamp(1.85rem, 3.2vw, 3.7rem) !important;
  line-height: .98 !important;
  letter-spacing: -.07em !important;
  text-transform: uppercase !important;
}

#division-explainer .s6-stone-system-explainer p,
#division-explainer .s6-stone-baseline-explainer p,
#division-explainer .s6-stone-system-explainer .s6-division-explainer__default p,
#division-explainer .s6-stone-system-explainer .s6-division-explainer__point-system p,
#division-explainer .s6-stone-baseline-explainer .s6-division-explainer__default p,
#division-explainer .s6-stone-baseline-explainer .s6-division-explainer__point-system p {
  align-self: start !important;
  margin: 0 !important;
  max-width: 88ch !important;
  font-size: clamp(.9rem, .92vw, 1rem) !important;
  line-height: 1.62 !important;
  letter-spacing: 0 !important;
  white-space: normal !important;
}

#division-explainer .s6-stone-system-explainer .s6-division-explainer__default p,
#division-explainer .s6-stone-baseline-explainer .s6-division-explainer__default p {
  margin-bottom: clamp(18px, 2.4vw, 34px) !important;
}

#division-explainer .s6-stone-system-explainer__overview-panel,
#division-explainer .s6-stone-system-explainer__detail-panel,
#division-explainer .s6-stone-baseline-explainer [class*="__overview-panel"],
#division-explainer .s6-stone-baseline-explainer [class*="__detail-panel"] {
  width: 100% !important;
  padding: clamp(14px, 1.4vw, 18px) !important;
  background: rgba(255,255,255,.36) !important;
  border: 1px solid rgba(31,39,32,.14) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.42) !important;
  border-radius: 0 !important;
}

#division-explainer .s6-stone-system-explainer__overview-panel,
#division-explainer .s6-stone-baseline-explainer [class*="__overview-panel"] {
  align-self: start !important;
  max-width: min(760px, 100%) !important;
  margin-top: clamp(10px, 1.6vw, 22px) !important;
}

#division-explainer .s6-stone-system-explainer__detail-grid,
#division-explainer .s6-stone-baseline-explainer [class*="__detail-grid"] {
  align-self: end !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(10px, 1.1vw, 14px) !important;
  margin-top: clamp(16px, 2vw, 24px) !important;
}

#division-explainer .s6-stone-system-explainer__overview-panel h4,
#division-explainer .s6-stone-system-explainer__detail-panel h4,
#division-explainer .s6-stone-baseline-explainer [class*="__overview-panel"] h4,
#division-explainer .s6-stone-baseline-explainer [class*="__detail-panel"] h4 {
  margin: 0 0 .7rem !important;
  padding: 0 0 .58rem !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(31,39,32,.14) !important;
  background: transparent !important;
  font-size: clamp(.66rem, .72vw, .8rem) !important;
  font-weight: 900 !important;
  letter-spacing: .105em !important;
  line-height: 1.15 !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
}

#division-explainer .s6-stone-system-explainer__overview-points,
#division-explainer .s6-stone-system-explainer__detail-panel ul,
#division-explainer .s6-stone-baseline-explainer [class*="__overview-points"],
#division-explainer .s6-stone-baseline-explainer [class*="__detail-panel"] ul,
#division-explainer .s6-stone-baseline-explainer .s6-division-explainer__point-system ul {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: .46rem !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  border: 0 !important;
  background: transparent !important;
}

#division-explainer .s6-stone-system-explainer__overview-panel .s6-stone-system-explainer__overview-points,
#division-explainer .s6-stone-baseline-explainer [class*="__overview-panel"] [class*="__overview-points"] {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  max-width: 680px !important;
  gap: .5rem 1rem !important;
}

#division-explainer .s6-stone-system-explainer__overview-points li,
#division-explainer .s6-stone-system-explainer__detail-panel li,
#division-explainer .s6-stone-baseline-explainer [class*="__overview-points"] li,
#division-explainer .s6-stone-baseline-explainer [class*="__detail-panel"] li,
#division-explainer .s6-stone-baseline-explainer .s6-division-explainer__point-system li {
  position: relative !important;
  min-height: 0 !important;
  width: auto !important;
  height: auto !important;
  display: block !important;
  align-items: initial !important;
  justify-content: initial !important;
  padding: 0 0 0 .85rem !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: rgba(29,35,31,.76) !important;
  font-size: clamp(.76rem, .78vw, .9rem) !important;
  font-weight: 760 !important;
  letter-spacing: -.01em !important;
  line-height: 1.28 !important;
  text-align: left !important;
  text-transform: none !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}

#division-explainer .s6-stone-system-explainer__overview-points li::before,
#division-explainer .s6-stone-system-explainer__detail-panel li::before,
#division-explainer .s6-stone-baseline-explainer [class*="__overview-points"] li::before,
#division-explainer .s6-stone-baseline-explainer [class*="__detail-panel"] li::before,
#division-explainer .s6-stone-baseline-explainer .s6-division-explainer__point-system li::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: .48em !important;
  width: .28rem !important;
  height: .28rem !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: var(--s6-division-accent, #8ec640) !important;
  transform: none !important;
}

#division-explainer .s6-stone-system-explainer__visual-stack,
#division-explainer .s6-stone-baseline-explainer > [class*="__visual-stack"] {
  display: grid !important;
  grid-template-rows: 1fr auto auto !important;
  gap: clamp(12px, 1.4vw, 18px) !important;
  position: relative !important;
  align-self: stretch !important;
}

#division-explainer .s6-stone-system-explainer__visual,
#division-explainer .s6-stone-baseline-explainer .s6-division-explainer__visual,
#division-explainer .s6-stone-baseline-explainer [class*="__visual"] {
  min-height: 520px !important;
  height: 100% !important;
  position: relative !important;
  display: grid !important;
  align-content: end !important;
  padding: clamp(16px, 2vw, 24px) !important;
  border: 1px solid rgba(28,34,29,.26) !important;
  border-radius: 0 !important;
  overflow: visible !important;
  isolation: isolate !important;
  box-shadow: none !important;
}

#division-explainer .s6-stone-system-explainer__visual::before,
#division-explainer .s6-stone-baseline-explainer .s6-division-explainer__visual::before {
  content: "" !important;
  position: absolute !important;
  inset: 14px !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  background: transparent !important;
  pointer-events: none !important;
  z-index: 1 !important;
}

#division-explainer .s6-stone-system-explainer__visual::after,
#division-explainer .s6-stone-baseline-explainer .s6-division-explainer__visual::after {
  content: "" !important;
  position: absolute !important;
  inset: auto 9% 70px 9% !important;
  height: 48% !important;
  background: linear-gradient(180deg, transparent, rgba(0,0,0,.58)) !important;
  pointer-events: none !important;
  z-index: 1 !important;
}

#division-explainer .s6-stone-system-explainer__pills,
#division-explainer .s6-stone-baseline-explainer .s6-division-explainer__hotspots,
#division-explainer .s6-stone-baseline-explainer [class*="__pills"] {
  position: relative !important;
  z-index: 3 !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  border: 0 !important;
  box-shadow: none !important;
}

#division-explainer .s6-stone-system-explainer__pills .s6-explainer-hotspot,
#division-explainer .s6-stone-baseline-explainer .s6-explainer-hotspot {
  position: static !important;
  width: auto !important;
  height: auto !important;
  min-height: 44px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 0 !important;
  padding: 11px 10px !important;
  background: rgba(12,15,13,.72) !important;
  border: 1px solid rgba(255,255,255,.22) !important;
  color: #f6f4ef !important;
  box-shadow: none !important;
  transform: none !important;
}

#division-explainer .s6-stone-system-explainer__pills .s6-explainer-hotspot span,
#division-explainer .s6-stone-baseline-explainer .s6-explainer-hotspot span {
  position: static !important;
  width: auto !important;
  height: auto !important;
  display: block !important;
  background: none !important;
  border: 0 !important;
  color: inherit !important;
  font-size: .68rem !important;
  font-weight: 900 !important;
  letter-spacing: .08em !important;
  line-height: 1.1 !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

#division-explainer .s6-stone-system-explainer__pills .s6-explainer-hotspot:hover,
#division-explainer .s6-stone-system-explainer__pills .s6-explainer-hotspot:focus-visible,
#division-explainer .s6-stone-system-explainer__pills .s6-explainer-hotspot.is-active,
#division-explainer .s6-stone-baseline-explainer .s6-explainer-hotspot:hover,
#division-explainer .s6-stone-baseline-explainer .s6-explainer-hotspot:focus-visible,
#division-explainer .s6-stone-baseline-explainer .s6-explainer-hotspot.is-active {
  background: var(--s6-division-accent, #8ec640) !important;
  border-color: var(--s6-division-accent, #8ec640) !important;
  color: #111 !important;
}

#division-explainer .s6-stone-system-explainer__hint,
#division-explainer .s6-stone-baseline-explainer [class*="__hint"] {
  position: static !important;
  display: flex !important;
  justify-content: flex-end !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

#division-explainer .s6-stone-system-explainer__hint p,
#division-explainer .s6-stone-baseline-explainer [class*="__hint"] p {
  display: inline-flex !important;
  align-items: center !important;
  gap: .45rem !important;
  margin: 0 !important;
  padding: 0 !important;
  color: rgba(29,35,31,.58) !important;
  font-size: .72rem !important;
  font-weight: 800 !important;
  letter-spacing: .12em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  background: transparent !important;
  border: 0 !important;
}

@media (max-width: 1180px) {
  #division-explainer .s6-stone-system-explainer,
  #division-explainer .s6-stone-baseline-explainer {
    grid-template-columns: 1fr !important;
  }
  #division-explainer .s6-stone-system-explainer__visual-stack,
  #division-explainer .s6-stone-baseline-explainer > [class*="__visual-stack"] {
    min-height: 460px !important;
  }
}

@media (max-width: 760px) {
  #division-explainer .s6-stone-system-explainer,
  #division-explainer .s6-stone-baseline-explainer {
    padding: clamp(16px, 5vw, 22px) !important;
  }
  #division-explainer .s6-stone-system-explainer__copy,
  #division-explainer .s6-stone-system-explainer__visual-stack,
  #division-explainer .s6-stone-baseline-explainer > .s6-division-explainer__copy,
  #division-explainer .s6-stone-baseline-explainer > [class*="__visual-stack"] {
    min-height: auto !important;
  }
  #division-explainer .s6-stone-system-explainer__visual,
  #division-explainer .s6-stone-baseline-explainer .s6-division-explainer__visual,
  #division-explainer .s6-stone-baseline-explainer [class*="__visual"] {
    min-height: 360px !important;
  }
  #division-explainer .s6-stone-system-explainer h3,
  #division-explainer .s6-stone-baseline-explainer h3 {
    font-size: clamp(1.85rem, 10vw, 3rem) !important;
  }
  #division-explainer .s6-stone-system-explainer__detail-grid,
  #division-explainer .s6-stone-system-explainer__overview-panel .s6-stone-system-explainer__overview-points,
  #division-explainer .s6-stone-baseline-explainer [class*="__detail-grid"],
  #division-explainer .s6-stone-baseline-explainer [class*="__overview-panel"] [class*="__overview-points"],
  #division-explainer .s6-stone-baseline-explainer .s6-division-explainer__hotspots,
  #division-explainer .s6-stone-baseline-explainer [class*="__pills"] {
    grid-template-columns: 1fr !important;
  }
  #division-explainer .s6-stone-system-explainer__overview-panel h4,
  #division-explainer .s6-stone-system-explainer__detail-panel h4,
  #division-explainer .s6-stone-baseline-explainer [class*="__overview-panel"] h4,
  #division-explainer .s6-stone-baseline-explainer [class*="__detail-panel"] h4 {
    white-space: normal !important;
  }
}

#division-explainer .s6-stone-baseline-explainer:not(.s6-stone-system-explainer) {
  grid-template-columns: minmax(320px, .82fr) minmax(0, 1.18fr) !important;
  max-width: min(1500px, 100%) !important;
  gap: clamp(26px, 4vw, 54px) !important;
}

#division-explainer .s6-stone-baseline-explainer:not(.s6-stone-system-explainer) > [class*="__visual-stack"],
#division-explainer .s6-stone-baseline-explainer:not(.s6-stone-system-explainer) > .s6-division-explainer__copy {
  min-height: clamp(520px, 54vh, 620px) !important;
  max-height: none !important;
  overflow: visible !important;
}

#division-explainer .s6-stone-baseline-explainer:not(.s6-stone-system-explainer) .s6-division-explainer__visual,
#division-explainer .s6-stone-baseline-explainer:not(.s6-stone-system-explainer) [class*="__visual"] {
  min-height: 500px !important;
  height: 100% !important;
  max-height: none !important;
}

#division-explainer .s6-stone-baseline-explainer:not(.s6-stone-system-explainer) > .s6-division-explainer__copy {
  padding: clamp(14px, 2vw, 22px) clamp(8px, 1.2vw, 16px) !important;
}

#division-explainer .s6-stone-baseline-explainer:not(.s6-stone-system-explainer) .s6-division-explainer__default,
#division-explainer .s6-stone-baseline-explainer:not(.s6-stone-system-explainer) .s6-division-explainer__point-system {
  gap: 13px !important;
  min-height: auto !important;
  overflow: visible !important;
}

#division-explainer .s6-stone-baseline-explainer:not(.s6-stone-system-explainer) h3 {
  font-size: clamp(2.25rem, 4.35vw, 4.35rem) !important;
  line-height: .9 !important;
  margin: 0 !important;
}

#division-explainer .s6-stone-baseline-explainer:not(.s6-stone-system-explainer) p {
  max-width: 62ch !important;
  font-size: clamp(.94rem, .95vw, 1.04rem) !important;
  line-height: 1.54 !important;
}

#division-explainer .s6-stone-baseline-explainer:not(.s6-stone-system-explainer) [class*="__overview-panel"],
#division-explainer .s6-stone-baseline-explainer:not(.s6-stone-system-explainer) [class*="__detail-panel"] {
  padding: clamp(14px, 1.4vw, 18px) !important;
}

#division-explainer .s6-stone-baseline-explainer:not(.s6-stone-system-explainer) [class*="__detail-grid"] {
  gap: 10px !important;
}

/* Restore Caulking slate-blue identity that was accidentally inherited as green. */
.s6-division-page--caulking #division-explainer .s6-stone-baseline-explainer {
  --s6-division-accent: #4f6f83 !important;
  --s6-explainer-accent: #4f6f83 !important;
  --s6-explainer-accent-rgb: 79, 111, 131 !important;
}

.s6-division-page--caulking #division-explainer .s6-stone-baseline-explainer .s6-explainer-hotspot:hover,
.s6-division-page--caulking #division-explainer .s6-stone-baseline-explainer .s6-explainer-hotspot:focus-visible,
.s6-division-page--caulking #division-explainer .s6-stone-baseline-explainer .s6-explainer-hotspot.is-active {
  background: #4f6f83 !important;
  border-color: #4f6f83 !important;
  color: #f7fbfd !important;
}

.s6-division-page--caulking #division-explainer .s6-stone-baseline-explainer [class*="__overview-panel"],
.s6-division-page--caulking #division-explainer .s6-stone-baseline-explainer [class*="__detail-panel"] {
  border-top-color: rgba(79, 111, 131, .55) !important;
}

.s6-division-page--caulking #division-explainer .s6-stone-baseline-explainer [class*="__overview-points"] li::before,
.s6-division-page--caulking #division-explainer .s6-stone-baseline-explainer [class*="__detail-panel"] li::before,
.s6-division-page--caulking #division-explainer .s6-stone-baseline-explainer .s6-division-explainer__point-system li::before {
  background: #4f6f83 !important;
}

/* Restoration text clipping correction. */
.s6-division-page--exterior-restoration #division-explainer .s6-stone-baseline-explainer,
.s6-division-page--restoration #division-explainer .s6-stone-baseline-explainer,
.s6-division-page--restorations #division-explainer .s6-stone-baseline-explainer {
  padding-bottom: clamp(28px, 3.4vw, 44px) !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-stone-baseline-explainer > .s6-division-explainer__copy,
.s6-division-page--restoration #division-explainer .s6-stone-baseline-explainer > .s6-division-explainer__copy,
.s6-division-page--restorations #division-explainer .s6-stone-baseline-explainer > .s6-division-explainer__copy {
  min-height: clamp(560px, 58vh, 680px) !important;
  padding-bottom: clamp(26px, 3vw, 40px) !important;
  overflow: visible !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-stone-baseline-explainer .s6-division-explainer__default,
.s6-division-page--exterior-restoration #division-explainer .s6-stone-baseline-explainer .s6-division-explainer__point-system,
.s6-division-page--restoration #division-explainer .s6-stone-baseline-explainer .s6-division-explainer__default,
.s6-division-page--restoration #division-explainer .s6-stone-baseline-explainer .s6-division-explainer__point-system,
.s6-division-page--restorations #division-explainer .s6-stone-baseline-explainer .s6-division-explainer__default,
.s6-division-page--restorations #division-explainer .s6-stone-baseline-explainer .s6-division-explainer__point-system {
  padding-bottom: 10px !important;
  overflow: visible !important;
}

@media (max-width: 1180px) {
  #division-explainer .s6-stone-baseline-explainer:not(.s6-stone-system-explainer) {
    grid-template-columns: 1fr !important;
  }
  #division-explainer .s6-stone-baseline-explainer:not(.s6-stone-system-explainer) > [class*="__visual-stack"],
  #division-explainer .s6-stone-baseline-explainer:not(.s6-stone-system-explainer) > .s6-division-explainer__copy,
  .s6-division-page--exterior-restoration #division-explainer .s6-stone-baseline-explainer > .s6-division-explainer__copy,
  .s6-division-page--restoration #division-explainer .s6-stone-baseline-explainer > .s6-division-explainer__copy,
  .s6-division-page--restorations #division-explainer .s6-stone-baseline-explainer > .s6-division-explainer__copy {
    min-height: auto !important;
  }
}

@media (max-width: 760px) {
  #division-explainer .s6-stone-baseline-explainer:not(.s6-stone-system-explainer) .s6-division-explainer__visual,
  #division-explainer .s6-stone-baseline-explainer:not(.s6-stone-system-explainer) [class*="__visual"] {
    min-height: 360px !important;
  }
}


#division-explainer .s6-stone-system-explainer.s6-division-explainer,
#division-explainer .s6-stone-baseline-explainer.s6-division-explainer {
  display: grid !important;
  grid-template-columns: minmax(0, 1.18fr) minmax(320px, .82fr) !important;
  gap: clamp(26px, 4vw, 54px) !important;
  align-items: stretch !important;
  max-width: min(1500px, 100%) !important;
  width: 100% !important;
  margin: clamp(24px, 4vw, 42px) auto 0 !important;
  padding: clamp(22px, 3vw, 34px) !important;
  border-radius: 0 !important;
  border: 1px solid rgba(33, 39, 34, .16) !important;
  background: rgba(246, 244, 238, .76) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.74), inset 0 -18px 36px rgba(46,42,34,.055) !important;
  overflow: visible !important;
}

#division-explainer .s6-stone-system-explainer.s6-explainer-image-left,
#division-explainer .s6-stone-baseline-explainer.s6-explainer-image-left {
  grid-template-columns: minmax(320px, .82fr) minmax(0, 1.18fr) !important;
}

#division-explainer .s6-stone-system-explainer > .s6-stone-system-explainer__copy,
#division-explainer .s6-stone-system-explainer > .s6-division-explainer__copy {
  grid-column: 1 !important;
  grid-row: 1 !important;
}

#division-explainer .s6-stone-system-explainer > .s6-stone-system-explainer__visual-stack,
#division-explainer .s6-stone-system-explainer > [class*="__visual-stack"] {
  grid-column: 2 !important;
  grid-row: 1 !important;
}

#division-explainer .s6-stone-system-explainer.s6-explainer-image-left > .s6-stone-system-explainer__visual-stack,
#division-explainer .s6-stone-system-explainer.s6-explainer-image-left > [class*="__visual-stack"] {
  grid-column: 1 !important;
}

#division-explainer .s6-stone-system-explainer.s6-explainer-image-left > .s6-stone-system-explainer__copy,
#division-explainer .s6-stone-system-explainer.s6-explainer-image-left > .s6-division-explainer__copy {
  grid-column: 2 !important;
}

#division-explainer .s6-stone-system-explainer > .s6-stone-system-explainer__copy,
#division-explainer .s6-stone-system-explainer > .s6-division-explainer__copy,
#division-explainer .s6-stone-system-explainer > .s6-stone-system-explainer__visual-stack,
#division-explainer .s6-stone-system-explainer > [class*="__visual-stack"] {
  min-height: clamp(540px, 58vh, 660px) !important;
  height: auto !important;
  max-height: none !important;
  align-self: stretch !important;
  overflow: visible !important;
}

#division-explainer .s6-stone-system-explainer > .s6-stone-system-explainer__copy,
#division-explainer .s6-stone-system-explainer > .s6-division-explainer__copy {
  display: grid !important;
  position: relative !important;
  align-items: stretch !important;
  padding: clamp(14px, 2vw, 22px) clamp(8px, 1.2vw, 16px) !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

#division-explainer .s6-stone-system-explainer .s6-division-explainer__default,
#division-explainer .s6-stone-system-explainer .s6-division-explainer__point-system {
  grid-area: 1 / 1 !important;
  min-height: 100% !important;
  height: auto !important;
  display: grid !important;
  grid-template-rows: auto auto auto 1fr !important;
  align-content: start !important;
  gap: 14px !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  overflow: visible !important;
  transform: none !important;
}

#division-explainer .s6-stone-system-explainer .s6-division-explainer__point-system {
  opacity: 0 !important;
  pointer-events: none !important;
}

#division-explainer .s6-stone-system-explainer.is-hotspot-active .s6-division-explainer__default {
  opacity: 0 !important;
}

#division-explainer .s6-stone-system-explainer.is-hotspot-active .s6-division-explainer__point-system,
#division-explainer .s6-stone-system-explainer .s6-division-explainer__point-system.is-visible {
  opacity: 1 !important;
  pointer-events: auto !important;
}

#division-explainer .s6-stone-system-explainer .s6-division-explainer__default > span,
#division-explainer .s6-stone-system-explainer .s6-division-explainer__point-system > span,
#division-explainer .s6-stone-system-explainer [data-s6-explainer-kicker] {
  display: inline-flex !important;
  width: fit-content !important;
  margin: 0 !important;
  color: var(--s6-division-accent, #8ec640) !important;
  font-size: .72rem !important;
  font-weight: 800 !important;
  letter-spacing: .18em !important;
  line-height: 1.1 !important;
  text-transform: uppercase !important;
}

#division-explainer .s6-stone-system-explainer h3,
#division-explainer .s6-stone-system-explainer .s6-division-explainer__default h3,
#division-explainer .s6-stone-system-explainer .s6-division-explainer__point-system h3 {
  margin: 0 !important;
  max-width: none !important;
  width: 100% !important;
  color: #171a16 !important;
  font-size: clamp(1.85rem, 3.2vw, 3.7rem) !important;
  line-height: .98 !important;
  letter-spacing: -.07em !important;
  text-transform: uppercase !important;
}

#division-explainer .s6-stone-system-explainer p,
#division-explainer .s6-stone-system-explainer .s6-division-explainer__default p,
#division-explainer .s6-stone-system-explainer .s6-division-explainer__point-system p {
  align-self: start !important;
  margin: 0 !important;
  max-width: 88ch !important;
  color: rgba(29,35,31,.75) !important;
  font-size: clamp(.9rem, .92vw, 1rem) !important;
  line-height: 1.62 !important;
  letter-spacing: 0 !important;
  white-space: normal !important;
}

#division-explainer .s6-stone-system-explainer .s6-division-explainer__default p {
  margin-bottom: clamp(18px, 2.4vw, 34px) !important;
}

#division-explainer .s6-stone-system-explainer__overview-panel,
#division-explainer .s6-stone-system-explainer__detail-panel,
#division-explainer .s6-stone-system-explainer [class*="__overview-panel"],
#division-explainer .s6-stone-system-explainer [class*="__detail-panel"] {
  width: 100% !important;
  padding: clamp(14px, 1.4vw, 18px) !important;
  background: rgba(255,255,255,.36) !important;
  border: 1px solid rgba(31,39,32,.14) !important;
  border-top: 3px solid color-mix(in srgb, var(--s6-division-accent, #8ec640) 55%, transparent) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.42) !important;
  border-radius: 0 !important;
  margin: 0 !important;
  overflow: visible !important;
}

#division-explainer .s6-stone-system-explainer__overview-panel,
#division-explainer .s6-stone-system-explainer [class*="__overview-panel"] {
  align-self: start !important;
  max-width: min(760px, 100%) !important;
  margin-top: clamp(10px, 1.6vw, 22px) !important;
}

#division-explainer .s6-stone-system-explainer__detail-grid,
#division-explainer .s6-stone-system-explainer [class*="__detail-grid"] {
  align-self: end !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(10px, 1.1vw, 14px) !important;
  margin-top: clamp(16px, 2vw, 24px) !important;
}

#division-explainer .s6-stone-system-explainer__overview-panel h4,
#division-explainer .s6-stone-system-explainer__detail-panel h4,
#division-explainer .s6-stone-system-explainer [class*="__overview-panel"] h4,
#division-explainer .s6-stone-system-explainer [class*="__detail-panel"] h4 {
  margin: 0 0 .7rem !important;
  padding: 0 0 .58rem !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(31,39,32,.14) !important;
  background: transparent !important;
  color: #171a16 !important;
  font-size: clamp(.66rem, .72vw, .8rem) !important;
  font-weight: 900 !important;
  letter-spacing: .105em !important;
  line-height: 1.15 !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

#division-explainer .s6-stone-system-explainer__overview-points,
#division-explainer .s6-stone-system-explainer__detail-panel ul,
#division-explainer .s6-stone-system-explainer [class*="__overview-points"],
#division-explainer .s6-stone-system-explainer [class*="__detail-panel"] ul,
#division-explainer .s6-stone-system-explainer .s6-division-explainer__point-system ul {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: .46rem !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  border: 0 !important;
  background: transparent !important;
}

#division-explainer .s6-stone-system-explainer__overview-panel .s6-stone-system-explainer__overview-points,
#division-explainer .s6-stone-system-explainer [class*="__overview-panel"] [class*="__overview-points"] {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  max-width: 680px !important;
  gap: .5rem 1rem !important;
}

#division-explainer .s6-stone-system-explainer__overview-points li,
#division-explainer .s6-stone-system-explainer__detail-panel li,
#division-explainer .s6-stone-system-explainer [class*="__overview-points"] li,
#division-explainer .s6-stone-system-explainer [class*="__detail-panel"] li,
#division-explainer .s6-stone-system-explainer .s6-division-explainer__point-system li {
  position: relative !important;
  min-height: 0 !important;
  width: auto !important;
  height: auto !important;
  display: block !important;
  padding: 0 0 0 .85rem !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: rgba(29,35,31,.76) !important;
  font-size: clamp(.76rem, .78vw, .9rem) !important;
  font-weight: 760 !important;
  letter-spacing: -.01em !important;
  line-height: 1.28 !important;
  text-align: left !important;
  text-transform: none !important;
}

#division-explainer .s6-stone-system-explainer__overview-points li::before,
#division-explainer .s6-stone-system-explainer__detail-panel li::before,
#division-explainer .s6-stone-system-explainer [class*="__overview-points"] li::before,
#division-explainer .s6-stone-system-explainer [class*="__detail-panel"] li::before,
#division-explainer .s6-stone-system-explainer .s6-division-explainer__point-system li::before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  top: .58em !important;
  width: 5px !important;
  height: 5px !important;
  border-radius: 999px !important;
  background: var(--s6-division-accent, #8ec640) !important;
}

#division-explainer .s6-stone-system-explainer__visual-stack,
#division-explainer .s6-stone-system-explainer > [class*="__visual-stack"] {
  display: grid !important;
  grid-template-rows: minmax(0, 1fr) auto auto !important;
  gap: 14px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}

#division-explainer .s6-stone-system-explainer__visual,
#division-explainer .s6-stone-system-explainer .s6-division-explainer__visual,
#division-explainer .s6-stone-system-explainer [class*="__visual"] {
  min-height: 0 !important;
  height: 100% !important;
  width: 100% !important;
  border-radius: 0 !important;
  border: 1px solid rgba(21, 28, 21, .14) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.46) !important;
  background-image: linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.24)), var(--s6-division-detail-bg) !important;
  background-size: cover !important;
  background-position: center !important;
  overflow: hidden !important;
}

#division-explainer .s6-stone-system-explainer__visual::before,
#division-explainer .s6-stone-system-explainer__visual::after,
#division-explainer .s6-stone-system-explainer .s6-division-explainer__visual::before,
#division-explainer .s6-stone-system-explainer .s6-division-explainer__visual::after {
  pointer-events: none !important;
}

#division-explainer .s6-stone-system-explainer__pills,
#division-explainer .s6-stone-system-explainer .s6-division-explainer__hotspots,
#division-explainer .s6-stone-system-explainer [class*="__pills"] {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

#division-explainer .s6-stone-system-explainer__pills .s6-explainer-hotspot,
#division-explainer .s6-stone-system-explainer .s6-explainer-hotspot {
  min-height: 54px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: .72rem .55rem !important;
  border-radius: 0 !important;
  border: 1px solid rgba(31,39,32,.18) !important;
  border-bottom: 3px solid color-mix(in srgb, var(--s6-division-accent, #8ec640) 55%, transparent) !important;
  background: rgba(255,255,255,.46) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.44) !important;
  color: rgba(20,25,21,.74) !important;
  text-align: center !important;
  cursor: pointer !important;
}

#division-explainer .s6-stone-system-explainer__pills .s6-explainer-hotspot span,
#division-explainer .s6-stone-system-explainer .s6-explainer-hotspot span {
  display: block !important;
  font-size: .68rem !important;
  font-weight: 900 !important;
  letter-spacing: .1em !important;
  line-height: 1.18 !important;
  text-transform: uppercase !important;
}

#division-explainer .s6-stone-system-explainer__pills .s6-explainer-hotspot:hover,
#division-explainer .s6-stone-system-explainer__pills .s6-explainer-hotspot:focus-visible,
#division-explainer .s6-stone-system-explainer__pills .s6-explainer-hotspot.is-active,
#division-explainer .s6-stone-system-explainer .s6-explainer-hotspot:hover,
#division-explainer .s6-stone-system-explainer .s6-explainer-hotspot:focus-visible,
#division-explainer .s6-stone-system-explainer .s6-explainer-hotspot.is-active {
  background: var(--s6-division-accent, #8ec640) !important;
  border-color: var(--s6-division-accent, #8ec640) !important;
  color: #fff !important;
  transform: translateY(-1px) !important;
}

#division-explainer .s6-stone-system-explainer__hint,
#division-explainer .s6-stone-system-explainer [class*="__hint"] {
  position: static !important;
  display: flex !important;
  justify-content: flex-end !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

#division-explainer .s6-stone-system-explainer__hint p,
#division-explainer .s6-stone-system-explainer [class*="__hint"] p {
  display: inline-flex !important;
  align-items: center !important;
  gap: .45rem !important;
  margin: 0 !important;
  padding: 0 !important;
  color: rgba(29,35,31,.58) !important;
  font-size: .72rem !important;
  font-weight: 800 !important;
  letter-spacing: .12em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  background: transparent !important;
  border: 0 !important;
}

.s6-division-page--caulking #division-explainer .s6-stone-system-explainer {
  --s6-division-accent: #4f6f83 !important;
}

.s6-division-page--landscaping #division-explainer .s6-stone-system-explainer,
.s6-division-page--landscaping-excavating #division-explainer .s6-stone-system-explainer {
  --s6-division-accent: #4f7f46 !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-stone-system-explainer,
.s6-division-page--coatings #division-explainer .s6-stone-system-explainer {
  --s6-division-accent: #6f4f83 !important;
}

.s6-division-page--exterior-restoration #division-explainer .s6-stone-system-explainer,
.s6-division-page--restoration #division-explainer .s6-stone-system-explainer,
.s6-division-page--restorations #division-explainer .s6-stone-system-explainer {
  --s6-division-accent: #9a4f32 !important;
}

@media (max-width: 1180px) {
  #division-explainer .s6-stone-system-explainer.s6-division-explainer,
  #division-explainer .s6-stone-system-explainer.s6-explainer-image-left,
  #division-explainer .s6-stone-baseline-explainer.s6-division-explainer,
  #division-explainer .s6-stone-baseline-explainer.s6-explainer-image-left {
    grid-template-columns: 1fr !important;
  }

  #division-explainer .s6-stone-system-explainer > .s6-stone-system-explainer__copy,
  #division-explainer .s6-stone-system-explainer > .s6-division-explainer__copy,
  #division-explainer .s6-stone-system-explainer > .s6-stone-system-explainer__visual-stack,
  #division-explainer .s6-stone-system-explainer > [class*="__visual-stack"],
  #division-explainer .s6-stone-system-explainer.s6-explainer-image-left > .s6-stone-system-explainer__copy,
  #division-explainer .s6-stone-system-explainer.s6-explainer-image-left > .s6-division-explainer__copy,
  #division-explainer .s6-stone-system-explainer.s6-explainer-image-left > .s6-stone-system-explainer__visual-stack,
  #division-explainer .s6-stone-system-explainer.s6-explainer-image-left > [class*="__visual-stack"] {
    grid-column: 1 !important;
    grid-row: auto !important;
  }
}

@media (max-width: 760px) {
  #division-explainer .s6-stone-system-explainer.s6-division-explainer {
    padding: clamp(16px, 5vw, 22px) !important;
  }

  #division-explainer .s6-stone-system-explainer > .s6-stone-system-explainer__copy,
  #division-explainer .s6-stone-system-explainer > .s6-division-explainer__copy,
  #division-explainer .s6-stone-system-explainer > .s6-stone-system-explainer__visual-stack,
  #division-explainer .s6-stone-system-explainer > [class*="__visual-stack"] {
    min-height: auto !important;
  }

  #division-explainer .s6-stone-system-explainer__visual,
  #division-explainer .s6-stone-system-explainer .s6-division-explainer__visual,
  #division-explainer .s6-stone-system-explainer [class*="__visual"] {
    min-height: 360px !important;
  }

  #division-explainer .s6-stone-system-explainer h3 {
    font-size: clamp(1.85rem, 10vw, 3rem) !important;
  }

  #division-explainer .s6-stone-system-explainer__detail-grid,
  #division-explainer .s6-stone-system-explainer [class*="__detail-grid"],
  #division-explainer .s6-stone-system-explainer__overview-panel .s6-stone-system-explainer__overview-points,
  #division-explainer .s6-stone-system-explainer [class*="__overview-panel"] [class*="__overview-points"],
  #division-explainer .s6-stone-system-explainer__pills,
  #division-explainer .s6-stone-system-explainer .s6-division-explainer__hotspots,
  #division-explainer .s6-stone-system-explainer [class*="__pills"] {
    grid-template-columns: 1fr !important;
  }

  #division-explainer .s6-stone-system-explainer__overview-panel h4,
  #division-explainer .s6-stone-system-explainer__detail-panel h4,
  #division-explainer .s6-stone-system-explainer [class*="__overview-panel"] h4,
  #division-explainer .s6-stone-system-explainer [class*="__detail-panel"] h4 {
    white-space: normal !important;
  }
}


.s6-division-page--architectural-coatings #division-explainer { --s6-explainer-accent: #6b4fa3; --s6-explainer-accent-dark: #533a86; --s6-explainer-panel: #f4f1fa; --s6-explainer-panel-2: #ebe5f6; --s6-explainer-ink: #1d1728; --s6-explainer-muted: rgba(29,23,40,.70); }
.s6-division-page--exterior-restoration #division-explainer { --s6-explainer-accent: #9b4f32; --s6-explainer-accent-dark: #6f3524; --s6-explainer-panel: #f5f1e7; --s6-explainer-panel-2: #eadfce; --s6-explainer-ink: #211c17; --s6-explainer-muted: rgba(33,28,23,.72); }

.s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity.s6-stone-system-explainer,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity.s6-stone-system-explainer {
  display: grid !important;
  grid-template-columns: minmax(0, .92fr) minmax(360px, 1.08fr) !important;
  gap: clamp(26px, 4vw, 54px) !important;
  align-items: stretch !important;
  margin-top: clamp(24px, 4vw, 42px) !important;
  padding: clamp(22px, 3vw, 34px) !important;
  min-height: 0 !important;
  overflow: visible !important;
  background:
    linear-gradient(135deg, rgba(255,255,255,.64), color-mix(in srgb, var(--s6-explainer-panel-2) 68%, transparent)),
    repeating-linear-gradient(0deg, color-mix(in srgb, var(--s6-explainer-accent) 5%, transparent) 0 1px, transparent 1px 18px),
    repeating-linear-gradient(90deg, color-mix(in srgb, var(--s6-explainer-accent) 4%, transparent) 0 1px, transparent 1px 18px) !important;
  border: 1px solid color-mix(in srgb, var(--s6-explainer-accent-dark) 18%, transparent) !important;
  border-radius: 0 !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.74), inset 0 -18px 36px rgba(46,42,34,.055) !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity.s6-explainer-image-left,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity.s6-explainer-image-left {
  grid-template-columns: minmax(360px, 1.08fr) minmax(0, .92fr) !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__visual-stack,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__visual-stack {
  min-width: 0 !important;
  display: grid !important;
  grid-template-rows: 1fr auto auto !important;
  gap: 12px !important;
  min-height: 520px !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__visual,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__visual {
  min-height: 520px !important;
  height: auto !important;
  position: relative !important;
  display: grid !important;
  align-items: end !important;
  overflow: hidden !important;
  border: 1px solid color-mix(in srgb, var(--s6-explainer-accent-dark) 18%, transparent) !important;
  border-radius: 0 !important;
  background-image: linear-gradient(180deg, rgba(20,18,15,.10), rgba(20,18,15,.28)), var(--s6-division-detail-bg) !important;
  background-size: cover !important;
  background-position: center !important;
  background-color: var(--s6-explainer-ink) !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__copy,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__copy {
  min-height: 520px !important;
  padding: clamp(14px, 2vw, 22px) clamp(8px, 1.2vw, 16px) !important;
  display: grid !important;
  align-items: stretch !important;
  position: relative !important;
  overflow: visible !important;
  background: transparent !important;
  border: 0 !important;
  color: var(--s6-explainer-ink) !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity .s6-division-explainer__default,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity .s6-division-explainer__point-system,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity .s6-division-explainer__default,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity .s6-division-explainer__point-system {
  grid-area: 1 / 1 !important;
  position: static !important;
  inset: auto !important;
  min-height: 100% !important;
  display: grid !important;
  grid-template-rows: auto auto 1fr auto !important;
  align-content: stretch !important;
  gap: 14px !important;
  opacity: 1;
  transform: none !important;
  transition: opacity .22s ease !important;
}
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity .s6-division-explainer__point-system,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity .s6-division-explainer__point-system { opacity: 0; pointer-events: none; }
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity.is-hotspot-active .s6-division-explainer__default,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity.is-hotspot-active .s6-division-explainer__default { opacity: 0; }
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity.is-hotspot-active .s6-division-explainer__point-system,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity .s6-division-explainer__point-system.is-visible,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity.is-hotspot-active .s6-division-explainer__point-system,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity .s6-division-explainer__point-system.is-visible { opacity: 1; pointer-events: auto; }

.s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity .s6-division-explainer__default > span,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity .s6-division-explainer__point-system > span,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity .s6-division-explainer__default > span,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity .s6-division-explainer__point-system > span {
  display: inline-flex !important;
  width: fit-content !important;
  color: var(--s6-explainer-accent) !important;
  font-size: .72rem !important;
  font-weight: 800 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
}
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity h3,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity h3 {
  margin: 0 !important;
  color: var(--s6-explainer-ink) !important;
  font-size: clamp(1.45rem, 2.35vw, 2.45rem) !important;
  line-height: .98 !important;
  letter-spacing: -.055em !important;
  text-transform: uppercase !important;
  max-width: 12ch !important;
}
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity p,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity p {
  align-self: center !important;
  margin: 0 !important;
  color: var(--s6-explainer-muted) !important;
  font-size: .98rem !important;
  line-height: 1.75 !important;
  max-width: 58ch !important;
}

.s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__overview-points,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__detail-grid,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__overview-points,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__detail-grid,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity [data-s6-explainer-sections],
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity [data-s6-explainer-sections] {
  align-self: end !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__overview-points li,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__overview-points li {
  min-height: 58px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  padding: 10px 12px !important;
  background: rgba(255,255,255,.46) !important;
  border: 1px solid color-mix(in srgb, var(--s6-explainer-accent-dark) 14%, transparent) !important;
  color: var(--s6-explainer-muted) !important;
  font-size: .72rem !important;
  font-weight: 800 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
}
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__detail-panel,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity [data-s6-explainer-sections] > div,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__detail-panel,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity [data-s6-explainer-sections] > div {
  min-height: 120px !important;
  padding: 12px 12px 10px !important;
  display: grid !important;
  gap: 8px !important;
  align-content: start !important;
  background: rgba(255,255,255,.46) !important;
  border: 1px solid color-mix(in srgb, var(--s6-explainer-accent-dark) 14%, transparent) !important;
  border-left: 0 !important;
  color: var(--s6-explainer-muted) !important;
}
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity [data-s6-explainer-sections] h4,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity [data-s6-explainer-sections] h4 {
  margin: 0 !important;
  color: var(--s6-explainer-accent-dark) !important;
  font-size: .68rem !important;
  letter-spacing: .12em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity [data-s6-explainer-sections] ul,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity [data-s6-explainer-sections] ul { margin: 0 !important; padding: 0 !important; list-style: none !important; display: grid !important; gap: 6px !important; }
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity [data-s6-explainer-sections] li,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity [data-s6-explainer-sections] li { min-height: 0 !important; display: block !important; text-align: left !important; padding: 0 !important; border: 0 !important; background: transparent !important; color: var(--s6-explainer-muted) !important; font-size: .72rem !important; font-weight: 700 !important; letter-spacing: 0 !important; line-height: 1.35 !important; text-transform: none !important; }

.s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__pills,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__pills {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 0 !important;
}
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__pills .s6-explainer-hotspot,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__pills .s6-explainer-hotspot {
  position: static !important;
  transform: none !important;
  min-height: 54px !important;
  width: auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 10px 12px !important;
  border: 1px solid color-mix(in srgb, var(--s6-explainer-accent-dark) 18%, transparent) !important;
  border-radius: 0 !important;
  background: rgba(255,255,255,.58) !important;
  color: var(--s6-explainer-ink) !important;
  box-shadow: none !important;
  text-align: center !important;
}
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__pills .s6-explainer-hotspot:hover,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__pills .s6-explainer-hotspot:focus-visible,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__pills .s6-explainer-hotspot.is-active,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__pills .s6-explainer-hotspot:hover,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__pills .s6-explainer-hotspot:focus-visible,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__pills .s6-explainer-hotspot.is-active {
  background: var(--s6-explainer-accent) !important;
  color: #fff !important;
  outline: none !important;
}
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__hint,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__hint { min-height: 28px !important; color: var(--s6-explainer-muted) !important; }

@media (max-width: 980px) {
  .s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity.s6-stone-system-explainer,
  .s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity.s6-explainer-image-left,
  .s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity.s6-stone-system-explainer,
  .s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity.s6-explainer-image-left { grid-template-columns: 1fr !important; }
  .s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__visual-stack,
  .s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__visual,
  .s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__copy,
  .s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__visual-stack,
  .s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__visual,
  .s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__copy { min-height: 440px !important; }
}
@media (max-width: 720px) {
  .s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__overview-points,
  .s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity [data-s6-explainer-sections],
  .s6-division-page--architectural-coatings #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__pills,
  .s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__overview-points,
  .s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity [data-s6-explainer-sections],
  .s6-division-page--exterior-restoration #division-explainer .s6-explainer-final-parity .s6-stone-system-explainer__pills { grid-template-columns: 1fr !important; }
}

.s6-division-page--caulking { --s6-explainer-accent: #4f6f86; --s6-explainer-accent-rgb: 79,111,134; }
.s6-division-page--landscaping { --s6-explainer-accent: #6f8f45; --s6-explainer-accent-rgb: 111,143,69; }
.s6-division-page--architectural-coatings { --s6-explainer-accent: #7b5a88; --s6-explainer-accent-rgb: 123,90,136; }
.s6-division-page--exterior-restoration { --s6-explainer-accent: #9a593e; --s6-explainer-accent-rgb: 154,89,62; }

.s6-division-page--caulking #division-explainer,
.s6-division-page--landscaping #division-explainer,
.s6-division-page--architectural-coatings #division-explainer,
.s6-division-page--exterior-restoration #division-explainer {
  padding: clamp(86px, 9vw, 128px) 0 !important;
}

.s6-division-page--caulking #division-explainer .s6-container,
.s6-division-page--landscaping #division-explainer .s6-container,
.s6-division-page--architectural-coatings #division-explainer .s6-container,
.s6-division-page--exterior-restoration #division-explainer .s6-container {
  max-width: 1500px !important;
}

.s6-division-page--caulking #division-explainer .s6-stone-section-head,
.s6-division-page--landscaping #division-explainer .s6-stone-section-head,
.s6-division-page--architectural-coatings #division-explainer .s6-stone-section-head,
.s6-division-page--exterior-restoration #division-explainer .s6-stone-section-head {
  display: grid !important;
  grid-template-columns: minmax(0, .98fr) minmax(320px, .72fr) !important;
  gap: clamp(28px, 5vw, 76px) !important;
  align-items: end !important;
  margin: 0 0 clamp(34px, 4vw, 56px) !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.s6-division-page--caulking #division-explainer .s6-stone-section-head h2,
.s6-division-page--landscaping #division-explainer .s6-stone-section-head h2,
.s6-division-page--architectural-coatings #division-explainer .s6-stone-section-head h2,
.s6-division-page--exterior-restoration #division-explainer .s6-stone-section-head h2 {
  margin: 0 !important;
  max-width: 780px !important;
  font-size: clamp(2.4rem, 5vw, 5.4rem) !important;
  line-height: .92 !important;
  letter-spacing: -.075em !important;
}

.s6-division-page--caulking #division-explainer .s6-stone-section-head > p,
.s6-division-page--landscaping #division-explainer .s6-stone-section-head > p,
.s6-division-page--architectural-coatings #division-explainer .s6-stone-section-head > p,
.s6-division-page--exterior-restoration #division-explainer .s6-stone-section-head > p {
  margin: 0 !important;
  max-width: 520px !important;
  justify-self: end !important;
  color: rgba(29,35,31,.66) !important;
  font-size: clamp(.98rem, 1vw, 1.08rem) !important;
  line-height: 1.7 !important;
}

.s6-division-page--caulking #division-explainer .s6-explainer-stone-lock.s6-stone-system-explainer,
.s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock.s6-stone-system-explainer,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock.s6-stone-system-explainer,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock.s6-stone-system-explainer {
  display: grid !important;
  grid-template-columns: minmax(0, 1.18fr) minmax(320px, .82fr) !important;
  gap: clamp(22px, 3vw, 42px) !important;
  align-items: stretch !important;
  max-width: min(1500px, 100%) !important;
  margin: 0 auto !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.s6-division-page--caulking #division-explainer .s6-explainer-stone-lock.s6-explainer-image-left,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock.s6-explainer-image-left {
  grid-template-columns: minmax(320px, .82fr) minmax(0, 1.18fr) !important;
}

.s6-division-page--caulking #division-explainer .s6-explainer-stone-lock > .s6-stone-system-explainer__visual-stack,
.s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock > .s6-stone-system-explainer__visual-stack,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock > .s6-stone-system-explainer__visual-stack,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock > .s6-stone-system-explainer__visual-stack {
  order: 2 !important;
  display: grid !important;
  grid-template-rows: minmax(0, 1fr) auto auto !important;
  gap: clamp(12px, 1.4vw, 18px) !important;
  min-height: clamp(540px, 58vh, 660px) !important;
  height: auto !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.s6-division-page--caulking #division-explainer .s6-explainer-stone-lock.s6-explainer-image-left > .s6-stone-system-explainer__visual-stack,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock.s6-explainer-image-left > .s6-stone-system-explainer__visual-stack {
  order: 1 !important;
}

.s6-division-page--caulking #division-explainer .s6-explainer-stone-lock > .s6-stone-system-explainer__copy,
.s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock > .s6-stone-system-explainer__copy,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock > .s6-stone-system-explainer__copy,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock > .s6-stone-system-explainer__copy {
  order: 1 !important;
  position: relative !important;
  display: grid !important;
  min-height: clamp(540px, 58vh, 660px) !important;
  height: auto !important;
  padding: clamp(28px, 3.2vw, 46px) !important;
  background: rgba(255,255,255,.44) !important;
  border: 1px solid rgba(31,39,32,.13) !important;
  box-shadow: 0 24px 70px rgba(31,39,32,.09), inset 0 1px 0 rgba(255,255,255,.45) !important;
  overflow: visible !important;
}

.s6-division-page--caulking #division-explainer .s6-explainer-stone-lock.s6-explainer-image-left > .s6-stone-system-explainer__copy,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock.s6-explainer-image-left > .s6-stone-system-explainer__copy {
  order: 2 !important;
}

.s6-division-page--caulking #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__visual,
.s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__visual,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__visual,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__visual {
  position: relative !important;
  min-height: 0 !important;
  height: auto !important;
  width: 100% !important;
  overflow: hidden !important;
  background: linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.18)), var(--s6-division-detail-bg) center/cover no-repeat !important;
  border: 1px solid rgba(31,39,32,.14) !important;
  box-shadow: 0 24px 70px rgba(31,39,32,.11) !important;
}

.s6-division-page--caulking #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__pills,
.s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__pills,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__pills,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__pills {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.s6-division-page--caulking #division-explainer .s6-explainer-stone-lock .s6-explainer-hotspot,
.s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock .s6-explainer-hotspot,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock .s6-explainer-hotspot,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock .s6-explainer-hotspot {
  min-height: 56px !important;
  height: 56px !important;
  padding: 10px 8px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  background: rgba(255,255,255,.5) !important;
  border: 1px solid rgba(var(--s6-explainer-accent-rgb), .32) !important;
  color: rgba(29,35,31,.82) !important;
  box-shadow: none !important;
}

.s6-division-page--caulking #division-explainer .s6-explainer-stone-lock .s6-explainer-hotspot:hover,
.s6-division-page--caulking #division-explainer .s6-explainer-stone-lock .s6-explainer-hotspot:focus-visible,
.s6-division-page--caulking #division-explainer .s6-explainer-stone-lock .s6-explainer-hotspot.is-active,
.s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock .s6-explainer-hotspot:hover,
.s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock .s6-explainer-hotspot:focus-visible,
.s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock .s6-explainer-hotspot.is-active,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock .s6-explainer-hotspot:hover,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock .s6-explainer-hotspot:focus-visible,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock .s6-explainer-hotspot.is-active,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock .s6-explainer-hotspot:hover,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock .s6-explainer-hotspot:focus-visible,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock .s6-explainer-hotspot.is-active {
  background: var(--s6-explainer-accent) !important;
  border-color: var(--s6-explainer-accent) !important;
  color: #fff !important;
}

.s6-division-page--caulking #division-explainer .s6-explainer-stone-lock .s6-explainer-hotspot span,
.s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock .s6-explainer-hotspot span,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock .s6-explainer-hotspot span,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock .s6-explainer-hotspot span {
  font-size: .66rem !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  letter-spacing: .105em !important;
  text-transform: uppercase !important;
}

.s6-division-page--caulking #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__hint,
.s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__hint,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__hint,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__hint {
  min-height: 28px !important;
  margin: 0 !important;
  color: rgba(29,35,31,.58) !important;
}

.s6-division-page--caulking #division-explainer .s6-explainer-stone-lock .s6-division-explainer__default,
.s6-division-page--caulking #division-explainer .s6-explainer-stone-lock .s6-division-explainer__point-system,
.s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock .s6-division-explainer__default,
.s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock .s6-division-explainer__point-system,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock .s6-division-explainer__default,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock .s6-division-explainer__point-system,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock .s6-division-explainer__default,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock .s6-division-explainer__point-system {
  inset: clamp(28px, 3.2vw, 46px) !important;
  display: grid !important;
  grid-template-rows: auto auto auto 1fr !important;
  align-content: start !important;
  gap: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}

.s6-division-page--caulking #division-explainer .s6-explainer-stone-lock .s6-division-explainer__default > span,
.s6-division-page--caulking #division-explainer .s6-explainer-stone-lock .s6-division-explainer__point-system > span,
.s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock .s6-division-explainer__default > span,
.s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock .s6-division-explainer__point-system > span,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock .s6-division-explainer__default > span,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock .s6-division-explainer__point-system > span,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock .s6-division-explainer__default > span,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock .s6-division-explainer__point-system > span {
  margin: 0 0 14px !important;
  color: var(--s6-explainer-accent) !important;
  font-size: .7rem !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
}

.s6-division-page--caulking #division-explainer .s6-explainer-stone-lock h3,
.s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock h3,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock h3,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock h3 {
  max-width: none !important;
  width: 100% !important;
  margin: 0 0 18px !important;
  font-size: clamp(1.85rem, 3.2vw, 3.7rem) !important;
  line-height: .98 !important;
  letter-spacing: -.07em !important;
  color: #1d231f !important;
}

.s6-division-page--caulking #division-explainer .s6-explainer-stone-lock p,
.s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock p,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock p,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock p {
  max-width: 88ch !important;
  margin: 0 0 clamp(18px, 2.4vw, 34px) !important;
  color: rgba(29,35,31,.72) !important;
  font-size: clamp(.9rem, .92vw, 1rem) !important;
  line-height: 1.62 !important;
  white-space: normal !important;
}

.s6-division-page--caulking #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__overview-panel,
.s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__overview-panel,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__overview-panel,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__overview-panel {
  align-self: start !important;
  width: 100% !important;
  max-width: min(760px, 100%) !important;
  margin-top: clamp(10px, 1.6vw, 22px) !important;
  padding: clamp(16px, 1.5vw, 22px) !important;
  background: rgba(255,255,255,.36) !important;
  border: 1px solid rgba(31,39,32,.14) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.42) !important;
}

.s6-division-page--caulking #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-grid,
.s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-grid,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-grid,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-grid {
  align-self: end !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(10px, 1.1vw, 14px) !important;
  margin-top: clamp(16px, 2vw, 24px) !important;
  padding: 0 !important;
}

.s6-division-page--caulking #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel,
.s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel {
  min-height: 0 !important;
  padding: clamp(14px, 1.4vw, 18px) !important;
  background: rgba(255,255,255,.38) !important;
  border: 1px solid rgba(31,39,32,.14) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.42) !important;
}

.s6-division-page--caulking #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__overview-panel h4,
.s6-division-page--caulking #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel h4,
.s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__overview-panel h4,
.s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel h4,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__overview-panel h4,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel h4,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__overview-panel h4,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel h4 {
  margin: 0 0 .7rem !important;
  padding-bottom: .58rem !important;
  border-bottom: 1px solid rgba(31,39,32,.14) !important;
  color: #1d231f !important;
  font-size: clamp(.66rem, .72vw, .8rem) !important;
  font-weight: 900 !important;
  letter-spacing: .105em !important;
  line-height: 1.15 !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

.s6-division-page--caulking #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__overview-points,
.s6-division-page--caulking #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel ul,
.s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__overview-points,
.s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel ul,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__overview-points,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel ul,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__overview-points,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel ul {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: .46rem !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  border: 0 !important;
}

.s6-division-page--caulking #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__overview-points li,
.s6-division-page--caulking #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel li,
.s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__overview-points li,
.s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel li,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__overview-points li,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel li,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__overview-points li,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel li {
  position: relative !important;
  min-height: 0 !important;
  display: block !important;
  width: auto !important;
  height: auto !important;
  padding: 0 0 0 .82rem !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: rgba(29,35,31,.74) !important;
  font-size: clamp(.76rem, .78vw, .88rem) !important;
  font-weight: 750 !important;
  letter-spacing: -.01em !important;
  line-height: 1.32 !important;
  text-align: left !important;
  text-transform: none !important;
  white-space: normal !important;
}

.s6-division-page--caulking #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__overview-points li::before,
.s6-division-page--caulking #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel li::before,
.s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__overview-points li::before,
.s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel li::before,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__overview-points li::before,
.s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel li::before,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__overview-points li::before,
.s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel li::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: .52em !important;
  width: .28rem !important;
  height: .28rem !important;
  background: var(--s6-explainer-accent) !important;
}

@media (max-width: 1180px) {
  .s6-division-page--caulking #division-explainer .s6-explainer-stone-lock.s6-stone-system-explainer,
  .s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock.s6-stone-system-explainer,
  .s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock.s6-stone-system-explainer,
  .s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock.s6-stone-system-explainer,
  .s6-division-page--caulking #division-explainer .s6-explainer-stone-lock.s6-explainer-image-left,
  .s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock.s6-explainer-image-left {
    grid-template-columns: 1fr !important;
  }
  .s6-division-page--caulking #division-explainer .s6-explainer-stone-lock > .s6-stone-system-explainer__visual-stack,
  .s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock > .s6-stone-system-explainer__visual-stack,
  .s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock > .s6-stone-system-explainer__visual-stack,
  .s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock > .s6-stone-system-explainer__visual-stack {
    order: 1 !important;
    min-height: 460px !important;
  }
  .s6-division-page--caulking #division-explainer .s6-explainer-stone-lock > .s6-stone-system-explainer__copy,
  .s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock > .s6-stone-system-explainer__copy,
  .s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock > .s6-stone-system-explainer__copy,
  .s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock > .s6-stone-system-explainer__copy {
    order: 2 !important;
    min-height: auto !important;
  }
}

@media (max-width: 900px) {
  .s6-division-page--caulking #division-explainer .s6-stone-section-head,
  .s6-division-page--landscaping #division-explainer .s6-stone-section-head,
  .s6-division-page--architectural-coatings #division-explainer .s6-stone-section-head,
  .s6-division-page--exterior-restoration #division-explainer .s6-stone-section-head {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }
  .s6-division-page--caulking #division-explainer .s6-stone-section-head > p,
  .s6-division-page--landscaping #division-explainer .s6-stone-section-head > p,
  .s6-division-page--architectural-coatings #division-explainer .s6-stone-section-head > p,
  .s6-division-page--exterior-restoration #division-explainer .s6-stone-section-head > p {
    justify-self: start !important;
  }
}

@media (max-width: 760px) {
  .s6-division-page--caulking #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__pills,
  .s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__pills,
  .s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__pills,
  .s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__pills,
  .s6-division-page--caulking #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-grid,
  .s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-grid,
  .s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-grid,
  .s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-grid {
    grid-template-columns: 1fr !important;
  }
  .s6-division-page--caulking #division-explainer .s6-explainer-stone-lock h3,
  .s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock h3,
  .s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock h3,
  .s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock h3 {
    font-size: clamp(1.85rem, 10vw, 3rem) !important;
  }
  .s6-division-page--caulking #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__overview-panel h4,
  .s6-division-page--caulking #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel h4,
  .s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__overview-panel h4,
  .s6-division-page--landscaping #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel h4,
  .s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__overview-panel h4,
  .s6-division-page--architectural-coatings #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel h4,
  .s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__overview-panel h4,
  .s6-division-page--exterior-restoration #division-explainer .s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel h4 {
    white-space: normal !important;
  }
}


.s6-division-page--stucco {
  --s6-eyebrow-accent: #b9aa8f; /* Architectural Beige */
}

.s6-division-page--stone-masonry,
.s6-stone-trade-page {
  --s6-eyebrow-accent: var(--stone-gray-accent, #6f7476);
}

.s6-division-page--caulking,
.s6-caulking-trade-page {
  --s6-eyebrow-accent: var(--caulk-slate, #5f6f7b);
}

.s6-division-page--landscaping,
.s6-landscape-page {
  --s6-eyebrow-accent: var(--land-accent, #6f9f2f);
}

.s6-division-page--architectural-coatings {
  --s6-eyebrow-accent: var(--s6-coatings-purple, #6b4fa3);
}

.s6-division-page--exterior-restoration {
  --s6-eyebrow-accent: var(--s6-restoration-copper, #c2784f);
}

/* Shared non-hero eyebrow metrics: Stucco is the structural baseline. */
.s6-division-page section:not(.s6-division-hero) .s6-section-label,
.s6-division-page .s6-division-section-header .s6-section-label,
.s6-division-page .s6-division-opening__copy .s6-section-label,
.s6-division-page .s6-division-explainer__copy > .s6-section-label,
.s6-division-page .s6-stone-section-head .s6-section-label,
.s6-division-page .s6-caulking-section-head .s6-section-label,
.s6-division-page .s6-coatings-section-head .s6-section-label,
.s6-division-page .s6-stone-catalogue-group__head .s6-section-label,
.s6-division-page .s6-stone-catalogue-subgroup__head .s6-section-label,
.s6-division-page .s6-stone-catalogue-footer__copy .s6-section-label,
.s6-division-page .s6-division-cta--v32 .s6-section-label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 14px !important;
  margin: 0 0 clamp(0.85rem, 1.35vw, 1.15rem) !important;
  color: var(--s6-eyebrow-accent) !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: .22em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
}

.s6-division-page section:not(.s6-division-hero) .s6-section-label::before,
.s6-division-page .s6-division-section-header .s6-section-label::before,
.s6-division-page .s6-division-opening__copy .s6-section-label::before,
.s6-division-page .s6-division-explainer__copy > .s6-section-label::before,
.s6-division-page .s6-stone-section-head .s6-section-label::before,
.s6-division-page .s6-caulking-section-head .s6-section-label::before,
.s6-division-page .s6-coatings-section-head .s6-section-label::before,
.s6-division-page .s6-stone-catalogue-group__head .s6-section-label::before,
.s6-division-page .s6-stone-catalogue-subgroup__head .s6-section-label::before,
.s6-division-page .s6-stone-catalogue-footer__copy .s6-section-label::before,
.s6-division-page .s6-division-cta--v32 .s6-section-label::before {
  content: "" !important;
  display: block !important;
  width: 48px !important;
  height: 2px !important;
  flex: 0 0 48px !important;
  background: var(--s6-eyebrow-accent) !important;
}

/* Hero eyebrow keeps the already-approved hero layout, but follows division colour. */
.s6-division-page .s6-division-hero__copy .s6-section-label {
  color: var(--s6-eyebrow-accent) !important;
}

.s6-division-page .s6-division-hero__copy .s6-section-label::before {
  background: var(--s6-eyebrow-accent) !important;
}

/* Support older eyebrow patterns that use a child span as the rule. */
.s6-division-page .s6-eyebrow,
.s6-division-page .s6-hero-eyebrow,
.s6-division-page .s6-contact-eyebrow {
  color: var(--s6-eyebrow-accent) !important;
}

.s6-division-page .s6-eyebrow span,
.s6-division-page .s6-hero-eyebrow span,
.s6-division-page .s6-contact-eyebrow span,
.s6-division-page .s6-eyebrow::before,
.s6-division-page .s6-hero-eyebrow::before,
.s6-division-page .s6-contact-eyebrow::before {
  background: var(--s6-eyebrow-accent) !important;
}

@media (max-width: 680px) {
  .s6-division-page section:not(.s6-division-hero) .s6-section-label,
  .s6-division-page .s6-division-section-header .s6-section-label,
  .s6-division-page .s6-division-opening__copy .s6-section-label,
  .s6-division-page .s6-division-explainer__copy > .s6-section-label,
  .s6-division-page .s6-stone-section-head .s6-section-label,
  .s6-division-page .s6-caulking-section-head .s6-section-label,
  .s6-division-page .s6-coatings-section-head .s6-section-label,
  .s6-division-page .s6-stone-catalogue-group__head .s6-section-label,
  .s6-division-page .s6-stone-catalogue-subgroup__head .s6-section-label,
  .s6-division-page .s6-stone-catalogue-footer__copy .s6-section-label,
  .s6-division-page .s6-division-cta--v32 .s6-section-label {
    gap: 12px !important;
    font-size: 11px !important;
    letter-spacing: .18em !important;
  }

  .s6-division-page section:not(.s6-division-hero) .s6-section-label::before,
  .s6-division-page .s6-division-section-header .s6-section-label::before,
  .s6-division-page .s6-division-opening__copy .s6-section-label::before,
  .s6-division-page .s6-division-explainer__copy > .s6-section-label::before,
  .s6-division-page .s6-stone-section-head .s6-section-label::before,
  .s6-division-page .s6-caulking-section-head .s6-section-label::before,
  .s6-division-page .s6-coatings-section-head .s6-section-label::before,
  .s6-division-page .s6-stone-catalogue-group__head .s6-section-label::before,
  .s6-division-page .s6-stone-catalogue-subgroup__head .s6-section-label::before,
  .s6-division-page .s6-stone-catalogue-footer__copy .s6-section-label::before,
  .s6-division-page .s6-division-cta--v32 .s6-section-label::before {
    width: 34px !important;
    flex-basis: 34px !important;
  }
}


.s6-division-page--stone-masonry {
  --s6-explainer-accent: var(--stone-gray-accent, #6f7476);
  --s6-explainer-accent-rgb: 111,116,118;
}

.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock {
  display: grid !important;
  grid-template-columns: minmax(0, 1.18fr) minmax(320px, .82fr) !important;
  gap: clamp(22px, 3vw, 42px) !important;
  align-items: stretch !important;
  max-width: min(1500px, 100%) !important;
  margin: 0 auto !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock > .s6-stone-system-explainer__copy {
  order: 1 !important;
  position: relative !important;
  display: grid !important;
  min-height: clamp(540px, 58vh, 660px) !important;
  height: auto !important;
  padding: clamp(28px, 3.2vw, 46px) !important;
  background: rgba(255,255,255,.44) !important;
  border: 1px solid rgba(31,39,32,.13) !important;
  box-shadow: 0 24px 70px rgba(31,39,32,.09), inset 0 1px 0 rgba(255,255,255,.45) !important;
  overflow: visible !important;
}

.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock > .s6-stone-system-explainer__visual-stack {
  order: 2 !important;
  display: grid !important;
  grid-template-rows: minmax(0, 1fr) auto auto !important;
  gap: clamp(12px, 1.4vw, 18px) !important;
  min-height: clamp(540px, 58vh, 660px) !important;
  height: auto !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__visual {
  position: relative !important;
  min-height: 0 !important;
  height: auto !important;
  width: 100% !important;
  overflow: hidden !important;
  background: linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.18)), var(--s6-division-detail-bg) center/cover no-repeat !important;
  border: 1px solid rgba(31,39,32,.14) !important;
  box-shadow: 0 24px 70px rgba(31,39,32,.11) !important;
}

.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__visual::after {
  display: none !important;
}

.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__pills {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-explainer-hotspot {
  min-height: 56px !important;
  height: 56px !important;
  padding: 10px 8px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  background: rgba(255,255,255,.5) !important;
  border: 1px solid rgba(var(--s6-explainer-accent-rgb), .32) !important;
  color: rgba(29,35,31,.82) !important;
  box-shadow: none !important;
}

.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-explainer-hotspot:hover,
.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-explainer-hotspot:focus-visible,
.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-explainer-hotspot.is-active {
  background: var(--s6-explainer-accent) !important;
  border-color: var(--s6-explainer-accent) !important;
  color: #fff !important;
}

.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-explainer-hotspot span {
  font-size: .66rem !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  letter-spacing: .105em !important;
  text-transform: uppercase !important;
  white-space: normal !important;
}

.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__hint {
  min-height: 28px !important;
  margin: 0 !important;
  color: rgba(29,35,31,.58) !important;
}

.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-division-explainer__default,
.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-division-explainer__point-system {
  inset: clamp(28px, 3.2vw, 46px) !important;
  display: grid !important;
  grid-template-rows: auto auto auto 1fr !important;
  align-content: start !important;
  gap: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}

.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-division-explainer__default > span,
.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-division-explainer__point-system > span {
  margin: 0 0 14px !important;
  color: var(--s6-explainer-accent) !important;
  font-size: .7rem !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
}

.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock h3 {
  max-width: none !important;
  width: 100% !important;
  margin: 0 0 18px !important;
  font-size: clamp(1.85rem, 3.2vw, 3.7rem) !important;
  line-height: .98 !important;
  letter-spacing: -.07em !important;
  color: #1d231f !important;
}

.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock p {
  max-width: 88ch !important;
  margin: 0 0 clamp(18px, 2.4vw, 34px) !important;
  color: rgba(29,35,31,.72) !important;
  font-size: clamp(.9rem, .92vw, 1rem) !important;
  line-height: 1.62 !important;
  white-space: normal !important;
}

.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__overview-panel {
  align-self: start !important;
  width: 100% !important;
  max-width: min(760px, 100%) !important;
  margin-top: clamp(10px, 1.6vw, 22px) !important;
  padding: clamp(16px, 1.5vw, 22px) !important;
  background: rgba(255,255,255,.36) !important;
  border: 1px solid rgba(31,39,32,.14) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.42) !important;
}

.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__detail-grid {
  align-self: end !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: clamp(10px, 1.1vw, 14px) !important;
  margin-top: clamp(16px, 2vw, 24px) !important;
  padding: 0 !important;
}

.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel {
  min-height: 0 !important;
  padding: clamp(14px, 1.4vw, 18px) !important;
  background: rgba(255,255,255,.38) !important;
  border: 1px solid rgba(31,39,32,.14) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.42) !important;
}

.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__overview-panel h4,
.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel h4 {
  margin: 0 0 .7rem !important;
  padding-bottom: .58rem !important;
  border-bottom: 1px solid rgba(31,39,32,.14) !important;
  color: #1d231f !important;
  font-size: clamp(.66rem, .72vw, .8rem) !important;
  font-weight: 900 !important;
  letter-spacing: .105em !important;
  line-height: 1.15 !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__overview-points,
.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel ul {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: .46rem !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  border: 0 !important;
}

.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__overview-points li,
.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel li {
  position: relative !important;
  min-height: 0 !important;
  display: block !important;
  width: auto !important;
  height: auto !important;
  padding: 0 0 0 .82rem !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: rgba(29,35,31,.74) !important;
  font-size: clamp(.76rem, .78vw, .88rem) !important;
  font-weight: 750 !important;
  letter-spacing: -.01em !important;
  line-height: 1.32 !important;
  text-align: left !important;
  text-transform: none !important;
  white-space: normal !important;
}

.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__overview-points li::before,
.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel li::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: .52em !important;
  width: .28rem !important;
  height: .28rem !important;
  background: var(--s6-explainer-accent) !important;
  border-radius: 999px !important;
}

@media (max-width: 980px) {
  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock {
    grid-template-columns: 1fr !important;
  }
  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock > .s6-stone-system-explainer__visual-stack {
    order: -1 !important;
    min-height: 460px !important;
  }
  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock > .s6-stone-system-explainer__copy {
    min-height: auto !important;
  }
}

@media (max-width: 720px) {
  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__pills,
  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__detail-grid {
    grid-template-columns: 1fr !important;
  }
}

/* =========================================================
   Hero Settled-State Stability
   Keep division cards stable after the tear animation.
========================================================= */
.s6-hero.is-revealed:not(.is-tearing):not(.is-reversing):not(.is-reverse-resetting) .s6-division-grid {
  opacity: 1 !important;
  pointer-events: auto !important;
  transform: translate3d(0, 0, 0) !important;
  backface-visibility: hidden;
  will-change: auto;
}

.s6-hero.is-revealed:not(.is-tearing):not(.is-reversing):not(.is-reverse-resetting) .s6-division-card,
.s6-hero.is-revealed:not(.is-tearing):not(.is-reversing):not(.is-reverse-resetting) .s6-division-card__image,
.s6-hero.is-revealed:not(.is-tearing):not(.is-reversing):not(.is-reverse-resetting) .s6-division-card::before {
  animation: none !important;
  backface-visibility: hidden;
  will-change: auto;
}

.s6-hero.is-revealed:not(.is-tearing):not(.is-reversing):not(.is-reverse-resetting) .s6-division-card {
  transform: translate3d(0, 0, 0) rotate(0) scale(1) !important;
  border-radius: 24px !important;
}

.s6-hero.is-revealed:not(.is-tearing):not(.is-reversing):not(.is-reverse-resetting) .s6-division-card::before {
  opacity: 0 !important;
  transform: scale(1.08) !important;
}

.s6-hero.is-revealed:not(.is-tearing):not(.is-reversing):not(.is-reverse-resetting) .s6-division-card__image {
  opacity: 1 !important;
  transform: scale(1) !important;
}


/* =========================================================
   Hero Image Handoff
   The hero tear animation uses CSS background images as active animation
   frames. Image optimizers must not lazy-swap these elements during the
   tear-to-thumbnail handoff.
========================================================= */
.s6-hero-bg.skip-lazy,
.s6-division-card__image.skip-lazy {
  background-repeat: no-repeat;
}

.s6-hero.is-tearing .s6-division-card::before {
  z-index: 5 !important;
}

.s6-hero.is-tearing .s6-division-card__image {
  z-index: 1 !important;
  will-change: opacity, transform;
  backface-visibility: hidden;
}

.s6-hero.is-tearing .s6-division-card__shade,
.s6-hero.is-tearing .s6-division-card__hover {
  z-index: 2 !important;
}

.s6-hero.is-tearing .s6-division-card__content {
  z-index: 6 !important;
}


/* =========================================================
   Hero Thumbnail Underpaint
   Keep the image fade/tear animation intact, but paint the
   thumbnail underneath the hero-slice layer so the browser never exposes
   the dark card background during the crossfade.
========================================================= */
.s6-division-card {
  background-color: #111 !important;
  background-image: var(--s6-card-thumb) !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  transform: translateZ(0);
  isolation: isolate;
}

.s6-division-card__image {
  background-image: var(--s6-card-thumb) !important;
  background-color: transparent !important;
  backface-visibility: hidden;
  transform: translateZ(0) scale(1.08);
}

.s6-hero.is-tearing .s6-division-card__image {
  z-index: 1 !important;
  will-change: opacity, transform;
}

.s6-hero.is-tearing .s6-division-card::before {
  z-index: 5 !important;
}

.s6-hero.is-revealed:not(.is-tearing):not(.is-reversing):not(.is-reverse-resetting) .s6-division-card__image {
  opacity: 1 !important;
  transform: translateZ(0) scale(1) !important;
}

.s6-hero:not(.s6-division-images-ready) .s6-division-card__image,
.s6-hero:not(.s6-division-images-ready) .s6-division-card {
  background-color: #111 !important;
}


/* =========================================================
   Division Card Label Position
   The label stays inside the card content layer so it follows the
   post-reveal fade and cannot repaint over the hero tear.
========================================================= */
.s6-division-card .s6-division-card__content > .s6-division-card__label {
   position: absolute !important;
   top: 1.35rem !important;
   right: 1.35rem !important;
   left: auto !important;
   bottom: auto !important;
   z-index: 4 !important;
   display: inline-flex !important;
   align-items: center !important;
   justify-content: flex-end !important;
   gap: 12px !important;
   width: auto !important;
   max-width: calc(100% - 2.7rem) !important;
   margin: 0 !important;
   padding: 0 !important;
   transform: none !important;
   font-size: 10px !important;
   line-height: 1 !important;
   font-weight: 900 !important;
   letter-spacing: .28em !important;
   text-transform: uppercase !important;
   white-space: nowrap !important;
   color: #8ec43f !important;
   -webkit-text-fill-color: #8ec43f !important;
   pointer-events: none !important;
}

.s6-division-card .s6-division-card__content > .s6-division-card__label::before {
   content: "" !important;
   display: block !important;
   width: 42px !important;
   height: 2px !important;
   flex: 0 0 42px !important;
   background: #8ec43f !important;
}

.s6-division-card .s6-division-card__title-row {
   gap: 0 !important;
}

@media (max-width: 640px) {
   .s6-division-card .s6-division-card__content > .s6-division-card__label {
      top: 1rem !important;
      right: 1rem !important;
      gap: 10px !important;
      font-size: 9px !important;
      letter-spacing: .24em !important;
   }

   .s6-division-card .s6-division-card__content > .s6-division-card__label::before {
      width: 32px !important;
      flex-basis: 32px !important;
   }
}


/* =========================================================
   Hero Card Image Paint Stability
   Animated CSS background layers can repaint during the hero tear. Decoded
   image elements provide the card thumbnail paint source while the wrapper
   keeps the slice-to-thumbnail opacity animation.
========================================================= */
.s6-hero .s6-division-card {
  background-image: none !important;
  background-color: #111 !important;
  transform: translate3d(0, 0, 0);
  backface-visibility: hidden;
  contain: paint;
}

.s6-hero .s6-division-card__image,
.s6-hero .s6-division-card__image.lazyloaded {
  background-image: none !important;
  background-color: #111 !important;
  overflow: hidden !important;
  transform: translate3d(0, 0, 0) scale(1.08);
  backface-visibility: hidden;
  contain: paint;
}

.s6-division-card__img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center !important;
  opacity: 1 !important;
  transform: translate3d(0, 0, 0) scale(1.0001) !important;
  backface-visibility: hidden !important;
  will-change: transform;
  pointer-events: none !important;
}

.s6-hero.is-tearing .s6-division-card__image,
.s6-hero.is-reversing .s6-division-card__image {
  will-change: opacity, transform;
}

.s6-hero.is-revealed:not(.is-tearing):not(.is-reversing):not(.is-reverse-resetting) .s6-division-card__image {
  background-image: none !important;
  opacity: 1 !important;
  transform: translate3d(0, 0, 0) scale(1) !important;
}

.s6-division-card:hover .s6-division-card__img {
  filter: grayscale(1) contrast(1.1) brightness(.75);
}


.s6-division-card > .s6-division-card__label {
  position: absolute !important;
  top: 1.35rem !important;
  right: 1.35rem !important;
  left: auto !important;
  bottom: auto !important;
  z-index: 12 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 0.55rem !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  font-size: clamp(0.58rem, 0.72vw, 0.78rem) !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: #8ec43f !important;
  -webkit-text-fill-color: #8ec43f !important;
  opacity: 0;
  pointer-events: none;
  transition: opacity .55s ease .45s, transform .55s cubic-bezier(.22,1,.36,1) .45s;
}

.s6-division-card > .s6-division-card__label::before {
  content: "";
  display: block;
  width: 2.85rem;
  height: 1px;
  background: currentColor;
  opacity: .82;
}

.s6-hero.is-revealed:not(.is-tearing):not(.is-reversing) .s6-division-card > .s6-division-card__label {
  opacity: 1;
  transform: translateY(0);
}

.s6-hero.is-tearing .s6-division-card > .s6-division-card__label,
.s6-hero.is-reversing .s6-division-card > .s6-division-card__label,
.s6-hero:not(.is-revealed) .s6-division-card > .s6-division-card__label {
  opacity: 0 !important;
  transition-delay: 0s !important;
}

html.s6-hero-locked,
html.s6-hero-locked body,
body.s6-hero-locked,
body.s6-lock-scroll {
  overflow: hidden !important;
  overscroll-behavior: none;
}

body.s6-lock-scroll {
  touch-action: none;
}

@media (max-width: 760px) {
  .s6-division-card > .s6-division-card__label {
    top: 1rem !important;
    right: 1rem !important;
  }
  .s6-division-card > .s6-division-card__label::before {
    width: 2.1rem;
  }
}

/* Homepage division cards: short windows need a little more header clearance. */
@media (max-width: 1180px) and (min-width: 761px) and (max-height: 820px) {
  .s6-division-heading h2 {
    font-size: clamp(1.85rem, 3.7vw, 2.55rem) !important;
    line-height: .95 !important;
  }

  .s6-division-heading p {
    padding-top: 14px !important;
    font-size: 9px !important;
    line-height: 1.45 !important;
  }

  .s6-hero.is-revealed:not(.is-tearing):not(.is-reversing):not(.is-reverse-resetting) .s6-division-grid {
    grid-template-rows: repeat(2, minmax(145px, 1fr)) !important;
    grid-auto-rows: minmax(145px, 1fr) !important;
    gap: 16px !important;
    padding: 142px 24px 34px !important;
    overflow: hidden !important;
  }

  .s6-division-card {
    min-height: 0 !important;
  }

  .s6-division-card .s6-division-card__title {
    font-size: clamp(1.32rem, 3.05vw, 2.1rem) !important;
    line-height: .98 !important;
  }

.s6-division-card__title-sub {
    font-size: clamp(.82rem, 2.2vw, 1.32rem) !important;
    line-height: 1.02 !important;
  }

  .s6-division-card .s6-division-card__content {
    left: 1.15rem !important;
    right: 1.15rem !important;
    bottom: 1rem !important;
  }

  .s6-division-card__divider {
    margin: .04rem 0 !important;
  }

  .s6-division-card .s6-division-card__cta {
    margin-top: .62rem !important;
    font-size: .62rem !important;
  }

  .s6-division-card > .s6-division-card__label {
    top: .95rem !important;
    right: .95rem !important;
    font-size: .56rem !important;
  }
}

/* Division scroll performance */
body.s6-division-current .s6-header__inner,
body.s6-division-current .s6-division-nav__inner {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

body.s6-division-current .s6-header__inner {
  background: rgba(4, 5, 4, .86) !important;
}

body.s6-division-current .s6-header.is-scrolled .s6-header__inner {
  background: rgba(4, 5, 4, .94) !important;
}

body.s6-division-current .s6-division-nav__inner {
  box-shadow: 0 14px 34px rgba(0, 0, 0, .14) !important;
}

body.s6-division-current .s6-light-concrete-section,
body.s6-division-current .s6-division-opening,
body.s6-division-current .s6-division-projects,
body.s6-division-current .s6-division-faq,
body.s6-division-current .s6-division-cta,
body.s6-division-current .s6-stone-catalogue,
body.s6-division-current .s6-coatings-systems,
body.s6-division-current .s6-restoration-explainer-section {
  content-visibility: auto;
  contain-intrinsic-size: 900px;
}

/* Division Popup Long-Title Fit
   Tightens only long division titles
   such as Landscape Construction and Architectural Coatings so they fit cleanly. */
.s6-division-modal.s6-division-modal--long-title .s6-division-modal__media-copy h3 {
  max-width: 100% !important;
  font-size: clamp(1.8rem, 2.45vw, 2.75rem) !important;
  line-height: .95 !important;
  letter-spacing: -.045em !important;
  text-wrap: balance;
  overflow-wrap: normal;
}

.s6-division-modal.s6-division-modal--long-title .s6-division-modal__service-title,
.s6-division-modal.s6-division-modal--long-title .s6-division-modal__body h3 {
  max-width: 540px !important;
  font-size: clamp(1.35rem, 1.72vw, 2.05rem) !important;
  line-height: 1.02 !important;
  letter-spacing: -.045em !important;
  text-wrap: balance;
}

@media (max-width: 760px) {
  .s6-division-modal.s6-division-modal--long-title .s6-division-modal__media-copy h3 {
    font-size: clamp(1.65rem, 10vw, 2.5rem) !important;
    line-height: .94 !important;
  }

  .s6-division-modal.s6-division-modal--long-title .s6-division-modal__service-title,
  .s6-division-modal.s6-division-modal--long-title .s6-division-modal__body h3 {
    font-size: clamp(1.28rem, 6.5vw, 1.8rem) !important;
    line-height: 1.04 !important;
  }
}


.s6-single-project-before-after {
  min-height: clamp(500px, 54vw, 760px) !important;
  border-radius: 28px !important;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.09);
  box-shadow: 0 30px 90px rgba(0,0,0,.44);
}

.s6-project-detail-card-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(16px, 2vw, 24px);
  margin-bottom: clamp(38px, 5vw, 72px);
}

.s6-project-detail-card {
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 28px;
  background:
    radial-gradient(circle at 92% 0%, rgba(142,198,64,.10), transparent 34%),
    linear-gradient(135deg, rgba(255,255,255,.075), rgba(255,255,255,.028));
  padding: clamp(22px, 2.6vw, 34px);
  box-shadow: 0 22px 70px rgba(0,0,0,.24);
}

.s6-project-detail-card--wide {
  grid-column: 1 / -1;
}

.s6-project-detail-card__kicker,
.s6-project-story-block span,
.s6-project-page-cta span {
  display: block;
  margin-bottom: 18px;
  color: var(--s6-green, #8ec640);
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.s6-project-detail-card h2.s6-project-detail-card__kicker {
  margin: 0 0 18px;
  font-family: inherit;
  font-size: .68rem;
  line-height: 1.3;
}

.s6-project-detail-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px 18px;
}

.s6-project-detail-list div,
.s6-project-material-box div {
  min-width: 0;
}

.s6-project-detail-list span,
.s6-project-material-box span {
  display: block;
  margin-bottom: 4px;
  color: rgba(255,255,255,.46);
  font-size: .64rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.s6-project-detail-list strong,
.s6-project-material-box strong {
  display: block;
  color: #fff;
  font-size: .98rem;
  font-weight: 800;
  line-height: 1.25;
}

.s6-project-system-group + .s6-project-system-group {
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid rgba(255,255,255,.08);
}

.s6-project-system-group > strong {
  display: block;
  margin-bottom: 10px;
  color: #fff;
  font-size: 1rem;
  font-weight: 900;
}

.s6-project-system-group div {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.s6-project-system-group span {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 11px;
  border: 1px solid rgba(142,198,64,.2);
  border-radius: 999px;
  background: rgba(142,198,64,.08);
  color: rgba(255,255,255,.82);
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.s6-project-material-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(14px, 1.6vw, 20px);
}

.s6-project-material-box {
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 22px;
  background: rgba(0,0,0,.16);
  padding: 18px;
}

.s6-project-material-box h3 {
  margin: 0 0 16px;
  color: #fff;
  font-size: clamp(1rem, 1.2vw, 1.18rem);
  font-weight: 900;
  letter-spacing: -.025em;
}

.s6-project-material-box div + div {
  margin-top: 12px;
}

.s6-project-story-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(18px, 2vw, 28px);
  margin-bottom: clamp(40px, 5vw, 72px);
}

.s6-project-story-block {
  border-top: 1px solid rgba(255,255,255,.12);
  padding-top: clamp(22px, 3vw, 34px);
}

.s6-project-story-block--overview {
  grid-column: 1 / -1;
}

.s6-project-story-block p {
  max-width: 900px;
  margin: 0;
  color: rgba(255,255,255,.74);
  font-size: clamp(1rem, 1.2vw, 1.08rem);
  line-height: 1.8;
}

.s6-project-story-block--overview p {
  color: #fff;
  font-size: clamp(1.26rem, 1.9vw, 1.82rem);
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -.035em;
}

.s6-project-gallery-content,
.s6-project-explore-similar,
.s6-project-related-services,
.s6-project-related-projects {
  margin-top: clamp(42px, 6vw, 88px);
}

.s6-project-gallery-content .s6-eyebrow,
.s6-project-explore-similar .s6-eyebrow,
.s6-project-related-services .s6-eyebrow,
.s6-project-related-projects .s6-eyebrow {
  margin-bottom: clamp(18px, 2vw, 26px) !important;
}

.s6-project-related-service-grid,
.s6-project-related-grid,
.s6-project-explore-link-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(14px, 1.8vw, 22px);
}

.s6-project-related-service-grid a,
.s6-project-explore-link,
.s6-project-related-card {
  display: block;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 24px;
  background: linear-gradient(135deg, rgba(255,255,255,.07), rgba(255,255,255,.025));
  color: #fff;
  text-decoration: none;
  padding: 22px;
  transition: transform .25s ease, border-color .25s ease, background .25s ease;
}

.s6-project-related-service-grid a:hover,
.s6-project-related-card:hover {
  transform: translateY(-2px);
  border-color: rgba(142,198,64,.25);
  background: linear-gradient(135deg, rgba(142,198,64,.10), rgba(255,255,255,.035));
}

.s6-project-related-service-grid a {
  font-size: 1.08rem;
  font-weight: 900;
}

.s6-project-related-service-grid a span {
  display: block;
  margin-top: 10px;
  color: rgba(255,255,255,.52);
  font-size: .62rem;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.s6-project-explore-link {
  min-height: 112px;
}

.s6-project-explore-link span {
  display: block;
  margin-bottom: 10px;
  color: rgba(255,255,255,.48);
  font-size: .62rem;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.s6-project-explore-link strong {
  display: block;
  color: #fff;
  font-size: clamp(1rem, 1.25vw, 1.16rem);
  line-height: 1.18;
}

.s6-project-related-card {
  min-height: 220px;
  position: relative;
  padding: 0;
}

.s6-project-related-card > span {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  filter: grayscale(.1) contrast(1.08);
  opacity: .72;
}

.s6-project-related-card::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,.82), transparent 62%);
}

.s6-project-related-card strong {
  position: absolute;
  left: 20px;
  right: 20px;
  bottom: 20px;
  z-index: 1;
  color: #fff;
  font-size: 1.15rem;
  line-height: 1.06;
}

.s6-project-page-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  margin-top: clamp(54px, 7vw, 100px);
  border: 1px solid rgba(142,198,64,.18);
  border-radius: 30px;
  background:
    radial-gradient(circle at 80% 20%, rgba(142,198,64,.12), transparent 34%),
    linear-gradient(135deg, rgba(255,255,255,.07), rgba(255,255,255,.025));
  padding: clamp(24px, 4vw, 44px);
}

.s6-project-page-cta h2 {
  max-width: 780px;
  margin: 0;
  color: #fff;
  font-size: clamp(1.9rem, 4vw, 4.2rem);
  font-weight: 900;
  line-height: .94;
  letter-spacing: -.06em;
}

.s6-project-page-cta a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  min-height: 48px;
  padding: 0 22px;
  border-radius: 999px;
  background: var(--s6-green, #8ec640);
  color: #10130c;
  font-size: .72rem;
  font-weight: 950;
  letter-spacing: .12em;
  text-decoration: none;
  text-transform: uppercase;
}

@media (max-width: 980px) {
  .s6-project-detail-card-grid,
  .s6-project-story-grid,
  .s6-project-related-service-grid,
  .s6-project-related-grid,
  .s6-project-explore-link-grid {
    grid-template-columns: 1fr;
  }

  .s6-project-material-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .s6-project-page-cta {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (max-width: 640px) {
  .s6-project-detail-list,
  .s6-project-material-grid {
    grid-template-columns: 1fr;
  }

  .s6-project-detail-card,
  .s6-project-material-box,
  .s6-project-page-cta {
    border-radius: 22px;
  }
}

/* Project page ACF image gallery fields */
.s6-single-project-image-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(12px, 1.5vw, 20px);
  margin-bottom: clamp(24px, 3vw, 42px);
}

.s6-single-project-image-grid__item {
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 24px;
  background: rgba(255,255,255,.04);
  min-height: clamp(220px, 24vw, 360px);
}

.s6-single-project-image-grid__item--featured {
  grid-column: span 2;
  grid-row: span 2;
}

.s6-single-project-image-grid__item img {
  width: 100%;
  height: 100%;
  min-height: inherit;
  display: block;
  object-fit: cover;
}

@media (max-width: 900px) {
  .s6-single-project-image-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .s6-single-project-image-grid__item--featured {
    grid-column: span 2;
  }
}

@media (max-width: 620px) {
  .s6-single-project-image-grid {
    grid-template-columns: 1fr;
  }

  .s6-single-project-image-grid__item--featured {
    grid-column: span 1;
  }
}


.s6-project-division-card {
  grid-column: 1 / -1;
}

.s6-project-division-detail-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(14px, 1.6vw, 20px);
}

.s6-project-division-detail-box {
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 22px;
  background: rgba(0,0,0,.16);
  padding: clamp(16px, 1.7vw, 22px);
}

.s6-project-division-detail-box__head {
  margin-bottom: 16px;
}

.s6-project-division-detail-box__head > span,
.s6-project-division-system-used > span,
.s6-project-division-spec-row > span {
  display: block;
  margin-bottom: 5px;
  color: rgba(255,255,255,.46);
  font-size: .64rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.s6-project-division-detail-box__head h3 {
  margin: 0;
  color: #fff;
  font-size: clamp(1.05rem, 1.3vw, 1.28rem);
  font-weight: 900;
  letter-spacing: -.025em;
}

.s6-project-division-system-used {
  margin-bottom: 14px;
  padding-bottom: 14px;
  border-bottom: 1px solid rgba(255,255,255,.08);
}

.s6-project-division-system-used strong,
.s6-project-division-spec-row strong {
  display: block;
  color: #fff;
  font-size: .98rem;
  font-weight: 850;
  line-height: 1.3;
}

.s6-project-division-spec-row + .s6-project-division-spec-row {
  margin-top: 12px;
}

.s6-project-story-richtext {
  max-width: 920px;
  color: rgba(255,255,255,.74);
  font-size: clamp(1rem, 1.2vw, 1.08rem);
  line-height: 1.8;
}

.s6-project-story-richtext p {
  margin: 0 0 1.15em;
  max-width: inherit;
  color: inherit;
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
}

.s6-project-story-richtext p:last-child {
  margin-bottom: 0;
}

.s6-project-story-richtext ul,
.s6-project-story-richtext ol {
  margin: .9em 0 0;
  padding-left: 1.2em;
}

.s6-project-story-richtext li + li {
  margin-top: .35em;
}

.s6-project-story-block--overview .s6-project-story-richtext {
  color: #fff;
  font-size: clamp(1.08rem, 1.45vw, 1.42rem);
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: -.03em;
}

@media (max-width: 820px) {
  .s6-project-division-detail-grid {
    grid-template-columns: 1fr;
  }
}


.s6-project-overview-scope-grid {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(280px, .75fr);
  gap: clamp(20px, 2.6vw, 36px);
  align-items: stretch;
}

.s6-project-overview-scope-grid--overview-only {
  grid-template-columns: 1fr;
}

.s6-project-overview-scope-grid .s6-project-story-block--overview {
  grid-column: auto;
}

.s6-project-scope-card {
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 24px;
  background:
    radial-gradient(circle at 92% 0%, rgba(142,198,64,.10), transparent 34%),
    linear-gradient(135deg, rgba(255,255,255,.065), rgba(255,255,255,.025));
  padding: clamp(22px, 2.3vw, 30px);
  box-shadow: 0 18px 56px rgba(0,0,0,.22);
}

.s6-project-scope-card ul {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.s6-project-scope-card li {
  position: relative;
  padding-left: 20px;
  color: rgba(255,255,255,.84);
  font-size: clamp(.96rem, 1vw, 1.04rem);
  font-weight: 750;
  line-height: 1.35;
}

.s6-project-scope-card li::before {
  content: '';
  position: absolute;
  left: 0;
  top: .54em;
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: var(--s6-green, #8ec640);
  box-shadow: 0 0 0 4px rgba(142,198,64,.12);
}

@media (max-width: 900px) {
  .s6-project-overview-scope-grid {
    grid-template-columns: 1fr;
  }
}

/* Project case study: compact taxonomy chips for Explore Similar Projects */
.s6-project-explore-similar {
  margin-top: clamp(32px, 4vw, 56px);
}

.s6-project-explore-similar .s6-eyebrow {
  margin-bottom: 16px !important;
}

.s6-project-explore-link-grid {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}

.s6-project-explore-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 0;
  width: auto;
  max-width: 100%;
  padding: 9px 14px;
  border-radius: 999px;
  border: 1px solid rgba(142,198,64,.20);
  background: rgba(255,255,255,.045);
  box-shadow: none;
}

.s6-project-explore-link:hover {
  transform: translateY(-1px);
  border-color: rgba(142,198,64,.40);
  background: rgba(142,198,64,.10);
}

.s6-project-explore-link span {
  display: inline;
  margin: 0;
  color: rgba(142,198,64,.82);
  font-size: .58rem;
  font-weight: 950;
  line-height: 1;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.s6-project-explore-link strong {
  display: inline;
  color: #fff;
  font-size: .82rem;
  font-weight: 850;
  line-height: 1.1;
  letter-spacing: -.01em;
}

@media (max-width: 640px) {
  .s6-project-explore-link-grid {
    gap: 8px;
  }

  .s6-project-explore-link {
    padding: 8px 11px;
  }

  .s6-project-explore-link span {
    font-size: .52rem;
  }

  .s6-project-explore-link strong {
    font-size: .76rem;
  }
}


.s6-project-division-detail-box__head > .s6-project-division-number {
  color: var(--s6-green, #8ec640) !important;
  font-weight: 950 !important;
  letter-spacing: .16em !important;
}

.s6-project-division-detail-box__head h3 {
  color: var(--s6-green, #8ec640);
}

.s6-single-project-content.s6-reveal {
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
}

/* Project page gallery modal triggers */
.s6-single-project-image-grid__item {
  padding: 0;
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
  text-align: inherit;
}

.s6-single-project-image-grid__item:hover img,
.s6-single-project-image-grid__item:focus-visible img {
  transform: scale(1.035);
}

.s6-single-project-image-grid__item img {
  transition: transform .45s ease;
}

.s6-single-project-image-grid__item:focus-visible {
  outline: 2px solid var(--s6-green, #8EC43F);
  outline-offset: 4px;
}


.s6-project-gallery-modal__actions button.s6-project-gallery-modal__project-link {
  appearance: none;
  border: 0;
  cursor: pointer;
}

.s6-project-gallery-modal__details {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 16px;
}

.s6-project-gallery-modal__details[hidden] {
  display: none !important;
}

.s6-project-gallery-modal__detail-card {
  border: 1px solid rgba(142, 196, 63, 0.18);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.045);
  padding: 14px;
}

.s6-project-gallery-modal__detail-card h4 {
  margin: 0 0 10px;
  font-size: 0.78rem;
  line-height: 1.2;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #8EC43F;
}

.s6-project-gallery-modal__detail-card p,
.s6-project-gallery-modal__system-row {
  display: grid;
  gap: 3px;
  margin: 0 0 9px;
}

.s6-project-gallery-modal__detail-card p:last-child,
.s6-project-gallery-modal__system-row:last-child {
  margin-bottom: 0;
}

.s6-project-gallery-modal__detail-card span,
.s6-project-gallery-modal__system-row span {
  font-size: 0.67rem;
  line-height: 1.2;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.48);
}

.s6-project-gallery-modal__detail-card strong,
.s6-project-gallery-modal__system-row strong {
  font-size: 0.86rem;
  line-height: 1.28;
  color: rgba(255,255,255,0.9);
  font-weight: 650;
}

.s6-project-gallery-modal__material-group + .s6-project-gallery-modal__material-group {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid rgba(255,255,255,0.08);
}

.s6-project-gallery-modal__material-group h5 {
  margin: 0 0 8px;
  font-size: 0.82rem;
  line-height: 1.2;
  color: rgba(255,255,255,0.92);
}

@media (max-width: 980px) {
  .s6-project-gallery-modal__details {
    grid-template-columns: 1fr;
  }
}


.s6-project-gallery-modal.is-showing-details .s6-project-gallery-modal__media {
  display: none !important;
}

.s6-project-gallery-modal.is-showing-details .s6-project-before-after-modal__panel {
  grid-template-rows: auto auto 1fr !important;
  overflow-y: auto !important;
}

.s6-project-gallery-modal.is-showing-details .s6-project-gallery-modal__details {
  margin: 0 clamp(20px, 3vw, 32px) clamp(20px, 3vw, 32px) !important;
  align-self: start !important;
}

.s6-project-gallery-modal.is-showing-details .s6-project-gallery-modal__actions {
  margin-bottom: 0 !important;
}

@media (max-width: 980px) {
  .s6-project-gallery-modal.is-showing-details .s6-project-gallery-modal__details {
    margin-left: 16px !important;
    margin-right: 16px !important;
  }
}


.s6-single-project-page .s6-single-project-hero {
  position: relative !important;
  min-height: clamp(620px, 78vh, 860px) !important;
  display: flex !important;
  align-items: flex-end !important;
  padding-top: clamp(130px, 11vw, 180px) !important;
  padding-bottom: clamp(56px, 7vw, 96px) !important;
  overflow: hidden !important;
  background:
    radial-gradient(circle at 16% 18%, rgba(142, 198, 64, .18), transparent 30%),
    linear-gradient(115deg, rgba(0, 0, 0, .96) 0%, rgba(0, 0, 0, .82) 42%, rgba(0, 0, 0, .42) 100%),
    #030504 !important;
}

.s6-single-project-page .s6-single-project-hero--has-image {
  background:
    radial-gradient(circle at 15% 18%, rgba(142, 198, 64, .20), transparent 28%),
    linear-gradient(115deg, rgba(0, 0, 0, .97) 0%, rgba(0, 0, 0, .86) 36%, rgba(0, 0, 0, .42) 72%, rgba(0, 0, 0, .72) 100%),
    var(--s6-single-project-bg) center/cover no-repeat !important;
}

.s6-single-project-page .s6-single-project-hero::after {
  content: '';
  position: absolute;
  inset: auto 0 0;
  height: 46%;
  background: linear-gradient(180deg, transparent, #050705 78%);
  pointer-events: none;
  z-index: 0;
}

.s6-single-project-page .s6-single-project-hero .s6-container {
  position: relative;
  z-index: 2;
  width: 100%;
}

.s6-single-project-page .s6-single-project-hero .s6-blog-back-link {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-bottom: clamp(28px, 4vw, 48px) !important;
  color: rgba(255, 255, 255, .76) !important;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(0,0,0,.34);
  backdrop-filter: blur(14px);
  border-radius: 999px;
  padding: 10px 14px;
  text-decoration: none;
}

.s6-single-project-page .s6-single-project-before-after {
  aspect-ratio: var(--s6-ba-match-ratio, 16 / 10) !important;
  height: auto !important;
  min-height: 0 !important;
  border-radius: clamp(24px, 3vw, 38px) !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  box-shadow: 0 36px 110px rgba(0,0,0,.58) !important;
}

@media (max-width: 640px) {
  .s6-single-project-page .s6-single-project-hero {
    min-height: auto !important;
    padding-top: 108px !important;
    padding-bottom: 44px !important;
  }
}


.s6-single-project-page .s6-single-project-hero--cinematic {
  position: relative !important;
  min-height: clamp(680px, 82vh, 940px) !important;
  display: flex !important;
  align-items: flex-end !important;
  padding-top: clamp(132px, 11vw, 184px) !important;
  padding-bottom: clamp(40px, 5vw, 76px) !important;
  overflow: hidden !important;
  background:
    radial-gradient(circle at 18% 24%, rgba(142, 198, 64, .16), transparent 30%),
    linear-gradient(115deg, rgba(0,0,0,.98) 0%, rgba(0,0,0,.82) 36%, rgba(0,0,0,.38) 72%, rgba(0,0,0,.76) 100%),
    #030504 !important;
}

.s6-single-project-page .s6-single-project-hero--cinematic.s6-single-project-hero--has-image {
  background:
    radial-gradient(circle at 17% 22%, rgba(142, 198, 64, .18), transparent 28%),
    linear-gradient(115deg, rgba(0,0,0,.98) 0%, rgba(0,0,0,.88) 31%, rgba(0,0,0,.50) 58%, rgba(0,0,0,.72) 100%),
    var(--s6-single-project-bg) center center / cover no-repeat !important;
}

.s6-single-project-page .s6-single-project-hero--cinematic::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    linear-gradient(90deg, rgba(0,0,0,.95) 0%, rgba(0,0,0,.74) 35%, rgba(0,0,0,.18) 70%, rgba(0,0,0,.42) 100%),
    linear-gradient(180deg, rgba(0,0,0,.24) 0%, rgba(0,0,0,.10) 42%, rgba(2,4,3,.95) 100%);
  pointer-events: none;
}

.s6-single-project-page .s6-single-project-hero--cinematic::after {
  content: '';
  position: absolute;
  inset: auto 0 0;
  z-index: 0;
  height: 34%;
  background: linear-gradient(180deg, transparent, #050705 86%);
  pointer-events: none;
}

.s6-single-project-hero__shade {
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    radial-gradient(circle at 74% 26%, rgba(255,255,255,.08), transparent 24%),
    linear-gradient(180deg, rgba(255,255,255,.05), transparent 18%);
  mix-blend-mode: screen;
  opacity: .42;
  pointer-events: none;
}

.s6-single-project-page .s6-single-project-hero--cinematic .s6-container {
  position: relative;
  z-index: 2;
  width: 100%;
}

.s6-single-project-page .s6-single-project-hero__cinematic-copy {
  max-width: 860px;
  padding-bottom: clamp(28px, 4vw, 52px);
}

.s6-single-project-page .s6-single-project-hero__cinematic-copy .s6-eyebrow {
  color: var(--s6-green, #8EC640) !important;
  margin-bottom: clamp(18px, 2vw, 26px) !important;
}

.s6-single-project-page .s6-single-project-hero__cinematic-copy .s6-eyebrow span {
  background: var(--s6-green, #8EC640) !important;
}

.s6-single-project-page .s6-single-project-hero__cinematic-copy h1 {
  max-width: 820px !important;
  margin: 0 !important;
  color: #fff;
  font-size: clamp(3.6rem, 7.8vw, 8.6rem) !important;
  line-height: .86 !important;
  letter-spacing: -.085em !important;
  text-transform: none !important;
  text-wrap: balance;
}

.s6-single-project-page .s6-single-project-hero__cinematic-copy p {
  max-width: 640px !important;
  margin: clamp(22px, 2.2vw, 30px) 0 0 !important;
  color: rgba(255,255,255,.72) !important;
  font-size: clamp(1rem, 1.25vw, 1.16rem) !important;
  line-height: 1.72 !important;
}

.s6-single-project-page .s6-single-project-content {
  padding-top: clamp(48px, 6vw, 88px) !important;
}

@media (max-width: 640px) {
  .s6-single-project-page .s6-single-project-hero--cinematic {
    min-height: auto !important;
    padding-top: 112px !important;
    padding-bottom: 34px !important;
  }

  .s6-single-project-page .s6-single-project-hero__cinematic-copy h1 {
    font-size: clamp(2.8rem, 14vw, 4.6rem) !important;
  }
}


.s6-single-project-page .s6-single-project-hero__cinematic-copy {
  padding-bottom: clamp(20px, 3vw, 36px) !important;
}

.s6-single-project-page .s6-single-project-hero-details {
  position: relative;
  overflow: hidden;
  width: min(100%, 980px);
  border: 1px solid rgba(255,255,255,.14);
  border-radius: clamp(18px, 2vw, 28px);
  background:
    linear-gradient(135deg, rgba(255,255,255,.10), rgba(255,255,255,.035)),
    rgba(5, 7, 5, .72);
  box-shadow: 0 28px 90px rgba(0,0,0,.46);
  backdrop-filter: blur(18px);
}

.s6-single-project-page .s6-single-project-hero-details::before {
  content: '';
  position: absolute;
  inset: 0 0 auto;
  height: 3px;
  background: linear-gradient(90deg, var(--s6-green, #8EC640), rgba(142,198,64,.16), transparent);
  pointer-events: none;
}

.s6-single-project-page .s6-single-project-hero-details__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.s6-single-project-page .s6-single-project-hero-detail {
  min-height: 116px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 12px;
  padding: clamp(22px, 2.4vw, 34px);
}

.s6-single-project-page .s6-single-project-hero-detail + .s6-single-project-hero-detail {
  border-left: 1px solid rgba(255,255,255,.12);
}

.s6-single-project-page .s6-single-project-hero-detail span {
  color: rgba(255,255,255,.52);
  font-size: .66rem;
  font-weight: 900;
  letter-spacing: .18em;
  line-height: 1.25;
  text-transform: uppercase;
}

.s6-single-project-page .s6-single-project-hero-detail strong {
  color: #fff;
  font-size: clamp(1.24rem, 2vw, 2rem);
  font-weight: 850;
  letter-spacing: -.045em;
  line-height: 1.05;
  text-transform: uppercase;
}

.s6-single-project-page .s6-single-project-hero-details__summary {
  margin: 0 !important;
  padding: clamp(20px, 2.2vw, 30px) clamp(22px, 2.4vw, 34px) clamp(22px, 2.4vw, 34px) !important;
  border-top: 1px solid rgba(255,255,255,.12);
  color: rgba(255,255,255,.72) !important;
  font-size: clamp(.98rem, 1.12vw, 1.12rem) !important;
  line-height: 1.72 !important;
  max-width: none !important;
}

@media (max-width: 820px) {
  .s6-single-project-page .s6-single-project-hero-details__grid {
    grid-template-columns: 1fr;
  }

  .s6-single-project-page .s6-single-project-hero-detail {
    min-height: auto;
    padding: 18px 22px;
  }

  .s6-single-project-page .s6-single-project-hero-detail + .s6-single-project-hero-detail {
    border-left: 0;
    border-top: 1px solid rgba(255,255,255,.12);
  }
}

.s6-single-project-page .s6-single-project-hero-details {
  width: min(100%, 1080px) !important;
  margin-top: clamp(22px, 3vw, 42px) !important;
  border-radius: clamp(14px, 1.4vw, 20px) !important;
}

.s6-single-project-page .s6-single-project-hero-details__grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.s6-single-project-page .s6-single-project-hero-detail {
  min-height: 78px !important;
  gap: 7px !important;
  padding: clamp(14px, 1.45vw, 20px) clamp(16px, 1.7vw, 24px) !important;
  border-top: 1px solid rgba(255,255,255,.10);
}

.s6-single-project-page .s6-single-project-hero-detail:nth-child(-n+3) {
  border-top: 0;
}

.s6-single-project-page .s6-single-project-hero-detail:nth-child(3n+1) {
  border-left: 0 !important;
}

.s6-single-project-page .s6-single-project-hero-detail + .s6-single-project-hero-detail {
  border-left: 1px solid rgba(255,255,255,.12);
}

.s6-single-project-page .s6-single-project-hero-detail span {
  font-size: .58rem !important;
  letter-spacing: .16em !important;
}

.s6-single-project-page .s6-single-project-hero-detail strong {
  font-size: clamp(.98rem, 1.25vw, 1.34rem) !important;
  letter-spacing: -.03em !important;
  line-height: 1.12 !important;
}

.s6-single-project-page .s6-single-project-hero-details__summary {
  padding: clamp(16px, 1.6vw, 22px) clamp(16px, 1.7vw, 24px) !important;
  font-size: clamp(.92rem, 1vw, 1.02rem) !important;
  line-height: 1.62 !important;
}

@media (max-width: 820px) {
  .s6-single-project-page .s6-single-project-hero-details__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .s6-single-project-page .s6-single-project-hero-detail,
  .s6-single-project-page .s6-single-project-hero-detail + .s6-single-project-hero-detail {
    border-left: 0 !important;
    border-top: 1px solid rgba(255,255,255,.12) !important;
  }

  .s6-single-project-page .s6-single-project-hero-detail:nth-child(-n+2) {
    border-top: 0 !important;
  }

  .s6-single-project-page .s6-single-project-hero-detail:nth-child(even) {
    border-left: 1px solid rgba(255,255,255,.12) !important;
  }
}

@media (max-width: 560px) {
  .s6-single-project-page .s6-single-project-hero-details__grid {
    grid-template-columns: 1fr !important;
  }

  .s6-single-project-page .s6-single-project-hero-detail,
  .s6-single-project-page .s6-single-project-hero-detail + .s6-single-project-hero-detail,
  .s6-single-project-page .s6-single-project-hero-detail:nth-child(even) {
    border-left: 0 !important;
  }

  .s6-single-project-page .s6-single-project-hero-detail:nth-child(n+2) {
    border-top: 1px solid rgba(255,255,255,.12) !important;
  }
}


.s6-project-gallery-modal--before-after .s6-before-after--project-modal,
.s6-project-gallery-modal .s6-before-after--project-modal {
  overflow: hidden !important;
  background: #050505 !important;
}

.s6-project-gallery-modal--before-after .s6-before-after--project-modal .s6-before-after__after,
.s6-project-gallery-modal--before-after .s6-before-after--project-modal .s6-before-after__before,
.s6-project-gallery-modal .s6-before-after--project-modal .s6-before-after__after,
.s6-project-gallery-modal .s6-before-after--project-modal .s6-before-after__before {
  overflow: hidden !important;
}

.s6-project-gallery-modal--before-after .s6-before-after--project-modal .s6-before-after__after img,
.s6-project-gallery-modal--before-after .s6-before-after--project-modal .s6-before-after__before img,
.s6-project-gallery-modal .s6-before-after--project-modal .s6-before-after__after img,
.s6-project-gallery-modal .s6-before-after--project-modal .s6-before-after__before img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center center !important;
}


.s6-project-card__badges,
.s6-gallery-tile .s6-project-card__badges,
.s6-feature-project .s6-project-card__badges {
  position: absolute !important;
  top: 18px !important;
  right: 18px !important;
  z-index: 8 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 6px !important;
  pointer-events: none !important;
}

.s6-project-card__badges .s6-project-card__badge,
.s6-gallery-tile .s6-project-card__badges .s6-project-card__badge,
.s6-feature-project .s6-project-card__badges .s6-project-card__badge {
  position: static !important;
  top: auto !important;
  right: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 30px !important;
  padding: 0 11px !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  background: rgba(5, 6, 5, .68) !important;
  color: rgba(255,255,255,.92) !important;
  font-size: .58rem !important;
  font-weight: 900 !important;
  letter-spacing: .14em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
}

.s6-project-card__badges .s6-project-card__badge--primary {
  border-color: rgba(255,255,255,.18) !important;
  color: rgba(255,255,255,.92) !important;
  background: rgba(5, 6, 5, .68) !important;
}

.s6-project-card__badges .s6-project-card__badge--secondary {
  transform-origin: top right !important;
  transform: scale(.75) !important;
  margin-bottom: -7px !important;
  border-color: rgba(142, 196, 63, .55) !important;
  color: #101010 !important;
  background: #8ec43f !important;
}

.s6-gallery-tile,
.s6-feature-project {
  position: relative;
}

@media (max-width: 760px) {
  .s6-project-card__badges,
  .s6-gallery-tile .s6-project-card__badges,
  .s6-feature-project .s6-project-card__badges {
    top: 14px !important;
    right: 14px !important;
  }
}


/* Keep the main moulding render full-width in Safari button layouts.
   The separately sized profile inset remains positioned within this preview. */
.s6-division-page--stucco .s6-material-card--moulding {
    -webkit-appearance: none;
    align-items: stretch;
}

.s6-division-page--stucco .s6-material-card--moulding > .s6-material-card__profile--image {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    flex: 0 0 auto;
    align-self: stretch;
}

/* =========================================================
   Stucco moulding secondary profile overlay
   Main card image remains the 3D render; optional profile image sits bottom-left.
========================================================= */
.s6-division-page--stucco .s6-material-card--moulding .s6-material-card__profile--image {
    position: relative !important;
}

.s6-division-page--stucco .s6-material-card__profile-inset {
    position: absolute;
    left: clamp(-1.45rem, -2.15vw, -0.95rem);
    right: auto;
    bottom: clamp(-2.25rem, -3vw, -1.65rem);
    width: clamp(5.6rem, 7vw, 7.2rem);
    height: clamp(5.6rem, 7vw, 7.2rem);
    display: block;
    z-index: 4;
    border-radius: 0;
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    border: 0;
    box-shadow: none;
    filter: none;
    pointer-events: none;
}

.s6-division-page--stucco .s6-material-card--moulding:hover .s6-material-card__profile-inset,
.s6-division-page--stucco .s6-material-card--moulding:focus-visible .s6-material-card__profile-inset {
    box-shadow: none;
    filter: none;
}


.s6-moulding-section-copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
}

.s6-moulding-section-copy p {
  margin: 0;
}


.s6-project-filter-menu {
  margin: 0 0 clamp(18px, 2.6vw, 32px);
  padding: clamp(10px, 1.5vw, 14px);
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(255,255,255,.065), rgba(255,255,255,.018));
  box-shadow: 0 14px 38px rgba(0,0,0,.18);
}

.s6-project-filter-menu__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

.s6-project-filter-menu__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 0;
  color: var(--s6-green, #8EC43F);
  font-size: .64rem;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.s6-project-filter-menu__head h2 {
  display: none;
}

.s6-project-filter-menu__reset {
  flex: 0 0 auto;
  color: rgba(255,255,255,.62);
  font-size: .66rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  text-decoration: none;
  border-bottom: 1px solid rgba(142,196,63,.48);
}

.s6-project-filter-menu__grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 8px;
}

.s6-project-filter-menu__field {
  display: grid;
  gap: 5px;
}

.s6-project-filter-menu__field span {
  color: rgba(255,255,255,.66);
  font-size: .62rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.s6-project-filter-menu__field select {
  width: 100%;
  min-height: 36px;
  padding: 0 28px 0 10px;
  color: #fff;
  font-size: .82rem;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 10px;
  background-color: rgba(10,12,10,.82);
  outline: none;
}

.s6-project-filter-menu__field select:focus {
  border-color: rgba(142,196,63,.72);
  box-shadow: 0 0 0 2px rgba(142,196,63,.12);
}

.s6-project-filter-menu__actions {
  display: flex;
  justify-content: flex-end;
  margin-top: 10px;
}

.s6-project-filter-menu__actions .s6-button {
  min-height: 36px;
  padding: 10px 16px;
  font-size: .68rem;
  letter-spacing: .12em;
}

@media (max-width: 1100px) {
  .s6-project-filter-menu__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 700px) {
  .s6-project-filter-menu__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 520px) {
  .s6-project-filter-menu__head {
    display: flex;
  }
  .s6-project-filter-menu__grid {
    grid-template-columns: 1fr;
  }
  .s6-project-filter-menu__actions {
    justify-content: stretch;
  }
  .s6-project-filter-menu__actions .s6-button {
    width: 100%;
    justify-content: center;
  }
}

/* Stucco colour / texture / trim cards — image-only lightbox polish */
.s6-division-page--stucco .s6-colour-card,
.s6-division-page--stucco .s6-material-card--texture,
.s6-division-page--stucco .s6-material-card--moulding {
  cursor: zoom-in;
}


.s6-stucco-image-lightbox {
  position: fixed;
  inset: 0;
  z-index: 9999;
  padding: clamp(1rem, 3vw, 3rem);
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, .86);
  backdrop-filter: blur(10px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .22s ease, visibility .22s ease;
  cursor: zoom-out;
}

.s6-stucco-image-lightbox.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.s6-stucco-image-lightbox__preview {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: min(94vw, 72rem);
  max-height: 88vh;
}

.s6-stucco-image-lightbox__preview img {
  display: none;
  max-width: min(94vw, 72rem);
  max-height: 88vh;
  object-fit: contain;
  filter: drop-shadow(0 1.4rem 2.6rem rgba(0,0,0,.46));
}

.s6-stucco-image-lightbox__preview img.is-visible {
  display: block;
}

.s6-stucco-image-lightbox__preview.has-pair {
  width: min(94vw, 82rem);
  gap: clamp(1rem, 2vw, 1.8rem);
  align-items: center;
}

.s6-stucco-image-lightbox__preview.has-pair img.is-visible:first-child {
  max-width: min(68vw, 58rem);
}

.s6-stucco-image-lightbox__profile-image.is-visible {
  max-width: min(24vw, 18rem);
  max-height: 68vh;
  padding: clamp(.75rem, 1.4vw, 1.15rem);
  background-color: #fff;
  background-image:
    linear-gradient(rgba(0,0,0,.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,0,0,.055) 1px, transparent 1px);
  background-size: 18px 18px;
  border-radius: .35rem;
  box-shadow: 0 1.4rem 2.6rem rgba(0,0,0,.32);
}

@media (max-width: 760px) {
  .s6-stucco-image-lightbox__preview.has-pair {
    flex-direction: column;
    width: min(94vw, 34rem);
  }

  .s6-stucco-image-lightbox__preview.has-pair img.is-visible:first-child,
  .s6-stucco-image-lightbox__profile-image.is-visible {
    max-width: 94vw;
    max-height: 42vh;
  }
}

.s6-stucco-image-lightbox__swatch {
  display: none;
  width: min(70vw, 32rem);
  aspect-ratio: 1 / 1;
  border-radius: 1.2rem;
  background: var(--s6-preview-swatch, #ece9e1);
  box-shadow: 0 1.4rem 2.6rem rgba(0,0,0,.46), inset 0 0 0 1px rgba(255,255,255,.38);
}

.s6-stucco-image-lightbox__swatch.is-visible {
  display: block;
}

.s6-stucco-image-lightbox__hint {
  position: fixed;
  left: 50%;
  bottom: clamp(1rem, 2vw, 1.65rem);
  transform: translateX(-50%);
  color: rgba(255,255,255,.72);
  font-size: .68rem;
  font-weight: 850;
  letter-spacing: .16em;
  text-transform: uppercase;
}


.s6-division-page--stucco .s6-material-card--moulding .s6-material-card__profile--image[style*="background-image"] {
    background-size: 84% auto !important;
}

.s6-division-page--stucco .s6-material-card__profile-inset {
    width: clamp(5rem, 6.6vw, 6.75rem) !important;
    height: clamp(5rem, 6.6vw, 6.75rem) !important;
}


.s6-division-page--stucco .s6-material-card__profile-inset {
    bottom: clamp(-1.8rem, -2.45vw, -1.25rem) !important;
}


.s6-system-modal__subheading {
    margin: 1.35rem 0 .65rem;
    font-size: .74rem;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: rgba(11, 16, 20, .62);
}

.s6-system-modal__uses {
    margin-top: 1.1rem;
    padding-top: 1rem;
    border-top: 1px solid rgba(11, 16, 20, .12);
    font-size: .86rem;
    line-height: 1.6;
    color: rgba(11, 16, 20, .64);
    font-style: italic;
}


.s6-division-page--stucco .s6-system-modal__dialog {
    width: min(1180px, calc(100vw - 2rem)) !important;
    max-height: min(720px, 90vh) !important;
    grid-template-columns: minmax(20rem, .72fr) minmax(30rem, 1.28fr) !important;
}

.s6-division-page--stucco .s6-system-modal__media {
    min-height: 27rem !important;
}

.s6-division-page--stucco .s6-system-modal__content {
    padding: clamp(1.05rem, 2.2vw, 1.65rem) !important;
    align-self: start !important;
}

.s6-division-page--stucco .s6-system-modal__content h3 {
    font-size: clamp(1.55rem, 2.8vw, 2.55rem) !important;
    line-height: .96 !important;
    margin: .12rem 0 .75rem !important;
}

.s6-division-page--stucco .s6-system-modal__description-block {
    margin: 0 0 .85rem !important;
}

.s6-division-page--stucco .s6-system-modal__subheading {
    margin: 0 0 .32rem !important;
    font-size: .72rem !important;
    line-height: 1.05 !important;
    letter-spacing: .08em !important;
    color: rgba(11, 16, 20, .86) !important;
}

.s6-division-page--stucco .s6-system-modal__content p:not(.s6-section-label),
.s6-division-page--stucco .s6-system-modal__content li {
    font-size: clamp(.78rem, .88vw, .9rem) !important;
    line-height: 1.38 !important;
}

.s6-division-page--stucco .s6-system-modal__description {
    margin: 0 !important;
}

.s6-division-page--stucco .s6-system-modal__details-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1.22fr) minmax(13rem, .78fr) !important;
    gap: clamp(.9rem, 2vw, 1.45rem) !important;
    align-items: start !important;
}

.s6-division-page--stucco .s6-system-modal__content ul {
    margin: 0 !important;
    padding-left: 1.05rem !important;
    list-style: disc !important;
    border-top: 0 !important;
}

.s6-division-page--stucco .s6-system-modal__content li {
    padding: .08rem 0 !important;
    border-bottom: 0 !important;
}

.s6-division-page--stucco .s6-system-modal__content li::marker {
    color: #d41515;
}

.s6-division-page--stucco .s6-system-modal__uses {
    margin: 0 !important;
    padding: 0 !important;
    border-top: 0 !important;
    font-size: clamp(.78rem, .88vw, .9rem) !important;
    line-height: 1.42 !important;
    font-style: normal !important;
    color: rgba(11, 16, 20, .68) !important;
}

@media (max-width: 900px) {
    .s6-division-page--stucco .s6-system-modal__dialog {
        grid-template-columns: 1fr !important;
    }
    .s6-division-page--stucco .s6-system-modal__media {
        min-height: 14rem !important;
    }
    .s6-division-page--stucco .s6-system-modal__details-grid {
        grid-template-columns: 1fr !important;
    }
}


.s6-division-page .s6-division-hero__inner--v32 {
  width: min(1520px, 100%) !important;
}

.s6-division-page .s6-division-hero__copy {
  max-width: min(1280px, 100%) !important;
}

.s6-division-page .s6-division-hero__copy h1,
.s6-division-page--stucco .s6-division-hero__copy h1,
.s6-division-page--stone-masonry .s6-division-hero__copy h1,
.s6-division-page--stone .s6-division-hero__copy h1,
.s6-division-page--caulking .s6-division-hero__copy h1,
.s6-division-page--landscaping .s6-division-hero__copy h1,
.s6-division-page--architectural-coatings .s6-division-hero__copy h1,
.s6-division-page--exterior-restoration .s6-division-hero__copy h1 {
  max-width: 22ch !important;
  font-size: clamp(2.85rem, 4.3vw, 5.15rem) !important;
  line-height: .94 !important;
  letter-spacing: -.055em !important;
}

.s6-division-page .s6-division-hero__copy h1 span,
.s6-division-page--stucco .s6-division-hero__copy h1 span,
.s6-division-page--stone-masonry .s6-division-hero__copy h1 span,
.s6-division-page--stone .s6-division-hero__copy h1 span,
.s6-division-page--caulking .s6-division-hero__copy h1 span,
.s6-division-page--landscaping .s6-division-hero__copy h1 span,
.s6-division-page--architectural-coatings .s6-division-hero__copy h1 span,
.s6-division-page--exterior-restoration .s6-division-hero__copy h1 span {
  font-size: .74em !important;
  letter-spacing: -.045em !important;
}

.s6-division-page .s6-division-hero__copy > p:not(.s6-section-label) {
  max-width: 44rem !important;
  font-size: clamp(.82rem, .88vw, .9rem) !important;
  line-height: 1.55 !important;
}

.s6-division-page .s6-division-hero .s6-green-button,
.s6-division-page .s6-division-hero .s6-outline-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: clamp(13.25rem, 16vw, 15.5rem) !important;
  min-height: 3.25rem !important;
  margin: 0 !important;
  padding: .95rem 1.35rem !important;
  border-radius: 999px !important;
  font-size: .68rem !important;
  font-weight: 900 !important;
  letter-spacing: .14em !important;
  line-height: 1 !important;
  text-align: center !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  box-sizing: border-box !important;
}

.s6-division-page .s6-division-hero .s6-green-button {
  background: var(--s6-division-theme-accent, var(--s6-green)) !important;
  border: 1px solid var(--s6-division-theme-accent, var(--s6-green)) !important;
  color: #fff !important;
}

.s6-division-page .s6-division-hero .s6-green-button:hover,
.s6-division-page .s6-division-hero .s6-green-button:focus-visible {
  background: var(--s6-division-theme-accent, var(--s6-green)) !important;
  border-color: var(--s6-division-theme-accent, var(--s6-green)) !important;
  color: #fff !important;
  transform: translateY(-2px) !important;
}

.s6-division-page .s6-division-hero .s6-outline-button {
  background: #fff !important;
  border: 1px solid #fff !important;
  color: #11150f !important;
}

.s6-division-page .s6-division-hero .s6-outline-button:hover,
.s6-division-page .s6-division-hero .s6-outline-button:focus-visible {
  background: var(--s6-division-theme-accent, var(--s6-green)) !important;
  border-color: var(--s6-division-theme-accent, var(--s6-green)) !important;
  color: #fff !important;
  transform: translateY(-2px) !important;
}

@media (max-width: 680px) {
  .s6-division-page .s6-division-hero__copy h1,
  .s6-division-page--stucco .s6-division-hero__copy h1,
  .s6-division-page--stone-masonry .s6-division-hero__copy h1,
  .s6-division-page--stone .s6-division-hero__copy h1,
  .s6-division-page--caulking .s6-division-hero__copy h1,
  .s6-division-page--landscaping .s6-division-hero__copy h1,
  .s6-division-page--architectural-coatings .s6-division-hero__copy h1,
  .s6-division-page--exterior-restoration .s6-division-hero__copy h1 {
    max-width: 15.5ch !important;
    font-size: clamp(2.35rem, 10.5vw, 3.5rem) !important;
    line-height: .97 !important;
  }

  .s6-division-page .s6-division-hero__copy > p:not(.s6-section-label) {
    font-size: .86rem !important;
    line-height: 1.5 !important;
  }

  .s6-division-page .s6-division-hero .s6-green-button,
  .s6-division-page .s6-division-hero .s6-outline-button {
    width: 100% !important;
    min-width: 0 !important;
  }
}


.s6-division-page--stucco { --s6-eyebrow-accent: #b9aa8f; }
.s6-division-page--stone-masonry,
.s6-stone-trade-page { --s6-eyebrow-accent: #6f7476; }
.s6-division-page--caulking,
.s6-caulking-trade-page { --s6-eyebrow-accent: #5f6f7b; }
.s6-division-page--landscaping,
.s6-landscape-page { --s6-eyebrow-accent: #6f9f2f; }
.s6-division-page--architectural-coatings { --s6-eyebrow-accent: #6b4fa3; }
.s6-division-page--exterior-restoration { --s6-eyebrow-accent: #c2784f; }

.s6-division-page .s6-division-hero .s6-green-button,
.s6-division-page .s6-division-hero .s6-outline-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: clamp(13.25rem, 16vw, 15.5rem) !important;
  min-height: 3.25rem !important;
  margin: 0 !important;
  padding: .95rem 1.35rem !important;
  border-radius: 999px !important;
  font-size: .68rem !important;
  font-weight: 900 !important;
  letter-spacing: .14em !important;
  line-height: 1 !important;
  text-align: center !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  box-sizing: border-box !important;
}

.s6-division-page .s6-division-hero .s6-green-button,
.s6-division-page .s6-division-hero .s6-green-button:hover,
.s6-division-page .s6-division-hero .s6-green-button:focus-visible {
  background: var(--s6-eyebrow-accent) !important;
  border-color: var(--s6-eyebrow-accent) !important;
  color: #ffffff !important;
}

.s6-division-page .s6-division-hero .s6-outline-button {
  background: #ffffff !important;
  border-color: #ffffff !important;
  color: #11150f !important;
}

.s6-division-page .s6-division-hero .s6-outline-button:hover,
.s6-division-page .s6-division-hero .s6-outline-button:focus-visible {
  background: var(--s6-eyebrow-accent) !important;
  border-color: var(--s6-eyebrow-accent) !important;
  color: #ffffff !important;
}

.s6-division-page .s6-division-hero__copy .s6-section-label,
.s6-division-page .s6-division-hero__copy .s6-section-label span {
  color: var(--s6-eyebrow-accent) !important;
}

.s6-division-page .s6-division-hero__copy .s6-section-label::before {
  background: var(--s6-eyebrow-accent) !important;
  border-color: var(--s6-eyebrow-accent) !important;
}

@media (max-width: 680px) {
  .s6-division-page .s6-division-hero .s6-green-button,
  .s6-division-page .s6-division-hero .s6-outline-button {
    width: 100% !important;
    min-width: 0 !important;
  }
}


.s6-division-page .s6-division-hero--v32 {
    position: relative !important;
    overflow: hidden !important;
}

.s6-division-page .s6-division-hero__inner--v32 {
    position: relative !important;
}

.s6-division-page .s6-division-hero__copy {
    position: relative !important;
    z-index: 2 !important;
}

.s6-division-page .s6-division-hero__actions {
    position: relative !important;
    z-index: 3 !important;
}

.s6-division-page .s6-division-hero__actions .s6-division-hero__panel.s6-division-hero__brand-panel {
    position: absolute !important;
    right: clamp(1rem, 3vw, 3rem) !important;
    top: 50% !important;
    transform: translateY(-42%) !important;
    width: min(24rem, 26vw) !important;
    min-width: 15rem !important;
    flex: none !important;
    margin: 0 !important;
    justify-content: flex-end !important;
    align-items: center !important;
    opacity: 0.18 !important;
    z-index: 1 !important;
}

.s6-division-page .s6-division-hero__actions .s6-division-hero__brand-logo {
    object-position: right center !important;
    opacity: 0.82 !important;
}

.s6-division-page .s6-division-hero__scroll-cue {
    margin-top: clamp(0.35rem, 0.9vw, 0.75rem) !important;
}

@media (max-width: 1180px) {
    .s6-division-page .s6-division-hero__actions .s6-division-hero__panel.s6-division-hero__brand-panel {
        display: none !important;
    }
}

@media (max-width: 680px) {
    .s6-division-page .s6-division-hero__scroll-cue {
        margin-top: 0.85rem !important;
    }
}


.s6-division-page .s6-division-hero__button-group {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(11.5rem, max-content)) !important;
    align-items: center !important;
    justify-content: start !important;
    justify-items: stretch !important;
    column-gap: 0.85rem !important;
    row-gap: clamp(1.15rem, 1.4vw, 1.45rem) !important;
    width: max-content !important;
    max-width: 100% !important;
}

.s6-division-page .s6-division-hero__button-group > .s6-green-button,
.s6-division-page .s6-division-hero__button-group > .s6-outline-button {
    min-width: 11.5rem !important;
    justify-content: center !important;
    text-align: center !important;
}

.s6-division-page .s6-division-hero__button-group > .s6-division-hero__scroll-cue {
    grid-column: 1 / -1 !important;
    justify-self: center !important;
    margin-top: 0 !important;
}

@media (max-width: 680px) {
    .s6-division-page .s6-division-hero__button-group {
        grid-template-columns: 1fr !important;
        width: 100% !important;
        row-gap: 0.85rem !important;
    }

    .s6-division-page .s6-division-hero__button-group > .s6-division-hero__scroll-cue {
        margin-top: 0.45rem !important;
    }
}


@media (min-width: 981px) {
  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock {
    align-items: start !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock > .s6-stone-system-explainer__copy,
  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__visual {
    height: clamp(500px, 50vw, 620px) !important;
    min-height: clamp(500px, 50vw, 620px) !important;
    max-height: clamp(500px, 50vw, 620px) !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock > .s6-stone-system-explainer__copy {
    display: block !important;
    padding: clamp(22px, 2.35vw, 34px) !important;
    overflow: hidden !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock > .s6-stone-system-explainer__visual-stack {
    min-height: 0 !important;
    height: auto !important;
    grid-template-rows: auto auto auto !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-division-explainer__default,
  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-division-explainer__point-system {
    inset: clamp(22px, 2.35vw, 34px) !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    height: auto !important;
    max-height: calc(100% - (clamp(22px, 2.35vw, 34px) * 2)) !important;
    overflow: hidden !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-division-explainer__default > span,
  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-division-explainer__point-system > span {
    margin-bottom: 10px !important;
    font-size: .66rem !important;
    letter-spacing: .16em !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock h3 {
    margin-bottom: 12px !important;
    font-size: clamp(1.65rem, 2.55vw, 3.05rem) !important;
    line-height: 1.02 !important;
    letter-spacing: -.055em !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock p {
    margin-bottom: clamp(12px, 1.4vw, 20px) !important;
    font-size: clamp(.84rem, .82vw, .94rem) !important;
    line-height: 1.48 !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__overview-panel {
    margin-top: 4px !important;
    padding: clamp(12px, 1.1vw, 16px) !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__detail-grid {
    margin-top: auto !important;
    gap: 9px !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel {
    padding: clamp(10px, 1vw, 14px) !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__overview-panel h4,
  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel h4 {
    margin-bottom: .48rem !important;
    padding-bottom: .42rem !important;
    font-size: clamp(.6rem, .64vw, .72rem) !important;
    letter-spacing: .09em !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__overview-points,
  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel ul {
    gap: .32rem !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__overview-points li,
  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel li {
    font-size: clamp(.68rem, .7vw, .78rem) !important;
    line-height: 1.24 !important;
    padding-left: .68rem !important;
  }
}


@media (min-width: 981px) {
  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock {
    align-items: stretch !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock > .s6-stone-system-explainer__copy,
  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock > .s6-stone-system-explainer__visual-stack {
    height: clamp(455px, 37vw, 545px) !important;
    min-height: clamp(455px, 37vw, 545px) !important;
    max-height: clamp(455px, 37vw, 545px) !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock > .s6-stone-system-explainer__copy {
    display: grid !important;
    position: relative !important;
    padding: clamp(20px, 2.05vw, 30px) !important;
    overflow: hidden !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock > .s6-stone-system-explainer__visual-stack {
    display: grid !important;
    grid-template-rows: minmax(0, 1fr) 56px 24px !important;
    gap: 10px !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__visual {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    overflow: hidden !important;
    background-position: center !important;
    background-size: cover !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__pills {
    align-self: end !important;
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 10px !important;
    height: 56px !important;
    min-height: 56px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-explainer-hotspot {
    position: relative !important;
    inset: auto !important;
    transform: none !important;
    width: 100% !important;
    height: 56px !important;
    min-height: 56px !important;
    max-height: 56px !important;
    padding: 8px 8px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    border-radius: 0 !important;
    text-align: center !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-explainer-hotspot span {
    position: static !important;
    inset: auto !important;
    transform: none !important;
    width: auto !important;
    height: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    display: block !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    color: inherit !important;
    font-size: clamp(.56rem, .58vw, .66rem) !important;
    line-height: 1.12 !important;
    font-weight: 900 !important;
    letter-spacing: .085em !important;
    text-transform: uppercase !important;
    white-space: normal !important;
    text-align: center !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__hint {
    height: 24px !important;
    min-height: 24px !important;
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
    overflow: hidden !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__hint p {
    margin: 0 !important;
    font-size: .72rem !important;
    line-height: 1 !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-division-explainer__default,
  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-division-explainer__point-system {
    inset: clamp(20px, 2.05vw, 30px) !important;
    display: flex !important;
    flex-direction: column !important;
    height: auto !important;
    max-height: calc(100% - (clamp(20px, 2.05vw, 30px) * 2)) !important;
    overflow: hidden !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-division-explainer__default > span,
  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-division-explainer__point-system > span {
    margin-bottom: 8px !important;
    font-size: .62rem !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock h3 {
    margin-bottom: 10px !important;
    font-size: clamp(1.45rem, 2.15vw, 2.55rem) !important;
    line-height: 1.02 !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock p {
    margin-bottom: clamp(10px, 1.05vw, 16px) !important;
    font-size: clamp(.8rem, .78vw, .9rem) !important;
    line-height: 1.42 !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__overview-panel {
    margin-top: auto !important;
    padding: clamp(10px, .95vw, 14px) !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__detail-grid {
    margin-top: auto !important;
    gap: 8px !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel {
    padding: clamp(8px, .82vw, 12px) !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__overview-panel h4,
  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel h4 {
    margin-bottom: .38rem !important;
    padding-bottom: .34rem !important;
    font-size: clamp(.56rem, .58vw, .66rem) !important;
    letter-spacing: .075em !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__overview-points,
  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel ul {
    gap: .26rem !important;
  }

  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__overview-points li,
  .s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel li {
    font-size: clamp(.62rem, .64vw, .72rem) !important;
    line-height: 1.18 !important;
    padding-left: .62rem !important;
  }
}


.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock p {
  font-size: clamp(1.125rem, 1.15vw, 1.25rem) !important;
  line-height: 1.56 !important;
}

.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__overview-points li,
.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel li {
  font-size: clamp(.95rem, .98vw, 1.1rem) !important;
  line-height: 1.36 !important;
}


.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock p {
  font-size: clamp(1rem, 1.02vw, 1.08rem) !important;
  line-height: 1.58 !important;
}

.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__overview-points li,
.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.s6-explainer-stone-lock .s6-stone-system-explainer__detail-panel li {
  font-size: clamp(.82rem, .84vw, .94rem) !important;
  line-height: 1.3 !important;
}


.s6-division-page--stone-masonry .s6-stone-baseline-explainer .s6-division-explainer__visual {
  background:
    linear-gradient(180deg, rgba(3, 4, 3, .28), rgba(3, 4, 3, .46)),
    var(--s6-division-detail-bg) center/cover no-repeat !important;
}
.s6-division-page--stone-masonry .s6-stone-baseline-explainer .s6-division-explainer__visual::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  display: block !important;
  height: auto !important;
  background:
    linear-gradient(180deg, rgba(3, 4, 3, .42), rgba(3, 4, 3, .62)),
    radial-gradient(circle at 50% 46%, rgba(var(--s6-explainer-accent-rgb, 142,198,64), .10), transparent 52%) !important;
  pointer-events: none !important;
}
.s6-division-page--stone-masonry .s6-stone-baseline-explainer.has-cutout .s6-division-explainer__visual::after {
  background:
    linear-gradient(180deg, rgba(3, 4, 3, .48), rgba(3, 4, 3, .68)),
    radial-gradient(circle at 50% 46%, rgba(var(--s6-explainer-accent-rgb, 142,198,64), .12), transparent 52%) !important;
}
.s6-division-page--stone-masonry .s6-stone-baseline-explainer [data-s6-explainer-cutout] {
  z-index: 4 !important;
  filter: drop-shadow(0 28px 38px rgba(0,0,0,.5)) !important;
}


#division-explainer .s6-stone-system-explainer .s6-stone-system-explainer__visual,
#division-explainer .s6-stone-system-explainer .s6-division-explainer__visual,
#division-explainer .s6-stone-baseline-explainer .s6-division-explainer__visual {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
  background-image: var(--s6-division-detail-bg) !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}

#division-explainer .s6-stone-system-explainer .s6-stone-system-explainer__visual::before,
#division-explainer .s6-stone-system-explainer .s6-division-explainer__visual::before,
#division-explainer .s6-stone-baseline-explainer .s6-division-explainer__visual::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: auto !important;
  height: auto !important;
  border: 0 !important;
  background:
    radial-gradient(circle at 50% 45%, rgba(142, 196, 63, .12), rgba(0, 0, 0, 0) 44%),
    linear-gradient(180deg, rgba(0, 0, 0, .46) 0%, rgba(0, 0, 0, .62) 58%, rgba(0, 0, 0, .74) 100%) !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

#division-explainer .s6-stone-system-explainer .s6-stone-system-explainer__visual::after,
#division-explainer .s6-stone-system-explainer .s6-division-explainer__visual::after,
#division-explainer .s6-stone-baseline-explainer .s6-division-explainer__visual::after {
  content: "" !important;
  position: absolute !important;
  inset: 14px !important;
  display: block !important;
  width: auto !important;
  height: auto !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  background: transparent !important;
  z-index: 2 !important;
  pointer-events: none !important;
}

#division-explainer .s6-stone-system-explainer [data-s6-explainer-cutout],
#division-explainer .s6-stone-baseline-explainer [data-s6-explainer-cutout],
#division-explainer .s6-stone-system-explainer__cutout {
  position: absolute !important;
  z-index: 4 !important;
  filter: drop-shadow(0 28px 42px rgba(0,0,0,.58)) !important;
}


.s6-division-page--stone-masonry #division-explainer .s6-stone-baseline-explainer:not(.has-cutout) .s6-division-explainer__visual,
.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer:not(.has-cutout) .s6-stone-system-explainer__visual {
  background: var(--s6-division-detail-bg) center/cover no-repeat !important;
  background-image: var(--s6-division-detail-bg) !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}

.s6-division-page--stone-masonry #division-explainer .s6-stone-baseline-explainer:not(.has-cutout) .s6-division-explainer__visual::before,
.s6-division-page--stone-masonry #division-explainer .s6-stone-baseline-explainer:not(.has-cutout) .s6-division-explainer__visual::after,
.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer:not(.has-cutout) .s6-stone-system-explainer__visual::before,
.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer:not(.has-cutout) .s6-stone-system-explainer__visual::after {
  content: none !important;
  display: none !important;
}

.s6-division-page--stone-masonry #division-explainer .s6-stone-baseline-explainer.has-cutout .s6-division-explainer__visual,
.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.has-cutout .s6-stone-system-explainer__visual {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
  background-image: var(--s6-division-detail-bg) !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}

.s6-division-page--stone-masonry #division-explainer .s6-stone-baseline-explainer.has-cutout .s6-division-explainer__visual::before,
.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.has-cutout .s6-stone-system-explainer__visual::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: auto !important;
  height: auto !important;
  border: 0 !important;
  background:
    radial-gradient(circle at 50% 45%, rgba(142, 196, 63, .12), rgba(0, 0, 0, 0) 44%),
    linear-gradient(180deg, rgba(0, 0, 0, .46) 0%, rgba(0, 0, 0, .62) 58%, rgba(0, 0, 0, .74) 100%) !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

.s6-division-page--stone-masonry #division-explainer .s6-stone-baseline-explainer.has-cutout .s6-division-explainer__visual::after,
.s6-division-page--stone-masonry #division-explainer .s6-stone-system-explainer.has-cutout .s6-stone-system-explainer__visual::after {
  content: "" !important;
  position: absolute !important;
  inset: 14px !important;
  display: block !important;
  width: auto !important;
  height: auto !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  background: transparent !important;
  z-index: 2 !important;
  pointer-events: none !important;
}


.s6-division-page--stone-masonry .s6-stone-product-card__image[data-s6-stucco-image-lightbox] {
  cursor: zoom-in;
}

.s6-division-page--stone-masonry .s6-stone-product-card__image[data-s6-stucco-image-lightbox]:focus-visible {
  outline: 2px solid rgba(255,255,255,.92);
  outline-offset: 4px;
}


.s6-division-page--stone-masonry .s6-stone-element-card--has-image .s6-stone-element-card__visual,
.s6-stone-trade-page .s6-stone-element-card--has-image .s6-stone-element-card__visual {
    background:
        linear-gradient(180deg, rgba(20,24,23,.08), rgba(20,24,23,.42)),
        var(--s6-stone-element-image) center/cover no-repeat !important;
}

.s6-division-page--stone-masonry .s6-stone-element-card--has-image .s6-stone-element-card__visual span,
.s6-stone-trade-page .s6-stone-element-card--has-image .s6-stone-element-card__visual span {
    opacity: 0 !important;
}


.s6-division-page--stone-masonry .s6-stone-product-card,
.s6-division-page--stone-masonry .s6-stone-product-card:hover,
.s6-division-page--stone-masonry .s6-stone-product-card:focus-within,
.s6-division-page--stone-masonry .s6-stone-element-card,
.s6-division-page--stone-masonry .s6-stone-element-card:hover,
.s6-division-page--stone-masonry .s6-stone-element-card:focus-within,
.s6-stone-trade-page .s6-stone-element-card,
.s6-stone-trade-page .s6-stone-element-card:hover,
.s6-stone-trade-page .s6-stone-element-card:focus-within {
  transform: none !important;
}

.s6-division-page--stone-masonry .s6-stone-product-card__image {
  overflow: hidden;
  background-image: none !important;
  transform: none !important;
  filter: none !important;
}

.s6-division-page--stone-masonry .s6-stone-product-card__image::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: var(--s6-stone-product-bg);
  background-size: cover;
  background-position: center;
  transform: translateY(0) scale(1);
  transition: transform .38s ease, filter .38s ease;
  z-index: 0;
}

.s6-division-page--stone-masonry .s6-stone-product-card:hover .s6-stone-product-card__image,
.s6-division-page--stone-masonry .s6-stone-product-card:focus-within .s6-stone-product-card__image {
  transform: none !important;
  filter: none !important;
}

.s6-division-page--stone-masonry .s6-stone-product-card:hover .s6-stone-product-card__image::before,
.s6-division-page--stone-masonry .s6-stone-product-card:focus-within .s6-stone-product-card__image::before {
  transform: translateY(-10px) scale(1.035);
  filter: saturate(1.08) contrast(1.05);
}

.s6-division-page--stone-masonry .s6-stone-product-card__image::after {
  z-index: 1;
  pointer-events: none;
}

.s6-division-page--stone-masonry .s6-stone-product-card__image > span {
  position: relative;
  z-index: 2;
}

.s6-division-page--stone-masonry .s6-stone-element-card__visual,
.s6-stone-trade-page .s6-stone-element-card__visual,
.s6-division-page--stone-masonry .s6-stone-element-card:hover .s6-stone-element-card__visual,
.s6-division-page--stone-masonry .s6-stone-element-card:focus-within .s6-stone-element-card__visual,
.s6-stone-trade-page .s6-stone-element-card:hover .s6-stone-element-card__visual,
.s6-stone-trade-page .s6-stone-element-card:focus-within .s6-stone-element-card__visual {
  transform: none !important;
}

.s6-division-page--stone-masonry .s6-stone-element-card--has-image .s6-stone-element-card__visual,
.s6-stone-trade-page .s6-stone-element-card--has-image .s6-stone-element-card__visual {
  overflow: hidden;
  background: linear-gradient(180deg, rgba(20,24,23,.08), rgba(20,24,23,.42)) !important;
}

.s6-division-page--stone-masonry .s6-stone-element-card--has-image .s6-stone-element-card__visual::before,
.s6-stone-trade-page .s6-stone-element-card--has-image .s6-stone-element-card__visual::before {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--s6-stone-element-image) center/cover no-repeat;
  transform: translateY(0) scale(1);
  transition: transform .35s ease, filter .35s ease;
  z-index: 0;
}

.s6-division-page--stone-masonry .s6-stone-element-card--has-image:hover .s6-stone-element-card__visual::before,
.s6-division-page--stone-masonry .s6-stone-element-card--has-image:focus-within .s6-stone-element-card__visual::before,
.s6-stone-trade-page .s6-stone-element-card--has-image:hover .s6-stone-element-card__visual::before,
.s6-stone-trade-page .s6-stone-element-card--has-image:focus-within .s6-stone-element-card__visual::before {
  transform: translateY(-8px) scale(1.035);
  filter: saturate(1.06) contrast(1.04);
}

.s6-division-page--stone-masonry .s6-stone-element-card--has-image .s6-stone-element-card__visual span,
.s6-stone-trade-page .s6-stone-element-card--has-image .s6-stone-element-card__visual span {
  position: relative;
  z-index: 1;
}

/* Stone architectural elements: image lightbox affordance */
.s6-division-page--stone-masonry .s6-stone-element-card--has-image[data-s6-stucco-image-lightbox] {
  cursor: pointer;
}

.s6-division-page--stone-masonry .s6-stone-element-card--has-image[data-s6-stucco-image-lightbox]:focus-visible {
  outline: 2px solid var(--s6-division-color, #8EC43F);
  outline-offset: 4px;
}

.s6-division-card {
  min-height: 220px;
}

.s6-division-card .s6-division-card__content {
  max-width: calc(100% - 2.7rem);
}

.s6-division-card .s6-division-card__title {
  max-width: 100%;
  font-size: clamp(2.05rem, 3vw, 4.15rem);
  overflow-wrap: anywhere;
}

.s6-division-card__title-main,
.s6-division-card__title-sub {
  max-width: 100%;
  white-space: normal;
}

@media (max-width: 1180px) {
  .s6-hero.is-revealed:not(.is-tearing):not(.is-reversing) .s6-division-grid {
    grid-auto-rows: minmax(210px, auto);
    padding-bottom: 96px;
    overflow: visible;
  }

  .s6-division-card {
    min-height: 210px;
  }

  .s6-division-card .s6-division-card__content {
    left: 1.45rem;
    right: 1.45rem;
    bottom: 1.45rem;
  }

  .s6-division-card .s6-division-card__title {
    font-size: clamp(1.75rem, 4.6vw, 3.05rem);
    line-height: .98;
  }
}

@media (max-width: 760px) {
  .s6-hero.is-revealed:not(.is-tearing):not(.is-reversing) .s6-division-grid {
    grid-auto-rows: minmax(235px, auto);
    padding-bottom: 54px;
    overflow-y: auto;
  }

  .s6-division-card {
    min-height: 235px;
  }

  .s6-division-card .s6-division-card__content {
    left: 1.25rem;
    right: 1.25rem;
    bottom: 1.3rem;
  }

  .s6-division-card .s6-division-card__title {
    font-size: clamp(1.65rem, 10vw, 2.75rem);
    line-height: 1;
    letter-spacing: -.04em;
  }

  .s6-division-card__title-sub {
    font-size: clamp(1.05rem, 6vw, 1.85rem);
  }
}

.s6-single-project-gallery-modal__stage {
  position: relative !important;
  display: grid !important;
  align-items: center !important;
  grid-template-columns: minmax(42px, 5vw) minmax(0, 1fr) minmax(42px, 5vw) !important;
  gap: clamp(8px, 1.4vw, 18px) !important;
  min-width: 0 !important;
  padding: 0 clamp(12px, 2vw, 24px) !important;
}

.s6-single-project-gallery-modal__stage .s6-project-gallery-modal__image {
  grid-column: 2 !important;
  min-width: 0 !important;
}

.s6-single-project-gallery-modal__nav {
  position: relative !important;
  z-index: 4 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: clamp(40px, 4.6vw, 56px) !important;
  height: clamp(40px, 4.6vw, 56px) !important;
  padding: 0 !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  border-radius: 999px !important;
  background: rgba(0,0,0,.42) !important;
  color: #fff !important;
  font-size: clamp(2rem, 4vw, 3.2rem) !important;
  font-weight: 300 !important;
  line-height: .72 !important;
  cursor: pointer !important;
  transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease !important;
}

.s6-single-project-gallery-modal__nav:hover,
.s6-single-project-gallery-modal__nav:focus-visible {
  border-color: rgba(142,196,63,.82) !important;
  background: #8ec43f !important;
  color: #10110f !important;
  transform: translateY(-1px) !important;
  outline: none !important;
}

.s6-single-project-gallery-modal__nav--prev {
  grid-column: 1 !important;
  justify-self: end !important;
}

.s6-single-project-gallery-modal__nav--next {
  grid-column: 3 !important;
  justify-self: start !important;
}

.s6-single-project-gallery-modal__count {
  margin: 0 !important;
  color: rgba(255,255,255,.62) !important;
  font-size: 11px !important;
  font-weight: 850 !important;
  letter-spacing: .16em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
}

.s6-single-project-gallery-modal__thumbs {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: clamp(10px, 1.4vw, 16px) !important;
  width: min(100%, 860px) !important;
  max-width: calc(100% - clamp(44px, 6.8vw, 84px)) !important;
  margin: 0 auto clamp(20px, 2.6vw, 32px) !important;
  padding: 3px 4px 8px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-behavior: smooth !important;
  -webkit-overflow-scrolling: touch !important;
  scrollbar-width: thin !important;
}

.s6-single-project-gallery-modal__thumbs.is-scrollable {
  justify-content: flex-start !important;
}

.s6-single-project-gallery-modal__thumb {
  flex: 0 0 clamp(68px, 7vw, 96px) !important;
  width: clamp(68px, 7vw, 96px) !important;
  height: clamp(48px, 5vw, 68px) !important;
  display: block !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 2px solid rgba(255,255,255,.14) !important;
  border-radius: 0 !important;
  background: rgba(255,255,255,.06) !important;
  cursor: pointer !important;
  opacity: .58 !important;
  transition: opacity .18s ease, border-color .18s ease, transform .18s ease !important;
}

.s6-single-project-gallery-modal__thumb img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center center !important;
}

.s6-single-project-gallery-modal__thumb:hover,
.s6-single-project-gallery-modal__thumb:focus-visible,
.s6-single-project-gallery-modal__thumb.is-active {
  opacity: 1 !important;
  border-color: #8ec43f !important;
  transform: translateY(-1px) !important;
  outline: none !important;
}

@media (max-width: 760px) {
  .s6-single-project-gallery-modal__stage {
    grid-template-columns: 1fr !important;
    padding: 0 !important;
  }

  .s6-single-project-gallery-modal__stage .s6-project-gallery-modal__image {
    grid-column: 1 !important;
  }

  .s6-single-project-gallery-modal__nav {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 42px !important;
    height: 42px !important;
    font-size: 2.15rem !important;
    background: rgba(0,0,0,.58) !important;
  }

  .s6-single-project-gallery-modal__nav:hover,
  .s6-single-project-gallery-modal__nav:focus-visible {
    transform: translateY(-50%) !important;
  }

  .s6-single-project-gallery-modal__nav--prev {
    left: 20px !important;
    justify-self: auto !important;
  }

  .s6-single-project-gallery-modal__nav--next {
    right: 20px !important;
    justify-self: auto !important;
  }

  .s6-single-project-gallery-modal__thumbs {
    justify-content: flex-start !important;
    width: calc(100% - 32px) !important;
    max-width: calc(100% - 32px) !important;
    margin-bottom: 18px !important;
  }

  .s6-single-project-gallery-modal__thumb {
    flex-basis: 68px !important;
    width: 68px !important;
    height: 48px !important;
  }
}

.s6-system-card-canonical-scope.s6-division-page--stucco .s6-system-card {
    background: var(--s6-system-card-bg, #eeece4) !important;
}
.s6-system-card-canonical-scope.s6-division-page--stucco .s6-system-card__visual {
    background: var(--s6-system-visual-bg, #e6e3da) !important;
}
.s6-system-card-canonical-scope.s6-division-page--stucco .s6-system-card__badge {
    color: var(--s6-system-accent, var(--s6-green)) !important;
    border-color: color-mix(in srgb, var(--s6-system-accent, var(--s6-green)) 72%, transparent) !important;
}
.s6-system-card-canonical-scope.s6-division-page--stucco .s6-system-card__rule,
.s6-system-card-canonical-scope.s6-division-page--stucco .s6-system-card__attributes span:before {
    background: var(--s6-system-accent, var(--s6-green)) !important;
}
.s6-system-card-canonical-scope.s6-division-page--stucco .s6-system-card__icon,
.s6-system-card-canonical-scope.s6-division-page--stucco .s6-system-card__label,
.s6-system-card-canonical-scope.s6-division-page--stucco .s6-system-card__kicker {
    color: var(--s6-system-accent, var(--s6-green)) !important;
}
.s6-system-card-canonical-scope.s6-division-page--stucco .s6-system-card:hover,
.s6-system-card-canonical-scope.s6-division-page--stucco .s6-system-card:focus-visible {
    outline-color: color-mix(in srgb, var(--s6-system-accent, var(--s6-green)) 36%, transparent) !important;
}
.s6-system-card-canonical-scope.s6-division-page--stucco .s6-system-card-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}
.s6-system-card-canonical-scope.s6-division-page--stucco .s6-system-card__visual img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    transform: none !important;
    transition: transform .24s ease !important;
}
.s6-system-card-canonical-scope.s6-division-page--stucco .s6-system-card:hover .s6-system-card__visual img,
.s6-system-card-canonical-scope.s6-division-page--stucco .s6-system-card:focus-visible .s6-system-card__visual img {
    transform: scale(1.025) !important;
}

.s6-system-card-canonical-scope.s6-division-page--stucco {
    max-width: 1420px;
    margin-inline: auto;
}

.s6-system-card-canonical-scope.s6-division-page--stucco .s6-system-card-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: clamp(1rem, 1.55vw, 1.35rem) !important;
    border: 0 !important;
    align-items: stretch !important;
}

.s6-system-card-canonical-scope.s6-division-page--stucco .s6-system-card {
    min-height: 34rem !important;
    height: 100% !important;
    padding: clamp(1.25rem, 1.55vw, 1.55rem) !important;
    display: grid !important;
    grid-template-rows: auto auto 13.25rem auto 1fr !important;
    gap: .85rem !important;
    border-radius: 0 !important;
    overflow: hidden !important;
}

.s6-system-card-canonical-scope.s6-division-page--stucco .s6-system-card__visual {
    width: 100% !important;
    min-height: 0 !important;
    height: 13.25rem !important;
    max-height: 13.25rem !important;
    padding: .85rem !important;
    margin: .1rem 0 0 !important;
    border-radius: 0 !important;
    overflow: hidden !important;
}

.s6-system-card-canonical-scope.s6-division-page--stucco .s6-system-card__visual img {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    object-position: center !important;
}

.s6-system-card-canonical-scope.s6-division-page--stucco .s6-system-card__body {
    min-height: 8.4rem !important;
    align-self: start !important;
}

.s6-system-card-canonical-scope.s6-division-page--stucco .s6-system-card__body strong {
    max-width: 11.5rem !important;
}

.s6-system-card-canonical-scope.s6-division-page--stucco .s6-system-card__body small {
    min-height: 3.25rem !important;
}

.s6-system-card-canonical-scope.s6-division-page--stucco .s6-system-card__attributes {
    align-self: end !important;
    margin-top: .15rem !important;
}

@media (max-width: 720px) {
    .s6-system-card-canonical-scope.s6-division-page--stucco {
        max-width: none;
    }
    .s6-system-card-canonical-scope.s6-division-page--stucco .s6-system-card-grid {
        grid-template-columns: 1fr !important;
    }
    .s6-system-card-canonical-scope.s6-division-page--stucco .s6-system-card {
        min-height: auto !important;
        grid-template-rows: auto auto 13rem auto auto !important;
    }
}


.s6-system-card-canonical-scope--locked {
    --s6-system-accent: var(--s6-green, #8EC43F);
    --s6-system-card-bg: #eeece4;
    --s6-system-visual-bg: #e6e3da;
}

.s6-system-card-canonical-scope--locked .s6-system-card-grid,
.s6-system-card-canonical-scope--locked .s6-system-card-grid.s6-system-card-grid--canonical {
    width: min(100%, 1320px) !important;
    margin-inline: auto !important;
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: clamp(1rem, 1.55vw, 1.35rem) !important;
    align-items: stretch !important;
}

.s6-system-card-canonical-scope--locked .s6-system-card {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 31.5rem !important;
    height: 100% !important;
    box-sizing: border-box !important;
    position: relative !important;
    display: grid !important;
    grid-template-rows: auto auto minmax(13.25rem, 13.25rem) auto minmax(4.4rem, auto) !important;
    gap: .85rem !important;
    padding: clamp(1.25rem, 1.55vw, 1.55rem) !important;
    border-radius: 0 !important;
    background: var(--s6-system-card-bg) !important;
    border-top: 1px solid rgba(20,24,22,.18) !important;
    border-left: 1px solid rgba(20,24,22,.14) !important;
    border-right: 1px solid rgba(255,255,255,.48) !important;
    border-bottom: 1px solid rgba(255,255,255,.52) !important;
    box-shadow: inset .18rem .22rem .55rem rgba(20,24,22,.075), inset -.14rem -.16rem .36rem rgba(255,255,255,.42) !important;
    outline: 1px solid rgba(20,24,22,.035) !important;
    outline-offset: -7px !important;
    overflow: hidden !important;
    transform: none !important;
    transition: border-color .22s ease, box-shadow .22s ease, background-color .22s ease, outline-color .22s ease !important;
}

.s6-system-card-canonical-scope--locked .s6-system-card:hover,
.s6-system-card-canonical-scope--locked .s6-system-card:focus-visible {
    transform: none !important;
    outline-color: color-mix(in srgb, var(--s6-system-accent) 52%, transparent) !important;
    border-top-color: rgba(20,24,22,.2) !important;
    border-left-color: rgba(20,24,22,.16) !important;
    border-right-color: rgba(255,255,255,.5) !important;
    border-bottom-color: rgba(255,255,255,.54) !important;
    box-shadow: inset .22rem .26rem .62rem rgba(20,24,22,.09), inset -.16rem -.18rem .4rem rgba(255,255,255,.44) !important;
    cursor: pointer !important;
}

.s6-system-card-canonical-scope--locked .s6-system-card:before,
.s6-system-card-canonical-scope--locked .s6-system-card:after {
    display: none !important;
    content: none !important;
}

.s6-system-card-canonical-scope--locked .s6-system-card__top {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 1rem !important;
    width: 100% !important;
    min-height: 3.25rem !important;
}

.s6-system-card-canonical-scope--locked .s6-system-card__kicker {
    display: block !important;
    margin: 0 0 .38rem !important;
    color: color-mix(in srgb, var(--s6-system-accent) 74%, #202418) !important;
    font-size: .55rem !important;
    font-weight: 900 !important;
    line-height: 1.18 !important;
    letter-spacing: .18em !important;
    text-transform: uppercase !important;
}

.s6-system-card-canonical-scope--locked .s6-system-card__label {
    display: block !important;
    margin: 0 !important;
    color: rgba(20,24,22,.72) !important;
    font-size: clamp(.72rem, .78vw, .86rem) !important;
    font-weight: 800 !important;
    line-height: 1.05 !important;
    letter-spacing: .12em !important;
    text-transform: uppercase !important;
}

.s6-system-card-canonical-scope--locked .s6-system-card__label:before { display: none !important; }

.s6-system-card-canonical-scope--locked .s6-system-card__badge {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 2.2rem !important;
    height: 2.2rem !important;
    flex: 0 0 2.2rem !important;
    border-radius: 0 !important;
    background: transparent !important;
    border: 1px solid color-mix(in srgb, var(--s6-system-accent) 72%, transparent) !important;
    color: var(--s6-system-accent) !important;
    font-size: .9rem !important;
    font-weight: 950 !important;
    letter-spacing: -.04em !important;
    line-height: 1 !important;
}

.s6-system-card-canonical-scope--locked .s6-system-card__rule {
    display: block !important;
    width: 1.15rem !important;
    height: 1px !important;
    background: var(--s6-system-accent) !important;
    opacity: .9 !important;
}

.s6-system-card-canonical-scope--locked .s6-system-card__visual {
    position: relative !important;
    z-index: 1 !important;
    height: 13.25rem !important;
    min-height: 13.25rem !important;
    max-height: 13.25rem !important;
    margin: .1rem 0 0 !important;
    padding: .45rem .2rem .2rem !important;
    border-radius: 0 !important;
    background: var(--s6-system-visual-bg) !important;
    border-top: 1px solid rgba(20,24,22,.13) !important;
    border-left: 1px solid rgba(20,24,22,.1) !important;
    border-right: 1px solid rgba(255,255,255,.42) !important;
    border-bottom: 1px solid rgba(255,255,255,.46) !important;
    box-shadow: inset .18rem .22rem .46rem rgba(20,24,22,.075), inset -.12rem -.14rem .32rem rgba(255,255,255,.34) !important;
    overflow: hidden !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.s6-system-card-canonical-scope--locked .s6-system-card__visual img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
    filter: drop-shadow(0 .85rem 1.4rem rgba(20,24,22,.12)) !important;
    transition: transform .24s ease, filter .24s ease !important;
}

.s6-system-card-canonical-scope--locked .s6-system-card:hover .s6-system-card__visual img,
.s6-system-card-canonical-scope--locked .s6-system-card:focus-visible .s6-system-card__visual img {
    transform: translateY(-.08rem) scale(1.015) !important;
}

.s6-system-card-canonical-scope--locked .s6-system-card__body {
    display: grid !important;
    gap: .36rem !important;
    min-width: 0 !important;
}

.s6-system-card-canonical-scope--locked .s6-system-card__icon {
    width: 1.35rem !important;
    height: 1.35rem !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: var(--s6-system-accent) !important;
    margin-bottom: .05rem !important;
}

.s6-system-card-canonical-scope--locked .s6-system-card__icon:before,
.s6-system-card-canonical-scope--locked .s6-system-card__icon:after {
    content: none !important;
    display: none !important;
}

.s6-system-card-canonical-scope--locked .s6-system-card__icon svg {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    fill: none !important;
    stroke: currentColor !important;
    stroke-width: 1.85 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
    opacity: .98 !important;
}

.s6-system-card-canonical-scope--locked .s6-system-card__body strong {
    display: block !important;
    min-height: 2.8rem !important;
    max-width: 13rem !important;
    color: rgba(20,24,22,.96) !important;
    font-size: clamp(1.12rem, 1.25vw, 1.42rem) !important;
    line-height: .98 !important;
    font-weight: 900 !important;
    letter-spacing: -.055em !important;
    text-transform: uppercase !important;
}

.s6-system-card-canonical-scope--locked .s6-system-card__body small {
    display: -webkit-box !important;
    min-height: 3.25rem !important;
    color: rgba(20,24,22,.66) !important;
    font-size: .7rem !important;
    font-weight: 650 !important;
    line-height: 1.56 !important;
    letter-spacing: .015em !important;
    text-transform: none !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

.s6-system-card-canonical-scope--locked .s6-system-card__attributes {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .42rem !important;
    margin-top: .12rem !important;
    padding: .72rem 0 .2rem !important;
    border-top: 1px solid rgba(20,24,22,.11) !important;
    border-right: 0 !important;
    border-bottom: 0 !important;
    border-left: 0 !important;
    background: transparent !important;
}

.s6-system-card-canonical-scope--locked .s6-system-card__attributes span {
    position: relative !important;
    display: block !important;
    padding-left: .95rem !important;
    border: 0 !important;
    background: transparent !important;
    color: rgba(20,24,22,.72) !important;
    font-size: .56rem !important;
    font-weight: 900 !important;
    line-height: 1.15 !important;
    letter-spacing: .12em !important;
    text-transform: uppercase !important;
}

.s6-system-card-canonical-scope--locked .s6-system-card__attributes span:before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    top: .36em !important;
    width: .42rem !important;
    height: 1px !important;
    background: var(--s6-system-accent) !important;
}

/* All six canonical Systems grids go directly from four columns to one.
   At 720px and below, a single column preserves readable card content. */
@media (min-width: 721px) and (max-width: 1380px) {
    .s6-system-card-canonical-scope--locked .s6-system-card-grid,
    .s6-system-card-canonical-scope--locked .s6-system-card-grid.s6-system-card-grid--canonical {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: clamp(.5rem, 1.2vw, 1rem) !important;
    }
    .s6-system-card-canonical-scope--locked.s6-system-card-canonical-scope .s6-system-card {
        min-height: 0 !important;
        padding: clamp(.75rem, 1.25vw, 1.25rem) !important;
        grid-template-rows: auto auto clamp(100px, 16vw, 200px) auto 1fr !important;
        gap: .65rem !important;
    }
    .s6-system-card-canonical-scope--locked.s6-system-card-canonical-scope .s6-system-card__visual {
        height: clamp(100px, 16vw, 200px) !important;
        min-height: 0 !important;
        max-height: none !important;
    }
    .s6-system-card-canonical-scope--locked.s6-system-card-canonical-scope .s6-system-card__top {
        gap: .4rem !important;
    }
    .s6-system-card-canonical-scope--locked.s6-system-card-canonical-scope .s6-system-card__badge {
        width: 1.6rem !important;
        height: 1.6rem !important;
        flex-basis: 1.6rem !important;
        font-size: .75rem !important;
    }
    .s6-system-card-canonical-scope--locked.s6-system-card-canonical-scope .s6-system-card__body {
        min-height: 0 !important;
    }
    .s6-system-card-canonical-scope--locked.s6-system-card-canonical-scope .s6-system-card__body strong {
        font-size: clamp(1rem, 1.4vw, 1.2rem) !important;
        line-height: 1.1 !important;
        overflow-wrap: anywhere;
    }
    .s6-system-card-canonical-scope--locked.s6-system-card-canonical-scope .s6-system-card__body small {
        display: block !important;
        min-height: 0 !important;
        font-size: .75rem !important;
        -webkit-line-clamp: unset !important;
    }
    .s6-system-card-canonical-scope--locked.s6-system-card-canonical-scope .s6-system-card__attributes span {
        font-size: .625rem !important;
        line-height: 1.35 !important;
        overflow-wrap: anywhere;
    }
}

@media (max-width: 720px) {
    .s6-system-card-canonical-scope--locked .s6-system-card-grid,
    .s6-system-card-canonical-scope--locked .s6-system-card-grid.s6-system-card-grid--canonical {
        grid-template-columns: 1fr !important;
    }
    .s6-system-card-canonical-scope--locked .s6-system-card {
        min-height: auto !important;
        grid-template-rows: auto auto minmax(12.5rem, 12.5rem) auto auto !important;
    }
    .s6-system-card-canonical-scope--locked .s6-system-card__visual {
        height: 12.5rem !important;
        min-height: 12.5rem !important;
        max-height: 12.5rem !important;
    }
}

.s6-division-page--stucco {
  --s6-overview-accent: var(--s6-eyebrow-accent, #b9aa8f);
  --s6-overview-accent-rgb: 185,170,143;
  --s6-overview-bg: #eeeae0;
}

.s6-division-page--stone-masonry,
.s6-stone-trade-page {
  --s6-overview-accent: var(--s6-eyebrow-accent, #6f7476);
  --s6-overview-accent-rgb: 111,116,118;
  --s6-overview-bg: #f0f1ef;
}

.s6-division-page--caulking,
.s6-caulking-trade-page {
  --s6-overview-accent: var(--s6-eyebrow-accent, #5f6f7b);
  --s6-overview-accent-rgb: 95,111,123;
  --s6-overview-bg: #edf3f5;
}

.s6-division-page--landscaping,
.s6-landscape-page {
  --s6-overview-accent: var(--s6-eyebrow-accent, #6f9f2f);
  --s6-overview-accent-rgb: 111,159,47;
  --s6-overview-bg: #f0f5e9;
}

.s6-division-page--architectural-coatings {
  --s6-overview-accent: var(--s6-eyebrow-accent, #6b4fa3);
  --s6-overview-accent-rgb: 107,79,163;
  --s6-overview-bg: #f2eef8;
}

.s6-division-page--exterior-restoration {
  --s6-overview-accent: var(--s6-eyebrow-accent, #c2784f);
  --s6-overview-accent-rgb: 194,120,79;
  --s6-overview-bg: #f4ebe5;
}

.s6-division-page #division-overview.s6-division-opening,
.s6-division-page .s6-division-opening.s6-light-concrete-section {
  display: grid !important;
  grid-template-columns: minmax(18rem, .86fr) minmax(0, 1.14fr) !important;
  gap: clamp(2rem, 6vw, 6rem) !important;
  align-items: center !important;
  margin-top: 0 !important;
  padding-top: clamp(8.5rem, 12vw, 12rem) !important;
  padding-bottom: clamp(7rem, 10vw, 11rem) !important;
  background: transparent !important;
  color: var(--s6-ink, #1f241f) !important;
}

.s6-division-page #division-overview.s6-division-opening::before,
.s6-division-page .s6-division-opening.s6-light-concrete-section::before {
  background:
    radial-gradient(circle at 12% 12%, rgba(var(--s6-overview-accent-rgb), .12), transparent 34%),
    var(--s6-overview-bg, var(--s6-concrete, #e7e2d8)) !important;
}

.s6-division-page #division-overview .s6-division-opening__media,
.s6-division-page .s6-division-opening.s6-light-concrete-section .s6-division-opening__media {
  min-height: clamp(28rem, 50vw, 42rem) !important;
  background: var(--s6-division-intro-bg) center/cover no-repeat !important;
  border: 1px solid rgba(var(--s6-overview-accent-rgb), .24) !important;
  box-shadow:
    0 2rem 5rem rgba(30, 32, 28, .16),
    0 0 0 1px rgba(255,255,255,.28) inset !important;
  position: relative !important;
  overflow: hidden !important;
}

.s6-division-page #division-overview .s6-division-opening__media::after,
.s6-division-page .s6-division-opening.s6-light-concrete-section .s6-division-opening__media::after {
  content: "" !important;
  position: absolute !important;
  inset: 1rem !important;
  border: 1px solid rgba(var(--s6-overview-accent-rgb), .34) !important;
  background: linear-gradient(135deg, rgba(var(--s6-overview-accent-rgb), .10), transparent 54%) !important;
  pointer-events: none !important;
}

.s6-division-page #division-overview .s6-division-opening__copy,
.s6-division-page .s6-division-opening.s6-light-concrete-section .s6-division-opening__copy {
  max-width: 58rem !important;
  color: var(--s6-ink, #1f241f) !important;
}

.s6-division-page #division-overview .s6-division-opening__copy .s6-section-label,
.s6-division-page .s6-division-opening.s6-light-concrete-section .s6-division-opening__copy .s6-section-label {
  color: var(--s6-overview-accent) !important;
}

.s6-division-page #division-overview .s6-division-opening__copy .s6-section-label::before,
.s6-division-page .s6-division-opening.s6-light-concrete-section .s6-division-opening__copy .s6-section-label::before {
  background: var(--s6-overview-accent) !important;
}

.s6-division-page #division-overview .s6-division-opening__copy h2,
.s6-division-page .s6-division-opening.s6-light-concrete-section .s6-division-opening__copy h2 {
  color: var(--s6-ink, #1f241f) !important;
  font-size: clamp(2.4rem, 5vw, 5.6rem) !important;
  line-height: .92 !important;
  letter-spacing: -.065em !important;
  margin: .22em 0 .38em !important;
}

.s6-division-page #division-overview .s6-division-opening__copy p:not(.s6-section-label),
.s6-division-page .s6-division-opening.s6-light-concrete-section .s6-division-opening__copy p:not(.s6-section-label) {
  color: var(--s6-muted-ink, rgba(31,36,31,.72)) !important;
  font-size: clamp(1rem, 1.25vw, 1.14rem) !important;
  line-height: 1.75 !important;
  margin-top: 0 !important;
}

.s6-division-page #division-overview .s6-division-opening__callouts,
.s6-division-page .s6-division-opening.s6-light-concrete-section .s6-division-opening__callouts {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: .75rem !important;
  margin-top: clamp(1.35rem, 2.5vw, 2rem) !important;
}

.s6-division-page #division-overview .s6-overview-callout,
.s6-division-page .s6-division-opening.s6-light-concrete-section .s6-overview-callout {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  min-height: 5.75rem !important;
  padding: 1rem 1.05rem !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.46), rgba(255,255,255,.28)),
    rgba(var(--s6-overview-accent-rgb), .055) !important;
  border: 1px solid rgba(var(--s6-overview-accent-rgb), .22) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.58),
    inset 0 -10px 18px rgba(31,36,31,.035) !important;
}

.s6-division-page #division-overview .s6-overview-callout strong,
.s6-division-page .s6-division-opening.s6-light-concrete-section .s6-overview-callout strong {
  color: var(--s6-overview-accent) !important;
  font-size: clamp(1.1rem, 2vw, 1.55rem) !important;
  line-height: 1 !important;
  font-weight: 750 !important;
  letter-spacing: -.045em !important;
  text-transform: uppercase !important;
}

.s6-division-page #division-overview .s6-overview-callout small,
.s6-division-page .s6-division-opening.s6-light-concrete-section .s6-overview-callout small {
  display: block !important;
  margin-top: .38rem !important;
  color: rgba(31,36,31,.72) !important;
  font-size: .72rem !important;
  font-weight: 700 !important;
  letter-spacing: .12em !important;
  line-height: 1.35 !important;
  text-transform: uppercase !important;
}

@media (max-width: 980px) {
  .s6-division-page #division-overview.s6-division-opening,
  .s6-division-page .s6-division-opening.s6-light-concrete-section {
    grid-template-columns: 1fr !important;
    padding-top: clamp(6rem, 11vw, 8rem) !important;
    padding-bottom: clamp(5rem, 10vw, 7rem) !important;
  }
}

@media (max-width: 620px) {
  .s6-division-page #division-overview .s6-division-opening__callouts,
  .s6-division-page .s6-division-opening.s6-light-concrete-section .s6-division-opening__callouts {
    grid-template-columns: 1fr !important;
  }

  .s6-division-page #division-overview .s6-overview-callout,
  .s6-division-page .s6-division-opening.s6-light-concrete-section .s6-overview-callout {
    min-height: 4.6rem !important;
  }
}


.s6-division-page--stucco { --s6-overview-bg: #eeeae0; }
.s6-division-page--stone-masonry,
.s6-stone-trade-page { --s6-overview-bg: #f0f1ef; }
.s6-division-page--caulking,
.s6-caulking-trade-page { --s6-overview-bg: #edf3f5; }
.s6-division-page--landscaping,
.s6-landscape-page { --s6-overview-bg: #f0f5e9; }
.s6-division-page--architectural-coatings { --s6-overview-bg: #f2eef8; }
.s6-division-page--exterior-restoration { --s6-overview-bg: #f4ebe5; }

.s6-division-page #division-overview.s6-division-opening::before,
.s6-division-page .s6-division-opening.s6-light-concrete-section::before {
  background:
    radial-gradient(circle at 12% 12%, rgba(var(--s6-overview-accent-rgb), .12), transparent 34%),
    var(--s6-overview-bg, var(--s6-concrete, #e7e2d8)) !important;
}


.s6-division-page--caulking #division-overview.s6-caulking-opening,
.s6-division-page--caulking .s6-division-opening.s6-light-concrete-section.s6-caulking-opening {
  border-top: 0 !important;
  border-bottom: 0 !important;
}
.s6-division-page--caulking #division-overview.s6-division-opening,
.s6-division-page--caulking #division-overview.s6-caulking-opening,
.s6-division-page--caulking .s6-division-opening.s6-light-concrete-section.s6-caulking-opening {
  border: 0 !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}

.s6-division-page--caulking #division-overview.s6-division-opening::before,
.s6-division-page--caulking .s6-division-opening.s6-light-concrete-section.s6-caulking-opening::before {
  border: 0 !important;
  box-shadow: none !important;
}



.s6-division-page--caulking #division-overview.s6-caulking-opening,
.s6-division-page--caulking #division-overview.s6-division-opening.s6-caulking-opening,
.s6-division-page--caulking .s6-division-opening.s6-light-concrete-section.s6-caulking-opening {
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
}

.s6-division-page--caulking #division-overview.s6-caulking-opening::before,
.s6-division-page--caulking #division-overview.s6-division-opening.s6-caulking-opening::before,
.s6-division-page--caulking .s6-division-opening.s6-light-concrete-section.s6-caulking-opening::before {
  background:
    radial-gradient(circle at 12% 12%, rgba(var(--s6-overview-accent-rgb), .12), transparent 34%),
    var(--s6-overview-bg, #edf3f5) !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
}

.s6-division-page--caulking #division-overview.s6-caulking-opening::after,
.s6-division-page--caulking #division-overview.s6-division-opening.s6-caulking-opening::after,
.s6-division-page--caulking .s6-division-opening.s6-light-concrete-section.s6-caulking-opening::after {
  content: none !important;
  display: none !important;
}

.s6-division-page--caulking .s6-division-opening,
.s6-division-page--caulking #division-overview.s6-division-opening,
.s6-division-page--caulking #division-overview.s6-light-concrete-section,
.s6-division-page--caulking .s6-caulking-opening,
.s6-division-page--caulking .s6-light-concrete-section.s6-caulking-opening {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  padding: clamp(5rem, 8vw, 8rem) clamp(1.5rem, 6vw, 5.75rem) !important;
  background:
    radial-gradient(circle at 14% 8%, rgba(var(--s6-overview-accent-rgb), .14), transparent 30rem),
    radial-gradient(circle at 88% 16%, rgba(255, 255, 255, .56), transparent 26rem),
    linear-gradient(180deg, #f4f9fb 0%, var(--s6-overview-bg, #edf3f5) 100%) !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
  color: var(--s6-ink, #1f241f) !important;
}

.s6-division-page--caulking #division-overview::before,
.s6-division-page--caulking #division-overview::after,
.s6-division-page--caulking #division-overview.s6-caulking-opening::before,
.s6-division-page--caulking #division-overview.s6-caulking-opening::after,
.s6-division-page--caulking .s6-division-opening.s6-light-concrete-section.s6-caulking-opening::before,
.s6-division-page--caulking .s6-division-opening.s6-light-concrete-section.s6-caulking-opening::after {
  content: none !important;
  display: none !important;
}

.s6-division-page--caulking .s6-caulking-catalogue .s6-caulking-sample-preview {
  --s6-caulk-sample-color: #7f8584;
  --s6-caulk-sample-image: none;
  position: relative !important;
  display: grid !important;
  place-items: center !important;
  background: linear-gradient(180deg, rgba(232, 242, 248, .72), rgba(214, 229, 237, .55)) !important;
  overflow: hidden !important;
  isolation: isolate !important;
}

.s6-division-page--caulking .s6-caulking-catalogue .s6-caulking-sample-preview__base,
.s6-division-page--caulking .s6-caulking-catalogue .s6-caulking-sample-preview__shadow,
.s6-division-page--caulking .s6-caulking-catalogue .s6-caulking-sample-preview__highlight {
  display: none !important;
}

.s6-division-page--caulking .s6-caulking-catalogue .s6-caulking-sample-preview::before,
.s6-division-page--caulking .s6-caulking-catalogue .s6-caulking-sample-preview::after {
  content: "" !important;
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  width: min(78%, 230px) !important;
  aspect-ratio: 1 / 1 !important;
  transform: translate(-50%, -50%) !important;
  pointer-events: none !important;
  transition: transform .35s ease, opacity .35s ease, filter .35s ease !important;
}

.s6-division-page--caulking .s6-caulking-catalogue .s6-caulking-sample-preview::before {
  background:
    radial-gradient(circle at 28% 20%, rgba(255,255,255,.46), rgba(255,255,255,.16) 24%, transparent 43%),
    radial-gradient(circle at 38% 30%, rgba(255,255,255,.20), transparent 38%),
    radial-gradient(circle at 48% 62%, rgba(0,0,0,.18), transparent 43%),
    radial-gradient(circle at 74% 82%, rgba(0,0,0,.14), transparent 55%),
    linear-gradient(135deg, rgba(255,255,255,.14), transparent 31%),
    var(--s6-caulk-sample-color) !important;
  -webkit-mask: var(--s6-caulk-sample-image) center / contain no-repeat !important;
  mask: var(--s6-caulk-sample-image) center / contain no-repeat !important;
  filter: saturate(1.05) contrast(1.04) !important;
  z-index: 0 !important;
}

.s6-division-page--caulking .s6-caulking-catalogue .s6-caulking-sample-preview::after {
  background-image: var(--s6-caulk-sample-image) !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  mix-blend-mode: multiply !important;
  opacity: .62 !important;
  filter: grayscale(1) contrast(1.1) brightness(1.04) !important;
  z-index: 1 !important;
}

.s6-division-page--caulking .s6-caulking-catalogue .s6-caulking-sample-preview span {
  z-index: 2 !important;
}

.s6-division-page--caulking .s6-caulking-catalogue .s6-stone-product-card:hover .s6-caulking-sample-preview::before,
.s6-division-page--caulking .s6-caulking-catalogue .s6-stone-product-card:hover .s6-caulking-sample-preview::after {
  transform: translate(-50%, -53%) scale(1.035) !important;
}


.s6-division-page--caulking .s6-caulking-colour-catalogue {
  --s6-caulk-tab-accent: var(--s6-division-accent, #5f7f8c);
}

.s6-division-page--caulking .s6-caulking-tech-panels {
  margin: 1.4rem 0 1.6rem;
}

.s6-division-page--caulking .s6-caulking-tech-panel {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.35fr);
  gap: clamp(1.2rem, 3vw, 2rem);
  align-items: stretch;
  padding: clamp(1.1rem, 2.4vw, 1.65rem);
  border: 1px solid rgba(34, 75, 87, .14);
  border-radius: 1.25rem;
  background:
    radial-gradient(circle at 0% 0%, rgba(95, 127, 140, .13), transparent 22rem),
    linear-gradient(145deg, rgba(255,255,255,.86), rgba(232,240,243,.62));
  box-shadow: 0 1.2rem 3rem rgba(28, 48, 55, .08), inset 0 1px 0 rgba(255,255,255,.72);
}

.s6-division-page--caulking .s6-caulking-tech-panel.is-hidden {
  display: none !important;
}

.s6-division-page--caulking .s6-caulking-tech-panel__intro {
  display: flex;
  flex-direction: column;
  gap: .55rem;
}

.s6-division-page--caulking .s6-caulking-tech-panel__intro > span {
  width: fit-content;
  border: 1px solid rgba(95, 127, 140, .22);
  border-radius: 999px;
  padding: .32rem .7rem;
  color: var(--s6-caulk-tab-accent);
  background: rgba(255,255,255,.6);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.s6-division-page--caulking .s6-caulking-tech-panel__intro h3 {
  margin: 0;
  color: var(--s6-ink);
  font-size: clamp(1.45rem, 2.5vw, 2.15rem);
  letter-spacing: -.045em;
  line-height: .98;
}

.s6-division-page--caulking .s6-caulking-tech-panel__intro p {
  margin: .2rem 0 0;
  color: var(--s6-muted-ink);
  line-height: 1.72;
}

.s6-division-page--caulking .s6-caulking-tech-panel__columns {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .85rem;
}

.s6-division-page--caulking .s6-caulking-tech-panel__columns > div {
  border: 1px solid rgba(34, 75, 87, .12);
  border-radius: 1rem;
  padding: 1rem;
  background: rgba(255,255,255,.58);
}

.s6-division-page--caulking .s6-caulking-tech-panel__columns h4 {
  margin: 0 0 .7rem;
  color: var(--s6-caulk-tab-accent);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.s6-division-page--caulking .s6-caulking-tech-panel__columns ul {
  display: grid;
  gap: .45rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.s6-division-page--caulking .s6-caulking-tech-panel__columns li {
  position: relative;
  padding-left: 1rem;
  color: var(--s6-muted-ink);
  font-size: .88rem;
  line-height: 1.45;
}

.s6-division-page--caulking .s6-caulking-tech-panel__columns li::before {
  content: "";
  position: absolute;
  left: 0;
  top: .55em;
  width: .38rem;
  height: .38rem;
  border-radius: 999px;
  background: var(--s6-caulk-tab-accent);
  opacity: .78;
}

.s6-division-page--caulking .s6-caulking-colour-grid-label {
  margin: 1.35rem 0 .8rem;
}

.s6-division-page--caulking .s6-caulking-colour-grid-label span {
  color: var(--s6-caulk-tab-accent);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.s6-division-page--caulking .s6-caulking-colour-card {
  cursor: zoom-in;
}

.s6-division-page--caulking .s6-caulking-colour-card .s6-caulking-bead-card__sample {
  position: relative;
  display: block;
  aspect-ratio: 1.4 / 1;
  border-radius: .72rem;
  margin-bottom: 1rem;
  border: 1px solid rgba(20, 24, 22, .12);
  background:
    linear-gradient(180deg, rgba(232, 242, 248, .72), rgba(214, 229, 237, .55));
  box-shadow:
    0 .9rem 1.6rem rgba(20, 24, 22, .16),
    inset 0 1px 0 rgba(255,255,255,.42),
    inset 0 -1px 0 rgba(0,0,0,.08);
  overflow: hidden;
  transform: translateY(-1px);
  isolation: isolate;
}

.s6-division-page--caulking .s6-caulking-colour-card .s6-caulking-bead-card__sample::before,
.s6-division-page--caulking .s6-caulking-colour-card .s6-caulking-bead-card__sample::after,
.s6-stucco-image-lightbox__swatch.s6-caulking-lightbox-bead::before,
.s6-stucco-image-lightbox__swatch.s6-caulking-lightbox-bead::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: min(78%, 230px);
  aspect-ratio: 1 / 1;
  transform: translate(-50%, -50%);
  pointer-events: none;
}

.s6-division-page--caulking .s6-caulking-colour-card .s6-caulking-bead-card__sample::before,
.s6-stucco-image-lightbox__swatch.s6-caulking-lightbox-bead::before {
  background:
    radial-gradient(circle at 28% 20%, rgba(255,255,255,.46), rgba(255,255,255,.16) 24%, transparent 43%),
    radial-gradient(circle at 38% 30%, rgba(255,255,255,.20), transparent 38%),
    radial-gradient(circle at 48% 62%, rgba(0,0,0,.18), transparent 43%),
    radial-gradient(circle at 74% 82%, rgba(0,0,0,.14), transparent 55%),
    linear-gradient(135deg, rgba(255,255,255,.14), transparent 31%),
    var(--s6-caulk-sample-color, var(--s6-swatch)) !important;
  -webkit-mask: var(--s6-caulk-sample-image) center / contain no-repeat;
  mask: var(--s6-caulk-sample-image) center / contain no-repeat;
  filter: saturate(1.05) contrast(1.04);
  z-index: 0;
}

.s6-division-page--caulking .s6-caulking-colour-card .s6-caulking-bead-card__sample::after,
.s6-stucco-image-lightbox__swatch.s6-caulking-lightbox-bead::after {
  background-image: var(--s6-caulk-sample-image);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  mix-blend-mode: multiply;
  opacity: .62;
  filter: grayscale(1) contrast(1.1) brightness(1.04);
  z-index: 1;
}

.s6-division-page--caulking .s6-caulking-colour-card:hover .s6-caulking-bead-card__sample::before,
.s6-division-page--caulking .s6-caulking-colour-card:hover .s6-caulking-bead-card__sample::after,
.s6-division-page--caulking .s6-caulking-colour-card:focus-visible .s6-caulking-bead-card__sample::before,
.s6-division-page--caulking .s6-caulking-colour-card:focus-visible .s6-caulking-bead-card__sample::after {
  transform: translate(-50%, -53%) scale(1.035);
}

.s6-stucco-image-lightbox__swatch.s6-caulking-lightbox-bead {
  position: relative;
  width: min(72vw, 36rem);
  height: min(72vw, 36rem);
  border-radius: 0;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible;
  isolation: isolate;
}

.s6-stucco-image-lightbox__swatch.s6-caulking-lightbox-bead::before,
.s6-stucco-image-lightbox__swatch.s6-caulking-lightbox-bead::after {
  width: min(92%, 30rem);
}

@media (max-width: 980px) {
  .s6-division-page--caulking .s6-caulking-tech-panel,
  .s6-division-page--caulking .s6-caulking-tech-panel__columns {
    grid-template-columns: 1fr;
  }
}


.s6-division-page--caulking #division-products.s6-caulking-catalogue,
.s6-division-page--caulking #division-products.s6-caulking-colour-catalogue,
.s6-division-page--caulking .s6-division-colours.s6-light-concrete-section.s6-caulking-catalogue {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  padding: clamp(4.5rem, 8vw, 7rem) clamp(1.5rem, 6vw, 5.75rem) !important;
  background:
    radial-gradient(circle at 14% 8%, rgba(95, 127, 140, .14), transparent 30rem),
    radial-gradient(circle at 88% 16%, rgba(255, 255, 255, .56), transparent 26rem),
    linear-gradient(180deg, #f4f9fb 0%, #e4edf2 100%) !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
}

.s6-division-page--caulking #division-products.s6-caulking-catalogue::before,
.s6-division-page--caulking #division-products.s6-caulking-catalogue::after,
.s6-division-page--caulking #division-products.s6-caulking-colour-catalogue::before,
.s6-division-page--caulking #division-products.s6-caulking-colour-catalogue::after {
  content: none !important;
  display: none !important;
}

.s6-division-page--caulking #division-products.s6-caulking-catalogue > .s6-division-section-header,
.s6-division-page--caulking #division-products.s6-caulking-catalogue > .s6-colour-filter-bar,
.s6-division-page--caulking #division-products.s6-caulking-catalogue > .s6-caulking-tech-panels,
.s6-division-page--caulking #division-products.s6-caulking-catalogue > .s6-caulking-colour-grid-label,
.s6-division-page--caulking #division-products.s6-caulking-catalogue > .s6-colour-grid {
  width: min(1240px, 100%) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}


#division-explainer .s6-stone-baseline-explainer.has-cutout .s6-division-explainer__visual,
#division-explainer .s6-stone-baseline-explainer.has-cutout .s6-stone-system-explainer__visual {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
  background-image: var(--s6-division-detail-bg) !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}

#division-explainer .s6-stone-baseline-explainer.has-cutout .s6-division-explainer__visual::after,
#division-explainer .s6-stone-baseline-explainer.has-cutout .s6-stone-system-explainer__visual::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: auto !important;
  height: auto !important;
  border: 0 !important;
  background:
    linear-gradient(180deg, rgba(3, 4, 3, .46), rgba(3, 4, 3, .68)),
    radial-gradient(circle at 50% 46%, rgba(var(--s6-explainer-accent-rgb, 142, 198, 64), .12), transparent 52%) !important;
  z-index: 2 !important;
  pointer-events: none !important;
}

#division-explainer .s6-stone-baseline-explainer.has-cutout [data-s6-explainer-cutout] {
  z-index: 4 !important;
  opacity: 1 !important;
  transform: translate(-50%, -50%) scale(1) !important;
  filter: drop-shadow(0 28px 38px rgba(0,0,0,.48)) !important;
}

#division-explainer .s6-stone-baseline-explainer:not(.has-cutout) [data-s6-explainer-cutout] {
  opacity: 0 !important;
}

#division-explainer .s6-stone-baseline-explainer:not(.has-cutout) .s6-division-explainer__visual,
#division-explainer .s6-stone-baseline-explainer:not(.has-cutout) .s6-stone-system-explainer__visual {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
  background: var(--s6-division-detail-bg) center/cover no-repeat !important;
  background-image: var(--s6-division-detail-bg) !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}

#division-explainer .s6-stone-baseline-explainer:not(.has-cutout) .s6-division-explainer__visual::before,
#division-explainer .s6-stone-baseline-explainer:not(.has-cutout) .s6-division-explainer__visual::after,
#division-explainer .s6-stone-baseline-explainer:not(.has-cutout) .s6-stone-system-explainer__visual::before,
#division-explainer .s6-stone-baseline-explainer:not(.has-cutout) .s6-stone-system-explainer__visual::after {
  content: none !important;
  display: none !important;
  background: transparent !important;
  border: 0 !important;
}

#division-explainer .s6-stone-baseline-explainer.has-cutout .s6-division-explainer__visual::before,
#division-explainer .s6-stone-baseline-explainer.has-cutout .s6-stone-system-explainer__visual::before {
  content: none !important;
  display: none !important;
}

#division-explainer .s6-stone-baseline-explainer.has-cutout [data-s6-explainer-cutout] {
  width: min(68%, 470px) !important;
  max-height: 78% !important;
  object-fit: contain !important;
}


.s6-division-page .s6-division-hero--v32 {
  min-height: clamp(860px, 104vh, 1160px) !important;
  display: flex !important;
  align-items: flex-start !important;
  padding-top: 0 !important;
  padding-bottom: clamp(10rem, 16vh, 15rem) !important;
}

.s6-division-page .s6-division-hero__inner--v32 {
  width: min(1520px, 100%) !important;
  margin-top: clamp(12.25rem, 18vh, 15rem) !important;
  transform: none !important;
  align-items: start !important;
}

.s6-division-page .s6-division-hero__copy {
  max-width: min(1280px, 100%) !important;
  transform: none !important;
}

.s6-division-page .s6-division-hero__copy .s6-section-label,
.s6-division-page .s6-division-hero .s6-section-label {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  margin: 0 0 clamp(1rem, 1.8vw, 1.35rem) !important;
  padding: 0 !important;
  font-size: 12px !important;
  line-height: 1 !important;
  letter-spacing: .30em !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.s6-division-page .s6-division-hero__copy .s6-section-label::before,
.s6-division-page .s6-division-hero .s6-section-label::before {
  content: "" !important;
  display: block !important;
  width: 56px !important;
  height: 2px !important;
  flex: 0 0 56px !important;
  border: 0 !important;
}

@media (max-width: 680px) {
  .s6-division-page .s6-division-hero--v32 {
    min-height: 86vh !important;
    padding-top: 0 !important;
    padding-bottom: clamp(5.5rem, 18vw, 7rem) !important;
  }

  .s6-division-page .s6-division-hero__inner--v32 {
    margin-top: clamp(11.75rem, 49vw, 12.5rem) !important;
    transform: none !important;
  }

  .s6-division-page .s6-division-hero__copy .s6-section-label,
  .s6-division-page .s6-division-hero .s6-section-label {
    gap: 12px !important;
    margin-bottom: .95rem !important;
    font-size: 11px !important;
    letter-spacing: .22em !important;
  }

  .s6-division-page .s6-division-hero__copy .s6-section-label::before,
  .s6-division-page .s6-division-hero .s6-section-label::before {
    width: 38px !important;
    flex-basis: 38px !important;
  }
}


.s6-division-page--landscaping #division-explainer .s6-stone-baseline-explainer [data-s6-explainer-cutout] {
  width: min(58%, 390px) !important;
  height: min(68%, 390px) !important;
  max-width: 390px !important;
  max-height: 68% !important;
  object-fit: contain !important;
  object-position: center center !important;
}

.s6-division-page--landscaping #division-explainer .s6-stone-baseline-explainer [data-s6-explainer-cutout].s6-landscape-cutout--water {
  width: min(52%, 350px) !important;
  height: min(62%, 350px) !important;
  max-width: 350px !important;
  max-height: 62% !important;
}


@media (min-width: 1181px) {
  .s6-division-page--landscaping #division-explainer .s6-stone-baseline-explainer.s6-division-explainer {
    align-items: stretch !important;
  }

  .s6-division-page--landscaping #division-explainer .s6-stone-baseline-explainer > .s6-division-explainer__copy,
  .s6-division-page--landscaping #division-explainer .s6-stone-baseline-explainer > [class*="__visual-stack"] {
    height: clamp(540px, 58vh, 660px) !important;
    min-height: clamp(540px, 58vh, 660px) !important;
    max-height: clamp(540px, 58vh, 660px) !important;
    overflow: hidden !important;
  }

  .s6-division-page--landscaping #division-explainer .s6-stone-baseline-explainer .s6-division-explainer__default,
  .s6-division-page--landscaping #division-explainer .s6-stone-baseline-explainer .s6-division-explainer__point-system {
    height: 100% !important;
    min-height: 0 !important;
    grid-template-rows: auto auto auto minmax(0, 1fr) !important;
    overflow: hidden !important;
  }

  .s6-division-page--landscaping #division-explainer .s6-stone-baseline-explainer .s6-division-explainer__point-system h3 {
    font-size: clamp(1.72rem, 2.65vw, 3.05rem) !important;
    line-height: .96 !important;
    max-width: 15ch !important;
  }

  .s6-division-page--landscaping #division-explainer .s6-stone-baseline-explainer .s6-division-explainer__point-system p {
    font-size: clamp(.84rem, .82vw, .94rem) !important;
    line-height: 1.52 !important;
    max-width: 68ch !important;
  }

  .s6-division-page--landscaping #division-explainer .s6-stone-baseline-explainer [class*="__detail-grid"] {
    align-self: end !important;
    min-height: 0 !important;
    overflow: hidden !important;
  }

  .s6-division-page--landscaping #division-explainer .s6-stone-baseline-explainer [class*="__detail-panel"] {
    min-height: 0 !important;
    overflow: hidden !important;
  }

  .s6-division-page--landscaping #division-explainer .s6-stone-baseline-explainer [class*="__detail-panel"] li {
    font-size: clamp(.72rem, .72vw, .84rem) !important;
    line-height: 1.22 !important;
  }
}

.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-swatches {
  display: none !important;
}

.s6-division-page--landscaping .s6-landscape-product-card,
.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  min-height: 0 !important;
  overflow: hidden !important;
  background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(238,244,232,.9)) !important;
  border: 1px solid rgba(31,54,37,.18) !important;
  box-shadow: 0 22px 58px rgba(31,54,37,.12) !important;
  isolation: isolate !important;
}

.s6-division-page--landscaping .s6-landscape-product-card::before,
.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card::before {
  content: none !important;
  display: none !important;
}

.s6-division-page--landscaping .s6-landscape-product-card::after,
.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card::after {
  content: "" !important;
  position: absolute !important;
  left: 1.15rem !important;
  right: 1.15rem !important;
  bottom: 0 !important;
  height: 3px !important;
  background: linear-gradient(90deg, rgba(142,198,64,.9), rgba(142,198,64,0)) !important;
  pointer-events: none !important;
  z-index: 4 !important;
}

.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card__image {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  height: clamp(11rem, 15vw, 14rem) !important;
  min-height: 0 !important;
  z-index: 1 !important;
  background-image: var(--s6-stone-product-bg) !important;
  background-size: cover !important;
  background-position: center !important;
  transform: none !important;
  filter: none !important;
  transition: transform .45s ease, filter .45s ease !important;
}

.s6-division-page--landscaping .s6-landscape-product-card:hover .s6-stone-product-card__image,
.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card:hover .s6-stone-product-card__image {
  transform: scale(1.025) !important;
  filter: saturate(1.04) contrast(1.02) !important;
}

.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card__image::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(180deg, rgba(12,22,14,.02), rgba(12,22,14,.16)) !important;
  pointer-events: none !important;
}

.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card__content {
  position: relative !important;
  z-index: 2 !important;
  margin-top: 0 !important;
  min-height: 0 !important;
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  padding: clamp(1.15rem, 2vw, 1.55rem) !important;
  background: linear-gradient(90deg, rgba(111,159,47,.14) 0 4px, rgba(245,248,241,.96) 4px) !important;
  color: var(--land-ink, #162015) !important;
  text-shadow: none !important;
}

.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card__content h4 {
  color: var(--land-ink, #162015) !important;
  max-width: none !important;
  text-shadow: none !important;
}

.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card__content p {
  color: var(--land-muted, rgba(22,32,21,.68)) !important;
  max-width: none !important;
  text-shadow: none !important;
}

.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card__content small,
.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card__content span {
  color: var(--land-accent, #6f9f2f) !important;
}


/* Landscape manufacturer resources: Stone component, Landscape accent */
.s6-landscape-page .s6-landscape-manufacturer-resources {
  border-color: rgba(142, 198, 64, .34);
}
.s6-landscape-page .s6-landscape-manufacturer-resources::before {
  background:
    radial-gradient(circle at 8% 0%, rgba(142,198,64,.2), transparent 36%),
    linear-gradient(135deg, rgba(255,255,255,.05), transparent 44%);
}
.s6-landscape-page .s6-landscape-manufacturer-resources .s6-section-label {
  color: #8ec640;
}
.s6-landscape-page .s6-landscape-manufacturer-resources .s6-section-label::before {
  background: #8ec640;
}
.s6-landscape-page .s6-landscape-manufacturer-resources .s6-stone-manufacturer-link:hover,
.s6-landscape-page .s6-landscape-manufacturer-resources .s6-stone-manufacturer-link:focus-visible {
  background: #8ec640;
  color: #10100f;
  border-color: #8ec640;
}


/* Caulking manufacturer resources: Stone component, Caulking accent */
.s6-division-page--caulking .s6-caulking-manufacturer-resources {
  border-color: rgba(95, 111, 123, .36);
}
.s6-division-page--caulking .s6-caulking-manufacturer-resources::before {
  background:
    radial-gradient(circle at 8% 0%, rgba(95,111,123,.22), transparent 36%),
    linear-gradient(135deg, rgba(255,255,255,.05), transparent 44%);
}
.s6-division-page--caulking .s6-caulking-manufacturer-resources .s6-section-label {
  color: var(--caulk-slate, #5f6f7b) !important;
}
.s6-division-page--caulking .s6-caulking-manufacturer-resources .s6-section-label::before {
  background: var(--caulk-slate, #5f6f7b) !important;
}
.s6-division-page--caulking .s6-caulking-manufacturer-resources .s6-stone-manufacturer-link:hover,
.s6-division-page--caulking .s6-caulking-manufacturer-resources .s6-stone-manufacturer-link:focus-visible {
  background: var(--caulk-slate, #5f6f7b);
  color: #fff;
  border-color: var(--caulk-slate, #5f6f7b);
}



/* Coatings manufacturer resources: Stone component, Coatings accent */
.s6-division-page--architectural-coatings .s6-coatings-manufacturer-resources {
  border-color: rgba(107, 79, 163, .36);
}
.s6-division-page--architectural-coatings .s6-coatings-manufacturer-resources::before {
  background:
    radial-gradient(circle at 8% 0%, rgba(107,79,163,.22), transparent 36%),
    linear-gradient(135deg, rgba(255,255,255,.05), transparent 44%);
}
.s6-division-page--architectural-coatings .s6-coatings-manufacturer-resources .s6-section-label {
  color: var(--s6-coatings-purple, #6b4fa3) !important;
}
.s6-division-page--architectural-coatings .s6-coatings-manufacturer-resources .s6-section-label::before {
  background: var(--s6-coatings-purple, #6b4fa3) !important;
}
.s6-division-page--architectural-coatings .s6-coatings-manufacturer-resources .s6-stone-manufacturer-link:hover,
.s6-division-page--architectural-coatings .s6-coatings-manufacturer-resources .s6-stone-manufacturer-link:focus-visible {
  background: var(--s6-coatings-purple, #6b4fa3);
  color: #fff;
  border-color: var(--s6-coatings-purple, #6b4fa3);
}
.s6-application-form .s6-file-upload--application {
  grid-column: span 2;
  justify-content: flex-start;
  gap: 14px;
}

.s6-application-form .s6-file-upload--application strong {
  white-space: nowrap;
}

.s6-application-form .s6-file-upload--application span {
  color: rgba(255, 255, 255, .85);
  font-size: 10px;
  line-height: 1.4;
  letter-spacing: .08em;
}


.s6-application-form .s6-file-upload--application {
  border-color: rgba(255, 255, 255, .24);
  background: rgba(255, 255, 255, .06);
  color: rgba(255, 255, 255, .85);
}

.s6-application-form .s6-file-upload--application strong {
  background: #fff;
  color: rgba(0, 0, 0, .72);
  border-color: rgba(255, 255, 255, .4);
}

@media (max-width: 680px) {
  .s6-application-form .s6-file-upload--application {
    grid-column: 1 / -1;
    align-items: flex-start;
    flex-direction: column;
  }
}

/* Landscape components: make full cards open the image-only lightbox. */
.s6-division-page--landscaping .s6-landscape-product-card[data-s6-stucco-image-lightbox],
.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card[data-s6-stucco-image-lightbox] {
  cursor: zoom-in !important;
}

.s6-division-page--landscaping .s6-landscape-product-card[data-s6-stucco-image-lightbox]:focus-visible,
.s6-division-page--landscaping .s6-landscape-catalogue .s6-stone-product-card[data-s6-stucco-image-lightbox]:focus-visible {
  outline: 2px solid rgba(142,198,64,.92) !important;
  outline-offset: 4px !important;
  border-color: rgba(142,198,64,.68) !important;
}

.s6-coatings-catalogue .s6-coatings-product-card {
  padding: 0;
  overflow: hidden;
}

.s6-coatings-catalogue .s6-coatings-product-card .s6-stone-product-card__image {
  min-height: clamp(150px, 15vw, 215px);
  margin: 0;
  border: 0;
  background-color: transparent;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  box-shadow: none;
  transform: translateY(0) translateZ(0);
}

.s6-coatings-catalogue .s6-coatings-product-card:hover .s6-stone-product-card__image {
  transform: translateY(-6px) scale(1.025);
  filter: saturate(1.08) contrast(1.04);
  box-shadow: none;
}

.s6-coatings-catalogue .s6-coatings-product-card .s6-stone-product-card__image::after {
  display: none;
}

.s6-coatings-catalogue .s6-coatings-product-card .s6-stone-product-card__body {
  padding: clamp(1rem, 1.4vw, 1.2rem);
  padding-top: .95rem;
}


.s6-division-page--exterior-restoration .s6-division-cta--v32 {
  background: #11130f !important;
  color: #fff !important;
  border: 0 !important;
  box-shadow: none !important;
  margin-bottom: 0 !important;
}

.s6-division-page--exterior-restoration .s6-division-cta--v32 h2 {
  color: #fff !important;
}

.s6-division-page--exterior-restoration .s6-division-cta--v32 p {
  color: rgba(255,255,255,.72) !important;
}

.s6-division-page--exterior-restoration .s6-division-cta--v32 .s6-section-label {
  color: var(--s6-restoration-copper, #c2784f) !important;
}

.s6-division-page--exterior-restoration .s6-division-cta--v32 .s6-section-label::before {
  background: var(--s6-restoration-copper, #c2784f) !important;
}

.s6-division-page--exterior-restoration + .s6-footer {
  margin-top: 0 !important;
}

.s6-division-page--exterior-restoration .s6-restoration-product-card[data-s6-stucco-image-lightbox] {
  cursor: zoom-in !important;
  padding: 0 !important;
  overflow: hidden !important;
}

.s6-division-page--exterior-restoration .s6-restoration-product-card[data-s6-stucco-image-lightbox]:focus-visible {
  outline: 2px solid rgba(194,120,79,.92) !important;
  outline-offset: 4px !important;
  border-color: rgba(194,120,79,.68) !important;
}

.s6-division-page--exterior-restoration .s6-restoration-product-card .s6-stone-product-card__image {
  min-height: clamp(150px, 15vw, 215px) !important;
  margin: 0 !important;
  border: 0 !important;
  background-color: transparent !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  box-shadow: none !important;
  transform: translateY(0) translateZ(0) !important;
}

.s6-division-page--exterior-restoration .s6-restoration-product-card:hover .s6-stone-product-card__image,
.s6-division-page--exterior-restoration .s6-restoration-product-card:focus-visible .s6-stone-product-card__image {
  transform: translateY(-6px) scale(1.025) !important;
  filter: saturate(1.08) contrast(1.04) !important;
  box-shadow: none !important;
}

.s6-division-page--exterior-restoration .s6-restoration-product-card .s6-stone-product-card__content {
  padding: clamp(1.05rem, 2vw, 1.35rem) !important;
}

.s6-division-page--exterior-restoration .s6-restoration-division-resources {
  border-color: rgba(194, 120, 79, .38);
}
.s6-division-page--exterior-restoration .s6-restoration-division-resources::before {
  background:
    radial-gradient(circle at 8% 0%, rgba(194,120,79,.22), transparent 36%),
    linear-gradient(135deg, rgba(255,255,255,.05), transparent 44%);
}
.s6-division-page--exterior-restoration .s6-restoration-division-resources .s6-section-label {
  color: var(--s6-restoration-copper, #c2784f) !important;
}
.s6-division-page--exterior-restoration .s6-restoration-division-resources .s6-section-label::before {
  background: var(--s6-restoration-copper, #c2784f) !important;
}
.s6-division-page--exterior-restoration .s6-restoration-division-resources .s6-stone-manufacturer-link:hover,
.s6-division-page--exterior-restoration .s6-restoration-division-resources .s6-stone-manufacturer-link:focus-visible {
  background: var(--s6-restoration-copper, #c2784f);
  color: #fff;
  border-color: var(--s6-restoration-copper, #c2784f);
}


/* Employee portal secondary navigation. */
.s6-header--employee-mode{
  padding-top:14px;
}
.s6-header--employee-mode .s6-header__inner{
  border-radius:30px 30px 18px 18px;
  background:rgba(5,6,5,.82);
  border-color:rgba(255,255,255,.12);
}
.s6-header--employee-mode > .s6-employee-os-nav{
  pointer-events:auto !important;
  display:block !important;
  width:100% !important;
  max-width:1640px !important;
  min-width:0 !important;
  margin:8px auto 0 !important;
  padding:0 !important;
  box-sizing:border-box !important;
  overflow:visible !important;
}
.s6-header--employee-mode > .s6-employee-os-nav > .s6-employee-os-nav__inner{
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  box-sizing:border-box !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:clamp(14px,1.6vw,28px) !important;
  padding:10px 18px 10px 22px !important;
  overflow:hidden !important;
  border:1px solid rgba(35,35,30,.14);
  border-radius:999px;
  background:linear-gradient(135deg, rgba(238,234,224,.96), rgba(217,211,197,.91));
  box-shadow:0 18px 50px rgba(0,0,0,.18);
}
.s6-header--employee-mode .s6-employee-os-nav__label{
  flex:0 0 auto !important;
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  white-space:nowrap !important;
  color:#11130f !important;
}
.s6-header--employee-mode .s6-employee-os-nav__label strong{
  font-size:10px;
  font-weight:950;
  letter-spacing:.2em;
  text-transform:uppercase;
}
.s6-header--employee-mode .s6-employee-os-nav__label em{
  position:relative;
  padding-left:12px;
  color:rgba(17,19,15,.58);
  font-size:10px;
  font-style:normal;
  font-weight:950;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.s6-header--employee-mode .s6-employee-os-nav__label em:before{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:4px;
  height:4px;
  border-radius:999px;
  transform:translateY(-50%);
  background:var(--s6-green,#8ec43f);
}
.s6-header--employee-mode .s6-employee-os-nav__links{
  flex:0 1 auto !important;
  min-width:0 !important;
  max-width:72% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:6px !important;
  margin-left:0 !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  flex-wrap:nowrap !important;
  white-space:nowrap !important;
  scrollbar-width:none !important;
}
.s6-header--employee-mode .s6-employee-os-nav__links::-webkit-scrollbar{
  display:none !important;
}
.s6-header--employee-mode .s6-employee-os-nav__links a{
  position:relative;
  flex:0 0 auto !important;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:32px !important;
  padding:8px 11px !important;
  border:1px solid transparent;
  border-radius:999px !important;
  color:rgba(17,19,15,.62);
  font-size:8px !important;
  font-weight:950 !important;
  letter-spacing:.12em !important;
  line-height:1 !important;
  text-decoration:none;
  text-transform:uppercase;
  white-space:nowrap !important;
  transition:.28s ease;
}
.s6-header--employee-mode .s6-employee-os-nav__links a:hover,
.s6-header--employee-mode .s6-employee-os-nav__links a.is-active,
.s6-header--employee-mode .s6-employee-os-nav__links a[aria-current="page"]{
  border-color:rgba(17,19,15,.12);
  background:rgba(255,255,255,.54);
  color:#11130f;
  box-shadow:0 10px 24px rgba(0,0,0,.08);
}
.s6-header--employee-mode .s6-employee-os-nav__links a.is-active:after,
.s6-header--employee-mode .s6-employee-os-nav__links a[aria-current="page"]:after{
  content:"";
  position:absolute;
  left:50%;
  bottom:5px;
  width:18px;
  height:2px;
  border-radius:999px;
  transform:translateX(-50%);
  background:var(--s6-green,#8ec43f);
}
.s6-header--employee-mode.is-scrolled .s6-header__inner{
  background:rgba(4,5,4,.9);
}
.s6-header--employee-mode.is-scrolled .s6-employee-os-nav__inner{
  background:linear-gradient(135deg, rgba(238,234,224,.98), rgba(211,205,192,.94));
}
.s6-header--employee-mode ~ .s6os-shell{
  padding-top:150px;
}
.s6-header--employee-mode ~ .s6-employee-portal{
  padding-top:138px;
}
@media(max-width:1500px){
  .s6-header--employee-mode > .s6-employee-os-nav > .s6-employee-os-nav__inner{
    gap:12px !important;
    padding-inline:16px !important;
  }
  .s6-header--employee-mode .s6-employee-os-nav__label strong,
  .s6-header--employee-mode .s6-employee-os-nav__label em{
    font-size:8px !important;
    letter-spacing:.12em !important;
  }
  .s6-header--employee-mode .s6-employee-os-nav__links{
    max-width:70% !important;
    gap:4px !important;
  }
  .s6-header--employee-mode .s6-employee-os-nav__links a{
    min-height:30px !important;
    padding:7px 9px !important;
    font-size:7px !important;
    letter-spacing:.09em !important;
  }
}
@media(max-width:1100px){
  .s6-header--employee-mode > .s6-employee-os-nav{
    width:100% !important;
    max-width:none !important;
    padding:0 !important;
  }
  .s6-header--employee-mode > .s6-employee-os-nav > .s6-employee-os-nav__inner{
    align-items:flex-start !important;
    flex-direction:column !important;
    gap:10px !important;
    border-radius:22px !important;
    overflow:hidden !important;
  }
  .s6-header--employee-mode .s6-employee-os-nav__links{
    width:100% !important;
    max-width:100% !important;
    overflow-x:auto !important;
    justify-content:flex-start !important;
  }
  .s6-header--employee-mode ~ .s6os-shell{
    padding-top:196px;
  }
  .s6-header--employee-mode ~ .s6-employee-portal{
    padding-top:186px;
  }
}
@media(max-width:760px){
  .s6-header--employee-mode{
    padding:10px 12px 0;
  }
  .s6-header--employee-mode > .s6-employee-os-nav > .s6-employee-os-nav__inner{
    padding:10px !important;
    border-radius:18px !important;
  }
  .s6-header--employee-mode .s6-employee-os-nav__label{
    width:100%;
    justify-content:space-between;
  }
  .s6-header--employee-mode .s6-employee-os-nav__label strong,
  .s6-header--employee-mode .s6-employee-os-nav__label em{
    font-size:7px !important;
  }
  .s6-header--employee-mode .s6-employee-os-nav__links a{
    min-height:42px !important;
    padding:10px 12px !important;
    font-size:8px !important;
  }
  .s6-header--employee-mode ~ .s6os-shell{
    padding-top:210px;
  }
  .s6-header--employee-mode ~ .s6-employee-portal{
    padding-top:202px;
  }
}


/* Dark employee portal navigation skin. */
.s6-header--employee-mode > .s6-employee-os-nav > .s6-employee-os-nav__inner{
  border-color:rgba(255,255,255,.10) !important;
  background:
    linear-gradient(135deg, rgba(18,22,19,.96), rgba(8,11,9,.94)) !important;
  box-shadow:
    0 18px 50px rgba(0,0,0,.34),
    inset 0 1px 0 rgba(255,255,255,.06) !important;
}
.s6-header--employee-mode .s6-employee-os-nav__label{
  color:#f4f7f1 !important;
}
.s6-header--employee-mode .s6-employee-os-nav__label strong{
  color:#ffffff !important;
}
.s6-header--employee-mode .s6-employee-os-nav__label em{
  color:rgba(244,247,241,.58) !important;
}
.s6-header--employee-mode .s6-employee-os-nav__label em:before{
  background:var(--s6-green,#8ec43f) !important;
  box-shadow:0 0 0 4px rgba(142,196,63,.12) !important;
}
.s6-header--employee-mode .s6-employee-os-nav__links a{
  color:rgba(244,247,241,.68) !important;
  border-color:transparent !important;
}
.s6-header--employee-mode .s6-employee-os-nav__links a:hover{
  color:#ffffff !important;
  border-color:rgba(142,196,63,.22) !important;
  background:rgba(142,196,63,.08) !important;
  box-shadow:0 8px 24px rgba(0,0,0,.18) !important;
}
.s6-header--employee-mode .s6-employee-os-nav__links a.is-active,
.s6-header--employee-mode .s6-employee-os-nav__links a[aria-current="page"]{
  color:#ffffff !important;
  border-color:rgba(142,196,63,.28) !important;
  background:linear-gradient(135deg, rgba(142,196,63,.18), rgba(142,196,63,.08)) !important;
  box-shadow:
    0 10px 28px rgba(0,0,0,.24),
    inset 0 1px 0 rgba(255,255,255,.08) !important;
}
.s6-header--employee-mode .s6-employee-os-nav__links a.is-active:after,
.s6-header--employee-mode .s6-employee-os-nav__links a[aria-current="page"]:after{
  background:var(--s6-green,#8ec43f) !important;
  box-shadow:0 0 12px rgba(142,196,63,.45) !important;
}
.s6-header--employee-mode.is-scrolled .s6-employee-os-nav__inner{
  background:
    linear-gradient(135deg, rgba(16,20,17,.98), rgba(5,7,6,.96)) !important;
  border-color:rgba(255,255,255,.12) !important;
}


/* System 6 OS production job calendar. */
.s6os-calendar-page{max-width:1540px;margin:0 auto;padding-bottom:48px}.s6os-calendar-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:20px}.s6os-calendar-hero h2{margin:2px 0 7px;font-size:clamp(30px,4vw,46px);letter-spacing:-.04em}.s6os-calendar-hero p:last-child{max-width:780px;margin:0;color:#aab1bd}.s6os-calendar-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 14px}.s6os-calendar-stats>div{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:13px 16px;border:1px solid rgba(255,255,255,.09);border-radius:14px;background:#15191f}.s6os-calendar-stats span{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#8e97a4}.s6os-calendar-stats strong{font-size:24px;color:#fff}.s6os-calendar-stats .is-warning strong{color:#f3b35b}.s6os-calendar-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:13px 14px;margin-bottom:12px;border:1px solid rgba(255,255,255,.09);border-radius:16px;background:#11151a}.s6os-calendar-month-nav{display:flex;align-items:center;gap:8px}.s6os-calendar-month-nav>a{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:#1c2128;color:#fff;text-decoration:none;font-size:22px}.s6os-calendar-month-nav>div{min-width:150px;padding:0 8px}.s6os-calendar-month-nav span,.s6os-calendar-filters label>span{display:block;margin-bottom:3px;font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#737e8d}.s6os-calendar-month-nav strong{font-size:16px;color:#fff}.s6os-calendar-month-nav .s6os-calendar-today{width:auto;padding:0 12px;font-size:11px;font-weight:800}.s6os-calendar-filters{display:flex;gap:9px}.s6os-calendar-filters label{min-width:150px}.s6os-calendar-filters select{width:100%;height:34px;padding:0 30px 0 10px;border:1px solid rgba(255,255,255,.1);border-radius:9px;background:#1c2128;color:#fff;font-size:12px}.s6os-calendar-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:12px;align-items:start}.s6os-calendar-board,.s6os-calendar-sidebar{border:1px solid rgba(255,255,255,.09);border-radius:16px;background:#11151a;overflow:hidden}.s6os-calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-bottom:1px solid rgba(255,255,255,.08);background:#171b21}.s6os-calendar-weekdays span{padding:10px;text-align:center;font-size:10px;font-weight:900;letter-spacing:.1em;color:#7f8997;text-transform:uppercase}.s6os-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.s6os-calendar-day{min-height:126px;padding:8px 6px;border-right:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06);background:#12161b}.s6os-calendar-day:nth-child(7n){border-right:0}.s6os-calendar-day.is-other-month{background:#0e1115;opacity:.55}.s6os-calendar-day.is-today{box-shadow:inset 0 0 0 1px rgba(142,196,63,.85);background:rgba(142,196,63,.045)}.s6os-calendar-day-head{display:flex;align-items:center;justify-content:space-between;margin:0 3px 7px}.s6os-calendar-day-head>span{display:grid;place-items:center;width:25px;height:25px;border-radius:8px;font-size:11px;font-weight:900;color:#aeb6c2}.s6os-calendar-day.is-today .s6os-calendar-day-head>span{background:#8ec43f;color:#111}.s6os-calendar-day-head em{font-size:8px;font-style:normal;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#8ec43f}.s6os-calendar-day-events{display:grid;gap:3px}.s6os-calendar-event{display:block;width:100%;min-width:0;padding:5px 6px;border:0;border-left:3px solid #8ec43f;border-radius:5px;background:rgba(142,196,63,.14);color:#dce8cf;text-align:left;cursor:pointer;overflow:hidden}.s6os-calendar-event.is-production{border-left-color:#4fa7ff;background:rgba(79,167,255,.14);color:#d5e9ff}.s6os-calendar-event span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:800}.s6os-calendar-more{padding:2px 5px;font-size:9px;font-weight:800;color:#8e97a4}.s6os-calendar-sidebar-head{display:flex;align-items:center;justify-content:space-between;padding:14px 15px;border-bottom:1px solid rgba(255,255,255,.08);background:#171b21}.s6os-calendar-sidebar-head span{display:block;font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#758090}.s6os-calendar-sidebar-head strong{color:#fff}.s6os-calendar-sidebar-head b{display:grid;place-items:center;min-width:30px;height:30px;padding:0 8px;border-radius:9px;background:#252b33;color:#f3b35b}.s6os-calendar-unscheduled{display:grid;max-height:664px;overflow:auto}.s6os-calendar-unscheduled button{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border:0;border-bottom:1px solid rgba(255,255,255,.06);background:transparent;color:#fff;text-align:left;cursor:pointer}.s6os-calendar-unscheduled button:hover{background:rgba(255,255,255,.035)}.s6os-calendar-unscheduled button span{min-width:0}.s6os-calendar-unscheduled strong,.s6os-calendar-unscheduled small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s6os-calendar-unscheduled strong{font-size:11px}.s6os-calendar-unscheduled small{margin-top:3px;font-size:9px;color:#87919e}.s6os-calendar-unscheduled em{font-size:9px;font-style:normal;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:#8ec43f}.s6os-calendar-empty-queue{display:grid;gap:4px;padding:22px 16px;color:#fff}.s6os-calendar-empty-queue span{font-size:11px;color:#87919e}.s6os-calendar-legend{display:flex;gap:18px;padding:11px 3px}.s6os-calendar-legend span{display:flex;align-items:center;gap:6px;font-size:10px;font-weight:800;color:#8993a0}.s6os-calendar-legend i{width:9px;height:9px;border-radius:3px;background:#8ec43f}.s6os-calendar-legend i.is-production{background:#4fa7ff}.s6os-calendar-legend i.is-today{background:transparent;border:1px solid #8ec43f}.s6os-calendar-modal{max-width:620px}.s6os-calendar-modal-status{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;margin-bottom:14px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:#171b21}.s6os-calendar-modal-status span{font-size:10px;font-weight:800;color:#8c96a3}.s6os-calendar-modal-status strong{font-size:10px;color:#8ec43f;text-transform:uppercase;letter-spacing:.08em}.s6os-calendar-form-note{margin:12px 0 0;font-size:11px;color:#8c96a3}
@media(max-width:1100px){.s6os-calendar-layout{grid-template-columns:1fr}.s6os-calendar-unscheduled{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}.s6os-calendar-unscheduled button:nth-child(odd){border-right:1px solid rgba(255,255,255,.06)}}
@media(max-width:820px){.s6os-calendar-stats{grid-template-columns:repeat(2,1fr)}.s6os-calendar-toolbar,.s6os-calendar-hero{align-items:stretch;flex-direction:column}.s6os-calendar-filters{width:100%}.s6os-calendar-filters label{flex:1}.s6os-calendar-day{min-height:98px;padding:5px 3px}.s6os-calendar-event{padding:4px}.s6os-calendar-event span{font-size:8px}}
@media(max-width:580px){.s6os-calendar-weekdays span{font-size:8px;padding:8px 2px}.s6os-calendar-day{min-height:78px}.s6os-calendar-event span{font-size:0}.s6os-calendar-event span:before{content:'Job';font-size:8px}.s6os-calendar-day-head em{display:none}.s6os-calendar-unscheduled{grid-template-columns:1fr}.s6os-calendar-unscheduled button:nth-child(odd){border-right:0}.s6os-calendar-filters{flex-direction:column}.s6os-calendar-stats>div{padding:11px}.s6os-calendar-stats strong{font-size:20px}}


/* 4.1.3 Calendar UI polish */
.s6os-calendar-grid.s6os-calendar-weeks{display:grid;grid-template-columns:1fr}
.s6os-calendar-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:52px repeat(var(--s6os-week-rows,1),34px);position:relative}
.s6os-calendar-week + .s6os-calendar-week{border-top:1px solid rgba(255,255,255,.06)}
.s6os-calendar-day-shell{position:relative;z-index:0;display:flex;flex-direction:column;justify-content:flex-start;gap:10px;padding:9px 9px 8px;background:#12161b;border-right:1px solid rgba(255,255,255,.06);min-height:100%}
.s6os-calendar-day-shell.is-last-column{border-right:0}
.s6os-calendar-day-shell.is-other-month{background:#0d1116}
.s6os-calendar-day-shell.is-today{background:linear-gradient(180deg,rgba(142,196,63,.12),rgba(142,196,63,.04) 36%,rgba(18,22,27,1) 100%);box-shadow:inset 0 0 0 1px rgba(142,196,63,.85),inset 0 1px 0 rgba(255,255,255,.03)}
.s6os-calendar-day-shell .s6os-calendar-day-head{position:relative;z-index:1;margin:0}
.s6os-calendar-day-shell .s6os-calendar-day-head>span{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.04);font-size:12px;font-weight:900;color:#b3bcc8}
.s6os-calendar-day-shell.is-other-month .s6os-calendar-day-head>span{opacity:.48}
.s6os-calendar-day-shell.is-today .s6os-calendar-day-head>span{background:#8ec43f;color:#111;border-color:transparent;box-shadow:0 10px 22px rgba(142,196,63,.22)}
.s6os-calendar-day-shell .s6os-calendar-day-head em{font-size:9px;font-style:normal;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#a7d35c}
.s6os-calendar-day-shell::after{content:'';position:absolute;left:0;right:0;top:52px;bottom:0;background:linear-gradient(180deg,rgba(255,255,255,.015),rgba(255,255,255,0));pointer-events:none}
.s6os-calendar-span{position:relative;z-index:2;display:block;min-width:0;height:28px;margin:3px 6px;padding:0;border:0;background:transparent;text-align:left;cursor:pointer}
.s6os-calendar-span-inner{position:relative;display:flex;align-items:center;gap:8px;width:100%;height:100%;padding:0 10px;border-radius:10px;border:1px solid rgba(142,196,63,.18);background:linear-gradient(180deg,rgba(142,196,63,.22),rgba(142,196,63,.11));box-shadow:0 8px 18px rgba(0,0,0,.16);overflow:hidden;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.s6os-calendar-span.is-production .s6os-calendar-span-inner{border-color:rgba(79,167,255,.22);background:linear-gradient(180deg,rgba(79,167,255,.24),rgba(79,167,255,.12))}
.s6os-calendar-span-number{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;height:18px;max-width:88px;padding:0 7px;border-radius:999px;background:rgba(8,10,12,.22);font-size:10px;font-weight:900;color:inherit}
.s6os-calendar-span-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:800;color:#eef6e0}
.s6os-calendar-span.is-production .s6os-calendar-span-label{color:#e5f2ff}
.s6os-calendar-span.is-continues-left .s6os-calendar-span-inner{padding-left:18px;border-top-left-radius:5px;border-bottom-left-radius:5px}
.s6os-calendar-span.is-continues-right .s6os-calendar-span-inner{padding-right:18px;border-top-right-radius:5px;border-bottom-right-radius:5px}
.s6os-calendar-span.is-continues-left .s6os-calendar-span-inner::before,.s6os-calendar-span.is-continues-right .s6os-calendar-span-inner::after{content:'';position:absolute;top:50%;width:8px;height:8px;margin-top:-4px;border-top:2px solid currentColor;border-right:2px solid currentColor;opacity:.48}
.s6os-calendar-span.is-continues-left .s6os-calendar-span-inner::before{left:7px;transform:rotate(-135deg)}
.s6os-calendar-span.is-continues-right .s6os-calendar-span-inner::after{right:7px;transform:rotate(45deg)}
.s6os-calendar-span:hover .s6os-calendar-span-inner{transform:translateY(-1px);box-shadow:0 12px 22px rgba(0,0,0,.22);border-color:rgba(255,255,255,.18)}
.s6os-calendar-legend{display:flex;gap:18px;padding:14px 3px 2px}
@media(max-width:1100px){.s6os-calendar-day-shell{padding:8px 6px 6px}.s6os-calendar-span{margin:3px 4px}}
@media(max-width:820px){.s6os-calendar-week{grid-template-rows:46px repeat(var(--s6os-week-rows,1),30px)}.s6os-calendar-day-shell::after{top:46px}.s6os-calendar-day-shell{padding:7px 4px 5px}.s6os-calendar-span{height:24px;margin:3px}.s6os-calendar-span-label{font-size:10px}.s6os-calendar-span-number{display:none}}
@media(max-width:580px){.s6os-calendar-week{grid-template-rows:42px repeat(var(--s6os-week-rows,1),26px)}.s6os-calendar-day-shell::after{top:42px}.s6os-calendar-day-shell .s6os-calendar-day-head>span{width:24px;height:24px;font-size:11px}.s6os-calendar-span{height:21px;margin:2px}.s6os-calendar-span-inner{padding:0 7px}.s6os-calendar-span.is-continues-left .s6os-calendar-span-inner{padding-left:14px}.s6os-calendar-span.is-continues-right .s6os-calendar-span-inner{padding-right:14px}.s6os-calendar-span-label{font-size:0}.s6os-calendar-span-label::before{content:'Scheduled';font-size:8px;font-weight:800;color:inherit}}


/* 4.1.4 Calendar job detail drawer */
body.s6os-calendar-drawer-open{overflow:hidden}
.s6os-calendar-drawer-backdrop{position:fixed;inset:0;z-index:99999;background:rgba(3,5,7,.68);backdrop-filter:blur(5px)}
.s6os-calendar-drawer-backdrop[hidden]{display:none!important}
.s6os-calendar-drawer{position:absolute;top:0;right:0;width:min(460px,100%);height:100%;display:flex;flex-direction:column;background:#0f1318;border-left:1px solid rgba(255,255,255,.10);box-shadow:-24px 0 50px rgba(0,0,0,.34);animation:s6osCalendarDrawerIn .18s ease-out}
@keyframes s6osCalendarDrawerIn{from{transform:translateX(24px);opacity:.4}to{transform:translateX(0);opacity:1}}
.s6os-calendar-drawer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:24px 22px 20px;border-bottom:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,#171c22,#12171c)}
.s6os-calendar-drawer-head h3{margin:4px 0 6px;color:#fff;font-size:24px;line-height:1.16;letter-spacing:-.025em}
.s6os-calendar-drawer-head p:last-child{margin:0;color:#8f99a6;font-size:12px}
.s6os-calendar-drawer-close{flex:0 0 auto;display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid rgba(255,255,255,.1);border-radius:11px;background:#1c2229;color:#fff;font-size:24px;line-height:1;cursor:pointer}
.s6os-calendar-drawer-close:hover{background:#252c34}
.s6os-calendar-drawer-body{flex:1;overflow:auto;padding:20px 22px 24px}
.s6os-calendar-drawer-status{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;margin-bottom:14px;border:1px solid rgba(142,196,63,.18);border-radius:12px;background:rgba(142,196,63,.07)}
.s6os-calendar-drawer-status.is-production{border-color:rgba(79,167,255,.20);background:rgba(79,167,255,.08)}
.s6os-calendar-drawer-status span{font-size:10px;font-weight:800;color:#909aa7}
.s6os-calendar-drawer-status strong{font-size:10px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;color:#a7d35c}
.s6os-calendar-drawer-status.is-production strong{color:#79bcff}
.s6os-calendar-drawer-summary{display:grid;gap:0;margin-bottom:20px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:#151a20;overflow:hidden}
.s6os-calendar-drawer-summary>div{display:grid;grid-template-columns:88px minmax(0,1fr);gap:14px;padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.06)}
.s6os-calendar-drawer-summary>div:last-child{border-bottom:0}
.s6os-calendar-drawer-summary span{font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#77818e}
.s6os-calendar-drawer-summary strong{min-width:0;color:#eef2f5;font-size:12px;font-weight:700;line-height:1.4;overflow-wrap:anywhere}
.s6os-calendar-drawer-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:0 0 10px}
.s6os-calendar-drawer-section-head span{font-size:11px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;color:#fff}
.s6os-calendar-drawer-section-head small{font-size:9px;color:#788391;text-align:right}
.s6os-calendar-drawer .s6os-form-grid{grid-template-columns:1fr;gap:10px}
.s6os-calendar-drawer .s6os-form-grid label{padding:12px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:#151a20}
.s6os-calendar-drawer .s6os-form-grid label>span{display:block;margin-bottom:7px;font-size:9px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;color:#808b98}
.s6os-calendar-drawer .s6os-form-grid input[type="date"]{width:100%;height:40px;padding:0 11px;border:1px solid rgba(255,255,255,.10);border-radius:9px;background:#0f1318;color:#fff}
.s6os-calendar-drawer-actions{display:flex;justify-content:space-between;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid rgba(255,255,255,.07)}
.s6os-calendar-drawer-actions .s6os-btn{flex:1;justify-content:center}
@media(max-width:580px){.s6os-calendar-drawer{width:100%}.s6os-calendar-drawer-head{padding:19px 16px 16px}.s6os-calendar-drawer-head h3{font-size:20px}.s6os-calendar-drawer-body{padding:16px}.s6os-calendar-drawer-actions{flex-direction:column-reverse}.s6os-calendar-drawer-summary>div{grid-template-columns:76px minmax(0,1fr)}}

/* 4.1.5 calendar crew and completion status */
.s6os-calendar-span-inner{gap:8px}
.s6os-calendar-span-crew{min-width:0;margin-left:auto;padding-left:10px;border-left:1px solid rgba(255,255,255,.13);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:750;color:rgba(255,255,255,.62)}
.s6os-calendar-span.is-completed .s6os-calendar-span-inner{border-color:rgba(145,155,166,.2);background:linear-gradient(180deg,rgba(119,130,142,.2),rgba(82,91,102,.11));box-shadow:none}
.s6os-calendar-span.is-completed .s6os-calendar-span-label{color:#c8cfd7;text-decoration:none}
.s6os-calendar-span.is-completed .s6os-calendar-span-number{color:#c5ccd3;background:rgba(8,10,12,.18)}
.s6os-calendar-span.is-completed .s6os-calendar-span-inner::before{opacity:.28}
.s6os-calendar-legend i.is-completed{background:#818b96}
.s6os-calendar-drawer-status.is-completed{border-color:rgba(145,155,166,.2);background:rgba(119,130,142,.09)}
.s6os-calendar-drawer-status.is-completed strong{color:#b8c0c9}
.s6os-calendar-drawer-summary .s6os-calendar-drawer-crew{grid-column:1/-1}
.s6os-calendar-drawer-summary .s6os-calendar-drawer-crew strong{white-space:normal;line-height:1.45}
@media(max-width:1100px){.s6os-calendar-span-crew{display:none}}

/* 4.1.15 — Job dashboard control fit */
.s6os-job-dashboard-search{grid-template-columns:minmax(0,1fr) auto}
.s6os-job-dashboard-search-actions{flex:0 0 auto;white-space:nowrap}
.s6os-job-dashboard-search .s6os-btn{width:auto;min-width:92px;padding-left:16px;padding-right:16px}
.s6os-filterbar{grid-template-columns:repeat(11,minmax(0,1fr));gap:6px}
.s6os-filterbar a{min-height:35px;padding:6px;font-size:.75rem;letter-spacing:-.015em}
@media(max-width:1500px){.s6os-filterbar{grid-template-columns:repeat(11,minmax(0,1fr))}.s6os-filterbar a{padding-left:4px;padding-right:4px;font-size:.71rem}}
@media(max-width:1180px){.s6os-filterbar{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media(max-width:780px){.s6os-job-dashboard-search{grid-template-columns:1fr}.s6os-job-dashboard-search-actions{width:100%}.s6os-job-dashboard-search .s6os-btn{flex:1 1 0}.s6os-filterbar{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* 4.1.21 Lost job card and locked-state treatment */
.s6os-job-card--lost{
  background:linear-gradient(145deg,rgba(122,30,43,.105),rgba(17,21,26,.96) 54%,rgba(255,255,255,.018));
  border-color:rgba(218,76,94,.26);
  box-shadow:inset 0 0 0 1px rgba(218,76,94,.08),0 18px 48px rgba(0,0,0,.18);
}
.s6os-job-card--lost::before{background:linear-gradient(180deg,rgba(255,112,128,.76),rgba(137,31,48,.62));}
.s6os-job-card--lost:hover{border-color:rgba(218,76,94,.42);box-shadow:inset 0 0 0 1px rgba(218,76,94,.12),0 22px 58px rgba(0,0,0,.23);}
.s6os-job-card--lost>*{filter:grayscale(.72);opacity:.58;}
.s6os-job-card--lost>div:first-child{opacity:1;filter:none;}
.s6os-job-card--lost .s6os-card-number,.s6os-job-card--lost h3,.s6os-job-card--lost h3 a,.s6os-job-card--lost>div:first-child>p:last-child{opacity:1!important;filter:none!important;color:inherit;}
.s6os-job-card--lost .s6os-card-number{color:#ff9eaa!important;}
.s6os-job-card--lost .s6os-job-card-name{color:#777f8a!important;opacity:.58!important;}
.s6os-job-card--lost .s6os-badge--lost{border-color:rgba(218,76,94,.28);background:rgba(218,76,94,.10);color:#d68a94;}
.s6os-job-compact-row--lost{background:linear-gradient(90deg,rgba(122,30,43,.12),rgba(255,255,255,.025) 58%);border-color:rgba(218,76,94,.24);box-shadow:inset 3px 0 0 rgba(218,76,94,.58);}
.s6os-job-compact-row--lost>*{filter:grayscale(.72);opacity:.58;}
.s6os-job-compact-row--lost .s6os-job-compact-main,.s6os-job-compact-row--lost .s6os-job-compact-number,.s6os-job-compact-row--lost .s6os-job-compact-title,.s6os-job-compact-row--lost .s6os-job-compact-address{filter:none;opacity:1;}
.s6os-job-compact-row--lost .s6os-job-compact-number{color:#ff9eaa;}
.s6os-workflow-panel.is-quote-lost{border-color:rgba(218,76,94,.22);background:linear-gradient(145deg,rgba(122,30,43,.08),rgba(17,21,26,.98) 48%);}


/* 4.1.25 — Stronger lost-job identification */
.s6os-job-card--lost{position:relative;overflow:hidden;}
.s6os-job-card--lost::after{
  content:'';
  position:absolute;
  z-index:6;
  left:-10%;
  top:50%;
  width:120%;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,transparent 0%,rgba(235,82,101,.26) 8%,rgba(244,93,112,.68) 50%,rgba(235,82,101,.26) 92%,transparent 100%);
  box-shadow:0 0 0 1px rgba(95,16,29,.18),0 0 14px rgba(218,76,94,.16);
  transform:rotate(-7deg);
  transform-origin:center;
  pointer-events:none;
}
.s6os-job-card--lost:hover::after{background:linear-gradient(90deg,transparent 0%,rgba(235,82,101,.34) 8%,rgba(255,108,125,.78) 50%,rgba(235,82,101,.34) 92%,transparent 100%);}
.s6os-job-compact-row--lost{position:relative;overflow:hidden;}
.s6os-job-compact-row--lost::after{
  content:'';
  position:absolute;
  z-index:5;
  left:1.5%;
  right:1.5%;
  top:50%;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(235,82,101,.58) 12%,rgba(235,82,101,.58) 88%,transparent);
  transform:rotate(-1.2deg);
  pointer-events:none;
}


/* 4.1.26 — Lost job stamped treatment */
.s6os-job-card--lost,.s6os-job-compact-row--lost{position:relative;overflow:hidden;isolation:isolate;}
.s6os-job-card--lost>* ,.s6os-job-compact-row--lost>*{position:relative;z-index:2;}
.s6os-job-card--lost::after{
  content:'LOST';
  position:absolute;
  z-index:1;
  left:50%;
  top:50%;
  width:auto;
  height:auto;
  padding:7px 22px 6px;
  border:2px solid rgba(239,82,101,.32);
  border-radius:8px;
  background:rgba(98,17,29,.08);
  box-shadow:none;
  color:rgba(255,101,120,.20);
  font-size:clamp(34px,4vw,58px);
  font-weight:950;
  line-height:1;
  letter-spacing:.16em;
  text-indent:.16em;
  transform:translate(-50%,-50%) rotate(-6deg);
  transform-origin:center;
  pointer-events:none;
  white-space:nowrap;
}
.s6os-job-card--lost:hover::after{
  background:rgba(98,17,29,.10);
  border-color:rgba(239,82,101,.40);
  color:rgba(255,101,120,.25);
}
.s6os-job-compact-row--lost::after{
  content:'LOST';
  position:absolute;
  z-index:1;
  left:50%;
  top:50%;
  right:auto;
  width:auto;
  height:auto;
  padding:5px 18px 4px;
  border:2px solid rgba(239,82,101,.30);
  border-radius:7px;
  background:rgba(98,17,29,.07);
  color:rgba(255,101,120,.18);
  font-size:34px;
  font-weight:950;
  line-height:1;
  letter-spacing:.16em;
  text-indent:.16em;
  transform:translate(-50%,-50%) rotate(-4deg);
  pointer-events:none;
  white-space:nowrap;
}
.s6os-job-card--lost .s6os-badge--lost,.s6os-job-compact-row--lost .s6os-badge--lost{
  border-color:rgba(239,82,101,.48)!important;
  background:rgba(145,28,44,.20)!important;
  color:#ff9eaa!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.025);
}
@media(max-width:900px){
  .s6os-job-card--lost::after{font-size:32px;padding:6px 16px 5px;}
  .s6os-job-compact-row--lost::after{font-size:27px;padding:4px 13px 3px;}
}


/* 4.1.30 Distinct job colours for production calendar */
.s6os-calendar-span{--s6os-status-colour:#8ec43f}
.s6os-calendar-span.is-production{--s6os-status-colour:#4fa7ff}
.s6os-calendar-span.is-completed{--s6os-status-colour:#8e97a4}
.s6os-calendar-span .s6os-calendar-span-inner,
.s6os-calendar-span.is-production .s6os-calendar-span-inner,
.s6os-calendar-span.is-completed .s6os-calendar-span-inner{
  border-color:rgba(var(--s6os-job-rgb),.72);
  background:linear-gradient(180deg,rgba(var(--s6os-job-rgb),.36),rgba(var(--s6os-job-rgb),.16));
  box-shadow:inset 0 -2px 0 var(--s6os-status-colour),0 8px 18px rgba(0,0,0,.17);
}
.s6os-calendar-span:hover .s6os-calendar-span-inner{
  border-color:rgba(var(--s6os-job-rgb),.95);
  background:linear-gradient(180deg,rgba(var(--s6os-job-rgb),.46),rgba(var(--s6os-job-rgb),.22));
  box-shadow:inset 0 -2px 0 var(--s6os-status-colour),0 12px 24px rgba(0,0,0,.24);
}
.s6os-calendar-status-dot{
  flex:0 0 auto;width:7px;height:7px;border-radius:50%;background:var(--s6os-status-colour);
  box-shadow:0 0 0 3px rgba(255,255,255,.06);
}
.s6os-calendar-span.is-completed .s6os-calendar-span-inner{filter:saturate(.58);opacity:.82}
.s6os-calendar-span-number{background:rgba(7,10,13,.28)}
.s6os-calendar-span-label{color:#f7f9fb;text-shadow:0 1px 1px rgba(0,0,0,.35)}
.s6os-calendar-span-crew{color:rgba(255,255,255,.72)}
@media(max-width:820px){.s6os-calendar-status-dot{width:6px;height:6px}}


/* 4.1.33 Job filter performance and card-palette alignment */
.s6os-job-filter--active{--s6os-filter-rgb:142,196,63!important}
.s6os-job-filter--production_complete{--s6os-filter-rgb:154,235,176!important}
.s6os-job-filter--production{--s6os-filter-rgb:255,211,106!important}
.s6os-job-filter--awarded{--s6os-filter-rgb:120,217,235!important}
.s6os-job-filter--quote_sent{--s6os-filter-rgb:142,196,63!important}
.s6os-job-filter--pending{--s6os-filter-rgb:142,196,63!important}
.s6os-job-filter--cash_job{--s6os-filter-rgb:220,229,239!important}
.s6os-job-filter--legacy{--s6os-filter-rgb:202,169,255!important}
.s6os-job-filter--all{--s6os-filter-rgb:180,188,181!important}
.s6os-job-filter--closed_out{--s6os-filter-rgb:255,154,166!important}
.s6os-job-filter--quote_lost{--s6os-filter-rgb:255,158,170!important}
.s6os-filterbar a{box-shadow:inset 0 -2px 0 rgba(var(--s6os-filter-rgb),.24)}
.s6os-filterbar a:not(.is-active){border-color:rgba(var(--s6os-filter-rgb),.24);background:linear-gradient(180deg,rgba(var(--s6os-filter-rgb),.055),rgba(var(--s6os-filter-rgb),.018));}

/* 4.1.34 Manual calendar job colours */
.s6os-calendar-colour-control{display:flex;align-items:center;gap:12px;margin-top:14px;padding:12px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:#141920}
.s6os-calendar-colour-control>div{min-width:0;flex:1}.s6os-calendar-colour-control>div>span{display:block;font-size:10px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;color:#fff}.s6os-calendar-colour-control>div>small{display:block;margin-top:3px;font-size:10px;color:#7f8996}
.s6os-calendar-colour-input{display:flex;align-items:center;gap:8px;flex:0 0 auto;padding:5px 8px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:#0f1318}.s6os-calendar-colour-input input[type="color"]{width:34px;height:28px;padding:0;border:0;border-radius:7px;background:transparent;cursor:pointer}.s6os-calendar-colour-input input[type="color"]::-webkit-color-swatch-wrapper{padding:0}.s6os-calendar-colour-input input[type="color"]::-webkit-color-swatch{border:0;border-radius:7px}.s6os-calendar-colour-input span{min-width:64px;font-size:10px;font-weight:800;color:#c9d0d8}.s6os-calendar-colour-reset{flex:0 0 auto;padding:7px 9px;border:1px solid rgba(255,255,255,.1);border-radius:9px;background:transparent;color:#aeb6c0;font-size:9px;font-weight:800;cursor:pointer}.s6os-calendar-colour-reset:hover{border-color:rgba(255,255,255,.2);color:#fff}@media(max-width:560px){.s6os-calendar-colour-control{align-items:stretch;flex-direction:column}.s6os-calendar-colour-input,.s6os-calendar-colour-reset{width:100%;justify-content:center}}

/* 4.1.35 Calendar job-number contrast */
.s6os-calendar-span-number,
.s6os-calendar-span.is-completed .s6os-calendar-span-number{
  color:#fff !important;
  background:rgba(5,8,11,.62) !important;
  border:1px solid rgba(255,255,255,.12);
  text-shadow:0 1px 1px rgba(0,0,0,.7);
}

/* =========================================================
   4.1.73 Portal footer
========================================================= */
.s6-portal-footer{
  position:relative;
  z-index:2;
  width:min(1920px,calc(100% - 48px));
  margin:34px auto 18px;
  color:#f4f6f2;
}
.s6-portal-footer__inner{
  display:grid;
  grid-template-columns:minmax(250px,1fr) auto minmax(330px,1fr);
  align-items:center;
  gap:28px;
  min-height:78px;
  padding:16px 24px;
  border:1px solid rgba(190,210,195,.16);
  border-radius:24px;
  background:linear-gradient(135deg,rgba(17,23,18,.96),rgba(9,12,10,.98));
  box-shadow:0 18px 48px rgba(0,0,0,.2),inset 0 1px 0 rgba(255,255,255,.025);
}
.s6-portal-footer__brand,.s6-portal-footer__account,.s6-portal-footer__nav{display:flex;align-items:center}
.s6-portal-footer__brand{gap:12px;min-width:0}
.s6-portal-footer__mark{
  display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:14px;
  color:#10160c;background:#94cf3a;font-size:14px;font-weight:950;letter-spacing:.08em;
  box-shadow:0 0 0 1px rgba(174,235,84,.22),0 8px 22px rgba(116,183,42,.15)
}
.s6-portal-footer__brand div,.s6-portal-footer__user{display:grid;gap:3px;min-width:0}
.s6-portal-footer__brand strong{font-size:14px;line-height:1.15;letter-spacing:.08em;text-transform:uppercase}
.s6-portal-footer__brand span:not(.s6-portal-footer__mark),.s6-portal-footer__user span{font-size:11px;color:#8f978f;letter-spacing:.04em}
.s6-portal-footer__nav{justify-content:center;gap:6px;flex-wrap:wrap}
.s6-portal-footer__nav a,.s6-portal-footer__support,.s6-portal-footer__logout{
  display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 12px;border-radius:999px;
  color:#afb6af;text-decoration:none;font-size:11px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;
  transition:color .18s ease,background .18s ease,border-color .18s ease
}
.s6-portal-footer__nav a:hover,.s6-portal-footer__support:hover{color:#fff;background:rgba(255,255,255,.055)}
.s6-portal-footer__account{justify-content:flex-end;gap:8px;min-width:0}
.s6-portal-footer__user{margin-right:6px;text-align:right}
.s6-portal-footer__user strong{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}
.s6-portal-footer__support{border:1px solid rgba(255,255,255,.11)}
.s6-portal-footer__logout{color:#0c1208;background:#94cf3a;border:1px solid #a9e650}
.s6-portal-footer__logout:hover{background:#a3dd48;color:#080c06}
.s6-portal-footer__version{margin-left:3px;color:#657065;font-size:10px;font-weight:800;letter-spacing:.08em}
.s6-portal-footer--hours-only{max-width:760px;margin-top:24px}
.s6-portal-footer--hours-only .s6-portal-footer__inner{grid-template-columns:1fr auto;min-height:70px}
.s6-portal-footer--hours-only .s6-portal-footer__nav{display:none}
@media(max-width:1050px){
  .s6-portal-footer__inner{grid-template-columns:1fr auto}.s6-portal-footer__nav{grid-column:1/-1;grid-row:2;justify-content:flex-start;border-top:1px solid rgba(255,255,255,.07);padding-top:12px}
}
@media(max-width:720px){
  .s6-portal-footer{width:calc(100% - 24px);margin:22px auto 12px}
  .s6-portal-footer__inner,.s6-portal-footer--hours-only .s6-portal-footer__inner{grid-template-columns:1fr;gap:14px;padding:16px;border-radius:20px}
  .s6-portal-footer__nav{display:none}
  .s6-portal-footer__account{justify-content:space-between;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.07);padding-top:13px}
  .s6-portal-footer__user{text-align:left;margin-right:auto}.s6-portal-footer__support{display:none}
  .s6-portal-footer__version{width:100%;margin:2px 0 0}
}
@media print{.s6-portal-footer{display:none!important}}

/* =========================================================
   4.1.78 Complete compact portal navigation
========================================================= */
.s6-header--employee-mode .s6-employee-os-nav__label{
  flex:0 0 auto;
  text-decoration:none;
  border-radius:14px;
  padding:7px 9px;
  transition:background .18s ease,box-shadow .18s ease;
}
.s6-header--employee-mode .s6-employee-os-nav__label:hover,
.s6-header--employee-mode .s6-employee-os-nav__label.is-active{
  background:rgba(142,196,63,.08);
  box-shadow:inset 0 0 0 1px rgba(142,196,63,.16);
}
.s6-header--employee-mode .s6-employee-os-nav__links{
  max-width:none !important;
  gap:1px !important;
}
.s6-header--employee-mode .s6-employee-os-nav__links a{
  min-height:28px !important;
  padding:6px 7px !important;
  font-size:6.8px !important;
  letter-spacing:.075em !important;
  white-space:nowrap;
}
.s6-header--employee-mode > .s6-employee-os-nav > .s6-employee-os-nav__inner{
  gap:8px !important;
  padding-inline:14px !important;
}
.s6-portal-footer__brand{color:inherit;text-decoration:none}
.s6-portal-footer__brand:hover strong{color:#a9e650}
.s6-portal-footer__inner{
  grid-template-columns:minmax(215px,.72fr) minmax(0,1.9fr) minmax(300px,.9fr);
  gap:16px;
  min-height:72px;
  padding:12px 18px;
}
.s6-portal-footer__nav{
  justify-content:flex-start;
  gap:2px;
  flex-wrap:wrap;
}
.s6-portal-footer__nav a{
  min-height:29px;
  padding:0 8px;
  font-size:8px;
  letter-spacing:.065em;
}
@media(max-width:1500px){
  .s6-header--employee-mode .s6-employee-os-nav__links a{padding:6px 6px !important;font-size:6.3px !important}
  .s6-portal-footer__inner{grid-template-columns:1fr auto}
  .s6-portal-footer__nav{grid-column:1/-1;grid-row:2;border-top:1px solid rgba(255,255,255,.07);padding-top:8px}
}
@media(max-width:1100px){
  .s6-header--employee-mode .s6-employee-os-nav__label{padding:4px 2px}
}
@media(max-width:720px){
  .s6-portal-footer__nav{
    display:flex !important;
    width:100%;
    flex-wrap:nowrap;
    overflow-x:auto;
    padding:10px 0 2px;
    border-top:1px solid rgba(255,255,255,.07);
    scrollbar-width:none;
  }
  .s6-portal-footer__nav::-webkit-scrollbar{display:none}
  .s6-portal-footer__nav a{flex:0 0 auto;min-height:34px;padding:0 10px;font-size:8px}
}


/* =========================================================
   4.1.80 Portal nav cleanup + tighter footer
========================================================= */
.s6-portal-footer__inner{
  grid-template-columns:minmax(205px,.68fr) minmax(0,2.15fr) minmax(285px,.82fr);
  gap:10px;
  min-height:64px;
  padding:9px 14px;
}
.s6-portal-footer__mark{flex-basis:36px;width:36px;height:36px;border-radius:12px;font-size:12px}
.s6-portal-footer__brand{gap:9px}
.s6-portal-footer__brand strong{font-size:12px}
.s6-portal-footer__brand span:not(.s6-portal-footer__mark),.s6-portal-footer__user span{font-size:9px}
.s6-portal-footer__nav{gap:0;flex-wrap:nowrap;white-space:nowrap}
.s6-portal-footer__nav a{min-height:26px;padding:0 6px;font-size:6.7px;letter-spacing:.055em}
.s6-portal-footer__account{gap:5px}
.s6-portal-footer__user{margin-right:2px}
.s6-portal-footer__user strong{font-size:11px;max-width:145px}
.s6-portal-footer__support,.s6-portal-footer__logout{min-height:30px;padding:0 9px;font-size:9px}
@media(max-width:1500px){
  .s6-portal-footer__inner{grid-template-columns:minmax(180px,.58fr) minmax(0,2.25fr) minmax(250px,.72fr);gap:6px}
  .s6-portal-footer__nav{grid-column:auto;grid-row:auto;border-top:0;padding-top:0}
  .s6-portal-footer__nav a{padding:0 4px;font-size:6.1px}
}
@media(max-width:1180px){
  .s6-portal-footer__inner{grid-template-columns:1fr auto}
  .s6-portal-footer__nav{grid-column:1/-1;grid-row:2;overflow-x:auto;border-top:1px solid rgba(255,255,255,.07);padding-top:7px}
}

/* =========================================================
   4.1.82 Portal navigation readability
========================================================= */
@media(min-width:1501px){
  .s6-header--employee-mode .s6-employee-os-nav__links{gap:3px !important}
  .s6-header--employee-mode .s6-employee-os-nav__links a{
    min-height:32px !important;
    padding:7px 9px !important;
    font-size:8.2px !important;
    letter-spacing:.07em !important;
  }
}
@media(min-width:1181px) and (max-width:1500px){
  .s6-header--employee-mode .s6-employee-os-nav__links{gap:2px !important}
  .s6-header--employee-mode .s6-employee-os-nav__links a{
    min-height:30px !important;
    padding:6px 7px !important;
    font-size:7.2px !important;
    letter-spacing:.065em !important;
  }
}


/* =========================================================
   Blog Archive Featured Story + Listing Structure
========================================================= */
.s6-blog-page .s6-section-title-row {
  position: relative;
  z-index: 2;
  margin-bottom: clamp(24px, 3vw, 44px);
}

.s6-blog-index-feature {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(360px, .85fr);
  min-height: 520px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: 24px;
  background: #080a08;
}

.s6-blog-index-feature__image {
  position: relative;
  display: block;
  min-height: 520px;
  overflow: hidden;
  background: rgba(255, 255, 255, .035);
}

.s6-blog-index-feature__image::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(90deg, transparent 62%, rgba(8, 10, 8, .32));
}

.s6-blog-index-feature__image img,
.s6-blog-index-feature__image .s6-blog-image-fallback {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 520px;
  object-fit: cover;
}

.s6-blog-index-feature__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(32px, 4vw, 64px);
}

.s6-blog-index-feature__content h2 {
  max-width: 720px;
  margin: 12px 0 0;
  color: #fff;
  font-size: clamp(2.6rem, 4.5vw, 5.7rem);
  font-weight: 900;
  line-height: .88;
  letter-spacing: -.058em;
  text-transform: uppercase;
}

.s6-blog-index-feature__content h2 a {
  color: inherit;
  text-decoration: none;
}

.s6-blog-index-feature__content .s6-post-meta {
  margin: 20px 0 0;
  color: rgba(255, 255, 255, .5);
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .17em;
  text-transform: uppercase;
}

.s6-blog-index-feature__content .s6-archive-card__link {
  margin-top: 28px;
}

.s6-blog-index-toolbar {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 32px;
  margin-bottom: clamp(28px, 4vw, 52px);
}

.s6-blog-index-toolbar h2 {
  max-width: 980px;
  margin: 0;
}

.s6-blog-index-grid {
  margin-top: 0;
}

@media (max-width: 980px) {
  .s6-blog-index-feature {
    grid-template-columns: 1fr;
    min-height: 0;
  }

  .s6-blog-index-feature__image,
  .s6-blog-index-feature__image img,
  .s6-blog-index-feature__image .s6-blog-image-fallback {
    min-height: 360px;
  }

  .s6-blog-index-feature__image::after {
    background: linear-gradient(180deg, transparent 64%, rgba(8, 10, 8, .32));
  }

  .s6-blog-index-toolbar {
    align-items: flex-start;
    flex-direction: column;
  }

  .s6-blog-category-pills {
    justify-content: flex-start;
  }
}

@media (max-width: 640px) {
  .s6-blog-index-feature {
    border-radius: 18px;
  }

  .s6-blog-index-feature__image,
  .s6-blog-index-feature__image img,
  .s6-blog-index-feature__image .s6-blog-image-fallback {
    min-height: 250px;
  }

  .s6-blog-index-feature__content {
    padding: 26px 22px 30px;
  }

  .s6-blog-index-feature__content h2 {
    font-size: clamp(2.2rem, 13vw, 3.7rem);
  }
}


/* =========================================================
   4.1.90 Hours submission clarity + homepage blog card fit
========================================================= */
.s6os-inline-notice--warning {
  border-color: rgba(214, 151, 24, .45) !important;
  background: rgba(214, 151, 24, .10) !important;
  color: #f2d38d !important;
}
.s6hours-submit-progress {
  margin: 10px 0 0;
  color: rgba(255,255,255,.68);
  font-size: .78rem;
  line-height: 1.4;
}

/* The homepage cards were constrained to two fixed 215px rows while their
   metadata, title, excerpt and action required slightly more vertical room. */
#blog .s6-blog-list {
  height: 468px !important;
  min-height: 468px !important;
}
#blog .s6-blog-list article {
  overflow: visible !important;
  min-height: 0 !important;
}
#blog .s6-blog-list article h3,
#blog .s6-blog-list article p {
  padding-bottom: .08em !important;
}
#blog .s6-blog-list article p {
  line-height: 1.54 !important;
}
@media (max-width: 900px) {
  #blog .s6-blog-list {
    height: auto !important;
    min-height: 0 !important;
  }
  #blog .s6-blog-list article {
    overflow: hidden !important;
    min-height: 204px !important;
  }
}

/* =========================================================
   4.1.91 Homepage blog alignment restoration
   Keep the two latest cards aligned exactly to the featured card while
   fitting dynamic titles/excerpts inside the original 430px composition.
========================================================= */
#blog .s6-blog-layout {
  align-items: stretch !important;
}
#blog .s6-blog-list {
  height: 430px !important;
  min-height: 430px !important;
  align-self: stretch !important;
  gap: clamp(14px, 1.35vw, 18px) !important;
}
#blog .s6-blog-list article {
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  overflow: hidden !important;
  padding: clamp(17px, 1.35vw, 22px) !important;
}
#blog .s6-home-blog-card-meta {
  min-height: 25px !important;
  margin-bottom: 9px !important;
  gap: 7px 9px !important;
}
#blog .s6-home-blog-card-meta > a,
#blog .s6-home-blog-card-meta > span:first-child {
  min-height: 25px !important;
  padding: 6px 11px 5px !important;
  font-size: .59rem !important;
}
#blog .s6-home-blog-card-meta > span:not(:first-child) {
  min-height: 25px !important;
  font-size: .59rem !important;
}
#blog .s6-blog-list article h3 {
  font-size: clamp(.96rem, 1.04vw, 1.22rem) !important;
  line-height: 1.03 !important;
  padding-bottom: .12em !important;
}
#blog .s6-blog-list article p {
  margin-top: 8px !important;
  font-size: clamp(.78rem, .76vw, .88rem) !important;
  line-height: 1.4 !important;
  padding-bottom: .12em !important;
}
#blog .s6-blog-list article > a {
  padding-top: 9px !important;
  font-size: .59rem !important;
}
@media (max-width: 900px) {
  #blog .s6-blog-list {
    height: auto !important;
    min-height: 0 !important;
    grid-template-rows: none !important;
  }
  #blog .s6-blog-list article {
    min-height: 190px !important;
  }
}

/* Keep long featured headlines readable on small phones. */
@media (max-width: 480px) {
  #blog .s6-blog-feature {
    min-height: 520px !important;
  }

  #blog .s6-blog-feature__content h3 {
    display: block !important;
    font-size: clamp(1.65rem, 7vw, 1.9rem) !important;
    line-height: 1.05 !important;
    -webkit-line-clamp: unset !important;
    -webkit-box-orient: unset !important;
    overflow: visible !important;
    overflow-wrap: anywhere;
  }
}

/* Keep the homepage hero's six-card destination consistent on smaller screens. */
@media (max-width: 1340px) {
  .s6-hero.is-revealed:not(.is-tearing):not(.is-reversing):not(.is-reverse-resetting) .s6-division-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-template-rows: repeat(2, clamp(140px, min(24vw, calc((100vh - 260px) / 2)), 278px)) !important;
    grid-auto-rows: clamp(140px, min(24vw, calc((100vh - 260px) / 2)), 278px) !important;
    align-content: center !important;
    gap: clamp(14px, 1.7vw, 20px) !important;
    padding: 200px clamp(18px, 2.5vw, 30px) 40px !important;
    overflow: hidden !important;
  }

  .s6-hero .s6-division-card {
    min-width: 0 !important;
    min-height: 0 !important;
  }

  .s6-division-card .s6-division-card__content {
    left: clamp(10px, 1.5vw, 20px) !important;
    right: clamp(10px, 1.5vw, 20px) !important;
    bottom: clamp(12px, 1.6vw, 20px) !important;
    max-width: none !important;
  }

  .s6-division-card .s6-division-card__title {
    font-size: clamp(.95rem, 2.25vw, 1.9rem) !important;
  }

  .s6-division-card__title-sub {
    font-size: .76em !important;
  }

  .s6-hero.is-tearing .s6-division-grid,
  .s6-hero.is-reversing .s6-division-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  @keyframes s6-grid-forward-tablet {
    0% {
      grid-template-rows: repeat(2, 50vh);
      align-content: stretch;
      gap: 0;
      padding: 0;
    }

    50%, 100% {
      grid-template-rows: repeat(2, clamp(140px, min(24vw, calc((100vh - 260px) / 2)), 278px));
      align-content: center;
      gap: clamp(14px, 1.7vw, 20px);
      padding: 200px clamp(18px, 2.5vw, 30px) 40px;
    }
  }

  @keyframes s6-grid-reverse-tablet {
    0%, 20% {
      grid-template-rows: repeat(2, clamp(140px, min(24vw, calc((100vh - 260px) / 2)), 278px));
      align-content: center;
      gap: clamp(14px, 1.7vw, 20px);
      padding: 200px clamp(18px, 2.5vw, 30px) 40px;
    }

    100% {
      grid-template-rows: repeat(2, 50vh);
      align-content: stretch;
      gap: 0;
      padding: 0;
    }
  }
}

@media (max-width: 760px) {
  .s6-hero.is-revealed:not(.is-tearing):not(.is-reversing):not(.is-reverse-resetting) .s6-division-grid {
    grid-template-rows: repeat(2, clamp(96px, 29vw, 150px)) !important;
    grid-auto-rows: clamp(96px, 29vw, 150px) !important;
    align-content: start !important;
    gap: clamp(7px, 2.2vw, 12px) !important;
    padding: 92px clamp(9px, 3vw, 18px) 28px !important;
  }

  .s6-division-card {
    min-width: 0 !important;
    min-height: 0 !important;
    border-radius: clamp(12px, 3.4vw, 20px) !important;
  }

  .s6-division-card .s6-division-card__content {
    left: clamp(7px, 2.4vw, 14px) !important;
    right: clamp(7px, 2.4vw, 14px) !important;
    bottom: clamp(8px, 2.6vw, 15px) !important;
    max-width: none !important;
  }

  .s6-division-card .s6-division-card__title {
    gap: clamp(2px, .7vw, 5px) !important;
    font-size: clamp(.68rem, 3.45vw, 1.28rem) !important;
    line-height: .94 !important;
    letter-spacing: -.035em !important;
  }

  .s6-division-card__title-sub {
    font-size: .76em !important;
    line-height: 1 !important;
  }

  .s6-division-card__divider {
    width: clamp(18px, 5.5vw, 34px) !important;
    margin: 0 !important;
  }

  .s6-division-card:hover .s6-division-card__divider,
  .s6-division-card.is-hovered .s6-division-card__divider {
    width: clamp(24px, 7vw, 42px) !important;
  }

  .s6-division-card .s6-division-card__cta {
    gap: 4px !important;
    margin-top: clamp(5px, 1.7vw, 9px) !important;
    font-size: clamp(.42rem, 1.85vw, .62rem) !important;
    letter-spacing: .14em !important;
  }

  .s6-division-card > .s6-division-card__label,
  .s6-division-card .s6-division-card__content > .s6-division-card__label {
    top: clamp(7px, 2.3vw, 13px) !important;
    right: clamp(7px, 2.3vw, 13px) !important;
    gap: clamp(3px, 1vw, 6px) !important;
    max-width: calc(100% - 14px) !important;
    font-size: clamp(.38rem, 1.6vw, .56rem) !important;
    letter-spacing: .12em !important;
  }

  .s6-division-card > .s6-division-card__label::before,
  .s6-division-card .s6-division-card__content > .s6-division-card__label::before {
    width: clamp(10px, 3.5vw, 21px) !important;
    flex-basis: clamp(10px, 3.5vw, 21px) !important;
  }

  @keyframes s6-grid-forward-mobile {
    0% {
      grid-template-rows: repeat(2, 50vh);
      align-content: stretch;
      gap: 0;
      padding: 0;
    }

    50%, 100% {
      grid-template-rows: repeat(2, clamp(96px, 29vw, 150px));
      align-content: start;
      gap: clamp(7px, 2.2vw, 12px);
      padding: 92px clamp(9px, 3vw, 18px) 28px;
    }
  }

  @keyframes s6-grid-reverse-mobile {
    0%, 20% {
      grid-template-rows: repeat(2, clamp(96px, 29vw, 150px));
      align-content: start;
      gap: clamp(7px, 2.2vw, 12px);
      padding: 92px clamp(9px, 3vw, 18px) 28px;
    }

    100% {
      grid-template-rows: repeat(2, 50vh);
      align-content: stretch;
      gap: 0;
      padding: 0;
    }
  }
}

/* Privacy policy and public form links — 4.2.59. */
.s6-form-privacy { margin: 16px 0; font-size: 13px; line-height: 1.5; }
.s6-form-privacy a, .s6-privacy-policy a { color: #a9d46e; text-decoration: underline; text-underline-offset: 3px; }
.s6-form-privacy a:hover, .s6-privacy-policy a:hover { color: #fff; }
.s6-form-privacy a:focus-visible, .s6-privacy-policy a:focus-visible { outline: 2px solid #8ec43f; outline-offset: 4px; }
.s6-basic-content:has(.s6-privacy-policy) > h1 { max-width: 1000px; font-size: clamp(2.2rem, 5vw, 4.5rem); line-height: 1.08; overflow-wrap: anywhere; }
.s6-privacy-policy { max-width: 820px; overflow-wrap: anywhere; }
.s6-privacy-policy h2 { margin: 2em 0 .7em; font-size: clamp(1.35rem, 2.5vw, 1.8rem); line-height: 1.3; letter-spacing: -.02em; text-transform: none; }
.s6-privacy-policy p, .s6-privacy-policy ul { margin: 0 0 1.2em; }
.s6-privacy-policy ul { padding-left: 1.4em; list-style: disc; }
.s6-privacy-policy li { margin: .35em 0; }
@media (max-width: 720px) { .s6-privacy-policy { font-size: 16px; line-height: 1.75; } }

/* Keep the complete privacy policy readable before any scroll reveal — 4.2.60. */
.s6-basic-page > .s6-section:has(.s6-privacy-policy) {
  opacity: 1;
  transform: none;
  transition: none;
}
