body.p-about{
  --paper:   #FDFCF6;
  --paper-2: #F4EFE6;
  --ink:     #1B1512;
  --ink-2:   #4B3F36;
  --mute:    #8A7C6F;
  --rule:    #E2DACD;
  --rule-2:  #CFC5B5;
  --fire:    #C2410C;

  background:var(--paper); color:var(--ink);
}
body.p-about main{ background:var(--paper); }
.p-about ::selection{ background:var(--fire); color:#fff; }

.ab-int{
  --int-paper:#F4EFE7;
  background:var(--int-paper);
  display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);
  align-items:center; gap:clamp(2rem,5vw,6rem);
  padding:clamp(4rem,10vh,8rem) var(--pad);
}

.ab-int-fig{
  position:relative;
  padding:0;
}
.ab-int-frame{
  position:relative; display:block;
  width:100%; max-width:46rem; margin:0 auto;
}
.ab-int-fig img{ width:100%; display:block; }
.ab-int-fig.is-raw img{
  mix-blend-mode:multiply;
  filter:drop-shadow(0 2.2rem 2.6rem rgba(40,28,18,.16));
}

.ab-int-tx{ max-width:34rem; }
.ab-int-h{
  font-family:var(--serif); font-weight:400;
  font-size:clamp(2.4rem,4.6vw,4.2rem);
  line-height:1.02; letter-spacing:-.03em; color:var(--ink);
}
.ab-int-p{
  margin-top:clamp(1.8rem,4vh,2.6rem);
  font-family:var(--beaufort); color:var(--ink-2);
  font-size:clamp(1rem,.35vw + .95rem,1.12rem); line-height:1.78;
}
.ab-int-p + .ab-int-p{ margin-top:1.1rem; }
.ab-int-close{
  margin-top:clamp(1.6rem,3.5vh,2.2rem);
  font-family:var(--serif); font-style:italic; color:var(--ink);
  font-size:clamp(1.05rem,1.35vw,1.24rem); line-height:1.5;
  max-width:30ch;
}

.ab-int-cta{
  display:inline-flex; align-items:center; gap:1.4rem;
  margin-top:clamp(2rem,4.5vh,2.8rem);
  padding:1.05rem 1.7rem;
  background:var(--ink); color:#F6F1E8;
  font-family:var(--serif); font-style:italic;
  font-size:clamp(1rem,1.15vw,1.1rem);
  transition:background .4s var(--ease), color .4s var(--ease);
}
.ab-int-cta svg{
  width:1.15em; height:1.15em; flex:none; fill:none; stroke:currentColor;
  stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round;
  transition:transform .4s var(--ease);
}
.ab-int-cta:hover{ background:var(--fire); }
.ab-int-cta:hover svg{ transform:translateX(.35rem); }

.ab-int-facts{
  display:grid; grid-template-columns:repeat(3,1fr);
  margin-top:clamp(3rem,7vh,4.5rem);
  border-top:1px solid var(--rule);
  padding-top:clamp(1.4rem,3vh,2rem);
}
.ab-int-facts li{
  display:flex; flex-direction:column; gap:.5rem;
  padding-left:clamp(.9rem,1.6vw,1.5rem);
  border-left:1px solid var(--rule);
}
.ab-int-facts li:first-child{ border-left:0; padding-left:0; }
.ab-int-fact-k{
  font-family:var(--beaufort); font-weight:600; color:var(--ink);
  font-size:clamp(.92rem,1vw,1.02rem); line-height:1.25;
}
.ab-int-fact-v{
  font-family:var(--serif); font-style:italic; color:var(--mute);
  font-size:clamp(.85rem,.95vw,.95rem); line-height:1.3;
}

@media (max-width:1024px){
  .ab-int{ grid-template-columns:minmax(0,1fr); gap:clamp(2.5rem,6vh,4rem); }
  .ab-int-tx{ max-width:none; }
  .ab-int-fig img{ max-width:40rem; }
  .ab-int-fig{ padding:0; }
}
@media (max-width:560px){
  .ab-int-facts{ grid-template-columns:minmax(0,1fr); gap:1.2rem; }
  .ab-int-facts li{ border-left:0; padding-left:0; border-top:1px solid var(--rule); padding-top:1.2rem; }
  .ab-int-facts li:first-child{ border-top:0; padding-top:0; }
}

