/* GENERATED by scripts/adom/scope-adom-css.js - do not edit by hand.
   Source: gov.css (ADOM mockup), scoped under .adom-page. */
/* ============================================================
   ADOM for Government - page-specific styles
   (loads after site.css + partners.css for shared .flow/.econ/.ways)
   ============================================================ */

/* ---------- Sovereign enclave diagram (hero) ---------- */
.adom-page .enclave {
  position: relative; z-index: 2;
  width: min(100% - 48px, 880px); margin: 56px auto 0;
  border: 1.5px dashed rgba(0,186,221,0.55); border-radius: 26px;
  background: linear-gradient(180deg, rgba(14,217,255,0.06), rgba(0,242,108,0.04));
  padding: 30px 30px 38px;
}
.adom-page .enclave::after { /* breathing boundary glow */
  content: ""; position: absolute; inset: -2px; border-radius: 26px; pointer-events: none;
  box-shadow: 0 0 0 0 rgba(0,186,221,0.30); animation: enclave-pulse 3.6s var(--ease-out) infinite;
}
@keyframes enclave-pulse {
  0% { box-shadow: 0 0 0 0 rgba(0,186,221,0.28); }
  70% { box-shadow: 0 0 0 16px rgba(0,186,221,0); }
  100% { box-shadow: 0 0 0 0 rgba(0,186,221,0); }
}
.adom-page .enclave__bar { display: flex; align-items: center; justify-content: space-between; gap: 14px; flex-wrap: wrap; margin-bottom: 14px; }
.adom-page .enclave__label { display: inline-flex; align-items: center; gap: 9px; font-family: var(--ab-font-display); font-weight: 600; font-size: 16px; color: #fff; }
.adom-page .enclave__label svg { width: 19px; height: 19px; stroke: var(--ab-sky); }
.adom-page .enclave__env { font-family: var(--ab-font-mono); font-size: 12px; color: rgba(255,255,255,0.6); letter-spacing: 0.02em; }
.adom-page .enclave__egress {
  display: inline-flex; align-items: center; gap: 7px; padding: 6px 12px; border-radius: var(--ab-radius-pill);
  background: rgba(255,107,107,0.12); border: 1px solid rgba(255,138,128,0.4);
  font-family: var(--ab-font-display); font-size: 12.5px; font-weight: 600; color: #ff9a90;
}
.adom-page .enclave__egress svg { width: 15px; height: 15px; stroke: #ff9a90; }

.adom-page .enclave__inner { position: relative; height: 320px; }
.adom-page .enclave__svg { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.adom-page .enclave__svg .line { stroke: rgba(255,255,255,0.18); stroke-width: 1.5; fill: none; vector-effect: non-scaling-stroke; }
.adom-page .enclave__svg .flow { stroke: url(#encGrad); stroke-width: 2.5; fill: none; vector-effect: non-scaling-stroke; stroke-linecap: round; }
.adom-page .enode {
  position: absolute; transform: translate(-50%, -50%); z-index: 3;
  display: inline-flex; align-items: center; gap: 8px; padding: 11px 15px; border-radius: 14px;
  background: rgba(255,255,255,0.95); box-shadow: 0 10px 26px rgba(0,35,90,0.28);
  font-family: var(--ab-font-display); font-weight: 600; font-size: 14px; color: var(--ab-dark-blue);
  white-space: nowrap;
}
.adom-page .enode svg { width: 17px; height: 17px; stroke: var(--ab-blue); }
.adom-page .enode--data { left: 19%; top: 24%; }
.adom-page .enode--models { left: 81%; top: 24%; }
.adom-page .enode--apps { left: 50%; top: 84%; }
.adom-page .enclave__core {
  position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); z-index: 4;
  width: 132px; height: 132px; border-radius: 50%; display: grid; place-items: center; text-align: center;
  background: radial-gradient(circle at 50% 30%, #0c2739, #00235a); color: #fff;
  box-shadow: 0 18px 50px rgba(0,35,90,0.4), 0 0 0 1px rgba(255,255,255,0.10) inset;
}
.adom-page .enclave__core::before { content: ""; position: absolute; inset: -10px; border-radius: 50%; border: 1.5px dashed rgba(0,186,221,0.45); animation: spin 24s linear infinite; }
.adom-page .enclave__core svg { width: 24px; height: 24px; stroke: var(--ab-sky); margin-bottom: 3px; }
.adom-page .enclave__core b { font-family: var(--ab-font-display); font-size: 19px; font-weight: 700; }
.adom-page .enclave__core span { font-size: 10.5px; color: var(--ab-fg-on-dark-3); margin-top: 2px; max-width: 90px; line-height: 1.25; }
@media (max-width: 620px) {
  .adom-page .enclave__inner { height: 360px; }
  .adom-page .enode { font-size: 12.5px; padding: 9px 12px; }
}

/* ---------- 4-up card grid (ways ADOM transforms delivery) ---------- */
.adom-page .grid4 { display: grid; grid-template-columns: repeat(2, 1fr); gap: 22px; margin-top: 52px; }
.adom-page .gcard {
  position: relative; border: 1px solid var(--ab-border-subtle); border-radius: var(--ab-radius-lg);
  background: #fff; box-shadow: var(--ab-shadow-card); padding: 30px 30px;
  display: grid; grid-template-columns: 56px 1fr; gap: 20px; align-items: start;
  transition: transform 0.3s var(--ease-out), box-shadow 0.3s;
}
.adom-page .gcard:hover { transform: translateY(-4px); box-shadow: var(--ab-shadow-card-hover); }
.adom-page .gcard__ic { width: 56px; height: 56px; border-radius: 14px; display: grid; place-items: center; background: var(--ab-gradient-soft); }
.adom-page .gcard__ic svg { width: 28px; height: 28px; stroke: var(--ab-dark-blue); }
.adom-page .gcard__n { font-family: var(--ab-font-mono); font-size: 12px; color: var(--ab-sky); letter-spacing: 0.08em; }
.adom-page .gcard h4 { font-family: var(--ab-font-display); font-size: 20px; font-weight: 600; color: var(--ab-dark-blue); margin: 4px 0 0; }
.adom-page .gcard p { margin: 9px 0 0; font-size: 15px; line-height: 1.55; color: var(--ab-fg-secondary); }
@media (max-width: 820px) { .adom-page .grid4 { grid-template-columns: 1fr; } }

/* ---------- Engagement tiers (3-up, one highlighted) ---------- */
.adom-page .tiers { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; margin-top: 52px; align-items: stretch; }
.adom-page .tier {
  position: relative; border: 1px solid var(--ab-border-subtle); border-radius: var(--ab-radius-lg);
  background: #fff; box-shadow: var(--ab-shadow-card); padding: 32px 28px; display: flex; flex-direction: column;
  transition: transform 0.3s var(--ease-out), box-shadow 0.3s;
}
.adom-page .tier:hover { transform: translateY(-4px); box-shadow: var(--ab-shadow-card-hover); }
.adom-page .tier--feature { background: var(--ab-bg-dark); color: #fff; border-color: transparent; }
.adom-page .tier__badge { position: absolute; top: -12px; left: 28px; padding: 5px 12px; border-radius: var(--ab-radius-pill); background: var(--ab-gradient); color: #04122b; font-family: var(--ab-font-display); font-size: 12px; font-weight: 700; box-shadow: var(--ab-inset-highlight); }
.adom-page .tier__n { font-family: var(--ab-font-mono); font-size: 12px; letter-spacing: 0.08em; color: var(--ab-sky); }
.adom-page .tier h4 { font-family: var(--ab-font-display); font-size: 22px; font-weight: 600; margin: 8px 0 0; color: var(--ab-dark-blue); }
.adom-page .tier--feature h4 { color: #fff; }
.adom-page .tier p { margin: 12px 0 18px; font-size: 15px; line-height: 1.6; color: var(--ab-fg-secondary); }
.adom-page .tier--feature p { color: var(--ab-fg-on-dark-3); }
.adom-page .tier ul { list-style: none; padding: 0; margin: 0 0 22px; display: flex; flex-direction: column; gap: 10px; }
.adom-page .tier li { display: flex; gap: 10px; align-items: flex-start; font-size: 14px; color: var(--ab-fg-secondary); }
.adom-page .tier--feature li { color: var(--ab-fg-on-dark-2); }
.adom-page .tier li svg { width: 17px; height: 17px; flex: none; margin-top: 2px; stroke: #11a866; }
.adom-page .tier--feature li svg { stroke: var(--ab-green); }
.adom-page .tier__foot { margin-top: auto; }
@media (max-width: 900px) { .adom-page .tiers { grid-template-columns: 1fr; } }

/* ---------- Proven deployments ---------- */
.adom-page .proof { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-top: 50px; }
.adom-page .proofcard {
  border: 1px solid rgba(255,255,255,0.12); border-radius: var(--ab-radius-lg); padding: 26px 24px;
  background: rgba(255,255,255,0.03); transition: border-color 0.3s, transform 0.3s, background 0.3s;
}
.adom-page .proofcard:hover { border-color: rgba(0,186,221,0.5); background: rgba(0,186,221,0.06); transform: translateY(-3px); }
.adom-page .proofcard__k { font-family: var(--ab-font-display); font-size: 34px; font-weight: 600; letter-spacing: -0.02em;
  background: var(--ab-gradient); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; line-height: 1; padding-bottom: 0.16em; }
.adom-page .proofcard b { display: block; font-family: var(--ab-font-display); font-size: 16px; font-weight: 600; color: #fff; margin: 14px 0 6px; }
.adom-page .proofcard p { font-size: 14px; line-height: 1.5; color: var(--ab-fg-on-dark-3); margin: 0; }
.adom-page .proof__note { margin-top: 30px; padding: 20px 24px; border: 1px solid rgba(255,255,255,0.12); border-radius: var(--ab-radius-md); background: rgba(255,255,255,0.03); font-size: 14.5px; line-height: 1.6; color: var(--ab-fg-on-dark-2); }
.adom-page .proof__note b { color: #fff; font-family: var(--ab-font-display); }
@media (max-width: 820px) { .adom-page .proof { grid-template-columns: 1fr; } }
