:root{--gold:#c59b48;--black:#0a0a09;--paper:#f8f5ef}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:#111;font-family:Montserrat,sans-serif}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.wrap{max-width:1340px;margin:auto;padding:0 46px}.nav{height:78px;position:absolute;inset:0 0 auto;z-index:5;background:#080808e8;border-bottom:1px solid #ffffff28;color:white;display:flex;align-items:center;justify-content:space-between;padding:0 4.5vw}.logo img{width:190px;height:70px;object-fit:contain}.nav nav{display:flex;gap:34px;text-transform:uppercase;letter-spacing:.18em;font-size:11px}.nav nav a:hover{color:var(--gold)}.nav>p{font-size:9px;line-height:1.5;letter-spacing:.2em;text-transform:uppercase}.menu-toggle{display:none}.hero{height:640px;background:url('../images/hero-exact.jpg') center/cover no-repeat;position:relative;color:white;padding-top:78px}.mission-trigger{position:absolute;left:6.2vw;top:61%;width:190px;min-height:48px;border:1px solid var(--gold);background:#080808c7;color:#fff;font:600 12px Montserrat,sans-serif;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}.mission-trigger span{color:var(--gold);font-size:24px;line-height:0;margin-left:8px}.mission-trigger:hover,.mission-trigger:focus-visible{background:var(--gold);color:#111;outline:2px solid #fff;outline-offset:3px}.mission-dialog{width:min(510px,calc(100% - 36px));border:1px solid var(--gold);background:linear-gradient(145deg,#121716,#080b0b);color:#fff;padding:30px 38px 34px;text-align:center;box-shadow:0 22px 70px #000d}.mission-dialog::backdrop{background:#0009}.mission-dialog h2{font:600 42px 'Cormorant Garamond',serif;margin:0}.mission-dialog i{display:block;width:100px;height:2px;background:var(--gold);margin:14px auto 18px}.mission-dialog p{font:20px/1.38 'Cormorant Garamond',serif;margin:0}.mission-close{position:absolute;top:8px;right:12px;border:0;background:transparent;color:#fff;font:32px/1 Arial,sans-serif;cursor:pointer}.mission-close:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.hero-copy{position:absolute;right:5vw;top:47%;transform:translateY(-50%);width:44%;text-shadow:0 2px 8px #000}.hero-copy span,.story span,.work span,.contact>span,.detail-hero span,.statement>span{text-transform:uppercase;letter-spacing:.24em;font-size:11px;color:#e5bb61;font-weight:600}.hero-copy h1,.section-title h2,.story h2,.work h2,.contact h2,.detail-hero h1,.statement h2{font-family:'Cormorant Garamond',serif}.hero-copy h1{font-size:clamp(52px,6vw,86px);line-height:.9;margin:18px 0 24px}.hero-copy p{font:25px/1.35 'Cormorant Garamond';max-width:540px}.projects{background:#141412;color:white;padding:70px 0 88px}.section-title{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:28px;text-align:center}.section-title i{height:1px;background:var(--gold)}.section-title h2{font-size:48px;margin:0}.section-title p{font:italic 17px 'Cormorant Garamond';margin:5px 0 24px}.project-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.project-grid article{border:1px solid var(--gold);background:#0d0d0c;display:flex;flex-direction:column}.project-grid article>img{width:100%;height:230px;object-fit:cover}.project-grid article>div{padding:18px 20px 22px;display:flex;flex:1;flex-direction:column}.project-grid small,.facts b{text-transform:uppercase;letter-spacing:.18em;color:#e2b65a;font-size:10px}.project-grid h3{font:600 31px 'Cormorant Garamond';margin:7px 0 0}.project-grid em{font:italic 18px 'Cormorant Garamond'}.project-grid p{font:17px/1.25 'Cormorant Garamond';color:#e3ddd3;min-height:106px}.project-grid a,.outline{border:1px solid var(--gold);padding:13px 16px;text-align:center;text-transform:uppercase;letter-spacing:.14em;font-size:10px;color:#efc86e}.project-grid a:hover,.outline:hover{background:var(--gold);color:#111}.story{padding-top:72px;padding-bottom:72px;display:grid;grid-template-columns:1fr 1.6fr;gap:65px;align-items:center}.story span{color:#a44934}.story h2{font-size:52px;line-height:.9;margin:12px 0}.story>p{font:20px/1.45 'Cormorant Garamond';color:#3d4454;border-left:1px solid #bf7e68;padding-left:38px}.work{background:#111;color:white;padding:60px 0}.work-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:60px;align-items:center}.work h2{font-size:38px;margin:8px 0}.work p{font:17px/1.4 'Cormorant Garamond';color:#ddd}.pillars{display:grid;grid-template-columns:repeat(3,1fr);text-align:center}.pillars div{padding:15px;border-left:1px solid #80662f}.pillars b{text-transform:uppercase;letter-spacing:.14em;font-size:10px;color:#e0b351}.groove{height:180px;background:linear-gradient(#060606aa,#060606dd),url('../images/city.jpg') center/cover;color:#e8bd62;display:grid;place-content:center;text-align:center}.groove p{font:italic 25px 'Cormorant Garamond';margin:0 0 12px}.groove small{text-transform:uppercase;letter-spacing:.22em;color:#eee}.contact{background:#10100f;color:white;text-align:center;padding:45px 20px}.contact h2{font:42px 'Cormorant Garamond';margin:7px 0 20px}.contact>div{display:flex;justify-content:center;gap:25px;flex-wrap:wrap;font-size:13px;color:#e8e0d3}.contact>div>*:not(:last-child):after{content:'|';color:#927034;margin-left:25px}.contact p{margin:0}footer{background:#080808;color:#fff;border-top:1px solid #8f7136;padding:18px 4vw}.footer-top{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:25px}.footer-top>img{width:170px}.footer-top nav{display:flex;justify-content:center;gap:23px;text-transform:uppercase;letter-spacing:.12em;font-size:9px}.footer-top p{font-size:10px;color:#aaa}.legal-links{display:flex;justify-content:center;gap:20px;font-size:9px;color:#777}.detail-hero{height:590px;padding-top:78px;background-size:cover;background-position:center;position:relative;color:#fff;display:flex;align-items:center}.last-call{background-image:linear-gradient(90deg,#050505f3,#050505a8 46%,#05050522),url('../images/last-call.png')}.west-home{background-image:linear-gradient(90deg,#050505f3,#050505a8 46%,#05050522),url('../images/west-of-home.png')}.tech-touch{background-image:linear-gradient(90deg,#050505f3,#050505bd 52%,#05050538),url('../images/tech-vs-touch.png');background-position:center}.detail-hero>div{padding-left:6vw;max-width:800px}.detail-hero h1{font-size:clamp(76px,10vw,140px);line-height:.82;margin:24px 0}.detail-hero em{font:italic 27px 'Cormorant Garamond'}.detail-hero p{font:31px/1.2 'Cormorant Garamond';color:#e8c366}.facts{display:grid;grid-template-columns:1.25fr .8fr .65fr;gap:38px;padding-top:55px;padding-bottom:60px}.facts>div+div{border-left:1px solid #c6a063;padding-left:38px}.facts p{font:19px/1.4 'Cormorant Garamond';color:#384052}.statement{text-align:center;padding:70px 8vw;background:#f2eee6}.statement>span{color:#a44934}.statement h2{font-size:clamp(30px,3vw,46px);line-height:1.25;max-width:1000px;margin:18px auto 32px}.outline{display:inline-block}.back{display:block;margin-top:25px;text-transform:uppercase;letter-spacing:.15em;font-size:10px;color:#42495a}
@media(max-width:800px){.wrap{padding:0 22px}.nav{height:68px;padding:0 18px}.logo img{width:140px}.nav nav a:not(:last-child){display:none}.nav>p{display:none}.hero{height:700px;background-position:35% center}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#070707e8 0%,#07070722 65%)}.hero-copy{z-index:1;top:auto;bottom:35px;left:24px;right:24px;transform:none;width:auto}.hero-copy h1{font-size:52px}.hero-copy p{font-size:21px}.section-title{grid-template-columns:1fr}.section-title i{display:none}.project-grid{grid-template-columns:1fr}.project-grid article>img{height:240px}.project-grid p{min-height:auto}.story,.work-grid,.facts{grid-template-columns:1fr;gap:25px}.story{padding-top:55px;padding-bottom:55px}.story>p{border-left:0;padding-left:0}.pillars{grid-template-columns:1fr}.pillars div{border-left:0;border-top:1px solid #80662f}.contact>div{flex-direction:column}.contact>div>*:after{display:none}.footer-top{grid-template-columns:1fr;text-align:center}.footer-top img{margin:auto}.footer-top nav{flex-wrap:wrap}.detail-hero{height:620px}.facts>div+div{border-left:0;padding-left:0;border-top:1px solid #c6a063;padding-top:24px}.detail-hero h1{font-size:68px}}

/* Responsive refinement: tablet */
@media (min-width:801px) and (max-width:1100px){
  .wrap{padding-left:34px;padding-right:34px}
  .nav{height:72px;padding:0 28px}
  .logo img{width:165px;height:64px}
  .nav nav{gap:20px;font-size:10px}
  .nav>p{display:none}
  .hero{height:calc(72px + 37.11vw);min-height:360px;max-height:485px;padding-top:72px;background-color:#050505;background-size:100% auto;background-position:center 72px}
  .projects{padding:58px 0 70px}
  .project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
  .project-grid article:last-child{grid-column:auto;width:auto;justify-self:stretch}
  .project-grid article>img{height:250px}
  .project-grid p{min-height:auto}
  .story{grid-template-columns:.8fr 1.6fr;gap:42px}
  .work-grid{grid-template-columns:1fr;gap:34px}
  .detail-hero{height:540px}
  .detail-hero h1{font-size:clamp(68px,9vw,96px)}
  .facts{grid-template-columns:1.2fr 1fr;gap:30px}
  .facts>div:last-child{grid-column:1/-1;border-left:0;border-top:1px solid #c6a063;padding:24px 0 0}
  .mission-trigger{left:6vw;top:61%;width:170px;min-height:44px;font-size:11px}
}

/* Keep the mission interaction aligned to the button baked into the hero art. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.mission-trigger,.mission-trigger:hover{border:0;background:transparent;color:transparent}
.mission-trigger:focus-visible{background:transparent;color:transparent;outline:2px solid var(--gold);outline-offset:3px}

/* Responsive refinement: phone */
@media (max-width:800px){
  body{overflow-x:hidden}
  .nav{height:68px;padding:0 18px;background:#080808f7}
  .logo img{width:145px;height:62px}
  .menu-toggle{display:inline-flex;align-items:center;justify-content:center;min-width:74px;min-height:44px;padding:0 13px;border:1px solid #c59b48;background:transparent;color:#efc86e;font:600 12px Montserrat,sans-serif;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}
  .nav nav{display:none;position:absolute;top:68px;left:0;right:0;padding:12px 18px 18px;background:#080808f7;border-bottom:1px solid #8f7136;flex-direction:column;gap:0}
  .nav nav.is-open{display:flex}
  .nav nav a,.nav nav a:not(:last-child){display:flex;align-items:center;min-height:48px;border-bottom:1px solid #ffffff1c;font-size:12px}
  .nav nav a:last-child{border-bottom:0}
  .nav>p{display:none}
  .hero{height:calc(68px + 37.11vw);min-height:213px;max-height:360px;padding-top:68px;background-color:#050505;background-size:100% auto;background-position:center 68px}
  .hero:after{display:none}
  .mission-trigger{left:24px;top:auto;bottom:14px;width:150px;min-height:42px;font-size:10px;background:#080808e8}
  .mission-dialog{padding:28px 24px 30px}
  .mission-dialog h2{font-size:38px}
  .mission-dialog p{font-size:19px}
  .projects{padding:46px 0 56px}
  .section-title h2{font-size:clamp(38px,11vw,48px)}
  .section-title p{font-size:18px;margin-bottom:28px}
  .project-grid{grid-template-columns:1fr;gap:24px}
  .project-grid article>img{height:auto;aspect-ratio:16/10;object-position:center}
  .project-grid article>div{padding:22px}
  .project-grid small,.facts b{font-size:12px}
  .project-grid h3{font-size:38px}
  .project-grid em{font-size:20px}
  .project-grid p{font-size:18px;line-height:1.38;min-height:auto}
  .project-grid a,.outline{display:inline-flex;align-items:center;justify-content:center;min-height:48px;font-size:12px;line-height:1.35}
  .story{padding-top:48px;padding-bottom:48px;gap:18px}
  .story h2{font-size:46px;line-height:1}
  .story>p{font-size:20px;line-height:1.5;margin:0}
  .work{padding:48px 0}
  .work h2{font-size:38px}
  .work p{font-size:18px;line-height:1.5}
  .pillars div{padding:22px 10px}
  .pillars b{font-size:12px}
  .groove{height:160px;padding:0 24px}
  .groove p{font-size:24px}
  .groove small{font-size:12px;line-height:1.6}
  .contact{padding:48px 22px}
  .contact>span{font-size:12px}
  .contact h2{font-size:40px}
  .contact>div{gap:12px;font-size:15px;line-height:1.5}
  .contact a{display:flex;align-items:center;justify-content:center;min-height:44px}
  footer{padding:28px 22px}
  .footer-top{gap:20px}
  .footer-top nav{gap:16px 22px;font-size:11px;line-height:1.5}
  .footer-top nav a{padding:8px 0}
  .footer-top p{font-size:12px;line-height:1.5;margin:0}
  .legal-links{font-size:11px;margin-top:14px}
  .detail-hero{height:500px;padding-top:68px;background-position:62% center}
  .detail-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#050505eb 0%,#050505a8 62%,#05050542)}
  .detail-hero>div{position:relative;z-index:1;padding:0 22px;max-width:100%}
  .detail-hero span{display:block;max-width:280px;font-size:12px;line-height:1.6}
  .detail-hero h1{font-size:clamp(60px,20vw,82px);line-height:.88;margin:22px 0 18px}
  .detail-hero em{font-size:24px}
  .detail-hero p{font-size:26px;line-height:1.2}
  .facts{padding-top:42px;padding-bottom:48px}
  .facts p{font-size:19px;line-height:1.5}
  .statement{padding:52px 22px}
  .statement>span{font-size:12px;line-height:1.5}
  .statement h2{font-size:32px;line-height:1.25;margin:20px auto 28px}
  .back{font-size:12px;line-height:1.5;padding:10px}
}

@media (max-width:420px){
  .hero{min-height:205px}
  .project-grid article>img{aspect-ratio:4/3}
  .detail-hero{height:470px}
  .detail-hero h1{font-size:60px}
}

/* The visible mission button is part of the supplied hero artwork. */
.mission-trigger,.mission-trigger:hover,.mission-trigger:focus-visible{background:transparent;color:transparent}
