.editorial[data-astro-cid-cks3wgm5] {
  padding: clamp(40px, 6vw, 90px) 7vw;
  --ink: #10233e;
  --paper: #fff5ec;
  background: #f8dcc2;
  color: var(--ink);
}

.editorial--retail[data-astro-cid-cks3wgm5] {
  --ink: #103b3c;
  --paper: #fff8e8;
  background: #e5ede4;
}

.editorial--production[data-astro-cid-cks3wgm5] {
  --ink: #392239;
  --paper: #fff5ef;
  background: #f0e4ed;
}

header[data-astro-cid-cks3wgm5] {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 16px;
  margin-bottom: 22px;
}

h2[data-astro-cid-cks3wgm5] {
  margin: 0;
  font-size: clamp(2rem, 4.2vw, 4.2rem);
  line-height: 1.05;
  letter-spacing: -.04em;
}

.editorial--retail[data-astro-cid-cks3wgm5] h2[data-astro-cid-cks3wgm5] {
  font-family: Georgia, serif;
  font-weight: 400;
}

header[data-astro-cid-cks3wgm5] p[data-astro-cid-cks3wgm5] {
  margin: 8px 0 0;
}

.editorial__controls[data-astro-cid-cks3wgm5] {
  display: flex;
  gap: 6px;
}

.editorial__controls[data-astro-cid-cks3wgm5][hidden] {
  display: none;
}

button[data-astro-cid-cks3wgm5] {
  width: 44px;
  height: 44px;
  border: 1px solid;
  border-radius: 50%;
  background: none;
  color: inherit;
  cursor: pointer;
}

button[data-astro-cid-cks3wgm5]:disabled {
  opacity: .4;
  cursor: default;
}

button[data-astro-cid-cks3wgm5]:hover:enabled {
  background: var(--paper);
}

.editorial__rail[data-astro-cid-cks3wgm5] {
  overflow: hidden;
  padding-block: 4px;
}

ul[data-astro-cid-cks3wgm5] {
  list-style: none;
  margin: 0;
  padding: 0;
}

li[data-astro-cid-cks3wgm5] {
  height: auto;
  min-width: 0;
}

.editorial__rail[data-astro-cid-cks3wgm5]:not(.swiper-initialized) ul[data-astro-cid-cks3wgm5] {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(240px, 100%), 1fr));
  gap: 14px;
}

li[data-astro-cid-cks3wgm5] a[data-astro-cid-cks3wgm5] {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  border-radius: 12px;
  overflow: hidden;
  background: var(--paper);
  color: inherit;
  text-decoration: none;
}

a[data-astro-cid-cks3wgm5]:focus-visible, button[data-astro-cid-cks3wgm5]:focus-visible {
  outline: 2px solid;
  outline-offset: -3px;
}

.editorial__photo[data-astro-cid-cks3wgm5] {
  overflow: hidden;
  aspect-ratio: 16 / 9;
  background: var(--ink);
}

img[data-astro-cid-cks3wgm5] {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.editorial__body[data-astro-cid-cks3wgm5] {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: start;
  padding: clamp(16px, 2.6vw, 32px);
}

small[data-astro-cid-cks3wgm5] {
  font-size: .72rem;
  font-weight: 750;
}

h3[data-astro-cid-cks3wgm5] {
  margin: 8px 0 6px;
  font-size: clamp(1.16rem, 2vw, 1.65rem);
  line-height: 1.12;
}

.editorial__body[data-astro-cid-cks3wgm5] p[data-astro-cid-cks3wgm5] {
  margin: 0 0 16px;
  line-height: 1.5;
  font-size: .87rem;
}

.editorial__body[data-astro-cid-cks3wgm5] > span[data-astro-cid-cks3wgm5] {
  margin-top: auto;
  text-decoration: underline;
  text-underline-offset: .23em;
  font-size: .85rem;
  font-weight: 750;
}

@media (width <= 670px) {
  header[data-astro-cid-cks3wgm5] p[data-astro-cid-cks3wgm5] {
    font-size: .84rem;
  }
}

@media (width <= 360px) {
  button[data-astro-cid-cks3wgm5] {
    width: 40px;
  }

  header[data-astro-cid-cks3wgm5] {
    gap: 8px;
  }
}
.impact-stats[data-astro-cid-uyeki7zl] {
  padding: clamp(40px, 6vw, 90px) 7vw;
  background: #fff5ec;
  color: #10233e;
}

header[data-astro-cid-uyeki7zl] {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  align-items: end;
  gap: 24px;
  margin-bottom: 36px;
}

header[data-astro-cid-uyeki7zl] p[data-astro-cid-uyeki7zl] {
  margin: 0;
  max-width: 52ch;
  font-size: .85rem;
  line-height: 1.65;
}

.impact-stats__grid[data-astro-cid-uyeki7zl] {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px;
  margin: 0;
}

.impact-stats__item[data-astro-cid-uyeki7zl] {
  border-top: 1px solid #10233e40;
  padding-top: 20px;
  min-width: 0;
}

svg[data-astro-cid-uyeki7zl] {
  display: block;
  margin-bottom: 20px;
  color: #934000;
}

dt[data-astro-cid-uyeki7zl] {
  font-size: clamp(1.8rem, 3.2vw, 3.7rem);
  font-weight: 750;
  letter-spacing: -.03em;
  font-variant-numeric: tabular-nums;
  line-height: 1.1;
  white-space: nowrap;
}

.impact-stats__unit[data-astro-cid-uyeki7zl] {
  font-size: .55em;
  letter-spacing: 0;
}

dd[data-astro-cid-uyeki7zl] {
  margin: 12px 0 0;
  max-width: 26ch;
  font-size: .9rem;
  line-height: 1.5;
}

.impact-stats__sr[data-astro-cid-uyeki7zl] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}

.street .impact-stats[data-astro-cid-uyeki7zl] {
  background: #10233e;
  color: #fff5ec;
}

.street .impact-stats__item[data-astro-cid-uyeki7zl] {
  border-color: #fff5ec55;
}

.street svg[data-astro-cid-uyeki7zl] {
  color: #ffb36b;
}

.retail .impact-stats[data-astro-cid-uyeki7zl] {
  background: #e5ede4;
  color: #103b3c;
}

.retail .impact-stats__item[data-astro-cid-uyeki7zl] {
  background: #f5eddb;
  padding: 18px 12px;
  border: 0;
  border-radius: 12px;
}

.production .impact-stats[data-astro-cid-uyeki7zl] {
  background: #f0e4ed;
  color: #392239;
}

