.about-page{background:var(--warm);color:var(--ink);}
.about-page main{overflow:hidden;}
.about-page-kicker{
  font-family:'Montserrat',sans-serif;
  font-size:9px;
  font-weight:300;
  letter-spacing:6px;
  line-height:1.5;
  text-transform:uppercase;
  color:var(--sand);
}
.about-page-hero{
  min-height:100svh;
  display:grid;
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
  background:var(--ink);
}
.about-page-hero-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  padding:130px 7vw 90px;
  color:#fff;
}
.about-page-hero-copy .about-page-kicker{color:var(--sand2);margin-bottom:24px;}
.about-page-hero h1{
  max-width:620px;
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(56px,7.2vw,108px);
  font-weight:300;
  line-height:.86;
  letter-spacing:-1.5px;
}
.about-page-hero h1 em{font-weight:300;font-style:italic;color:var(--sand2);}
.about-page-hero-copy>p{
  max-width:500px;
  margin-top:30px;
  font-size:13px;
  line-height:1.95;
  color:rgba(255,255,255,.62);
}
.about-page-text-link{
  display:inline-flex;
  align-items:center;
  gap:14px;
  margin-top:40px;
  padding-bottom:6px;
  border-bottom:1px solid rgba(201,185,154,.45);
  color:#fff;
  text-decoration:none;
  font-size:9px;
  letter-spacing:5px;
  text-transform:uppercase;
}
.about-page-text-link span{color:var(--sand2);transition:transform .3s ease;}
.about-page-text-link:hover span{transform:translateY(4px);}
.about-page-hero-image{min-height:100svh;overflow:hidden;}
.about-page-hero-image img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;}

.about-page-intro{
  max-width:1180px;
  margin:0 auto;
  padding:120px 7vw;
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:90px;
  align-items:start;
}
.about-page-intro-heading .about-page-kicker{margin-bottom:18px;}
.about-page-intro h2,
.about-page-story h2,
.about-page-cta h2{
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(45px,5.5vw,78px);
  font-weight:300;
  line-height:.95;
  color:var(--ink);
}
.about-page-intro h2 em,
.about-page-story h2 em,
.about-page-cta h2 em{font-weight:300;font-style:italic;color:var(--olive);}
.about-page-intro-copy{padding-top:22px;}
.about-page-intro-copy p,
.about-page-story-copy p,
.about-page-cta p{
  max-width:610px;
  font-size:13px;
  line-height:2;
  color:var(--ink2);
}
.about-page-intro-copy p+p,
.about-page-story-copy p+p{margin-top:20px;}

.about-page-philosophy{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  background:var(--ink);
  color:#fff;
}
.about-page-philosophy article{
  min-height:430px;
  padding:70px 4.5vw;
  border-right:1px solid rgba(255,255,255,.08);
}
.about-page-philosophy article:last-child{border-right:0;}
.about-page-philosophy article>span{
  display:block;
  margin-bottom:70px;
  font-family:'Cormorant Garamond',serif;
  font-size:16px;
  color:var(--sand2);
}
.about-page-philosophy h2{
  max-width:300px;
  margin-bottom:26px;
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(34px,3.4vw,54px);
  font-weight:300;
  line-height:.95;
  color:#fff;
}
.about-page-philosophy p{
  max-width:390px;
  font-size:12px;
  line-height:1.95;
  color:rgba(255,255,255,.58);
}

.about-page-story{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  min-height:760px;
  background:var(--warm2);
}
.about-page-story-image{overflow:hidden;}
.about-page-story-image img{width:100%;height:100%;display:block;object-fit:cover;object-position:center;}
.about-page-story-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  padding:90px 7vw;
}
.about-page-story-copy .about-page-kicker{margin-bottom:18px;}
.about-page-story-copy h2{margin-bottom:34px;}
.about-page-story-copy .btn-primary{margin-top:34px;}

.about-page-gallery{
  padding:10px;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  grid-auto-rows:310px;
  gap:10px;
  background:#fff;
}
.about-page-gallery figure{overflow:hidden;background:var(--warm2);}
.about-page-gallery figure.about-gallery-wide{grid-column:span 2;}
.about-page-gallery img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .8s cubic-bezier(.25,.46,.45,.94);}
.about-page-gallery figure:hover img{transform:scale(1.03);}

.about-page-cta{
  max-width:1180px;
  margin:0 auto;
  padding:120px 7vw;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:70px;
  align-items:end;
}
.about-page-cta .about-page-kicker{margin-bottom:18px;}
.about-page-cta p{margin-top:26px;}
.about-page-actions{display:flex;flex-direction:column;gap:16px;align-items:stretch;min-width:230px;}
.about-page-secondary{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  min-height:50px;
  padding:15px 24px;
  border:1px solid var(--ink);
  color:var(--ink);
  text-decoration:none;
  font-size:9px;
  font-weight:400;
  letter-spacing:3.5px;
  text-transform:uppercase;
  transition:background .3s ease,color .3s ease;
}
.about-page-secondary:hover{background:var(--ink);color:#fff;}

@media(max-width:900px){
  .about-page-hero{grid-template-columns:1fr;min-height:auto;}
  .about-page-hero-copy{min-height:72svh;padding:130px 28px 76px;}
  .about-page-hero-image{min-height:68svh;}
  .about-page-intro{grid-template-columns:1fr;gap:36px;padding:88px 28px;}
  .about-page-intro-copy{padding-top:0;}
  .about-page-philosophy{grid-template-columns:1fr;}
  .about-page-philosophy article{min-height:0;padding:58px 28px;border-right:0;border-bottom:1px solid rgba(255,255,255,.08);}
  .about-page-philosophy article:last-child{border-bottom:0;}
  .about-page-philosophy article>span{margin-bottom:38px;}
  .about-page-story{grid-template-columns:1fr;min-height:0;}
  .about-page-story-image{height:72svh;}
  .about-page-story-copy{padding:80px 28px;}
  .about-page-gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:42vw;}
  .about-page-cta{grid-template-columns:1fr;gap:42px;padding:88px 28px;}
  .about-page-actions{width:100%;max-width:340px;}
}
@media(max-width:560px){
  .about-page-hero-copy{min-height:70svh;}
  .about-page-hero h1{font-size:clamp(52px,17vw,78px);}
  .about-page-hero-image{min-height:62svh;}
  .about-page-gallery{grid-template-columns:1fr;grid-auto-rows:78vw;}
  .about-page-gallery figure.about-gallery-wide{grid-column:auto;}
}
