/* ─────────────────────────────────────────────────────────────
   APERTURE / GLOBAL
   ───────────────────────────────────────────────────────────── */

/* Global content width cap (forced for DNN skins) */
.aperture-content-pane{
  margin:0 auto !important;
  max-width:1400px !important;
  padding:0 rem !important;
  width:100% !important;
}

/* Site background */
body {
  background-color: #222222 !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 (Static Grid, No Animation)
   Author: AZ Managed IT
   ========================================================= */

.ModActiveForumsWhatsNewC {
  --ink: #e8edf4;
  --muted: #cbd3de;
  --accent: #00bfff;
  --accent-dark: #00ace6;
  --bg: #222222;
  --grid-step: 80px;
  --grid-line: rgba(0, 191, 255, 0.04);

  position: relative;
  color: var(--ink);
  background: var(--bg);
  border-top: 0px solid #111;
  border-bottom: 0px solid #111;
  font-family: "Segoe UI", system-ui, Roboto, Arial, sans-serif;
  overflow: hidden;

  /* full width bleed */
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding: 48px 0;
}

/* ===== STATIC SERVER GRID BACKGROUND ===== */
.ModActiveForumsWhatsNewC::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background-color: var(--bg);
  background-image:
    linear-gradient(var(--grid-line) 1px, transparent 1px),
    linear-gradient(90deg, var(--grid-line) 1px, transparent 1px);
  background-size: var(--grid-step) var(--grid-step);
  opacity: 1;
}

/* ===== NO GLOW, NO LIGHTS ===== */
.ModActiveForumsWhatsNewC::after {
  content: none !important;
}

/* ===== CONTENT GRID ===== */
.ModActiveForumsWhatsNewC > div {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(3, minmax(300px, 1fr));
  gap: 16px 40px;
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 24px;
  align-items: start;
}
@media (max-width: 1200px) {
  .ModActiveForumsWhatsNewC > div {
    grid-template-columns: repeat(2, minmax(280px, 1fr));
  }
}
@media (max-width: 640px) {
  .ModActiveForumsWhatsNewC > div {
    grid-template-columns: 1fr;
    gap: 12px 18px;
  }
}

/* ===== LINK STYLING ===== */
.ModActiveForumsWhatsNewC .Normal {
  margin: 0 !important;
  padding: 0 !important;
}

.ModActiveForumsWhatsNewC .Normal a {
  position: relative;
  display: flex;
  gap: 10px;
  align-items: flex-start;
  padding: 10px 2px 10px 14px;
  color: var(--accent);
  text-decoration: none;
  font-family: Ubuntu, Helvetica, Arial, sans-serif !important;
  font-size: 1.25rem;
  line-height: 1.9;
  font-weight: 400;
  width: 100%;
  transition: transform 0.15s ease, text-decoration-color 0.15s ease;
}

.ModActiveForumsWhatsNewC .Normal a::before {
  content: "";
  flex: 0 0 6px;
  height: 6px;
  margin-top: 0.6em;
  background: currentColor;
  opacity: 0.95;
}

.ModActiveForumsWhatsNewC .Normal a::after {
  content: "";
  position: absolute;
  left: 14px;
  right: 0;
  bottom: -7px;
  height: 1px;
  background: linear-gradient(90deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,0.22) 16%,
    rgba(255,255,255,0.35) 50%,
    rgba(255,255,255,0.22) 84%,
    rgba(255,255,255,0) 100%);
}

.ModActiveForumsWhatsNewC .Normal a:hover {
  text-decoration: underline;
  text-underline-offset: 2px;
  transform: translateX(2px);
}

.ModActiveForumsWhatsNewC .Normal a:focus {
  outline: none;
  box-shadow: inset 3px 0 0 0 rgba(0,191,255,0.65);
}

/* ===== RSS ROW ===== */
.ModActiveForumsWhatsNewC a[href*="feeds.aspx"] {
  grid-column: 1 / -1;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--accent);
  font-weight: 700;
  padding: 8px 0 2px;
  font-family: Ubuntu, Helvetica, Arial, sans-serif !important;
}
.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: 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; }
/* Only within the header scope, make the theme var transparent */
.aperture-theme .aperture-header{
  --dnn-color-tertiary-light: transparent !important;
}

/* =========================================================
   FORM BUTTON STYLING — MATCH HERO CTA STYLE
   Target: #dnn404SendNow.btn.btn-info (and similar)
   ========================================================= */

#dnn404SendNow.btn-info,
button.btn-info,
input[type="submit"].btn-info {
  color: #000 !important;
  background-color: #00bfff !important;   /* same cyan accent */
  border: 2px solid #000 !important;
  font-weight: 800 !important;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  padding: 10px 22px !important;
  border-radius: 6px;
  font-size: 16px !important;
  line-height: 1.4;
  font-family: "Segoe UI", system-ui, Roboto, Arial, sans-serif !important;
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.12);
  transition: all 0.25s ease-in-out;
}

/* Hover state */
#dnn404SendNow.btn-info:hover,
button.btn-info:hover,
input[type="submit"].btn-info:hover {
  background-color: #00ace6 !important;   /* darker cyan on hover */
  color: #000 !important;
  transform: translateY(-2px);
  box-shadow: 0 6px 14px rgba(0, 0, 0, 0.35);
  border-color: #000 !important;
}

/* Active/Focus */
#dnn404SendNow.btn-info:active,
button.btn-info:active,
input[type="submit"].btn-info:active {
  background-color: #009fd1 !important;
  transform: translateY(0);
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.25);
}

#dnn404SendNow.btn-info:focus {
  outline: none !important;
  box-shadow: 0 0 0 2px rgba(0, 191, 255, 0.3);
}


