:root{
  --asphalt: #14181F;
  --asphalt-2: #1E242E;
  --amber: #F2A73B;
  --paper: #F5F3EE;
  --paper-dim: #C9C7C0;
  --loaded: #4C9A6A;
  --available: #C1443C;
  --line: rgba(245,243,238,0.14);
  --radius: 4px;
  --display: 'Barlow Condensed', sans-serif;
  --body: 'Inter', sans-serif;
  --mono: 'IBM Plex Mono', monospace;
}
*{box-sizing:border-box;}
body{margin:0; background:var(--asphalt); color:var(--paper); font-family:var(--body); line-height:1.5;}
a{color:inherit;}
nav{display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; padding:20px 6vw; border-bottom:1px solid var(--line);}
.brand{font-family:var(--display); font-weight:800; font-size:1.5rem; display:flex; align-items:center; gap:10px; text-decoration:none; color:var(--paper);}
.brand em{color:var(--amber); font-style:normal;}
.nav-links{display:flex; align-items:center; flex-wrap:wrap; gap:16px; color:var(--paper-dim); font-size:0.9rem;}
.lang-switch{display:flex; gap:4px; margin:0; padding:0;}
.lang-switch button{
  background:transparent; border:1px solid var(--line); color:var(--paper-dim);
  font-family:var(--mono); font-size:0.72rem; padding:4px 8px; border-radius:var(--radius); cursor:pointer;
}
.lang-switch button.active{background:var(--amber); color:var(--asphalt); border-color:var(--amber);}
main{padding: 60px 6vw; max-width:900px; margin:0 auto;}
h1,h2,h3{font-family:var(--display); font-weight:700;}
h1{font-size:2.6rem;}
.lead{color:var(--paper-dim); max-width:60ch;}
.btn{font-weight:700; padding:13px 24px; border-radius:var(--radius); border:none; cursor:pointer; font-size:0.95rem; text-decoration:none; display:inline-block;}
.btn-primary{background:var(--amber); color:var(--asphalt);}
.btn-ghost{background:transparent; color:var(--paper); border:1px solid var(--line);}
.btn:disabled{opacity:0.6; cursor:wait;}
.card{background:var(--asphalt-2); border:1px solid var(--line); border-radius:8px; padding:32px; margin-top:30px; max-width:640px;}
.field{margin-bottom:16px; display:flex; flex-direction:column; gap:6px;}
.field label{font-size:0.82rem; color:var(--paper-dim);}
.field input, .field select, .field textarea{
  background:var(--asphalt); border:1px solid var(--line); color:var(--paper);
  padding:11px 12px; border-radius:var(--radius); font-family:var(--body); font-size:0.92rem;
}
fieldset{border:1px solid var(--line); border-radius:6px; padding:20px; margin-bottom:20px;}
legend{font-family:var(--display); padding:0 8px; font-size:1.1rem;}
.errorlist{color:var(--available); font-size:0.8rem; list-style:none; padding:0; margin:4px 0 0;}
.messages{list-style:none; padding:0;}
.messages li{background:var(--asphalt-2); border-left:3px solid var(--amber); padding:12px 16px; margin-bottom:12px; border-radius:4px;}
footer{border-top:1px solid var(--line); padding:30px 6vw; font-size:0.8rem; color:var(--paper-dim); text-align:center;}
.req-list{list-style:none; padding:0;}
.req-list li{padding:5px 0; font-size:0.9rem; color:var(--paper-dim);}
.req-list li:before{content:"— "; color:var(--amber);}

/* --- Hero --- */
.hero{
  position:relative; border-radius:8px; overflow:hidden;
  min-height:460px; display:flex; align-items:flex-end;
  background-color:var(--asphalt); background-size:cover; background-position:center 40%;
  margin:0 -6vw; padding:0 6vw;
}
.hero::before{
  content:""; position:absolute; inset:0;
  background:linear-gradient(100deg, rgba(20,24,31,0.95) 0%, rgba(20,24,31,0.82) 40%, rgba(20,24,31,0.4) 68%, rgba(20,24,31,0.15) 100%);
}
.hero-content{position:relative; padding:48px 0 40px; max-width:640px;}
.eyebrow{font-family:var(--mono); color:var(--amber); font-size:0.8rem; letter-spacing:0.1em; text-transform:uppercase; margin-bottom:16px;}
.hero-cta{margin-top:28px; display:flex; gap:16px;}

/* --- Stats / trust bar --- */
.stat-strip{display:flex; gap:0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); margin-top:36px;}
.stat{flex:1; padding:18px 20px 18px 0; border-right:1px solid var(--line);}
.stat:last-child{border-right:none;}
.stat b{display:block; font-family:var(--mono); font-size:1.15rem; color:var(--amber);}
.stat span{font-size:0.78rem; color:var(--paper-dim);}

/* --- Services grid --- */
.section-title{font-family:var(--display); font-weight:700; font-size:2rem; margin:70px 0 8px;}
.section-sub{color:var(--paper-dim); max-width:60ch; margin-bottom:36px;}
.services-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--line); border:1px solid var(--line);}
.service-card{background:var(--asphalt); padding:28px;}
.service-card .icon{font-family:var(--mono); color:var(--amber); font-size:0.8rem; margin-bottom:12px;}
.service-card h4{font-family:var(--display); font-size:1.25rem; font-weight:700; margin-bottom:8px;}
.service-card p{color:var(--paper-dim); font-size:0.88rem;}

/* --- Process / route steps --- */
.process-track{display:flex; gap:0; margin-top:10px;}
.process-step{flex:1; padding-top:6px;}
.line-wrap{display:flex; align-items:center;}
.route-rule{flex:1; height:2px; background-image:repeating-linear-gradient(90deg, var(--amber) 0 18px, transparent 18px 32px); opacity:0.55;}
.process-step:first-child .route-rule.left{visibility:hidden;}
.process-step:last-child .route-rule.right{visibility:hidden;}
.mile-marker{width:30px; height:30px; border-radius:50%; border:2px solid var(--amber); background:var(--asphalt); color:var(--amber); font-family:var(--mono); font-size:0.72rem; display:flex; align-items:center; justify-content:center; flex-shrink:0;}
.process-step h3{font-family:var(--display); font-size:1.2rem; font-weight:700; margin:14px 0 6px;}
.process-step p{font-size:0.85rem; color:var(--paper-dim); max-width:24ch;}

/* --- CTA band --- */
.cta-band{margin:70px 0 20px; background:var(--asphalt-2); border:1px solid var(--line); border-radius:8px; padding:40px; text-align:center;}
.cta-band h3{font-family:var(--display); font-size:1.8rem; margin-bottom:10px;}
.cta-band p{color:var(--paper-dim); margin-bottom:22px;}

@media (max-width:800px){
  .services-grid{grid-template-columns:1fr;}
  .process-track{flex-direction:column; gap:20px;}
}
