:root{--accent:#f2b134;--ink:#0f1115;--panel:#171a20;--text:#e8e9ec;--muted:#9ba1ab;--sans:'Montserrat',Helvetica,Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:70px}
body{margin:0;background:var(--ink);color:var(--text);font:300 16px/1.7 var(--sans)}
a{color:var(--accent);text-decoration:none}
img{max-width:100%;display:block}
h1,h2,h3{font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin:0 0 .5em;line-height:1.2}
h2{font-size:clamp(1.8rem,3.5vw,2.6rem);text-align:center;color:#fff}
h2+.lead{text-align:center;color:var(--accent);text-transform:uppercase;letter-spacing:.2em;font-size:.85rem;font-weight:600;margin:-.3em 0 2.5rem}
h3{font-size:1.05rem;color:#fff}
section{padding:90px 6vw}
.btn{display:inline-block;background:var(--accent);color:#111;padding:.9em 1.9em;border:2px solid var(--accent);text-transform:uppercase;letter-spacing:.14em;font:700 .78rem var(--sans);cursor:pointer;transition:.2s}
.btn:hover{background:transparent;color:var(--accent)}
.btn.ghost{background:transparent;color:#fff;border-color:#fff}
.btn.ghost:hover{background:#fff;color:#111}

.nav{position:fixed;inset:0 0 auto;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:12px 6vw;background:rgba(10,11,14,.9);backdrop-filter:blur(6px)}
.brand img{height:40px;width:auto}
.nav nav{display:flex;gap:1.8rem}
.nav nav a{color:#fff;font-size:.74rem;letter-spacing:.15em;text-transform:uppercase;font-weight:600}
.nav nav a:hover{color:var(--accent)}
#menu,.burger{display:none}
@media(max-width:900px){
  .burger{display:block;width:30px;height:22px;position:relative;cursor:pointer}
  .burger span,.burger span:before,.burger span:after{position:absolute;left:0;width:30px;height:2px;background:#fff;content:""}
  .burger span{top:10px}.burger span:before{top:-9px}.burger span:after{top:9px}
  .nav nav{position:absolute;top:100%;left:0;right:0;flex-direction:column;gap:0;background:#0b0c0f;max-height:0;overflow:hidden;transition:max-height .3s}
  .nav nav a{padding:1rem;border-top:1px solid #222;text-align:center}
  #menu:checked~nav{max-height:500px}
}

.hero{position:relative;height:100vh;min-height:560px;display:grid;place-items:center;text-align:center;overflow:hidden;padding:0;background:#000 url(/img/2015/09/Wallpaper.jpg) center/cover}
.hero .video{position:absolute;inset:0;pointer-events:none}
.hero iframe{position:absolute;top:50%;left:50%;width:100vw;height:56.25vw;min-height:100vh;min-width:177.78vh;transform:translate(-50%,-50%);border:0}
.hero:after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.55)}
.hero-inner{position:relative;z-index:2;padding:0 6vw}
.hero .kicker{letter-spacing:.35em;text-transform:uppercase;font-size:.85rem;color:var(--accent);font-weight:600}
.hero h1{font-size:clamp(2.6rem,7vw,5.5rem);color:#fff;margin:.2em 0}
.hero .sub{letter-spacing:.35em;text-transform:uppercase;font-size:.9rem;color:#ddd;margin-bottom:2rem}
.cta{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}

.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:1200px;margin:0 auto}
.cards article{background:var(--panel);padding:2rem;border-top:3px solid var(--accent)}
.cards p{color:var(--muted);margin:0}

.build{background:#fff;color:#222;text-align:center}
.build h2{color:#222}
.build h2+.lead{color:#888}
.logos{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:2.5rem 3.5rem;max-width:1100px;margin:0 auto}
.logos img{max-height:60px;width:auto;filter:grayscale(1);opacity:.7;transition:.2s}
.logos img:hover{filter:none;opacity:1}

.about{position:relative;background:#0b0c0f}
.about:before{content:"";position:absolute;inset:0;background:url(/img/2015/08/about-us-back-copy-copy.jpg) center/cover;opacity:.18}
.about>*{position:relative}
.about .cards article{background:rgba(0,0,0,.55)}
.about strong{color:var(--accent);letter-spacing:.1em}

.work p.intro{text-align:center;color:var(--muted);margin:-1.5rem auto 2.5rem}
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}
.grid figure{margin:0;position:relative;overflow:hidden}
.grid img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:.4s}
.grid figure:hover img{transform:scale(1.06);opacity:.5}
.grid figcaption{position:absolute;inset:auto 0 0;padding:1rem;background:linear-gradient(transparent,rgba(0,0,0,.85));font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:.8rem}
@media(max-width:900px){.grid{grid-template-columns:repeat(2,1fr)}}

.rapid{background:var(--panel)}
.request{text-align:center;background:var(--accent);color:#111}
.request h2{color:#111}
.request p{max-width:640px;margin:0 auto 1.5rem}
.request .btn{background:#111;border-color:#111;color:#fff}
.request .btn:hover{background:transparent;color:#111}

.contact{position:relative;background:#0b0c0f}
.contact .wrap{display:grid;grid-template-columns:1fr 1.3fr;gap:4rem;max-width:1100px;margin:0 auto}
.contact h3{color:var(--accent)}
@media(max-width:900px){.contact .wrap{grid-template-columns:1fr;gap:2rem}}

form label{display:block;font-size:.74rem;text-transform:uppercase;letter-spacing:.12em;color:#bbb;margin-bottom:1rem}
form input:not([type=checkbox]),form textarea,form select{display:block;width:100%;margin-top:.4rem;padding:.8em;background:#1b1e25;border:1px solid #333;color:#fff;font:400 1rem var(--sans)}
form input:focus,form textarea:focus,form select:focus{outline:none;border-color:var(--accent)}
fieldset{border:1px solid #333;padding:1rem 1.2rem;margin:0 0 1rem}
legend{font-size:.74rem;text-transform:uppercase;letter-spacing:.12em;color:#bbb;padding:0 .4rem}
.checks{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.3rem 1rem}
.checks label{text-transform:none;letter-spacing:0;font-size:.95rem;color:#ddd;margin:0;display:flex;gap:.5rem;align-items:center}
.row{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}
@media(max-width:600px){.row{grid-template-columns:1fr}}
.hp{position:absolute;left:-9999px}

.page{max-width:820px;margin:0 auto;padding:130px 6vw 80px}
.page h1{font-size:clamp(1.8rem,4vw,2.6rem);color:#fff}

footer{text-align:center;padding:2.5rem 6vw;background:#08090b;color:var(--muted);font-size:.85rem}
footer p{margin:.3rem 0}
.thanks{min-height:100vh;display:grid;place-items:center;text-align:center;padding:2rem}
.thanks img{margin:0 auto 2rem;height:56px;width:auto}
