/* Layout: left-aligned editorial grid; hero pairs a headline with a shipping-manifest panel; services as ruled rows, not cards. */
:root{
  --ink:#0b1630;
  --navy:#123a8c;
  --navy-deep:#0a2260;
  --signal:#f4b81c;
  --paper:#f5f7fa;
  --tint:#e9eef6;
  --line:#d3dbe8;
  --mute:#4d5a73;
  --f-display:"Archivo","Helvetica Neue",Arial,sans-serif;
  --f-body:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --f-mono:"IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{margin:0;background:var(--paper);color:var(--ink);font:400 1.0625rem/1.6 var(--f-body);-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto}
a{color:inherit}
:focus-visible{outline:3px solid var(--signal);outline-offset:3px}
.wrap{max-width:1140px;margin:0 auto;padding-inline:clamp(16px,4vw,32px)}
.mono,.tag,.manifest dt,.manifest-head,address span{font-family:var(--f-mono);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}

h1,h2,h3{font-family:var(--f-display);margin:0;text-wrap:balance;color:var(--ink)}
h1{font-weight:800;font-stretch:90%;font-size:clamp(2.4rem,5.4vw,4.2rem);line-height:1.04;letter-spacing:-.02em}
h2{font-weight:700;font-stretch:95%;font-size:clamp(1.7rem,3.2vw,2.5rem);line-height:1.1;letter-spacing:-.015em}
h3{font-weight:700;font-size:1.2rem;line-height:1.25}
p{margin:0}

/* top bar */
.bar{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:rgba(245,247,250,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.bar-in{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:72px}
.brand-mark img{display:block;height:56px;width:auto}
nav{display:flex;align-items:center;gap:clamp(14px,2.4vw,30px)}
nav a{text-decoration:none;font-weight:500;font-size:.97rem}
nav a:not(.pill):hover{color:var(--navy);text-decoration:underline;text-underline-offset:6px}
.pill{background:var(--navy);color:#fff;padding:9px 18px;border-radius:4px}
.pill:hover{background:var(--navy-deep)}

/* buttons */
.btn{display:inline-block;background:var(--navy);color:#fff;font:600 1rem var(--f-body);padding:14px 26px;border:0;border-radius:4px;text-decoration:none;cursor:pointer;box-shadow:inset 0 -3px 0 var(--signal)}
.btn:hover{background:var(--navy-deep)}
.btn:disabled{opacity:.6;cursor:wait}
.link{font-weight:600;text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:2px;text-decoration-color:var(--signal)}
.link:hover{color:var(--navy)}

/* hero */
.hero{padding-block:clamp(48px,8vw,104px) clamp(56px,8vw,96px);background:var(--paper);border-bottom:1px solid var(--line)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr);gap:clamp(32px,6vw,72px);align-items:center}
.tag{color:var(--navy);margin-bottom:20px;font-weight:500}
.lead{margin-top:24px;max-width:56ch;font-size:1.15rem;color:var(--mute)}
.actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 28px;margin-top:34px}

.manifest{background:#fff;border:1.5px solid var(--ink);border-radius:6px;position:relative;box-shadow:8px 8px 0 var(--navy)}
.manifest-head{display:flex;justify-content:space-between;gap:12px;padding:12px 18px;background:var(--ink);color:#fff;border-radius:4px 4px 0 0}
.manifest dl{margin:0;padding:6px 18px 4px}
.manifest dl>div{display:grid;grid-template-columns:7.2rem minmax(0,1fr);gap:12px;padding:12px 0;border-bottom:1px dashed var(--line)}
.manifest dl>div:last-child{border-bottom:0}
.manifest dt{color:var(--mute);padding-top:3px}
.manifest dd{margin:0;font-weight:500}
.manifest .open{color:var(--navy-deep)}
.manifest .open::before{content:"";display:inline-block;width:.6em;height:.6em;margin-right:.5em;border-radius:50%;background:var(--signal);box-shadow:0 0 0 2px var(--ink)}
.barcode{height:34px;margin:6px 18px 18px;background:repeating-linear-gradient(90deg,var(--ink) 0 2px,transparent 2px 5px,var(--ink) 5px 6px,transparent 6px 10px,var(--ink) 10px 13px,transparent 13px 16px)}

/* sections */
.block{padding-block:clamp(56px,8vw,104px)}
.tint{background:var(--tint)}
.head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px 48px;align-items:end;margin-bottom:clamp(28px,4vw,48px)}
.head p{color:var(--mute);max-width:44ch;justify-self:end}

.rows{list-style:none;margin:0;padding:0;border-top:2px solid var(--ink)}
.rows li{display:grid;grid-template-columns:9rem minmax(0,1.1fr) minmax(0,1.4fr);gap:8px 32px;align-items:baseline;padding:26px 0;border-bottom:1px solid var(--line)}
.rows .mono{color:var(--navy)}
.rows p{color:var(--mute)}

.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}
.steps li{padding:22px 24px 8px 0;border-top:2px solid var(--ink);position:relative}
.steps li+li{padding-left:24px;border-left:1px dashed #9fb0cc}
.steps li::before{content:"";position:absolute;top:-7px;left:0;width:12px;height:12px;background:var(--signal);border:2px solid var(--ink);border-radius:50%}
.steps li+li::before{left:24px}
.steps .mono{display:block;color:var(--navy);margin-bottom:10px}
.steps p{margin-top:8px;color:var(--mute);font-size:1rem}

.logos{display:flex;flex-wrap:wrap;gap:20px}
.logos figure,.logo-card,.slot{margin:0;width:min(230px,100%);height:150px;display:flex;align-items:center;justify-content:center;padding:22px;background:#fff;border:1px solid var(--line);border-radius:4px}
.logo-card{text-decoration:none}
.logo-card:hover{border-color:var(--navy);box-shadow:4px 4px 0 var(--navy)}
.logos img{max-height:100%;object-fit:contain}
.brands-cta{margin-top:28px}
.slot{flex-direction:column;gap:6px;text-decoration:none;border:2px dashed var(--navy);background:transparent}
.slot .mono{color:var(--mute)}
.slot strong{font-family:var(--f-display);font-size:1.2rem;color:var(--navy)}
.slot:hover{background:#fff}

.dark{background:var(--ink);color:#e7ecf6}
.dark h2,.dark h3{color:#fff}
.about{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,80px);align-items:start}
.about p+p{margin-top:16px}
.about>div:first-child p{color:#c3cde0}
.about h2{margin-bottom:22px}
.statements{display:grid;gap:0;border-top:2px solid var(--signal)}
.statements>div{padding:24px 0;border-bottom:1px solid #2c3a5c}
.statements h3{margin-bottom:8px;font-family:var(--f-mono);font-weight:500;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--signal)}
.statements p{color:#e7ecf6}

.contact{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,80px);align-items:start}
.contact h2{margin-bottom:16px}
.contact>div>p{color:var(--mute);max-width:42ch}
address{font-style:normal;margin-top:34px;display:grid;gap:2px;line-height:1.7}
address span{display:block;color:var(--navy);margin:18px 0 4px}
address span:first-child{margin-top:0}
address a{color:var(--navy);font-weight:500}

.form{background:#fff;border:1.5px solid var(--ink);border-radius:6px;padding:clamp(20px,3vw,32px);display:grid;gap:6px}
.form label{font-weight:600;font-size:.92rem;margin-top:10px}
.form label:first-child{margin-top:0}
.form small{font-weight:400;color:var(--mute);margin-left:6px}
.form input,.form textarea{font:inherit;width:100%;padding:12px 14px;border:1.5px solid #b9c5da;border-radius:4px;background:var(--paper);color:var(--ink)}
.form input:focus,.form textarea:focus{outline:none;border-color:var(--navy);box-shadow:0 0 0 3px rgba(18,58,140,.2);background:#fff}
.form .btn{margin-top:18px;justify-self:start}
.hp{position:absolute;left:-9999px;height:0;width:0;opacity:0}
#status{min-height:1.5em;font-weight:600;margin-top:6px}
.ok{color:#17692f}.err{color:#a3261b}

footer{border-top:1px solid var(--line);padding-block:26px;color:var(--mute);font-size:.92rem}
.foot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}

@media (max-width:900px){
  .hero-grid,.about,.contact{grid-template-columns:minmax(0,1fr)}
  .head{grid-template-columns:minmax(0,1fr)}
  .head p{justify-self:start}
  .rows li{grid-template-columns:minmax(0,1fr);padding:22px 0}
  .steps{grid-template-columns:minmax(0,1fr) minmax(0,1fr);row-gap:28px}
  .steps li:nth-child(odd){padding-left:0;border-left:0}
  .steps li:nth-child(odd)::before{left:0}
  .manifest{box-shadow:5px 5px 0 var(--navy)}
}
@media (max-width:620px){
  nav a:not(.pill){display:none}
  .steps{grid-template-columns:minmax(0,1fr)}
  .steps li,.steps li+li{padding-left:0;border-left:0}
  .steps li::before,.steps li+li::before{left:0}
  .manifest dl>div{grid-template-columns:minmax(0,1fr);gap:2px}
  .brand-mark img{height:46px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
