/* ADMS public website consistency alignment v3.2.5
   Stable-baseline build. All shared selectors are ADMS-prefixed.
   The page-specific content and compiled homepage application are not replaced. */

:root{
  --adms-shell-black:#08090d;
  --adms-shell-black-2:#05070b;
  --adms-shell-line:#1b1e26;
  --adms-shell-text:#f3f0ea;
  --adms-shell-muted:#aaa7a1;
  --adms-shell-accent:#ff6b00;
  --adms-shell-accent-2:#00d8f6;
  --adms-shell-max:1440px;
  --adms-shell-gutter:clamp(16px,3vw,44px);
  --adms-shell-font-ui:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;
  --adms-shell-font-display:"Orbitron",system-ui,sans-serif;
}

html,body{max-width:100%}
body.adms-public-consistency{min-width:0;overflow-x:clip}
body.adms-public-consistency *,
body.adms-public-consistency *::before,
body.adms-public-consistency *::after{box-sizing:border-box}
body.adms-public-consistency :where(main,section,article,aside,form,fieldset,.wrap,.fw){min-width:0}
body.adms-public-consistency :where(img,video,iframe,canvas){max-width:100%;height:auto}
body.adms-public-consistency :where(input,select,textarea,button){max-width:100%}
body.adms-public-consistency :where(pre,code){max-width:100%;overflow-wrap:anywhere}
body.adms-public-consistency :where(.feat-grid,.pack-grid,.stat-row,.tiers,.tiers-ent,.addons,.metrics,.cmp-grid,.trust,.hub,.resource-grid,.academy-grid,.template-grid,.tool-grid,.industry-grid,.integration-grid,.support-grid,.compare-grid,.sg-grid,.cx-grid) > *{min-width:0}
body.adms-public-consistency table{max-width:100%}
body.adms-public-consistency :where(.table-wrap,.comparison-wrap,.cmp-wrap,.overflow-table){max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}

.adms-sr-only{
  position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;
  overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;
}

/* Shared brand art. The image is a CSS background inside a fixed-size box,
   so the source file can never expand over page content. */
.adms-public-brand-art{
  display:block;
  width:232px;
  height:48px;
  max-width:232px;
  flex:0 0 232px;
  background-image:url('/assets/adms-logo-horizontal-dark-v323.png');
  background-repeat:no-repeat;
  background-position:left center;
  background-size:contain;
}

/* Shared static-page header. */
header.adms-public-header{
  position:sticky;
  top:0;
  z-index:900;
  width:100%;
  min-width:0;
  margin:0;
  border:0;
  border-bottom:1px solid var(--adms-shell-line);
  background:rgba(8,9,13,.97);
  color:var(--adms-shell-text);
  box-shadow:none;
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}

.adms-public-header-inner{
  display:grid;
  grid-template-columns:minmax(250px,1fr) auto;
  grid-template-areas:"brand actions" "nav nav";
  align-items:center;
  width:100%;
  max-width:var(--adms-shell-max);
  min-width:0;
  margin:0 auto;
  padding:9px var(--adms-shell-gutter) 0;
}

.adms-public-brand{
  grid-area:brand;
  display:inline-flex;
  align-items:center;
  width:fit-content;
  min-width:0;
  color:inherit;
  text-decoration:none;
}

.adms-public-nav{
  grid-area:nav;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  width:100%;
  min-width:0;
  min-height:42px;
  margin-top:7px;
  padding:10px 0 11px;
  gap:clamp(12px,1.45vw,24px);
  border-top:1px solid var(--adms-shell-line);
  overflow:visible;
}

.adms-public-nav a{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  color:var(--adms-shell-muted);
  font-family:var(--adms-shell-font-ui);
  font-size:clamp(9px,.68vw,11px);
  font-weight:700;
  line-height:1.2;
  letter-spacing:.075em;
  text-decoration:none;
  text-transform:uppercase;
  white-space:nowrap;
  transition:color .18s ease;
}

