:root{
  --sand-50:250 248 245;--sand-100:243 239 233;--sand-200:232 225 215;--sand-300:216 205 190;
  --sand-600:138 127 112;--sand-900:43 39 35;--surface:255 255 255;--accent-warm:156 122 60;
}
.dark{
  --sand-50:28 26 23;--sand-100:36 32 26;--sand-200:50 45 37;--sand-300:74 66 56;
  --sand-600:168 158 142;--sand-900:243 239 233;--surface:42 38 33;--accent-warm:201 167 104;
}
html,body{margin:0;padding:0;overflow-x:hidden}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .ourstory *,.ourstory *::before,.ourstory *::after{animation:none!important;transition:none!important}
}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;background:rgb(var(--sand-100));}

.ourstory{
  --bg:rgb(var(--sand-100));--bg-lift:rgb(var(--sand-50));--surface:rgb(var(--surface));
  --ink:rgb(var(--sand-900));--ink-body:rgb(var(--sand-900) / .84);--muted:rgb(var(--sand-600));
  --gold:rgb(var(--accent-warm));--line:rgb(var(--sand-200));--line-soft:rgb(var(--sand-900) / .09);
  --serif:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif;
  --measure:34rem;
  min-height:100dvh;background:var(--bg);color:var(--ink-body);
  font-size:17px;line-height:1.72;text-align:center;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
}
.ourstory *,.ourstory *::before,.ourstory *::after{box-sizing:border-box;}

.ourstory .brandhero{padding:clamp(3.5rem,11vh,6rem) clamp(1.25rem,5vw,2rem) clamp(2rem,5vh,3rem);}
.ourstory .brandmark{display:block;width:clamp(64px,12vw,92px);height:auto;margin:1.9rem auto 1.7rem;}
.ourstory .brand-name{margin:0 auto;max-width:none;font-family:var(--serif);font-size:clamp(2rem,6vw,3rem);font-weight:400;letter-spacing:.3em;text-indent:.3em;text-transform:uppercase;line-height:1.12;color:var(--ink);}
.ourstory .brand-name a{color:inherit;text-decoration:none;}
.ourstory .tagline{margin:1.05rem auto 0;max-width:none;font-size:clamp(1.06rem,2.7vw,1.3rem);color:var(--ink);}
.ourstory .tagline-sub{margin:.35rem auto 0;max-width:none;color:var(--muted);}
.ourstory .cta-primary{display:inline-flex;align-items:center;gap:.5rem;margin-top:1.9rem;padding:.82rem 1.8rem;border-radius:999px;background:var(--ink);color:var(--bg);font-weight:700;font-size:1.02rem;text-decoration:none;box-shadow:0 8px 24px rgb(0 0 0 / .16);transition:transform .15s,box-shadow .15s;}
.ourstory .cta-primary:hover{transform:translateY(-1px);box-shadow:0 10px 28px rgb(0 0 0 / .22);}
.ourstory .cta-primary .arrow{width:18px;height:18px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round;transition:transform .15s;}
.ourstory .cta-primary:hover .arrow{transform:translateX(3px);}
.ourstory .hero-title{margin:0 auto;max-width:18ch;font-family:var(--serif);font-size:clamp(1.9rem,5vw,2.9rem);line-height:1.1;font-weight:400;letter-spacing:-.02em;color:var(--ink);text-wrap:balance;}

.ourstory .subnav{
  position:sticky;top:0;z-index:20;
  padding:.85rem 1.25rem;
  background:rgb(var(--sand-100) / .92);
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line-soft);
}
.ourstory .subnav .pagenav{margin:0 auto;}

.ourstory .pagenav{margin:1.75rem auto 0;display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem 1.35rem;font-size:.82rem;letter-spacing:.02em;}
.ourstory .pagenav a{color:var(--muted);text-decoration:none;border-bottom:1px solid transparent;}
.ourstory .pagenav a:hover,.ourstory .pagenav a[aria-current="page"]{color:var(--ink);border-bottom-color:var(--line);}

.ourstory .band{display:none;}
html[data-land="our-story"]:not(:has(.band:target)) #our-story,
html[data-land="features"]:not(:has(.band:target)) #features,
html[data-land="questions"]:not(:has(.band:target)) #questions,
.ourstory .band:target{
  display:block;
  animation:band-reveal .35s ease;
}
@keyframes band-reveal{
  from{opacity:0;}
  to{opacity:1;}
}

