/* =====================================================================================================
   Required Marketing Group Inc. - Capability Statement 2026 (options A and B)
   Design language: CAE AOR proposal v7 + Proposal Master Template (rmg-proposal-theme.css) tokens.
   Every rule is scoped under #rmgcs, so the Onum theme, Elementor and WooCommerce are not affected.
   Palette: #0095D9 blue, #FE4C1C orange-red, #FF970F orange (graphics only), text #1A1B1E / #606060,
   darker blues #0077B0 / #006A9E. Fonts: Red Hat Display (headings) / Red Hat Text (body), self-hosted.
   ===================================================================================================== */
@font-face{font-family:"RMGCS Display";src:url(../fonts/RedHatDisplay-Black.woff2) format("woff2");font-weight:900;font-display:swap}
@font-face{font-family:"RMGCS Display";src:url(../fonts/RedHatDisplay-ExtraBold.woff2) format("woff2");font-weight:800;font-display:swap}
@font-face{font-family:"RMGCS Display";src:url(../fonts/RedHatDisplay-Bold.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"RMGCS Text";src:url(../fonts/RedHatText-Regular.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"RMGCS Text";src:url(../fonts/RedHatText-Medium.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"RMGCS Text";src:url(../fonts/RedHatText-SemiBold.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"RMGCS Text";src:url(../fonts/RedHatText-Bold.woff2) format("woff2");font-weight:700;font-display:swap}

#rmgcs{
  /* tokens (from rmg-proposal-theme.css, limited to the approved palette) */
  --blue:#0095D9; --red:#FE4C1C; --orange:#FF970F;
  --blue-ink:#006A9E; --blue-deep:#0077B0;
  --ink:#1A1B1E; --body:#606060;
  --line:#E5E5E5; --line-2:#D6E9F7; --tint:#F0F6FF; --tint-o:#FFF4E8; --paper:#FFFFFF;
  --grad-rule:linear-gradient(90deg,#0095D9 0%,#0095D9 35%,#FF970F 100%);
  --grad-chip:linear-gradient(135deg,#0095D9,#0077B0);
  --grad-panel:linear-gradient(150deg,#0077B0 0%,#006A9E 55%,#1A1B1E 100%);
  --r-card:12px; --r-panel:16px;
  --fd:"RMGCS Display","Red Hat Display",system-ui,sans-serif; --ft:"RMGCS Text","Red Hat Text",system-ui,sans-serif;
  font-family:var(--ft);font-size:17px;line-height:1.6;color:var(--body);background:var(--paper);
  -webkit-text-size-adjust:100%;position:relative;overflow-x:clip;text-align:left
}
#rmgcs *,#rmgcs *::before,#rmgcs *::after{box-sizing:border-box}
#rmgcs h1,#rmgcs h2,#rmgcs h3,#rmgcs h4{font-family:var(--fd);color:var(--ink);line-height:1.15;margin:0 0 .4em;letter-spacing:0;text-transform:none}
#rmgcs p{margin:0 0 .75em}
#rmgcs ul,#rmgcs ol{margin:0;padding:0;list-style:none}
#rmgcs li{margin:0}
#rmgcs img{max-width:100%;height:auto;display:block}
#rmgcs a{color:var(--blue-ink);text-decoration:underline;text-underline-offset:2px}
#rmgcs a:hover{color:var(--ink)}
#rmgcs a:focus-visible,#rmgcs button:focus-visible,#rmgcs summary:focus-visible,#rmgcs .tscroll:focus-visible{outline:3px solid var(--orange);outline-offset:2px;border-radius:4px}
#rmgcs b.co,#rmgcs b.who,#rmgcs strong,#rmgcs b{color:var(--ink);font-weight:700}
#rmgcs :is(h1,h2,h3) b.co{font-weight:inherit;color:inherit}
#rmgcs .sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#rmgcs svg.i{width:1em;height:1em;display:inline-block;vertical-align:-.12em;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
#rmgcs .code,#rmgcs .naics{font-family:var(--fd);font-weight:800;letter-spacing:.04em;color:var(--ink)}

/* ---------- buttons ---------- */
#rmgcs .btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px;position:relative}
#rmgcs .btn{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:12px 22px;border-radius:999px;font-family:var(--fd);font-weight:800;font-size:16px;line-height:1.2;text-decoration:none;border:2px solid transparent;transition:transform .15s ease,background-color .15s ease}
#rmgcs .btn svg.i{width:18px;height:18px}
#rmgcs .btn-primary{background:var(--orange);color:var(--ink);border-color:var(--orange)}   /* ink on orange: 8.6:1 */
#rmgcs .btn-primary:hover{background:#fff;color:var(--ink);transform:translateY(-1px)}
#rmgcs .btn-ghost{background:transparent;color:#fff;border-color:#fff}
#rmgcs .btn-ghost:hover{background:#fff;color:var(--blue-ink)}
/* PDF download (v0.10.0): solid white primary-weight button on the blue panels, print icon, file-size hint */
#rmgcs .btn-solid{background:#fff;color:var(--blue-ink);border-color:#fff}                  /* #006A9E on white: 6.1:1 */
#rmgcs .btn-solid:hover{background:var(--tint);border-color:var(--tint);color:var(--ink);transform:translateY(-1px)}
#rmgcs .btn-pdf svg.i{width:20px;height:20px}
#rmgcs .btn-pdf-sz{font-family:var(--ft);font-weight:600;font-size:13px;color:var(--body);white-space:nowrap;padding-left:10px;border-left:1px solid var(--line-2)}
#rmgcs .btn-solid:hover .btn-pdf-sz{color:var(--ink)}

/* ---------- staging-only markers (removed from the public render) ---------- */
#rmgcs .rmgcs-ph{background:#FFF1A8;color:#7A4B00;border:1px solid var(--red);border-radius:6px;padding:8px 12px;font-size:15px;margin:12px 0}
#rmgcs .ph-tag{display:inline-block;background:var(--ink);color:#fff;font-family:var(--fd);font-weight:800;font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:2px 8px;border-radius:4px;margin-right:6px}
#rmgcs.is-review .rmgcs-pending{background:#FFF1A8;box-shadow:0 0 0 2px #FFF1A8;border-radius:2px;color:#7A4B00}
#rmgcs .review-bar{background:var(--ink);color:#fff;font:600 14px/1.4 var(--ft);padding:10px 20px;text-align:center}
#rmgcs .review-bar b{color:var(--orange)}

/* ---------- section band (badge + H2 + plane path + gradient rule) ---------- */
#rmgcs .band{position:relative;display:flex;align-items:center;gap:16px;padding:0 0 14px;margin:0 0 26px}
#rmgcs .band::after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;border-radius:3px;background:var(--grad-rule)}
#rmgcs .badge{position:relative;flex:0 0 auto;width:60px;height:60px;border-radius:14px;background:var(--grad-chip);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--fd);font-weight:900;font-size:28px;line-height:1}
#rmgcs .badge::after{content:"";position:absolute;right:-6px;top:-4px;width:14px;height:14px;border-radius:50%;background:var(--orange);border:3px solid #fff}
#rmgcs .badge svg.i{width:28px;height:28px;stroke-width:2.2}
#rmgcs .band h2{font-weight:900;font-size:clamp(28px,3.2vw,40px);margin:0}
#rmgcs .band-deco{width:170px;height:auto;margin-left:auto;flex:0 0 auto}
#rmgcs .h3i{display:flex;align-items:center;gap:10px;font-weight:800;font-size:20px;margin:0 0 10px}
#rmgcs .h3ic{flex:0 0 auto;width:30px;height:30px;border-radius:8px;background:var(--grad-chip);color:#fff;display:inline-flex;align-items:center;justify-content:center}
#rmgcs .h3ic svg.i{width:17px;height:17px;stroke-width:2.3}

/* ---------- quick facts ---------- */
#rmgcs .facts{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
#rmgcs .fact{position:relative;display:flex;gap:12px;align-items:flex-start;background:var(--tint);border-radius:var(--r-card);border-top:5px solid var(--blue);padding:16px 16px 14px;min-width:0}
#rmgcs .fact.f2{border-top-color:var(--orange)} #rmgcs .fact.f3{border-top-color:var(--red)} #rmgcs .fact.f4{border-top-color:var(--ink)}
#rmgcs .fact-ic{flex:0 0 auto;width:38px;height:38px;border-radius:10px;background:#fff;color:var(--blue-ink);display:flex;align-items:center;justify-content:center}
#rmgcs .fact-ic svg.i{width:20px;height:20px}
#rmgcs .fact-t{min-width:0;font-size:15px;line-height:1.4}
#rmgcs .fact-k{display:block;font-family:var(--fd);font-weight:900;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--blue-ink);margin-bottom:2px}
#rmgcs .fact-v{color:var(--body);overflow-wrap:anywhere}
#rmgcs .fact-v.code{display:block;font-size:20px;color:var(--ink);font-weight:900;letter-spacing:.03em;line-height:1.2;overflow-wrap:normal}
#rmgcs .f3 .fact-v.code{font-size:16px;letter-spacing:0;line-height:1.3}
#rmgcs .f4 .fact-k{display:inline;font-size:15px;text-transform:none;letter-spacing:0}

/* ---------- cards (core competencies) ---------- */
#rmgcs .comp{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
#rmgcs .card{background:var(--tint);border-radius:var(--r-card);border-top:5px solid var(--blue);padding:20px 20px 16px}
#rmgcs .card.c2{border-top-color:var(--orange)} #rmgcs .card.c3{border-top-color:var(--red)} #rmgcs .card.c4{border-top-color:var(--ink)}
#rmgcs .card-ic{width:42px;height:42px;border-radius:11px;background:#fff;color:var(--blue-ink);display:flex;align-items:center;justify-content:center;margin-bottom:12px}
#rmgcs .card-ic svg.i{width:22px;height:22px}
#rmgcs .card h3{font-weight:900;font-size:19px;margin:0 0 6px}
#rmgcs .card p{margin:0;font-size:16px;line-height:1.5}

/* ---------- services ---------- */
#rmgcs .svcs{columns:2;column-gap:48px;column-rule:1px solid #EDF1F5}
#rmgcs .svc{break-inside:avoid;margin:0 0 24px}
#rmgcs ul.rings li{position:relative;padding-left:24px;margin:0 0 6px;font-size:16px;line-height:1.5}
#rmgcs ul.rings li::before{content:"";position:absolute;left:2px;top:.5em;width:10px;height:10px;border-radius:50%;border:2px solid var(--blue);background:#fff}

/* ---------- differentiators (proposal gcards) ---------- */
#rmgcs .diffs{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
#rmgcs .diff{position:relative;background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 18px 14px 76px;min-height:84px;display:flex;align-items:center}
#rmgcs .diff p{margin:0;font-size:16px;line-height:1.5}
#rmgcs .diff .dl{font-family:var(--fd);font-weight:800;font-size:17px}
#rmgcs .lic{position:absolute;left:18px;top:50%;transform:translateY(-50%);width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;background:var(--blue-deep)}
#rmgcs .lic svg.i{width:21px;height:21px}
#rmgcs .lic.l2{background:var(--red)} #rmgcs .lic.l3{background:var(--blue-ink)} #rmgcs .lic.l4{background:var(--ink)}

/* ---------- approach: 5 steps on the gradient rule + 3 blocks ---------- */
#rmgcs ol.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;position:relative;counter-reset:s;margin:6px 0 26px}
#rmgcs ol.steps::before{content:"";position:absolute;left:3%;right:3%;top:21px;height:4px;border-radius:2px;background:var(--grad-rule)}
#rmgcs ol.steps li{counter-increment:s;position:relative;padding-top:58px;font-size:15.5px;line-height:1.5}
#rmgcs ol.steps li::before{content:counter(s);position:absolute;left:0;top:0;width:46px;height:46px;border-radius:50%;background:#fff;border:3px solid var(--blue);color:var(--blue-ink);font-family:var(--fd);font-weight:900;font-size:20px;display:flex;align-items:center;justify-content:center}
#rmgcs ol.steps li:nth-child(even)::before{border-color:var(--orange);color:var(--ink)}
#rmgcs ol.steps p{margin:0}
#rmgcs .blks{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
#rmgcs .blk{display:flex;gap:12px;align-items:flex-start;background:var(--tint);border-radius:var(--r-card);border-left:5px solid var(--blue);padding:16px 18px}
#rmgcs .blk.b2{border-left-color:var(--orange)} #rmgcs .blk.b3{border-left-color:var(--red)}
#rmgcs .blk p{margin:0;font-size:15.5px;line-height:1.5}
#rmgcs .co-ic{flex:0 0 auto;width:36px;height:36px;border-radius:50%;background:#fff;color:var(--blue-ink);display:flex;align-items:center;justify-content:center}
#rmgcs .co-ic svg.i{width:19px;height:19px}

/* ---------- tables (dark header, blue left edge, zebra) ---------- */
#rmgcs .tscroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 0 18px;border-radius:10px}
#rmgcs table.tbl{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--line);border-radius:10px;overflow:hidden;font-size:15.5px;line-height:1.45;margin:0;background:#fff}
#rmgcs table.tbl thead th{background:var(--ink);color:#fff;text-align:left;font-family:var(--fd);font-weight:700;font-size:15px;padding:11px 14px;border:0}
#rmgcs table.tbl thead th:first-child{border-left:5px solid var(--blue)}
#rmgcs table.tbl td,#rmgcs table.tbl tbody th{padding:10px 14px;border:0;border-bottom:1px solid var(--line);vertical-align:top;text-align:left;background:#fff;color:var(--body)}
#rmgcs table.tbl tbody th{font-weight:700;color:var(--ink);font-family:var(--ft);white-space:nowrap}
#rmgcs table.tbl tbody tr:nth-child(even) td,#rmgcs table.tbl tbody tr:nth-child(even) th{background:var(--tint)}
#rmgcs table.tbl tbody tr:last-child td,#rmgcs table.tbl tbody tr:last-child th{border-bottom:0}
#rmgcs table.tbl td.code{font-size:17px}
#rmgcs .team-t{min-width:600px} #rmgcs .data-t{min-width:520px} #rmgcs .naics-t{min-width:440px}
#rmgcs .naics-t tbody th .naics{display:inline-block;background:var(--blue-ink);color:#fff;border-radius:6px;padding:1px 9px;margin-right:4px;font-size:15px;letter-spacing:.04em}
#rmgcs .naics-h{margin-top:26px}

/* ---------- contact block (labeled lines with Marcus's round icons) ---------- */
#rmgcs .cb .cb-co{font-family:var(--fd);font-size:22px;margin:0 0 2px;line-height:1.2}
#rmgcs .cb .cb-co b.co{font-weight:900}
#rmgcs .cb .cb-prim{margin:0;font-size:16px;color:var(--blue-ink);font-weight:600}
#rmgcs .cb .cb-prim b.who{color:var(--blue-ink)}
#rmgcs .cb-rule{height:4px;border-radius:2px;background:var(--grad-rule);margin:14px 0 14px}
#rmgcs .cb-row,#rmgcs .cb-ny{display:flex;align-items:center;gap:12px;margin:0 0 9px;font-size:16px;line-height:1.35}
#rmgcs .cb-ic{flex:0 0 auto;width:30px;height:30px;display:block}
#rmgcs .cb-ic svg{width:100%;height:100%;display:block}
#rmgcs .cb-l{font-weight:700;color:var(--ink)}
#rmgcs .cb-v{color:var(--body)}
#rmgcs .cb-v a{color:var(--body);text-decoration:none;border-bottom:1px solid var(--line-2)}
#rmgcs .cb-v a:hover{color:var(--blue-ink);border-bottom-color:var(--blue)}
#rmgcs .cb-ny{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}
#rmgcs .qr{display:flex;align-items:center;gap:14px}
#rmgcs .qr img{width:110px;height:110px;border:2px solid var(--blue);border-radius:10px;padding:4px;background:#fff}
#rmgcs .qr-cap{margin:0;font-family:var(--fd);font-weight:800;color:var(--ink);font-size:15px;line-height:1.3;max-width:200px}

/* ---------- CTA panel ---------- */
#rmgcs .cta-h{color:#fff;font-weight:900;font-size:clamp(26px,2.6vw,34px);margin:0 0 12px;position:relative}
#rmgcs .cta-b{color:#fff;font-size:17px;position:relative;max-width:520px}
#rmgcs .cta-b a{color:#fff;text-decoration:underline;white-space:nowrap}
#rmgcs .cta-b b.co{color:#fff}

/* ---------- document footer strip (proposal running footer) ---------- */
#rmgcs .docfoot{display:grid;grid-template-columns:1.3fr 1.55fr 1fr 1.35fr auto;gap:14px 22px;align-items:start;border-top:1.5px solid var(--line);padding:16px 0 6px;font-size:13px;line-height:1.5;color:var(--body)}
#rmgcs .docfoot .df0{display:flex;flex-direction:column}
#rmgcs .docfoot .df0 b.co{font-family:var(--fd);font-weight:900;font-size:14.5px}
#rmgcs .docfoot .df0 span{color:var(--blue-ink)} #rmgcs .docfoot .df0 span b.who{color:var(--blue-ink)}
#rmgcs .docfoot .df0 .ids{color:var(--body);margin-top:2px}
#rmgcs .docfoot li{display:flex;align-items:flex-start;gap:6px;margin:0 0 4px;white-space:nowrap}
#rmgcs .docfoot .df1 li{white-space:normal}
#rmgcs .docfoot .df0 .ids{white-space:nowrap}
#rmgcs .docfoot .df4{align-self:center}
#rmgcs .docfoot .fic{flex:0 0 auto;width:18px;height:18px;margin-top:1px} #rmgcs .docfoot .fic svg{width:100%;height:100%;display:block}
#rmgcs .docfoot b{color:var(--ink)}
#rmgcs .docfoot a{color:var(--body);text-decoration:none} #rmgcs .docfoot a:hover{color:var(--blue-ink);text-decoration:underline}
#rmgcs .df-logo{width:130px}

/* ---------- watermark ---------- */
#rmgcs .wm{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;border-radius:inherit}
#rmgcs .wm .wm-route{position:absolute;left:0;top:0;width:100%;height:100%}
#rmgcs .wm .wm-star{position:absolute;right:-90px;bottom:-70px;width:340px;height:auto;transform:rotate(-12deg)}

/* =====================================================================================================
   OPTION A: closely mirrors the proposal. Each section is a landscape "sheet" with the running header,
   badge band, watermark and page number; cover and back cover use the split white / blue-panel layout.
   ===================================================================================================== */
#rmgcs.rmgcs-a{background:var(--tint);padding:40px 0 30px}
#rmgcs.rmgcs-a .doc{max-width:1240px;margin:0 auto;padding:0 24px}
#rmgcs.rmgcs-a .sheet{position:relative;background:#fff;border:1px solid var(--line-2);border-radius:18px;padding:66px 64px 56px;margin:0 0 28px;overflow:hidden}
#rmgcs.rmgcs-a .sheet>*:not(.wm){position:relative;z-index:1}
#rmgcs.rmgcs-a .runhead{position:absolute!important;left:64px;right:64px;top:22px;display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--body)}
#rmgcs.rmgcs-a .runhead>span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-right:12px}
#rmgcs.rmgcs-a .ov{max-width:900px;font-size:18px}
#rmgcs.rmgcs-a .ov+.band{margin-top:34px}
#rmgcs.rmgcs-a .ov p:last-of-type{margin-bottom:0}
/* cover */
#rmgcs.rmgcs-a .cover{display:grid;grid-template-columns:1.55fr 1fr;padding:0;border:0}
#rmgcs.rmgcs-a .cv-l{position:relative;background:var(--grad-panel);color:#fff;padding:64px 56px 56px;overflow:hidden;min-height:470px}
#rmgcs.rmgcs-a .cv-l>*{position:relative}
#rmgcs.rmgcs-a .cv-l>svg{position:absolute}
#rmgcs.rmgcs-a .cv-star{right:-110px;top:40px;width:420px;height:auto}
#rmgcs.rmgcs-a .cv-arc{left:0;right:0;bottom:-20px;width:100%;height:auto}
#rmgcs .cv-kick,#rmgcs .kick,#rmgcs .bk-k{display:inline-block;font-family:var(--fd);font-weight:800;letter-spacing:.22em;font-size:14px;color:#fff;padding-bottom:6px;border-bottom:3px solid var(--orange);margin:0 0 18px}
#rmgcs.rmgcs-a .cv-l h1{color:#fff;font-weight:900;font-size:clamp(36px,4.3vw,58px);line-height:1.02;margin:0 0 16px;max-width:640px}
#rmgcs.rmgcs-a .cv-l h1 b.co{color:#fff}
#rmgcs.rmgcs-a .cv-sub{font-size:19px;line-height:1.5;color:#fff;max-width:600px;margin:0}
#rmgcs.rmgcs-a .cv-r{background:#fff;padding:52px 44px 40px;display:flex;flex-direction:column;gap:22px;justify-content:center}
#rmgcs.rmgcs-a .cv-logo{width:300px}
#rmgcs.rmgcs-a .cv-art svg{width:100%;max-width:360px;height:auto;display:block}
#rmgcs.rmgcs-a .cv-ids{margin:0;padding-top:12px;border-top:1px solid var(--line);font-size:15px;color:var(--body)}
#rmgcs.rmgcs-a .cv-facts{grid-column:1/-1;padding:26px 30px 44px;background:#fff}
/* back cover */
#rmgcs.rmgcs-a .back{display:grid;grid-template-columns:1fr 1fr;padding:0;border:0}
#rmgcs.rmgcs-a .bk-l{padding:56px 56px 72px}
#rmgcs .bk-k{color:var(--ink);text-transform:uppercase}
#rmgcs.rmgcs-a .bk-lq{display:flex;flex-wrap:wrap;align-items:center;gap:22px 30px;margin-top:22px}
#rmgcs.rmgcs-a .bk-logo{width:240px}
#rmgcs.rmgcs-a .bk-r{position:relative;background:var(--grad-panel);padding:64px 56px 72px;overflow:hidden;display:flex;flex-direction:column;justify-content:center}
#rmgcs.rmgcs-a .bk-r>svg{position:absolute}
#rmgcs.rmgcs-a .bk-star{left:-110px;bottom:-120px;width:440px;height:auto}
#rmgcs.rmgcs-a .bk-arc{left:0;right:0;top:30px;width:100%;height:auto}
#rmgcs.rmgcs-a .bk-ids{grid-column:1/-1;position:absolute!important;left:56px;bottom:18px;margin:0;font-size:15px;color:var(--body)}
#rmgcs.rmgcs-a .docfoot{margin-top:6px}
#rmgcs.rmgcs-a .data-grid{max-width:none}

/* =====================================================================================================
   OPTION B: web-native. Full-bleed panel hero, floating facts bar with copy buttons, sticky in-page nav,
   alternating white/tint sections, collapsible service groups, split contact section.
   ===================================================================================================== */
#rmgcs.rmgcs-b .wrap{max-width:1200px;margin:0 auto;padding:0 28px}
#rmgcs.rmgcs-b .hero{position:relative;background:var(--grad-panel);color:#fff;padding:84px 0 0;overflow:hidden}
#rmgcs.rmgcs-b .hero>svg{position:absolute;pointer-events:none}
#rmgcs.rmgcs-b .hero-star{right:-140px;top:-40px;width:560px;height:auto}
#rmgcs.rmgcs-b .hero-arc{left:0;right:0;top:300px;width:100%;height:auto}
#rmgcs.rmgcs-b .hero-in{position:relative;display:grid;grid-template-columns:1.35fr 1fr;gap:56px;align-items:center}
#rmgcs.rmgcs-b .hero h1{color:#fff;font-weight:900;font-size:clamp(38px,5vw,66px);line-height:1.02;margin:0 0 18px}
#rmgcs.rmgcs-b .hero h1 b.co{color:#fff}
#rmgcs.rmgcs-b .sub{font-size:20px;line-height:1.5;color:#fff;max-width:620px;margin:0}
#rmgcs.rmgcs-b .hero-card{background:#fff;border-radius:22px;padding:28px 30px 24px;display:flex;flex-direction:column;gap:18px;align-items:center}
#rmgcs.rmgcs-b .hero-logo{width:290px}
#rmgcs.rmgcs-b .hero-art svg{width:100%;max-width:380px;height:auto;display:block}
#rmgcs.rmgcs-b .facts-wrap{position:relative;padding-top:56px;padding-bottom:0;transform:translateY(0)}
#rmgcs.rmgcs-b .hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:70px;background:#fff}
#rmgcs.rmgcs-b .facts-wrap{z-index:1}
#rmgcs.rmgcs-b .facts{background:#fff;border-radius:18px;border:1px solid var(--line-2);padding:14px;gap:12px}
#rmgcs.rmgcs-b .fact{flex-direction:column;gap:10px;padding:16px 16px 16px}
#rmgcs .copy{position:absolute;right:10px;top:12px;width:34px;height:34px;border-radius:9px;border:1px solid var(--line-2);background:#fff;color:var(--blue-ink);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0}
#rmgcs .copy:hover{background:var(--blue-ink);color:#fff;border-color:var(--blue-ink)}
#rmgcs .copy svg.i{width:17px;height:17px}
#rmgcs .copy-ok{position:absolute;right:0;top:100%;margin-top:4px;background:var(--ink);color:#fff;font:700 12px/1.2 var(--ft);padding:3px 7px;border-radius:5px;opacity:0;transition:opacity .2s;pointer-events:none;white-space:nowrap}
#rmgcs .copy.done .copy-ok{opacity:1}
#rmgcs.rmgcs-b .subnav{position:sticky;top:var(--rmgcs-sticky,0px);z-index:20;background:#fff;border-bottom:1px solid var(--line);margin-top:26px}
#rmgcs.rmgcs-b .subnav ul{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;padding:10px 0}
#rmgcs.rmgcs-b .subnav ul::-webkit-scrollbar{display:none}
#rmgcs.rmgcs-b .subnav a{display:block;white-space:nowrap;padding:8px 14px;border-radius:999px;font-family:var(--fd);font-weight:700;font-size:15px;color:var(--ink);text-decoration:none}
#rmgcs.rmgcs-b .subnav a:hover,#rmgcs.rmgcs-b .subnav a.on{background:var(--tint);color:var(--blue-ink)}
#rmgcs.rmgcs-b .sec{position:relative;padding:72px 0;scroll-margin-top:80px}
#rmgcs.rmgcs-b .sec.tint{background:var(--tint)}
#rmgcs.rmgcs-b .sec.tint .card{background:#fff}
#rmgcs.rmgcs-b .sec.tint .card-ic{background:var(--tint)}
#rmgcs.rmgcs-b .ov{max-width:880px;font-size:19px;line-height:1.65}
#rmgcs.rmgcs-b .ov p:first-child{font-size:22px;color:var(--ink);font-weight:500;line-height:1.5}
#rmgcs.rmgcs-b .svcs{columns:3;column-gap:16px;column-rule:none}
#rmgcs.rmgcs-b .svc{margin:0 0 16px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:0;break-inside:avoid;display:block}
#rmgcs.rmgcs-b .svc summary{list-style:none;display:flex;align-items:center;gap:12px;padding:18px 20px 10px;cursor:default}
#rmgcs.rmgcs-b .svc summary::-webkit-details-marker{display:none}
#rmgcs.rmgcs-b .svc summary h3{font-size:18px;font-weight:800;margin:0;flex:1}
#rmgcs.rmgcs-b .svc .chev{display:none}
#rmgcs.rmgcs-b .svc ul{padding:0 20px 18px}
#rmgcs.rmgcs-b .sec.tint .diff{border-color:var(--line-2)}
#rmgcs.rmgcs-b .contact .ct-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;border-radius:20px;overflow:hidden;border:1px solid var(--line-2)}
#rmgcs.rmgcs-b .ct-l{padding:40px 44px;background:#fff}
#rmgcs.rmgcs-b .ct-lq{display:flex;flex-wrap:wrap;align-items:center;gap:20px 28px;margin-top:22px}
#rmgcs.rmgcs-b .ct-logo{width:230px}
#rmgcs.rmgcs-b .ct-r{position:relative;background:var(--grad-panel);padding:48px 44px;display:flex;flex-direction:column;justify-content:center;overflow:hidden}
#rmgcs.rmgcs-b .ct-r>*{position:relative} #rmgcs.rmgcs-b .ct-r>svg{position:absolute}
#rmgcs.rmgcs-b .ct-star{right:-120px;bottom:-130px;width:420px;height:auto}
#rmgcs.rmgcs-b .ct-arc{left:0;right:0;top:20px;width:100%;height:auto}
#rmgcs.rmgcs-b .ct-ids{margin:14px 0 0;font-size:15px}
#rmgcs.rmgcs-b .docfoot{margin:0 0 24px}

/* =====================================================================================================
   Responsive
   ===================================================================================================== */
@media (max-width:1100px){
  #rmgcs .facts{grid-template-columns:repeat(2,1fr)}
  #rmgcs .comp{grid-template-columns:repeat(2,1fr)}
  #rmgcs ol.steps{grid-template-columns:repeat(3,1fr);row-gap:26px}
  #rmgcs ol.steps::before{display:none}
  #rmgcs .docfoot{grid-template-columns:1fr 1fr 1fr}
  #rmgcs.rmgcs-b .svcs{columns:2}
}
@media (max-width:860px){
  #rmgcs.rmgcs-a .cover,#rmgcs.rmgcs-a .back{grid-template-columns:1fr}
  #rmgcs.rmgcs-a .cv-l{min-height:0;padding:48px 28px 56px}
  #rmgcs.rmgcs-a .cv-r{padding:28px 28px 8px;flex-direction:row;flex-wrap:wrap;align-items:center}
  #rmgcs.rmgcs-a .cv-art{display:none}
  #rmgcs.rmgcs-a .cv-ids{flex-basis:100%}
  #rmgcs.rmgcs-a .bk-ids{position:static!important;padding:0 28px 40px}
  #rmgcs.rmgcs-b .hero-in{grid-template-columns:1fr;gap:28px}
  #rmgcs.rmgcs-b .hero-card{flex-direction:row;padding:18px 20px;justify-content:space-between}
  #rmgcs.rmgcs-b .hero-art{display:none}
  #rmgcs.rmgcs-b .contact .ct-grid{grid-template-columns:1fr}
  #rmgcs .diffs{grid-template-columns:1fr}
  #rmgcs .blks{grid-template-columns:1fr}
  #rmgcs .svcs{columns:1}
}
@media (max-width:760px){
  #rmgcs{font-size:16px}
  #rmgcs .band{gap:12px;margin-bottom:20px}
  #rmgcs .badge{width:48px;height:48px;font-size:22px;border-radius:12px}
  #rmgcs .badge svg.i{width:23px;height:23px}
  #rmgcs .band h2{font-size:27px}
  #rmgcs .band-deco{display:none}
  #rmgcs .facts{gap:10px}
  #rmgcs .fact{flex-direction:column;gap:8px;padding:12px 12px 12px}
  #rmgcs .fact-ic{width:32px;height:32px}
  #rmgcs .fact-v.code{font-size:17px}
  #rmgcs .f3 .fact-v.code{font-size:15px}
  #rmgcs .fact-t{font-size:14px}
  #rmgcs .comp{grid-template-columns:1fr}
  #rmgcs ol.steps{grid-template-columns:1fr;gap:0;margin-bottom:20px}
  #rmgcs ol.steps::before{display:block;left:21px;right:auto;top:10px;bottom:10px;width:4px;height:auto;background:linear-gradient(180deg,#0095D9 0%,#0095D9 35%,#FF970F 100%)}
  #rmgcs ol.steps li{padding:6px 0 20px 64px;min-height:56px}
  #rmgcs .diff{padding:14px 14px 12px 68px}
  #rmgcs .lic{left:14px}
  #rmgcs .docfoot{grid-template-columns:1fr;gap:10px}
  #rmgcs .docfoot li{white-space:normal}
  #rmgcs .cb-row,#rmgcs .cb-ny{font-size:15px;align-items:flex-start}
  #rmgcs .cb-ic{width:28px;height:28px;margin-top:-4px}
  #rmgcs .btn{width:100%;justify-content:center}
  #rmgcs.rmgcs-a{padding:16px 0 10px}
  #rmgcs.rmgcs-a .doc{padding:0 10px}
  #rmgcs.rmgcs-a .sheet{padding:52px 18px 40px;border-radius:14px;margin-bottom:16px}
  #rmgcs.rmgcs-a .runhead{left:18px;right:18px;top:16px;font-size:12px}
  #rmgcs.rmgcs-a .cover,#rmgcs.rmgcs-a .back{padding:0}
  #rmgcs.rmgcs-a .cv-l{padding:40px 20px 48px}
  #rmgcs.rmgcs-a .cv-r{padding:22px 20px 4px}
  #rmgcs.rmgcs-a .cv-logo{width:220px}
  #rmgcs.rmgcs-a .cv-facts{padding:18px 14px 40px}
  #rmgcs.rmgcs-a .ov{font-size:16.5px}
  #rmgcs.rmgcs-a .bk-l{padding:36px 20px 28px}
  #rmgcs.rmgcs-a .bk-r{padding:44px 20px 52px}
  #rmgcs.rmgcs-a .bk-ids{padding:0 20px 36px}
  #rmgcs.rmgcs-b .wrap{padding:0 18px}
  #rmgcs.rmgcs-b .hero{padding-top:48px}
  #rmgcs.rmgcs-b .hero-card{flex-direction:column;align-items:flex-start}
  #rmgcs.rmgcs-b .hero-logo{width:220px}
  #rmgcs.rmgcs-b .facts-wrap{padding-top:32px}
  #rmgcs.rmgcs-b .facts{padding:10px}
  #rmgcs.rmgcs-b .fact{padding-right:12px}
  #rmgcs.rmgcs-b .copy{top:10px;right:8px;width:30px;height:30px}
  #rmgcs.rmgcs-b .sec{padding:48px 0}
  #rmgcs.rmgcs-b .ov{font-size:16.5px} #rmgcs.rmgcs-b .ov p:first-child{font-size:18px}
  #rmgcs.rmgcs-b .svcs{columns:1}
  #rmgcs.rmgcs-b .svc{margin-bottom:10px}
  #rmgcs.rmgcs-b .svc summary{cursor:pointer;padding:14px 16px}
  #rmgcs.rmgcs-b .svc .chev{display:block;width:12px;height:12px;border-right:2.5px solid var(--blue-ink);border-bottom:2.5px solid var(--blue-ink);transform:rotate(45deg);margin:-4px 6px 0 0;transition:transform .2s}
  #rmgcs.rmgcs-b .svc[open] .chev{transform:rotate(-135deg);margin-top:4px}
  #rmgcs.rmgcs-b .svc ul{padding:0 16px 14px}
  #rmgcs.rmgcs-b .ct-l{padding:28px 20px}
  #rmgcs.rmgcs-b .ct-r{padding:40px 20px}
  #rmgcs .qr img{width:96px;height:96px}
}
/* =====================================================================================================
   Option A corrections (Seion, Oct 4 2026, 4:29-4:31 PM CT; approved for live 4:33 PM)
   1 H1 on one line   2 Primary NAICS value on one line   3 single NY-first Address line   4 stacked Primary Contact
   ===================================================================================================== */
#rmgcs.rmgcs-a .cv-l{container-type:inline-size}
#rmgcs.rmgcs-a .cv-l h1{white-space:nowrap;max-width:none;font-size:min(58px,6.9vw);font-size:min(58px,calc(100cqi / 15))}  /* ~844px wide at 58px; 3% safety */
@media (min-width:1101px){#rmgcs.rmgcs-a .facts{grid-template-columns:1fr 1fr 1.18fr 1fr}}
@media (min-width:761px){
  #rmgcs.rmgcs-a .f3 .fact-t{flex:1 1 0;container-type:inline-size}
  #rmgcs.rmgcs-a .f3 .fact-v.code{white-space:nowrap;font-size:min(16px,calc(100cqi / 14.1))}            /* 223px wide at 16px */
}
#rmgcs .cb-addr{white-space:nowrap}
#rmgcs .cb-sep{margin:0 .15em;color:var(--blue-ink);font-weight:700}
#rmgcs.rmgcs-a .cb-row-addr{font-size:13px;align-items:center}
#rmgcs .cb .cb-prim-stack{display:flex;flex-direction:column;line-height:1.3}
#rmgcs .cb .cb-prim-stack .cb-pl{font-family:var(--fd);font-weight:800;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--body);margin-bottom:2px}
#rmgcs .cb .cb-prim-stack b.who{color:var(--ink);font-size:17px}
#rmgcs .cb .cb-prim-stack .cb-pt{color:var(--blue-ink);font-weight:600}
#rmgcs .docfoot .df-prim{display:flex;flex-direction:column;color:var(--blue-ink)}
#rmgcs .docfoot .df-prim .df-pl{font-weight:700;color:var(--body)}
#rmgcs .docfoot .df-prim b.who{color:var(--ink)}
#rmgcs .docfoot .df1 .cb-sep{margin:0 .05em}
@media (min-width:861px){
  #rmgcs.rmgcs-a .back{grid-template-columns:minmax(0,1.85fr) minmax(0,1fr)}
  #rmgcs.rmgcs-a .bk-l{padding-left:48px;padding-right:36px}
  #rmgcs.rmgcs-a .bk-r{padding-left:40px;padding-right:40px}
  #rmgcs.rmgcs-a .bk-ids{left:48px}
}
@media (max-width:760px){#rmgcs.rmgcs-a .cb-row-addr{align-items:flex-start}}
/* =====================================================================================================
   v0.10.1 (QA Oct 4 2026): F2/F3 code tables, F8 phone tables stack (no sideways scroll, nothing cut off)
   ===================================================================================================== */
#rmgcs .naics-t td{overflow-wrap:anywhere}
#rmgcs .psc-h{margin-top:26px}
@media (max-width:640px){
  #rmgcs .tscroll{overflow:visible;border-radius:10px}
  #rmgcs .team-t,#rmgcs .data-t,#rmgcs .naics-t{min-width:0}
  #rmgcs table.tbl,#rmgcs table.tbl tbody,#rmgcs table.tbl tr,#rmgcs table.tbl tbody th,#rmgcs table.tbl td{display:block;width:auto}
  #rmgcs table.tbl thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
  #rmgcs table.tbl{border-left:5px solid var(--blue)}
  #rmgcs table.tbl tbody tr{padding:10px 14px;border-bottom:1px solid var(--line)}
  #rmgcs table.tbl tbody tr:last-child{border-bottom:0}
  #rmgcs table.tbl tbody tr:nth-child(even){background:var(--tint)}
  #rmgcs table.tbl tbody th,#rmgcs table.tbl td{padding:0;border:0;background:transparent!important;white-space:normal;overflow-wrap:anywhere}
  #rmgcs table.tbl tbody th{margin:0 0 3px}
  #rmgcs table.tbl td+td{margin-top:4px}
  #rmgcs .team-t td::before{content:attr(data-label) ": ";font-weight:700;color:var(--ink)}
  #rmgcs .naics-t tbody th{margin-bottom:4px}
}
@media (prefers-reduced-motion:reduce){#rmgcs *{transition:none!important}}
@media print{
  #rmgcs .subnav,#rmgcs .btns,#rmgcs .copy,#rmgcs .review-bar{display:none!important}
  #rmgcs.rmgcs-a{background:#fff;padding:0}
  #rmgcs.rmgcs-a .sheet{break-inside:avoid;border-color:#ccc}
}
/* theme integration (only on pages using this plugin's template) */
.rmgcs-theme-tpl #content > .page-header,body.rmgcs-theme-tpl .site-content > .page-header{display:none!important}
.rmgcs-theme-tpl #content.site-content{padding-top:0!important;margin-top:0!important}
.rmgcs-theme-tpl .side-panel .elementor-widget-wp-widget-recent_news{display:none!important}
