.about-page {
  background:#fff;
  overflow-x:hidden;
}

.about-page .site-header {
  position:absolute;
}

.about-hero {
  position:relative;
  min-height:720px;
  height:min(900px,100svh);
  color:#fff;
  background:#101114;
  overflow:hidden;
}

.about-hero-media,
.about-hero-overlay,
.about-hero-grid {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
}

.about-hero-media {
  object-fit:cover;
}

.about-hero-overlay {
  background:linear-gradient(90deg,rgba(7,8,10,.92) 0%,rgba(7,8,10,.68) 45%,rgba(7,8,10,.24) 76%,rgba(7,8,10,.42) 100%);
}

.about-hero-grid {
  z-index:1;
  background:linear-gradient(90deg,transparent calc(25% - 1px),#ffffff10 25%,transparent calc(25% + 1px),transparent calc(50% - 1px),#ffffff10 50%,transparent calc(50% + 1px),transparent calc(75% - 1px),#ffffff10 75%,transparent calc(75% + 1px));
}

.about-hero-content {
  position:relative;
  z-index:2;
  display:flex;
  min-height:100%;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  padding-top:88px;
}

.about-page .eyebrow {
  display:flex;
  align-items:center;
  gap:16px;
  color:inherit;
  font-size:clamp(10px,.729167vw,15px);
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.about-page .eyebrow::before {
  content:"";
  width:38px;
  height:3px;
  background:var(--red);
}

.about-hero h1 {
  max-width:1120px;
  margin-top:clamp(22px,2vw,38px);
  font-size:clamp(46px,5.4vw,112px);
  font-weight:750;
  line-height:.98;
  letter-spacing:-.055em;
  text-transform:uppercase;
}

.about-hero h1 em {
  display:block;
}

.about-hero-content>p:not(.eyebrow) {
  max-width:760px;
  margin-top:clamp(24px,2.2vw,42px);
  color:#e2e3e5;
  font:clamp(15px,1.05vw,21px)/1.7 Arial,sans-serif;
}

.about-hero .button {
  margin-top:clamp(28px,2.6vw,50px);
}

.about-hero-index {
  position:absolute;
  z-index:2;
  right:var(--gutter);
  bottom:clamp(30px,3vw,56px);
  display:flex;
  align-items:baseline;
  gap:10px;
  text-transform:uppercase;
}

.about-hero-index strong {
  font-size:clamp(36px,4vw,78px);
  line-height:1;
}

.about-hero-index span {
  color:#b9bcc2;
  font-size:12px;
  letter-spacing:.12em;
}

.about-intro {
  padding:clamp(84px,8vw,160px) 0;
}

.about-intro-mark {
  padding-right:clamp(32px,5vw,92px);
}

.about-intro-mark img {
  width:min(100%,440px);
  height:auto;
}

.about-intro-mark p {
  margin-top:24px;
  color:#73777e;
  font:14px/1.5 Arial,sans-serif;
}

.about-intro-mark strong {
  color:var(--black);
}

.about-intro-copy {
  padding-left:clamp(28px,5vw,96px);
  border-left:1px solid #d9dbdf;
}

.about-intro-copy h2,
.about-section-heading h2,
.about-voices h2,
.about-belief h2,
.about-cta h2 {
  margin-top:clamp(22px,2.2vw,40px);
  font-size:clamp(36px,4.15vw,82px);
  line-height:1.04;
  letter-spacing:-.045em;
  text-transform:uppercase;
}

.about-prose {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(24px,3vw,58px);
  margin-top:clamp(34px,4vw,72px);
  color:#555a61;
  font:clamp(14px,.94vw,19px)/1.8 Arial,sans-serif;
}

.about-voices {
  padding:clamp(88px,8vw,154px) 0;
  color:#fff;
  background:#17191d;
}

.about-voices-heading {
  max-width:1120px;
}

.about-quote-grid {
  margin-top:clamp(54px,5vw,96px);
  border-top:1px solid #ffffff22;
  border-bottom:1px solid #ffffff22;
}

.about-quote-grid blockquote {
  min-height:260px;
  margin:0;
  padding:clamp(34px,3vw,60px);
  border-right:1px solid #ffffff22;
}

.about-quote-grid blockquote:last-child {
  border-right:0;
}

.about-quote-grid span {
  display:block;
  color:var(--red);
  font-size:12px;
  font-weight:700;
  letter-spacing:.12em;
}

.about-quote-grid p {
  margin-top:clamp(30px,3vw,54px);
  font-size:clamp(19px,1.55vw,31px);
  font-style:italic;
  font-weight:650;
  line-height:1.45;
}

.about-voices-note {
  max-width:920px;
  margin:clamp(40px,4vw,72px) 0 0 auto;
  color:#bdc0c5;
  font:clamp(14px,1vw,20px)/1.8 Arial,sans-serif;
}

.about-timeline {
  padding:clamp(88px,8vw,160px) 0;
  background:#f4f5f6;
}

.about-section-heading {
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);
  gap:clamp(40px,7vw,140px);
  align-items:end;
  margin-bottom:clamp(58px,6vw,112px);
}

.about-section-heading>p {
  padding-bottom:8px;
  color:#63676e;
  font:clamp(14px,.95vw,19px)/1.75 Arial,sans-serif;
}

.timeline-list {
  position:relative;
}

.timeline-list::before {
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  left:50%;
  width:1px;
  background:#d2d4d7;
}

.timeline-entry {
  position:relative;
  min-height:520px;
  margin-bottom:clamp(32px,4vw,76px);
  background:#fff;
}

.timeline-entry:last-child {
  margin-bottom:0;
}

.timeline-entry:nth-child(even) .timeline-media {
  order:2;
}

.timeline-entry:nth-child(even) .timeline-copy {
  order:1;
}

.timeline-media {
  position:relative;
  min-height:460px;
  overflow:hidden;
}

.timeline-media::after {
  content:"";
  position:absolute;
  inset:0;
  background:#0001;
  transition:background .3s;
}

.timeline-media img {
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .6s cubic-bezier(.2,.7,.2,1);
}

.timeline-entry:hover .timeline-media img {
  transform:scale(1.025);
}

.timeline-entry:hover .timeline-media::after {
  background:transparent;
}

.timeline-copy {
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:clamp(38px,5vw,96px);
}

.timeline-number {
  display:flex;
  align-items:center;
  gap:18px;
  color:var(--red);
  font-size:12px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.timeline-number::after {
  content:"";
  width:46px;
  height:2px;
  background:var(--red);
}

.timeline-number span {
  order:2;
  color:#777b82;
  font-weight:650;
}

.timeline-copy h3 {
  margin-top:clamp(22px,2vw,38px);
  font-size:clamp(30px,2.6vw,52px);
  line-height:1.08;
  letter-spacing:-.04em;
  text-transform:uppercase;
}

.timeline-copy>p:not(.timeline-number) {
  margin-top:20px;
  color:#5d6269;
  font:clamp(14px,.88vw,18px)/1.75 Arial,sans-serif;
}

.about-belief {
  position:relative;
  min-height:720px;
  display:flex;
  align-items:center;
  color:#fff;
  overflow:hidden;
}

.about-belief-image,
.about-belief-overlay {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
}

.about-belief-image {
  object-fit:cover;
}

.about-belief-overlay {
  background:linear-gradient(90deg,#090a0ce8 0%,#090a0cbd 50%,#090a0c4f 100%);
}

.about-belief .wrap {
  position:relative;
  z-index:1;
}

.about-belief h2 {
  max-width:1050px;
}

.about-belief .wrap>p:not(.eyebrow) {
  max-width:720px;
  margin-top:clamp(28px,3vw,52px);
  color:#d0d2d5;
  font:clamp(15px,1vw,20px)/1.75 Arial,sans-serif;
}

.about-belief .button {
  margin-top:clamp(28px,3vw,52px);
}

.about-factory {
  padding:clamp(88px,8vw,160px) 0 0;
}

.factory-gallery {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  grid-auto-flow:dense;
  grid-auto-rows:clamp(220px,19vw,390px);
  gap:2px;
  margin-top:clamp(54px,6vw,110px);
  background:#111317;
}

.factory-gallery-editor>.wp-block-group,
.factory-gallery-editor .wp-block-gallery,
.factory-gallery-editor .blocks-gallery-grid {
  display:contents !important;
}

.factory-gallery-editor .wp-block-image,
.factory-gallery-editor .blocks-gallery-item {
  position:relative;
  width:auto !important;
  margin:0 !important;
  overflow:hidden;
  background:#15171a;
}

.factory-gallery-editor .wp-block-image:nth-child(1),
.factory-gallery-editor .wp-block-image:nth-child(6n+5),
.factory-gallery-editor .blocks-gallery-item:nth-child(1),
.factory-gallery-editor .blocks-gallery-item:nth-child(6n+5) {
  grid-column:span 2;
}

.factory-gallery-editor .wp-block-image a,
.factory-gallery-editor .blocks-gallery-item a,
.factory-gallery-editor .wp-block-image>img,
.factory-gallery-editor .blocks-gallery-item>img {
  display:block;
  width:100%;
  height:100%;
  cursor:zoom-in;
}

.factory-gallery-editor .wp-block-image img,
.factory-gallery-editor .blocks-gallery-item img {
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .6s cubic-bezier(.2,.7,.2,1);
}

.factory-gallery-editor .wp-block-image::after,
.factory-gallery-editor .blocks-gallery-item::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 55%,#07080ac7 100%);
  pointer-events:none;
}

.factory-gallery-editor .wp-block-image figcaption,
.factory-gallery-editor .blocks-gallery-item figcaption {
  position:absolute;
  z-index:1;
  right:auto;
  left:clamp(18px,1.6vw,32px);
  bottom:clamp(16px,1.4vw,28px);
  width:auto;
  max-width:calc(100% - 36px);
  margin:0;
  padding:0;
  color:#fff;
  background:none;
  font-size:clamp(11px,.72vw,15px);
  font-weight:700;
  letter-spacing:.06em;
  text-align:left;
  text-transform:uppercase;
}

.factory-gallery-editor .wp-block-image:hover img,
.factory-gallery-editor .blocks-gallery-item:hover img {
  transform:scale(1.035);
}

.factory-gallery-editor .wp-block-image:focus-visible,
.factory-gallery-editor .blocks-gallery-item:focus-visible,
.factory-gallery-editor a:focus-visible {
  outline:3px solid #fff;
  outline-offset:-6px;
}

.factory-photo {
  position:relative;
  margin:0;
  overflow:hidden;
  background:#15171a;
}

.factory-photo-link {
  display:block;
  width:100%;
  height:100%;
  cursor:zoom-in;
}

.factory-photo-wide {
  grid-column:span 2;
}

.factory-photo-tall {
  grid-row:span 2;
}

.factory-photo::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 55%,#07080ac7 100%);
  transition:background .3s;
  pointer-events:none;
}

.factory-photo img {
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .6s cubic-bezier(.2,.7,.2,1);
}

.factory-photo figcaption {
  position:absolute;
  z-index:1;
  left:clamp(18px,1.6vw,32px);
  bottom:clamp(16px,1.4vw,28px);
  color:#fff;
  font-size:clamp(11px,.72vw,15px);
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.factory-expand {
  position:absolute;
  z-index:2;
  top:clamp(14px,1.2vw,24px);
  right:clamp(14px,1.2vw,24px);
  width:clamp(40px,2.8vw,54px);
  height:clamp(40px,2.8vw,54px);
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  background:#111317b8;
  border:1px solid #ffffff4a;
  opacity:0;
  transform:translateY(8px);
  transition:opacity .3s,transform .3s,background .3s;
}

.factory-expand svg {
  width:19px;
  height:19px;
}

.factory-photo-link:hover .factory-expand,
.factory-photo-link:focus-visible .factory-expand {
  opacity:1;
  transform:translateY(0);
  background:var(--red);
}

.factory-photo-link:focus-visible {
  outline:3px solid #fff;
  outline-offset:-6px;
}

.factory-photo:hover img {
  transform:scale(1.035);
}

.gallery-lightbox {
  width:min(1480px,calc(100vw - 64px));
  height:min(900px,calc(100dvh - 48px));
  max-height:none;
  padding:0;
  border:0;
  color:#fff;
  background:#0b0b0d;
  box-shadow:0 30px 120px #000c;
  overflow:hidden;
}

.gallery-lightbox::backdrop {
  background:#020304e8;
  backdrop-filter:blur(8px);
}

.lightbox-figure {
  position:absolute;
  inset:0;
  margin:0;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:clamp(58px,6vw,92px) clamp(58px,8vw,126px) clamp(70px,7vw,108px);
}

.lightbox-figure img {
  width:100%;
  height:100%;
  object-fit:contain;
}

.lightbox-figure figcaption {
  position:absolute;
  left:clamp(24px,3vw,50px);
  bottom:clamp(22px,2.2vw,38px);
  max-width:70%;
  font-size:clamp(12px,.82vw,16px);
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.lightbox-close,
.lightbox-control {
  position:absolute;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  background:#16181cbd;
  border:1px solid #ffffff31;
  transition:background .3s,border-color .3s;
}

.lightbox-close:hover,
.lightbox-control:hover,
.lightbox-close:focus-visible,
.lightbox-control:focus-visible {
  background:var(--red);
  border-color:var(--red);
}

.lightbox-close {
  top:clamp(16px,2vw,32px);
  right:clamp(16px,2vw,32px);
  width:50px;
  height:50px;
}

.lightbox-control {
  top:50%;
  width:54px;
  height:72px;
  transform:translateY(-50%);
}

.lightbox-previous {
  left:clamp(14px,2vw,32px);
}

.lightbox-next {
  right:clamp(14px,2vw,32px);
}

.lightbox-close svg,
.lightbox-control svg {
  width:22px;
  height:22px;
}

.lightbox-count {
  position:absolute;
  z-index:2;
  right:clamp(24px,3vw,50px);
  bottom:clamp(22px,2.2vw,38px);
  display:flex;
  gap:8px;
  align-items:baseline;
  color:#878c94;
  font-size:13px;
}

.lightbox-count span:first-child {
  color:#fff;
  font-size:23px;
  font-weight:800;
}

.about-cta {
  padding:clamp(90px,8vw,160px) 0;
  text-align:center;
  background:#fff;
}

.about-cta .eyebrow {
  justify-content:center;
}

.about-cta h2 {
  max-width:1250px;
  margin-inline:auto;
}

.about-cta .button {
  margin-top:clamp(34px,4vw,70px);
}

.about-page .support img {
  margin-top:-10px;
}

@media(max-width:991.98px) {
  .about-hero {
    min-height:680px;
    height:88svh;
  }
  .about-hero-overlay {
    background:linear-gradient(90deg,rgba(7,8,10,.9),rgba(7,8,10,.48));
  }
  .about-intro-mark {
    padding-right:0;
    padding-bottom:48px;
  }
  .about-intro-mark img {
    width:min(55%,380px);
  }
  .about-intro-copy {
    padding:48px 0 0;
    border-top:1px solid #d9dbdf;
    border-left:0;
  }
  .about-section-heading {
    grid-template-columns:1fr;
    gap:30px;
  }
  .timeline-list::before {
    left:24px;
  }
  .timeline-entry,
  .timeline-entry:nth-child(even) .timeline-media,
  .timeline-entry:nth-child(even) .timeline-copy {
    order:initial;
  }
  .timeline-entry {
    margin-left:48px;
  }
  .timeline-media {
    min-height:400px;
  }
  .factory-gallery {
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-auto-rows:clamp(220px,38vw,360px);
  }
  .factory-gallery-editor .wp-block-image:nth-child(1),
  .factory-gallery-editor .wp-block-image:nth-child(6n+5),
  .factory-gallery-editor .blocks-gallery-item:nth-child(1),
  .factory-gallery-editor .blocks-gallery-item:nth-child(6n+5) {
    grid-column:auto;
  }
}

@media(max-width:767.98px) {
  .about-hero {
    min-height:640px;
  }
  .about-hero-media {
    object-position:62% center;
  }
  .about-hero-content {
    justify-content:flex-end;
    padding-bottom:88px;
  }
  .about-hero h1 {
    max-width:620px;
  }
  .about-hero-content>p:not(.eyebrow) {
    max-width:540px;
  }
  .about-hero-index {
    display:none;
  }
  .about-prose {
    grid-template-columns:1fr;
  }
  .about-quote-grid blockquote {
    min-height:0;
    border-right:0;
    border-bottom:1px solid #ffffff22;
  }
  .about-quote-grid blockquote:last-child {
    border-bottom:0;
  }
  .about-belief {
    min-height:620px;
  }
}

/* Point 6 reference treatment: independent square image/text cards in one track. */
.about-storyboard-timeline .timeline-entry,
.about-storyboard-timeline .timeline-entry:nth-child(even) {
  display:block;
  flex:0 0 min(22vw,260px);
  width:auto;
  aspect-ratio:1;
  min-height:0;
  margin:0;
  overflow:hidden;
  background:#d9d8de;
  border-radius:3px;
  scroll-snap-align:start;
}

.about-storyboard-timeline .timeline-entry--media {
  background:#e5e5e7;
}

.about-storyboard-timeline .timeline-entry--media .timeline-media {
  width:100%;
  height:100%;
  min-height:0;
  aspect-ratio:auto;
}

.about-storyboard-timeline .timeline-entry--media .timeline-media::after {
  background:transparent;
}

.about-storyboard-timeline .timeline-entry--media .timeline-media img {
  width:100%;
  height:100%;
  object-fit:cover;
}

.about-storyboard-timeline .timeline-entry--copy .timeline-copy {
  display:flex;
  height:100%;
  min-height:0;
  justify-content:flex-end;
  padding:clamp(22px,2vw,34px);
  overflow:hidden;
}

.about-storyboard-timeline .timeline-entry--copy .timeline-copy h3 {
  margin-top:clamp(16px,1.5vw,24px);
  font-size:clamp(20px,1.65vw,30px);
  line-height:1.05;
}

.about-storyboard-timeline .timeline-entry--copy .timeline-copy>p:not(.timeline-number) {
  display:-webkit-box;
  max-height:4.35em;
  margin-top:11px;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
  font-size:clamp(12px,.72vw,15px);
  line-height:1.45;
}

.timeline-carousel-footer {
  display:grid;
  grid-template-columns:48px 1fr 48px;
  align-items:center;
  gap:18px;
  margin-top:clamp(26px,3vw,44px);
}

.timeline-carousel-arrow {
  display:flex;
  width:48px;
  height:48px;
  align-items:center;
  justify-content:center;
  color:#fff;
  background:#a9a7b1;
  border:0;
  border-radius:50%;
  transition:color .2s,background .2s,opacity .2s;
}

.timeline-carousel-arrow svg {
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.5;
}

.timeline-carousel-arrow:hover,
.timeline-carousel-arrow:focus-visible {
  background:var(--red);
}

.timeline-carousel-arrow:disabled {
  opacity:.38;
  cursor:not-allowed;
}

.timeline-carousel-footer .timeline-pagination {
  margin:0;
}

@media(max-width:767.98px) {
  .about-storyboard-timeline .timeline-entry,
  .about-storyboard-timeline .timeline-entry:nth-child(even) {
    flex-basis:min(72vw,260px);
  }
}

/* Every timeline group keeps the reference orientation: image on the left, copy on the right. */
.about-storyboard-timeline .timeline-entry,
.about-storyboard-timeline .timeline-entry:nth-child(even) {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  flex:0 0 min(54vw,560px);
  width:auto;
  aspect-ratio:auto;
  min-height:300px;
  margin:0;
  overflow:hidden;
  background:transparent;
  border-radius:0;
}

.about-storyboard-timeline .timeline-entry:nth-child(even) .timeline-media,
.about-storyboard-timeline .timeline-entry:nth-child(even) .timeline-copy {
  order:initial;
}

.about-storyboard-timeline .timeline-media {
  width:100%;
  height:100%;
  min-height:300px;
  aspect-ratio:1;
  border-radius:3px 0 0 3px;
}

.about-storyboard-timeline .timeline-copy {
  min-height:300px;
  justify-content:flex-end;
  padding:clamp(22px,2vw,34px);
  overflow:hidden;
  background:#d9d8de;
}

.about-storyboard-timeline .timeline-copy h3 {
  margin-top:clamp(16px,1.5vw,24px);
  font-size:clamp(20px,1.65vw,30px);
  line-height:1.05;
}

.about-storyboard-timeline .timeline-copy>p:not(.timeline-number) {
  display:-webkit-box;
  max-height:4.35em;
  margin-top:11px;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
  font-size:clamp(12px,.72vw,15px);
  line-height:1.45;
}

@media(max-width:767.98px) {
  .about-storyboard-timeline .timeline-entry,
  .about-storyboard-timeline .timeline-entry:nth-child(even) {
    grid-template-columns:1fr;
    flex-basis:min(88vw,560px);
  }

  .about-storyboard-timeline .timeline-media,
  .about-storyboard-timeline .timeline-copy {
    min-height:0;
  }

  .about-storyboard-timeline .timeline-media {
    aspect-ratio:4/3;
    border-radius:3px 3px 0 0;
  }

  .about-storyboard-timeline .timeline-copy {
    min-height:300px;
  }
}

/* Final point 6 overrides: wide paired cards with complete, aligned copy. */
.about-storyboard-timeline .timeline-entry,
.about-storyboard-timeline .timeline-entry:nth-child(even) {
  flex:0 0 min(72vw,800px);
  min-height:420px;
}

.about-storyboard-timeline .timeline-media,
.about-storyboard-timeline .timeline-copy {
  min-height:420px;
}

.about-storyboard-timeline .timeline-copy {
  justify-content:flex-start;
  padding:clamp(34px,4vw,64px);
  overflow:visible;
}

.about-storyboard-timeline .timeline-copy>p:not(.timeline-number) {
  display:block;
  max-height:none;
  overflow:visible;
  -webkit-line-clamp:unset;
  margin-top:16px;
  line-height:1.6;
}

@media(max-width:767.98px) {
  .about-storyboard-timeline .timeline-entry,
  .about-storyboard-timeline .timeline-entry:nth-child(even) {
    flex-basis:min(88vw,560px);
    min-height:0;
  }

  .about-storyboard-timeline .timeline-media {
    min-height:0;
  }

  .about-storyboard-timeline .timeline-copy {
    min-height:0;
    padding:32px 28px 38px;
  }
}

/* Point 6 refinement: show the complete copy and give each image/copy pair more room. */
.about-storyboard-timeline .timeline-entry,
.about-storyboard-timeline .timeline-entry:nth-child(even) {
  flex-basis:min(72vw,800px);
  min-height:420px;
}

.about-storyboard-timeline .timeline-media,
.about-storyboard-timeline .timeline-copy {
  min-height:420px;
}

.about-storyboard-timeline .timeline-copy {
  justify-content:flex-start;
  padding:clamp(34px,4vw,64px);
  overflow:visible;
}

.about-storyboard-timeline .timeline-copy>p:not(.timeline-number) {
  display:block;
  max-height:none;
  overflow:visible;
  -webkit-line-clamp:unset;
  margin-top:16px;
  line-height:1.6;
}

@media(max-width:767.98px) {
  .about-storyboard-timeline .timeline-entry,
  .about-storyboard-timeline .timeline-entry:nth-child(even) {
    flex-basis:min(88vw,560px);
    min-height:0;
  }

  .about-storyboard-timeline .timeline-media {
    min-height:0;
  }

  .about-storyboard-timeline .timeline-copy {
    min-height:0;
    padding:32px 28px 38px;
  }
}

/* Point 5: the story and customer voices share one light editorial board. */
.about-story-unified {
  padding:clamp(88px,8vw,156px) 0 clamp(96px,9vw,168px);
  background:#fff;
  overflow:hidden;
}

.about-story-unified-heading {
  max-width:1120px;
}

.about-story-unified-heading h2 {
  max-width:980px;
  margin-top:clamp(22px,2.2vw,40px);
  font-size:clamp(42px,5vw,96px);
  line-height:.98;
  letter-spacing:-.055em;
  text-transform:uppercase;
}

.about-story-unified-heading h2 em {
  display:block;
  color:var(--red);
  font-style:italic;
}

.about-story-chapters {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  margin-top:clamp(54px,5vw,96px);
  border-top:1px solid #d9dbdf;
  border-bottom:1px solid #d9dbdf;
}

.about-story-chapter {
  min-height:240px;
  padding:clamp(28px,3vw,52px) clamp(28px,4vw,72px) clamp(34px,3.5vw,60px) 0;
}

.about-story-chapter + .about-story-chapter {
  padding-left:clamp(28px,4vw,72px);
  border-left:1px solid #d9dbdf;
}

.about-story-chapter-year {
  margin:0 0 clamp(28px,3vw,48px);
  color:var(--black);
  font-size:clamp(28px,2.5vw,48px);
  font-weight:750;
  letter-spacing:-.04em;
}

.about-story-chapter>p:last-child {
  max-width:620px;
  margin:0;
  color:#626870;
  font:clamp(14px,.94vw,19px)/1.78 Arial,sans-serif;
}

.about-story-unified-voices {
  margin-top:clamp(64px,7vw,120px);
}

.about-story-unified-voices .about-voices-heading h3 {
  max-width:920px;
  margin-top:clamp(22px,2.2vw,40px);
  color:var(--black);
  font-size:clamp(38px,4.4vw,82px);
  line-height:1;
  letter-spacing:-.055em;
  text-transform:uppercase;
}

.about-story-unified-voices .about-voices-heading h3 em {
  display:block;
  color:var(--red);
  font-style:italic;
}

.about-story-unified-voices .about-quote-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin-top:clamp(42px,4.5vw,76px);
  border:0;
}

.about-story-unified-voices .about-quote-grid blockquote {
  width:100%;
  flex:none;
  min-height:180px;
  margin:0;
  padding:clamp(26px,2.6vw,44px);
  color:#fff;
  background:#17191d;
  border:0;
}

.about-story-unified-voices .about-quote-grid p {
  margin-top:clamp(24px,2.4vw,40px);
  font-size:clamp(17px,1.3vw,25px);
  line-height:1.4;
}

.about-story-unified-voices .about-voices-note {
  max-width:720px;
  margin:clamp(32px,3.5vw,58px) 0 0 auto;
  color:#63676e;
  font:clamp(14px,.95vw,19px)/1.75 Arial,sans-serif;
}

@media(max-width:767.98px) {
  .about-story-chapters,
  .about-story-unified-voices .about-quote-grid {
    grid-template-columns:1fr;
  }

  .about-story-chapter,
  .about-story-chapter + .about-story-chapter {
    min-height:0;
    padding:30px 0;
    border-left:0;
  }

  .about-story-chapter + .about-story-chapter {
    border-top:1px solid #d9dbdf;
  }

  .about-story-unified-voices .about-quote-grid blockquote {
    min-height:0;
  }
}

/* Storyboard treatment: the company timeline uses the later card track. */
.about-storyboard {
  overflow:hidden;
  background:#f4f5f6;
}

.about-storyboard-voices {
  margin:0;
}

.about-storyboard-timeline {
  padding-top:clamp(76px,7vw,136px);
}

.about-storyboard-timeline .about-section-heading {
  position:relative;
  margin-bottom:clamp(38px,4vw,72px);
}

.timeline-description {
  grid-column:2;
  grid-row:2;
  padding-bottom:8px;
  color:#63676e;
  font:clamp(14px,.95vw,19px)/1.75 Arial,sans-serif;
}

.timeline-carousel-controls {
  grid-column:2;
  grid-row:1;
  display:flex;
  justify-content:flex-end;
  gap:8px;
  align-self:start;
}

.timeline-carousel-controls button {
  display:flex;
  width:48px;
  height:48px;
  align-items:center;
  justify-content:center;
  color:var(--black);
  background:#fff;
  border:1px solid #d4d8dc;
  transition:color .2s,background .2s,border-color .2s;
}

.timeline-carousel-controls svg {
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.5;
}

.timeline-carousel-controls button:hover,
.timeline-carousel-controls button:focus-visible {
  color:#fff;
  background:var(--red);
  border-color:var(--red);
}

.timeline-list {
  display:flex;
  gap:20px;
  margin-inline:calc(var(--gutter) * -1);
  padding:0 var(--gutter) 18px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scrollbar-width:thin;
  scrollbar-color:var(--red) transparent;
}

.timeline-list::before {
  display:none;
}

.timeline-entry,
.timeline-entry:nth-child(even) {
  display:flex;
  flex:0 0 min(76vw,560px);
  min-height:0;
  flex-direction:column;
  margin:0;
  background:#fff;
  scroll-snap-align:start;
}

.timeline-entry:nth-child(even) .timeline-media,
.timeline-entry:nth-child(even) .timeline-copy {
  order:initial;
}

.timeline-media {
  flex:0 0 260px;
  min-height:260px;
}

.timeline-copy {
  flex:1;
  justify-content:flex-start;
  padding:clamp(28px,3vw,52px);
}

.timeline-copy h3 {
  font-size:clamp(27px,2.5vw,46px);
}

@media(max-width:991.98px) {
  .about-storyboard-timeline .about-section-heading {
    display:block;
  }
  .timeline-carousel-controls {
    margin-top:24px;
    justify-content:flex-start;
  }
  .timeline-description {
    margin-top:24px;
    padding-bottom:0;
  }
}

@media(max-width:575.98px) {
  .timeline-entry,
  .timeline-entry:nth-child(even) {
    flex-basis:calc(100vw - 48px);
  }
  .timeline-media {
    flex-basis:210px;
    min-height:210px;
  }
}

@media(max-width:575.98px) {
  .about-hero {
    height:760px;
  }
  .about-hero-content {
    padding-top:100px;
    padding-bottom:64px;
  }
  .about-hero h1 {
    font-size:clamp(40px,13vw,62px);
  }
  .about-hero-content>p:not(.eyebrow) {
    font-size:14px;
  }
  .about-intro-mark img {
    width:min(78%,340px);
  }
  .about-intro-copy h2,
  .about-section-heading h2,
  .about-voices h2,
  .about-belief h2,
  .about-cta h2 {
    font-size:clamp(34px,10.8vw,50px);
  }
  .about-intro-copy h2,
  .about-section-heading h2 {
    font-size:clamp(32px,9.6vw,46px);
  }
  .timeline-list::before {
    display:none;
  }
  .timeline-entry {
    margin-left:0;
  }
  .timeline-media {
    min-height:270px;
    aspect-ratio:4/3;
  }
  .timeline-copy {
    padding:34px 24px 42px;
  }
  .timeline-number {
    flex-wrap:wrap;
  }
  .timeline-number::after {
    order:3;
    flex-basis:46px;
  }
  .factory-gallery {
    grid-template-columns:1fr;
    grid-auto-rows:260px;
  }
  .factory-photo-wide {
    grid-column:auto;
  }
  .factory-photo-tall {
    grid-row:auto;
  }
  .gallery-lightbox {
    width:100vw;
    height:100dvh;
  }
  .lightbox-figure {
    padding:76px 14px 112px;
  }
  .lightbox-control {
    top:auto;
    bottom:24px;
    width:52px;
    height:52px;
    transform:none;
  }
  .lightbox-previous {
    left:calc(50% - 62px);
  }
  .lightbox-next {
    right:calc(50% - 62px);
  }
  .lightbox-figure figcaption {
    left:20px;
    right:20px;
    bottom:92px;
    max-width:none;
    text-align:center;
  }
  .lightbox-count {
    right:auto;
    left:20px;
    top:24px;
    bottom:auto;
  }
}

@media(hover:none) {
  .timeline-media::after {
    background:transparent;
  }
  .factory-expand {
    opacity:1;
    transform:none;
  }
}

@media(prefers-reduced-motion:reduce) {
  .timeline-media img,
  .factory-photo img {
    transition:none;
  }
  .timeline-entry:hover .timeline-media img,
  .factory-photo:hover img {
    transform:none;
  }
}

/* Point 6: compact horizontal timeline pairs that slide as one story card. */
.about-storyboard-timeline .timeline-list {
  gap:18px;
  scroll-padding-inline:var(--gutter);
  scrollbar-width:none;
}

.about-storyboard-timeline .timeline-list::-webkit-scrollbar {
  display:none;
}

.about-storyboard-timeline .timeline-entry,
.about-storyboard-timeline .timeline-entry:nth-child(even) {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  flex:0 0 min(54vw,560px);
  min-height:0;
  margin:0;
  background:transparent;
  scroll-snap-align:start;
}

.about-storyboard-timeline .timeline-media {
  min-height:300px;
  aspect-ratio:1/1;
  border-radius:3px;
}

/* Keep every story group in the same reading order: image first, copy second. */
.about-storyboard-timeline .timeline-entry .timeline-media,
.about-storyboard-timeline .timeline-entry:nth-child(even) .timeline-media {
  order:1 !important;
}

.about-storyboard-timeline .timeline-entry .timeline-copy,
.about-storyboard-timeline .timeline-entry:nth-child(even) .timeline-copy {
  order:2 !important;
}

.about-storyboard-timeline .timeline-copy {
  min-height:300px;
  justify-content:flex-end;
  padding:clamp(26px,3vw,48px);
  background:#d9d8de;
}

.about-storyboard-timeline .timeline-copy h3 {
  margin-top:clamp(18px,2vw,30px);
  font-size:clamp(24px,2.2vw,40px);
}

.about-storyboard-timeline .timeline-copy>p:not(.timeline-number) {
  display:-webkit-box;
  max-height:5.8em;
  margin-top:14px;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:4;
  font-size:clamp(13px,.84vw,17px);
  line-height:1.45;
}

.timeline-pagination {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  margin-top:clamp(26px,3vw,44px);
}

.timeline-pagination button {
  width:7px;
  height:7px;
  padding:0;
  border:0;
  border-radius:50%;
  background:#bfc0c6;
  transition:width .2s,background .2s,border-radius .2s;
}

.timeline-pagination button[aria-current="true"] {
  width:25px;
  border-radius:5px;
  background:var(--black);
}

.timeline-carousel-controls button:disabled {
  color:#afb2b7;
  background:#f6f7f8;
  border-color:#e1e3e6;
  cursor:not-allowed;
}

@media(max-width:767.98px) {
  .about-storyboard-timeline .timeline-entry,
  .about-storyboard-timeline .timeline-entry:nth-child(even) {
    grid-template-columns:1fr;
    flex-basis:min(88vw,560px);
  }

  .about-storyboard-timeline .timeline-media,
  .about-storyboard-timeline .timeline-copy {
    min-height:0;
  }

  .about-storyboard-timeline .timeline-media {
    aspect-ratio:4/3;
  }

  .about-storyboard-timeline .timeline-copy {
    min-height:300px;
  }
}

/* Final point 6 overrides: wide paired cards with complete, aligned copy. */
.about-storyboard-timeline .timeline-entry,
.about-storyboard-timeline .timeline-entry:nth-child(even) {
  flex:0 0 min(72vw,800px);
  min-height:420px;
}

.about-storyboard-timeline .timeline-media,
.about-storyboard-timeline .timeline-copy {
  min-height:420px;
}

.about-storyboard-timeline .timeline-copy {
  justify-content:flex-start;
  padding:clamp(34px,4vw,64px);
  overflow:visible;
}

.about-storyboard-timeline .timeline-copy>p:not(.timeline-number) {
  display:block;
  max-height:none;
  overflow:visible;
  -webkit-line-clamp:unset;
  margin-top:16px;
  line-height:1.6;
}

@media(max-width:767.98px) {
  .about-storyboard-timeline .timeline-entry,
  .about-storyboard-timeline .timeline-entry:nth-child(even) {
    flex-basis:min(88vw,560px);
    min-height:0;
  }

  .about-storyboard-timeline .timeline-media {
    min-height:0;
  }

  .about-storyboard-timeline .timeline-copy {
    min-height:0;
    padding:32px 28px 38px;
  }
}

/* Requested width: timeline groups can expand to 1000px on desktop. */
.about-storyboard-timeline .timeline-entry,
.about-storyboard-timeline .timeline-entry:nth-child(even) {
  flex-basis:min(1000px,calc(100vw - 2 * var(--gutter)));
}

@media(max-width:767.98px) {
  .about-storyboard-timeline .timeline-entry,
  .about-storyboard-timeline .timeline-entry:nth-child(even) {
    flex-basis:min(88vw,560px);
  }
}

/* Requested refinement: reduce timeline card heading scale after widening the cards. */
.about-storyboard-timeline .timeline-copy h3 {
  font-size:clamp(22px,1.8vw,32px);
  line-height:1.08;
  letter-spacing:-.025em;
}

/* Spanish and Portuguese headings can contain longer words than the English
   reference. Keep them inside the mobile reading column instead of clipping
   the final word at the card edge. */
@media(max-width:767.98px) {
  .about-story-unified-heading h2,
  .about-story-unified-voices .about-voices-heading h3,
  .about-section-heading h2,
  .about-intro-copy h2,
  .about-belief h2,
  .about-cta h2,
  .about-storyboard-timeline .timeline-copy h3 {
    max-width:100%;
    overflow-wrap:anywhere;
    word-break:normal;
  }

  .about-story-unified-heading h2 {
    font-size:clamp(34px,10vw,56px);
  }

  .about-story-unified-voices .about-voices-heading h3 {
    font-size:clamp(32px,9.2vw,52px);
  }
}

/* The customer voice cards now follow the story directly without the removed heading block. */
.about-story-unified-voices .about-quote-grid {
  margin-top:0;
}

/* Restore the timeline introduction to the original right-hand column. */
.about-storyboard-timeline .about-section-heading {
  align-items:center;
}

.about-storyboard-timeline .timeline-description {
  grid-column:2;
  grid-row:1;
  align-self:center;
  margin:0;
  padding:0;
}

@media(max-width:991.98px) {
  .about-storyboard-timeline .about-section-heading {
    display:block;
  }

  .about-storyboard-timeline .timeline-description {
    margin-top:24px;
    padding:0;
  }
}