.ourstory .hero{position:relative;padding:clamp(1.5rem,4vh,2.5rem) clamp(1.25rem,5vw,2rem) clamp(2.5rem,6vh,4rem);overflow:hidden;}
.ourstory .hero::before{content:"";position:absolute;inset:-40% 50% auto;width:70rem;height:44rem;transform:translateX(-50%);background:radial-gradient(ellipse at 50% 40%, rgb(var(--accent-warm) / .09) 0%, transparent 62%);pointer-events:none;}
.ourstory .hero-inner{position:relative;max-width:40rem;margin:0 auto;}
.ourstory .hero-rule{width:2.5rem;height:1px;margin:2rem auto 0;background:linear-gradient(90deg,transparent,var(--gold),transparent);}
.ourstory .hero-kicker{margin:.9rem auto 0;max-width:22ch;font-family:var(--serif);font-size:clamp(1.5rem,3.4vw,2rem);line-height:1.18;font-weight:400;letter-spacing:-.01em;color:var(--ink);text-wrap:balance;}

.ourstory main{max-width:60rem;margin:0 auto;padding:0 clamp(1.25rem,5vw,2rem) clamp(2rem,6vh,4rem);}
.ourstory .section{padding:clamp(3rem,8vh,5rem) 0 0;}
.ourstory .section::before{content:"";display:block;width:2.25rem;height:1px;margin:0 auto clamp(3rem,8vh,5rem);background:var(--line);}
.ourstory .section:first-child{padding-top:0;}
.ourstory .section:first-child::before{display:none;}
.ourstory .section-head{display:flex;flex-direction:column;align-items:center;gap:.7rem;margin-bottom:1.6rem;}

.ourstory #features main{padding-bottom:clamp(3.5rem,9vh,5.5rem);}
.ourstory #features .section{
  padding:clamp(3.5rem,9vh,5.75rem) 0;
}
.ourstory #features .section:first-child{padding-top:.35rem;}
.ourstory #features .section:last-child{padding-bottom:0;}
.ourstory #features .section::before{
  width:min(100%, 36rem);
  margin:0 auto clamp(3.5rem,9vh,5.75rem);
}
.ourstory #features .shot-copy p{margin-bottom:1rem;}
.ourstory #features .shot-copy p:last-child{margin-bottom:0;}
.ourstory #features .give-head{
  margin:clamp(2.75rem,7vh,4.25rem) auto 0;
  padding-top:clamp(1.75rem,4vh,2.5rem);
  max-width:46rem;
  border-top:1px solid var(--line-soft);
  gap:.45rem;
}
.ourstory #features .give-head.section-head{margin-bottom:1.35rem;}
.ourstory #features .give-head h3{color:var(--gold);}
.ourstory #questions .section{padding-top:clamp(1.75rem,4.5vh,2.75rem);}
.ourstory #questions .section::before{margin-bottom:clamp(1.75rem,4.5vh,2.75rem);}
.ourstory #questions .section-head{margin-bottom:.7rem;gap:.35rem;}
.ourstory #questions .num{display:none;}
.ourstory #questions .give-head{margin:clamp(2.25rem,6vh,3.5rem) auto .25rem;padding-top:0;border-top:0;max-width:none;}
.ourstory #questions main > .give-head:first-child{margin-top:0;}
.ourstory #questions .give-head h3{color:var(--gold);}
.ourstory #questions main{max-width:36rem;text-align:left;}
.ourstory #questions .give-head.section-head{align-items:flex-start;text-align:left;}
.ourstory .faq-item{margin:0;border-top:1px solid var(--line);text-align:left;}
.ourstory .faq-item summary{
  position:relative;cursor:pointer;list-style:none;
  padding:1.15rem 1.85rem 1.15rem 0;
  font-family:var(--serif);font-size:clamp(1.12rem,2.3vw,1.35rem);
  line-height:1.3;font-weight:400;color:var(--ink);
}
.ourstory .faq-item summary::-webkit-details-marker{display:none;}
.ourstory .faq-item summary::marker{content:"";}
.ourstory .faq-item summary::after{
  content:"";position:absolute;right:.15rem;top:50%;
  width:7px;height:7px;
  border-right:1.5px solid var(--gold);border-bottom:1.5px solid var(--gold);
  transform:translateY(-70%) rotate(45deg);
}
.ourstory .faq-item[open] summary::after{transform:translateY(-20%) rotate(225deg);}
.ourstory .faq-item .lead{margin:0 1.85rem 1.35rem 0;padding-left:1.35rem;max-width:none;}
.ourstory .num{font-size:.7rem;font-weight:700;letter-spacing:.28em;color:var(--gold);font-variant-numeric:tabular-nums;}
.ourstory h2{margin:0;max-width:24ch;font-family:var(--serif);font-size:clamp(1.5rem,3.4vw,2rem);line-height:1.18;font-weight:400;letter-spacing:-.01em;color:var(--ink);text-wrap:balance;}
.ourstory h3{margin:0;font-family:var(--serif);font-size:clamp(1.2rem,2.4vw,1.45rem);line-height:1.25;font-weight:400;letter-spacing:-.01em;color:var(--ink);}
.ourstory .give-head{margin:2.5rem auto 0;}
.ourstory p{margin:0 auto 1.2rem;max-width:var(--measure);}
.ourstory .lead{color:var(--ink);}
.ourstory main p:last-of-type{margin-bottom:0;}
.ourstory main a{color:var(--ink);text-decoration:underline;text-decoration-color:rgb(var(--accent-warm) / .45);text-underline-offset:.15em;}
.ourstory .subnav a,.ourstory .page-footer a,.ourstory .cta-primary,.ourstory .read-cta{text-decoration:none;}

