/* ─────────────────────────────────────────────────────────────
   APERTURE / GLOBAL
   ───────────────────────────────────────────────────────────── */

/* Global content width cap (forced for DNN skins) */
.aperture-content-pane{
  margin:0 auto !important;
  max-width:1400px !important;
  padding:0 0rem !important;
  width:100% !important;
}

/* Site background */
body{ background-color:#0c1320 !important; }

/* ─────────────────────────────────────────────────────────────
   TYPOGRAPHY
   - p, li share "lead" sizing by default
   - lightweight utilities for overrides
   ───────────────────────────────────────────────────────────── */

body p,
body li,
body p.lead,
body .lead{
  font-size:1.25rem;   /* ~20px */
  line-height:1.9;
}

/* Utilities */
.text-lead{            /* apply lead sizing to any element */
  font-size:1.25rem;
  line-height:1.9;
}
.lead-block p,
.lead-block li{        /* bump p & li within a wrapper */
  font-size:1.25rem;
  line-height:1.9;
}

/* Headings — sizes only (weights come from theme) */
body h1{ font-size:clamp(2.2rem,2.2vw + 1.3rem,2.8rem) !important; line-height:1.15; }
body h2{ font-size:clamp(1.4rem,0.9vw + 1rem,1.9rem) !important;  line-height:1.25; margin:1.6em 0 .6em; }
body h3{ font-size:1.125rem; line-height:1.3; }
body h4{ font-size:1.0625rem; line-height:1.3; }

/* ─────────────────────────────────────────────────────────────
   BUTTONS / MISC (Existing)
   ───────────────────────────────────────────────────────────── */

.text-right.form-col-3.form-label.control-label.af-slide{
  color:#fff;
  font-size:18px;
  font-weight:bold;
  text-align:left;
}

/* Primary action button example */
#dnn451SendNow.btn{
  background:linear-gradient(135deg,#00a6d6,#19c6ff);
  color:#fff;
  border:none;
  border-radius:8px;
  padding:12px 28px;
  font-weight:800;
  font-size:1rem;
  text-transform:uppercase;
  letter-spacing:.5px;
  cursor:pointer;
  display:inline-block;
  box-shadow:0 6px 16px rgba(0,0,0,.3);
  transition:background .25s ease, transform .2s ease, box-shadow .25s ease;
}
#dnn451SendNow.btn:hover{
  background:linear-gradient(135deg,#008fb8,#17b0eb);
  transform:translateY(-2px);
  box-shadow:0 10px 24px rgba(0,0,0,.35);
}
#dnn451SendNow.btn:active{
  transform:translateY(0);
  box-shadow:0 4px 12px rgba(0,0,0,.25);
}
#dnn451SendNow.btn:disabled{
  background:#555;
  color:#ccc;
  cursor:not-allowed;
  box-shadow:none;
  opacity:.6;
}

/* ─────────────────────────────────────────────────────────────
   ACTIVE FORUMS — What’s New (FULL-WIDTH + HERO-MATCHED GRID)
   - Edge-to-edge section, no side padding
   - Grid overlay exactly like your Senior IT Support hero
   - 1400px centered inner grid
   - 1.25rem lead-sized links
   ───────────────────────────────────────────────────────────── */

.ModActiveForumsWhatsNewC{
  --bg:#0c1320; 
  --ink:#e8edf4; 
  --muted:#a9b5c5; 
  --ring:#22314c;
  --blue:#00bfff;

  position:relative;
  color:var(--ink);
  background:var(--bg);

  /* Full-bleed: escape any site container */
  width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  padding-left:0 !important;
  padding-right:0 !important;
  overflow:hidden; /* hide grid edge bleed */
}

/* HERO-style grid overlay (copied to match saas-banner) */
.ModActiveForumsWhatsNewC::before{
  content:"";
  position:absolute; inset:0;
  background:
    /* same fade */
    linear-gradient(transparent 60%, rgba(10,16,28,.55)),
    /* same 28px grid density */
    repeating-linear-gradient(0deg,  rgba(255,255,255,.04) 0 1px, transparent 1px 28px),
    repeating-linear-gradient(90deg, rgba(255,255,255,.04) 0 1px, transparent 1px 28px);
  /* same mask fade */
  mask-image: linear-gradient(to bottom, rgba(0,0,0,.85), rgba(0,0,0,.15));
  pointer-events:none;
  z-index:0;
}

