:root{
  --ink:#090909;
  --paper:#f1f1ef;
  --white:#fff;
  --muted:#5f5f5a;
  --line:rgba(9,9,9,.2);
  --page:clamp(1.25rem,2.8vw,3.25rem);
  --max:1920px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--white);color:var(--ink);font-family:Arial,"Helvetica Neue",sans-serif;font-size:16px;line-height:1.45;-webkit-font-smoothing:antialiased}
img,video{display:block;width:100%}
a{color:inherit}
h1,h2,h3,h4,p,figure,dl,dd{margin-top:0}
h1,h2,h3,h4{font-weight:400;letter-spacing:-.055em;line-height:.96}
h1{font-size:clamp(3.6rem,7.7vw,9rem);margin:0}
h2{font-size:clamp(3.4rem,7vw,8rem);margin:0}
h3{font-size:clamp(2rem,3.1vw,3.8rem)}
h4{font-size:clamp(1.7rem,2.4vw,3rem)}
section,footer{scroll-margin-top:78px}
.wrap{width:min(100%,var(--max));margin-inline:auto;padding-inline:var(--page)}
.eyebrow,.project-index,.project-address,dt,.feature-media>span,.future-grid article p,.future-grid article span,figcaption{font-size:.75rem;line-height:1.25;letter-spacing:.11em;text-transform:uppercase}
.eyebrow{margin-bottom:2rem;color:var(--muted)}
.eyebrow.light{color:rgba(255,255,255,.68)}
.lead{font-size:clamp(1.4rem,2.15vw,2.4rem);line-height:1.18;letter-spacing:-.035em}

.site-header{position:sticky;z-index:30;top:0;width:100%;height:78px;padding:0 var(--page);display:flex;align-items:center;justify-content:space-between;gap:2rem;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}
.brand{display:flex;align-items:baseline;gap:1rem;text-decoration:none;line-height:1}
.brand>span{font-size:1.3rem;letter-spacing:-.035em}
.brand small{color:var(--muted);font-size:.62rem;letter-spacing:.1em;text-transform:uppercase}
nav{display:flex;align-items:center;gap:clamp(1rem,2.3vw,2.75rem)}
nav a{padding:.7rem 0;text-decoration:none;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid transparent}
nav a:hover,nav a:focus-visible{border-bottom-color:currentColor}
.nav-cta{padding:.68rem 1.15rem!important;border:1px solid var(--ink)!important;border-radius:100px}
.nav-cta:hover,.nav-cta:focus-visible{background:var(--ink);color:white}

.hero{display:grid;grid-template-areas:"copy" "image" "caption";height:auto;min-height:0;padding:clamp(4rem,8vw,9rem) var(--page) 1rem;background:var(--white);color:var(--ink);overflow:hidden}
.hero-image{grid-area:image;position:relative;inset:auto;height:min(68vw,840px);margin-top:clamp(3rem,6vw,7rem);object-fit:cover;object-position:center 78%;filter:grayscale(100%) contrast(1.07) brightness(.92)}
.hero-shade{display:none}
.hero-content{grid-area:copy;position:relative;inset:auto;width:100%;max-width:var(--max);margin:auto}
.hero-content .eyebrow{margin-bottom:clamp(2rem,5vw,5rem);color:var(--muted)}
.hero-bottom{display:grid;grid-template-columns:1fr auto;align-items:end;gap:2rem;margin-top:clamp(2.5rem,5vw,5rem);padding-top:1rem;border-top:1px solid var(--ink)}
.hero-bottom p{margin:0;font-size:clamp(1.15rem,1.65vw,1.7rem);letter-spacing:-.025em}
.hero-bottom a{display:flex;gap:1.5rem;text-decoration:none;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase}
.hero-caption{grid-area:caption;position:relative;right:auto;bottom:auto;margin:.85rem 0 0;color:var(--muted);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase}

