:root{
  --paper:#f6f1e8;
  --paper-light:#fffaf2;
  --ink:#0f0e0d;
  --muted:#5f574d;
  --gold:#b89568;
  --line:#d7c8b2;
  --dark:#171411;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:Inter, Arial, sans-serif;
  font-size:16px;
  line-height:1.65;
}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}

.site-header{
  height:112px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:22px 54px;
  background:rgba(246,241,232,.97);
  border-bottom:1px solid var(--line);
}
.logo-box{
  width:206px;
  height:72px;
  border:1px solid rgba(184,149,104,.35);
  background:rgba(255,250,242,.75);
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}
.logo-box img{
  width:178px;
  height:54px;
  object-fit:cover;
}
.nav{
  display:flex;
  align-items:center;
  gap:42px;
  text-transform:uppercase;
  letter-spacing:.18em;
  font-size:12px;
  font-weight:600;
}
.nav a{opacity:.95;transition:color .2s ease}
.nav a:hover,.nav a.active{color:var(--gold)}

.hero{
  display:grid;
  grid-template-columns:46.6% 53.4%;
  min-height:632px;
  border-bottom:1px solid var(--line);
}
.hero-copy{
  background:linear-gradient(90deg,#fffaf2 0%,#f6f1e8 100%);
  padding:72px 70px 64px 96px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.hero-copy h1{
  font-family:"Cormorant Garamond", Georgia, serif;
  font-weight:400;
  text-transform:uppercase;
  margin:0;
  font-size:clamp(46px,3.7vw,66px);
  line-height:1.02;
  letter-spacing:-.04em;
}
.short-rule{
  width:64px;
  height:1.5px;
  background:var(--gold);
  margin:34px 0 24px;
}
.hero-copy p{
  margin:0;
  max-width:430px;
  color:#443d35;
  font-size:16px;
  line-height:1.65;
}
.cta{
  margin-top:30px;
  display:inline-flex;
  align-items:center;
  gap:24px;
  text-transform:uppercase;
  letter-spacing:.17em;
  font-weight:600;
  font-size:11px;
}
.cta span{
  width:70px;
  height:1px;
  background:var(--gold);
  position:relative;
}
.cta span:after{
  content:"";
  position:absolute;
  right:0;
  top:-4px;
  width:8px;
  height:8px;
  border-top:1px solid var(--gold);
  border-right:1px solid var(--gold);
  transform:rotate(45deg);
}
.hero-image{overflow:hidden;background:#d6c5ab}
.hero-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

.section{
  padding:70px 54px 88px;
  border-bottom:1px solid var(--line);
}
.section-inner{max-width:1240px;margin:0 auto}
.kicker{
  color:var(--gold);
  text-transform:uppercase;
  letter-spacing:.17em;
  font-size:12px;
  font-weight:600;
  margin-bottom:46px;
}
.mission-grid{
  display:grid;
  grid-template-columns:1px .72fr 1fr;
  gap:70px;
  align-items:start;
}
.vertical-line{
  width:1px;
  height:220px;
  background:var(--gold);
}
h2{
  font-family:"Cormorant Garamond", Georgia, serif;
  font-weight:400;
  margin:0;
  font-size:clamp(34px,3.1vw,52px);
  line-height:1.04;
  letter-spacing:-.035em;
}
h2 em{font-style:normal;color:var(--gold)}
.copy{
  color:#29251f;
  max-width:680px;
  font-size:16px;
  padding-top:2px;
}
.copy p{margin:0 0 20px}
.copy strong{font-weight:600;color:var(--ink)}

.home-teaser .mission-grid{
  grid-template-columns:1px .65fr 1fr;
}
.home-teaser .vertical-line{height:170px}

.page-hero{
  min-height:300px;
  display:flex;
  align-items:end;
  padding:80px 54px 64px;
  border-bottom:1px solid var(--line);
  background:linear-gradient(90deg,#fffaf2 0%,#f5efe5 100%);
}
.page-hero .section-inner{width:100%}
.page-hero h1{
  font-family:"Cormorant Garamond", Georgia, serif;
  font-weight:400;
  font-size:clamp(46px,4.2vw,72px);
  line-height:1.02;
  letter-spacing:-.045em;
  margin:0;
  text-transform:uppercase;
}
.page-hero p{
  max-width:560px;
  color:var(--muted);
  margin:22px 0 0;
  font-size:16px;
}

.exhibitions-wrap{
  display:grid;
  grid-template-columns:.78fr 1.22fr;
  gap:74px;
}
.project-list{border-top:1px solid var(--line)}
.project{
  padding:24px 0 27px;
  border-bottom:1px solid var(--line);
}
.project span{
  display:block;
  margin-bottom:10px;
  color:var(--gold);
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:11px;
  font-weight:600;
}
.project h3{
  font-family:"Cormorant Garamond", Georgia, serif;
  font-weight:400;
  font-size:clamp(24px,2.15vw,38px);
  line-height:1.08;
  letter-spacing:-.025em;
  margin:0;
}

.visual-strip{
  display:grid;
  grid-template-columns:52% 48%;
  min-height:430px;
  background:var(--dark);
  color:#fff8ef;
  border-bottom:1px solid var(--line);
}
.visual-strip img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.visual-strip div{
  padding:64px 74px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.visual-strip p{
  color:var(--gold);
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:11px;
  font-weight:600;
  margin:0 0 22px;
}
.visual-strip h2{
  max-width:600px;
  font-size:clamp(34px,3.1vw,52px);
}

.contact-grid{
  display:grid;
  grid-template-columns:.72fr 1fr;
  gap:84px;
}
.contact-info{
  font-size:16px;
  color:var(--muted);
}
address{
  margin-top:28px;
  font-style:normal;
  color:#25211d;
  font-size:18px;
  line-height:1.65;
}
address a{border-bottom:1px solid var(--gold)}

.site-footer{
  padding:30px 54px;
  display:flex;
  justify-content:space-between;
  gap:24px;
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:11px;
  color:var(--muted);
}

@media(max-width:900px){
  .site-header{
    height:auto;
    padding:20px 22px;
    align-items:flex-start;
    flex-direction:column;
    gap:20px;
  }
  .logo-box{width:188px;height:66px}
  .logo-box img{width:160px;height:50px}
  .nav{gap:20px;flex-wrap:wrap;font-size:11px}
  .hero{grid-template-columns:1fr;min-height:auto}
  .hero-copy{padding:52px 28px}
  .hero-copy h1{font-size:clamp(40px,11vw,58px)}
  .hero-image{height:500px}
  .section,.page-hero{padding-left:28px;padding-right:28px}
  .section{padding-top:58px;padding-bottom:72px}
  .mission-grid,.home-teaser .mission-grid,.exhibitions-wrap,.contact-grid,.visual-strip{
    grid-template-columns:1fr;
    gap:32px;
  }
  .vertical-line{height:90px}
  .visual-strip div{padding:48px 28px}
  .site-footer{padding:28px;flex-direction:column}
}