/* Inner grid container (centered, capped) */
.ModActiveForumsWhatsNewC > div{
  position:relative; z-index:1;       /* above grid overlay */
  display:grid;
  grid-template-columns:repeat(3, minmax(300px,1fr));
  gap:18px 44px;
  padding:22px 0 18px !important;     /* no side padding */
  max-width:1400px;
  margin:0 auto;                       /* center content */
  align-items:start;
}

@media (max-width:1200px){
  .ModActiveForumsWhatsNewC > div{
    grid-template-columns:repeat(2, minmax(280px,1fr));
    gap:16px 32px;
  }
}
@media (max-width:640px){
  .ModActiveForumsWhatsNewC > div{
    grid-template-columns:1fr;
    gap:12px 20px;
    padding:18px 0 !important;
  }
}

/* Items */
.ModActiveForumsWhatsNewC .Normal{ margin:0 !important; padding:0 !important; }

/* Link rows — full width, lead size 1.25rem */
.ModActiveForumsWhatsNewC .Normal a{
  position:relative;
  display:flex; gap:12px; align-items:flex-start;
  padding:12px 14px; border-radius:10px;
  color:var(--blue); text-decoration:none;

  font-size:1.25rem;            /* requested */
  line-height:1.6;
  font-weight:400;

  width:100%; max-width:none;
  transition:background .18s ease, box-shadow .18s ease, text-decoration-color .18s ease;
}

/* Tiny bullet */
.ModActiveForumsWhatsNewC .Normal a::before{
  content:""; flex:0 0 7px; height:7px;
  margin-top:.55em; border-radius:50%;
  background:currentColor; opacity:.95;
}

/* Soft dotted rule under each row */
.ModActiveForumsWhatsNewC .Normal a::after{
  content:""; position:absolute; left:20px; right:12px; bottom:-8px; height:1px;
  border-bottom:1px dotted rgba(255,255,255,.08);
}

/* Hover / focus */
.ModActiveForumsWhatsNewC .Normal a:hover{
  background:linear-gradient(0deg, rgba(0,191,255,.10), rgba(0,191,255,.10));
  text-decoration:underline; text-underline-offset:2px;
}
.ModActiveForumsWhatsNewC .Normal a:focus{
  outline:none;
  box-shadow:0 0 0 3px rgba(0,191,255,.22);
  background:linear-gradient(0deg, rgba(0,191,255,.10), rgba(0,191,255,.10));
}

/* Hide trailing rule on last row (responsive) */
@media (min-width:641px){
  .ModActiveForumsWhatsNewC .Normal:nth-last-child(-n+3) a::after{ display:none; }
}
@media (max-width:1200px) and (min-width:641px){
  .ModActiveForumsWhatsNewC .Normal:nth-last-child(-n+2) a::after{ display:none; }
}
@media (max-width:640px){
  .ModActiveForumsWhatsNewC .Normal:last-child a::after{ display:none; }
}