.ourstory .quote{position:relative;margin:2.5rem auto;max-width:34rem;padding:1.9rem 1.9rem 1.6rem;background:rgb(var(--accent-warm) / .07);border:1px solid rgb(var(--accent-warm) / .18);border-radius:18px;}
.ourstory .quote blockquote{position:relative;margin:0;}
.ourstory .quote p{margin:0;max-width:none;font-family:var(--serif);font-style:italic;font-size:clamp(1.16rem,2.5vw,1.4rem);line-height:1.55;color:var(--ink);text-wrap:pretty;}
.ourstory .quote figcaption{margin-top:.95rem;font-size:.68rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);font-style:normal;}
.ourstory .quote-pair{display:grid;gap:1.5rem;margin:2.5rem auto;max-width:52rem;}
.ourstory .quote-pair .quote{margin:0;}
@media (min-width:46rem){.ourstory .quote-pair{grid-template-columns:1fr 1fr;gap:1.75rem;}}

.ourstory .cards{display:grid;gap:1rem;margin:2.25rem auto;padding:0;list-style:none;max-width:46rem;}
@media (min-width:40rem){.ourstory .cards{grid-template-columns:repeat(2,1fr);gap:1.15rem;}}
.ourstory .card{background:rgb(var(--surface));border:1px solid rgb(var(--line));border-radius:16px;padding:1.7rem 1.4rem;text-align:center;box-shadow:0 4px 14px rgb(0 0 0 / .05);}
.dark .ourstory .card{background:rgb(var(--sand-200));border-color:rgb(var(--sand-300));box-shadow:0 6px 18px rgb(0 0 0 / .22);}
.ourstory .card svg{display:block;width:20px;height:20px;margin:0 auto 1.05rem;padding:.55rem;box-sizing:content-box;border-radius:50%;background:rgb(var(--accent-warm) / .1);stroke:var(--gold);stroke-width:1.5;fill:none;stroke-linecap:round;stroke-linejoin:round;}
.ourstory .card p{margin:0;max-width:none;font-size:.965rem;line-height:1.6;color:var(--ink);}

.ourstory .shot-row{display:grid;gap:1.75rem;align-items:center;}
.ourstory .shot-row .shot-frame{margin:0 auto;max-width:52rem;}
@media (min-width:56rem){
  .ourstory #features main{max-width:72rem;}
  .ourstory .shot-row{
    grid-template-columns:minmax(16rem,22rem) minmax(0,1fr);
    gap:2.5rem;
    text-align:left;
  }
  .ourstory .shot-row .section-head{align-items:flex-start;margin-bottom:1.4rem;gap:.55rem;}
  .ourstory .shot-row .section-head h2{max-width:18ch;}
  .ourstory .shot-row p{margin-left:0;margin-right:0;max-width:34ch;}
  .ourstory .shot-row .shot-frame{margin:0;max-width:none;}
}

