:root{--brand:#f20c23;--brand-dark:#ca0017;--ink:#0a0a0c;--muted:#343434;--line:#e6e6e8;--paper:#fff;--container:1180px;--reveal-ease:cubic-bezier(.22,1,.36,1)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:22px}
body{margin:0;background:#fff;color:var(--ink);font-family:Georgia,"Times New Roman",serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,a{-webkit-tap-highlight-color:transparent}
svg{display:block}
::selection{background:#f20c2338}
.svg-definitions{position:absolute;width:0;height:0;overflow:hidden}
.container{width:min(calc(100% - 56px),var(--container));margin-inline:auto}
.eyebrow{display:flex;align-items:center;gap:22px;font:700 12px/1.2 Arial,Helvetica,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--brand)}
.eyebrow i{display:inline-block;width:47px;height:2px;background:var(--brand)}
.about-hero{position:relative;isolation:isolate;min-height:390px;overflow:hidden;display:flex;align-items:center}
.about-hero__image{position:absolute;z-index:-3;inset:-12px;background:#ebc5aa url('../hero-branded.webp') center center/cover no-repeat;transform:translate3d(0,var(--hero-shift,0px),0) scale(1.018);will-change:transform}
.about-hero__wash{position:absolute;z-index:-2;inset:0;background:linear-gradient(90deg,rgba(255,244,238,.33) 0%,rgba(255,240,226,.14) 31%,rgba(255,255,255,0) 57%)}
.about-hero__content{position:relative;padding-block:35px 37px}
.hero-copy{width:min(100%,475px);margin-left:0}
.hero-copy__eyebrow{margin:0 0 12px}
h1,h2,h3,p{margin-top:0}
.hero-copy h1{font-size:clamp(33px,3.5vw,53px);line-height:.98;letter-spacing:-.055em;margin-bottom:11px;font-weight:700;text-wrap:balance}
.hero-copy p{font-size:clamp(13px,1.13vw,15.2px);line-height:1.32;color:#1c1b1c;max-width:465px;margin-bottom:16px;text-wrap:pretty}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:39px;padding:9px 18px 10px;background:var(--brand);color:#fff;border:1px solid transparent;border-radius:3px;font:600 12px/1 Arial,Helvetica,sans-serif;letter-spacing:.008em;transition:background .25s,box-shadow .25s,transform .25s;white-space:nowrap}
.btn--primary:hover{background:var(--brand-dark);box-shadow:0 10px 20px #d00d2a28;transform:translateY(-2px)}
.btn:focus-visible{outline:3px solid #111;outline-offset:3px}
.btn__arrow{height:15px;width:15px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s}
.btn:hover .btn__arrow{transform:translateX(4px)}
.purpose-section{background:#fff;padding-block:19px 15px}
.purpose-grid{display:grid;grid-template-columns:43% minmax(0,1fr);gap:38px;align-items:stretch}
.image-window{overflow:hidden;background:#e3e3e3}
.image-window img{width:100%;height:100%;object-fit:cover;transition:transform 1.25s var(--reveal-ease),filter 1.1s}
.image-window:hover img{transform:scale(1.055);filter:saturate(1.09)}
.purpose-image{min-height:230px}
.purpose-content{align-self:center;padding-block:3px}
.purpose-content .eyebrow{margin-bottom:5px}
.purpose-content h2{font-size:clamp(22px,2.2vw,29px);line-height:1.02;letter-spacing:-.043em;margin-bottom:10px}
.purpose-content>p{font-size:13.5px;line-height:1.29;margin-bottom:15px;max-width:660px}
.features{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:18px}
.feature{position:relative;min-width:0;padding:0 11px 0 14px;transition:transform .25s}
.feature:first-child{padding-left:0}
.feature+.feature{border-left:1px solid var(--line)}
.feature__icon{width:31px;height:31px;stroke:var(--brand);stroke-width:1.5;fill:none;stroke-linejoin:round;stroke-linecap:round;margin-bottom:7px;transition:transform .35s var(--reveal-ease),filter .3s}
.feature:hover .feature__icon{transform:translateY(-4px) scale(1.06);filter:drop-shadow(0 3px 3px #f20c2335)}
.feature h3{font-size:12px;line-height:1.1;font-weight:700;letter-spacing:-.015em;margin-bottom:5px}
.feature p{font-size:11px;line-height:1.15;margin:0}
.story-section{background:#fbfbfb;overflow:hidden}
.story-grid{display:grid;grid-template-columns:minmax(0,calc((100% - var(--container))/2 + var(--container)*.35)) minmax(0,1fr);min-height:256px}
.story-copy{padding:25px 22px 25px max(28px,calc((100vw - var(--container))/2));align-self:center}
.story-copy .eyebrow{margin-bottom:5px}
.story-copy h2{font-size:clamp(25px,2.3vw,32px);line-height:1.0;letter-spacing:-.045em;margin-bottom:7px}
.story-copy p{font-size:13px;line-height:1.25;margin-bottom:13px;max-width:440px}
.story-image{height:100%;min-height:240px}
.story-image img{object-position:center center}
.reveal{opacity:0;transform:translate3d(0,20px,0);transition:opacity .72s var(--reveal-ease),transform .72s var(--reveal-ease);transition-delay:var(--delay,0s)}
.reveal.is-visible{opacity:1;transform:translate3d(0,0,0)}
@media(min-width:1600px){.about-hero{min-height:450px}.purpose-section{padding-block:24px 19px}.purpose-image{min-height:275px}.story-grid{min-height:290px}.story-copy{padding-block:36px}}
@media(max-width:1199px){.container{width:min(calc(100% - 48px),980px)}.story-grid{grid-template-columns:41% 59%}.story-copy{padding-left:max(24px,calc((100vw - 980px)/2))}.purpose-grid{gap:28px}.feature{padding-inline:9px}.hero-copy{max-width:440px}.about-hero{min-height:365px}}
@media(max-width:991px){.container{width:calc(100% - 44px)}.about-hero{min-height:390px}.about-hero__image{background-position:55% center}.about-hero__wash{background:linear-gradient(90deg,rgba(255,238,222,.64),rgba(255,243,235,.24) 55%,transparent 78%)}.hero-copy{max-width:430px}.hero-copy h1{font-size:42px}.hero-copy p{font-size:14px}.purpose-grid{grid-template-columns:43% 1fr;gap:24px}.purpose-image{min-height:280px}.purpose-content h2{font-size:25px}.purpose-content>p{font-size:12px}.features{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:16px;margin-top:13px}.feature:nth-child(3){padding-left:0;border-left:0}.feature h3{font-size:12px}.feature p{font-size:11px}.story-copy{padding-left:22px}.story-copy h2{font-size:26px}.story-copy p{font-size:12px}}
@media(max-width:767px){.container{width:calc(100% - 36px)}.about-hero{min-height:420px;align-items:flex-start}.about-hero__image{background-position:63% center;transform:scale(1.02)!important}.about-hero__wash{background:linear-gradient(90deg,rgba(255,244,236,.91) 0%,rgba(255,245,237,.71) 58%,rgba(255,244,236,.05) 100%)}.about-hero__content{padding-block:35px}.hero-copy{max-width:440px}.hero-copy h1{font-size:clamp(36px,7.2vw,43px)}.hero-copy p{max-width:395px;font-size:14px;line-height:1.43}.purpose-section{padding-block:20px}.purpose-grid{grid-template-columns:1fr;gap:20px}.purpose-image{height:280px;min-height:0}.purpose-content h2{font-size:29px}.purpose-content>p{font-size:14px;line-height:1.4}.features{grid-template-columns:repeat(4,minmax(0,1fr));row-gap:0;margin-top:25px}.feature:nth-child(3){padding-left:14px;border-left:1px solid var(--line)}.feature p{font-size:11px}.story-grid{grid-template-columns:1fr}.story-copy{padding:28px 18px 27px}.story-copy h2{font-size:32px}.story-copy p{font-size:14px;line-height:1.4;max-width:610px}.story-image{min-height:260px;height:260px}}
@media(max-width:520px){.about-hero{min-height:472px}.about-hero__image{background-position:62% center}.about-hero__wash{background:linear-gradient(90deg,rgba(255,240,228,.94) 0%,rgba(255,237,225,.78) 70%,rgba(255,244,236,.13) 100%)}.about-hero__content{padding-top:30px}.hero-copy{max-width:350px}.hero-copy__eyebrow{margin-bottom:16px}.hero-copy h1{font-size:38px;line-height:.99}.hero-copy p{font-size:14px;line-height:1.4;max-width:330px}.purpose-image{height:225px}.purpose-content h2{font-size:27px}.purpose-content>p{font-size:13px}.features{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 0;margin-top:20px}.feature{padding-left:17px;min-height:104px}.feature:nth-child(odd){border-left:0;padding-left:0}.feature:nth-child(even){border-left:1px solid var(--line)}.feature__icon{height:31px;width:31px}.feature h3{font-size:13px}.feature p{font-size:12px;line-height:1.22}.story-copy{padding:27px 18px}.story-copy h2{font-size:30px}.story-image{min-height:224px;height:224px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.about-hero__image{transform:none!important}.image-window img,.btn,.btn__arrow,.feature__icon{transition:none!important}}

/* ====================================
   OUR STORY SECTION - FIXED
==================================== */

.story-section {
  position: relative;
  width: 100%;
  padding: 65px 0;
  background: #f8f9fa;
  overflow: hidden;
}

/* Align with the website's existing container */

.story-section .story-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
  align-items: center;
  gap: clamp(35px, 5vw, 75px);
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

/* Left Content */

.story-section .story-copy {
  width: 100%;
  min-width: 0;
  max-width: 520px;
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

.story-section .story-copy .eyebrow {
  margin-bottom: 12px;
}

.story-section .story-copy h2 {
  font-size: clamp(28px, 2.4vw, 38px);
  line-height: 1.16;
  font-weight: 500;
  letter-spacing: -0.8px;
  margin: 0 0 18px;
  color: #111;
}

.story-section .story-copy p {
  font-size: 15px;
  line-height: 1.7;
  color: #222;
  margin: 0 0 25px;
}

/* Right Image */

.story-section .story-image {
  width: 100%;
  min-width: 0;
  height: 340px;
  padding: 0;
  margin: 0;
  overflow: hidden;
  position: relative;
}

.story-section .story-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

/* ====================================
   TABLET
==================================== */

@media (max-width: 991px) {

  .story-section {
    padding: 50px 0;
  }

  .story-section .story-grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 30px;
  }

  .story-section .story-image {
    height: 300px;
  }

  .story-section .story-copy h2 {
    font-size: 28px;
  }

}

/* ====================================
   MOBILE
==================================== */

@media (max-width: 767px) {

  .story-section {
    padding: 45px 0;
  }

  .story-section .story-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 30px;
  }

  .story-section .story-copy {
    max-width: 100%;
  }

  .story-section .story-copy h2 {
    font-size: clamp(26px, 6vw, 32px);
  }

  .story-section .story-image {
    height: auto;
    aspect-ratio: 16 / 9;
  }

}

/* ====================================
   SMALL MOBILE
==================================== */

@media (max-width: 480px) {

  .story-section {
    padding: 35px 0;
  }

  .story-section .story-grid {
    gap: 24px;
  }

  .story-section .story-copy p {
    font-size: 14px;
    line-height: 1.65;
  }

  .story-section .story-image {
    aspect-ratio: 4 / 3;
  }

}
