.v2{--navy:#1b2a4a;--navy2:#111b31;--gold:#c4a35a;--paper:#f6f3ee;--ink:#2c3038;font-family:Outfit,system-ui,sans-serif;color:var(--ink)}
.v2 *{box-sizing:border-box}
.v2-wrap{max-width:1240px;margin:0 auto;padding:0 28px}
.v2 h1,.v2 h2,.v2 h3{font-family:Outfit,system-ui,sans-serif;margin:0;letter-spacing:-.02em}
.v2-hero{position:relative;min-height:calc(100vh - 100px);min-height:calc(100svh - 100px);display:flex;align-items:flex-end;overflow:hidden;background:var(--navy2);color:#fff}
.v2-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 55%;transform:scale(1.08);animation:v2zoom 18s ease-out forwards}
@keyframes v2zoom{to{transform:scale(1)}}
.v2-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,21,40,.92) 0%,rgba(13,21,40,.6) 45%,rgba(13,21,40,.1) 100%),linear-gradient(0deg,rgba(13,21,40,.85) 0%,transparent 45%)}
.v2-hero-inner{position:relative;padding-top:120px;padding-bottom:110px;width:100%}
.v2-kicker{display:flex;align-items:center;gap:14px;text-transform:uppercase;letter-spacing:.22em;font-size:13px;font-weight:600;color:var(--gold);margin:0 0 26px}
.v2-kicker span{width:48px;height:2px;background:var(--gold)}
.v2-hero h1{font-size:clamp(46px,8vw,120px);line-height:.92;font-weight:800;text-transform:uppercase;max-width:15ch}
.v2-hero h1 em{font-style:normal;color:var(--gold)}
.v2-lede{font-size:clamp(17px,1.5vw,21px);line-height:1.6;max-width:600px;color:rgba(255,255,255,.88);margin:30px 0 40px;font-weight:300}
.v2-ctas{display:flex;flex-wrap:wrap;gap:14px}
.v2-btn{display:inline-flex;align-items:center;gap:12px;padding:18px 30px;font-weight:600;font-size:16px;text-decoration:none;letter-spacing:.02em;transition:transform .2s,background .2s,color .2s,box-shadow .2s}
.v2-btn b{transition:transform .2s}.v2-btn:hover b{transform:translateX(5px)}
.v2-btn-gold{background:var(--gold);color:var(--navy2)}
.v2-btn-gold:hover{background:#d8b96c;transform:translateY(-2px);box-shadow:0 12px 30px rgba(196,163,90,.35)}
.v2-btn-ghost{border:1.5px solid rgba(255,255,255,.6);color:#fff}
.v2-btn-ghost:hover{background:#fff;color:var(--navy2)}
.v2-hero-tag{position:absolute;right:28px;bottom:34px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.75);border-left:2px solid var(--gold);padding-left:10px}
.v2-scroll{position:absolute;left:50%;bottom:28px;width:26px;height:42px;border:2px solid rgba(255,255,255,.5);border-radius:14px;transform:translateX(-50%)}
.v2-scroll span{position:absolute;left:50%;top:8px;width:4px;height:8px;margin-left:-2px;background:var(--gold);border-radius:2px;animation:v2s 1.8s infinite}
@keyframes v2s{0%{opacity:0;transform:translateY(0)}40%{opacity:1}100%{opacity:0;transform:translateY(14px)}}
.v2-stats{background:var(--navy);color:#fff;border-top:4px solid var(--gold)}
.v2-stats-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.v2-stat{padding:46px 24px;border-left:1px solid rgba(255,255,255,.12)}
.v2-stat:first-child{border-left:0;padding-left:0}
.v2-stat strong{display:block;font-size:clamp(34px,4vw,58px);font-weight:800;line-height:1;letter-spacing:-.02em}
.v2-stat p{margin:10px 0 0;text-transform:uppercase;letter-spacing:.14em;font-size:12px;color:var(--gold);font-weight:600}
.v2-services{background:var(--paper);padding:120px 0}
.v2-eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:13px;font-weight:700;color:#9a7b35;margin:0 0 14px}
.v2-head{margin-bottom:54px}
.v2-head h2{font-size:clamp(34px,4.6vw,64px);line-height:1;font-weight:800;color:var(--navy);max-width:16ch}
.v2-head-row{display:flex;justify-content:space-between;align-items:flex-end;gap:20px}
.v2-link{color:var(--navy);font-weight:600;text-decoration:none;border-bottom:2px solid var(--gold);padding-bottom:4px;white-space:nowrap}
.v2-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.v2-card{position:relative;display:block;aspect-ratio:4/5;overflow:hidden;background:var(--navy);color:#fff;text-decoration:none}
.v2-card img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.v2-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(13,21,40,.95) 0%,rgba(13,21,40,.3) 50%,rgba(13,21,40,0) 100%)}
.v2-card>div{position:absolute;left:0;right:0;bottom:0;padding:30px;z-index:1}
.v2-card span{font-size:13px;font-weight:700;color:var(--gold);letter-spacing:.15em}
.v2-card h3{font-size:28px;font-weight:700;margin:6px 0 8px}
.v2-card p{margin:0;color:rgba(255,255,255,.82);line-height:1.5}
.v2-card:before{content:"";position:absolute;left:30px;right:30px;bottom:0;height:4px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .45s;z-index:2}
.v2-card:hover img{transform:scale(1.07)}
.v2-card:hover:before{transform:scaleX(1)}
.v2-projects{background:#fff;padding:120px 0}
.v2-strip{display:grid;grid-template-columns:1.5fr 1fr;grid-template-rows:1fr 1fr;gap:18px;height:680px}
.v2-proj{position:relative;overflow:hidden;color:#fff;text-decoration:none;background:var(--navy)}
.v2-proj-big{grid-row:1/3}
.v2-proj img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.v2-proj:hover img{transform:scale(1.05)}
.v2-proj:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(13,21,40,.9),transparent 55%)}
.v2-proj>div{position:absolute;left:28px;bottom:26px;right:28px;z-index:1}
.v2-proj p{margin:0 0 6px;color:var(--gold);text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:700}
.v2-proj h3{font-size:26px;font-weight:700}
.v2-proj-big h3{font-size:clamp(28px,3vw,40px)}
.v2-why{position:relative;overflow:hidden;background:var(--navy2);color:#fff;padding:130px 0}
.v2-why-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.35}
.v2-why:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--navy2) 25%,rgba(17,27,49,.55));z-index:1}
.v2-why-inner{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.v2-why h2{font-size:clamp(34px,4.2vw,58px);line-height:1.02;font-weight:800}
.v2-why .v2-eyebrow{color:var(--gold)}
.v2-why-list{list-style:none;margin:0;padding:0}
.v2-why-list li{padding:24px 0 24px 28px;border-left:3px solid var(--gold);margin-bottom:14px;background:linear-gradient(90deg,rgba(255,255,255,.07),transparent)}
.v2-why-list b{display:block;font-size:21px;margin-bottom:6px}
.v2-why-list span{color:rgba(255,255,255,.78);line-height:1.55}
.v2-cta{background:var(--gold);padding:110px 0;position:relative;overflow:hidden}
.v2-cta:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(-45deg,transparent 0 40px,rgba(17,27,49,.05) 40px 80px)}
.v2-cta-inner{position:relative;text-align:center;display:flex;flex-direction:column;align-items:center}
.v2-cta h2{font-size:clamp(36px,5.4vw,76px);line-height:.98;font-weight:800;color:var(--navy2);max-width:16ch;text-transform:uppercase}
.v2-cta p{font-size:19px;color:var(--navy2);margin:24px 0 36px;max-width:560px}
.v2-cta .v2-btn-gold{background:var(--navy2);color:#fff}
.v2-cta .v2-btn-ghost{border-color:var(--navy2);color:var(--navy2)}
.v2-cta .v2-btn-ghost:hover{background:var(--navy2);color:#fff}
.reveal{opacity:0;transform:translateY(34px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}
@media (max-width:900px){.v2-grid{grid-template-columns:1fr 1fr}.v2-stats-grid{grid-template-columns:1fr 1fr}.v2-stat:nth-child(3){border-left:0;padding-left:0}.v2-stat{border-top:1px solid rgba(255,255,255,.12)}.v2-why-inner{grid-template-columns:1fr;gap:40px}.v2-strip{grid-template-columns:1fr;grid-template-rows:none;height:auto}.v2-proj{aspect-ratio:4/3}.v2-proj-big{grid-row:auto}}
@media (max-width:600px){.v2-wrap{padding:0 20px}.v2-grid{grid-template-columns:1fr}.v2-card{aspect-ratio:4/3}.v2-services,.v2-projects{padding:80px 0}.v2-why,.v2-cta{padding:84px 0}.v2-hero-inner{padding-top:80px;padding-bottom:70px}.v2-hero-tag,.v2-scroll{display:none}.v2-btn{width:100%;justify-content:center}.v2-head-row{flex-direction:column;align-items:flex-start}.v2-stat{padding:30px 14px}.v2-hero-shade{background:linear-gradient(0deg,rgba(13,21,40,.95) 20%,rgba(13,21,40,.55) 70%,rgba(13,21,40,.35))}}
@media (prefers-reduced-motion:reduce){.v2 *,.v2 *:before,.v2 *:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}.v2-hero-img{transform:none}}