/* RSS Subscribe link (edge-to-edge; right aligned) */
.ModActiveForumsWhatsNewC a[href*="feeds.aspx"]{
  grid-column:1 / -1;
  display:inline-flex; align-items:center; gap:10px;
  justify-content:flex-end;
  color:var(--blue); text-decoration:none; font-weight:700;
  padding:8px 0 2px;
}
.ModActiveForumsWhatsNewC a[href*="feeds.aspx"] img{ display:none !important; }
.ModActiveForumsWhatsNewC a[href*="feeds.aspx"]::before{
  content:""; width:14px; height:14px; background:currentColor; display:inline-block;
  -webkit-mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="black" d="M6 17a2 2 0 1 1-4.001.001A2 2 0 0 1 6 17Zm-4-7v3a8 8 0 0 1 8 8h3c0-6.075-4.925-11-11-11Zm0-5v3c9.389 0 17 7.611 17 17h3C22 8.85 13.15 0 2 0Z"/></svg>') no-repeat center/contain;
          mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="black" d="M6 17a2 2 0 1 1-4.001.001A2 2 0 0 1 6 17Zm-4-7v3a8 8 0 0 1 8 8h3c0-6.075-4.925-11-11-11Zm0-5v3c9.389 0 17 7.611 17 17h3C22 8.85 13.15 0 2 0Z"/></svg>') no-repeat center/contain;
}
.ModActiveForumsWhatsNewC a[href*="feeds.aspx"]::after{ content:"Subscribe"; letter-spacing:.2px; }
.ModActiveForumsWhatsNewC a[href*="feeds.aspx"]:hover{ text-decoration:underline; }

/* Motion safety */
@media (prefers-reduced-motion:reduce){
  .ModActiveForumsWhatsNewC *{ transition:none !important; animation:none !important; }
}


/* ─────────────────────────────────────────────────────────────
   BREADCRUMBS (AZMI)
   ───────────────────────────────────────────────────────────── */

body .azmi-bc-block{ margin:10px 0 18px; }