.story-hero,.story-craft,.story-history,.story-table,.story-end{
  --story-dark:#141310; --story-cream:#F0E9DB; --story-copper:#E2763F;
}
.story-kicker{font-family:var(--sans)!important;font-size:.67rem;font-weight:500;letter-spacing:.17em;text-transform:uppercase;line-height:1.7;}
.story-hero{position:relative;isolation:isolate;min-height:max(720px,100svh);height:auto;overflow:hidden;background:var(--story-dark);color:var(--story-cream);display:flex;align-items:flex-end;padding:9rem var(--pad) clamp(4rem,9vh,7rem);}
.story-hero-photo{position:absolute;z-index:-2;inset:0;overflow:hidden;}
.story-hero-photo img{height:100%;width:100%;object-fit:cover;object-position:63% 50%;}
.story-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#141310 0%,rgba(20,19,16,.94) 22%,rgba(20,19,16,.38) 58%,rgba(20,19,16,.1)),linear-gradient(0deg,rgba(20,19,16,.85),transparent 35%);}
.story-hero-content{position:relative;z-index:2;width:100%;max-width:min(46rem,60vw);}
.story-hero-title{font-family:var(--serif);font-weight:400;font-size:clamp(4rem,7.4vw,8.8rem);letter-spacing:-.055em;line-height:.97;max-width:13ch;}
.story-hero-title span,.story-hero-title em{display:block;}
.story-hero-title em{font-weight:400;color:#ECAA79;}
.story-hero-lead{font-size:1.05rem;line-height:1.7;max-width:38ch;margin-top:2.2rem;padding-top:2.2rem;border-top:1px solid rgba(240,233,219,.2);color:#D1C9BC;}
.story-craft{background:var(--story-dark);color:var(--story-cream);padding:6rem var(--pad) 2rem;scroll-margin-top:5rem;}
.story-craft-head{display:block;text-align:center;padding-bottom:4rem;}
.story-craft-head h2{font-family:var(--serif);font-weight:400;font-size:clamp(1.9rem,6.2vw,6rem);line-height:1.04;letter-spacing:-.05em;text-wrap:balance;}
.story-craft-head h2 span{display:inline;}
.story-craft-head h2 span+span{margin-left:.14em;}
.story-craft-head h2 span:last-child{color:var(--story-copper);font-style:italic;}
.story-craft-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:8vw;align-items:start;}
.story-craft-gallery{position:sticky;top:7rem;height:min(73vh,48rem);margin-bottom:5rem;}
.story-craft-shot{position:absolute;inset:0;margin:0;opacity:0;transition:opacity .65s ease;overflow:hidden;}
.story-craft-shot.is-active{opacity:1;}
.story-craft-shot img{width:100%;height:100%;object-fit:cover;}
.story-craft-shot:first-child img{object-position:65% 50%;}
.story-chapter{min-height:66vh;display:flex;flex-direction:column;justify-content:center;padding:3rem 0 5rem;border-top:1px solid #3A352D;}

.story-chapter h3{font-family:var(--serif);font-size:clamp(3rem,5vw,5.8rem);font-weight:400;line-height:1.04;letter-spacing:-.04em;}
.story-chapter h4{font-family:var(--serif);font-weight:400;font-style:italic;font-size:1.35rem;color:#D5946A;margin-top:1.4rem;}
.story-chapter p{font-size:1.02rem;line-height:1.85;color:#BFB5A7;max-width:32ch;margin-top:1.1rem;}
.story-history{position:relative;isolation:isolate;overflow:clip;background:#E9E2D5;color:#29251F;padding:7rem var(--pad);display:grid;grid-template-columns:1fr 1fr;gap:8vw;}
.story-history-intro{align-self:start;position:sticky;top:8rem;z-index:1;}
.story-history h2{font-size:clamp(3rem,4.9vw,5.6rem);font-family:var(--serif);line-height:1.04;font-weight:400;letter-spacing:-.045em;margin-top:2.5rem;}
.story-history h2 em{display:block;font-weight:400;color:#9D512E;}
.story-history-intro>p:not(.story-kicker){font-size:1rem;line-height:1.8;max-width:31ch;margin-top:2rem;color:#655B4E;}
.story-history-mark{position:absolute;z-index:-1;top:calc(50vh - 8rem);left:calc(-1 * var(--pad));width:clamp(34rem,52vw,60rem);aspect-ratio:1;height:auto;margin:0;transform:translate(-50%,-50%);color:#A39176;opacity:.3;pointer-events:none;}
.story-history-mark svg{width:100%;height:100%;display:block;}
.story-years{list-style:none;margin:0;padding:0;}
.story-year{position:relative;border-top:1px solid #BAAF9E;padding:2rem 0 3.2rem 3rem;}

.story-year h3{font-family:var(--sans)!important;font-weight:300;font-size:clamp(4rem,7.5vw,8rem);letter-spacing:-.075em;line-height:1;color:#3A342B;}
.story-year p{font-size:1rem;line-height:1.8;color:#655B4E;max-width:37ch;margin-top:1.4rem;}
.story-table{display:grid;grid-template-columns:1.2fr 1fr;background:#9C4229;color:#F8EDDB;}
.story-table-photo{overflow:hidden;position:relative;}
.story-table-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:22% 72%;}
.story-table-copy{padding:clamp(2.75rem,5vh,4rem) clamp(2rem,3.5vw,4rem);align-self:center;width:100%;max-width:42rem;margin-inline:auto;}
.story-end .story-kicker{font-family:var(--serif)!important;font-style:italic;font-size:clamp(1.05rem,1.8vw,1.45rem);font-weight:400;letter-spacing:0;text-transform:none;color:#C9B79A;line-height:1.5;}
.story-table h2{font-family:var(--serif);font-size:clamp(2.6rem,3.9vw,4.4rem);font-weight:400;line-height:1.02;letter-spacing:-.04em;margin:0 0 2rem;}
.story-table h2 span{display:block;}
.story-table h2 span:last-child{font-style:italic;color:#EAB593;}
.story-table-note p{font-size:1rem;line-height:1.85;color:#F0D6C6;}
.story-table-note p+p{margin-top:1rem;}
.story-table-sign{margin-top:2rem;font-size:1.15rem;font-style:italic;}
.story-end{position:relative;isolation:isolate;overflow:hidden;min-height:38rem;padding:6rem var(--pad);display:flex;align-items:center;justify-content:center;text-align:center;color:var(--story-cream);background:var(--story-dark);}
.story-end>img{position:absolute;inset:0;z-index:-2;height:100%;width:100%;object-fit:cover;object-position:50% 40%;}
.story-end::after{content:"";position:absolute;inset:0;z-index:-1;background:rgba(12,11,9,.73);}
.story-end h2{font-family:var(--serif);font-weight:400;font-size:clamp(3rem,6.8vw,7.8rem);line-height:1;letter-spacing:-.045em;margin:2.5rem 0;}
.story-end h2 em{display:block;color:#ECAA79;}
.story-end-pan{display:inline-block;width:clamp(13rem,20vw,17.5rem);color:var(--story-cream);transition:transform .45s cubic-bezier(.2,.7,.3,1);}
.story-end-pan svg{width:100%;height:auto;display:block;overflow:visible;}
.story-end-pan .pan-body{fill:currentColor;transition:fill .35s;}
.story-end-pan .pan-fill{fill:var(--story-cream);transition:fill .35s;}
.story-end-pan .pan-label{fill:var(--story-dark);font-family:var(--serif);font-style:normal;font-size:27px;letter-spacing:.01em;transition:fill .35s;}
.story-end-pan:hover{transform:rotate(-7deg) scale(1.04);}
.story-end-pan:hover .pan-body,.story-end-pan:hover .pan-fill{fill:#eb6504;}
.story-end-pan:hover .pan-label{fill:#fff;}
.story-end a:focus-visible{outline:2px solid #F4B882;outline-offset:6px;}
@media(min-width:1500px){.story-hero-title{font-size:clamp(7rem,8.2vw,10rem);}.story-hero{min-height:900px;}}
@media(max-width:900px){
  .story-hero{min-height:max(760px,95svh);height:auto;padding-top:9rem;}
  .story-hero-photo{inset:0;}.story-hero::after{background:linear-gradient(90deg,rgba(20,19,16,.87),rgba(20,19,16,.25)),linear-gradient(0deg,#141310,transparent 75%);}
  .story-hero-title{font-size:clamp(3.7rem,10vw,6rem);}
  .story-craft{padding-top:4rem;}.story-craft-head{padding-bottom:3rem;}
  .story-craft-grid{grid-template-columns:1fr;gap:0;}.story-craft-gallery{position:relative;top:auto;height:60vw;max-height:30rem;margin-bottom:2.5rem;}
  .story-chapter{min-height:0;padding:2.5rem 0;}.story-chapter p{max-width:45ch;}
  .story-history{padding-top:4rem;padding-bottom:4rem;gap:3rem;grid-template-columns:1fr;}.story-history-intro{position:relative;top:auto;}.story-history-mark{top:auto;bottom:-8rem;width:clamp(22rem,78vw,34rem);opacity:.2;}.story-history-intro>p:not(.story-kicker){max-width:75%;}
  .story-year{padding-bottom:2rem;}.story-year h3{font-size:5rem;}
  .story-table{grid-template-columns:1fr;}.story-table-photo{height:60vw;max-height:26rem;}.story-table-copy{padding:3rem var(--pad);max-width:40rem;}
  .story-end{min-height:32rem;}
}
@media(max-width:560px){
  .story-hero{min-height:640px;padding-top:7rem;padding-bottom:4.5rem;align-items:flex-end;}.story-hero-content{max-width:none;}.story-hero-title{font-size:15vw;max-width:11ch;}.story-hero-lead{font-size:.95rem;max-width:32ch;margin-top:1.8rem;padding-top:1.8rem;}  .story-hero-photo img{object-position:66% 50%;}  .story-craft-head h2{font-size:8.6vw;}.story-history h2{font-size:12vw;}.story-table h2{font-size:13vw;}
  .story-end h2{font-size:13vw;}.story-end .story-kicker{max-width:24ch;margin-inline:auto;}
}
@media(prefers-reduced-motion:reduce){.story-craft-shot,.story-end-pan{transition:none;}}

.story-chapter-image{display:none;}
@media(max-width:900px){
  .story-craft-gallery{display:none;}
  .story-chapter-image{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;margin-bottom:1.8rem;}
}

@media(max-width:900px),(any-pointer:coarse),(hover:none){
  .story-hero-content{max-width:46rem}
  .ab-int-p,.story-hero-lead,.story-chapter p,.story-history-intro>p:not(.story-kicker),.story-year p,.story-table-note p{font-size:1.125rem;line-height:1.75;max-width:100%}
  .ab-int-fact-k{font-size:1.05rem}
  .ab-int-fact-v{font-size:1rem}
  .story-craft-grid{grid-template-columns:minmax(0,1fr);gap:0}
  .story-craft-gallery{display:none}
  .story-chapter{min-height:0;padding:2.5rem 0}
  .story-chapter-image{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;margin-bottom:1.8rem}
  .story-craft-head h2{font-size:clamp(2.5rem,11vw,4.5rem)}
}
@media(max-width:560px){
  .story-hero{min-height:max(680px,94svh);padding-bottom:3.5rem}
  .story-hero-title{font-size:clamp(3.4rem,16vw,4.8rem);max-width:none}
  .ab-int-h{font-size:clamp(2.2rem,9vw,3rem)}
  .story-chapter h3{font-size:clamp(3rem,13vw,3.8rem)}
  .story-chapter h4{font-size:1.5rem}
  .story-history h2,.story-table h2,.story-end h2{font-size:clamp(3rem,14.5vw,4rem)}
  .story-year{padding-left:0}
}