.ourstory .shot-frame{
  margin:2.25rem auto 0;max-width:52rem;
  border-radius:16px;overflow:hidden;
  background:rgb(var(--surface));border:1px solid var(--line);
  box-shadow:0 4px 14px rgb(0 0 0 / .05);
}
.dark .ourstory .shot-frame{background:rgb(var(--sand-200));border-color:rgb(var(--sand-300));box-shadow:0 6px 18px rgb(0 0 0 / .22);}
.ourstory .shot-frame img{width:100%;height:auto;}
.ourstory .shot-frame .shot-img--light{display:block;}
.ourstory .shot-frame .shot-img--dark{display:none;}
html.dark .ourstory .shot-frame .shot-img--light{display:none;}
html.dark .ourstory .shot-frame .shot-img--dark{display:block;}

.ourstory .give-head + .feature-list{margin-top:0;}
.ourstory .lead + .feature-list{margin-top:2.25rem;}
.ourstory .feature-list + .shot-frame{margin-top:2.25rem;}
.ourstory .feature-list{
  display:grid;gap:1.5rem 2rem;margin:0 auto;padding:0;
  max-width:46rem;text-align:center;
}
@media (min-width:40rem){.ourstory .feature-list{grid-template-columns:repeat(2,1fr);}}
@media (min-width:52rem){.ourstory .feature-list{grid-template-columns:repeat(3,1fr);}}
.ourstory .feature-list > div{padding-top:1.15rem;border-top:1px solid var(--line);}
.ourstory .feature-list dt{margin:0 0 .4rem;font-family:var(--serif);font-size:1.06rem;color:var(--ink);}
.ourstory .feature-list dd{margin:0 auto;max-width:28ch;font-size:.965rem;line-height:1.6;color:var(--muted);}

.ourstory .signoff{position:relative;margin-top:0;padding:clamp(3.5rem,10vh,6rem) clamp(1.5rem,5vw,2rem);background:var(--bg-lift);border-top:1px solid var(--line-soft);overflow:hidden;}
.ourstory .signoff::before{content:"";position:absolute;inset:auto 50% -60%;width:56rem;height:28rem;transform:translateX(-50%);background:radial-gradient(ellipse at 50% 50%, rgb(var(--accent-warm) / .07), transparent 62%);pointer-events:none;}
.ourstory .signoff-inner{position:relative;max-width:34rem;margin:0 auto;}
.ourstory .mark{width:6px;height:6px;margin:0 auto 1.75rem;transform:rotate(45deg);background:var(--gold);}
.ourstory .wordmark{margin:0 0 1.9rem;font-family:var(--serif);font-size:clamp(1.5rem,4vw,2rem);font-weight:400;letter-spacing:.32em;text-indent:.32em;text-transform:uppercase;color:var(--ink);}
.ourstory .signoff .quote{max-width:30rem;margin:0 auto;padding:0;background:none;border:0;}
.ourstory .signoff .quote p{font-size:clamp(1.3rem,3.2vw,1.6rem);line-height:1.45;}
.ourstory .read-cta{display:inline-flex;align-items:center;gap:.45rem;margin-top:2.4rem;padding:.35rem .1rem;text-decoration:none;font-size:.95rem;font-weight:600;letter-spacing:.01em;color:var(--gold);border-bottom:1px solid rgb(var(--accent-warm) / .35);transition:border-color .15s,gap .15s;}
.ourstory .read-cta:hover{border-bottom-color:var(--gold);gap:.65rem;}
.ourstory .read-cta .arrow{width:17px;height:17px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round;transition:transform .15s;}
.ourstory .read-cta:hover .arrow{transform:translateX(2px);}

.ourstory .page-footer{padding:1.75rem 1.5rem 3rem;color:var(--muted);font-size:.75rem;letter-spacing:.02em;line-height:1.6;background:var(--bg-lift);}
.ourstory .page-footer .pagenav{margin:0 auto 1.1rem;}
.ourstory .page-footer p{margin:0 auto;}