.intro{max-width:none;padding-top:clamp(8rem,13vw,15rem);padding-bottom:clamp(7rem,12vw,13rem);background:var(--paper)}
.intro-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(310px,.75fr);gap:clamp(4rem,10vw,13rem);align-items:start}
.intro-grid h2{max-width:1200px}
.intro-copy{max-width:620px;padding-top:.4rem}
.intro-copy p:last-child{color:#444}
.process-line{display:grid;grid-template-columns:repeat(5,1fr);list-style:none;margin:clamp(6rem,10vw,10rem) 0 0;padding:0;border-top:1px solid var(--ink)}
.process-line li{display:flex;flex-direction:column;gap:2.4rem;padding:1.2rem 1.2rem 0 0;border-right:1px solid var(--line);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}
.process-line li+li{padding-left:1.2rem}
.process-line li:last-child{border-right:0}
.process-line span{font-size:.9rem;color:var(--muted)}

.work{max-width:none;padding-top:clamp(8rem,13vw,15rem);padding-bottom:clamp(9rem,14vw,16rem)}
.section-head{display:grid;grid-template-columns:.28fr 1.05fr .67fr;gap:clamp(2rem,5vw,7rem);align-items:end;margin-bottom:clamp(6rem,11vw,12rem)}
.section-head .eyebrow{align-self:start}
.section-head>p:last-child{max-width:480px;margin:0;color:var(--muted);font-size:1.05rem}
.featured-project{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(340px,.55fr);gap:clamp(2.5rem,6vw,8rem);align-items:start;margin-top:clamp(7rem,11vw,12rem);padding-top:1.2rem;border-top:1px solid var(--ink)}
.feature-media{position:relative;overflow:hidden;background:#ddd}
.feature-media>img{height:clamp(520px,54vw,900px);object-fit:cover;transition:transform .7s ease}
.feature-media:hover>img{transform:scale(1.01)}
.feature-media>span{position:absolute;left:1rem;bottom:1rem;padding:.62rem .78rem;background:rgba(0,0,0,.76);color:white}
.feature-copy{padding-top:.2rem}
.project-index{margin-bottom:clamp(4rem,8vw,9rem);color:var(--muted)}
.feature-copy h3{margin-bottom:.5rem}
.project-address{margin-bottom:2.5rem;color:var(--muted)}
.feature-copy>p:not(.project-index):not(.project-address):not(.fine-print){color:#333}
.project-facts{margin:3rem 0 0;border-top:1px solid var(--line)}
.project-facts>div{display:grid;grid-template-columns:110px 1fr;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line)}
dt{color:var(--muted)}
dd{margin:0;font-size:.88rem}
.fine-print,.concept-note{font-size:.78rem;color:#70706b}
.fine-print{margin-top:1.5rem}
.crown-cover-media>img{height:auto;aspect-ratio:1382/741;object-fit:cover;object-position:center}

.project-preview{margin:clamp(4rem,7vw,8rem) 0 0;padding-top:1.2rem;border-top:1px solid var(--ink)}
.preview-heading{display:grid;grid-template-columns:1fr minmax(300px,500px);gap:clamp(3rem,8vw,11rem);align-items:end;margin-bottom:clamp(2rem,4vw,4rem)}
.preview-heading .eyebrow{margin-bottom:clamp(2rem,5vw,5rem)}
.preview-heading h3{margin:0;font-size:clamp(2.8rem,5vw,6rem)}
.preview-heading>p{margin:0;color:var(--muted);font-size:1.02rem}
.preview-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--page)}
.preview-grid figure{position:relative;margin:0;overflow:hidden;background:#ddd}
.preview-grid .preview-wide{grid-column:span 1}
.preview-grid img{height:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .65s ease}
.preview-grid figure:hover img{transform:scale(1.012)}
.preview-grid figcaption,.gallery-grid figcaption,.crown-gallery figcaption{position:absolute;left:.7rem;bottom:.7rem;max-width:calc(100% - 1.4rem);padding:.5rem .62rem;background:rgba(0,0,0,.72);color:white;font-size:.62rem}

.gallery-drawer{margin:3rem 0 0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.gallery-drawer summary{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:1.35rem 0;cursor:pointer;list-style:none;text-transform:uppercase;letter-spacing:.09em;font-size:.82rem}
.gallery-drawer summary::-webkit-details-marker{display:none}
.gallery-drawer summary span:after{content:"+";display:inline-block;margin-left:1rem}
.gallery-drawer[open] summary span:after{content:"−"}
.gallery-drawer summary small{color:var(--muted);font-size:.72rem}
.gallery-drawer summary:focus-visible{outline:2px solid var(--ink);outline-offset:5px}
.gallery-label{display:flex;justify-content:space-between;align-items:baseline;gap:2rem;padding:4rem 0 1.1rem;border-top:1px solid var(--line)}
.gallery-label h4,.gallery-label p{margin:0}
.gallery-label p{color:var(--muted);font-size:.76rem;letter-spacing:.08em;text-transform:uppercase}
.gallery-grid,.crown-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--page);padding-bottom:var(--page)}
.gallery-grid figure,.crown-gallery figure{position:relative;margin:0;overflow:hidden;background:#ddd}
.gallery-grid img,.crown-gallery img{height:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .65s ease}
.gallery-grid figure:hover img,.crown-gallery figure:hover img{transform:scale(1.012)}
.gallery-four{grid-template-columns:repeat(2,1fr)}
.gallery-four img{aspect-ratio:16/10}
.crown-project{margin-top:clamp(10rem,16vw,18rem)}
.crown-gallery{grid-template-columns:repeat(3,1fr);padding:0 0 var(--page)}
.crown-gallery img{aspect-ratio:1/1}
.crown-gallery figcaption{font-size:.75rem;line-height:1.25}

.future-head{display:grid;grid-template-columns:.28fr 1.72fr;gap:clamp(2rem,5vw,7rem);align-items:end;margin:clamp(10rem,16vw,18rem) 0 clamp(4rem,7vw,8rem)}
.future-head .eyebrow{margin:0;align-self:start}
.future-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--page)}
.future-grid article{border-top:1px solid var(--ink);padding-top:1rem}
.future-grid img{height:clamp(320px,31vw,560px);object-fit:cover}
.future-grid article>div{padding:1.25rem 0 0}
.future-grid article p{margin-bottom:2rem;color:var(--muted)}
.future-grid h3{font-size:clamp(1.9rem,2.7vw,3.2rem);margin-bottom:.7rem}
.future-grid article span{color:var(--muted)}
.concept-note{margin:1.5rem 0 0;max-width:920px}