body .azmi-bc{
  font:600 13px/1.65 system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  display:flex; flex-wrap:wrap; align-items:center;
  color:var(--muted, #cfd7e3);
  gap:0;
}

/* link states (hardened to resist skin overrides) */
body .azmi-bc a,
body .azmi-bc a:link,
body .azmi-bc a:visited{
  color:var(--link, #66bfff);
  text-decoration:none;
  border-radius:8px;
  padding:3px 8px;
  transition:background-color .18s ease, color .18s ease, box-shadow .18s ease;
}
body .azmi-bc a:hover{ background:var(--hover, #16233a); }
body .azmi-bc a:focus-visible{ outline:2px solid #9ad9ff; outline-offset:2px; }

/* current */
body .azmi-bc .current{
  color:var(--ink, #e8edf4);
  padding:3px 8px;
  font-weight:700;
}

/* separators */
body .azmi-bc .sep{
  margin:0 10px;
  color:#8ea6c4;
  opacity:1;
  user-select:none;
  transform:translateY(-.5px);
}

/* optional pill on hover */
@media (hover:hover){
  body .azmi-bc a:hover{ box-shadow:inset 0 0 0 1px rgba(154,217,255,.25); }
}

/* long path scrollbar */
@media (max-width:860px){
  body .azmi-bc{
    flex-wrap:nowrap;
    overflow-x:auto;
    white-space:nowrap;
    scrollbar-width:thin;
    padding-bottom:2px;
    mask-image:linear-gradient(90deg, transparent 0, #000 16px, #000 calc(100% - 16px), transparent 100%);
  }
}

/* tiny home icon (pure CSS) */
body .azmi-bc a:first-of-type{ position:relative; padding-left:22px; }
body .azmi-bc a:first-of-type::before{
  content:"";
  position:absolute; left:8px; top:50%; width:10px; height:10px; transform:translateY(-50%);
  background:currentColor;
  -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M12 3 2 12h3v8h6v-5h2v5h6v-8h3z'/></svg>") no-repeat center/contain;
          mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='black' d='M12 3 2 12h3v8h6v-5h2v5h6v-8h3z'/></svg>") no-repeat center/contain;
}

/* ─────────────────────────────────────────────────────────────
   BUSINESS CONTINUITY — HERO (matches infra-hero)
   ───────────────────────────────────────────────────────────── */

body .bc-hero{
  --bg:#0c1320; --ring:#22314c; --ink:#e8edf4; --muted:#a9b5c5; --yellow:#ffd700; --card:#0f1726;
  position:relative; color:var(--ink);
  background:radial-gradient(1100px 70% at 15% -10%, #16243d 0%, #0f182b 55%, var(--bg) 100%);
  border-bottom:1px solid var(--ring);
  padding:56px 0 64px;
  overflow:hidden; min-height:320px;
}
body .bc-hero::before{
  content:""; position:absolute; inset:0;
  background:
    linear-gradient(transparent 60%, rgba(10,16,28,.55)),
    repeating-linear-gradient(0deg, rgba(255,255,255,.04) 0 1px, transparent 1px 28px),
    repeating-linear-gradient(90deg, rgba(255,255,255,.04) 0 1px, transparent 1px 28px);
  mask-image:linear-gradient(to bottom, rgba(0,0,0,.85), rgba(0,0,0,.15));
  pointer-events:none; z-index:0;
}

/* layout */
body .bc-hero .grid{
  display:grid; gap:28px; grid-template-columns:1.2fr .8fr; align-items:center;
  position:relative; z-index:1;
}
@media (max-width:960px){
  body .bc-hero .grid{ grid-template-columns:1fr; }
}

/* text cosmetics only */
body .bc-hero .eyebrow{
  display:inline-block; padding:6px 10px; border:1px solid var(--ring); border-radius:999px;
  background:#0b1424; color:var(--muted); margin:0 0 10px 0; text-transform:uppercase;
}
body .bc-hero h1{ color:var(--yellow); margin:.15rem 0 .35rem; }
body .bc-hero h5{ margin:0 0 .6rem; color:#fff; }
body .bc-hero p.lead{ margin:0; color:var(--muted); max-width:62ch; }

/* buttons */
body .bc-hero .cta{ display:flex; gap:10px; flex-wrap:wrap; margin-top:16px; }
body .bc-hero .btn{
  display:inline-block; padding:10px 14px; border-radius:12px; text-decoration:none;
  border:1px solid #395083; background:#1a2a48; color:#fff;
}
body .bc-hero .btn:hover{ filter:brightness(1.07); }
body .bc-hero .btn-outline{ background:transparent; color:var(--ink); }
body .bc-hero .btn-outline:hover{ background:#0e1a2d; }

/* video frame + controls */
body .bc-hero .va-frame{
  --frame-h:clamp(360px, 42vh, 460px);
  position:relative; width:100%; max-width:560px; height:var(--frame-h);
  border-radius:14px; overflow:hidden; background:var(--card);
  border:1px solid var(--ring); box-shadow:0 8px 20px rgba(0,0,0,.26);
  filter:drop-shadow(0 6px 14px rgba(0,0,0,.22));
}
body .bc-hero .va-frame video{
  width:100%; height:100%; object-fit:cover; display:block; background:#0a1220;
}
body .bc-hero .va-frame:before,
body .bc-hero .va-frame:after{
  content:""; position:absolute; width:18px; height:18px; border:2px solid #6fb8ff; opacity:.45;
}
body .bc-hero .va-frame:before{ left:10px; top:10px; border-right:none; border-bottom:none; border-radius:4px 0 0 0; }
body .bc-hero .va-frame:after{ right:10px; bottom:10px; border-left:none; border-top:none; border-radius:0 0 4px 0; }

body .bc-hero .va-overlay{
  position:absolute; inset:0; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(to bottom, rgba(2,6,23,.35), rgba(2,6,23,.55)); z-index:3;
}
body .bc-hero .va-cta{
  appearance:none; border:1px solid #395083; border-radius:12px; padding:12px 16px 12px 14px;
  background:#1a2a48; color:#fff; cursor:pointer; display:flex; align-items:center; gap:10px;
}
body .bc-hero .va-cta:hover{ filter:brightness(1.07); }
body .bc-hero .va-ctrls{ position:absolute; right:10px; bottom:42px; display:flex; gap:8px; z-index:3; }
body .bc-hero .va-btn{
  appearance:none; border:1px solid #395083; border-radius:10px; padding:8px 10px;
  background:rgba(26,42,72,.85); color:#fff; cursor:pointer; line-height:1; backdrop-filter:blur(4px);
}
body .bc-hero .va-btn:hover{ background:rgba(26,42,72,1); }
body .bc-hero .va-badge{
  position:absolute; left:10px; top:10px; background:rgba(32,114,196,.95); color:#fff; padding:6px 10px; border-radius:9999px; z-index:3;
}

body .bc-hero .va-timeline{
  position:absolute; left:0; right:0; bottom:0; display:flex; align-items:center; gap:10px; padding:10px 12px; z-index:3;
  background:linear-gradient(180deg, rgba(10,16,28,0) 0%, rgba(10,16,28,.55) 40%, rgba(10,16,28,.75) 100%); backdrop-filter:blur(2px);
}
body .bc-hero .va-time{ color:#dbeafe; white-space:nowrap; }
body .bc-hero .va-seek{
  -webkit-appearance:none; appearance:none; width:100%; height:8px; border-radius:9999px; background:rgba(57,80,131,.35);
  outline:none; cursor:pointer;
}
body .bc-hero .va-seek::-webkit-slider-thumb{
  -webkit-appearance:none; appearance:none; width:16px; height:16px; border-radius:50%;
  background:#ffd700; border:2px solid #1a2a48; box-shadow:0 0 0 2px rgba(0,0,0,.25);
}
body .bc-hero .va-seek::-moz-range-thumb{
  width:16px; height:16px; border-radius:50%; background:#ffd700; border:2px solid #1a2a48;
}

/* background word */
body .bc-hero .bg-word{
  position:absolute; inset:auto 0 -14px 0; text-align:center; z-index:0;
  color:transparent; -webkit-text-stroke:2px rgba(255,255,255,.05); opacity:.7; pointer-events:none; user-select:none;
}

/* mobile adjustments */
@media (max-width:768px){
  body .bc-hero .grid{ row-gap:20px; }
  body .bc-hero .cta{ justify-content:center; }
  body .bc-hero .va-frame{ height:auto; aspect-ratio:16/9; max-width:720px; margin:0 auto; }
}

/* accessibility hook (parity with infra-hero) */
@media (prefers-reduced-motion:reduce){
  /* no animations here, but reserved for future */
}

/* ===== AZ Tabs — square, yellow active ===== */
body .az-tablist{
  position:relative;
  display:flex; gap:6px; align-items:flex-end;
  border-bottom:1px solid var(--ring, #22314c);
  overflow:auto; -webkit-overflow-scrolling:touch;
  padding-bottom:6px; margin:0 0 14px;
  list-style:none;
}

/* tabs */
body .az-tab{
  display:inline-block;
  padding:10px 14px;
  border:1px solid var(--ring, #22314c);
  border-bottom:none;                 /* sits on the rule above */
  background:#0b1424;
  color:#cfe2ff;
  text-decoration:none;
  line-height:1.25;
  white-space:nowrap;
  border-radius:0;                     /* <- no rounded corners */
  transition:filter .18s ease, background .18s ease, color .18s ease, border-color .18s ease;
}
@media (hover:hover){
  body .az-tab:hover{ filter:brightness(1.06); }
}
body .az-tab:focus-visible{ outline:2px solid #9ad9ff; outline-offset:2px; }

/* active tab — solid yellow and visually connected to panel */
body .az-tab[aria-selected="true"]{
  background:var(--yellow, #ffd700);
  color:#0c1320;
  font-weight:800;
  border-color:#e6c400;
  border-bottom-color:#0f182b;        /* matches panel bg to “merge” edge */
  margin-bottom:-1px;                  /* pull down to touch panel */
}

/* hide inkbar since active tab is solid */
body .az-inkbar{ display:none; }

/* panels */
body .az-panel{
  border:1px solid var(--ring, #22314c);
  padding:16px;
  background:#0f182b;
  color:var(--ink, #e8edf4);
  border-radius:0;                     /* <- square panel */
  box-shadow:none;                     /* optional: remove shadow for a flat look */
}
body .az-panel[hidden]{ display:none !important; }

/* === BCP gallery (tabs panel) === */
.bcp-gallery{
  position:relative; width:100%; max-width:560px; aspect-ratio:16/10;
  overflow:hidden; border:1px solid var(--ring,#22314c);
  background:#0b1628; isolation:isolate; box-shadow:0 6px 15px rgba(0,91,153,.28);
}
.bcp-gallery img{
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover;
  opacity:0; transition:opacity .6s ease-in-out; display:block;
}
.bcp-gallery img.active{ opacity:1; }

/* Controls */
.bcp-gallery .ctrl{ position:absolute; right:10px; bottom:12px; display:flex; gap:8px; z-index:3; }
.bcp-gallery .ctrl button{
  appearance:none; border:1px solid #2a3a54; background:rgba(15,23,38,.85);
  color:#fff; padding:8px 10px; cursor:pointer; line-height:1; border-radius:6px;
}
.bcp-gallery .ctrl button:hover{ background:rgba(15,23,38,.98); }

/* Dots */
.bcp-gallery .dots{
  position:absolute; left:0; right:0; bottom:10px; display:flex; justify-content:center; gap:8px; z-index:3;
}
.bcp-gallery .dot{
  width:8px; height:8px; border-radius:999px; background:rgba(255,255,255,.35);
  border:1px solid rgba(255,255,255,.55); cursor:pointer;
}
.bcp-gallery .dot.active{ background:#ffd700; border-color:#1a2a48; }
/* ===========================
   AZMI Quick Menu (square / no rounded corners)
   - Full width bar
   - Sticky header polish with shadow when stuck
   - Active link + active column highlights
   =========================== */

.azmi-quickmenu{
  --bg:#0c1320; --card:#0f1726; --ring:#22314c; --ink:#e8edf4; --muted:#a9b5c5;
  --yellow:#ffd700; --hover:#16233a;
  --shadow:0 8px 24px rgba(0,0,0,.18);
  --row:6px;           /* link vertical padding */
  --pad:16px;          /* side pad for header/cols */
  --sticky-top:80px;   /* adjust to clear your site header */
  color:var(--ink);
  margin:22px 0;
  background:var(--bg);
  width:100%;
  position:relative; z-index:1;
}

/* Bar shell */
.azmi-quickmenu .bar{
  width:100%;
  background:var(--card);
  border:1px solid var(--ring);
  border-radius:0;                 /* no rounded corners */
  box-shadow:var(--shadow);
  overflow:hidden;
  position:sticky; top:var(--sticky-top);
  transition:box-shadow .25s ease;
}
.azmi-quickmenu .bar.is-stuck{
  box-shadow:0 10px 28px rgba(0,0,0,.28);
}

/* Header */
.azmi-quickmenu header{
  display:flex; align-items:center; justify-content:space-between;
  padding:14px var(--pad);
  border-bottom:1px solid var(--ring);
}
.azmi-quickmenu header h3{ margin:0; }
.azmi-quickmenu .hint{ color:var(--muted) }

/* Grid */
.azmi-quickmenu .grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:0;
  align-items:start;
}

/* Cols */
.azmi-quickmenu .col{
  min-width:0;
  border-right:1px solid var(--ring);
  display:flex; flex-direction:column;
}
.azmi-quickmenu .col:last-child{ border-right:0; }

/* Column headings */
.azmi-quickmenu .col h4{
  margin:0;
  padding:12px var(--pad);
  background:linear-gradient(0deg,rgba(255,255,255,.02),rgba(255,255,255,0));
  color:#fff;
  border-bottom:1px solid var(--ring);
}

/* Details for mobile accordions */
.azmi-quickmenu details{ border-bottom:1px solid var(--ring); }
.azmi-quickmenu summary{
  display:none; list-style:none; cursor:pointer;
  padding:12px var(--pad); color:#fff;
}
.azmi-quickmenu summary::-webkit-details-marker{ display:none; }

/* Lists & links */
.azmi-quickmenu ul{
  list-style:none; margin:0;
  padding:6px var(--pad) 12px;
}
.azmi-quickmenu a{
  display:flex; align-items:flex-start; gap:10px;
  padding:var(--row) 0;
  border-radius:0;                 /* no rounded corners */
  text-decoration:none; color:var(--ink);
  line-height:1.55;
  transition:background-color .18s ease, outline-color .18s ease;
}
.azmi-quickmenu a .dot{
  width:8px; height:8px; border-radius:50%;
  background:var(--ring); flex:0 0 8px;
  margin-top:.42em;        /* centers dot to first line */
}
.azmi-quickmenu a:hover{ background:var(--hover); }
.azmi-quickmenu a:hover .dot{ background:var(--yellow); }

/* Active link + active column */
.azmi-quickmenu a.is-active{
  background:rgba(255,215,0,.10);
  outline:1px solid rgba(255,215,0,.28);
}
.azmi-quickmenu a.is-active .dot{ background:var(--yellow); }

.azmi-quickmenu .col.is-active-col > h4,
.azmi-quickmenu .col.is-active-col > details > summary{
  background:rgba(255,215,0,.06);
  box-shadow:inset 0 0 0 1px rgba(255,215,0,.22);
}
.azmi-quickmenu .col.is-active-col{
  box-shadow: inset 3px 0 0 0 var(--yellow); /* left bar accent */
}

/* Keyboard focus */
.azmi-quickmenu a:focus-visible{
  outline:2px solid #9ad9ff; outline-offset:2px;
  background:rgba(154,217,255,.08);
}

/* Responsive */
@media (max-width:1100px){
  .azmi-quickmenu .grid{ grid-template-columns:repeat(2, minmax(0,1fr)); }
  .azmi-quickmenu .col:nth-child(2){ border-right:0; }
}
@media (max-width:980px){
  .azmi-quickmenu .grid{ display:block; }
  .azmi-quickmenu .col{ border-right:0; }
  .azmi-quickmenu .col h4{ display:none; }
  .azmi-quickmenu details summary{ display:block; }
}
@media (max-width:520px){
  .azmi-quickmenu header{ flex-direction:column; align-items:flex-start; gap:6px; }
}
/* =========================================================
   Managed IT — Tabs + Services + Roles + Benefits
   (TabbyJS-friendly; max container 1400px)
   ========================================================= */

/* ===== Theme + section shell ===== */
.ux-section{
  --bg:#0c1320; --ink:#e8edf4; --muted:#a9b5c5;
  --card:#0f1726; --line:#233348; --line-strong:#3a517a;
  --yellow:#ffcc00; --yellow-dark:#e6b800;

  color:var(--ink);
  background:
    radial-gradient(1100px 70% at 15% -10%, #16243d 0%, #0f182b 55%, var(--bg) 100%);
  padding:48px 0;
}
.ux-wrap{ max-width:1400px; margin:0 auto; padding:0; }

/* ===== Section headers (keep your portal fonts) ===== */
.section-hdr{ text-align:center; margin:0 0 18px; }
.section-hdr .eyebrow{
  display:inline-block; font-weight:800; letter-spacing:.08em; text-transform:uppercase;
  font-size:.8rem; padding:6px 10px; border:1px solid var(--line); border-radius:999px;
  background:#0b1424; color:var(--muted); margin-bottom:10px;
}
.section-hdr h2{ margin:6px 0 8px; color:#fff; font-weight:900; letter-spacing:.02em; }
.section-hdr .ux-sub{ color:#cdd6e3; max-width:720px; margin:0 auto 18px; }

/* ===== TabbyJS tablist (visuals only) ===== */
.az-tablist{
  display:flex; flex-wrap:wrap; gap:6px 10px;
  align-items:center; border-bottom:1px solid rgba(255,255,255,.06);
  padding:0 0 12px; margin:0 auto 18px; list-style:none;
  max-width:1400px;
}
.az-tab{
  display:inline-block; text-decoration:none; color:#cfe3ff;
  padding:8px 12px; border-radius:10px;
  border:1px solid transparent;
  background:transparent; font-weight:800; letter-spacing:.01em;
}
.az-tab:hover{ color:#fff; border-color:rgba(255,255,255,.12); background:rgba(255,255,255,.03); }
.az-tab[aria-selected="true"], .az-tab.tabby-active{
  color:#111; background:#ffd700; border-color:#000;
}

/* Panels: Tabby handles visibility with [hidden]; keep spacing consistent */
.az-panel{ padding:0; }

/* ===== Cards grid (used across Services, Roles, Benefits) ===== */
.apps-grid{ display:grid; gap:28px; grid-template-columns:repeat(3, minmax(0,1fr)); }
@media (max-width:1200px){ .apps-grid{ grid-template-columns:repeat(2, minmax(0,1fr)); } }
@media (max-width:680px){ .apps-grid{ grid-template-columns:1fr; } }

/* Single-anchor card */
.app-card{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:14px;
  padding:22px;
  display:block;
  color:inherit; text-decoration:none;
  box-shadow:0 8px 18px rgba(0,0,0,.18);
  transition:border-color .2s ease, transform .2s ease, box-shadow .2s ease;
  min-height:220px;
}
.app-card:hover{
  border-color:var(--line-strong);
  box-shadow:0 12px 26px rgba(0,0,0,.28);
  transform:translateY(-2px);
}
.app-row{ display:flex; align-items:flex-start; gap:14px; }
.app-ico{
  flex:0 0 auto; width:42px; height:42px; border-radius:12px;
  display:flex; align-items:center; justify-content:center;
  background:#101a2a; border:1px solid rgba(255,255,255,.08);
  color:#fff; font-size:1.25rem;
  box-shadow:0 4px 10px rgba(0,0,0,.25);
}
.app-text{ flex:1 1 auto; }

/* Titles — final size lock */
.app-title{
  margin:0 0 6px; color:#fff; letter-spacing:.01em; font-weight:900;
  font-size:1.5rem !important; line-height:1.2;
}
/* Descriptions inherit your .lead sizing from portal.css */
.lead.app-desc{ margin:0; color:#d6deea; }

/* CTA pill */
.btn-yellow{
  display:inline-block; text-decoration:none; cursor:pointer;
  background:var(--yellow) !important; color:#000 !important;
  font-weight:800 !important; text-transform:uppercase !important; letter-spacing:.04em;
  padding:10px 18px !important; border:2px solid #000 !important; border-radius:6px !important;
  margin-top:12px; box-shadow:none !important; transition:background .18s ease, transform .12s ease;
}
.btn-yellow:hover, .btn-yellow:focus{
  background:var(--yellow-dark) !important; transform:translateY(-1px);
}

/* ===== Benefits extras ===== */
.msp-benefits .apps-grid .app-card{ min-height:0; } /* benefit tiles shorter */
.msp-benefits .app-ico{ font-weight:900; }
.msp-benefits .app-ico i{ font-size:1rem; }

/* Full-bleed CTA outside .ux-wrap */
.msp-cta-bleed{
  margin:24px 0 0;
  padding:18px 20px;
  text-align:center;
  border-top:1px solid rgba(255,255,255,.05);
  border-bottom:1px solid rgba(255,255,255,.05);
  background:linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0));
}
.msp-cta-bleed .lead{ margin:0 0 12px; }

/* ===== Accessibility focus ===== */
.app-card:focus-visible{
  outline:none;
  box-shadow:0 0 0 3px rgba(255,215,0,.25), 0 8px 18px rgba(0,0,0,.18);
  border-color:#ffdd55;
  transform:translateY(-2px);
}
.az-tab:focus-visible{
  outline:none;
  box-shadow:0 0 0 3px rgba(255,215,0,.35);
}

/* ===== Small refinements ===== */
/* tighten headings inside cards on very small screens */
@media (max-width:420px){
  .app-title{ font-size:1.35rem !important; }
}
/* make icon circles a touch smaller on narrow layouts */
@media (max-width:680px){
  .app-ico{ width:38px; height:38px; border-radius:10px; font-size:1.1rem; }
}
/* Fix FAQ chevron sizing and keep the hash link at the right */
.az-faq .chev svg { width:12px !important; height:12px !important; min-width:12px; min-height:12px; display:block; }
.az-faq summary { display:flex; align-items:center; gap:12px; }
.az-faq .anchor { margin-left:auto; }
