/* =====================================================================
   Twitter / X Ban Service — bespoke "enforcement console" design.
   Brutalist, editorial, monospace-driven. Pure black + white, X-blue as the
   single functional accent. Sharp corners, hairline rules, terminal log.
   Deliberately unlike the sister sites (no rounded cards / no soft theme).
   ===================================================================== */
@font-face{ font-family:"Inter"; font-style:normal; font-weight:400 600; font-display:swap; src:url("/res/font/head-2137.woff2") format("woff2"); }
@font-face{ font-family:"Space Grotesk"; font-style:normal; font-weight:500 700; font-display:swap; src:url("/res/font/accent1-2137.woff2") format("woff2"); }

:root{
  --axis-ax_bg_213:#000; --axis-ax_bg2_213:#070708; --axis-ax_surface:#0c0c0e; --axis-ax_panel2_213:#101013;
  --axis-ax_line_213:rgba(255,255,255,.17); --axis-ax_line2_213:rgba(255,255,255,.08); --axis-ax_line3_213:rgba(255,255,255,.045);
  --axis-ax_ink_213:#f7f9f9; --axis-ax_text_213:#d9dde0; --axis-ax_soft:#71767b; --axis-ax_faint_213:#54585c;
  --axis-ax_blue_213:#1d9bf0; --axis-ax_blue2_213:#4db5ff; --axis-ax_blue_ink_213:#0e4f7a; --axis-ax_blue_soft_213:rgba(29,155,240,.13);
  --axis-ax_ok_213:#00ba7c;
  --axis-ax_mono_213:ui-monospace,"SF Mono","Cascadia Mono",Menlo,Consolas,"Liberation Mono",monospace;
  --axis-ax_disp_213:"Space Grotesk","Inter",system-ui,sans-serif;
  --axis-ax_sans_213:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --axis-ax_maxw_213:1240px; --axis-ax_ease_213:cubic-bezier(.2,.6,.3,1); --axis-ax_vh_213:1vh;
}
*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; }
@media (prefers-reduced-motion:reduce){ html{scroll-behavior:auto} *,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important} }
body{ margin:0; background:var(--axis-ax_bg_213); color:var(--axis-ax_text_213); font-family:var(--axis-ax_sans_213); font-size:1.02rem; line-height:1.65; overflow-x:clip; -webkit-font-smoothing:antialiased; }
/* faint engineering grid */
body::before{ content:""; position:fixed; inset:0; z-index:-2; pointer-events:none;
  background-image:linear-gradient(var(--axis-ax_line3_213) 1px,transparent 1px),linear-gradient(90deg,var(--axis-ax_line3_213) 1px,transparent 1px);
  background-size:64px 64px; -webkit-mask-image:radial-gradient(120% 80% at 50% 0%,#000 30%,transparent 80%); mask-image:radial-gradient(120% 80% at 50% 0%,#000 30%,transparent 80%); }
img,svg{ max-width:100%; height:auto; display:block; }
a{ color:var(--axis-ax_blue_213); text-decoration:none; }
::selection{ background:var(--axis-ax_blue_213); color:#000; }
strong{ color:var(--axis-ax_ink_213); font-weight:600; }
h1,h2,h3,h4{ font-family:var(--axis-ax_disp_213); color:var(--axis-ax_ink_213); margin:0; line-height:1.02; letter-spacing:-.03em; font-weight:700; }

.ax_holder{ width:100%; max-width:var(--axis-ax_maxw_213); margin-inline:auto; padding-inline:clamp(1.1rem,4vw,2.4rem); }
.ax_mono_213{ font-family:var(--axis-ax_mono_213); }
.ax_kicker_213{ font-family:var(--axis-ax_mono_213); font-size:.74rem; letter-spacing:.18em; text-transform:uppercase; color:var(--axis-ax_soft); display:inline-flex; align-items:center; gap:.6rem; }
.ax_kicker_213::before{ content:""; width:8px; height:8px; background:var(--axis-ax_blue_213); box-shadow:0 0 10px 1px var(--axis-ax_blue_213); }
:focus-visible{ outline:2px solid var(--axis-ax_blue_213); outline-offset:2px; }
.ax_skip_anchor{ position:absolute; left:8px; top:-50px; z-index:1000; background:var(--axis-ax_blue_213); color:#000; padding:.6rem 1rem; font-family:var(--axis-ax_mono_213); transition:top .15s; }
.ax_skip_anchor:focus{ top:8px; }

/* system status strip */
.ax_topbar_213{ background:#000; border-bottom:1px solid var(--axis-ax_line2_213); font-family:var(--axis-ax_mono_213); font-size:.7rem; letter-spacing:.14em; text-transform:uppercase; color:var(--axis-ax_faint_213); }
.ax_topbar_213 .ax_holder{ display:flex; justify-content:space-between; gap:1rem; padding-block:.5rem; }
.ax_topbar_213 .ax_ok_213{ color:var(--axis-ax_ok_213); }
.ax_topbar_213 .ax_ok_213::before{ content:"\25CF"; margin-right:.4rem; }
@media (max-width:640px){ .ax_topbar_213 .ax_hidesm_213{ display:none; } }

/* header */
.ax_hat{ position:sticky; top:0; z-index:100; background:rgba(0,0,0,.82); backdrop-filter:blur(10px); border-bottom:1px solid var(--axis-ax_line_213); }
.ax_mainnav{ display:flex; align-items:center; justify-content:space-between; gap:1rem; min-height:62px; }
.ax_identity{ display:inline-flex; align-items:center; gap:.65rem; font-family:var(--axis-ax_mono_213); font-weight:600; font-size:.98rem; letter-spacing:.02em; text-transform:uppercase; color:var(--axis-ax_ink_213); }
.ax_identity b{ color:var(--axis-ax_blue_213); font-weight:600; }
.ax_identity_mark{ width:26px; height:26px; flex:0 0 auto; }
.ax_mainnav_switch{ display:inline-flex; align-items:center; justify-content:center; width:44px; height:44px; background:transparent; border:1px solid var(--axis-ax_line_213); color:var(--axis-ax_ink_213); cursor:pointer; }
.ax_mainnav_switch svg{ width:22px; height:22px; } .ax_mainnav_switch .ax_x_213{ display:none; }
body.ax_mainnav_live .ax_mainnav_switch .ax_m_213{ display:none; } body.ax_mainnav_live .ax_mainnav_switch .ax_x_213{ display:block; }
.ax_mainnav_picker{ list-style:none; margin:0; padding:0; }
.ax_mainnav_anchor{ display:flex; align-items:center; min-height:44px; padding:.5rem .9rem; font-family:var(--axis-ax_mono_213); font-size:.82rem; letter-spacing:.06em; text-transform:uppercase; color:var(--axis-ax_soft); }
.ax_mainnav_anchor:hover,.ax_mainnav_anchor[aria-current="page"]{ color:var(--axis-ax_ink_213); }
.ax_mainnav_anchor_reachout{ border:1px solid var(--axis-ax_line_213); color:var(--axis-ax_ink_213); }
.ax_mainnav_anchor_reachout:hover{ border-color:var(--axis-ax_blue_213); background:var(--axis-ax_blue_soft_213); }
.ax_mainnav_picker{ position:fixed; inset:62px 0 auto 0; display:grid; gap:.1rem; padding:1rem clamp(1.1rem,4vw,2.4rem) 1.4rem; background:var(--axis-ax_bg_213); border-bottom:1px solid var(--axis-ax_line_213); transform:translateY(-130%); opacity:0; visibility:hidden; transition:transform .28s var(--axis-ax_ease_213),opacity .28s,visibility .28s; }
body.ax_mainnav_live .ax_mainnav_picker{ transform:none; opacity:1; visibility:visible; }
@media (min-width:860px){ .ax_mainnav_switch{display:none} .ax_mainnav_picker{position:static;inset:auto;display:flex;align-items:center;gap:.3rem;padding:0;background:none;border:0;transform:none;opacity:1;visibility:visible} }

/* buttons (squared) */
.ax_key{ display:inline-flex; align-items:center; justify-content:center; gap:.55rem; min-height:50px; padding:.8rem 1.4rem; border:1px solid var(--axis-ax_line_213); background:transparent; color:var(--axis-ax_ink_213); font-family:var(--axis-ax_mono_213); font-weight:600; font-size:.86rem; letter-spacing:.04em; text-transform:uppercase; cursor:pointer; border-radius:2px; transition:background .15s,border-color .15s,transform .12s; }
.ax_key:hover{ transform:translateY(-1px); }
.ax_key svg{ width:18px; height:18px; }
.ax_key_primary{ background:var(--axis-ax_blue_213); border-color:var(--axis-ax_blue_213); color:#000; }
.ax_key_primary:hover{ background:var(--axis-ax_blue2_213); border-color:var(--axis-ax_blue2_213); }
.ax_key_line:hover{ border-color:var(--axis-ax_blue_213); background:var(--axis-ax_blue_soft_213); }
.ax_key_lg{ min-height:56px; padding:.95rem 1.7rem; font-size:.92rem; }
.ax_key_band{ display:flex; flex-wrap:wrap; gap:.7rem; }
.ax_key_tg{ background:#229ED9; border-color:#229ED9; color:#fff; } .ax_key_tg:hover{ filter:brightness(1.08); }
.ax_key_wa{ background:#25D366; border-color:#25D366; color:#062b14; } .ax_key_wa:hover{ filter:brightness(1.06); }

/* HERO — manifesto */
.ax_intro{ padding-block:clamp(3rem,9vw,7rem) clamp(2.4rem,6vw,4.5rem); position:relative; }
.ax_intro h1{ font-size:clamp(2.6rem,9vw,6.4rem); margin:.5rem 0 0; max-width:16ch; }
.ax_intro h1 .ax_accent_213{ color:var(--axis-ax_blue_213); }
.ax_intro_second{ margin:1.6rem 0 0; max-width:60ch; font-size:clamp(1.05rem,1.8vw,1.25rem); color:var(--axis-ax_soft); }
.ax_def_213{ margin:1.6rem 0 0; max-width:64ch; padding:0 0 0 1.1rem; border-left:2px solid var(--axis-ax_blue_213); color:var(--axis-ax_text_213); }
.ax_intro_layout{ display:grid; gap:clamp(2rem,5vw,3.5rem); align-items:end; }
@media (min-width:1000px){ .ax_intro_layout{ grid-template-columns:1.15fr .85fr; } }

/* console / log widget */
.ax_console_213{ border:1px solid var(--axis-ax_line_213); background:linear-gradient(180deg,var(--axis-ax_panel2_213),var(--axis-ax_surface)); font-family:var(--axis-ax_mono_213); font-size:.82rem; }
.ax_console_ledge{ display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.6rem .9rem; border-bottom:1px solid var(--axis-ax_line2_213); color:var(--axis-ax_faint_213); letter-spacing:.1em; text-transform:uppercase; font-size:.68rem; }
.ax_console_ledge .ax_state_213{ color:var(--axis-ax_blue_213); }
.ax_console_body_213{ padding:1.1rem .9rem 1.2rem; display:grid; gap:.42rem; }
.ax_cl_213{ display:flex; gap:.6rem; color:var(--axis-ax_text_213); white-space:pre-wrap; }
.ax_cl_213 .ax_p_213{ color:var(--axis-ax_blue_213); } .ax_cl_213 .ax_k_213{ color:var(--axis-ax_soft); } .ax_cl_213 .ax_v_213{ color:var(--axis-ax_ink_213); }
.ax_cl_ok_213 .ax_v_213{ color:var(--axis-ax_blue_213); }
.ax_cl_steps_213{ color:var(--axis-ax_soft); } .ax_cl_steps_213 b{ color:var(--axis-ax_ink_213); font-weight:600; } .ax_cl_steps_213 .ax_now_213{ color:var(--axis-ax_blue_213); }
.ax_cursor_213{ display:inline-block; width:.62ch; height:1.05em; background:var(--axis-ax_blue_213); margin-left:.1rem; vertical-align:-.18em; animation:blink 1.1s steps(1) infinite; }
@keyframes blink{ 50%{opacity:0} }
@media (prefers-reduced-motion:reduce){ .ax_cursor_213{ animation:none; } }

/* sections — numbered editorial */
.ax_sec_213{ border-top:1px solid var(--axis-ax_line2_213); padding-block:clamp(3rem,7vw,6rem); }
.ax_sec_layout{ display:grid; gap:clamp(1.2rem,3vw,2.6rem); }
@media (min-width:880px){ .ax_sec_layout{ grid-template-columns:minmax(0,230px) 1fr; } }
.ax_sec_num_213{ font-family:var(--axis-ax_mono_213); font-size:.78rem; letter-spacing:.14em; text-transform:uppercase; color:var(--axis-ax_blue_213); }
.ax_sec_num_213 b{ display:block; color:var(--axis-ax_soft); font-weight:400; margin-top:.4rem; }
.ax_sec_213 h2{ font-size:clamp(1.8rem,4vw,2.9rem); max-width:18ch; }
.ax_sec_deck{ color:var(--axis-ax_soft); max-width:64ch; margin:1rem 0 0; }
.ax_longform{ color:var(--axis-ax_text_213); max-width:66ch; } .ax_longform a{ text-decoration:underline; text-underline-offset:3px; }

/* violation ledger (ruled rows) */
.ax_vio_213{ margin-top:clamp(1.4rem,3vw,2.2rem); border-top:1px solid var(--axis-ax_line2_213); }
.ax_band{ display:grid; gap:.3rem 1.3rem; padding:1.3rem .2rem; border-bottom:1px solid var(--axis-ax_line2_213); position:relative; transition:background .15s; }
@media (min-width:680px){ .ax_band{ grid-template-columns:54px 1fr; align-items:start; } }
.ax_band::before{ content:""; position:absolute; left:0; top:0; bottom:0; width:2px; background:var(--axis-ax_blue_213); transform:scaleY(0); transform-origin:top; transition:transform .2s var(--axis-ax_ease_213); }
.ax_band:hover::before{ transform:scaleY(1); }
.ax_band:hover{ background:linear-gradient(90deg,var(--axis-ax_blue_soft_213),transparent 55%); }
.ax_band_not{ font-family:var(--axis-ax_mono_213); font-size:.9rem; color:var(--axis-ax_blue_213); padding-top:.15rem; }
.ax_band h3{ font-size:1.12rem; margin:0 0 .25rem; }
.ax_band p{ margin:0; color:var(--axis-ax_soft); font-size:.97rem; }

/* ledger / comparison table */
.ax_ledger_213{ width:100%; border-collapse:collapse; border:1px solid var(--axis-ax_line_213); margin-top:1.4rem; font-size:.95rem; }
.ax_ledger_213 th,.ax_ledger_213 td{ text-align:left; padding:.95rem 1rem; border-bottom:1px solid var(--axis-ax_line2_213); vertical-align:top; }
.ax_ledger_213 thead th{ font-family:var(--axis-ax_mono_213); font-size:.72rem; letter-spacing:.1em; text-transform:uppercase; color:var(--axis-ax_soft); background:var(--axis-ax_surface); }
.ax_ledger_213 td:first-child{ color:var(--axis-ax_soft); }
.ax_ledger_213 tbody tr:last-child td{ border-bottom:0; }
.ax_ledger_213 .ax_yes_213{ color:var(--axis-ax_blue_213); font-weight:600; }
.ax_ledger_213 .ax_not{ color:var(--axis-ax_faint_213); }
@media (max-width:600px){ .ax_ledger_213{ display:block; overflow-x:auto; white-space:nowrap; } .ax_ledger_213 th,.ax_ledger_213 td{ padding:.7rem; } }

/* principles */
.ax_cols3_213{ display:grid; gap:clamp(1.4rem,3vw,2.2rem); margin-top:clamp(1.2rem,3vw,2rem); }
@media (min-width:760px){ .ax_cols3_213{ grid-template-columns:repeat(3,1fr); } }
.ax_pri_213{ border-top:2px solid var(--axis-ax_blue_213); padding-top:1rem; }
.ax_pri_213 h3{ font-size:1.1rem; margin:0 0 .4rem; }
.ax_pri_213 p{ margin:0; color:var(--axis-ax_soft); font-size:.96rem; }

/* FAQ — ruled */
.ax_qa_213{ border-top:1px solid var(--axis-ax_line2_213); margin-top:1.2rem; }
.ax_qa_213 details{ border-bottom:1px solid var(--axis-ax_line2_213); }
.ax_qa_213 summary{ cursor:pointer; list-style:none; display:flex; justify-content:space-between; gap:1rem; align-items:center; padding:1.15rem .2rem; font-family:var(--axis-ax_disp_213); font-weight:600; font-size:1.08rem; color:var(--axis-ax_ink_213); min-height:48px; }
.ax_qa_213 summary::-webkit-details-marker{ display:none; }
.ax_qa_213 summary::after{ content:"+"; font-family:var(--axis-ax_mono_213); color:var(--axis-ax_blue_213); font-size:1.3rem; }
.ax_qa_213 details[open] summary::after{ content:"\2013"; }
.ax_qa_213 details>p{ margin:0; padding:0 .2rem 1.2rem; color:var(--axis-ax_soft); max-width:74ch; }

/* CTA */
.ax_reachout{ border:1px solid var(--axis-ax_line_213); border-left:3px solid var(--axis-ax_blue_213); padding:clamp(1.8rem,5vw,3.2rem); background:linear-gradient(120deg,var(--axis-ax_blue_soft_213),transparent 60%),var(--axis-ax_surface); }
.ax_reachout h2{ font-size:clamp(1.8rem,4vw,2.8rem); max-width:18ch; }
.ax_reachout p{ color:var(--axis-ax_soft); max-width:60ch; margin:.7rem 0 1.5rem; }

/* footer */
.ax_tailbar{ border-top:1px solid var(--axis-ax_line_213); padding-block:clamp(2.4rem,6vw,3.6rem) 2rem; margin-top:clamp(2rem,5vw,3rem); }
.ax_tailbar_layout{ display:grid; gap:2rem; }
@media (min-width:760px){ .ax_tailbar_layout{ grid-template-columns:2fr 1fr 1.4fr; } }
.ax_tailbar h4{ font-family:var(--axis-ax_mono_213); font-size:.72rem; letter-spacing:.14em; text-transform:uppercase; color:var(--axis-ax_faint_213); margin:0 0 1rem; }
.ax_tailbar_links{ list-style:none; margin:0; padding:0; display:grid; gap:.55rem; }
.ax_tailbar_links a{ color:var(--axis-ax_soft); font-size:.95rem; } .ax_tailbar_links a:hover{ color:var(--axis-ax_ink_213); }
.ax_tailbar_annot{ color:var(--axis-ax_soft); font-size:.9rem; max-width:44ch; margin:1rem 0 0; }
.ax_tailbar_bottom{ border-top:1px solid var(--axis-ax_line2_213); margin-top:2.4rem; padding-top:1.4rem; display:flex; flex-wrap:wrap; gap:.5rem 1.5rem; justify-content:space-between; font-family:var(--axis-ax_mono_213); font-size:.74rem; letter-spacing:.04em; color:var(--axis-ax_faint_213); }

/* ===== contact page ===== */
.ax_cpage_213{ padding-block:clamp(2.4rem,6vw,4.5rem); }
.ax_cpage_213 h1{ font-size:clamp(2.4rem,7vw,4.6rem); margin:.6rem 0 0; }
.ax_cpage_deck{ color:var(--axis-ax_soft); max-width:60ch; margin:1.2rem 0 0; }
.ax_channels_213{ display:grid; gap:1px; background:var(--axis-ax_line2_213); border:1px solid var(--axis-ax_line_213); margin-top:clamp(2rem,4vw,3rem); }
@media (min-width:720px){ .ax_channels_213{ grid-template-columns:1fr 1fr; } }
.ax_chan_213{ background:var(--axis-ax_bg_213); padding:clamp(1.6rem,3vw,2.2rem); }
.ax_chan_descriptor{ font-family:var(--axis-ax_mono_213); font-size:.72rem; letter-spacing:.14em; text-transform:uppercase; color:var(--axis-ax_soft); }
.ax_chan_id_213{ font-family:var(--axis-ax_disp_213); font-size:clamp(1.2rem,2.6vw,1.6rem); color:var(--axis-ax_ink_213); margin:.5rem 0 1.1rem; word-break:break-word; }
.ax_chan_actions_213{ display:flex; flex-wrap:wrap; gap:.6rem; }
.ax_lift{ display:inline-flex; align-items:center; gap:.4rem; min-height:50px; padding:.6rem 1.1rem; border:1px solid var(--axis-ax_line_213); background:transparent; color:var(--axis-ax_soft); font-family:var(--axis-ax_mono_213); font-size:.8rem; letter-spacing:.06em; text-transform:uppercase; cursor:pointer; border-radius:2px; }
.ax_lift:hover{ border-color:var(--axis-ax_blue_213); color:var(--axis-ax_ink_213); } .ax_lift.ax_captured{ color:var(--axis-ax_blue_213); border-color:var(--axis-ax_blue_213); }
.ax_lift svg{ width:15px; height:15px; }
.ax_panels_213{ display:grid; gap:1px; background:var(--axis-ax_line2_213); border:1px solid var(--axis-ax_line_213); border-top:0; }
@media (min-width:720px){ .ax_panels_213{ grid-template-columns:1fr 1fr; } }
.ax_surface{ background:var(--axis-ax_bg_213); padding:clamp(1.6rem,3vw,2.2rem); }
.ax_surface h2{ font-family:var(--axis-ax_mono_213); font-size:.82rem; letter-spacing:.1em; text-transform:uppercase; color:var(--axis-ax_ink_213); margin:0 0 1.1rem; }
.ax_checklist_213,.ax_steps_column{ list-style:none; margin:0; padding:0; display:grid; gap:.8rem; }
.ax_checklist_213 li{ display:flex; gap:.7rem; color:var(--axis-ax_soft); font-size:.95rem; }
.ax_checklist_213 li::before{ content:"\2713"; color:var(--axis-ax_blue_213); font-family:var(--axis-ax_mono_213); }
.ax_steps_column{ counter-reset:s; }
.ax_steps_column li{ display:flex; gap:.8rem; color:var(--axis-ax_soft); font-size:.95rem; }
.ax_steps_column li::before{ counter-increment:s; content:"0" counter(s); font-family:var(--axis-ax_mono_213); color:var(--axis-ax_blue_213); }
.ax_reassure_213{ margin-top:1.2rem; color:var(--axis-ax_faint_213); font-size:.86rem; }

/* ===== solutions page ===== */
.ax_crumbs_213{ font-family:var(--axis-ax_mono_213); font-size:.76rem; letter-spacing:.06em; color:var(--axis-ax_faint_213); }
.ax_crumbs_213 a{ color:var(--axis-ax_soft); }
.ax_svc_213{ border-top:1px solid var(--axis-ax_line2_213); padding-block:clamp(1.8rem,4vw,2.6rem); }
.ax_svc_213 h2{ font-size:clamp(1.4rem,3vw,2rem); }
.ax_svc_ans_213{ border-left:2px solid var(--axis-ax_blue_213); padding-left:1rem; color:var(--axis-ax_text_213); margin:.7rem 0 1rem; max-width:68ch; }
.ax_svc_213 ul{ margin:0; padding-left:1.1rem; color:var(--axis-ax_soft); } .ax_svc_213 li{ margin-bottom:.4rem; } .ax_svc_213 li::marker{ color:var(--axis-ax_blue_213); }
.ax_annot{ border:1px solid var(--axis-ax_line_213); border-left:3px solid var(--axis-ax_blue_213); padding:1.1rem 1.3rem; color:var(--axis-ax_text_213); background:var(--axis-ax_surface); margin-top:2rem; }
.ax_annot strong{ color:var(--axis-ax_ink_213); }

/* reveal */
@keyframes rise{ from{opacity:0;transform:translateY(16px)} to{opacity:1;transform:none} }
@media (prefers-reduced-motion:no-preference){ .ax_reveal_213{ animation:rise .6s var(--axis-ax_ease_213) both; } .ax_reveal_d1_213{animation-delay:.08s} .ax_reveal_d2_213{animation-delay:.16s} }

/* mobile hardening */
body{ overflow-wrap:break-word; }
.ax_def_213,.ax_longform a,.ax_tailbar_links a,.ax_chan_id_213,.ax_crumbs_213{ overflow-wrap:anywhere; }
.ax_key{ overflow-wrap:normal; word-break:keep-all; }
@supports (padding:max(0px)){ .ax_holder{ padding-left:max(clamp(1.1rem,4vw,2.4rem),env(safe-area-inset-left)); padding-right:max(clamp(1.1rem,4vw,2.4rem),env(safe-area-inset-right)); } }
@media (max-width:560px){ .ax_key_band .ax_key{ flex:1 1 100%; } .ax_intro h1{ font-size:clamp(2.2rem,11vw,3rem); } }

/* compact hero — keep contact buttons above the fold (desktop + mobile) */
.ax_intro{ padding-top:clamp(1.3rem,3vw,2.1rem)!important; }
.ax_intro h1{ font-size:clamp(2.1rem,5vw,3.6rem)!important; }

/* fix: let grid columns shrink so the comparison ledger scrolls internally (no page overflow on mobile) */
.ax_sec_layout>*{ min-width:0; }
.ax_ledger_213{ max-width:100%; }

/* =====================================================================
   Solution sub-pages / generated guides (/solutions/<slug>/).
   Same brutalist enforcement-console language: hairline rules, mono labels,
   X-blue accent, sharp corners. Maps the generator's required class hooks
   (.answer / .inline-cta / .faq / .table-wrap) onto the site's own look.
   ===================================================================== */
.ax_article_sec_213{ border-top:0; padding-block:clamp(1.6rem,4vw,3rem); }
.ax_article_213{ max-width:760px; margin-inline:auto; }
.ax_article_213 .ax_subline{ font-family:var(--axis-ax_mono_213); font-size:.73rem; letter-spacing:.08em; text-transform:uppercase; color:var(--axis-ax_faint_213); margin:.9rem 0 0; }
.ax_article_213 h1{ font-size:clamp(2rem,5vw,3.3rem); max-width:20ch; margin:1rem 0 0; }
.ax_article_213 h2{ font-size:clamp(1.45rem,3.2vw,2.05rem); max-width:26ch; margin:2.6rem 0 .3rem; letter-spacing:-.02em; }
.ax_article_213 h3{ font-size:1.16rem; margin:1.7rem 0 .35rem; }
.ax_article_213 p{ color:var(--axis-ax_text_213); margin:.95rem 0; max-width:72ch; }
.ax_article_213 ul,.ax_article_213 ol{ color:var(--axis-ax_soft); max-width:72ch; padding-left:1.25rem; margin:1rem 0; }
.ax_article_213 li{ margin-bottom:.5rem; } .ax_article_213 li::marker{ color:var(--axis-ax_blue_213); }
.ax_article_213 strong{ color:var(--axis-ax_ink_213); }
.ax_article_213 a{ color:var(--axis-ax_blue_213); text-decoration:underline; text-underline-offset:3px; overflow-wrap:anywhere; }
/* prose-link colour must not clobber nested CTA buttons (specificity 0,1,1 beats .ax_key_* at 0,1,0) */
.ax_article_213 a.ax_key,.ax_longform a.ax_key{ text-decoration:none; overflow-wrap:normal; word-break:keep-all; color:var(--axis-ax_ink_213); }
.ax_article_213 a.ax_key_primary,.ax_longform a.ax_key_primary{ color:#000; }
.ax_article_213 a.ax_key_tg,.ax_longform a.ax_key_tg{ color:#fff; }
.ax_article_213 a.ax_key_wa,.ax_longform a.ax_key_wa{ color:#062b14; }
.ax_article_213 img{ width:100%; height:auto; border:1px solid var(--axis-ax_line2_213); margin:1.7rem 0; background:var(--axis-ax_surface); }

/* lead answer — mirrors .def */
.ax_return{ font-size:1.13rem; line-height:1.6; color:var(--axis-ax_ink_213); border-left:2px solid var(--axis-ax_blue_213); padding:.15rem 0 .15rem 1.15rem; margin:1.5rem 0; max-width:70ch; }

/* inline takedown-offer CTA — boxed */
.ax_inline_reachout{ border:1px solid var(--axis-ax_line_213); border-left:3px solid var(--axis-ax_blue_213); background:linear-gradient(120deg,var(--axis-ax_blue_soft_213),transparent 60%),var(--axis-ax_surface); padding:clamp(1.25rem,3vw,1.8rem); margin:1.9rem 0; }
.ax_inline_reachout h3{ font-size:1.22rem; margin:0 0 .55rem; }
.ax_inline_reachout p{ color:var(--axis-ax_soft); margin:0 0 1.1rem; max-width:64ch; }
.ax_inline_reachout_btns{ display:flex; flex-wrap:wrap; gap:.7rem; }
@media (max-width:520px){ .ax_inline_reachout_btns .ax_key{ flex:1 1 100%; } }

/* comparison table — mirrors .ledger */
.ax_ledger_holder{ overflow-x:auto; margin:1.5rem 0; border:1px solid var(--axis-ax_line_213); }
.ax_ledger_holder table{ width:100%; border-collapse:collapse; font-size:.94rem; }
.ax_ledger_holder th,.ax_ledger_holder td{ text-align:left; padding:.9rem 1rem; border-bottom:1px solid var(--axis-ax_line2_213); vertical-align:top; }
.ax_ledger_holder thead th{ font-family:var(--axis-ax_mono_213); font-size:.71rem; letter-spacing:.1em; text-transform:uppercase; color:var(--axis-ax_soft); background:var(--axis-ax_surface); }
.ax_ledger_holder td:first-child{ color:var(--axis-ax_soft); }
.ax_ledger_holder tbody tr:last-child td{ border-bottom:0; }

/* FAQ — mirrors .qa */
.ax_quest{ border-top:1px solid var(--axis-ax_line2_213); margin-top:1.3rem; }
.ax_quest details{ border-bottom:1px solid var(--axis-ax_line2_213); }
.ax_quest summary{ cursor:pointer; list-style:none; display:flex; justify-content:space-between; gap:1rem; align-items:center; padding:1.1rem .2rem; font-family:var(--axis-ax_disp_213); font-weight:600; font-size:1.04rem; color:var(--axis-ax_ink_213); min-height:48px; }
.ax_quest summary::-webkit-details-marker{ display:none; }
.ax_quest summary::after{ content:"+"; font-family:var(--axis-ax_mono_213); color:var(--axis-ax_blue_213); font-size:1.3rem; }
.ax_quest details[open] summary::after{ content:"\2013"; }
.ax_quest details>p{ margin:0; padding:0 .2rem 1.2rem; color:var(--axis-ax_soft); max-width:74ch; }

/* in-depth guide cards (solutions hub) */
.ax_story_layout{ display:grid; gap:1px; background:var(--axis-ax_line2_213); border:1px solid var(--axis-ax_line_213); margin-top:1.4rem; }
@media (min-width:680px){ .ax_story_layout{ grid-template-columns:repeat(2,1fr); } }
.ax_story_slab{ background:var(--axis-ax_bg_213); padding:1.4rem 1.5rem; }
.ax_story_slab_subline{ font-family:var(--axis-ax_mono_213); font-size:.7rem; letter-spacing:.14em; text-transform:uppercase; color:var(--axis-ax_soft); margin:0 0 .5rem; }
.ax_story_slab h3{ font-size:1.16rem; margin:0 0 .5rem; line-height:1.2; }
.ax_story_slab h3 a{ color:var(--axis-ax_ink_213); } .ax_story_slab h3 a:hover{ color:var(--axis-ax_blue_213); }
.ax_story_slab p{ color:var(--axis-ax_soft); font-size:.95rem; margin:0 0 .7rem; }
.ax_story_slab_more{ font-family:var(--axis-ax_mono_213); font-size:.74rem; letter-spacing:.06em; text-transform:uppercase; color:var(--axis-ax_blue_213); }

/* article: keep both inline-CTA contact buttons above the fold on small screens */
@media (max-width:560px){
  .ax_article_sec_213{ padding-block:.6rem; }
  .ax_article_213 .ax_subline{ margin-top:.6rem; font-size:.7rem; }
  .ax_article_213 h1{ font-size:1.5rem; line-height:1.08; margin-top:.7rem; }
  .ax_return{ font-size:.96rem; line-height:1.5; margin:.9rem 0; padding-left:.85rem; }
  .ax_inline_reachout{ padding:.9rem 1rem; margin:1rem 0; }
  .ax_inline_reachout h3{ font-size:1.05rem; margin-bottom:.4rem; }
  .ax_inline_reachout p{ font-size:.92rem; margin-bottom:.8rem; }
  .ax_inline_reachout_btns{ flex-wrap:nowrap; gap:.5rem; }
  .ax_inline_reachout_btns .ax_key{ flex:1 1 0; min-width:0; padding-inline:.6rem; }
}
