*{box-sizing:border-box}
html{color-scheme:light}
body{margin:0}
img{max-width:100%}
[hidden]{display:none!important}

/* Layout: patch-panel concept. Services shown as numbered "ports" with status LEDs; sticky top bar; hash-routed pages. */
:root{
  --bg:#f4f6f9; --surface:#ffffff; --ink:#111316; --muted:#566273; --line:#d7dde6;
  --accent:#235789; --accent-ink:#ffffff; --brand-y:#f1d301; --brand-r:#ed1b24; --led:#17a35a; --amber:#d48a06; --band:#235789; --band-fg:#ffffff; --panel:#111316;
  --fill-bg:#fff4d6; --fill-fg:#7a5300;
  --f-display:"Archivo","Arial Narrow",system-ui,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;
  --s1:.75rem;--s2:1rem;--s3:1.5rem;--s4:2.5rem;--s5:4rem;
  --wrap:72rem;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --bg:#0b121d;--surface:#121c2b;--ink:#e8eef7;--muted:#9aa7bc;--line:#24324a;
  --accent:#6fa3dc;--accent-ink:#06101f;--brand-y:#f1d301;--brand-r:#f0414a;--led:#35d07f;--amber:#f0aa2c;--band:#1b4670;--band-fg:#ffffff;--panel:#05080d;
  --fill-bg:#3a2e10;--fill-fg:#ffd77a;color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#0b121d;--surface:#121c2b;--ink:#e8eef7;--muted:#9aa7bc;--line:#24324a;
  --accent:#6fa3dc;--accent-ink:#06101f;--brand-y:#f1d301;--brand-r:#f0414a;--led:#35d07f;--amber:#f0aa2c;--band:#1b4670;--band-fg:#ffffff;--panel:#05080d;
  --fill-bg:#3a2e10;--fill-fg:#ffd77a;color-scheme:dark}

*{box-sizing:border-box}
body{background:var(--bg);color:var(--ink);font:400 1rem/1.6 var(--f-body)}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:10;background:var(--surface)}
a{color:var(--accent)}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}
.wrap{max-width:var(--wrap);margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
h1,h2,h3{font-family:var(--f-display);font-stretch:112%;line-height:1.1;text-wrap:balance;margin:0}
h1{font-size:clamp(2.2rem,5.5vw,4rem);font-weight:800;letter-spacing:-.01em}
h2{font-size:clamp(1.6rem,3.4vw,2.4rem);font-weight:750}
h3{font-size:1.2rem;font-weight:700}
p{margin:0;max-width:65ch}
.eyebrow{display:inline-flex;align-items:center;gap:.55rem;font:500 .78rem/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.eyebrow::before{content:"";width:18px;height:9px;flex:none;background:linear-gradient(var(--accent) 0 2px,transparent 2px 3.5px,var(--brand-y) 3.5px 5.5px,transparent 5.5px 7px,var(--brand-r) 7px 9px)}
.mono{font-family:var(--f-mono)}
.fill{background:var(--fill-bg);color:var(--fill-fg);padding:0 .3em;border-radius:3px;font-family:var(--f-mono);font-size:.92em}

/* header */
header{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;background:var(--surface);border-bottom:1px solid var(--line)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:var(--s2);padding-block:.7rem;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--ink)}
.brand{gap:.7rem}
.wm{display:grid;justify-items:center;gap:3px}
.wm b{font:800 1.3rem/1 var(--f-display);font-stretch:100%;letter-spacing:.06em;padding-left:.06em}
.wm i{display:block;width:80%;height:2px;background:var(--brand-y);border-radius:1px}
.wm small{font:700 .57rem/1 var(--f-display);font-stretch:100%;letter-spacing:.1em;padding-left:.1em;color:var(--accent);text-transform:uppercase}
.mark{width:36px;height:26px;flex:none}
.partner{display:grid;grid-template-columns:auto 1fr auto;gap:var(--s3);align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:var(--s3)}
.partner>*{min-width:0}
.partner .logo{background:#fff;border-radius:8px;padding:.6rem .9rem;display:grid;place-items:center}
.partner img{width:200px;height:auto;display:block}
.partner p{color:var(--muted)}
@media (max-width:700px){.partner{grid-template-columns:1fr}.partner .logo{justify-self:start}}
footer .wm{justify-items:start}
nav{display:flex;gap:.25rem;flex-wrap:wrap}
nav a{font:500 .92rem/1 var(--f-body);color:var(--muted);text-decoration:none;padding:.55rem .8rem;border-radius:6px}
nav a:hover{color:var(--ink);background:var(--bg)}
nav a[aria-current="page"]{color:var(--ink);box-shadow:inset 0 -3px 0 var(--brand-y);border-radius:0}

.btn{display:inline-flex;align-items:center;gap:.5rem;font:600 .95rem/1 var(--f-body);padding:.85rem 1.2rem;border-radius:6px;text-decoration:none;border:1px solid transparent;cursor:pointer}
.btn-primary{background:var(--accent);color:var(--accent-ink)}
.btn-primary:hover{filter:brightness(1.08)}
.btn-ghost{border-color:var(--line);color:var(--ink);background:transparent}
.btn-ghost:hover{border-color:var(--ink)}
.actions{display:flex;gap:var(--s1);flex-wrap:wrap}

section{padding-block:var(--s5)}
.view{display:block}
.stack{display:grid;gap:var(--s2)}

/* hero */
.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:var(--s4);align-items:center;padding-block:var(--s5) var(--s4)}
.hero>*{min-width:0}
.hero .lede{font-size:1.15rem;color:var(--muted)}

/* patch panel */
.panel{background:var(--panel);color:#e8edf3;border-top:4px solid var(--brand-y);border-radius:10px;padding:var(--s3);display:grid;gap:var(--s2)}
.panel-head{display:flex;justify-content:space-between;font:500 .72rem/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;opacity:.75}
.ports{display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem}
.port{display:grid;grid-template-columns:auto 1fr;gap:.7rem;align-items:center;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:.75rem;text-decoration:none;color:inherit;transition:background .15s,border-color .15s}
.port:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.25)}
.jack{width:38px;height:32px;border-radius:4px;background:#05080e;border:1px solid rgba(255,255,255,.18);position:relative;display:grid;place-items:end center;padding-bottom:5px}
.jack::before{content:"";position:absolute;top:6px;left:50%;width:14px;height:6px;margin-left:-7px;background:#1b2536;border-radius:1px}
.jack i{width:6px;height:6px;border-radius:50%;background:var(--led);box-shadow:0 0 6px var(--led);animation:blink 2.4s infinite}
.port:nth-child(1) .jack i{background:#4f8fd0;box-shadow:0 0 6px #4f8fd0}.port:nth-child(2) .jack i{animation-delay:.6s;background:var(--brand-y);box-shadow:0 0 6px var(--brand-y)}.port:nth-child(3) .jack i{animation-delay:1.2s;background:var(--brand-r);box-shadow:0 0 6px var(--brand-r)}.port:nth-child(4) .jack i{animation-delay:1.8s}.port:nth-child(5) .jack i{animation-delay:.3s;background:#4f8fd0;box-shadow:0 0 6px #4f8fd0}
.port-wide{grid-column:1/-1}
@keyframes blink{0%,85%,100%{opacity:1}90%{opacity:.25}}
.port span{display:block;font:500 .68rem/1.2 var(--f-mono);opacity:.6;letter-spacing:.08em}
.port strong{font:650 .95rem/1.25 var(--f-body)}
.panel-foot{display:flex;justify-content:space-between;gap:.5rem;flex-wrap:wrap;font:400 .78rem/1.4 var(--f-mono);opacity:.75;border-top:1px dashed rgba(255,255,255,.18);padding-top:.8rem}
.panel-foot b{color:var(--led);font-weight:500}

/* strip */
.strip{border-block:1px solid var(--line);background:var(--surface)}
.strip .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s3);padding-block:var(--s3)}
.strip div{min-width:0}
.strip b{display:block;font:700 1rem/1.3 var(--f-body)}
.strip span{font-size:.9rem;color:var(--muted)}

/* service grid */
.svc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s2);margin-top:var(--s4)}
.svc{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:var(--s3);display:grid;gap:.8rem;align-content:start}
.svc{border-top:5px solid var(--c,var(--accent))}
.svc:nth-child(1){--c:var(--accent)}.svc:nth-child(2){--c:var(--brand-y)}.svc:nth-child(3){--c:var(--brand-r)}.svc:nth-child(4){--c:var(--ink)}.svc:nth-child(5){--c:var(--accent)}
.svc-wide{grid-column:1/-1}
.svc-wide ul{grid-template-columns:repeat(3,auto);justify-content:start;column-gap:var(--s3)}
@media (max-width:700px){.svc-wide ul{grid-template-columns:1fr}}
.svc .tag{font:500 .72rem/1 var(--f-mono);letter-spacing:.1em;color:var(--muted)}
.svc ul{margin:0;padding:0;list-style:none;display:grid;gap:.35rem;color:var(--muted);font-size:.95rem}
.svc li{padding-left:1.1rem;position:relative}
.svc li::before{content:"";position:absolute;left:0;top:.62em;width:6px;height:6px;border-radius:1px;background:var(--line)}

