
:root{--bg:#101211;--panel:#171a18;--text:#d8d4ca;--muted:#9b988f;--gold:#c7a35c;--teal:#6d9f99;--line:#343630}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;line-height:1.65}
a{color:inherit}.wrap{width:min(1180px,calc(100% - 56px));margin:auto}.nav{height:88px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}
.brand{font-family:Georgia,serif;color:var(--gold);letter-spacing:.13em}.nav a{text-decoration:none;margin-left:26px;font-size:.76rem;letter-spacing:.13em}
.hero{padding:120px 0 95px}.eyebrow{color:var(--teal);font-size:.73rem;letter-spacing:.17em;text-transform:uppercase}
h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.08;color:var(--gold)}h1{font-size:clamp(3.4rem,8vw,7rem);margin:.16em 0 .2em}
h2{font-size:clamp(2rem,4vw,3.7rem);margin:.2em 0 .45em}h3{font-size:1.45rem}.lead{font-family:Georgia,serif;font-size:clamp(1.25rem,2.1vw,1.65rem);max-width:900px;color:#eee9de}
.hero p:last-child{max-width:900px}.service{padding:85px 0;border-top:1px solid var(--line)}.grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:80px}
.copy p:first-of-type{font-size:1.12rem}.tagline{font-family:Georgia,serif;font-size:1.5rem;color:#eee9de;margin-top:0}
.case{margin-top:42px;padding:30px;border:1px solid var(--line);background:var(--panel)}.case strong{color:var(--gold)}.case .stat{font-family:Georgia,serif;font-size:2rem;color:#eee9de}
.case-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:center}.case img,.case video{width:100%;display:block;background:#090a09}
.case a.button,.cta a{display:inline-block;margin-top:12px;padding:11px 18px;border:1px solid var(--gold);color:var(--gold);text-decoration:none;font-size:.74rem;letter-spacing:.12em}
.capabilities{padding:100px 0;border-top:1px solid var(--line);background:#131513}.caps-intro{max-width:850px}.caps{display:grid;grid-template-columns:repeat(2,1fr);gap:0 60px;margin-top:45px}
.cap{padding:28px 0;border-top:1px solid var(--line)}.cap h3{margin:0 0 8px}.materials{color:var(--muted)}
.authorship{margin-top:35px;padding-left:24px;border-left:2px solid var(--gold)}.cta{text-align:center;padding:110px 28px;border-top:1px solid var(--line)}
footer{border-top:1px solid var(--line);padding:30px 0;color:var(--muted);font-size:.74rem;letter-spacing:.08em}
@media(max-width:800px){.grid,.case-grid,.caps{grid-template-columns:1fr;gap:28px}.nav nav{display:none}.hero{padding:75px 0}.service{padding:60px 0}.wrap{width:min(100% - 36px,1180px)}}

/* SERVICES V2 */
.cap p + p{margin-top:12px}
.cap a{color:#c7a35c;text-decoration:none;border-bottom:1px solid rgba(199,163,92,.45)}
.cap a:hover{border-bottom-color:#c7a35c}
.case .button{margin-top:16px}

/* SERVICES V3 — approved Option 3 header */
.site-header{background:#101211;border-bottom:1px solid #34362f}
.nav{min-height:132px;gap:42px}
.approved-header-mark{display:block;width:min(52vw,700px);min-width:470px}
.approved-header-mark img{display:block;width:100%;height:auto}
.nav nav{margin-left:auto;display:flex;align-items:center;gap:clamp(28px,3.5vw,58px)}
.nav nav a{white-space:nowrap}
@media(max-width:900px){.nav{min-height:112px;gap:20px}.approved-header-mark{width:52vw;min-width:360px}.nav nav{gap:20px}}
@media(max-width:720px){.nav{display:block;padding-top:14px;padding-bottom:16px}.approved-header-mark{width:min(92vw,610px);min-width:0}.nav nav{margin-top:12px;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}}

/* SERVICES V4 typography normalization */
.services-intro-title,
.hero h1{
  font-size:clamp(2.15rem,4vw,3.65rem);
  line-height:1.02;
}
.service-copy p,
.service-section p,
.capability p,
.case-study p,
main section p{
  font-size:1rem;
  line-height:1.72;
}

/* Preserve labels/captions as UI metadata rather than prose. */
main .eyebrow,
main .kicker,
main .label,
main figcaption,
main .caption,
main .meta {
  font-size: inherit;
}

/* SERVICES V6 — deliberate four-level service typography */

/* H1: existing service-section titles retain their established styling. */

/* H2: concise positioning statement immediately under a service title. */
.service-h2,
.service-lead,
.service-intro,
.service-tagline,
.service-section > .lead,
.service-card > .lead {
  display:block;
  font-size:clamp(1.22rem,1.65vw,1.52rem) !important;
  line-height:1.38 !important;
  font-weight:400 !important;
  margin:0 0 1.05rem !important;
}

/* Body: every explanatory paragraph is the same typographic level. */
main .service-section p:not(.lead):not(.service-lead):not(.service-intro):not(.service-tagline),
main .service-card p:not(.lead):not(.service-lead):not(.service-intro):not(.service-tagline),
main .service-copy p:not(.lead),
main .capability p,
main .capability-card p,
main .case-study p {
  font-size:1rem !important;
  line-height:1.72 !important;
  font-weight:400 !important;
}

/* Inline subheads such as FABRICATION OR COLLABORATION:
   body size, bold, uppercase. */
main .minihead,
main .subhead,
main .inline-heading,
main strong.section-label {
  font-size:1rem !important;
  line-height:1.5 !important;
  font-weight:700 !important;
  text-transform:uppercase;
  letter-spacing:.055em;
}

/* SERVICES V7 — unified prose size.
   Every paragraph and prose-level subhead in the Services content uses
   the same body size. Link colors are intentionally untouched. */
main p,
main p.lead,
main p.note,
main p.small,
main p.secondary,
main p.muted,
main .service-lead,
main .service-intro,
main .service-tagline,
main .service-h2,
main .minihead,
main .subhead,
main .inline-heading,
main strong.section-label {
  font-size: 1rem !important;
  line-height: 1.72 !important;
}

/* Prose-level subheads remain bold/uppercase, but not larger. */
main .minihead,
main .subhead,
main .inline-heading,
main strong.section-label {
  font-weight: 700 !important;
  text-transform: uppercase;
  letter-spacing: .055em;
}

/* Do not alter anchor color; existing hyperlink styling remains authoritative. */

/* SERVICES V8 — restore the five approved H2 positioning statements.
   All other prose remains at the unified body size from V7. */
main .service-h2 {
  display:block;
  font-size:clamp(1.22rem,1.65vw,1.52rem) !important;
  line-height:1.38 !important;
  font-weight:400 !important;
  margin:0 0 1.05rem !important;
}


/* APPROVED LOSTMACHINE GLOBAL HEADER */
.site-header{background:#101211;border-bottom:1px solid #34362f}
.nav{min-height:132px;gap:42px}
.approved-header-mark{display:block;width:min(52vw,700px);min-width:470px}
.approved-header-mark img{display:block;width:100%;height:auto}
.nav nav{margin-left:auto;display:flex;align-items:center;gap:clamp(28px,3.5vw,58px)}
.nav nav a{white-space:nowrap}
@media(max-width:900px){.nav{min-height:112px;gap:20px}.approved-header-mark{width:52vw;min-width:360px}.nav nav{gap:20px}}
@media(max-width:720px){.nav{display:block;padding-top:14px;padding-bottom:16px}.approved-header-mark{width:min(92vw,610px);min-width:0}.nav nav{margin-top:12px;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}}