.production .impact-stats__item[data-astro-cid-uyeki7zl] {
  border-color: #39223955;
}

@media (prefers-reduced-motion: no-preference) {
  .is-counting[data-astro-cid-uyeki7zl] svg[data-astro-cid-uyeki7zl] {
    animation: .45s ease-out both stat-rise;
  }
}

@keyframes stat-rise {
  from {
    opacity: .4;
    transform: translateY(8px);
  }
}

@media (width <= 900px) {
  header[data-astro-cid-uyeki7zl] {
    grid-template-columns: 1fr;
  }

  .impact-stats__grid[data-astro-cid-uyeki7zl] {
    grid-template-columns: 1fr 1fr;
    gap: 28px 20px;
  }

  dt[data-astro-cid-uyeki7zl] {
    font-size: clamp(1.8rem, 5vw, 3.2rem);
  }
}

@media (width <= 370px) {
  .impact-stats__grid[data-astro-cid-uyeki7zl] {
    grid-template-columns: 1fr;
  }
}
.content-details[data-astro-cid-ssye5igl] {
  margin-top: 24px;
  max-width: 960px;
}

details[data-astro-cid-ssye5igl] {
  border-bottom: 1px solid;
}

summary[data-astro-cid-ssye5igl] {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 20px 0;
  min-height: 64px;
  cursor: pointer;
  list-style: none;
  font-weight: 700;
}

summary[data-astro-cid-ssye5igl]::-webkit-details-marker {
  display: none;
}

summary[data-astro-cid-ssye5igl] b[data-astro-cid-ssye5igl] {
  margin-left: auto;
  font-size: 22px;
  font-weight: 400;
}

details[data-astro-cid-ssye5igl][open] summary[data-astro-cid-ssye5igl] b[data-astro-cid-ssye5igl] {
  transform: rotate(45deg);
}

summary[data-astro-cid-ssye5igl] svg[data-astro-cid-ssye5igl] {
  flex: none;
}

details[data-astro-cid-ssye5igl] p[data-astro-cid-ssye5igl] {
  margin: 0 0 24px 40px;
  max-width: 62ch;
  line-height: 1.65;
}