.intelligence{background:#050505;color:white}
.intelligence-grid{display:grid;grid-template-columns:.9fr .7fr .4fr;gap:clamp(3rem,7vw,9rem);padding-top:clamp(8rem,13vw,15rem);padding-bottom:clamp(8rem,13vw,15rem)}
.intelligence h2{margin:0}
.intelligence-copy p:last-child{color:#bdbdb8}
.intelligence ul{list-style:none;margin:0;padding:0;border-top:1px solid rgba(255,255,255,.25)}
.intelligence li{padding:1rem 0;border-bottom:1px solid rgba(255,255,255,.25);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:#deded9}

.team{max-width:none;padding-top:clamp(8rem,13vw,15rem);padding-bottom:clamp(8rem,13vw,15rem)}
.team-head{margin-bottom:clamp(5rem,9vw,10rem)}
.partner-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--ink)}
.partner-grid article{min-height:230px;padding:1.25rem var(--page) 2rem 0;border-bottom:1px solid var(--line)}
.partner-grid article:nth-child(even){padding-left:var(--page);border-left:1px solid var(--line)}
.partner-grid article p{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.partner-grid h3{font-size:clamp(1.6rem,2.7vw,3.2rem);margin:clamp(2.5rem,5vw,5rem) 0 1rem}
.partner-grid span{display:block;color:var(--muted);font-size:.92rem}
.network{display:grid;grid-template-columns:.65fr 1.35fr;gap:clamp(3rem,8vw,10rem);margin-top:clamp(8rem,13vw,14rem);padding-top:1.2rem;border-top:1px solid var(--ink)}
.network-title h3{margin-bottom:0}
.network-list{border-top:1px solid var(--line)}
.network-list p{display:grid;grid-template-columns:.65fr 1.35fr;gap:2rem;margin:0;padding:1rem 0;border-bottom:1px solid var(--line);font-size:.9rem}
.network-list span{color:var(--muted);font-size:.68rem;letter-spacing:.09em;text-transform:uppercase}

.capabilities{max-width:none;padding-top:clamp(8rem,13vw,15rem);padding-bottom:clamp(8rem,13vw,15rem);background:var(--paper)}
.capability-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ink)}
.capability-grid article{padding:1.4rem 1.5rem 0 0;border-right:1px solid var(--line)}
.capability-grid article+article{padding-left:1.5rem}
.capability-grid article:last-child{border-right:0}
.capability-grid span{color:var(--muted)}
.capability-grid h3{font-size:1.45rem;line-height:1.05;letter-spacing:-.035em;margin:clamp(3rem,6vw,6rem) 0 1rem}
.capability-grid p{color:var(--muted);font-size:.92rem}