.adms-public-nav a:hover,
.adms-public-nav a:focus-visible,
.adms-public-nav a.is-active,
.adms-public-nav a[aria-current="page"]{color:var(--adms-shell-accent)}

.adms-public-actions{
  grid-area:actions;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  min-width:0;
  gap:9px;
}

.adms-public-action,
.adms-public-theme,
.adms-public-menu-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  border:1px solid #292d36;
  border-radius:4px;
  background:#11131a;
  color:var(--adms-shell-text);
  font-family:var(--adms-shell-font-ui);
  font-size:10px;
  font-weight:800;
  line-height:1;
  letter-spacing:.075em;
  text-decoration:none;
  text-transform:uppercase;
  cursor:pointer;
}

.adms-public-action{padding:0 14px;white-space:nowrap}
.adms-public-action:hover,.adms-public-action:focus-visible,
.adms-public-theme:hover,.adms-public-theme:focus-visible,
.adms-public-menu-button:hover,.adms-public-menu-button:focus-visible{border-color:var(--adms-shell-accent);color:var(--adms-shell-accent)}
.adms-public-action--primary{border-color:var(--adms-shell-accent);background:var(--adms-shell-accent);color:#160900}
.adms-public-action--primary:hover,.adms-public-action--primary:focus-visible{background:#ff8127;color:#160900}
.adms-public-theme{width:38px;height:38px;padding:0;flex:0 0 38px}
.adms-public-theme svg{width:17px;height:17px;display:block}
html.dark .adms-public-theme .adms-theme-sun{display:none}
html:not(.dark) .adms-public-theme .adms-theme-moon{display:none}
.adms-public-menu-button{display:none;width:44px;height:38px;padding:0;flex:0 0 44px;flex-direction:column;gap:5px}
.adms-public-menu-button span{display:block;width:19px;height:2px;background:currentColor;transition:transform .18s ease,opacity .18s ease}
.adms-public-menu-button[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.adms-public-menu-button[aria-expanded="true"] span:nth-child(2){opacity:0}
.adms-public-menu-button[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

.adms-public-mobile-menu{
  display:none;
  width:100%;
  max-height:calc(100vh - 66px);
  padding:8px var(--adms-shell-gutter) 20px;
  border-top:1px solid var(--adms-shell-line);
  background:var(--adms-shell-black);
  overflow-y:auto;
}
.adms-public-mobile-menu.is-open{display:block}
.adms-public-mobile-menu-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 22px;
  width:100%;
  max-width:var(--adms-shell-max);
  margin:0 auto;
}
.adms-public-mobile-menu a{
  display:flex;
  align-items:center;
  min-height:44px;
  padding:8px 0;
  border-bottom:1px solid var(--adms-shell-line);
  color:var(--adms-shell-muted);
  font-family:var(--adms-shell-font-ui);
  font-size:11px;
  font-weight:700;
  line-height:1.35;
  letter-spacing:.06em;
  text-decoration:none;
  text-transform:uppercase;
}
.adms-public-mobile-menu a:hover,.adms-public-mobile-menu a:focus-visible,.adms-public-mobile-menu a.is-active{color:var(--adms-shell-accent)}
.adms-public-mobile-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%;max-width:var(--adms-shell-max);margin:16px auto 0}
.adms-public-mobile-actions .adms-public-action{width:100%;min-height:44px}

/* The homepage keeps its compiled application and existing header enhancer,
   but uses the same contained brand art and black shell. */
header.adms-home-header{
  z-index:900!important;
  border-bottom:1px solid var(--adms-shell-line)!important;
  background:rgba(8,9,13,.97)!important;
  color:var(--adms-shell-text)!important;
}
header.adms-home-header .adms-v16-logo-link{
  display:inline-flex;
  align-items:center;
  width:fit-content;
  min-width:0;
  color:inherit;
  text-decoration:none;
}
header.adms-home-header .adms-public-brand-art{width:232px;height:48px;max-width:232px;flex-basis:232px}
header.adms-home-header .adms-home-nav a{color:var(--adms-shell-muted)!important}
header.adms-home-header .adms-home-nav a:hover,
header.adms-home-header .adms-home-nav a:focus-visible{color:var(--adms-shell-accent)!important}

/* Shared footer. */
footer.adms-public-footer{
  width:100%;
  min-width:0;
  margin-top:72px;
  border:0;
  border-top:1px solid var(--adms-shell-line);
  background:var(--adms-shell-black-2);
  color:var(--adms-shell-muted);
  font-family:var(--adms-shell-font-ui);
}
.adms-public-footer a{color:inherit;text-decoration:none}
.adms-public-footer-inner{width:100%;max-width:var(--adms-shell-max);min-width:0;margin:0 auto;padding-inline:var(--adms-shell-gutter)}
.adms-public-footer-grid{
  display:grid;
  grid-template-columns:minmax(250px,1.55fr) repeat(4,minmax(126px,1fr));
  gap:clamp(26px,3vw,44px);
  padding-top:50px;
  padding-bottom:40px;
}
.adms-public-footer-column{min-width:0}
.adms-public-footer-brand .adms-public-brand-art{width:260px;height:54px;max-width:260px;flex-basis:260px}
.adms-public-footer-brand p{max-width:38ch;margin:17px 0 0;color:var(--adms-shell-muted);font-size:13px;line-height:1.65}
.adms-public-footer-mail{display:inline-block;margin-top:14px;color:var(--adms-shell-accent)!important;font-size:12px;font-weight:700;letter-spacing:.04em}
.adms-public-footer-heading{margin:0 0 16px;color:var(--adms-shell-accent);font-family:var(--adms-shell-font-ui)!important;font-size:11px!important;font-weight:800!important;line-height:1.3!important;letter-spacing:.14em!important;text-transform:uppercase}
.adms-public-footer-column nav{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.adms-public-footer-column nav a{width:fit-content;max-width:100%;color:var(--adms-shell-muted);font-size:13px;line-height:1.42;overflow-wrap:anywhere;transition:color .18s ease}
.adms-public-footer-column nav a:hover,.adms-public-footer-column nav a:focus-visible{color:var(--adms-shell-text)}
.adms-public-footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;padding-top:22px;padding-bottom:30px;border-top:1px solid var(--adms-shell-line)}
.adms-public-footer-bottom small,.adms-public-footer-mini a{color:var(--adms-shell-muted);font-size:10.5px;line-height:1.5;letter-spacing:.055em;text-transform:uppercase}
.adms-public-footer-mini{display:flex;flex-wrap:wrap;gap:18px}
.adms-public-footer-mini a:hover,.adms-public-footer-mini a:focus-visible{color:var(--adms-shell-accent)}

@media(max-width:1180px){
  .adms-public-header-inner{display:flex;align-items:center;justify-content:space-between;min-height:66px;padding:9px var(--adms-shell-gutter);gap:16px}
  .adms-public-brand{flex:1 1 auto}
  .adms-public-nav{display:none}
  .adms-public-actions{flex:0 0 auto}
  .adms-public-menu-button{display:inline-flex}
  .adms-public-footer-grid{grid-template-columns:minmax(250px,1.4fr) repeat(2,minmax(150px,1fr));}
  header.adms-home-header .adms-public-brand-art{width:218px;height:45px;max-width:218px;flex-basis:218px}
}

@media(max-width:820px){
  .adms-public-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .adms-public-footer-brand{grid-column:1/-1}
}

@media(max-width:700px){
  .adms-public-login{display:none}
  .adms-public-mobile-menu-grid{grid-template-columns:1fr}
}

@media(max-width:640px){
  .adms-public-brand-art,
  header.adms-home-header .adms-public-brand-art{
    width:38px;
    height:38px;
    max-width:38px;
    flex:0 0 38px;
    background-image:url('/assets/adms-logo-mark-dark-v323.png');
  }
  .adms-public-header-inner{min-height:60px;padding:8px 12px;gap:10px}
  .adms-public-actions{gap:7px}
  .adms-public-action--primary{padding-inline:11px;font-size:9px}
  .adms-public-theme{width:36px;height:36px;flex-basis:36px}
  .adms-public-menu-button{width:40px;height:36px;flex-basis:40px}
  .adms-public-mobile-menu{padding:6px 12px 16px;max-height:calc(100vh - 60px)}
  .adms-public-mobile-actions{grid-template-columns:1fr}
  .adms-public-footer-grid{grid-template-columns:1fr;gap:28px;padding-top:42px}
  .adms-public-footer-brand{grid-column:auto}
  .adms-public-footer-brand .adms-public-brand-art{width:230px;height:48px;max-width:230px;flex-basis:230px;background-image:url('/assets/adms-logo-horizontal-dark-v323.png')}
  .adms-public-footer-bottom{flex-direction:column;align-items:flex-start}
  body.adms-public-consistency :where(.row,.pricing-actions,.cta-row){max-width:100%}
  body.adms-public-consistency :where(.row,.pricing-actions,.cta-row) > :where(.btn,a,button){max-width:100%}
}

@media(max-width:430px){
  .adms-public-request{display:none}
  .adms-public-footer-brand .adms-public-brand-art{width:210px;height:44px;max-width:210px;flex-basis:210px}
}

/* Mobile overflow guards for the existing status and FAQ components. */
html{overflow-x:hidden}
body.adms-public-consistency .qa summary{min-width:0;overflow:hidden}
body.adms-public-consistency .qa summary .pm{display:inline-grid;place-items:center;width:26px;height:26px;max-width:26px;flex:0 0 26px;line-height:1;transform:none!important}
body.adms-public-consistency .qa details[open] summary .pm{font-size:0}
body.adms-public-consistency .qa details[open] summary .pm::before{content:"−";font-size:20px;line-height:1}

@media(max-width:700px){
  body.adms-public-consistency .status .fw{min-width:0;padding-inline:10px!important;overflow:hidden}
  body.adms-public-consistency .status .fw > span:first-child{display:block;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  body.adms-public-consistency .status .r{display:none!important}
}

/* The 404 page keeps its compact message while using the same public shell. */
body.adms-404-page{display:block!important;min-height:100vh!important;background:#f3f1ed}
html.dark body.adms-404-page{background:#08090d}
body.adms-404-page .box{display:block;min-height:56vh;max-width:880px;margin:0 auto;padding:clamp(54px,8vw,110px) var(--adms-shell-gutter)}


/* v3.2.5 public buyer-path alignment */
.adms-public-footer-subheading{margin:20px 0 10px;color:var(--adms-shell-text);font-family:var(--adms-shell-font-ui);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.adms-public-mobile-group{grid-column:1/-1;margin-top:12px;padding-top:12px;border-top:1px solid var(--adms-shell-line);color:var(--adms-shell-accent);font-family:var(--adms-shell-font-ui);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.adms-fit-note{margin-top:18px;padding:14px 16px;border:1px solid var(--line);background:var(--surface);font-family:"JetBrains Mono",monospace;font-size:12px;line-height:1.65;color:var(--sub)}
.adms-success{margin:0 0 20px;padding:14px 16px;border:1px solid color-mix(in srgb,#34d399 35%,var(--line));background:color-mix(in srgb,#34d399 8%,var(--surface));color:var(--text-strong);font-family:"JetBrains Mono",monospace;font-size:13px;line-height:1.6}
.adms-error{margin:0 0 20px;padding:14px 16px;border:1px solid color-mix(in srgb,#ef4444 35%,var(--line));background:color-mix(in srgb,#ef4444 8%,var(--surface));color:var(--text-strong);font-family:"JetBrains Mono",monospace;font-size:13px;line-height:1.6}
