/* HAMMER — Concept 2 "FIELD REPORT": industrial / editorial spec-sheet direction.
   Real brand: navy #0a1a35, blue #025abe, safety amber #f6a01a. Anton + Archivo + mono. */
:root{
  --ink:#12161d;          /* near-black */
  --ink-2:#1c2530;
  --navy:#0a1a35;
  --blue:#025abe;
  --amber:#f6a01a;
  --amber-deep:#d97e08;
  --paper:#f2efe8;        /* warm concrete paper */
  --paper-2:#e7e2d7;
  --line:#d8d2c4;
  --line-dark:#c7c0af;
  --soft:#4a5361;
  --white:#fff;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Archivo',system-ui,sans-serif;background:var(--paper);color:var(--ink);line-height:1.62;-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:'Anton',sans-serif;font-weight:400;letter-spacing:.01em;line-height:1.02;text-transform:uppercase}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
.wrap{max-width:1200px;margin:0 auto;padding:0 26px}
mark{background:none;color:var(--amber)}
.eyebrow{font-family:'Spline Sans Mono',monospace;font-size:12px;letter-spacing:.14em;font-weight:600;color:var(--blue);margin-bottom:16px}
.eyebrow.amber{color:var(--amber-deep)}

.btn{display:inline-flex;align-items:center;gap:9px;font-family:'Spline Sans Mono',monospace;font-weight:600;font-size:13.5px;letter-spacing:.04em;padding:16px 26px;cursor:pointer;border:none;transition:.16s;text-transform:uppercase}
.btn-amber{background:var(--amber);color:#1a1305}
.btn-amber:hover{background:var(--amber-deep);transform:translateY(-2px)}
.btn-line{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.4)}
.btn-line:hover{border-color:var(--amber);color:var(--amber)}
.btn-line-light{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.4)}
.btn-line-light:hover{border-color:var(--amber);color:var(--amber)}
.btn-dark{background:var(--ink);color:#fff;margin-top:12px}
.btn-dark:hover{background:var(--blue);transform:translateY(-2px)}

/* NAV */
.nav{position:sticky;top:0;z-index:60;background:var(--ink);border-bottom:3px solid var(--amber)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:68px}
.nav .logo{display:flex;align-items:center;gap:11px}
.nav .logo img{height:34px}
.nav .logo b{color:#fff;font-family:'Anton';font-weight:400;font-size:18px;letter-spacing:.03em}
.nav .links{display:flex;gap:26px;align-items:center}
.nav .links a{color:#c3ccd8;font-family:'Spline Sans Mono',monospace;font-size:12.5px;letter-spacing:.03em;transition:.15s}
.nav .links a:hover{color:#fff}
.nav .navcta{background:var(--amber);color:#1a1305;padding:9px 16px;font-weight:600}
.nav .navcta:hover{background:var(--amber-deep)}
@media(max-width:920px){ .nav .links a:not(.navcta){display:none} }

/* HERO */
.hero{position:relative;background:var(--navy);color:#fff;overflow:hidden;border-bottom:3px solid var(--amber)}
.hero-bg{position:absolute;inset:0}
.hero-bg img{width:100%;height:100%;object-fit:cover;opacity:.34}
.hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,26,53,.78),rgba(10,26,53,.62) 45%,rgba(10,26,53,.9))}
.hero-inner{position:relative;z-index:2;padding:78px 26px 92px}
.ticket{display:flex;flex-wrap:wrap;gap:0;border:1px solid rgba(255,255,255,.22);width:fit-content;max-width:100%;margin-bottom:34px}
.ticket .tk{font-family:'Spline Sans Mono',monospace;font-size:11.5px;letter-spacing:.05em;color:#dbe4f2;padding:11px 18px;border-right:1px solid rgba(255,255,255,.18);display:flex;flex-direction:column;gap:3px}
.ticket .tk:last-child{border-right:none}
.ticket .tk i{color:var(--amber);font-style:normal;font-size:9.5px;letter-spacing:.16em}
.hero h1{font-size:clamp(46px,8.5vw,104px);letter-spacing:.005em;margin-bottom:26px}
.hero p.lead{font-size:clamp(16px,2vw,19px);max-width:58ch;color:#cdd7ea;margin-bottom:34px}
.cta-row{display:flex;gap:14px;flex-wrap:wrap;align-items:center}

/* METRICS */
.metrics{background:var(--ink);color:#fff;padding:0}
.m-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.m{padding:34px 26px;border-right:1px solid rgba(255,255,255,.12);text-align:center}
.m:last-child{border-right:none}
.mn{font-family:'Anton';font-size:clamp(38px,5vw,58px);line-height:1;color:#fff}
.mn span{color:var(--amber)}
.ml{font-family:'Spline Sans Mono',monospace;font-size:11px;letter-spacing:.1em;color:#9aa7b8;margin-top:8px}
@media(max-width:720px){ .m-grid{grid-template-columns:1fr 1fr} .m:nth-child(2){border-right:none} .m:nth-child(1),.m:nth-child(2){border-bottom:1px solid rgba(255,255,255,.12)} }

section{padding:96px 0}
.sec-head{max-width:70ch;margin-bottom:52px}
.sec-head h2{font-size:clamp(30px,5vw,56px);margin-bottom:16px}
.sec-head .sub{font-size:17px;color:var(--soft);max-width:62ch}
.sub.light{color:#c1cde2}

/* PROMISE */
.promise{background:var(--paper-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.p-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}
.quote{font-size:clamp(30px,4.4vw,52px);margin-bottom:22px;color:var(--ink)}
.body{font-size:16.5px;color:var(--soft);margin-bottom:16px;max-width:52ch}
.p-img{border:1px solid var(--line-dark);overflow:hidden}
.p-img img{width:100%;aspect-ratio:4/5;object-fit:cover}
@media(max-width:900px){ .p-grid{grid-template-columns:1fr;gap:34px} }

/* SERVICES */
.services{background:var(--paper)}
.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line-dark);border-left:1px solid var(--line-dark)}
.svc{padding:34px 30px 30px;border-right:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark);background:var(--paper);transition:.18s;position:relative}
.svc:hover{background:var(--white);transform:none}
.svc .n{font-family:'Spline Sans Mono',monospace;font-size:12px;letter-spacing:.12em;color:var(--blue);font-weight:600}
.svc h3{font-size:22px;margin:14px 0 10px;color:var(--ink)}
.svc p{font-size:14.5px;color:var(--soft)}
.svc .tag{display:inline-block;margin-top:16px;font-family:'Spline Sans Mono',monospace;font-size:10.5px;letter-spacing:.12em;color:var(--amber-deep);border:1px solid var(--line-dark);padding:5px 10px}
@media(max-width:900px){ .svc-grid{grid-template-columns:1fr 1fr} }
@media(max-width:560px){ .svc-grid{grid-template-columns:1fr} }

/* THE STANDARD */
.standard{background:var(--ink);color:#fff}
.standard .sec-head h2{color:#fff}
.standard .sec-head .sub{color:#aeb8c6}
.ba{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px}
.ba figure{position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.14)}
.ba figure img{width:100%;aspect-ratio:4/5;object-fit:cover}
.ba figcaption{position:absolute;top:0;left:0;font-family:'Spline Sans Mono',monospace;font-size:11px;letter-spacing:.14em;padding:8px 15px;color:#fff}
.ba .before figcaption{background:rgba(74,83,97,.94)}
.ba .after figcaption{background:var(--blue)}
.spec-sheet{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.16);border-left:1px solid rgba(255,255,255,.16)}
.spec{padding:26px 22px;border-right:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16)}
.spec .sk{font-family:'Spline Sans Mono',monospace;font-size:11.5px;letter-spacing:.08em;color:var(--amber);display:block;margin-bottom:12px}
.spec p{font-size:13.5px;color:#c1cbd8}
@media(max-width:900px){ .spec-sheet{grid-template-columns:1fr 1fr} }
@media(max-width:560px){ .ba{grid-template-columns:1fr} .spec-sheet{grid-template-columns:1fr} }

/* PROCESS */
.process{background:var(--paper-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-left:1px solid var(--line-dark)}
.step{padding:8px 26px 8px 24px;border-right:1px solid var(--line-dark)}
.step .pn{font-family:'Anton';font-size:34px;color:var(--blue);display:block;margin-bottom:12px}
.step h3{font-size:19px;color:var(--ink);margin-bottom:10px}
.step p{font-size:14px;color:var(--soft)}
@media(max-width:900px){ .steps{grid-template-columns:1fr 1fr;gap:28px 0} }
@media(max-width:520px){ .steps{grid-template-columns:1fr} }

/* WORK */
.work{background:var(--paper)}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.gallery .tile{position:relative;overflow:hidden;border:1px solid var(--line-dark)}
.gallery .tile img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:.5s}
.gallery .tile:hover img{transform:scale(1.05)}
.gallery .tile figcaption{position:absolute;bottom:0;left:0;width:100%;padding:22px 15px 13px;background:linear-gradient(180deg,transparent,rgba(18,22,29,.9));color:#fff;font-family:'Spline Sans Mono',monospace;font-size:11.5px;letter-spacing:.06em}
.gallery .tile.wide{grid-column:span 2}
@media(max-width:900px){ .gallery{grid-template-columns:1fr 1fr} }
@media(max-width:560px){ .gallery{grid-template-columns:1fr} .gallery .tile.wide{grid-column:span 1} }

/* AREAS */
.areas{background:var(--navy);color:#fff}
.a-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:52px;align-items:start}
.areas h2{font-size:clamp(28px,4vw,44px);color:#fff;margin-bottom:16px}
.suburbs{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}
.suburbs span{font-family:'Spline Sans Mono',monospace;font-size:11.5px;letter-spacing:.05em;color:#d7e0f0;border:1px solid rgba(255,255,255,.22);padding:8px 13px}
.testi{border:1px solid rgba(255,255,255,.2);padding:36px;position:relative;background:rgba(255,255,255,.03)}
.testi .g{position:absolute;top:24px;right:28px;font-family:'Spline Sans Mono',monospace;font-size:10.5px;letter-spacing:.08em;color:#8fa0bd}
.testi .stars{color:var(--amber);font-size:18px;letter-spacing:3px;margin-bottom:16px}
.testi blockquote{font-size:20px;font-weight:600;color:#fff;line-height:1.4;margin-bottom:18px}
.testi .who{font-family:'Spline Sans Mono',monospace;font-size:11px;letter-spacing:.06em;color:#9fb0cc}
.testi .who b{color:#fff}
@media(max-width:900px){ .a-grid{grid-template-columns:1fr;gap:32px} }

/* FINAL */
.final{background:var(--paper)}
.final-card{background:var(--ink);color:#fff;padding:64px 44px;text-align:center;border:3px solid var(--amber)}
.final-card h2{font-size:clamp(30px,4.6vw,54px);margin-bottom:18px}
.final-card p{font-size:17px;color:#c7d2e6;max-width:52ch;margin:0 auto 28px}
.final-card .cta-row{justify-content:center}
.final-card .assurance{margin-top:22px;font-family:'Spline Sans Mono',monospace;font-size:11.5px;letter-spacing:.06em;color:#9fb0cc}

/* FOOTER */
footer{background:var(--ink);color:#8fa0bd;padding:54px 0 30px;border-top:3px solid var(--amber)}
footer .cols{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px;margin-bottom:36px}
footer .logo{display:flex;align-items:center;gap:11px;margin-bottom:16px}
footer .logo img{height:36px}
footer .logo b{color:#fff;font-family:'Anton';font-size:18px;letter-spacing:.03em}
footer p{font-size:14px;line-height:1.6;max-width:38ch}
footer h3{color:#fff;font-family:'Spline Sans Mono',monospace;font-size:11.5px;letter-spacing:.1em;margin-bottom:14px}
footer ul{list-style:none}
footer ul li{margin-bottom:9px;font-size:14px}
footer .bar{border-top:1px solid rgba(255,255,255,.1);padding-top:22px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-family:'Spline Sans Mono',monospace;font-size:11.5px;letter-spacing:.04em}
footer .bar a{color:var(--amber);text-decoration:underline}
@media(max-width:900px){ footer .cols{grid-template-columns:1fr;gap:26px} }

/* REVEAL */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){ .reveal{opacity:1;transform:none;transition:none} }

/* MOBILE usability */
@media(max-width:640px){
  .wrap{padding:0 18px}
  section{padding:64px 0}
  .hero-inner{padding:56px 18px 68px}
  .ticket{width:100%}
  .ticket .tk{flex:1 1 45%;border-bottom:1px solid rgba(255,255,255,.18)}
  .cta-row .btn{width:100%;justify-content:center}
  .sec-head{margin-bottom:36px}
  .final-card{padding:44px 22px}
}
