/* Heli.Global — site chrome, dark edition. Brand: navy #1e3060, gold #ffd84d, Georgia serif, Courier labels.
   Presentation direction per the live one-pager: near-black navy, white display serif, gold kickers. */
:root{--navy:#1e3060;--navy-ink:#16244a;--gold:#ffd84d;--gold-ink:#c9a227;--ink:#e8ebf4;--muted:#9aa6c9;--line:rgba(255,255,255,.16);--line2:rgba(255,255,255,.09);--bg:#0a0e1a;--bg-alt:#101627;--tint:#101627}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:Georgia,'Times New Roman',serif;color:var(--ink);background:var(--bg);font-size:16px;line-height:1.6}
a{color:var(--gold)}
.wrap{max-width:980px;margin:0 auto;padding:0 24px}

/* Masthead */
header.masthead{background:var(--bg);color:#fff;padding:26px 0 20px}
.mast-inner{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:12px}
.brand{font-size:28px;letter-spacing:2.5px;font-weight:bold;color:#fff;text-decoration:none}
.brand .dot{color:var(--gold)}
.mast-sub{font-size:12px;letter-spacing:3px;text-transform:uppercase;color:var(--muted);margin-top:6px}
nav.site{font-family:'Courier New',monospace;font-size:13px;letter-spacing:1px}
nav.site a{color:var(--muted);text-decoration:none;margin-left:18px;text-transform:uppercase}
nav.site a:hover,nav.site a.here{color:var(--gold)}
.goldrule{height:3px;background:var(--gold)}

/* Hero — photo slot: set style="background-image:url(/assets/<hero>.jpg)" on .hero;
   the gradient below doubles as the no-photo fallback and the legibility scrim. */
.hero{background:linear-gradient(165deg,rgba(10,14,26,.55) 0%,rgba(10,14,26,.92) 78%,var(--bg) 100%),linear-gradient(160deg,#131b33 0%,var(--bg) 100%);background-size:cover;background-position:center;color:#fff;padding:120px 0 96px}
.hero h1{font-size:56px;line-height:1.12;letter-spacing:.3px;max-width:18ch;font-weight:normal}
.hero p{color:var(--muted);font-size:19px;max-width:56ch;margin-top:22px}
.hero .cta,.cta-btn{display:inline-block;margin-top:30px;background:var(--gold);color:#10142a;font-family:'Courier New',monospace;font-weight:bold;font-size:14px;letter-spacing:1.5px;text-transform:uppercase;padding:14px 24px;text-decoration:none;border-radius:12px}
.cta-btn.ghost,.hero .cta.ghost{background:transparent;color:var(--gold);border:1px solid var(--gold)}

/* Sections — h2.sec is the small gold kicker, .lead the display statement */
section.band{padding:84px 0}
section.band.alt{background:var(--bg-alt)}
h2.sec{color:var(--gold);font-size:12px;letter-spacing:4px;text-transform:uppercase;font-family:'Courier New',monospace;font-weight:bold;margin-bottom:18px}
.lead{font-size:34px;line-height:1.25;max-width:26ch;color:#fff;margin-bottom:18px}
p + p{margin-top:14px}
section.band p{color:var(--muted);max-width:62ch}
section.band .lead{color:#fff}
ul.hl{list-style:none;margin-top:10px}
ul.hl li{padding:7px 0 7px 20px;border-bottom:1px solid var(--line2);position:relative}
ul.hl li::before{content:'·';color:var(--gold);font-weight:bold;position:absolute;left:4px;font-size:20px;line-height:1}

/* Process + cards */
.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:18px;margin-top:34px}
.step,.card{background:transparent;border:0;border-top:1px solid var(--line);padding:20px 14px 0 0}
.step .n{font-family:'Courier New',monospace;font-size:13px;letter-spacing:2px;color:var(--gold);text-transform:uppercase}
.step h3,.card h3{color:#fff;font-size:21px;margin:10px 0 10px;font-weight:normal}
.step p,.card p{font-size:15px}
.card .k{font-family:'Courier New',monospace;font-size:12px;letter-spacing:1.5px;color:var(--gold);text-transform:uppercase}

/* Tables (Meccanica inventory) */
table.inv{border-collapse:collapse;width:100%;margin-top:14px}
table.inv th{border-bottom:2px solid var(--gold);color:var(--gold);font-family:'Courier New',monospace;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;text-align:left;padding:10px}
table.inv td{border-bottom:1px solid var(--line2);padding:10px;font-size:15px;vertical-align:top;color:var(--ink)}
table.inv td.mono{font-family:'Courier New',monospace;font-size:13px;white-space:nowrap;color:var(--muted)}
table.inv tr:nth-child(even) td{background:rgba(255,255,255,.025)}
.note-sm{font-size:13px;color:var(--muted);margin-top:12px;line-height:1.6}

/* Footer */
footer.contact{margin-top:72px;background:var(--bg);border-top:1px solid var(--line);color:#fff}
.foot-inner{padding:30px 0;display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px}
.foot-name{font-size:17px;letter-spacing:1px}
.foot-sub{font-size:13px;color:var(--muted);margin-top:4px}
.foot-detail{font-family:'Courier New',monospace;font-size:13.5px;line-height:1.9;color:var(--muted);text-align:right}
.foot-detail a{color:var(--gold);text-decoration:none}
.foot-legal{border-top:1px solid var(--line2);padding:12px 0 22px;font-size:12px;color:var(--muted)}

@media(max-width:640px){
  .hero{padding:84px 0 64px}
  .hero h1{font-size:36px}
  .lead{font-size:26px}
  section.band{padding:56px 0}
  .mast-inner{align-items:flex-start;flex-direction:column}
  nav.site a{margin:0 16px 0 0}
  .foot-detail{text-align:left}
}

/* Page heroes (photo bands on section pages) */
.hero.page{padding:76px 0 60px}
.hero.page h1{font-size:40px}

/* Enquiry form — rounded, per the house style */
.qform{max-width:560px;margin-top:26px}
.qform label{display:block;font-family:'Courier New',monospace;font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--gold);margin:18px 0 8px}
.qform input,.qform select,.qform textarea{width:100%;padding:13px 16px;font:16px Georgia,'Times New Roman',serif;color:var(--ink);background:rgba(255,255,255,.06);border:1px solid var(--line);border-radius:12px}
.qform input:focus,.qform select:focus,.qform textarea:focus{outline:none;border-color:var(--gold)}
.qform select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--gold) 50%),linear-gradient(135deg,var(--gold) 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 14px) 50%;background-size:6px 6px;background-repeat:no-repeat}
.qform textarea{min-height:120px;resize:vertical}
.qform .actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:24px}
.qform .cta-btn{margin-top:0}
