*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#0a0a0a;color:#f3f0e8;font-family:'DM Sans',sans-serif}
.topbar{height:82px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:20;background:rgba(10,10,10,.92);border-bottom:1px solid #262626}
.brand{font-family:'Archivo Black';line-height:.82;color:#fff;text-decoration:none}
.topbar nav{display:flex;gap:28px}.topbar a{color:#eee;text-decoration:none}.header-cta{border:1px solid #444;padding:12px 18px}.menu{display:none}
.home-hero{min-height:78vh;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);position:relative;overflow:hidden;align-items:stretch}
.home-copy{padding:10vh 5vw;align-self:center;z-index:2;min-width:0}
.kicker,.section-label{font-size:12px;text-transform:uppercase;letter-spacing:.16em;color:#aaa}
.home-copy h1,.section-head h2,.statement h2,.contact h2{font-family:'Archivo Black';font-size:clamp(48px,7vw,108px);line-height:.9;margin:24px 0}
.home-copy h1 span{color:#f3f0e8}.statement h2 span{color:#111}
.home-copy>p:not(.kicker){max-width:610px;color:#bbb;font-size:18px;line-height:1.6}
.home-hero>img{display:block;width:100%;height:100%;min-height:78vh;object-fit:cover;object-position:center 24%;filter:saturate(.9)}
.play-link{display:inline-block;margin-top:22px;color:#fff;text-decoration:none}
.metrics{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #262626;border-bottom:1px solid #262626}.metrics div{padding:32px 5vw;border-right:1px solid #262626}.metrics strong{display:block;font-family:'Archivo Black';font-size:34px}.metrics span{color:#999}
.work-section,.statement,.contact{padding:100px 5vw}.section-head h2{font-size:clamp(44px,6vw,86px)}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:46px 28px}.project{color:#eee;text-decoration:none}.project-image{height:390px;background:#171717;position:relative;overflow:hidden}.project-image img{width:100%;height:100%;object-fit:cover;transition:.5s transform}.project:hover .project-image img{transform:scale(1.025)}.project-tag{position:absolute;top:18px;left:18px;background:#0a0a0a;padding:9px 12px;font-size:11px;text-transform:uppercase;letter-spacing:.12em}.project-monogram{position:absolute;right:20px;bottom:14px;font-family:'Archivo Black';font-size:58px}.charity-card{background:linear-gradient(145deg,#181818,#303030)}.project-info{display:grid;grid-template-columns:42px 1fr;column-gap:12px;padding-top:18px}.project-info span{color:#777}.project-info h3{margin:0;font-size:28px}.project-info p,.project-info b{grid-column:2;color:#999;line-height:1.5}
.statement{background:#f0ede5;color:#111}.statement .section-label{color:#666}.statement h2{font-size:clamp(42px,6vw,82px)}.statement p:last-child{max-width:800px;font-size:20px;line-height:1.6}.contact{text-align:center}.contact h2{font-size:clamp(42px,6vw,82px)}.contact>a{color:#f3f0e8;font-size:20px}footer{padding:40px 5vw;border-top:1px solid #262626;display:flex;justify-content:space-between;align-items:end;color:#888}
@media(max-width:800px){
 .topbar nav,.header-cta{display:none}
 .home-hero{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);min-height:600px}
 .home-copy{padding:7vh 4vw}
 .home-copy h1{font-size:clamp(40px,8vw,68px)}
 .home-copy>p:not(.kicker){font-size:15px;line-height:1.5}
 .home-hero>img{min-height:600px}
 .metrics{grid-template-columns:1fr 1fr}.project-grid{grid-template-columns:1fr}.project-image{height:300px}footer{gap:20px;flex-direction:column;align-items:start}
}
@media(max-width:600px){
 /* Keep headline and headshot side-by-side even in narrow previews. */
 .home-hero{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);min-height:500px}
 .home-copy{padding:48px 3.5vw}
 .home-copy h1{font-size:clamp(32px,9vw,52px);margin:16px 0}
 .kicker{font-size:9px;letter-spacing:.11em}
 .home-copy>p:not(.kicker){font-size:12px;line-height:1.45}
 .play-link{font-size:12px;margin-top:14px}
 .home-hero>img{min-height:500px;height:100%;object-position:center 22%}
}

/* Editorial split hero: portrait left, headline right */
.home-hero{grid-template-columns:54% 46%;min-height:78vh;background:#050505}
.hero-portrait{grid-column:1;grid-row:1;min-width:0;overflow:hidden;background:#050505}
.hero-portrait img{display:block;width:100%;height:100%;min-height:78vh;object-fit:cover;object-position:center 34%}
.home-copy{grid-column:2;grid-row:1;padding:8vh 4vw;align-self:center;overflow:visible}
.home-copy h1{font-size:clamp(56px,7.4vw,118px);letter-spacing:-.035em;white-space:nowrap}
.home-copy h1 span{color:#f3f0e8}
@media(max-width:800px){.home-hero{grid-template-columns:52% 48%}.hero-portrait img{min-height:600px}.home-copy{padding:6vh 3vw}.home-copy h1{font-size:clamp(38px,7.2vw,64px)}}
@media(max-width:600px){.home-hero{grid-template-columns:50% 50%}.hero-portrait img{min-height:500px}.home-copy{padding:40px 2.5vw}.home-copy h1{font-size:clamp(29px,7vw,46px)}}

.company-wordmark{color:#fff;font-size:clamp(28px,3.6vw,52px);line-height:.9;text-shadow:0 2px 14px rgba(0,0,0,.65);max-width:85%;text-align:right;}


.statement p + p{
  margin-top:24px;
}
.contact-copy{
  max-width:720px;
  margin-top:28px;
  font-size:19px;
  line-height:1.7;
  color:#aaa49d;
}
.contact-email{
  font-size:clamp(20px,2.2vw,34px) !important;
  font-weight:600;
  overflow-wrap:anywhere;
}

/* Homepage headline: slightly smaller for more right-side breathing room */
.hero-copy h1{
  font-size:clamp(58px, 7.15vw, 116px) !important;
  line-height:.88 !important;
  max-width:96% !important;
}
@media(max-width:1100px){
  .hero-copy h1{
    font-size:clamp(54px, 7vw, 92px) !important;
    max-width:94% !important;
  }
}


/* Final homepage hero sizing — keep all three words comfortably inside the right column */
.home-copy{
  padding-right:5.5vw !important;
}
.home-copy h1{
  font-size:clamp(50px,5vw,84px) !important;
  line-height:.92 !important;
  letter-spacing:-.035em !important;
  white-space:nowrap !important;
  max-width:100% !important;
  margin-right:0 !important;
}
@media(max-width:1100px){
  .home-copy{
    padding-right:4vw !important;
  }
  .home-copy h1{
    font-size:clamp(44px,5.3vw,70px) !important;
  }
}
@media(max-width:800px){
  .home-copy h1{
    font-size:clamp(34px,5.8vw,56px) !important;
  }
}