/* process */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s2);margin-top:var(--s4);counter-reset:s}
.step{border-top:4px solid var(--accent);border-radius:0;padding-top:var(--s2);display:grid;gap:.5rem}
.step::before{counter-increment:s;content:"STEP " counter(s);font:500 .72rem/1 var(--f-mono);letter-spacing:.12em;color:var(--muted)}
.step p{color:var(--muted);font-size:.95rem}
.step:nth-child(2){border-color:var(--brand-y)}.step:nth-child(3){border-color:var(--brand-r)}.step:nth-child(4){border-color:var(--ink)}

/* band CTA */
.cta{background:var(--band);color:var(--band-fg)}
.cta .wrap{display:flex;justify-content:space-between;align-items:center;gap:var(--s3);flex-wrap:wrap;padding-block:var(--s4)}
.cta p{opacity:.8}
.cta{border-top:4px solid var(--brand-y)}
.cta .btn-primary{background:var(--brand-y);color:#111316}
.cta .btn-ghost{color:var(--band-fg);border-color:rgba(255,255,255,.45)}
.cta p{opacity:.9}

/* services page */
.page-head{padding-block:var(--s5) var(--s3);display:grid;gap:var(--s2)}
.page-head p{color:var(--muted);font-size:1.1rem}
.detail{display:grid;grid-template-columns:14rem 1fr;gap:var(--s4);padding-block:var(--s4);border-top:1px solid var(--line)}
.detail>*{min-width:0}
.detail aside{display:grid;gap:.6rem;align-content:start}
.detail aside .num{font:800 3rem/1 var(--f-display);font-stretch:125%;color:var(--accent)}
.detail:nth-of-type(3) aside .num{color:#c9a900}.detail:nth-of-type(4) aside .num{color:var(--brand-r)}.detail:nth-of-type(5) aside .num{color:var(--ink)}.detail:nth-of-type(6) aside .num{color:var(--accent)}
.detail .cols{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s3)}
.detail .cols>div{display:grid;gap:.5rem;align-content:start}
.detail .cols h4{margin:0;font:600 .8rem/1 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.detail ul{margin:0;padding-left:1.1rem;display:grid;gap:.3rem}

/* SLA table */
.table-wrap{overflow-x:auto;margin-top:var(--s3);border:1px solid var(--line);border-radius:8px;background:var(--surface)}
table{border-collapse:collapse;width:100%;min-width:34rem;font-size:.95rem}
th,td{text-align:left;padding:.85rem 1rem;border-bottom:1px solid var(--line);vertical-align:top}
th{font:500 .72rem/1 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
tr:last-child td{border-bottom:0}
td.t{font-family:var(--f-mono);font-variant-numeric:tabular-nums;white-space:nowrap}
.pri{display:inline-flex;align-items:center;gap:.45rem;font:600 .85rem/1 var(--f-mono)}
.pri::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}
.p1{color:var(--brand-r)}.p2{color:var(--amber)}.p3{color:var(--accent)}.p4{color:var(--muted)}

/* about */
.split{display:grid;grid-template-columns:1fr 1fr;gap:var(--s4);align-items:start}
.split>*{min-width:0}
.values{display:grid;gap:0;border-top:1px solid var(--line)}
.values div{display:grid;grid-template-columns:9rem 1fr;gap:var(--s2);padding-block:var(--s2);border-bottom:1px solid var(--line)}
.values b{font:600 .95rem/1.4 var(--f-body)}
.values span{color:var(--muted)}
.area{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}
.regions{display:grid;gap:var(--s2);margin-top:var(--s2)}
.regions b{font:600 .9rem/1.2 var(--f-body)}
.area span{font:500 .82rem/1 var(--f-mono);border:1px solid var(--line);border-radius:999px;padding:.45rem .75rem;background:var(--surface)}

/* contact */
.contact{display:grid;grid-template-columns:1fr 1.2fr;gap:var(--s4);padding-bottom:var(--s5)}
.contact>*{min-width:0}
.info{display:grid;gap:var(--s2);align-content:start}
.info dl{margin:0;display:grid;gap:var(--s2)}
.info dt{font:500 .72rem/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:.35rem}
.info dd{margin:0;font-weight:500}
form{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:var(--s3);display:grid;gap:var(--s2)}
.row{display:grid;grid-template-columns:1fr 1fr;gap:var(--s2)}
label{display:grid;gap:.4rem;font:500 .88rem/1.2 var(--f-body)}
input,select,textarea{font:400 1rem/1.4 var(--f-body);color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:.7rem .8rem;width:100%}
input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:0;border-color:transparent}
textarea{min-height:8rem;resize:vertical}
.chips{display:flex;flex-wrap:wrap;gap:.5rem}
.chips label{display:inline-flex;align-items:center;gap:.4rem;border:1px solid var(--line);border-radius:999px;padding:.45rem .8rem;cursor:pointer;font-weight:400}
.chips input{width:auto;margin:0;accent-color:var(--accent)}
.chips label:has(input:checked){border-color:var(--accent);color:var(--accent)}
.hive-card{border-top:1px solid var(--line);padding-top:var(--s3);margin-top:var(--s2);display:grid;gap:var(--s2)}
.hive-card .logo{background:#fff;border-radius:8px;padding:.5rem .8rem;justify-self:start}
.hive-card img{width:160px;height:auto;display:block}
.faq{display:grid;gap:.5rem;margin-top:var(--s3)}
.faq details{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:.9rem 1rem}
.faq summary{cursor:pointer;font-weight:600}
.faq details p{margin-top:.6rem;color:var(--muted)}
.ok{border:1px solid var(--led);color:var(--ink);background:var(--surface);border-radius:8px;padding:var(--s2)}
.err{color:#d43b3b;font-size:.88rem}


/* clients */
.filters{display:grid;gap:.6rem}
.filters .chips button{font:500 .85rem/1 var(--f-body);color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:.5rem .85rem;cursor:pointer}
.filters .chips button[aria-pressed="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.count{color:var(--muted);font-size:.85rem;margin-top:var(--s3)}
.client-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:var(--s2);margin-block:var(--s2) var(--s5)}
.client{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:var(--s3);display:grid;gap:.8rem;align-content:start}
.client-top{display:flex;gap:.8rem;align-items:center}
.client-top>div{min-width:0}
.clogo{width:52px;height:52px;flex:none;border-radius:8px;display:grid;place-items:center;font:800 1.1rem/1 var(--f-display);font-stretch:115%;color:#fff;background:var(--accent);overflow:hidden}
.clogo img{width:100%;height:100%;object-fit:contain;background:#fff}
.client h3{font-size:1.05rem}
.client .where{font:400 .82rem/1.3 var(--f-mono);color:var(--muted)}
.client .uses{display:flex;flex-wrap:wrap;gap:.35rem}
.client .uses span{font:500 .72rem/1 var(--f-mono);letter-spacing:.04em;padding:.35rem .55rem;border-radius:4px;background:var(--bg);border:1px solid var(--line)}
.client blockquote{margin:0;padding-left:.8rem;border-left:3px solid var(--brand-y);color:var(--muted);font-size:.95rem}
.client .via{display:flex;align-items:center;gap:.5rem;font:500 .78rem/1.3 var(--f-mono);color:var(--muted);border-top:1px dashed var(--line);padding-top:.7rem}
.client .via i{width:10px;height:10px;flex:none;background:var(--brand-y);clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%)}
.client.slot{border-style:dashed;background:transparent}
.client.slot .clogo{background:var(--fill-bg);color:var(--fill-fg)}
.empty{grid-column:1/-1;color:var(--muted);padding:var(--s3) 0}
footer{border-top:1px solid var(--line);background:var(--surface)}
footer .wrap{display:flex;justify-content:space-between;gap:var(--s2);flex-wrap:wrap;padding-block:var(--s3);font-size:.88rem;color:var(--muted)}
footer nav a{padding:.3rem .5rem;font-size:.88rem}

@media (max-width:860px){
  .hero,.split,.contact{grid-template-columns:1fr}
  .strip .wrap,.steps{grid-template-columns:repeat(2,1fr)}
  .detail{grid-template-columns:1fr;gap:var(--s2)}
  .detail aside .num{font-size:2.2rem}
}
@media (max-width:560px){
  .svc-grid,.detail .cols,.row,.ports{grid-template-columns:1fr}
  .strip .wrap,.steps{grid-template-columns:1fr}
  .values div{grid-template-columns:1fr;gap:.2rem}
  nav{width:100%;justify-content:space-between}
  nav a{padding:.5rem .4rem}
  section{padding-block:var(--s4)}
}
@media (prefers-reduced-motion:reduce){.jack i{animation:none}*{transition:none!important}}

/* WhatsApp chat button */
.wa{position:fixed;z-index:30;right:calc(16px + env(safe-area-inset-right,0px));bottom:calc(16px + env(safe-area-inset-bottom,0px));display:inline-flex;align-items:center;gap:.55rem;background:#1fa855;color:#fff;text-decoration:none;font:600 .92rem/1 var(--f-body);padding:.7rem 1.05rem .7rem .8rem;border-radius:999px;box-shadow:0 6px 20px rgba(0,0,0,.22);transition:transform .15s,background .15s}
.wa:hover{background:#178f47;transform:translateY(-2px)}
.wa svg{width:26px;height:26px;flex:none}
@media (max-width:560px){.wa{padding:.8rem;}.wa span{display:none}.wa svg{width:30px;height:30px}}
footer .wrap{padding-bottom:calc(var(--s3) + 64px)}

@media (max-width:560px){nav[aria-label="Main"]{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;gap:0;scrollbar-width:none}nav[aria-label="Main"]::-webkit-scrollbar{display:none}nav[aria-label="Main"] a{font-size:.84rem;padding:.5rem .45rem;white-space:nowrap}}

.ft-logo{display:inline-block;justify-self:start;background:#fff;border:1px solid var(--line);border-radius:8px;padding:6px;line-height:0;transition:transform .15s,box-shadow .15s}
.ft-logo:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.12)}
.ft-logo img{width:96px;height:96px;display:block}
@media (max-width:860px){.ft-logo img{width:72px;height:72px}}

.ft-head{grid-template-columns:1fr auto;align-items:start;gap:var(--s4)}
.ft-head>*{min-width:0}
.ft-logo-lg img{width:150px;height:150px}
.ft-countries{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s2);margin-top:var(--s3)}
.ft-countries>div{background:var(--surface);border:1px solid var(--line);border-top:4px solid var(--accent);border-radius:8px;padding:var(--s3);display:grid;gap:.5rem;min-width:0}
.ft-countries>div:nth-child(2){border-top-color:var(--brand-y)}.ft-countries>div:nth-child(3){border-top-color:var(--brand-r)}
.ft-countries p{color:var(--muted)}
@media (max-width:860px){.ft-head{grid-template-columns:1fr}.ft-logo-lg{order:-1}.ft-logo-lg img{width:96px;height:96px}.ft-countries{grid-template-columns:1fr}}

.reseller{display:inline-flex;align-items:center;gap:.75rem;justify-self:start;align-self:start;text-decoration:none;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-left:4px solid #0e8fcb;border-radius:8px;padding:.6rem 1rem .6rem .6rem;transition:transform .15s,box-shadow .15s}
.reseller:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.1)}
.reseller img{width:34px;height:34px;border-radius:4px;background:#fff;flex:none}
.reseller b{display:block;font:700 .95rem/1.25 var(--f-body)}
.reseller small{display:block;font:400 .78rem/1.3 var(--f-mono);color:var(--muted)}

.badges{display:flex;flex-wrap:wrap;gap:.6rem}
.reseller-hive{border-left-color:var(--brand-y)}

.warn-band{background:repeating-linear-gradient(-45deg,var(--brand-y) 0 14px,#111316 14px 28px);padding-block:6px}
.warn{display:grid;grid-template-columns:auto 1fr auto;gap:var(--s3);align-items:center;background:var(--surface);border-radius:6px;padding-block:var(--s3)}
.warn>*{min-width:0}
.warn-icon svg{width:56px;height:56px;display:block;animation:warnPulse 2.4s ease-in-out infinite}
@keyframes warnPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.08)}}
.warn-eyebrow{color:var(--brand-r)!important;font-weight:600!important}
.warn-eyebrow::before{background:var(--brand-r)!important}
.warn-text{display:grid;gap:.4rem}
.warn-text h2{font-size:clamp(1.25rem,2.6vw,1.75rem)}
.warn-text p{color:var(--muted)}
.warn-actions{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;justify-content:flex-end}
.warn-link{flex-basis:100%;text-align:right;font-size:.88rem;font-weight:500}
@media (max-width:860px){.warn{grid-template-columns:auto 1fr}.warn-actions{grid-column:1/-1;justify-content:flex-start}.warn-link{text-align:left}}
@media (max-width:560px){.warn{grid-template-columns:1fr}.warn-icon svg{width:44px;height:44px}}
@media (prefers-reduced-motion:reduce){.warn-icon svg{animation:none}}

.badges{flex-wrap:nowrap;align-items:stretch;max-width:100%}
.badges .reseller{flex:1 1 0;min-width:0;padding:.55rem .8rem .55rem .55rem}
.badges .reseller b{font-size:.86rem}
.badges .reseller small{font-size:.72rem}
@media (max-width:480px){.badges{flex-wrap:wrap}.badges .reseller{flex-basis:100%}}

.int-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s2);margin-top:var(--s3)}
.int{display:flex;gap:var(--s2);align-items:flex-start;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:var(--s3)}
.int>div{min-width:0;display:grid;gap:.35rem}
.int p{color:var(--muted);font-size:.95rem}
.int-badge{flex:none;width:56px;height:56px;border-radius:8px;display:grid;place-items:center;font:800 .95rem/1 var(--f-display);font-stretch:115%;letter-spacing:.04em;color:#fff;background:var(--accent)}
.int:nth-child(2) .int-badge{background:var(--brand-r)}
@media (max-width:700px){.int-grid{grid-template-columns:1fr}}

.price-tag{position:relative;display:inline-flex;align-items:stretch;justify-self:start;align-self:start;max-width:100%;text-decoration:none;color:#111316;background:var(--brand-y);border-radius:6px 14px 14px 6px;box-shadow:0 6px 18px rgba(0,0,0,.14);transform:rotate(-1.5deg);transition:transform .2s cubic-bezier(.2,1.4,.4,1),box-shadow .2s}
.price-tag:hover{transform:rotate(0) translateY(-3px);box-shadow:0 10px 24px rgba(0,0,0,.18)}
.price-tag::before{content:"";position:absolute;left:-12px;top:50%;width:24px;height:24px;margin-top:-12px;background:var(--brand-y);transform:rotate(45deg);border-radius:3px}
.pt-hole{position:relative;z-index:1;flex:none;width:12px;height:12px;margin:auto 0 auto 2px;border-radius:50%;background:var(--surface);box-shadow:inset 0 1px 2px rgba(0,0,0,.25)}
.pt-body{position:relative;z-index:1;display:grid;gap:.2rem;padding:.8rem 1.1rem .85rem .8rem;border-left:2px dashed rgba(17,19,22,.3);margin-left:.6rem;min-width:0}
.pt-label{font:600 .72rem/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase}
.pt-price{font:800 1.6rem/1.05 var(--f-display);font-stretch:110%;color:#111316}
.pt-text{font:600 .92rem/1.3 var(--f-body)}
.pt-cta{font:600 .8rem/1.3 var(--f-body);color:#235789;margin-top:.15rem}
.price-tag-sm .pt-price{font-size:1.3rem}.price-tag-sm .pt-body{padding:.65rem .9rem .7rem .7rem}
@media (prefers-reduced-motion:reduce){.price-tag{transform:none}.price-tag:hover{transform:none}}

.dl-tools{display:grid;gap:.8rem;margin-bottom:var(--s3)}
.dl-search{display:grid;gap:.4rem;max-width:28rem}
.dl-search span{font:500 .72rem/1 var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.dl-list{display:grid;gap:var(--s3);padding-bottom:var(--s3)}
.dl-group{display:grid;gap:.75rem}
.dl-group h2{font-size:1.25rem}
.dl-item{display:grid;grid-template-columns:auto 1fr auto;gap:var(--s2);align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:var(--s2) var(--s3);animation:chipIn .3s ease both}
.dl-item>*{min-width:0}
.dl-ico{width:44px;height:44px;border-radius:8px;display:grid;place-items:center;background:var(--bg);border:1px solid var(--line);color:var(--accent)}
.dl-ico svg{width:22px;height:22px}
.dl-item h3{font-size:1.02rem}
.dl-meta{display:flex;flex-wrap:wrap;gap:.35rem .9rem;font:400 .78rem/1.4 var(--f-mono);color:var(--muted);margin-top:.2rem}
.dl-item p{color:var(--muted);font-size:.92rem;margin-top:.3rem}
.dl-sha{font:400 .7rem/1.4 var(--f-mono);color:var(--muted);overflow-wrap:anywhere;margin-top:.3rem}
.dl-btn{white-space:nowrap}
.dl-empty{background:var(--surface);border:1px dashed var(--line);border-radius:10px;padding:var(--s4) var(--s3);display:grid;gap:.8rem;justify-items:start;margin-bottom:var(--s3)}
.dl-empty p{color:var(--muted)}
.dl-safe{font-size:.85rem;color:var(--muted);border-left:3px solid var(--brand-y);padding-left:.8rem;margin-bottom:var(--s5)}
@keyframes chipIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media (max-width:640px){.dl-item{grid-template-columns:auto 1fr}.dl-btn{grid-column:1/-1;justify-content:center}}
@media (prefers-reduced-motion:reduce){.dl-item{animation:none}}

section.dl-group{padding-block:0}
#dl-cats button{font:500 .85rem/1 var(--f-body);color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:.5rem .85rem;cursor:pointer}
#dl-cats button[aria-pressed="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}

/* About page */
.ab-head{padding-bottom:var(--s4)}
.ab-lead{font-size:clamp(1.1rem,1.6vw,1.3rem);line-height:1.6;color:var(--ink)!important;max-width:60ch}
.ab-sec{display:grid;grid-template-columns:16rem 1fr;gap:var(--s4);padding-block:var(--s4);border-top:1px solid var(--line)}
.ab-sec>*{min-width:0}
.ab-intro{display:grid;gap:.6rem;align-content:start}
.ab-intro h2{font-size:clamp(1.4rem,2.4vw,1.9rem)}
.ab-compare{display:grid;grid-template-columns:1fr 1fr;gap:var(--s2)}
.ab-card{border-radius:10px;padding:var(--s3);display:grid;gap:.8rem;align-content:start;min-width:0}
.ab-card h3{font-size:1.1rem}
.ab-card ul{margin:0;padding:0;list-style:none;display:grid;gap:.5rem}
.ab-card li{position:relative;padding-left:1.6rem;line-height:1.45}
.ab-card p{font-size:.95rem}
.ab-before{background:transparent;border:1px dashed var(--line);color:var(--muted)}
.ab-before h3{color:var(--muted)}
.ab-before li::before{content:"✕";position:absolute;left:0;top:0;color:var(--brand-r);font-weight:700}
.ab-after{background:var(--surface);border:1px solid var(--line);border-top:4px solid var(--accent);box-shadow:0 8px 24px rgba(17,19,22,.06)}
.ab-after li::before{content:"✓";position:absolute;left:0;top:0;color:var(--led);font-weight:700}
.ab-after p{color:var(--muted)}
.ab-values{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s2)}
.ab-val{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:var(--s3);display:grid;gap:.5rem;align-content:start;min-width:0;border-top:4px solid var(--accent)}
.ab-val:nth-child(3n+2){border-top-color:var(--brand-y)}.ab-val:nth-child(3n){border-top-color:var(--brand-r)}
.ab-val h3{font-size:1.02rem}
.ab-val p{color:var(--muted);font-size:.95rem;line-height:1.5}
.ab-sec .ft-countries{margin-top:0}
.ab-note{font:500 .82rem/1.3 var(--f-mono);color:var(--accent)!important}
.ab-partners{display:grid;grid-template-columns:1fr 1fr;gap:var(--s2)}
.ab-partner{display:grid;gap:var(--s2);align-content:start;text-decoration:none;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:var(--s3);transition:transform .15s,box-shadow .15s}
.ab-partner:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(0,0,0,.1)}
.ab-plogo{background:#fff;border-radius:8px;padding:.6rem .9rem;justify-self:start;display:grid;place-items:center;height:96px}
.ab-plogo img{width:180px;height:auto;max-height:72px;object-fit:contain;display:block}
.ab-ptext{display:grid;gap:.45rem}
.ab-ptext b{font:700 1.1rem/1.25 var(--f-body)}
.ab-ptext span{color:var(--muted);font-size:.95rem;line-height:1.55}
.ab-ptext em{font-style:normal;font-weight:600;font-size:.9rem;color:var(--accent)}
@media (max-width:960px){.ab-sec{grid-template-columns:1fr;gap:var(--s3)}.ab-values{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.ab-compare,.ab-values,.ab-partners{grid-template-columns:1fr}}

.ft-countries>div{align-content:start}

/* Fuel POS page */
.fp-badges{margin-top:var(--s2);max-width:46rem}
.fp-p{font-size:1.05rem;line-height:1.65;color:var(--ink)}
.fp-y{border-top-color:var(--brand-y)!important}
.fp-vals{grid-template-columns:repeat(2,1fr)}
.fp-vals .ab-val:nth-child(3n+2),.fp-vals .ab-val:nth-child(3n){border-top-color:var(--accent)}
.fp-vals .ab-val:nth-child(2){border-top-color:var(--brand-y)}.fp-vals .ab-val:nth-child(3){border-top-color:var(--brand-r)}.fp-vals .ab-val:nth-child(4){border-top-color:var(--ink)}
.fp-clients{margin:0;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr))}
.ab-intro .ft-logo{margin-top:.4rem}
@media (max-width:640px){.fp-vals{grid-template-columns:1fr}}

/* Services page */
.fp-r{border-top-color:var(--brand-r)!important}.fp-k{border-top-color:var(--ink)!important}
.sv-index{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:var(--s2)}
.sv-index span{display:inline-flex;align-items:center;gap:.45rem;font:500 .85rem/1 var(--f-body);background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:.5rem .8rem}
.sv-index i{width:9px;height:9px;border-radius:2px;flex:none}
.ab-sec .price-tag{margin-left:12px}

.pri{white-space:nowrap}
