.hp-home{background:#080909;color:#f7f7f4}
.hp-home .site-header{background:rgba(7,8,8,.88)}
.hp-index{margin:0 0 26px;color:#868a8d;font-size:.65rem;font-weight:900;letter-spacing:.18em;text-transform:uppercase}
.hp-section{padding:110px 0}
.hp-section-head{display:grid;gap:0;margin-bottom:64px}
.hp-section-head h2,.hp-process-title h2{max-width:960px;margin:0;font-size:clamp(3.3rem,8vw,7.7rem);line-height:.82;letter-spacing:-.065em}
.hp-section-head>p:last-child{max-width:580px;margin:30px 0 0;color:#aeb1b2;font-size:1.05rem;line-height:1.7}
.hp-home figure{margin:0}
.hp-home figcaption{font-size:.64rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}

.hp-hero{position:relative;min-height:760px;height:100svh;overflow:hidden;background:#080909}
.hp-hero picture,.hp-hero picture img{position:absolute;inset:0;width:100%;height:100%}
.hp-hero picture img{object-fit:cover;object-position:center}
.hp-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,5,5,.88) 0%,rgba(4,5,5,.62) 38%,rgba(4,5,5,.08) 73%),linear-gradient(0deg,rgba(4,5,5,.44),transparent 45%)}
.hp-hero-content{position:relative;z-index:2;display:flex;height:100%;flex-direction:column;justify-content:center;padding-top:74px}
.hp-hero h1{max-width:940px;margin:24px 0 30px;font-size:clamp(4.5rem,10vw,10.5rem);line-height:.78;letter-spacing:-.08em}
.hp-hero h1 em{color:var(--yellow);font-style:normal}
.hp-hero-copy{max-width:500px;margin:0 0 34px;color:#e0e1df;font-size:clamp(1rem,1.5vw,1.2rem);line-height:1.55}
.hp-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch}
.hp-call,.hp-quote{display:inline-flex;min-height:62px;align-items:center;justify-content:center;padding:0 24px;font-size:.74rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;transition:background .2s,color .2s,border-color .2s}
.hp-call{gap:30px;background:var(--yellow);color:#080909;border:1px solid var(--yellow)}
.hp-call span{font-size:1.2rem}
.hp-call:hover{background:#fff;border-color:#fff}
.hp-quote{border:1px solid rgba(255,255,255,.6);background:rgba(8,9,9,.68);color:#fff}
.hp-quote:hover{background:#fff;border-color:#fff;color:#080909}
.hp-hero-caption{position:absolute;z-index:2;right:28px;bottom:26px;color:rgba(255,255,255,.7);font-size:.58rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase;writing-mode:vertical-rl}

.hp-scale{background:#f1f1ed;color:#080909}
.hp-scale .hp-section-head>p:last-child{color:#595c5d}
.hp-wide-image{position:relative;width:100%;overflow:hidden;background:#1a1b1c}
.hp-wide-image img{width:100%;height:clamp(430px,62vw,920px);object-fit:cover}
.hp-wide-image figcaption{position:absolute;left:0;bottom:0;padding:13px 18px;background:#080909;color:#fff}
.hp-sector-line{display:flex;gap:0;overflow-x:auto;padding-top:44px;scroll-snap-type:x mandatory}
.hp-sector-line span{flex:0 0 auto;padding:0 24px;border-left:1px solid #b8bab5;font-size:.68rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;scroll-snap-align:start}
.hp-sector-line span:first-child{padding-left:0;border:0}

.hp-services{padding:120px 0;background:#090a0a}
.hp-services-layout{display:grid;gap:70px}
.hp-services-intro h2{max-width:760px;margin:0;font-size:clamp(3.3rem,7vw,6.8rem);line-height:.84;letter-spacing:-.06em}
.hp-services-intro>p:last-child{max-width:540px;margin:30px 0 0;color:#aeb1b2;line-height:1.7}
.hp-service-list{margin:0;padding:0;list-style:none;border-bottom:1px solid #36393a}
.hp-service-list li{border-top:1px solid #36393a}
.hp-service-list a{display:grid;grid-template-columns:40px 1fr auto;gap:16px;align-items:center;min-height:88px;padding:15px 0;transition:color .2s,padding .2s}
.hp-service-list span{color:#6f7375;font-size:.62rem;font-weight:900}
.hp-service-list strong{font-size:clamp(1.35rem,3vw,2.2rem);line-height:1.05;letter-spacing:-.025em}
.hp-service-list b{color:var(--yellow);font-size:1.15rem}
.hp-service-list a:hover{padding-left:10px;color:var(--yellow)}

.hp-process{padding:120px 0;background:#0d0e0e}
.hp-process-title{margin-bottom:80px}
.hp-process-row{display:grid;background:#141616}
.hp-process-row figure{min-height:420px;overflow:hidden}
.hp-process-row img{height:100%;min-height:420px;object-fit:cover}
.hp-process-copy{display:flex;min-height:430px;flex-direction:column;justify-content:center;padding:54px 20px}
.hp-process-copy>span{margin-bottom:auto;color:#666a6c;font-size:.65rem;font-weight:900}
.hp-process-copy h3{max-width:580px;margin:26px 0 22px;font-size:clamp(2.8rem,6vw,6rem);line-height:.86}
.hp-process-copy>p:last-child{max-width:510px;margin:0;color:#aeb1b2;line-height:1.75}
.hp-rolling{background:#1a1c1d}

.hp-finish{padding-bottom:0;background:#f1f1ed;color:#080909}
.hp-finish-grid{display:grid;gap:2px}
.hp-finish-grid figure{position:relative;overflow:hidden;background:#cacbc6}
.hp-finish-grid img{height:100%;min-height:430px;object-fit:cover}
.hp-finish-grid figcaption{position:absolute;left:0;bottom:0;padding:13px 18px;background:#080909;color:#fff}
.hp-finish-main img{object-position:center}
.hp-finish-detail img{object-position:52% center}

.hp-project{padding:0 0 120px;background:#090a0a}
.hp-project-image{display:block;overflow:hidden}
.hp-project-image img{height:clamp(480px,66vw,980px);object-fit:cover}
.hp-project-copy{display:grid;gap:70px;padding-top:80px}
.hp-project-copy h2{margin:0 0 34px;font-size:clamp(4rem,9vw,8.5rem);line-height:.8;letter-spacing:-.07em}
.hp-project-copy>div>p:not(.hp-index){max-width:580px;color:#b7babc;line-height:1.7}
.hp-text-link{display:inline-block;margin-top:16px;padding-bottom:5px;border-bottom:2px solid var(--yellow);font-size:.72rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.hp-text-link span{color:var(--yellow)}
.hp-project-facts{margin:0}
.hp-project-facts div{display:grid;grid-template-columns:1fr 1.2fr;gap:15px;padding:20px 0;border-top:1px solid #343637;align-items:baseline}
.hp-project-facts div:last-child{border-bottom:1px solid #343637}
.hp-project-facts dt{color:#777b7d;font-size:.62rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.hp-project-facts dd{margin:0;font-size:clamp(1.3rem,2.5vw,2rem);font-weight:800}

.hp-sequence{background:#161818}
.hp-sequence-grid{display:grid;gap:2px}
.hp-sequence-grid figure{background:#090a0a}
.hp-sequence-grid img{aspect-ratio:4/3;object-fit:cover}
.hp-sequence-grid figcaption{padding:18px 20px;color:#b8bbbc}
.hp-sequence-grid figcaption span{margin-right:18px;color:var(--yellow)}

.hp-trust{padding:0;background:#0b0c0c}
.hp-trust>div{display:grid}
.hp-trust p{display:flex;min-height:92px;align-items:center;margin:0;padding:22px 0;border-top:1px solid #343637;color:#d8dad9;font-size:.7rem;font-weight:900;letter-spacing:.1em;line-height:1.45;text-transform:uppercase}
.hp-trust p:before{content:"";flex:0 0 7px;width:7px;height:7px;margin-right:14px;background:var(--yellow)}
.hp-coverage{padding:110px 0;background:#f1f1ed;color:#080909}
.hp-coverage h2{max-width:1100px;margin:0;font-size:clamp(3rem,6vw,6rem);line-height:.95;letter-spacing:-.055em}
.hp-coverage h2 em{color:#777a78;font-style:normal}

.hp-contact{padding:120px 0;background:var(--yellow);color:#080909}
.hp-contact .kicker{color:#080909}
.hp-contact h2{max-width:1050px;margin:28px 0 60px;font-size:clamp(4.4rem,10vw,9.5rem);line-height:.78;letter-spacing:-.075em}
.hp-actions-dark .hp-call{background:#080909;border-color:#080909;color:#fff}
.hp-actions-dark .hp-call:hover{background:#fff;border-color:#fff;color:#080909}
.hp-actions-dark .hp-quote{border-color:#080909;background:transparent;color:#080909}
.hp-actions-dark .hp-quote:hover{background:#fff;border-color:#fff}

@media(min-width:700px){
  .hp-section{padding:150px 0}.hp-section-head{grid-template-columns:1fr 3fr;column-gap:40px}.hp-section-head h2{grid-column:2}.hp-section-head>p:last-child{grid-column:2}.hp-wide-image{width:calc(100% - 5vw);margin-left:5vw}.hp-services-layout{grid-template-columns:.8fr 1.2fr;align-items:start}.hp-trust>div{grid-template-columns:repeat(2,1fr)}.hp-trust p{padding-inline:24px;border-right:1px solid #343637}.hp-process{padding:160px 0}.hp-process-title{width:min(calc(100% - 64px),var(--max));margin-inline:auto}.hp-process-row{grid-template-columns:1.35fr .65fr}.hp-process-copy{padding:70px 6vw}.hp-rolling{grid-template-columns:.65fr 1.35fr;margin-top:2px}.hp-finish-grid{grid-template-columns:1.45fr .55fr}.hp-project-copy{grid-template-columns:1.4fr .6fr;align-items:end}.hp-sequence-grid{grid-template-columns:1fr 1fr}.hp-contact{padding:170px 0}
}
@media(min-width:1100px){
  .hp-hero-content{padding-top:40px}.hp-scale{padding-top:180px}.hp-services{padding:180px 0}.hp-trust>div{grid-template-columns:repeat(4,1fr)}.hp-trust p{min-height:110px}.hp-process{padding-top:190px}.hp-process-row{min-height:760px}.hp-process-row figure,.hp-process-row img{min-height:760px}.hp-process-copy{min-height:760px}.hp-finish{padding-top:190px}.hp-finish-grid{min-height:860px}.hp-project{padding-bottom:180px}.hp-project-copy{padding-top:120px}.hp-sequence{padding-block:180px}.hp-coverage{padding:150px 0}.hp-contact{padding-block:190px}
}
@media(max-width:699px){
  .hp-hero{min-height:700px}.hp-hero picture img{object-position:48% center}.hp-hero-shade{background:linear-gradient(0deg,rgba(4,5,5,.92) 0%,rgba(4,5,5,.66) 48%,rgba(4,5,5,.15) 78%)}.hp-hero-content{justify-content:flex-end;padding-bottom:40px}.hp-hero h1{font-size:clamp(4rem,17vw,6.2rem)}.hp-hero-copy{max-width:390px}.hp-actions,.hp-actions>a{width:100%}.hp-hero-caption{display:none}.hp-section{padding:95px 0}.hp-section-head{margin-bottom:45px}.hp-section-head h2,.hp-process-title h2{font-size:clamp(3.3rem,15vw,5rem)}.hp-wide-image img{height:72vw;min-height:330px}.hp-sector-line{padding-inline:20px}.hp-services{padding:100px 0}.hp-services-layout{gap:55px}.hp-service-list a{min-height:78px}.hp-process{padding:100px 0 0}.hp-process-title{padding-inline:20px;margin-bottom:55px}.hp-process-row figure,.hp-process-row img{min-height:0;height:78vw}.hp-process-copy{min-height:370px}.hp-rolling .hp-process-copy{order:2}.hp-rolling figure{order:1}.hp-finish-grid img{min-height:0;height:82vw}.hp-finish-detail img{height:70vw}.hp-project{padding-bottom:100px}.hp-project-image img{height:72vw;min-height:360px}.hp-project-copy{padding-top:65px}.hp-sequence-grid{width:100%}.hp-sequence-grid figcaption{padding-inline:20px}.hp-trust{padding:24px 0}.hp-trust p{min-height:72px}.hp-coverage{padding:95px 0}.hp-contact{padding:110px 0}.hp-contact h2{font-size:clamp(4rem,17vw,6rem)}
}
@media(prefers-reduced-motion:reduce){.hp-home *{scroll-behavior:auto}.hp-home .reveal{opacity:1;transform:none}}
