:root{
  --bg-deep:#000000;
  --bg-panel:#0d0d0d;
  --bg-panel-alt:#161616;
  --line:#2a2a2a;
  --line-soft:#1a1a1a;
  --text-primary:#f5f5f5;
  --text-muted:#a8a8a8;
  --text-dim:#8a8a8a;
  --ok:#f70008;
  --ok-dim:#3a0002;
  --warn:#ff3b3f;
  --info:#8a8a8a;
  --status-good:#22c55e;
  --radius:10px;
  --maxw:1180px;
  --font-display:'Open Sans', sans-serif;
  --font-body:'Open Sans', sans-serif;
  --font-mono:'IBM Plex Mono', monospace;
}
*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
body{
  background:var(--bg-deep);
  color:var(--text-primary);
  font-family:var(--font-body);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
@media (prefers-reduced-motion: reduce){
  *{animation-duration:0.001ms !important; animation-iteration-count:1 !important; transition-duration:0.001ms !important; scroll-behavior:auto !important;}
}
a{color:inherit; text-decoration:none;}
ul{list-style:none;}
img,svg{display:block; max-width:100%;}
.wrap{max-width:var(--maxw); margin:0 auto; padding:0 24px;}
h1,h2,h3{font-family:var(--font-display); font-weight:800; letter-spacing:-0.01em;}
.eyebrow{
  font-family:var(--font-mono); font-size:12px; letter-spacing:0.14em; text-transform:uppercase;
  color:var(--ok); display:inline-flex; align-items:center; gap:8px;
}
.dot{width:7px; height:7px; border-radius:50%; background:var(--ok); box-shadow:0 0 0 0 rgba(247,0,8,0.5); animation:pulse 2.2s infinite;}
.dot.warn{background:var(--warn); box-shadow:0 0 0 0 rgba(255,59,63,0.5);}
.dot.info{background:var(--info); box-shadow:0 0 0 0 rgba(138,138,138,0.5);}
.dot.good{background:var(--status-good); animation:pulse-good 2.2s infinite;}
@keyframes pulse{
  0%{box-shadow:0 0 0 0 rgba(247,0,8,0.45);}
  70%{box-shadow:0 0 0 7px rgba(247,0,8,0);}
  100%{box-shadow:0 0 0 0 rgba(247,0,8,0);}
}
@keyframes pulse-good{
  0%{box-shadow:0 0 0 0 rgba(34,197,94,0.45);}
  70%{box-shadow:0 0 0 7px rgba(34,197,94,0);}
  100%{box-shadow:0 0 0 0 rgba(34,197,94,0);}
}
:focus-visible{outline:2px solid var(--ok); outline-offset:3px;}

/* background schematic grid */
.grid-bg{
  position:fixed; inset:0; z-index:0; pointer-events:none;
  background-image:
    linear-gradient(var(--line-soft) 1px, transparent 1px),
    linear-gradient(90deg, var(--line-soft) 1px, transparent 1px);
  background-size:42px 42px;
  -webkit-mask-image:radial-gradient(ellipse 80% 60% at 50% 0%, #000 20%, transparent 75%);
  mask-image:radial-gradient(ellipse 80% 60% at 50% 0%, #000 20%, transparent 75%);
  opacity:0.5;
}

/* header */
header{
  position:sticky; top:0; z-index:50;
  background:rgba(0,0,0,0.85); backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);
}
.nav{display:flex; align-items:center; justify-content:space-between; height:72px;}
.logo{display:flex; align-items:center;}
.logo img{height:34px; width:auto; display:block;}
.logo-mark{width:28px; height:28px; border-radius:6px; background:var(--ok); display:flex; align-items:center; justify-content:center; font-family:var(--font-mono); font-size:12px; font-weight:700; color:#ffffff;}
.nav-links{display:flex; align-items:center; gap:26px; font-size:14px; color:var(--text-muted);}
.nav-links a{white-space:nowrap;}
.nav-links a:hover{color:var(--text-primary);}
.nav-cta{
  font-family:var(--font-mono); font-size:13px; font-weight:500;
  background:var(--ok); color:#ffffff; padding:10px 18px; border-radius:6px;
  transition:transform .15s ease, background .15s ease;
  white-space:nowrap;
}
.nav-cta:hover{background:#ff3b3f; transform:translateY(-1px);}
.burger{display:none; background:none; border:1px solid var(--line); border-radius:6px; width:40px; height:40px; color:var(--text-primary); font-size:18px; flex-shrink:0;}

/* nav dropdown ("Produtos") */
.nav-dropdown{position:relative; display:flex; align-items:center;}
.nav-drop-toggle{
  background:none; border:none; padding:0; cursor:pointer;
  font-family:var(--font-body); font-size:14px; color:var(--text-muted);
  display:inline-flex; align-items:center; gap:4px; white-space:nowrap;
}
.nav-drop-toggle:hover, .nav-drop-toggle:focus-visible{color:var(--text-primary);}
.nav-drop-toggle .caret{font-size:10px; transition:transform .15s ease;}
.nav-drop-menu{
  display:none; position:absolute; top:calc(100% + 18px); left:50%; transform:translateX(-50%);
  background:#000000; border:1px solid var(--line); border-radius:10px; padding:8px;
  min-width:220px; flex-direction:column; gap:2px; box-shadow:0 14px 28px rgba(0,0,0,0.5); z-index:60;
}
.nav-drop-menu a{padding:9px 12px; border-radius:6px; font-size:14px; color:var(--text-muted); white-space:nowrap;}
.nav-drop-menu a:hover{background:var(--bg-panel-alt); color:var(--text-primary);}
.nav-dropdown:hover .nav-drop-menu,
.nav-dropdown.open .nav-drop-menu{display:flex;}
.nav-dropdown:hover .nav-drop-toggle .caret,
.nav-dropdown.open .nav-drop-toggle .caret{transform:rotate(180deg);}

/* hero */
.hero{position:relative; z-index:1; padding:96px 0 64px;}
.hero::before{
  content:''; position:absolute; top:-40px; left:-80px; width:520px; height:420px;
  background:radial-gradient(circle, rgba(247,0,8,0.16) 0%, rgba(247,0,8,0) 68%);
  pointer-events:none; z-index:-1;
}
.hero-inner{max-width:760px;}
.hero h1{font-size:clamp(34px,5vw,56px); line-height:1.08; margin:18px 0 20px;}
.hero h1 span{color:var(--ok);}
.hero p.lead{font-size:18px; color:var(--text-muted); max-width:560px; margin-bottom:34px;}
.cta-row{display:flex; gap:14px; flex-wrap:wrap; margin-bottom:64px;}
.btn{
  font-family:var(--font-body); font-weight:600; font-size:15px;
  padding:14px 24px; border-radius:8px; display:inline-flex; align-items:center; gap:8px;
  transition:transform .15s ease, background .15s ease, border-color .15s ease;
}
.btn-primary{background:var(--ok); color:#ffffff;}
.btn-primary:hover{background:#ff3b3f; transform:translateY(-1px);}
.btn-ghost{border:1px solid var(--line); color:var(--text-primary);}
.btn-ghost:hover{border-color:var(--text-dim); background:var(--bg-panel);}

/* status board */
.board{
  border:1px solid var(--line); border-radius:var(--radius); background:var(--bg-panel);
  overflow:hidden;
}
.board-head{
  display:flex; align-items:center; justify-content:space-between;
  padding:14px 18px; border-bottom:1px solid var(--line);
  font-family:var(--font-mono); font-size:12px; color:var(--text-dim); letter-spacing:0.06em;
}
.board-head .status-ok{color:var(--status-good);}
.board-head .status-refresh{color:var(--text-dim); font-size:11px;}
.board-grid{display:grid; grid-template-columns:repeat(3,1fr);}
.tile{
  padding:18px 16px; border-right:1px solid var(--line); border-bottom:1px solid var(--line);
  display:flex; flex-direction:column; gap:10px; min-height:96px; justify-content:center;
}
.tile:nth-child(3n){border-right:none;}
.tile .name{font-size:13px; font-weight:500;}
.tile .stat{font-family:var(--font-mono); font-size:11px; color:var(--text-dim); display:flex; align-items:center; gap:6px;}

#diferenciais, #sobre{background:var(--bg-panel); border-top:1px solid var(--line-soft); border-bottom:1px solid var(--line-soft);}

/* section shell */
section{position:relative; z-index:1; padding:88px 0;}
.section-head{max-width:620px; margin-bottom:48px;}
.section-head h2{font-size:clamp(26px,3.4vw,38px); margin-top:14px;}
.section-head p{color:var(--text-muted); margin-top:14px; font-size:16px;}

/* services */
.service-group{margin-bottom:44px;}
.service-group:last-child{margin-bottom:0;}
.group-label{
  font-family:var(--font-mono); font-size:12px; letter-spacing:0.1em; text-transform:uppercase;
  color:var(--text-dim); display:flex; align-items:center; gap:10px; margin-bottom:16px;
}
.group-label::after{content:''; flex:1; height:1px; background:var(--line-soft);}
.services-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--bg-deep); border:1px solid var(--line); border-radius:var(--radius); overflow:hidden;}
.service{background:var(--bg-panel); padding:30px 26px; display:flex; flex-direction:column; gap:14px; transition:background .15s ease, transform .18s ease, box-shadow .18s ease; border:1px solid var(--line);}
.service:hover{background:var(--bg-panel-alt); transform:translateY(-4px); box-shadow:0 14px 28px rgba(0,0,0,0.45); position:relative; z-index:2;}
.service .icn{width:38px; height:38px; border-radius:8px; background:var(--bg-panel-alt); border:1px solid var(--line); display:flex; align-items:center; justify-content:center; font-family:var(--font-mono); font-size:13px; color:var(--ok);}
.service h3{font-size:17px; font-weight:600;}
.service p{font-size:14px; color:var(--text-muted);}
.service .tag{font-family:var(--font-mono); font-size:10px; letter-spacing:0.08em; text-transform:uppercase; color:var(--text-dim); margin-top:auto; padding-top:8px; border-top:1px dashed var(--line-soft);}

/* xFusion partner section */
.xf-cards{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}
.xf-card{border:1px solid var(--line); border-radius:var(--radius); background:var(--bg-panel); padding:24px 20px; transition:background .15s ease, transform .18s ease, box-shadow .18s ease;}
.xf-card:hover{background:var(--bg-panel-alt); transform:translateY(-4px); box-shadow:0 14px 28px rgba(0,0,0,0.45);}
.xf-card h4{font-family:var(--font-mono); font-size:15px; color:var(--ok); margin-bottom:8px;}
.xf-card .xf-tag{display:block; font-size:12px; font-weight:600; color:var(--text-primary); margin-bottom:10px;}
.xf-card p{font-size:13px; color:var(--text-muted); margin:0;}

.xf-tiers{display:grid; grid-template-columns:repeat(4,1fr); gap:20px;}
.xf-tier{border:1px solid var(--line); border-radius:var(--radius); background:var(--bg-panel); padding:22px 20px; display:flex; flex-direction:column; gap:10px;}
.xf-tier-head{display:flex; flex-direction:column; gap:4px;}
.xf-tier-name{font-size:16px; font-weight:700;}
.xf-tier-alt{font-family:var(--font-mono); font-size:11px; color:var(--text-dim);}
.xf-tier-sub{font-family:var(--font-mono); font-size:11px; color:var(--ok); text-transform:uppercase; letter-spacing:0.04em;}
.xf-tier p{font-size:13px; color:var(--text-muted); flex:1; margin:0;}
.xf-tier-gpu{font-family:var(--font-mono); font-size:11px; color:var(--text-dim); padding-top:10px; border-top:1px dashed var(--line-soft);}
.xf-tier-gpu strong{display:block; margin-top:2px; font-size:18px; color:var(--text-primary);}

.xf-features{display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:40px;}
.xf-feature{border:1px solid var(--line); border-radius:var(--radius); background:var(--bg-panel); padding:24px; display:flex; gap:16px; align-items:flex-start;}
.xf-feature .icn{flex-shrink:0;}
.xf-feature h4{font-size:15px; margin-bottom:6px;}
.xf-feature p{font-size:13px; color:var(--text-muted); margin:0;}

@media (max-width:960px){
  .xf-cards{grid-template-columns:repeat(2,1fr);}
  .xf-tiers{grid-template-columns:repeat(2,1fr);}
  .xf-features{grid-template-columns:1fr;}
}
@media (max-width:640px){
  .xf-cards{grid-template-columns:1fr;}
  .xf-tiers{grid-template-columns:1fr;}
}

/* differentiators */
.diff-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:24px;}
.diff{padding:2px;}
.diff .num{font-family:var(--font-mono); font-size:12px; color:var(--ok); margin-bottom:14px; display:block;}
.diff h3{font-size:17px; margin-bottom:10px;}
.diff p{font-size:14px; color:var(--text-muted);}

/* process / como funciona */
.process-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:0; border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; background:var(--bg-deep);}
.process-step{background:var(--bg-panel); padding:28px 24px; position:relative; border-right:1px solid var(--line);}
.process-step:last-child{border-right:none;}
.process-step::after{
  content:'→'; position:absolute; right:-13px; top:50%; transform:translateY(-50%);
  width:26px; height:26px; border-radius:50%; background:var(--bg-deep); border:1px solid var(--line);
  display:flex; align-items:center; justify-content:center; font-size:12px; color:var(--text-dim); z-index:2;
}
.process-step:last-child::after{content:none;}
.process-step .num{font-family:var(--font-mono); font-size:12px; color:var(--ok); display:block; margin-bottom:12px;}
.process-step h3{font-size:16px; margin-bottom:8px;}
.process-step p{font-size:13px; color:var(--text-muted);}

/* certifications */
.cert-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:28px;}
.cert-card{display:flex; gap:18px; align-items:flex-start; padding:22px; border:1px solid var(--line); border-radius:var(--radius); background:var(--bg-panel); transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;}
.cert-card:hover{transform:translateY(-4px); box-shadow:0 14px 28px rgba(0,0,0,0.45); border-color:var(--text-dim);}
.cert-badge{
  flex-shrink:0; width:84px; height:104px;
  background:linear-gradient(165deg, #0a3d3a 0%, #14b8a6 100%);
  clip-path:polygon(0 0, 100% 0, 100% 78%, 50% 100%, 0 78%);
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  color:#fff; text-align:center; padding:10px 6px 18px;
}
.cert-badge.blue{background:linear-gradient(165deg, #0b2545 0%, #2f6fed 100%);}
.cert-badge .nse{font-family:var(--font-display); font-weight:800; font-size:15px; line-height:1.1;}
.cert-badge .certified{font-size:8px; letter-spacing:0.06em; text-transform:uppercase; opacity:0.85; margin-top:2px;}
.cert-badge .rule{width:28px; height:1px; background:rgba(255,255,255,0.4); margin:6px 0;}
.cert-badge .fortinet{font-family:var(--font-mono); font-size:7px; letter-spacing:0.05em; text-transform:uppercase; opacity:0.9;}
.cert-text h3{font-size:16px; margin-bottom:8px;}
.cert-text p{font-size:13px; color:var(--text-muted); margin:0;}
.cert-text p b{color:var(--text-primary); font-weight:600;}

/* partners strip */
.partners-strip{
  margin-top:48px; padding-top:36px; border-top:1px solid var(--line-soft);
  display:flex; flex-direction:column; align-items:flex-start; gap:18px;
}
.partners-label{
  font-family:var(--font-mono); font-size:11px; letter-spacing:0.12em; text-transform:uppercase;
  color:var(--text-dim); flex-shrink:0;
}
.partners-row{display:flex; flex-wrap:wrap; align-items:stretch; gap:0; width:100%;}
.partner-item{display:flex; align-items:center; justify-content:center; height:52px; padding:0 22px; border-left:1px solid var(--line-soft);}
.partner-item:first-child{border-left:none; padding-left:0;}
.partner-item a{display:flex; align-items:center; justify-content:center; width:100%; height:100%; text-decoration:none; color:inherit;}
.partner-logo{height:28px; width:auto; display:block; opacity:0.92; transition:opacity .15s ease, transform .15s ease;}
.partner-logo.veeam-logo{height:40px;}
.partner-logo:hover{opacity:1; transform:translateY(-1px);}
.partner-name{
  font-family:var(--font-display); font-weight:800; font-size:20px; letter-spacing:0.01em;
  color:var(--text-muted); opacity:0.85; transition:opacity .15s ease;
}
.partner-name:hover{opacity:1;}
.partner-name.dell{color:#0672c9;}

/* about */
.about{display:grid; grid-template-columns:1.1fr 0.9fr; gap:56px; align-items:start;}
.about p{color:var(--text-muted); font-size:16px; margin-bottom:16px;}
.badge-row{display:flex; flex-wrap:wrap; gap:10px; margin-top:22px;}
.badge{font-family:var(--font-mono); font-size:11px; letter-spacing:0.04em; border:1px solid var(--line); color:var(--text-muted); padding:7px 12px; border-radius:20px; background:var(--bg-panel);}
.locpanel{border:1px solid var(--line); border-radius:var(--radius); background:var(--bg-panel); padding:28px;}
.locpanel .eyebrow{margin-bottom:16px;}
.locpanel .loc-line{display:flex; justify-content:space-between; font-size:13px; padding:10px 0; border-bottom:1px solid var(--line-soft); color:var(--text-muted);}
.locpanel .loc-line b{color:var(--text-primary); font-weight:500;}
.locpanel .loc-line:last-child{border-bottom:none;}

/* cta band */
.cta-band{
  border:1px solid var(--line); border-radius:var(--radius);
  background:linear-gradient(135deg, var(--bg-panel), var(--bg-panel-alt));
  padding:56px; display:flex; align-items:center; justify-content:space-between; gap:32px; flex-wrap:wrap;
}
.cta-band h2{font-size:clamp(22px,3vw,30px); max-width:480px;}
.cta-band p{color:var(--text-muted); margin-top:10px; max-width:480px;}

/* footer */
footer{position:relative; z-index:1; border-top:1px solid var(--line); padding:48px 0 32px;}
.foot-grid{display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:40px; margin-bottom:36px;}
.foot-grid h4{font-size:13px; letter-spacing:0.04em; text-transform:uppercase; color:var(--text-dim); margin-bottom:16px; font-family:var(--font-mono); font-weight:500;}
.foot-grid li{margin-bottom:10px; font-size:14px; color:var(--text-muted);}
.foot-grid li a:hover{color:var(--text-primary);}
.foot-bottom{display:flex; justify-content:space-between; padding-top:24px; border-top:1px solid var(--line-soft); font-size:12px; color:var(--text-dim); flex-wrap:wrap; gap:10px;}

/* ---------- blog listing ---------- */
.page-hero{position:relative; z-index:1; padding:72px 0 24px;}
.page-hero .hero-inner{max-width:720px;}
.page-hero h1{font-size:clamp(30px,4.4vw,46px); line-height:1.1; margin:16px 0 16px;}
.page-hero p.lead{font-size:17px; color:var(--text-muted); max-width:600px;}

.blog-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
.blog-card{background:var(--bg-panel); border:1px solid var(--line); border-radius:var(--radius); padding:26px; display:flex; flex-direction:column; gap:12px; transition:background .15s ease, transform .18s ease, box-shadow .18s ease;}
.blog-card:hover{background:var(--bg-panel-alt); transform:translateY(-4px); box-shadow:0 14px 28px rgba(0,0,0,0.45);}
.blog-card .icn{width:38px; height:38px; border-radius:8px; background:var(--bg-panel-alt); border:1px solid var(--line); display:flex; align-items:center; justify-content:center; font-family:var(--font-mono); font-size:13px; color:var(--ok);}
.blog-card .cat{font-family:var(--font-mono); font-size:10px; letter-spacing:0.08em; text-transform:uppercase; color:var(--text-dim);}
.blog-card h3{font-size:17px; font-weight:600; line-height:1.3;}
.blog-card p{font-size:14px; color:var(--text-muted); flex:1;}
.blog-card .meta{font-family:var(--font-mono); font-size:11px; color:var(--text-dim); display:flex; gap:14px; padding-top:10px; border-top:1px dashed var(--line-soft);}

/* ---------- article ---------- */
.breadcrumb{font-family:var(--font-mono); font-size:12px; color:var(--text-dim); margin-bottom:18px;}
.breadcrumb a:hover{color:var(--text-primary);}
.article-shell{padding:56px 0 0;}
.article-head{max-width:760px; margin:0 auto 40px;}
.article-head h1{font-size:clamp(28px,4vw,42px); line-height:1.15; margin:16px 0 18px;}
.article-meta{font-family:var(--font-mono); font-size:12px; color:var(--text-dim); display:flex; gap:18px; flex-wrap:wrap;}
.article{max-width:760px; margin:0 auto; padding-bottom:24px;}
.article h2{font-size:24px; margin:40px 0 16px;}
.article h3{font-size:18px; margin:28px 0 12px;}
.article p{font-size:16px; color:var(--text-muted); margin-bottom:16px;}
.article ul, .article ol{margin:0 0 20px 22px; color:var(--text-muted); font-size:16px;}
.article ul{list-style:disc;}
.article ol{list-style:decimal;}
.article li{margin-bottom:8px;}
.article li::marker{color:var(--ok);}
.article strong{color:var(--text-primary);}
.article a.inline-link{color:var(--ok); text-decoration:underline; text-underline-offset:2px;}
.article pre{background:var(--bg-panel); border:1px solid var(--line); border-radius:8px; padding:16px 18px; overflow-x:auto; font-family:var(--font-mono); font-size:13px; color:var(--text-primary); margin:20px 0; line-height:1.5;}
.article code{font-family:var(--font-mono); font-size:0.92em; background:var(--bg-panel); padding:2px 6px; border-radius:4px; border:1px solid var(--line);}
.article pre code{background:none; border:none; padding:0;}
.callout{border-left:3px solid var(--ok); background:var(--bg-panel); padding:18px 20px; border-radius:0 8px 8px 0; margin:28px 0;}
.callout .callout-label{font-family:var(--font-mono); font-size:11px; letter-spacing:0.08em; text-transform:uppercase; color:var(--ok); display:block; margin-bottom:8px;}
.callout p{margin-bottom:0; color:var(--text-muted); font-size:15px;}
.article table{width:100%; border-collapse:collapse; margin:24px 0; font-size:14px;}
.article th,.article td{border:1px solid var(--line); padding:10px 14px; text-align:left;}
.article th{background:var(--bg-panel); font-family:var(--font-mono); font-size:11px; text-transform:uppercase; color:var(--text-dim); letter-spacing:0.04em;}
.article td{color:var(--text-muted);}
.tag-row{display:flex; gap:8px; flex-wrap:wrap; margin:28px 0 0;}
.tag-chip{font-family:var(--font-mono); font-size:11px; color:var(--text-dim); border:1px solid var(--line); padding:6px 12px; border-radius:20px;}

.article-cta{border:1px solid var(--line); border-radius:var(--radius); background:linear-gradient(135deg, var(--bg-panel), var(--bg-panel-alt)); padding:32px; margin:48px 0; display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap;}
.article-cta h3{font-size:19px; margin-bottom:6px;}
.article-cta p{color:var(--text-muted); font-size:14px; margin:0;}

.related{max-width:760px; margin:0 auto; padding:32px 0 64px;}
.related h4{font-family:var(--font-mono); font-size:12px; letter-spacing:0.1em; text-transform:uppercase; color:var(--text-dim); margin-bottom:18px;}
.related-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:18px;}
.related-card{border:1px solid var(--line); border-radius:var(--radius); background:var(--bg-panel); padding:20px; transition:background .15s ease, transform .18s ease;}
.related-card:hover{background:var(--bg-panel-alt); transform:translateY(-3px);}
.related-card .cat{font-family:var(--font-mono); font-size:10px; letter-spacing:0.06em; text-transform:uppercase; color:var(--text-dim);}
.related-card h5{font-size:15px; margin-top:8px; font-weight:600;}

@media (max-width:960px){
  .cert-grid{grid-template-columns:1fr;}
  .board-grid{grid-template-columns:repeat(2,1fr);}
  .tile:nth-child(3n){border-right:1px solid var(--line);}
  .tile:nth-child(2n){border-right:none;}
  .services-grid{grid-template-columns:repeat(2,1fr);}
  .diff-grid{grid-template-columns:repeat(2,1fr);}
  .process-grid{grid-template-columns:repeat(2,1fr);}
  .process-step{border-bottom:1px solid var(--line);}
  .process-step::after{content:none;}
  .about{grid-template-columns:1fr;}
  .foot-grid{grid-template-columns:1fr 1fr;}
  .blog-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:640px){
  .partners-strip{flex-direction:column; align-items:flex-start;}
  .partners-label{margin-right:0; margin-bottom:8px;}
  .partner-item{padding:10px 20px; border-left:1px solid var(--line-soft); height:auto;}
  .partner-item:first-child{border-left:1px solid var(--line-soft); padding-left:20px;}
  .board-grid{grid-template-columns:repeat(2,1fr);}
  .services-grid{grid-template-columns:1fr;}
  .diff-grid{grid-template-columns:1fr;}
  .process-grid{grid-template-columns:1fr;}
  .foot-grid{grid-template-columns:1fr;}
  .cta-band{padding:32px;}
  .cta-band > .btn{width:100%; justify-content:center;}
  .blog-grid{grid-template-columns:1fr;}
  .related-grid{grid-template-columns:1fr;}
  .article-cta{padding:24px;}
  .article-cta > .btn{width:100%; justify-content:center;}
}

/* nav switches to the burger/dropdown layout before items run out of room
   (8 links + logo + CTA button no longer fit on one line around ~950px) */
@media (max-width:1000px){
  .nav-links{display:none; align-items:stretch;}
  .burger{display:block;}
  .nav-links > a{text-align:left;}
  .nav-dropdown{width:100%; flex-direction:column; align-items:flex-start;}
  .nav-drop-toggle{width:100%; justify-content:space-between; padding:4px 0;}
  .nav-drop-menu{position:static; transform:none; width:100%; box-shadow:none; border:none; background:transparent; padding:0 0 4px 14px; margin-top:4px; min-width:0;}
  .nav-drop-menu a{padding:8px 0;}
}
