/* Campaign composition over the existing site tokens and typography. */
.campaign { --era-accent: var(--eco-green); --era-wipe: 2.4s; --era-wipe-ease: cubic-bezier(.16,1,.3,1); background: var(--charcoal); color: var(--white); overflow-x: hidden; overflow-x: clip; min-height: 100vh; min-height: 100svh; }
html:has(body.campaign) { min-height: 100%; min-height: 100vh; min-height: 100svh; }
.campaign :is(h1,h2,h3,p,figure) { margin: 0; }
.campaign :is(h1,h2,h3) { overflow-wrap: normal; }
.campaign em { color: var(--brand-highlight); font-style: normal; }
.campaign [hidden] { display: none !important; }
.campaign :is(a,button,input,summary):focus-visible { outline: 3px solid #ed971b; outline-offset: 6px; box-shadow: none; }
.campaign .skip-link { color: var(--charcoal); }
.campaign :is(section,[id]) { scroll-margin-top: 100px; }
.era-header { position: relative; position: -webkit-sticky; position: sticky; top: 0; z-index: 20; display: flex; align-items: center; gap: 32px; padding: 20px 4.5%; min-height: 94px; background: var(--charcoal); border-bottom: 1px solid #ffffff20; transition: padding .3s; }
.era-header.is-compact { padding-block: 12px; }
.era-logo { position: relative; width: 205px; flex: 0 0 205px; }
.era-logo img { width: 100%; height: auto; }
.era-logo__orange { position: absolute; inset: 0; opacity: 0; }
.era-logo__green,.era-logo__orange { transition: opacity var(--era-wipe, 2.4s) var(--era-wipe-ease, cubic-bezier(.16,1,.3,1)); }
.era-desktop-nav { display: flex; gap: 30px; margin-left: auto; font-size: .85rem; }
.era-desktop-nav a { padding-block: 10px; }
.era-desktop-nav a:hover { color: var(--brand-highlight); }
.era-quote { padding: 11px 0; border-bottom: 2px solid var(--era-accent); font-size: .85rem; white-space: nowrap; }
.era-quote span { margin-left: 12px; }
.era-menu { display: none; }
.era-kicker { font-size: .68rem; text-transform: uppercase; letter-spacing: .19em; font-weight: 650; }
.era-hero { width: 100%; min-width: 0; min-height: 100vh; min-height: 100svh; min-height: 100dvh; display: flex; flex-direction: column; position: relative; isolation: isolate; overflow: hidden; background: #1f1d1d; --era-heading-size: clamp(3.15rem,6.2vw,7.1rem); --era-heading-leading: .95; --era-wipe: 2.4s; --era-wipe-ease: cubic-bezier(.16,1,.3,1); --era-copy-pad: clamp(1.5rem, 5.5vw, 5rem); --era-title-row: calc(var(--era-heading-size) * var(--era-heading-leading) * 2); --era-origin: 86% 54%; }
.era-hero em { color: #c8e38a; }
.era-hero::before { content: ''; display: block; flex: 0 0 auto; width: 1px; height: 32rem; height: 100vh; height: 100svh; height: 100dvh; pointer-events: none; visibility: hidden; }
.era-hero::after { content: ''; position: absolute; z-index: 0; inset: -24%; pointer-events: none; opacity: .38; background: radial-gradient(ellipse at 18% 35%, #8bc66a 0 6%, transparent 34%), radial-gradient(ellipse at 78% 62%, #0c6a3c 0 9%, transparent 38%), radial-gradient(ellipse at 52% 8%, #b7d69a 0 4%, transparent 27%); filter: blur(34px); animation: era-drift 18s ease-in-out infinite alternate; }
@keyframes era-drift { 0% { transform: translate3d(-3%,1%,0) scale(1); } 50% { transform: translate3d(2%,-2%,0) scale(1.06); } 100% { transform: translate3d(4%,3%,0) scale(1.02); } }
@keyframes era-breathe { from { transform: scale(1); } to { transform: scale(1.04); } }
@keyframes era-bloom { 0% { opacity: 0; transform: scale(.4); } 22% { opacity: .9; transform: scale(1); } 100% { opacity: 0; transform: scale(1.35); } }
.era-hero__stage { position: absolute; z-index: 1; inset: 0; width: 100%; }
.era-hero__now, .era-hero__then {
  box-sizing: border-box;
  position: absolute;
  inset: 0;
  display: grid;
  grid-template-columns: minmax(0, 1.7fr) minmax(11rem, .52fr);
  grid-template-rows: minmax(0, 1fr);
  padding: 0;
  gap: 0;
}
.era-hero__then {
  z-index: 1;
  pointer-events: none;
  background:
    radial-gradient(ellipse at 18% 24%, #4a3218 0 16%, transparent 52%),
    radial-gradient(ellipse at 82% 78%, #ed971b28 0 22%, transparent 58%),
    #1a1816;
}
.era-hero__now {
  z-index: 2;
  background:
    radial-gradient(ellipse at 12% 18%, #1d6a42 0 20%, transparent 54%),
    radial-gradient(ellipse at 88% 82%, #07180f 0 28%, transparent 62%),
    #0d3322;
}
.era-hero__atmosphere { grid-column: 1 / -1; grid-row: 1; z-index: 0; overflow: hidden; pointer-events: none; position: absolute; inset: 0; }
.era-hero__atmosphere img { position: absolute; width: 230%; height: 250%; max-width: none; left: -42%; top: -92%; object-fit: cover; object-position: 48% 100%; opacity: .95; filter: blur(5px) saturate(1.4) contrast(1.14); }
.era-hero__atmosphere::after { content: ''; position: absolute; inset: 0; background:
  linear-gradient(90deg, #0d3322f2 0 18%, #0d3322b8 36%, #0d332254 56%, #0d332214 76%),
  linear-gradient(180deg, #0d3322aa 0%, transparent 16%, transparent 82%, #07180ff0 100%); }
.era-hero__then .era-hero__atmosphere::after { background:
  linear-gradient(90deg, #1a1816f0 0 18%, #1a1816b0 36%, #1a181650 56%, #1a181612 76%),
  linear-gradient(180deg, #1a1816aa 0%, transparent 16%, transparent 82%, #120f0cf0 100%); }
.era-hero__then .era-hero__atmosphere img { left: -12%; top: -18%; width: 140%; height: 140%; object-position: 50% 40%; opacity: .78; filter: blur(6px) saturate(.7) contrast(1.12) sepia(.28); }
.era-hero__now::before { content: ''; position: absolute; z-index: 2; inset: -20%; pointer-events: none; opacity: 0; background: radial-gradient(circle at var(--era-origin), #f3f8d8 0 6%, #8bc66a55 18%, transparent 46%); transform-origin: var(--era-origin); }
.era-intro .era-hero__now { clip-path: circle(0% at var(--era-origin)); transition: none; }
.era-reveal .era-hero__now { clip-path: circle(165% at var(--era-origin)); transition: clip-path var(--era-wipe) var(--era-wipe-ease); }
.era-reveal .era-hero__now::before { animation: era-bloom var(--era-wipe) ease-out both; }
.era-hero__copy {
  grid-column: 1;
  grid-row: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: auto var(--era-title-row) auto auto auto auto;
  justify-items: start;
  align-content: stretch;
  align-self: stretch;
  row-gap: 1.05rem;
  padding: 5.5vh 5% 10vh var(--era-copy-pad);
  min-width: 0;
  position: relative;
  z-index: 3;
}
.era-hero .era-kicker,
.era-hero h1,
.era-hero__title,
.era-hero__description,
.era-hero__facts,
.era-hero__aside,
.era-hero .era-actions {
  margin: 0;
  padding: 0;
  max-width: 100%;
}
.era-hero .era-kicker { color: #d7d2c8; letter-spacing: .14em; }
.era-hero h1, .era-hero__title { font-size: var(--era-heading-size); line-height: var(--era-heading-leading); font-weight: 600; letter-spacing: -.045em; width: 100%; max-width: none; }
.era-hero__description { color: #d5d0c6; font-size: clamp(1.12rem,1.85vw,1.5rem); line-height: 1.48; min-height: 5.9em; max-width: 46ch; }
.era-hero__facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem 1.4rem; width: 100%; max-width: 44rem; padding-top: 1.15rem; border-top: 1px solid #ffffff2e; list-style: none; }
.era-hero__facts li { display: grid; gap: .35rem; min-width: 0; }
.era-hero__facts span { font-size: .62rem; letter-spacing: .16em; text-transform: uppercase; color: #c4bfb4; }
.era-hero__facts strong { font-size: clamp(1.02rem,1.5vw,1.35rem); font-weight: 550; letter-spacing: -.02em; }
.era-hero__aside { color: #ece8df; font-size: clamp(1.35rem,2.15vw,2.05rem); line-height: 1.22; font-weight: 550; letter-spacing: -.03em; max-width: 16ch; min-height: 2.5em; }
.era-hero .era-actions { display: flex; flex-wrap: wrap; justify-content: start; align-items: end; gap: 0.85rem 1.5rem; min-height: 2.75rem; }
.era-actions { display: flex; flex-wrap: wrap; align-content: start; gap: 22px 30px; }
.era-link { display: inline-flex; align-items: center; gap: 0.45em; padding: 8px 0; border-bottom: 1px solid var(--era-accent); font-size: .88rem; font-weight: 550; }
.era-hero .era-link span { margin: 0; }
.era-link:hover { color: var(--era-accent); }
.era-link--quiet { border-color: #ffffff45; }
.era-hero__media { grid-column: 2; grid-row: 1; position: relative; z-index: 1; min-width: 0; min-height: 0; background: transparent; align-self: stretch; padding: 8vh var(--era-copy-pad) 12vh 0; }
.era-intro .era-roll--heritage { animation: era-breathe 2.4s var(--era-wipe-ease) forwards; }
.era-reveal .era-roll--heritage { transform: scale(.92); filter: brightness(.72); transition: transform var(--era-wipe) var(--era-wipe-ease), filter var(--era-wipe) var(--era-wipe-ease); }
.era-roll--green { transform: scale(1.04); }
.era-intro .era-roll--green { transform: scale(.88); }
.era-reveal .era-roll--green { transform: scale(1.04); transition: transform var(--era-wipe) var(--era-wipe-ease); }
/* Clip the source photographs without repainting product pixels. Packaging
   width, label positions and the base share the same optical registration. */
.era-roll { position: absolute; inset: 0; pointer-events: none; transform-origin: 50% 52%; }
.era-roll::before { content: ''; position: absolute; width: 42%; height: 4%; bottom: 10%; left: 29%; background: #05050455; border-radius: 50%; filter: blur(14px); }
.era-roll img { position: absolute; width: auto; max-width: none; left: 50%; user-select: none; }
.era-roll--heritage img { height: 58%; top: 21%; transform: translateX(-51.8%); clip-path: polygon(49% 10%,50% 8.5%,52% 7.5%,54% 10%,56.5% 11.5%,59% 11%,61% 13%,62.5% 16%,63.5% 20%,63.5% 79%,63.8% 88%,62.5% 91%,60% 92.5%,52% 93%,44% 92.5%,40.5% 91%,39.5% 86%,40% 60%,40.5% 23%,41.5% 17%,43% 13.5%,47% 13%); }
.era-roll--green img { height: 60%; top: 20%; transform: translateX(-48.6%); clip-path: polygon(21% 6%,23% 4.5%,29% 2.7%,31% 2.5%,34% 3.8%,39% 1.7%,46% 1.2%,53% 1.3%,62% 2.4%,69% 4%,73% 6.5%,74% 8.5%,73% 12%,74% 15%,77% 18%,79% 22%,79% 25%,77% 28%,73% 30%,71.5% 31%,71.5% 91%,70% 93%,65% 95%,56% 96%,44% 96%,34% 95.4%,28% 94%,26% 92%,25.5% 89%,25.7% 26%,26.5% 23%,24% 21%,23% 18%,22% 13%,21% 9%,20.5% 7.5%); }
.era-hero__bottom { position: absolute; z-index: 4; left: 0; right: 0; bottom: 0; display: flex; justify-content: space-between; align-items: center; gap: 20px; padding: 8px var(--era-copy-pad, 4.5%) 22px; padding: 8px var(--era-copy-pad, 4.5%) max(22px, env(safe-area-inset-bottom, 0px)); color: #c9c6c0; font-size: .7rem; }
.era-intro-control { background: none; border: 0; border-bottom: 1px solid #777; padding: 12px 0; color: #fff; font-size: .75rem; }
.era-intro-control span { margin-left: 8px; }
.era-intro .campaign { --era-accent: #ed971b; }
.era-intro .era-logo__orange { opacity: 1; transition: none; }
.era-intro .era-logo__green { opacity: 0; transition: none; }
.era-intro .era-hero::after { opacity: 0; transition: none; }
.era-reveal .era-hero::after { transition: opacity var(--era-wipe) var(--era-wipe-ease); }
.era-intro:not(.era-typing) .era-hero__then .era-kicker,
.era-intro:not(.era-typing) .era-hero__then .era-hero__title,
.era-intro:not(.era-typing) .era-hero__then .era-hero__description,
.era-intro:not(.era-typing) .era-hero__then .era-hero__aside { color: transparent; }
.era-intro .era-hero__then .era-hero__facts { opacity: 0; transform: translate3d(0, 12px, 0); }
.era-intro .era-hero__then.is-typed .era-hero__facts { opacity: 1; transform: none; transition: opacity .55s ease, transform .55s cubic-bezier(.16, 1, .3, 1); }
.era-caret { display: inline-block; width: .08em; height: .78em; margin-left: .1em; background: currentColor; vertical-align: .08em; animation: era-caret .72s steps(1) infinite; }
.era-hero__title .era-caret { height: .7em; width: .055em; vertical-align: .12em; }
@keyframes era-caret { 0%, 49% { opacity: 1; } 50%, 100% { opacity: 0; } }
.era-reveal .era-logo__green, .era-reveal .era-logo__orange { transition: opacity var(--era-wipe) var(--era-wipe-ease); }
.era-section { padding: clamp(80px,10vw,180px) 8%; }
.era-section h2,.era-material h2 { font-size: clamp(2.8rem,5.5vw,6.4rem); line-height: 1.02; font-weight: 550; letter-spacing: -.055em; }
.era-section .era-kicker,.era-material .era-kicker { margin-bottom: 35px; }
.era-story { display: grid; grid-template-columns: 1.1fr 1fr; gap: 0 8%; background: var(--paper); color: var(--ink); }
.era-story > .era-kicker { grid-column: 1/-1; }
.era-story em { color: var(--action); }
.era-statements article { display: flex; gap: 25px; border-top: 1px solid var(--line); padding: 28px 0; }
.era-statements article > span { font-size: .65rem; padding-top: 8px; color: var(--muted); }
.era-statements h3 { font-size: 1.6rem; font-weight: 550; letter-spacing: -.035em; margin-bottom: 10px; }
.era-statements p { color: var(--muted); max-width: 34ch; font-size: .95rem; }
.era-compare-section { background: #e9ebe5; color: var(--ink); }
.era-section-heading { display: flex; justify-content: space-between; align-items: end; gap: 50px; margin-bottom: 50px; }
.era-section-heading h2 { font-size: clamp(2.7rem,4vw,4.5rem); }
.era-section-heading > p { max-width: 30ch; color: var(--muted); font-size: .9rem; }
.era-compare { position: relative; height: clamp(340px,50vw,690px); background: #f3f1e9; overflow: hidden; touch-action: pan-y; }
.era-comparison-ready { cursor: ew-resize; }
.era-compare figure { position: absolute; inset: 0; }
.era-compare__then { clip-path: inset(0 calc(100% - var(--comparison)) 0 0); background: #f3f1e9; }
.era-compare figcaption { position: absolute; bottom: 22px; background: var(--charcoal); color: #fff; padding: 10px 15px; font-size: .66rem; letter-spacing: .12em; }
.era-compare__now figcaption { right: 22px; border-bottom: 2px solid var(--eco-green); }
.era-compare__then figcaption { left: 22px; border-bottom: 2px solid #ed971b; }
.era-compare__divider { display: none; position: absolute; left: var(--comparison); height: 100%; border-left: 2px solid #1f1d1d70; pointer-events: none; }
.era-comparison-ready .era-compare__divider { display: block; }
.era-compare__divider span { position: absolute; top: 50%; transform: translate(-50%,-50%); background: #1f1d1d; color: white; width: 48px; height: 48px; border: 1px solid white; display: grid; place-items: center; font-size: 1.3rem; }
.era-compare input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: ew-resize; touch-action: pan-y; }
.era-compare:focus-within { outline: 3px solid var(--action); outline-offset: 5px; }
.era-compare:focus-within .era-compare__divider span { outline: 3px solid #ed971b; outline-offset: 3px; }
.era-compare-control { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px 30px; margin-top: 22px; font-size: .75rem; color: var(--muted); }
.era-material { position: relative; min-height: 750px; display: grid; grid-template-columns: 1fr 1fr; background: #090a09; overflow: hidden; }
.era-material > img { width: 100%; height: 100%; object-fit: cover; object-position: 35% center; }
.era-material__copy { padding: 100px 12% 100px 10%; align-self: center; }
.era-material__copy p:not(.era-kicker) { color: #c4c9c0; margin-top: 30px; max-width: 35ch; }
.era-material__copy h2 { font-size: clamp(2.8rem,4.7vw,5.5rem); }
.era-material__copy .era-link { margin-top: 20px; }
.era-range { background: var(--paper); color: var(--ink); }
.era-range .era-section-heading { margin-bottom: 80px; }
.era-product { display: grid; grid-template-columns: 1.15fr 1fr; gap: 8%; padding: 55px 0; border-top: 1px solid var(--line); align-items: center; }
.era-product:nth-child(even) .era-product__image { order: 2; }
.era-product__image { height: 480px; background: #eeefeb; overflow: hidden; }
.era-product__image img { width: 100%; height: 100%; object-fit: contain; }
.era-product__copy > span { font-size: .65rem; letter-spacing: .14em; color: var(--muted); }
.era-product h3 { margin: 20px 0; font-size: clamp(2.1rem,3.3vw,4rem); line-height: 1.08; letter-spacing: -.05em; font-weight: 550; }
.era-product p { color: var(--muted); font-size: .95rem; max-width: 40ch; }
.era-product .era-link { margin-top: 20px; border-color: var(--action); }
.era-product .era-link:hover { color: var(--action); }
.era-product--text { grid-template-columns: 1fr; padding-block: 80px; }
.era-product--text .era-product__copy { max-width: 850px; }
.era-climate { display: grid; grid-template-columns: 1fr 1fr; gap: 8%; background: var(--green-950); }
.era-climate p:not(.era-kicker),.era-technical > p:not(.era-kicker) { max-width: 43ch; margin-top: 28px; color: #c4cec4; }
.era-climate .era-link { margin-top: 20px; }
.era-small { font-size: .77rem; line-height: 1.7; }
.era-map { align-self: stretch; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 24px; overflow: visible; min-width: 0; }
.era-map img { display: block; width: 80%; max-width: none; height: auto; margin: 0; }
.era-map path { fill: #174b30; stroke: #91b983; stroke-width: 1.5; }
.era-map .era-map__detail { fill: var(--green-950); }
.era-map .era-map__leader { fill: none; }
.era-map circle { fill: #b7d69a; }
.era-map text { fill: #b7d69a; font-size: 14px; letter-spacing: 3px; }
.era-map figcaption { text-align: center; color: #c4cec4; font-size: .8rem; }
.era-benefits { background: var(--paper); color: var(--ink); }
.era-benefits h2 { margin-bottom: 70px; }
.era-benefit-line { display: grid; grid-template-columns: 1.2fr 1fr; gap: 8%; padding: 35px 0; border-top: 1px solid var(--line); }
.era-benefit-line h3 { font-size: clamp(1.8rem,3.3vw,3.6rem); font-weight: 500; letter-spacing: -.04em; }
.era-benefit-line p { max-width: 40ch; color: var(--muted); align-self: center; }
.era-benefits > .era-small { color: var(--muted); margin-top: 30px; }
.era-technical { background: #171916; }
.era-technical .era-link { margin-top: 25px; }
.era-resource-links { display: flex; flex-wrap: wrap; gap: 15px 40px; border-top: 1px solid #ffffff30; padding-top: 25px; margin-top: 65px; font-size: .8rem; }
.era-resource-links a { padding-block: 10px; }
.era-help { background: #e9ebe5; color: var(--ink); }
.era-help h2 { margin-bottom: 65px; }
.era-help > a { display: grid; grid-template-columns: 1fr 1.2fr auto; gap: 20px; border-top: 1px solid #bfc6bb; padding: 30px 0; align-items: center; }
.era-help > a > span:first-child { font-size: .75rem; color: var(--muted); }
.era-help strong { font-size: clamp(1.4rem,2.5vw,2.6rem); font-weight: 550; letter-spacing: -.04em; }
.era-help > a > span:last-child { font-size: 1.8rem; }
.era-help > a:hover { color: var(--action); }
.era-finale { text-align: center; padding-bottom: 100px; }
.era-finale h2 { font-size: clamp(4rem,8vw,10rem); }
.era-finale .era-actions { justify-content: center; margin-top: 50px; }
.era-finale > img { width: min(550px,80%); height: auto; margin: 100px auto 0; }
.era-footer { padding: 50px 4.5% 20px; background: #171916; color: #bfc4bb; font-size: .78rem; }
.era-footer__top { display: flex; justify-content: space-between; gap: 40px; padding-bottom: 40px; }
.era-footer__top nav { display: flex; flex-wrap: wrap; align-content: start; gap: 5px 30px; max-width: 650px; }
.era-footer a { display: inline-block; padding-block: 9px; }
.era-footer__top p { margin-top: 10px; }
.era-footer__bottom { border-top: 1px solid #ffffff25; padding-top: 22px; display: flex; justify-content: space-between; gap: 25px; }
.era-footer__bottom nav { display: flex; flex-wrap: wrap; gap: 20px; }
.era-footer button { background: none; color: inherit; border: 0; font-size: inherit; text-decoration: underline; }
.era-reveal-pending { opacity: .85; transform: translateY(18px); transition: opacity .8s,transform .8s; }
.era-reveal-pending.is-visible { opacity: 1; transform: none; }
@media (min-width:1600px) { .era-hero { --era-copy-pad: 8%; } }
@media (max-width:1100px) {
  .era-desktop-nav { gap: 18px; } .era-header { gap: 20px; } .era-logo { width: 170px; flex-basis: 170px; }
  .era-hero { --era-heading-size: clamp(2.7rem,5.4vw,5.6rem); }
  .era-section { padding-inline: 6%; } .era-material__copy { padding: 70px 8%; } .era-material { min-height: 600px; }
  .era-product__image { height: 360px; }
}
@media (max-width:800px) {
  .era-header { min-height: 80px; padding: 16px 5%; } .era-desktop-nav { display: none; }
  .era-quote { margin-left: auto; font-size: .72rem; } .era-quote span { display: none; }
  .era-menu { display: block; } .era-menu summary { cursor: pointer; padding: 12px 0 12px 8px; list-style: none; font-size: .75rem; } .era-menu summary::-webkit-details-marker { display: none; }
  .era-menu nav { position: absolute; top: 100%; right: 0; left: 0; padding: 15px 5% 25px; background: var(--charcoal); border-bottom: 1px solid var(--eco-green); display: grid; }
  .era-menu nav a { padding: 12px 0; border-top: 1px solid #ffffff20; }
  .era-hero { --era-heading-size: clamp(2.2rem,9vw,3rem); --era-copy-pad: 7%; --era-origin: 72% 62%; --era-title-row: calc(var(--era-heading-size) * var(--era-heading-leading) * 3); }
  .era-hero__now, .era-hero__then {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: minmax(0, 1fr);
    padding: 0;
    gap: 0;
  }
  .era-hero__atmosphere { grid-column: 1; grid-row: 1; position: absolute; inset: 0; }
  .era-hero__atmosphere img { width: 260%; height: 280%; left: -55%; top: -110%; object-position: 42% 100%; }
  .era-hero__atmosphere::after { background:
    linear-gradient(180deg, #0d3322f2 0%, #0d3322c4 22%, #0d332278 48%, #07180ff2 100%); }
  .era-hero__then .era-hero__atmosphere img { width: 160%; height: 160%; left: -18%; top: -12%; object-position: 50% 40%; }
  .era-hero__then .era-hero__atmosphere::after { background:
    linear-gradient(180deg, #1a1816f2 0%, #1a1816c4 22%, #1a181678 48%, #120f0cf2 100%); }
  .era-hero__copy {
    grid-column: 1;
    grid-row: 1;
    padding: max(22px, env(safe-area-inset-top, 0px)) var(--era-copy-pad) 76px;
    row-gap: 0.7rem;
    grid-template-rows: auto var(--era-title-row) auto auto auto 1fr;
    align-content: stretch;
  }
  .era-hero h1, .era-hero__title { max-width: none; }
  .era-hero__description { min-height: 6.2em; max-width: 34ch; }
  .era-hero__facts { padding-top: .85rem; gap: .7rem .65rem; max-width: none; }
  .era-hero__facts span { letter-spacing: .1em; font-size: .55rem; }
  .era-hero__facts strong { font-size: .95rem; }
  .era-hero__aside { font-size: 1.2rem; max-width: 16ch; min-height: 2.6em; }
  .era-hero__media { display: none; }
  .era-hero .era-actions { min-height: 44px; align-self: end; }
  .era-hero::after { animation: none; filter: blur(22px); }
  .era-actions { margin-top: 8px; gap: 12px 20px; min-height: 44px; }
  .era-hero__bottom { padding: 4px 6% 12px; padding: 4px 6% max(12px, env(safe-area-inset-bottom, 0px)); }
  .era-intro-control { min-height: 44px; }
  .era-heritage-note { max-width: 22ch; }
  .era-story { grid-template-columns: 1fr; } .era-statements { margin-top: 55px; } .era-statements p { max-width: 45ch; }
  .era-section-heading { display: block; } .era-section-heading > p { margin-top: 25px; max-width: 40ch; }
  .era-material { grid-template-columns: 1fr; } .era-material > img { height: 380px; } .era-material__copy { padding: 65px 6% 80px; }
  .era-product { gap: 5%; } .era-product__image { height: 300px; }
  .era-climate { grid-template-columns: 1fr; } .era-map { width: min(100%,520px); margin: 40px auto 0 !important; }
  .era-footer__top,.era-footer__bottom { flex-direction: column; }
}
@media (max-width:800px) and (orientation: landscape) {
  .era-hero { --era-heading-size: clamp(1.85rem,7vh,3rem); --era-origin: 84% 52%; --era-title-row: calc(var(--era-heading-size) * var(--era-heading-leading) * 2); }
  .era-hero__now, .era-hero__then {
    grid-template-columns: minmax(0, 1.55fr) minmax(0, .5fr);
    grid-template-rows: minmax(0, 1fr);
    padding: 0;
  }
  .era-hero__atmosphere { grid-column: 1 / -1; grid-row: 1; }
  .era-hero__copy { grid-column: 1; grid-row: 1; padding: 4vh 4% 12vh 5%; grid-template-rows: auto var(--era-title-row) auto auto auto auto; }
  .era-hero__description { max-width: 40ch; }
  .era-hero__media { grid-column: 2; grid-row: 1; display: block; padding: 6vh 5% 12vh 0; }
  .era-roll--heritage img { height: 70%; top: 16%; }
  .era-roll--green img { height: 72%; top: 15%; }
  .era-hero .era-actions { align-self: end; }
}
@media (max-width:800px) and (max-height:700px) and (orientation: portrait) {
  .era-hero { --era-heading-size: clamp(1.85rem,7.6vw,2.5rem); }
  .era-hero__copy { row-gap: 0.5rem; padding-bottom: 68px; }
  .era-hero__description { min-height: 5.4em; font-size: .92rem; }
  .era-hero__aside { font-size: 1.05rem; min-height: 2.3em; }
}
@media (max-width:540px) {
  .era-logo { width: 132px; flex-basis: 132px; } .era-header { gap: 15px; }
  .era-header.is-compact { padding-block: 12px; }
  .era-hero { --era-heading-size: clamp(2.15rem,9.2vw,2.85rem); --era-copy-pad: 7.5%; }
  .era-hero__description { max-width: 36ch; font-size: .95rem; line-height: 1.4; }
  .era-hero__facts { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .era-kicker { font-size: .6rem; } .era-link { font-size: .77rem; gap: 12px; padding-block: 10px; }
  .era-hero__bottom { font-size: .63rem; } .era-intro-control { font-size: .65rem; padding-block: 10px; }
  .era-section h2,.era-material h2 { font-size: clamp(2.55rem,11vw,3.5rem); }
  .era-section { padding-block: 75px; } .era-compare { height: 370px; }
  .era-compare-control { grid-template-columns: 1fr; gap: 6px; } .era-compare-control > span { grid-column: 1; }
  .era-compare figcaption { font-size: .55rem; bottom: 14px; } .era-compare__then figcaption { left: 14px; } .era-compare__now figcaption { right: 14px; }
  .era-material > img { height: 300px; } .era-product { grid-template-columns: 1fr; padding-block: 35px 45px; gap: 25px; }
  .era-product:nth-child(even) .era-product__image { order: 0; } .era-product__image { height: 350px; } .era-product h3 { font-size: 2.5rem; }
  .era-product p { font-size: .9rem; } .era-range .era-section-heading { margin-bottom: 45px; }
  .era-benefit-line { grid-template-columns: 1fr; gap: 16px; } .era-benefit-line p { font-size: .9rem; }
  .era-help > a { grid-template-columns: 1fr auto; gap: 10px; } .era-help > a > span:first-child { grid-column: 1/-1; }
  .era-finale h2 { font-size: 3.6rem; } .era-finale > img { margin-top: 65px; width: 95%; }
  .era-footer__bottom nav { gap: 10px 20px; }
  .era-map img { width: 100%; max-width: 100%; margin: 0; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior: auto; }
  .campaign *, .campaign *::before,.campaign *::after { animation: none !important; }
  .era-hero { --era-wipe: .2s; }
  .era-hero__now, .era-intro .era-hero__now, .era-reveal .era-hero__now { clip-path: none; }
  .era-intro .era-hero__now { opacity: 0; }
  .era-reveal .era-hero__now { opacity: 1; transition: opacity .2s; }
  .era-hero__now::before { animation: none; }
  .era-intro .era-roll--heritage, .era-roll--green, .era-reveal .era-roll--green { animation: none; transform: none; transition: none; }
  .era-intro:not(.era-typing) .era-hero__then .era-kicker,
  .era-intro:not(.era-typing) .era-hero__then .era-hero__title,
  .era-intro:not(.era-typing) .era-hero__then .era-hero__description,
  .era-intro:not(.era-typing) .era-hero__then .era-hero__aside { color: unset; }
  .era-intro .era-hero__then .era-hero__facts { opacity: 1; transform: none; transition: none; }
  .era-logo__green,.era-logo__orange { transition-duration: .2s; }
  .era-reveal-pending { opacity: 1; transform: none; transition: none; }
  .era-header { transition: none; }
}

@media (prefers-reduced-motion: no-preference) {
  .era-story .era-statements article, .era-product, .era-help > a, .era-resource-links { opacity: .78; transform: translateY(20px); transition: opacity .85s ease, transform .85s cubic-bezier(.2,.7,.2,1); }
  .era-story .era-statements article.is-visible, .era-product.is-visible, .era-help > a.is-visible, .era-resource-links.is-visible { opacity: 1; transform: none; }
}
@supports (-webkit-touch-callout: none) {
  .era-hero { min-height: -webkit-fill-available; }
}