summary[data-astro-cid-ssye5igl]:hover {
  color: var(--detail-hover, #ffbd7f);
}

summary[data-astro-cid-ssye5igl]:focus-visible {
  outline: 3px solid #ed800d;
  outline-offset: 4px;
}

@media (prefers-reduced-motion: no-preference) {
  summary[data-astro-cid-ssye5igl] b[data-astro-cid-ssye5igl] {
    transition: transform .15s;
  }

  details[data-astro-cid-ssye5igl][open] p[data-astro-cid-ssye5igl] {
    animation: .2s ease-out detail-appear;
  }
}

@keyframes detail-appear {
  from {
    opacity: .65;
    transform: translateY(-4px);
  }
}
.swiper-coverflow {
}
.swiper.swiper-cards {
  overflow: visible;
}
.swiper-cards {
  .swiper-slide {
    transform-origin: center bottom;
    backface-visibility: hidden;
    overflow: hidden;
  }
}
.gallery-carousel[data-astro-cid-dnwwftab]:not(.swiper-initialized) .swiper-wrapper[data-astro-cid-dnwwftab] {
  overflow-x: auto;
  scroll-snap-type: x mandatory;
}

.gallery-carousel[data-astro-cid-dnwwftab]:not(.swiper-initialized) .swiper-slide[data-astro-cid-dnwwftab] {
  scroll-snap-align: start;
}

.carousel-controls[data-astro-cid-dnwwftab]:not([hidden]) {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 14px;
  margin-top: 12px;
}

.carousel-controls[data-astro-cid-dnwwftab] button[data-astro-cid-dnwwftab] {
  min-width: 44px;
  min-height: 44px;
  border: 1px solid;
  border-radius: 50%;
  color: inherit;
  background: none;
  cursor: pointer;
}

.carousel-controls[data-astro-cid-dnwwftab] button[data-astro-cid-dnwwftab]:hover:not(:disabled) {
  background: #ed800d;
  color: #201a17;
}

.carousel-controls[data-astro-cid-dnwwftab] button[data-astro-cid-dnwwftab]:disabled {
  opacity: .4;
  cursor: default;
}

.photo-gallery[data-astro-cid-dnwwftab].photo-gallery--hero {
  padding: 0;
  background: none;
  color: inherit;
}

.photo-gallery[data-astro-cid-dnwwftab].photo-gallery--hero figcaption[data-astro-cid-dnwwftab] {
  color: inherit;
}

.photo-gallery--hero[data-astro-cid-dnwwftab] .photo-gallery__head[data-astro-cid-dnwwftab] {
  display: none;
}

.photo-gallery--hero[data-astro-cid-dnwwftab] .photo-gallery__image[data-astro-cid-dnwwftab] {
  height: clamp(260px, 38vw, 520px);
}

.photo-gallery--hero[data-astro-cid-dnwwftab] .photo-gallery__source[data-astro-cid-dnwwftab] {
  display: none;
}

.gallery-viewer[data-astro-cid-dnwwftab] {
  width: min(940px, 94vw);
  border: 0;
  border-radius: 20px;
  background: #20201f;
  color: #fff;
  padding: 14px;
}

.gallery-viewer[data-astro-cid-dnwwftab]::backdrop {
  background: #171716dd;
}

.gallery-viewer[data-astro-cid-dnwwftab] form[data-astro-cid-dnwwftab] {
  display: flex;
  justify-content: flex-end;
  margin-bottom: 8px;
}

.gallery-viewer[data-astro-cid-dnwwftab] img[data-astro-cid-dnwwftab] {
  display: block;
  width: 100%;
  height: min(66vh, 640px);
  object-fit: contain;
  background: #292927;
}

.gallery-viewer[data-astro-cid-dnwwftab] button[data-astro-cid-dnwwftab] {
  border: 1px solid #888;
  border-radius: 8px;
  min-height: 44px;
  padding: 6px 14px;
  color: #fff;
  background: #343433;
  cursor: pointer;
}

.gallery-viewer[data-astro-cid-dnwwftab] button[data-astro-cid-dnwwftab]:hover {
  background: #ed800d;
  color: #20201f;
}

.gallery-viewer__bar[data-astro-cid-dnwwftab] {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  text-align: center;
  gap: 10px;
  margin-top: 8px;
}

.photo-gallery__image[data-astro-cid-dnwwftab] {
  display: block;
}

.photo-gallery__image[data-astro-cid-dnwwftab]:focus-visible {
  outline: 3px solid #ed800d;
  outline-offset: 4px;
}

.photo-gallery[data-astro-cid-dnwwftab] {
  --gallery-paper: #f4f3f0;
  padding: clamp(72px, 9vw, 132px) clamp(22px, 8vw, 126px);
  color: #292927;
  background: var(--gallery-paper);
}

.photo-gallery__head[data-astro-cid-dnwwftab] {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(220px, .65fr);
  gap: clamp(22px, 6vw, 90px);
  align-items: end;
  margin-bottom: clamp(32px, 5vw, 68px);
}

.photo-gallery__head[data-astro-cid-dnwwftab] h2[data-astro-cid-dnwwftab] {
  max-width: 760px;
  margin: 0;
  font-size: clamp(2.6rem, 5.4vw, 5.7rem);
  line-height: .95;
  letter-spacing: -.045em;
  font-weight: 570;
  text-wrap: balance;
}

.photo-gallery__head[data-astro-cid-dnwwftab] p[data-astro-cid-dnwwftab] {
  max-width: 390px;
  margin: 0 0 4px;
  color: #565653;
  font-size: 14px;
  line-height: 1.7;
}

.photo-gallery__item[data-astro-cid-dnwwftab] {
  min-width: 0;
  margin: 0;
}

.gallery-carousel[data-astro-cid-dnwwftab] {
  padding-block: 16px;
}

.gallery-carousel--flip[data-astro-cid-dnwwftab] {
  width: min(420px, 82%);
  overflow: visible;
  margin-inline: auto;
}

.gallery-carousel--flip[data-astro-cid-dnwwftab] .swiper-slide[data-astro-cid-dnwwftab] {
  background: #f4f1e9;
  border-radius: 24px;
  padding: 14px;
  box-sizing: border-box;
  box-shadow: 0 14px 32px #17212020;
}

.gallery-carousel--flip[data-astro-cid-dnwwftab] figcaption[data-astro-cid-dnwwftab] {
  color: #292927;
  padding: 12px 8px 4px;
}

.photo-gallery--hero[data-astro-cid-dnwwftab] .gallery-carousel[data-astro-cid-dnwwftab] {
  padding: 0;
  border-radius: 24px;
}

.gallery-carousel[data-astro-cid-dnwwftab] .swiper-slide[data-astro-cid-dnwwftab] {
  transition-timing-function: cubic-bezier(.2, .7, .25, 1);
}

.photo-gallery__image[data-astro-cid-dnwwftab] {
  height: clamp(210px, 25vw, 360px);
  overflow: hidden;
  border-radius: 24px;
  background: #e5e3dd;
}

.photo-gallery__image[data-astro-cid-dnwwftab] img[data-astro-cid-dnwwftab] {
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: auto;
  object-fit: cover;
  object-position: center;
  padding: 0;
  transition: filter .2s;
}

.photo-gallery__image--contain[data-astro-cid-dnwwftab] {
  display: grid;
  place-items: center;
  background: #d9d7d2;
}

.photo-gallery__image--contain[data-astro-cid-dnwwftab] img[data-astro-cid-dnwwftab] {
  object-fit: contain;
  padding: 12px;
}

.photo-gallery__item[data-astro-cid-dnwwftab]:hover img[data-astro-cid-dnwwftab] {
  filter: brightness(1.025);
}

.photo-gallery__item[data-astro-cid-dnwwftab] figcaption[data-astro-cid-dnwwftab] {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  padding-top: 12px;
  color: #3c3c3b;
  font-size: 12px;
  line-height: 1.4;
}

.photo-gallery__source[data-astro-cid-dnwwftab] {
  margin: 34px 0 0;
  color: #64635f;
  font-size: 10px;
  letter-spacing: .035em;
}

.photo-gallery--print[data-astro-cid-dnwwftab] .photo-gallery__head[data-astro-cid-dnwwftab] h2[data-astro-cid-dnwwftab] {
  max-width: 590px;
}

.photo-gallery--retail[data-astro-cid-dnwwftab] {
  background: #e9e7e2;
}

.photo-gallery--industry[data-astro-cid-dnwwftab] {
  color: #f4f3f0;
  background: #3c3c3b;
}

.photo-gallery--industry[data-astro-cid-dnwwftab] .photo-gallery__head[data-astro-cid-dnwwftab] p[data-astro-cid-dnwwftab], .photo-gallery--industry[data-astro-cid-dnwwftab] .photo-gallery__source[data-astro-cid-dnwwftab] {
  color: #e1dfda;
}

.photo-gallery--industry[data-astro-cid-dnwwftab] .photo-gallery__item[data-astro-cid-dnwwftab] figcaption[data-astro-cid-dnwwftab] {
  color: #f4f3f0;
}

.photo-gallery--editorial[data-astro-cid-dnwwftab] {
  background: #eeece6;
}

.photo-gallery--editorial[data-astro-cid-dnwwftab] .photo-gallery__head[data-astro-cid-dnwwftab] {
  grid-template-columns: 1fr .42fr;
}

.photo-gallery--journey[data-astro-cid-dnwwftab] {
  background: #fff;
}

.photo-gallery--journey[data-astro-cid-dnwwftab] .photo-gallery__head[data-astro-cid-dnwwftab] {
  border-bottom: 1px solid #3c3c3b35;
  padding-bottom: 28px;
}

.photo-gallery--journey[data-astro-cid-dnwwftab] .photo-gallery__item[data-astro-cid-dnwwftab] figcaption[data-astro-cid-dnwwftab] {
  min-height: 46px;
}

@media (width <= 800px) {
  .photo-gallery__head[data-astro-cid-dnwwftab] {
    grid-template-columns: 1fr;
    gap: 18px;
  }
}

@media (width <= 560px) {
  .photo-gallery[data-astro-cid-dnwwftab] {
    padding: 68px 22px;
  }

  .photo-gallery__head[data-astro-cid-dnwwftab] {
    margin-bottom: 30px;
  }

  .photo-gallery__head[data-astro-cid-dnwwftab] h2[data-astro-cid-dnwwftab] {
    font-size: clamp(2.5rem, 12vw, 4rem);
  }

  .photo-gallery__image[data-astro-cid-dnwwftab] {
    height: clamp(210px, 60vw, 300px);
    border-radius: 18px;
  }

  .photo-gallery__item[data-astro-cid-dnwwftab] figcaption[data-astro-cid-dnwwftab] {
    font-size: 11px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .photo-gallery__image[data-astro-cid-dnwwftab] img[data-astro-cid-dnwwftab] {
    transition: none;
  }
}
/* Three service entrances, with independent visual and interaction models. */
.redesign { background:var(--paper); color:var(--ink); }
.redesign .proposal-header { margin-bottom:0; background:var(--paper); }
.redesign .proposal-header--light:not(.is-scrolled) { background:var(--deep); }
.redesign h1 { text-transform:none; letter-spacing:-.055em; line-height:.98; }
.redesign img { display:block; max-width:100%; }
.redesign :is(button,summary):focus-visible { outline:3px solid #ed800d; outline-offset:4px; }
.redesign .action { display:inline-block; }
.street { --paper:#f8dcc2; --deep:#10233e; --ink:#10233e; }
.service-desk { padding:clamp(32px,7vw,100px) 7vw; background:#ed800d; }
.desk-title h1 { max-width:17ch; font:900 clamp(3rem,8vw,8rem)/.94 'Arial Black',system-ui,sans-serif; }
.desk-form { margin-top:2rem; }
.desk-form fieldset { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; border:0; padding:0; margin:0 0 12px; }
.desk-form legend { padding:0 0 12px; font-weight:700; }
.desk-form label { display:flex; align-items:center; gap:10px; background:#fff0df; padding:16px; cursor:pointer; border:2px solid transparent; }
.desk-form label:has(:checked) { border-color:#10233e; background:#10233e; color:white; }
.desk-form input { accent-color:#ed800d; }
.desk-form button { display:flex; justify-content:space-between; gap:28px; border:0; background:#10233e; color:white; padding:16px 20px; font:700 1rem system-ui; cursor:pointer; }
.street-close { padding:48px 7vw; background:#10233e; color:white; }
.street-close .action { color:#ffbd7f; }
.retail { --paper:#f5eddb; --deep:#103b3c; --ink:#103b3c; }
.showroom { background:#103b3c; color:#fff4df; padding:36px 5vw 24px; }
.showroom-intro { text-align:center; margin-bottom:26px; }
.showroom-intro h1 { font:400 clamp(3rem,8vw,7.5rem)/.95 Georgia,serif; }
.showroom-stage { max-width:1200px; margin:auto; }
.showroom-stage img { width:100%; height:clamp(260px,42vw,520px); object-fit:cover; object-position:center; padding:0; background:#e5e3dd; border-radius:24px; box-sizing:border-box; }
.showroom-stage figcaption { padding:.6rem 0; font:600 .83rem system-ui; }
.showroom-controls { display:flex; flex-wrap:wrap; justify-content:center; gap:8px; padding:16px 0 0; }
.showroom-controls button { border:1px solid #a8c0b4; border-radius:100px; color:#fff4df; background:transparent; padding:.7rem 1.1rem; font:600 .9rem system-ui; cursor:pointer; }
.showroom-controls button[aria-pressed="true"] { background:#ed800d; color:#152b28; border-color:#ed800d; }
.showroom-order { background:#f5eddb; display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:12px 24px; padding:20px 6vw; border-bottom:1px solid #103b3c40; }
.retail .action { border-radius:100px; background:#103b3c; color:#fff4df; padding:12px 20px; text-decoration:none; font-weight:700; }
.retail-index { padding:45px 7vw; }
.retail-index dt { font-weight:700; }
.retail-index dd { margin:0 0 1rem; }
.production { --paper:#ead7e2; --deep:#392239; --ink:#2d172d; }
.production-route { padding:clamp(30px,6vw,90px) 8vw; }
.route-heading { max-width:880px; }
.route-heading h1 { font:800 clamp(3rem,8.5vw,8rem)/.94 'Trebuchet MS',system-ui,sans-serif; }
.route-heading .action { color:#392239; text-underline-offset:6px; text-decoration-color:#a04b00; font-weight:800; }
.route-tracks { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:38px; align-items:start; }
.route-tracks details { border-top:4px solid #ed800d; background:#392239; color:white; padding:18px; }
.route-tracks summary { cursor:pointer; font:700 1rem system-ui; }
.route-tracks summary span { margin-right:.55em; color:#ffbd7f; font:700 .85rem monospace; }
.proof-spec { padding:36px 8vw; background:#fff5ef; }
.proof-spec dl { display:flex; flex-wrap:wrap; gap:1rem 6vw; }
.proof-spec dt { font:700 clamp(1.5rem,4vw,3rem) monospace; }
.proof-spec dd { margin:0; }
@media(max-width:720px) {
  .desk-form fieldset { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .route-tracks { grid-template-columns:1fr; }
}

.service-facts { padding:clamp(24px,5vw,70px) 7vw; }
.retail-index .service-facts { padding:24px 0; border-top:1px solid #103b3c40; }
.service-facts p { max-width:68ch; }
.service-facts dl { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr)); gap:1.5rem; }
.service-facts dt { font-weight:800; }
.service-facts dd { margin:.4rem 0 0; line-height:1.6; }
.redesign .proposal-menu summary span { transition:transform .16s ease; }
.redesign .proposal-menu nav a:hover { background:#f8dcc2; color:#10233e; }
.redesign :is(.action,.desk-form button,.showroom-controls button,.route-tracks summary) { transition:background-color .18s ease,color .18s ease; }
.desk-form button:hover { background:#274a70; }
.retail .action:hover { background:#235b59; }
.route-heading .action:hover { color:#854700; }
.route-tracks summary:hover { color:#ffbd7f; }
.showroom-controls button:hover { border-color:#ed800d; }
@media (prefers-reduced-motion:no-preference) {
  .showroom-stage figure:not([hidden]) { animation:showroom-in .25s ease-out; }

}
@keyframes showroom-in { from { opacity:.6; } }
@keyframes section-in { from { opacity:.78; transform:translateY(12px); } }

.image-pending { position:relative; }
.image-pending::after {
  content:"Cargando imagen…";
  position:absolute;
  z-index:1;
  inset:0;
  display:grid;
  place-items:center;
  border-radius:24px;
  color:#fff4df;
  background:linear-gradient(110deg,#26383a 35%,#48615e 50%,#26383a 65%) 0 0 / 240% 100%;
  font:600 .9rem system-ui;
  pointer-events:none;
}
.archive-section { padding:clamp(30px,6vw,82px) 7vw; }
.archive-section p { max-width:65ch; }
.archive-section li { margin-block:.5rem; }
.retail .archive-section { background:#103b3c; color:#fff4df; }
.street .archive-section { background:#f8dcc2; color:#10233e; }
.production .archive-section { background:#392239; color:#fff5ef; }
@media (prefers-reduced-motion:no-preference) {
  html:has(.redesign) { scroll-behavior:smooth; }
  .has-entered { animation:section-in .5s cubic-bezier(.2,.7,.25,1) both; }
  .image-pending::after { animation:loading-sweep 1.4s linear infinite; }
}
@keyframes loading-sweep { to { background-position:240% 0; } }

.archive-guide { border-top:1px solid currentColor; }
.archive-guide dl { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr)); gap:20px; max-width:820px; }
.archive-guide dt { font-weight:800; }
.archive-guide dd { margin:.4rem 0; line-height:1.6; }
.archive-guide ol { max-width:72ch; padding-left:1.4rem; }
.archive-guide li { padding:.45rem 0; border-bottom:1px solid #fff4; }
.retail .archive-guide .action { background:#f5eddb; color:#103b3c; }
.retail .archive-guide .action:hover { background:#ed800d; }

/* Menús de las propuestas */
.redesign .service-menu { display:block; order:1; }
.redesign .service-menu summary { display:flex; align-items:center; gap:10px; width:auto; padding:0 12px; }
.redesign .service-menu summary .service-menu__label { width:auto; height:auto; background:none; transform:none; font-size:.85rem; font-weight:700; }
.service-menu__icon { flex:none; }

.redesign .service-menu:not([open]) nav { display:none; }
.redesign .service-menu[open] .service-menu__panel { display:grid; max-height:75dvh; overflow:auto; }
.service-menu__panel a { opacity:1 !important; }
.service-menu__panel a strong,.service-menu__panel a em { display:block; }
.service-menu__panel a em { font-style:normal; margin-top:5px; line-height:1.45; }
.redesign .service-menu--print summary { background:#ed800d; color:#10233e; }
.redesign .service-menu--print .service-menu__panel { width:min(660px,90vw); grid-template-columns:repeat(3,1fr); gap:10px; background:#10233e; }
.service-menu--print .service-menu__panel a { background:#fff0df; color:#10233e; padding:16px; }
.service-menu--print .service-menu__contact { grid-column:1/-1; }
.redesign .service-menu--retail summary { border:1px solid currentColor; border-radius:100px; }
.redesign .service-menu--retail .service-menu__panel { width:min(690px,90vw); grid-template-columns:repeat(3,1fr); gap:12px; background:#103b3c; color:#fff4df; border-radius:18px; }
.service-menu--retail img { width:100%; height:95px; object-fit:cover; border-radius:9px; margin-bottom:9px; }
.service-menu--retail .service-menu__contact { grid-column:1/-1; }
.redesign .service-menu--production summary { border-bottom:2px solid #ed800d; }
.redesign .service-menu--production .service-menu__panel { width:min(350px,90vw); background:#392239; color:#fff5ef; }
.service-menu--production small { color:#ffbd7f; font-family:monospace; }
.redesign .service-menu .service-menu__panel a:hover { background:#ed800d; color:#10233e; }
@media(max-width:860px) {
  .redesign .service-menu[open] .service-menu__panel { grid-template-columns:1fr; width:min(340px,calc(100vw - 40px)); }
  .service-menu--retail img { height:62px; }
}

.service-menu--print .service-menu__panel svg { display:block; margin-bottom:12px; color:#8a4200; }
.service-menu--production .service-menu__panel a:not(.service-menu__contact) {
  display:grid;
  grid-template-columns:2.1rem 1fr;
  border-bottom:0;
  border-left:1px solid #ffbd7f80;
  margin-left:6px;
  padding-left:12px;
}
.service-menu--production .service-menu__panel small { grid-row:span 2; }
.service-menu--production .service-menu__panel a:hover small { color:inherit; }
.service-menu--production .service-menu__contact { margin-top:8px; }
@media (max-width:860px) {
  .service-menu--print .service-menu__panel a:not(.service-menu__contact),
  .service-menu--retail .service-menu__panel a:not(.service-menu__contact) {
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    column-gap:12px;
    align-content:center;
  }
  .service-menu--print .service-menu__panel svg,
  .service-menu--retail .service-menu__panel img { grid-row:span 2; align-self:center; margin:0; }
  .service-menu--retail .service-menu__panel img { width:78px; height:54px; }
}


.service-desk > .photo-gallery--hero,
.production-route > .photo-gallery--hero { margin-block:24px; }
.showroom-carousel:not(.swiper-initialized) .swiper-wrapper { overflow-x:auto; }
@media (min-width: 960px) {
  .service-desk { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.15fr); gap:0 4vw; align-items:start; }
  .service-desk .desk-title { grid-column:1; }
  .service-desk > .photo-gallery--hero { grid-column:2; grid-row:1 / span 2; margin:0; min-width:0; }
  .service-desk .desk-form { grid-column:1; }
  .service-desk .desk-form fieldset { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

.showroom-carousel { padding-block:18px; }
.showroom-carousel .swiper-slide { transition-timing-function:cubic-bezier(.2,.7,.25,1); }
.showroom-carousel .swiper-slide:not(.swiper-slide-active) figcaption { opacity:.45; }
.showroom-carousel .swiper-slide-active img { box-shadow:0 16px 30px #061f2638; }
.showroom-controls button { transition:background .2s ease,border-color .2s ease; }
.production .photo-gallery--hero { background:transparent; }

.retail .showroom-carousel { width:min(100% - 48px,980px); overflow:visible; margin:24px auto; }
.retail .showroom-carousel .swiper-slide { background:#103b3c; border-radius:24px; }
.production .gallery-carousel { border-radius:24px; }
.street .carousel-controls { justify-content:space-between; }
.street .carousel-controls button { border-radius:6px; background:#10233e; color:#fff5e8; border:0; min-width:58px; }
.production .carousel-controls { justify-content:center; }
.production .carousel-controls button { border-radius:100px; min-width:72px; }

.street .archive-section,.production .production-route { --detail-hover:#8a4200; }
.retail .retail-index { --detail-hover:#9a4700; }

/* Materiales: composición de trabajo e imagen en dos planos. */
.street .material-showcase { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); align-items:center; gap:clamp(24px,4vw,70px); padding:clamp(36px,5vw,80px) 7vw; }
.street .material-showcase h2 { max-width:18ch; font-size:clamp(2rem,3.4vw,4rem); letter-spacing:-.035em; }
.material-showcase__copy > p { max-width:58ch; }
.material-showcase__options { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin:28px 0; }
.material-showcase__options svg { color:#9c4600; margin-bottom:10px; }
.material-showcase__options h3 { font-size:1rem; line-height:1.3; margin:0; }
.material-showcase__options p { font-size:.9rem; margin:8px 0 0; line-height:1.6; }
.material-showcase .action { display:inline-block; background:#10233e; color:#fff4e8; padding:12px 18px; text-decoration:none; }
.material-showcase .action:hover { background:#28486b; }
.material-showcase small { display:block; font-size:.75rem; max-width:55ch; margin-top:12px; line-height:1.5; }
.material-showcase__visual { border-radius:36px 8px 36px 8px; overflow:hidden; background:#10233e; }
.material-showcase__visual img { display:block; width:100%; height:clamp(300px,34vw,540px); object-fit:cover; }
.material-showcase__visual figcaption { position:relative; padding:15px 20px; background:#10233e; color:#fff3e7; font-size:.8rem; }

/* Retail: vitrine éclairée, avec sa fiche à côté. */
.retail .retail-spotlight { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); align-items:center; gap:5vw; background:#f5eddb; color:#103b3c; --detail-hover:#8a4200; }
.retail-spotlight__visual { padding:clamp(20px,3vw,48px); border-radius:100px 100px 20px 20px; background:#d9e6da; }
.retail-spotlight__visual img { width:100%; height:clamp(240px,29vw,430px); object-fit:contain; mix-blend-mode:multiply; }
.retail-spotlight__visual figcaption { margin-top:18px; text-align:center; font-size:.8rem; }
.retail .retail-spotlight h2 { font:400 clamp(2rem,3.8vw,4rem)/1.05 Georgia,serif; }
.retail .retail-spotlight .action { background:#103b3c; color:#fff4df; margin-top:20px; }
.retail .retail-spotlight .action:hover { background:#235b59; }

/* Production: image persistante et étapes à ouvrir. */
.production .production-scope { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); align-items:start; gap:5vw; }
.production-scope__intro { position:sticky; top:110px; }
.production .production-scope h2 { font-size:clamp(2rem,3.4vw,4rem); }
.production-scope .content-details { margin-top:0; }
.production-scope figure { border-radius:16px; overflow:hidden; margin-top:24px; }
.production-scope img { width:100%; height:260px; object-fit:cover; }

.production .production-specialties {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,.8fr);
  align-items:center;
  gap:clamp(24px,6vw,100px);
  background:#392239;
}
.production-specialties h2 {
  max-width:17ch;
  font-size:clamp(2rem,4vw,4.5rem);
  line-height:1.05;
  text-wrap:balance;
}
.production-specialties__list {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 20px;
  margin:28px 0 20px;
  padding:0;
  list-style:none;
}
.production .production-specialties__list li {
  display:flex;
  align-items:center;
  gap:12px;
  margin:0;
  padding:12px 0;
  border-top:1px solid #fff5ef36;
  font-size:.92rem;
  font-weight:700;
}
.production-specialties__list svg { flex:none; color:#ffb36b; }
.production-specialties .action { color:#ffb36b; text-underline-offset:.24em; }
.production-specialties__visual {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  margin:0;
  min-height:clamp(300px,35vw,520px);
  border-radius:12px;
  background:#281429;
}
.production-specialties__visual img {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
}
.production-specialties__visual figcaption {
  position:absolute;
  inset:auto 0 0;
  padding:48px 20px 18px;
  background:linear-gradient(transparent,#211321);
  color:#fff5ef;
  font-size:.85rem;
}
@media(prefers-reduced-motion:no-preference) {
  .production-specialties__visual img { transform:translateY(calc(var(--depth,0) * 8%)) scale(1.18); }
}
@media(max-width:800px) {
  .production .production-specialties { grid-template-columns:1fr; }
  .production-specialties__visual { min-height:clamp(240px,56vw,420px); }
}
@media(max-width:450px) {
  .production-specialties__list { grid-template-columns:1fr; }
}

@media(prefers-reduced-motion:no-preference) {
  @supports(animation-timeline:view()) {
    .scroll-photo:not([data-scroll-depth]) img { animation:photo-drift linear both; animation-timeline:view(); animation-range:entry 0% exit 100%; }
  }
}
@keyframes photo-drift { from { transform:scale(1.07) translateY(-10px); } to { transform:scale(1.07) translateY(10px); } }
.retail-spotlight__visual[data-scroll-depth] { overflow:hidden; }
.retail-spotlight__visual[data-scroll-depth] img {
  translate:calc(var(--depth,0) * 16%) calc(var(--depth,0) * -12%);
}
.production-scope [data-scroll-depth] img {
  transform:translateY(calc(var(--depth,0) * 16%)) scale(1.34);
}
@media(prefers-reduced-motion:reduce) {
  .production-scope [data-scroll-depth] img { transform:none; }
}
@media(max-width:800px) {
  .street .material-showcase,.retail .retail-spotlight,.production .production-scope { grid-template-columns:1fr; gap:28px; }
  .production-scope__intro { position:static; }
  .retail-spotlight__visual { max-width:430px; width:100%; justify-self:center; box-sizing:border-box; }
  .material-showcase__visual img { height:280px; }
}
@media(max-width:440px) {
  .material-showcase__options { grid-template-columns:1fr; gap:22px; }
}

/* Banner de producción: fotografía, mensaje y navegación en un mismo plano. */
.production .production-route { padding:0; }
.production-banner { display:grid; position:relative; isolation:isolate; background:#241927; color:#fff5ef; }
.production-banner > .route-heading,
.production-banner > .photo-gallery--hero { grid-area:1 / 1; min-width:0; }
.production-banner > .photo-gallery--hero { margin:0; position:relative; }
body .redesign.production .production-banner .gallery-carousel { border-radius:0; }
body .redesign.production .production-banner .photo-gallery__image { height:clamp(540px,78svh,860px); border-radius:0; }
body .redesign.production .production-banner .photo-gallery__image img { border-radius:0; object-position:60% center; }
body .redesign.production .production-banner .photo-gallery__item figcaption { display:none; }
.production-banner > .route-heading {
  position:relative;
  z-index:3;
  max-width:none;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  padding:clamp(32px,6vw,100px) 8vw 110px;
  background:linear-gradient(90deg,#241927ed 0%,#241927c9 32%,#24192738 72%,#2419270d 100%);
  pointer-events:none;
}
.production-banner .route-heading h1 {
  max-width:11ch;
  margin:0;
  font-size:clamp(3rem,5.7vw,6.5rem);
  line-height:.99;
  letter-spacing:-.04em;
  text-wrap:balance;
}
.production-banner .route-heading p { max-width:43ch; color:#fff5ef; font-size:clamp(.95rem,1.1vw,1.1rem); margin:24px 0; text-wrap:pretty; }
.production-banner .route-heading .action { pointer-events:auto; background:#ed800d; color:#241927; padding:14px 20px; border-radius:6px; text-decoration:none; }
.production-banner .route-heading .action:hover { background:#ffb566; color:#241927; }
.production-banner .carousel-controls { position:absolute; z-index:4; bottom:24px; right:8vw; margin:0; padding:8px 12px; border-radius:100px; background:#241927d9; color:#fff5ef; gap:16px; }
.production-banner .carousel-controls button { min-width:44px; border-color:#fff5ef70; }
.production .route-tracks { padding:30px 8vw; margin:0; background:#ead7e2; }
.street .desk-title h1 { font-size:clamp(3rem,5.4vw,6rem); max-width:13ch; letter-spacing:-.04em; }
.street .service-desk { padding-block:clamp(32px,4vw,64px); }
.retail .showroom-intro h1 { font-size:clamp(2.8rem,6vw,6.5rem); letter-spacing:-.04em; }
.retail .showroom { padding-top:clamp(24px,3vw,44px); }
@media(max-width:720px) {
  body .redesign.production .production-banner .photo-gallery__image { height:clamp(590px,82svh,800px); }
  .production-banner > .route-heading { justify-content:flex-end; padding:36px 7vw 115px; background:linear-gradient(0deg,#241927f5 0%,#241927d9 35%,#24192721 100%); }
  .production-banner .route-heading h1 { font-size:clamp(3rem,11vw,4.7rem); }
  .production-banner .carousel-controls { right:7vw; bottom:22px; }
  .production .route-tracks { padding:24px 7vw; }
}

/* Impresión: una pantalla de campaña con desplazamiento lateral en profundidad. */
.street .service-desk { display:block; padding:0; background:#ed800d; }
.print-banner { display:grid; isolation:isolate; position:relative; color:#fff4e8; background:#10233e; }
.print-banner > .desk-title,.print-banner > .photo-gallery--hero { grid-area:1 / 1; min-width:0; }
.print-banner > .desk-title { z-index:3; padding:clamp(34px,6vw,100px) 8vw 110px; display:flex; flex-direction:column; align-items:flex-start; justify-content:flex-end; background:linear-gradient(0deg,#10233ef2 0%,#10233e8c 55%,#10233e05 100%); pointer-events:none; }
.street .print-banner .desk-title h1 { max-width:13ch; font-size:clamp(3rem,5.8vw,6.5rem); color:#fff4e8; }
.print-banner .desk-title p { max-width:42ch; margin:20px 0; }
.print-banner .desk-title .action { pointer-events:auto; display:inline-block; padding:14px 20px; background:#ed800d; color:#10233e; text-decoration:none; font-weight:800; border-radius:6px; }
.print-banner .desk-title .action:hover { background:#ffb566; }
.print-banner > .photo-gallery--hero { margin:0; }
body .redesign.street .print-banner .gallery-carousel,
body .redesign.street .print-banner .photo-gallery__image { border-radius:0; }
body .redesign.street .print-banner .photo-gallery__image { height:clamp(560px,78svh,850px); }
body .redesign.street .print-banner .photo-gallery__item figcaption { display:none; }
.print-banner .carousel-controls { position:absolute; z-index:4; bottom:24px; right:8vw; margin:0; color:white; gap:14px; }
.print-banner .carousel-controls button { border:1px solid #fff7; background:#10233ebf; min-width:44px; }
.street .service-desk .desk-form { padding:28px 7vw 34px; margin:0; }
.street .service-desk .desk-form fieldset { grid-template-columns:repeat(4,minmax(0,1fr)); }

/* Retail: photographie plein écran, fondue et mouvement interne. */
.retail .showroom { display:grid; position:relative; isolation:isolate; padding:0; background:#103b3c; }
.retail .showroom-intro,.retail .showroom-stage { grid-area:1 / 1; min-width:0; width:100%; max-width:none; margin:0; box-sizing:border-box; }
.retail .showroom-intro { z-index:3; padding:60px 8vw 140px; display:flex; flex-direction:column; align-items:center; justify-content:center; pointer-events:none; background:linear-gradient(0deg,#082c2df2 0%,#082c2d9c 46%,#082c2d4d 100%); color:#fff6e6; }
.retail .showroom-intro h1 { max-width:16ch; font-size:clamp(3.2rem,6.7vw,7rem); margin:0; text-wrap:balance; }
.retail .showroom-intro p { max-width:42ch; margin:22px 0; }
.retail .showroom-intro .action { pointer-events:auto; color:#103b3c; background:#fff4df; border:1px solid #fff4df; }
.retail .showroom-intro .action:hover { background:#ed800d; border-color:#ed800d; }
.retail .showroom-carousel { margin:0; width:100%; overflow:hidden; padding:0; }
.retail .showroom-stage figure { overflow:hidden; border-radius:0; }
.retail .showroom-stage img { height:clamp(560px,78svh,850px); border-radius:0; object-position:center; box-shadow:none; }
.retail .showroom-stage figcaption { display:none; }
.retail .showroom-controls { position:absolute; bottom:24px; left:7vw; right:7vw; z-index:4; padding:0; }
.retail .showroom-controls button { background:#103b3cd9; color:#fff4df; border-color:#fff4df90; }
.retail .showroom-controls button[aria-pressed="true"] { background:#ed800d; color:#103b3c; border-color:#ed800d; }
@media(max-width:720px) {
  .street .service-desk .desk-form fieldset { grid-template-columns:1fr 1fr; }
  .print-banner > .desk-title { padding:36px 7vw 110px; }
  .street .print-banner .desk-title h1 { font-size:clamp(2.8rem,10vw,4.5rem); }
  .retail .showroom-intro { padding:36px 7vw 155px; justify-content:flex-end; }
  .retail .showroom-intro h1 { font-size:clamp(3rem,11vw,4.8rem); }
}

/* Navigation floats over each photographic opening; one explicit contrast state. */
body .redesign .proposal-header--integrated { margin-bottom:-82px; background:transparent; color:#fff8ee; border:0; box-shadow:none; }
body .redesign .proposal-header--integrated:not(.is-scrolled) { background:linear-gradient(180deg,#07131dbf,transparent); }
body .redesign .proposal-header--integrated.is-scrolled { background:#f7f6f2; color:var(--ink); box-shadow:0 5px 20px #07131d12; }
body .redesign .proposal-header--integrated:not(.is-scrolled) .proposal-brand__logo--light { opacity:1; }
body .redesign .proposal-header--integrated:not(.is-scrolled) .proposal-brand__logo--dark { opacity:0; }
body .redesign .proposal-header--integrated .proposal-header__contact { font-weight:600; }
body .redesign .proposal-header--integrated:not(.is-scrolled) .service-menu--production summary { color:#fff8ee; }
body .redesign .proposal-header--integrated.is-scrolled .service-menu--production summary { color:var(--ink); }
body .redesign .print-banner > .desk-title,body .redesign .production-banner > .route-heading { padding-top:130px; }
body .redesign .showroom-intro { padding-top:130px; }
body .redesign .print-banner .photo-gallery__image,body .redesign .production-banner .photo-gallery__image,body .redesign .showroom-stage img { min-height:660px; }

/* The mural moves inside the full-width frame as the heading scrolls with the page. */
.street .print-expertise { padding:0; }
.print-expertise__banner {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  display:grid;
  align-items:end;
  min-height:clamp(380px,65svh,720px);
  padding:clamp(32px,6vw,90px) 7vw;
  background:#10233e;
  color:#fff4e8;
}
.print-expertise__mural {
  position:absolute;
  inset:0;
  overflow:hidden;
}
.print-expertise__mural img {
  position:absolute;
  inset:-12% 0;
  width:100%;
  height:124%;
  object-fit:cover;
}
.print-expertise__mural::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(0deg,#10233ef5 0%,#10233ec2 32%,#10233e19 80%);
  pointer-events:none;
}
.street .print-expertise h2 {
  position:relative;
  z-index:1;
  font-size:clamp(2.5rem,6.5vw,6rem);
  max-width:13ch;
  line-height:1.04;
  letter-spacing:-.035em;
  margin:0;
}
.print-expertise h2 span { display:block; }
.print-expertise__intro { padding:clamp(32px,5vw,72px) 7vw; }
.print-expertise__intro > p { max-width:48ch; font-size:1rem; }
.street .print-expertise dl { grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr)); margin:28px 0; }
.print-expertise dl > div { padding:20px 0; border-top:1px solid #10233e35; }
.print-expertise dt { display:flex; align-items:center; gap:16px; font-size:1.1rem; }
.print-expertise dt svg { flex:none; color:#924100; }
.street .print-expertise dd { margin:8px 0 0 48px; max-width:43ch; font-size:.95rem; }
.print-expertise .action { font-size:.9rem; font-weight:700; color:#10233e; text-underline-offset:6px; }
.print-expertise .action span { display:inline-block; margin-left:12px; }
.street .print-project { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:6vw; padding:clamp(36px,5vw,76px) 7vw; }
.print-project h2 { font-size:clamp(2.2rem,3.8vw,4.5rem); line-height:1.05; max-width:12ch; margin:0 0 18px; }
.print-project p { font-size:1rem; }
.print-project .action { background:#ed800d; color:#10233e; padding:15px 22px; border-radius:8px; text-decoration:none; font-size:.95rem; font-weight:800; margin-top:14px; }
.print-project .action:hover { background:#ffb566; }
.print-project__brief { padding:0; margin:0; list-style:none; }
.print-project__brief li { display:flex; align-items:center; gap:20px; padding:22px 0; border-bottom:1px solid #fff3; }
.print-project__brief li:last-child { border:0; }
.print-project__brief svg { color:#ffb566; flex:none; }
.print-project__brief strong,.print-project__brief span { display:block; }
.print-project__brief strong { font-size:1rem; margin-bottom:5px; }
.print-project__brief span { font-size:.9rem; color:#e5edf5; }
@media(prefers-reduced-motion:no-preference) {
  @supports(animation-timeline:view()) {
    .print-expertise__scene {
      --scene-top:82px;
      min-height:calc(100svh - var(--scene-top) + clamp(340px,72svh,620px));
      view-timeline-name:--print-banner;
      view-timeline-inset:var(--scene-top) 0;
    }
    .print-expertise__banner {
      position:sticky;
      top:var(--scene-top);
      min-height:calc(100svh - var(--scene-top));
    }
    .print-expertise__banner::before {
      content:"";
      position:absolute;
      inset:0;
      background:#ed800d;
      animation:print-mural-reveal linear both;
      animation-timeline:--print-banner;
      animation-range:contain 0% contain 85%;
    }
    .print-expertise__mural {
      animation:print-mural-reveal linear both;
      animation-timeline:--print-banner;
      animation-range:contain 4% contain 94%;
    }
    .print-expertise__mural img {
      animation:print-surface-drift linear both;
      animation-timeline:--print-banner;
      animation-range:contain;
    }
    .print-expertise h2 span + span {
      animation:print-type-reveal linear both;
      animation-timeline:--print-banner;
      animation-range:contain 28% contain 76%;
    }
    @media(max-width:600px) {
      .print-expertise__scene { --scene-top:70px; }
    }
  }
  .print-expertise .action span { transition:transform .2s ease; }
  .print-expertise .action:hover span { transform:translate(3px,-3px); }
}
@keyframes print-surface-drift {
  from { transform:translateY(-8%) scale(1.2); }
  to { transform:translateY(8%) scale(1); }
}
@keyframes print-mural-reveal {
  from { clip-path:polygon(44% 10%, 100% 10%, 100% 78%, 62% 78%); }
  to { clip-path:polygon(0 0, 100% 0, 100% 100%, 0 100%); }
}
@keyframes print-type-reveal {
  from { opacity:0; transform:translateY(32px); clip-path:inset(0 0 100% 0); }
  to { opacity:1; transform:translateY(0); clip-path:inset(0); }
}
@media(max-width:800px) {
  .street .print-project { grid-template-columns:1fr; gap:28px; }
}
@media(max-width:720px) {
  body .redesign .proposal-header--integrated { margin-bottom:-70px; }
  body .redesign .print-banner .photo-gallery__image,body .redesign .production-banner .photo-gallery__image,body .redesign .showroom-stage img { min-height:700px; }
}
.retail-spotlight__visual img[hidden] { display:none; }
.retail-spotlight__visual img { aspect-ratio:4/3; }
@media(prefers-reduced-motion:no-preference) {
  .retail-spotlight__visual img:not([hidden]) { animation:spotlight-photo-in .35s cubic-bezier(.16,1,.3,1) both; }
}
@keyframes spotlight-photo-in { from { opacity:.35; transform:translateY(8px); } to { opacity:1; transform:none; } }