.contact{background:#dededc;color:var(--ink)}
.contact-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(4rem,10vw,14rem);padding-top:clamp(8rem,13vw,15rem);padding-bottom:2.25rem}
.contact .eyebrow.light{color:var(--muted)}
.contact h2{margin:0;font-size:clamp(5rem,11vw,13rem)}
.contact-details{padding-top:5rem;color:#4b4b47;font-size:1.05rem}
.contact-details strong{color:var(--ink);font-size:1.2rem}
.footer-line{grid-column:1/-1;height:1px;background:var(--line);margin-top:clamp(6rem,10vw,12rem)}
.footer-wordmark{margin:0;font-size:1.2rem;letter-spacing:-.025em}
.footer-signature{margin:0;text-align:right;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}

@media(max-width:1000px){
  .intro-grid,.featured-project{grid-template-columns:1fr}
  .feature-copy{max-width:760px}
  .section-head{grid-template-columns:.3fr 1.2fr}.section-head>p:last-child{grid-column:2}
  .project-index{margin-bottom:3rem}
  .intelligence-grid{grid-template-columns:1fr 1fr}.intelligence ul{grid-column:2}
  .future-grid{grid-template-columns:1fr 1fr}.future-grid article:last-child{grid-column:1/-1}
  .future-grid article:last-child img{height:min(55vw,620px)}
  .capability-grid{grid-template-columns:repeat(2,1fr)}
  .capability-grid article:nth-child(2){border-right:0}.capability-grid article:nth-child(n+3){border-top:1px solid var(--line)}
}

@media(max-width:720px){
  :root{--page:1.2rem}
  section,footer{scroll-margin-top:70px}
  .site-header{height:70px}.brand{display:block}.brand>span{font-size:1.05rem}.brand small{display:none}
  nav{gap:.85rem}nav a:nth-child(2),nav a:nth-child(3){display:none}.nav-cta{padding:.55rem .8rem!important}
  .hero{padding-top:4.5rem}.hero-image{height:72vh;min-height:500px;margin-top:3.5rem;object-position:82% 72%}.hero-bottom{grid-template-columns:1fr}.hero-bottom a{margin-top:1rem}
  .intro-grid,.section-head,.future-head,.network,.intelligence-grid,.contact-grid,.preview-heading{grid-template-columns:1fr}
  .section-head>p:last-child,.intelligence ul{grid-column:1}
  .process-line{grid-template-columns:1fr}.process-line li{flex-direction:row;align-items:center;gap:1rem;padding:1rem 0;border-right:0;border-bottom:1px solid var(--line)}.process-line li+li{padding-left:0}
  .featured-project{gap:2.25rem}.feature-media>img{height:64vh;min-height:440px}
  .project-facts>div{grid-template-columns:100px 1fr}
  .preview-grid{grid-template-columns:1fr}.preview-heading>p{max-width:540px}
  .gallery-drawer summary{align-items:flex-start}.gallery-drawer summary small{text-align:right}
  .gallery-label{display:block}.gallery-label p{margin-top:.4rem}
  .gallery-grid,.gallery-four,.crown-gallery{grid-template-columns:1fr 1fr}.gallery-grid img,.crown-gallery img{aspect-ratio:1/1}
  .future-grid{grid-template-columns:1fr}.future-grid article:last-child{grid-column:1}.future-grid img,.future-grid article:last-child img{height:56vh;min-height:380px}
  .partner-grid{grid-template-columns:1fr}.partner-grid article{min-height:0;padding:1.2rem 0 2rem!important;border-left:0!important}
  .network-list p{grid-template-columns:1fr;gap:.3rem}
  .capability-grid{grid-template-columns:1fr}.capability-grid article{border-right:0!important;border-top:1px solid var(--line)!important;padding:1.5rem 0}.capability-grid article+article{padding-left:0}
  .contact-grid{gap:2rem}.contact-details{padding-top:1rem}.footer-line,.footer-wordmark,.footer-signature{grid-column:1}.footer-signature{text-align:left}
}

@media(max-width:450px){
  .gallery-grid,.gallery-four,.crown-gallery{grid-template-columns:1fr}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{transition:none!important}
}
