/* =========================================================
   Hard overrides (site-wide)
   These rules are intentionally loaded AFTER app-resolved.php
   so they apply regardless of whether the site is currently
   serving app.master.css or app.css.
   ========================================================= */

/* =========================================================
   Shared wrapper alignment (site-wide)
   Keep every page on the same layout token system instead of mixing
   older hard-coded widths with newer Layout tool variables.
   ========================================================= */

:root{
  --hd-shell-shared: var(--shell-max, var(--container-max, 1100px));
  --hd-shell-shared-wide: var(--shell-max-wide, var(--container-max-wide, var(--hd-shell-shared)));
  --hd-shell-shared-narrow: var(--shell-max-narrow, var(--container-max-narrow, 820px));
  --hd-content-shared: var(--content-max, var(--container-max, 1040px));
  --hd-content-shared-wide: var(--content-max-wide, var(--container-max-wide, 1240px));
  --hd-content-shared-narrow: var(--content-max-narrow, var(--container-max-narrow, 760px));
  --hd-block-shared: var(--block-max, var(--hd-content-shared, 980px));
  --hd-block-shared-wide: var(--block-max-wide, var(--hd-content-shared-wide, 1240px));
  --hd-block-shared-narrow: var(--block-max-narrow, var(--hd-content-shared-narrow, 760px));
}

/* Page shells */
.hd-page-inner,
body.is-admin-page .hd-page-inner{
  max-width: var(--page-frame-max, var(--hd-content-shared)) !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

.hd-page-inner .outputdata_default,
.outputdata_default,
.hd-container{
  max-width: var(--hd-content-shared) !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

.hd-page-inner--wide,
.hd-page-inner .outputdata_default.outputdata_wide,
.hd-page-inner .outputdata_wide,
.outputdata_default.outputdata_wide,
.outputdata_wide,
.hd-container--wide{
  max-width: var(--hd-content-shared-wide) !important;
}

.hd-page-inner--narrow,
.hd-page-inner .outputdata_default.outputdata_narrow,
.hd-page-inner .outputdata_narrow,
.outputdata_default.outputdata_narrow,
.outputdata_narrow,
.hd-container--narrow{
  max-width: var(--hd-content-shared-narrow) !important;
}

/* Shared shell areas */
#header-shell,
.footer-container,
.hd-admin-nav,
.container,
.container-fluid,
.container-lg,
.container-xl,
.container-md,
.container-sm{
  max-width: var(--hd-shell-shared) !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

/* Shared content blocks */
.gi-block,
.hd-content-block,
.hd-panel,
.outputdata_default > .hd-card,
.outputdata_default > .hd-admin-top,
.outputdata_default > .hd-alert,
.outputdata_default > section.hd-card,
.outputdata_default > article.hd-card{
  max-width: var(--hd-block-shared) !important;
  width: min(100%, var(--hd-block-shared)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

.gi-block--mid,
.hd-content-block--mid{
  max-width: var(--hd-block-shared) !important;
  width: min(100%, var(--hd-block-shared)) !important;
}

.gi-block--wide,
.hd-content-block--wide,
.outputdata_wide .gi-block,
.outputdata_wide .hd-content-block,
.outputdata_wide .hd-panel,
.hd-page-inner--wide .gi-block,
.hd-page-inner--wide .hd-content-block,
.hd-page-inner--wide .hd-panel{
  max-width: var(--hd-block-shared-wide) !important;
  width: min(100%, var(--hd-block-shared-wide)) !important;
}

.gi-block--narrow,
.hd-content-block--narrow,
.outputdata_narrow .gi-block,
.outputdata_narrow .hd-content-block,
.outputdata_narrow .hd-panel,
.hd-page-inner--narrow .gi-block,
.hd-page-inner--narrow .hd-content-block,
.hd-page-inner--narrow .hd-panel{
  max-width: var(--hd-block-shared-narrow) !important;
  width: min(100%, var(--hd-block-shared-narrow)) !important;
}

/* Consistent admin/public cards on shared wrappers */
.outputdata_default :is(.hd-card,.hd-toolgroup,.hd-tool){
  box-sizing: border-box !important;
}
.outputdata_default > :is(.hd-card,.hd-toolgroup,.hd-tool){
  max-width: var(--hd-block-shared) !important;
  width: min(100%, var(--hd-block-shared)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
/* =========================================================
   Admin bottom navigation: keep inside container
   ========================================================= */
.hd-admin-nav{
  width: 100% !important;
  max-width: var(--hd-shell-shared) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  position: static !important;
}
.hd-admin-nav--bottom{
  position: static !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
}

/* Softer small section headings used inside tool hubs */
.hd-h3-sm{
  font-weight: 600 !important;
  color: color-mix(in srgb, var(--heading) 75%, var(--muted) 25%) !important;
  letter-spacing: 0.01em !important;
}

/* =========================================================
   Resources dropdown: render as a clean menu (not pill buttons)
   ========================================================= */

.nav-dropdown--resources .dropdown-menu{
  left: 0 !important;
  right: auto !important;
  width: min(320px, 92vw) !important;
  padding: 8px !important;
}

.nav-dropdown--resources .dropdown-menu a.dropdown-item{
  margin: 0 !important;
  border-radius: 12px !important;
  padding: 10px 12px !important;
  min-height: 40px !important;
  text-align: left !important;
  font-weight: 700 !important;
  background: transparent !important;
  color: var(--heading) !important;
  border: 1px solid transparent !important;
  box-shadow: none !important;
}

/* Ensure the menu items don't inherit big pill/button styles */
.nav-dropdown--resources .dropdown-menu a.dropdown-item{
  display: block !important;
  width: 100% !important;
  text-decoration: none !important;
}

.nav-dropdown--resources .dropdown-menu a.dropdown-item + a.dropdown-item{
  margin-top: 6px !important;
}

.nav-dropdown--resources .dropdown-menu a.dropdown-item:hover,
.nav-dropdown--resources .dropdown-menu a.dropdown-item:focus-visible{
  background: color-mix(in srgb, var(--surface) 70%, var(--alt) 30%) !important;
  border-color: color-mix(in srgb, var(--border) 85%, transparent) !important;
}

/* Remove the underline animation inside dropdown items (keep it for main nav). */
.nav-dropdown--resources .dropdown-menu .dd-label::after{ display:none !important; }

/* =========================================================
   Design panel iframes
   ========================================================= */
.hd-design-drawer__frame{ background: var(--page); }

/* =========================================================
   Accessibility section: keep block widths aligned to the same
   shared wrapper tokens as the rest of the site.
   ========================================================= */
body.is-accessibility-page .accessibility :is(.gi-block, .gi-block--narrow, .gi-block--mid, .gi-block--wide),
body.is-accessibility-page .accessibility .a11y-panel,
body.is-accessibility-page .accessibility .a11y-hub-links{
  max-width: var(--hd-block-shared) !important;
  width: min(100%, var(--hd-block-shared)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}


/* =========================================================
   CSS tool polish
   ========================================================= */
.hd-css-tool-links{ gap: 12px !important; align-items: center !important; flex-wrap: wrap !important; }
.hd-css-tool-link{
  display:inline-flex !important;
  align-items:center !important;
  gap:6px !important;
  font-weight:700 !important;
  text-decoration:underline !important;
  text-underline-offset: 0.16em !important;
}
.hd-css-tool-link--button{
  background:none !important;
  border:0 !important;
  padding:0 !important;
  cursor:pointer !important;
  color: var(--link, var(--heading)) !important;
}
.hd-tool-result{
  border:1px solid color-mix(in srgb, var(--border) 85%, transparent) !important;
  border-radius: 16px !important;
  padding: 14px 16px !important;
  background: color-mix(in srgb, var(--surface) 82%, var(--alt) 18%) !important;
}
.hd-tool-result__title{ font-weight:800 !important; margin-bottom:6px !important; color: var(--heading) !important; }
.hd-tool-result__body{ color: var(--text) !important; }
.hd-tool-result--success{ border-left: 5px solid var(--primary) !important; }
.hd-tool-result--error{ border-left: 5px solid #B42318 !important; background: #FFF7F7 !important; }
.hd-tool-result ul{ margin:8px 0 0 18px !important; }

.hd-design-drawer{
  min-width: 760px !important;
  min-height: 620px !important;
  max-width: calc(100vw - 24px) !important;
  max-height: calc(100vh - 24px) !important;
}
.hd-design-drawer__header{
  gap: 16px !important;
  align-items: start !important;
}
.hd-design-drawer__quick-actions{
  display:grid !important;
  grid-template-columns: repeat(2, minmax(150px, 1fr)) !important;
  gap: 10px !important;
  width: min(360px, 100%) !important;
}
.hd-design-drawer__quick-actions--footer{
  grid-template-columns: repeat(2, minmax(130px, 1fr)) !important;
  width: min(320px, 100%) !important;
}
.hd-design-drawer__quick-actions > *{ justify-content:center !important; }
.hd-design-drawer__body{ padding-top: 4px !important; }
.hd-design-drawer__footer{ gap: 12px !important; flex-wrap: wrap !important; }
@media (max-width: 900px){
  .hd-design-drawer{
    width: calc(100vw - 18px) !important;
    height: calc(100vh - 18px) !important;
    right: 9px !important;
    bottom: 9px !important;
  }
  .hd-design-drawer__quick-actions,
  .hd-design-drawer__quick-actions--footer{
    grid-template-columns: 1fr 1fr !important;
    width: 100% !important;
  }
}


.hd-design-drawer{
  --hd-drawer-alpha: .96;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}
.hd-design-drawer__shell{
  position: relative;
  display:flex;
  flex-direction:column;
  flex:1 1 auto;
  min-height:0;
  background: color-mix(in srgb, var(--surface) calc(var(--hd-drawer-alpha) * 100%), transparent) !important;
  border: 1px solid color-mix(in srgb, var(--border) 86%, transparent) !important;
  border-radius: 16px;
  box-shadow: 0 18px 44px rgba(0,0,0,.18) !important;
  opacity: 1 !important;
  -webkit-backdrop-filter: blur(12px) !important;
  backdrop-filter: blur(12px) !important;
  overflow: hidden;
}
.hd-design-drawer__intro{ flex: 1 1 auto; min-width: 0; }
.hd-design-drawer__panel-controls{ display:flex; flex-direction:column; gap:12px; align-items:stretch; width:min(360px, 100%); }
.hd-design-drawer__opacity{
  position: static;
  display:flex;
  align-items:center;
  gap:12px;
  justify-content:flex-end;
  color:var(--muted) !important;
  font-size:.95rem;
  padding:8px 0 0;
  border:0;
  background:transparent;
  box-shadow:none;
  margin-left:auto;
}
.hd-design-drawer__opacity-label{ white-space:nowrap; font-weight:700; color:var(--heading) !important; }
.hd-design-drawer__opacity input[type=range]{
  appearance:none; -webkit-appearance:none; width:180px; height:6px; border-radius:999px;
  background:color-mix(in srgb, var(--heading) 22%, white); outline:none; cursor:pointer;
}
.hd-design-drawer__opacity input[type=range]::-webkit-slider-thumb{ -webkit-appearance:none; appearance:none; width:18px; height:18px; border-radius:50%; border:2px solid var(--surface); background:var(--accent); box-shadow:0 2px 10px rgba(0,0,0,.2); }
.hd-design-drawer__opacity input[type=range]::-moz-range-thumb{ width:18px; height:18px; border-radius:50%; border:2px solid var(--surface); background:var(--accent); box-shadow:0 2px 10px rgba(0,0,0,.2); }
.hd-design-drawer__opacity input[type=range]::-moz-range-track{ height:6px; border-radius:999px; background:color-mix(in srgb, var(--heading) 22%, white); }
.hd-design-drawer__tabs .hd-tab{ min-width: 0; }
@media (max-width: 900px){
  .hd-design-drawer__opacity{ width:100%; justify-content:space-between; padding-top:10px; }
  .hd-design-drawer__opacity input[type=range]{ width:140px; }
  .hd-design-drawer__panel-controls{ width:100%; }
  .hd-design-drawer__tabs{ flex-wrap:wrap; }
}
  .hd-design-drawer__opacity input[type=range]{ width:140px; }
  .hd-design-drawer__panel-controls{ width:100%; }
  .hd-design-drawer__tabs{ flex-wrap:wrap; }
}
\n
/* 2026-03 polish pass: tighten tool grouping */
.hd-modal[aria-hidden="false"]{ display:flex !important; align-items:center !important; justify-content:center !important; }
.hd-modal__dialog{ width:min(640px, calc(100vw - 32px)) !important; max-width:640px !important; }
.hd-css-tool-toolbar{ display:flex !important; align-items:center !important; gap:14px !important; flex-wrap:wrap !important; }
.hd-css-tool-toolbar .hd-btn--primary{ min-width:0 !important; }
.hd-css-tool-toolbar .hd-css-tool-link{ font-weight:700 !important; }
.hd-tool-intro-grid{ display:grid; grid-template-columns: 1.1fr .9fr; gap:14px; }
@media (max-width: 900px){ .hd-tool-intro-grid{ grid-template-columns:1fr; } }
.hd-css-profiles-table th:last-child, .hd-css-profiles-table td:last-child{ white-space:nowrap !important; width:92px !important; }


/* 2026-03 Edge touch scrolling fix */
html, body, .site_wrapper_class, .hd-page, .hd-page-inner, main {
  touch-action: pan-y pinch-zoom !important;
}
html, body { overscroll-behavior-y: auto !important; }
.site_wrapper_class, .hd-page, .hd-page-inner, main { overflow: visible !important; }
.hd-design-drawer{
  pointer-events:none !important;
  touch-action:auto !important;
  -ms-touch-action:auto !important;
}
.hd-design-drawer__shell,
.hd-design-drawer__header,
.hd-design-drawer__tabs,
.hd-design-drawer__body,
.hd-design-drawer__footer,
.hd-design-drawer__frame,
.hd-design-drawer__resize,
.hd-design-drawer__opacity,
.hd-design-drawer__opacity *{
  pointer-events:auto !important;
}
.hd-design-drawer__body,
.hd-design-drawer__frame{
  touch-action: pan-y pinch-zoom !important;
  -ms-touch-action: pan-y pinch-zoom !important;
}
.hd-design-drawer__frame{
  background: transparent;
}
.hd-modal,
.hd-modal__dialog,
.hd-modal__backdrop{
  touch-action: auto !important;
}


/* 2026-03 thorough Edge touch-scroll fix */
html, body {
  overflow-y: auto !important;
  overflow-x: visible !important;
  touch-action: auto !important;
  -ms-touch-action: auto !important;
  overscroll-behavior: auto !important;
}
body, .site_wrapper_class, .hd-page, .hd-page-inner, main {
  -webkit-overflow-scrolling: touch !important;
}
.hd-design-drawer {
  touch-action: auto !important;
  -ms-touch-action: auto !important;
}
.hd-design-drawer__shell,
.hd-design-drawer__header,
.hd-design-drawer__tabs,
.hd-design-drawer__footer {
  touch-action: auto !important;
  -ms-touch-action: auto !important;
}
.hd-design-drawer__body {
  overflow: hidden !important;
  touch-action: auto !important;
  -ms-touch-action: auto !important;
}
.hd-design-drawer__frame {
  touch-action: auto !important;
  -ms-touch-action: auto !important;
}
/* Keep only true controls in manipulation mode */
.hd-design-drawer__resize,
.hd-design-drawer__opacity,
.hd-design-drawer__opacity input[type=range],
.hd-btn, .hd-link, button, a, input[type="button"], input[type="submit"], input[type="reset"], input[type="range"], input[type="color"] {
  touch-action: manipulation !important;
  -ms-touch-action: manipulation !important;
}


/* 2026-03 Edge touch-scroll hard fix */
html, body, body.is-admin, .site_wrapper_class, .main_outputdata, .outputdata_default, .hd-page, .hd-page-inner, main {
  touch-action: auto !important;
  -ms-touch-action: auto !important;
  overscroll-behavior: auto !important;
  -webkit-overflow-scrolling: touch !important;
}
.hd-design-drawer__shell,
.hd-design-drawer__body,
.hd-design-drawer__frame {
  overscroll-behavior: auto !important;
}


/* Site-wide heading card consistency */
.hd-page-heading-card,
.outputdata_default > h1:first-of-type,
.outputdata_default > .hd-anchor + h1,
.outputdata_default > section > h1:first-of-type,
.outputdata_default > section > .hd-anchor + h1,
.outputdata_default .hd-admin-top > h1:first-of-type{
  display:block;
  max-width: var(--page-frame-max, var(--content-max, var(--container-max)));
  margin: 0 auto 14px;
  padding: 22px 28px;
  background: var(--card, var(--surface, #fff));
  border: 1px solid color-mix(in srgb, var(--border, #d9e3ec) 88%, transparent);
  border-radius: 30px;
  box-shadow: 0 10px 22px rgba(0,0,0,0.06);
}
.outputdata_default .hd-admin-top > h1:first-of-type{ margin-bottom: 14px; }
@media (max-width: 640px){
  .hd-page-heading-card,
  .outputdata_default > h1:first-of-type,
  .outputdata_default > .hd-anchor + h1,
  .outputdata_default > section > h1:first-of-type,
  .outputdata_default > section > .hd-anchor + h1,
  .outputdata_default .hd-admin-top > h1:first-of-type{
    padding: 18px 20px;
    border-radius: 22px;
  }
}


/* Consistent bottom action rows for Theme/Layout tools */
.hd-css-tool-toolbar{ row-gap: 12px !important; }
.hd-css-tool-toolbar > .hd-btn,
.hd-css-tool-toolbar > .hd-link,
.hd-actions.hd-actions--wrap > .hd-btn,
.hd-actions.hd-actions--wrap > .hd-link{ margin-right: 8px !important; }
.hd-css-tool-toolbar .hd-link{ text-decoration:none !important; }
.hd-layout-slim-sections > .hd-accordion > summary,
.hd-tool-slim-sections > .hd-accordion > summary{ min-height: 90px; }


/* 2026-03 follow-up fixes */
.hd-design-drawer{
  resize: both !important;
  overflow: hidden !important;
}
.hd-design-drawer__header{
  justify-content: space-between !important;
  align-items: flex-start !important;
}
.hd-design-drawer__panel-controls{
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 0 !important;
  align-items: flex-end !important;
}
.hd-design-drawer__quick-links{
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  align-items: center !important;
  justify-content: flex-end !important;
}
.hd-design-link,
button.hd-design-link,
a.hd-design-link{
  appearance: none !important;
  -webkit-appearance: none !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  min-width: 0 !important;
  line-height: 1.35 !important;
  text-decoration: none !important;
  color: var(--link) !important;
  font-weight: 700 !important;
}
.hd-design-link:hover,
.hd-design-link:focus-visible{
  color: var(--link-hover) !important;
  text-decoration: underline !important;
}
.hd-css-toolbar__actions .hd-link,
.hd-css-indicator__actions .hd-link{
  font-weight: 700 !important;
}
.hd-modal{
  align-items: center !important;
  justify-content: center !important;
  padding: 24px !important;
}
.hd-modal__dialog{
  position: relative !important;
  margin: auto !important;
  inset: auto !important;
  width: min(800px, calc(100vw - 32px)) !important;
  max-width: 800px !important;
}
@media (max-width: 900px){
  .hd-design-drawer{
    min-width: 0 !important;
    width: calc(100vw - 18px) !important;
    height: calc(100vh - 18px) !important;
  }
  .hd-design-drawer__panel-controls{
    width: 100% !important;
    align-items: flex-start !important;
  }
  .hd-design-drawer__quick-links{
    justify-content: flex-start !important;
  }
}


.hd-modal[aria-hidden="false"] .hd-modal__dialog{
  position: fixed !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  margin: 0 !important;
}
.hd-design-drawer__quick-links,
.hd-css-toolbar__actions,
.hd-css-indicator__actions{
  display:inline-flex !important;
  align-items:center !important;
  gap:10px !important;
  flex-wrap:wrap !important;
}
.hd-design-drawer__quick-links .hd-help,
.hd-css-toolbar__actions .hd-help,
.hd-css-indicator__actions .hd-help{
  display:inline-flex !important;
  align-items:center !important;
  line-height:1 !important;
}


/* Remove stray browser focus outlines from injected admin anchors/headings */
.hd-anchor:focus,
.hd-anchor:focus-visible,
.hd-page-title:focus,
.hd-page-title:focus-visible,
.outputdata_default [tabindex="-1"]:focus,
.outputdata_default [tabindex="-1"]:focus-visible{
  outline:none !important;
  box-shadow:none !important;
}

.hd-page-heading-card:focus-within,
.outputdata_default:focus,
.outputdata_default:focus-visible{
  outline:none !important;
  box-shadow:none !important;
}

/* Suppress stray browser focus rings on hash-target headings/cards in admin tools */
.hd-page-title:focus,
.hd-anchor:focus,
.hd-page-heading-card:focus-within,
.outputdata_default [tabindex="-1"]:focus,
.outputdata_wide [tabindex="-1"]:focus,
.outputdata_narrow [tabindex="-1"]:focus{
  outline:none !important;
  box-shadow:none !important;
}


/* Suppress browser hash/focus outlines on admin page containers and titles */
.outputdata_default:target,
.outputdata_wide:target,
.outputdata_narrow:target,
.hd-page-heading-card:target,
.hd-page-title:target,
.anchor-target:target,
#css-profiles:target,
#email-layout-title:target,
#email-templates-title:target{
  outline:none !important;
  box-shadow:none !important;
  border-color:inherit !important;
}
.outputdata_default,
.outputdata_wide,
.outputdata_narrow,
.hd-page-heading-card,
.hd-admin-hero,
.anchor-target{
  -webkit-tap-highlight-color: transparent;
}


/* Blog */
.hd-blog-hero{ border-left: 6px solid var(--primary); }
.hd-blog-kicker{
  display:inline-block;
  margin:0 0 8px;
  padding:6px 10px;
  border-radius:999px;
  background: var(--alt);
  color: var(--heading);
  font-weight:700;
  font-size:.92rem;
}
.hd-blog-card{ align-self:stretch; }
.hd-blog-tags{ display:flex; flex-wrap:wrap; gap:8px; margin:6px 0 12px; }
.hd-blog-tags .hd-badge{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:4px 10px;
  border-radius:999px;
  border:1px solid var(--border);
  background:#fff;
  color:var(--heading);
  font-weight:600;
}
.hd-blog-post{ max-width: 860px; }
.hd-blog-lead{
  font-size:1.08rem;
  line-height:1.65;
  color:var(--heading);
  margin:14px 0 6px;
}
.hd-blog-copy p,
.hd-blog-body-preview p{ line-height:1.8; }
.hd-blog-admin-form .hd-form-row{ margin-bottom:14px; }
.hd-blog-admin-form label{
  display:block;
  font-weight:700;
  color:var(--heading);
  margin:0 0 6px;
}
.hd-blog-admin-form input[type="text"],
.hd-blog-admin-form select,
.hd-blog-admin-form textarea{
  width:100%;
  border:1px solid var(--border);
  border-radius:14px;
  padding:12px 14px;
  background:#fff;
  color:var(--text);
}
.hd-blog-admin-form textarea{ resize:vertical; min-height:120px; }
.hd-form-row--2{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:14px;
}
@media (max-width: 800px){
  .hd-form-row--2{ grid-template-columns:1fr; }
}


.hd-blog-admin-layout{
  display:grid;
  grid-template-columns:minmax(0, 1.35fr) minmax(320px, .95fr);
  gap:14px;
  align-items:start;
}
.hd-blog-admin-compose,
.hd-blog-admin-saved{
  min-height:100%;
}
.hd-blog-admin-form .hd-actions{
  align-items:center;
  flex-wrap:wrap;
}
.hd-blog-admin-saved__head{
  display:flex;
  flex-direction:column;
  gap:6px;
  margin-bottom:14px;
}
.hd-blog-admin-list{
  display:grid;
  gap:12px;
}
.hd-blog-admin-post{
  min-height:unset;
}
.hd-blog-admin-post .hd-meta{
  line-height:1.55;
}
.hd-blog-admin-post__actions{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:10px;
  margin-top:auto;
}
body.is-admin-page .hd-blog-admin-post .hd-btn,
body.is-admin-page .hd-blog-admin-form .hd-btn{
  width:auto;
}
.hd-blog-admin-post__actions form{
  display:block !important;
}
.hd-blog-admin-post__actions .hd-btn,
.hd-blog-admin-form .hd-actions .hd-btn{
  justify-content:center;
  min-width:0;
}
.hd-blog-admin-form textarea#blog-body{
  min-height:320px;
}
@media (max-width: 1100px){
  .hd-blog-admin-layout{
    grid-template-columns:1fr;
  }
}
@media (max-width: 640px){
  .hd-blog-admin-post__actions{
    grid-template-columns:1fr;
  }
}


/* Blog and footer refinements v4 */
#footerlowerbar .footer-partners-grid{
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: clamp(16px, 2vw, 26px);
}
#footerlowerbar .footer-partner{
  min-height: 110px;
  padding: 16px 18px;
}
#footerlowerbar .footer-partner img{
  max-width: min(100%, 360px);
  width: 100%;
}
#footerlowerbar .footer-partner--strath img{ max-height: 72px; }
#footerlowerbar .footer-partner--sg img{ max-height: 64px; }
#footerlowerbar .footer-partner--celcis img{ max-height: 84px; max-width: min(100%, 330px); }
#footerlowerbar .footer-partner--sprag img{ max-height: 100px; max-width: min(100%, 250px); }
@media (max-width: 780px){
  #footerlowerbar .footer-partners-grid{ grid-template-columns: 1fr !important; }
}

.hd-blog-list{
  display:grid;
  grid-template-columns: 1fr;
  gap: 16px;
}
.hd-blog-list .hd-blog-card{
  width: 100%;
  max-width: none;
}
.hd-blog-list .hd-tool__top{
  align-items:flex-start;
}
.hd-blog-list .hd-tool__desc{
  max-width: 72ch;
}
.hd-blog-list .hd-tool__actions .hd-btn{
  width:auto;
}

.hd-blog-admin-list{
  display:grid;
  grid-template-columns: 1fr;
  gap: 14px;
}
.hd-blog-admin-post{
  width:100%;
  max-width:none;
}
.hd-blog-admin-post__actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
}
.hd-blog-admin-post__actions .hd-btn,
.hd-blog-admin-post__actions form .hd-btn{
  width:auto !important;
  min-width: 120px;
  flex: 0 0 auto;
}
.hd-blog-admin-post__actions form{
  display:inline-flex !important;
}
@media (max-width: 640px){
  .hd-blog-admin-post__actions .hd-btn,
  .hd-blog-admin-post__actions form .hd-btn{
    min-width: 0;
  }
}


/* Footer + banner + blog manager refinements v5 */
#footerlowerbar .footer-partners-grid{
  display:grid !important;
  grid-template-columns: minmax(0,1fr) minmax(0,1fr) !important;
  grid-template-areas:
    "partner1 partner2"
    "partner3 partner4" !important;
  gap: clamp(18px, 2vw, 28px) !important;
  align-items: stretch;
}
#footerlowerbar .footer-partners-grid > :nth-child(1){ grid-area: partner1; }
#footerlowerbar .footer-partners-grid > :nth-child(2){ grid-area: partner2; }
#footerlowerbar .footer-partners-grid > :nth-child(3){ grid-area: partner3; }
#footerlowerbar .footer-partners-grid > :nth-child(4){ grid-area: partner4; }
#footerlowerbar .footer-partner{
  min-height: 128px !important;
  padding: 18px 24px !important;
}
#footerlowerbar .footer-partner img{
  display:block;
  width:auto !important;
  height:auto;
  max-width:92% !important;
  object-fit:contain;
  margin:0 auto;
}
#footerlowerbar .footer-partner--strath img{ max-height: 86px !important; }
#footerlowerbar .footer-partner--sg img{ max-height: 74px !important; }
#footerlowerbar .footer-partner--celcis img{ max-height: 98px !important; max-width: 88% !important; transform: scale(1.12); transform-origin:center; }
#footerlowerbar .footer-partner--sprag img{ max-height: 132px !important; max-width: 64% !important; transform: scale(1.18); transform-origin:center; }
@media (max-width: 780px){
  #footerlowerbar .footer-partners-grid{
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "partner1"
      "partner2"
      "partner3"
      "partner4" !important;
  }
}

.hero-media{
  background-size: contain !important;
  background-position: center center !important;
  background-repeat:no-repeat !important;
  background-color:#0d0d0d !important;
  min-height: clamp(300px, 31vw, 460px) !important;
}

.hd-blog-admin-post__actions{
  display:flex !important;
  grid-template-columns:none !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:12px !important;
}
body.is-admin-page .hd-blog-admin-post__actions .hd-btn,
body.is-admin-page .hd-blog-admin-post__actions form .hd-btn{
  width:auto !important;
  min-width: 0 !important;
  flex: 0 0 auto !important;
  padding-left: 1.1rem !important;
  padding-right: 1.1rem !important;
}
body.is-admin-page .hd-blog-admin-post__actions form{
  display:inline-flex !important;
  flex: 0 0 auto !important;
}


/* Footer + banner + public blog refinements v6 */
#footerlowerbar .footer-partners-grid{
  display:grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-template-areas:
    'partner1 partner2'
    'partner3 partner4' !important;
  gap: clamp(20px, 2.2vw, 30px) !important;
}
#footerlowerbar .footer-partners-grid > :nth-child(1){ grid-area: partner1; }
#footerlowerbar .footer-partners-grid > :nth-child(2){ grid-area: partner2; }
#footerlowerbar .footer-partners-grid > :nth-child(3){ grid-area: partner3; }
#footerlowerbar .footer-partners-grid > :nth-child(4){ grid-area: partner4; }
#footerlowerbar .footer-partner{
  min-height: 168px !important;
  padding: 18px 24px !important;
}
#footerlowerbar .footer-partner img{
  display:block;
  width:auto !important;
  height:auto !important;
  max-width: 60% !important;
  max-height: 70px !important;
  object-fit: contain !important;
  margin: 0 auto !important;
  transform: none !important;
}
#footerlowerbar .footer-partner--strath img{
  max-width: 58% !important;
  max-height: 76px !important;
}
#footerlowerbar .footer-partner--sg img{
  max-width: 64% !important;
  max-height: 64px !important;
}
#footerlowerbar .footer-partner--celcis img{
  max-width: 56% !important;
  max-height: 68px !important;
}
#footerlowerbar .footer-partner--sprag img{
  max-width: 34% !important;
  max-height: 82px !important;
}
@media (max-width: 780px){
  #footerlowerbar .footer-partners-grid{
    grid-template-columns: 1fr !important;
    grid-template-areas:
      'partner1'
      'partner2'
      'partner3'
      'partner4' !important;
  }
}
.hero-media{
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-color: #0d0d0d !important;
  min-height: clamp(320px, 34vw, 520px) !important;
}
body.is-admin-page .hd-blog-admin-post .hd-blog-admin-post__actions{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:12px !important;
}
body.is-admin-page .hd-blog-admin-post .hd-blog-admin-post__actions > .hd-btn,
body.is-admin-page .hd-blog-admin-post .hd-blog-admin-post__actions form,
body.is-admin-page .hd-blog-admin-post .hd-blog-admin-post__actions form .hd-btn{
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: max-content !important;
}
body.is-admin-page .hd-blog-admin-post .hd-blog-admin-post__actions > .hd-btn,
body.is-admin-page .hd-blog-admin-post .hd-blog-admin-post__actions form .hd-btn{
  display:inline-flex !important;
  min-width: 120px !important;
  padding-left: 1.2rem !important;
  padding-right: 1.2rem !important;
}


/* Footer partner logos refinement v8 */
#footerlowerbar .footer-partners-grid{
  display:grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: clamp(20px, 2.4vw, 34px) !important;
  align-items:center !important;
}
#footerlowerbar .footer-partner{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  min-height: 110px !important;
  padding: 6px 10px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
#footerlowerbar .footer-logo-link{
  text-decoration:none !important;
}
#footerlowerbar .footer-partner img{
  display:block !important;
  width:auto !important;
  height:auto !important;
  max-width:min(100%, 360px) !important;
  max-height:72px !important;
  object-fit:contain !important;
  margin:0 auto !important;
  transform:none !important;
  filter:none !important;
}
#footerlowerbar .footer-partner--strath img,
#footerlowerbar .footer-partner--sg img,
#footerlowerbar .footer-partner--celcis img,
#footerlowerbar .footer-partner--sprag img{
  max-height:72px !important;
}
#footerlowerbar .footer-partner--sprag img{
  max-height:68px !important;
}
@media (max-width: 780px){
  #footerlowerbar .footer-partners-grid{
    grid-template-columns: 1fr !important;
  }
  #footerlowerbar .footer-partner{
    min-height: 92px !important;
  }
  #footerlowerbar .footer-partner img{
    max-height: 60px !important;
    max-width: min(100%, 320px) !important;
  }
}


/* Final layout fixes v9 */
.hero-media{
  min-height: 300px !important;
  background-size: auto 100% !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}
@media (max-width: 900px){
  .hero-media{ min-height: 260px !important; background-size: contain !important; }
}
@media (max-width: 520px){
  .hero-media{ min-height: 220px !important; }
}

#footerlowerbar .footer-partners-grid{
  display:grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 36px 42px !important;
  max-width: 980px !important;
  margin: 0 auto !important;
  align-items: stretch !important;
}
#footerlowerbar .footer-partner{
  background: #f5f5f3 !important;
  border: 1px solid rgba(255,255,255,0.2) !important;
  box-shadow: none !important;
  border-radius: 22px !important;
  min-height: 136px !important;
  padding: 18px 26px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
#footerlowerbar .footer-partner img{
  display:block !important;
  width:auto !important;
  height:auto !important;
  max-width: 78% !important;
  max-height: 56px !important;
  object-fit: contain !important;
  margin: 0 auto !important;
  transform: none !important;
  filter: none !important;
}
#footerlowerbar .footer-partner--strath img,
#footerlowerbar .footer-partner--sg img,
#footerlowerbar .footer-partner--celcis img{
  max-height: 54px !important;
}
#footerlowerbar .footer-partner--sprag img{
  max-height: 72px !important;
  max-width: 34% !important;
}
@media (max-width: 780px){
  #footerlowerbar .footer-partners-grid{ grid-template-columns: 1fr !important; gap: 18px !important; }
  #footerlowerbar .footer-partner{ min-height: 116px !important; }
  #footerlowerbar .footer-partner img{ max-width: 76% !important; max-height: 48px !important; }
  #footerlowerbar .footer-partner--sprag img{ max-height: 62px !important; max-width: 42% !important; }
}

.hd-blog-other-grid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.hd-blog-other-card{
  border:1px solid var(--border);
  border-radius:18px;
  background: color-mix(in srgb, #fff 88%, var(--alt) 12%);
  padding:18px;
}
.hd-blog-other-card .hd-actions{ margin-top: 12px; }
@media (max-width: 780px){
  .hd-blog-other-grid{ grid-template-columns: 1fr; }
}


/* Final footer + banner fixes v10 */
#footerlowerbar .footer-partners-grid{
  display:grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 22px 26px !important;
  max-width: 760px !important;
  margin: 0 auto !important;
  align-items: stretch !important;
}
#footerlowerbar .footer-partner{
  background: #ffffff !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 22px !important;
  min-height: 96px !important;
  padding: 12px 16px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
#footerlowerbar .footer-logo-link{
  text-decoration:none !important;
}
#footerlowerbar .footer-partner img{
  display:block !important;
  width:auto !important;
  height:auto !important;
  max-width:min(100%, 240px) !important;
  max-height:54px !important;
  object-fit:contain !important;
  margin:0 auto !important;
  transform:none !important;
  filter:none !important;
}
#footerlowerbar .footer-partner--strath img{ max-width:min(100%, 220px) !important; max-height:50px !important; }
#footerlowerbar .footer-partner--sg img{ max-width:min(100%, 250px) !important; max-height:48px !important; }
#footerlowerbar .footer-partner--celcis img{ max-width:min(100%, 210px) !important; max-height:62px !important; }
#footerlowerbar .footer-partner--sprag img{ max-width:min(100%, 130px) !important; max-height:72px !important; }

.hero-banner{
  width:100% !important;
}
.hero-media{
  min-height: 300px !important;
  background-size: 100% auto !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-color: #0d0d0d !important;
}

@media (max-width: 900px){
  .hero-media{
    min-height: 260px !important;
    background-size: cover !important;
  }
}
@media (max-width: 780px){
  #footerlowerbar .footer-partners-grid{
    grid-template-columns: 1fr !important;
    gap: 16px !important;
    max-width: 420px !important;
  }
  #footerlowerbar .footer-partner{
    min-height: 90px !important;
    padding: 12px 14px !important;
  }
}
@media (max-width: 520px){
  .hero-media{ min-height: 220px !important; }
  #footerlowerbar .footer-partner img{ max-height: 46px !important; }
  #footerlowerbar .footer-partner--celcis img{ max-height: 54px !important; }
  #footerlowerbar .footer-partner--sprag img{ max-height: 62px !important; }
}


/* 2026-03 consistency + anchor + modal fixes */
:root{
  --hd-page-content-width: var(--page-frame-max, var(--block-max, var(--content-max, 1040px)));
}

/* Make content-width sliders drive real page blocks site-wide */
.outputdata_default > section,
.outputdata_default > .hd-card,
.outputdata_default > .hd-alert,
.outputdata_default > form,
.outputdata_default > details,
.outputdata_default > .hd-admin-top,
.outputdata_default > .hd-toolgrid,
.outputdata_default > .hd-toollist,
.outputdata_default > .hd-grid,
.outputdata_default > .hd-flex{
  width: min(100%, var(--hd-page-content-width)) !important;
  max-width: var(--hd-page-content-width) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Direct page sections should act as the main shared container */
.outputdata_default > section{
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.outputdata_default > section > .hd-card,
.outputdata_default > section > .hd-alert,
.outputdata_default > section > form,
.outputdata_default > section > details,
.outputdata_default > section > .hd-grid,
.outputdata_default > section > .hd-flex,
.outputdata_default > section > .hd-admin-top{
  width: 100% !important;
  max-width: none !important;
}

/* Keep title cards and admin intros aligned to the same page width */
.hd-admin-top,
.hd-page-heading-card,
.outputdata_default > h1:first-of-type,
.outputdata_default > .hd-anchor + h1,
.outputdata_default > section > h1:first-of-type,
.outputdata_default > section > .hd-anchor + h1,
.outputdata_default .hd-admin-top > h1:first-of-type{
  max-width: var(--hd-page-content-width) !important;
}

/* Admin confirmation modal should stay compact and centered */
.hd-modal{
  align-items: center !important;
  justify-content: center !important;
  padding: 24px !important;
}
.hd-modal__dialog,
.hd-modal[aria-hidden="false"] .hd-modal__dialog{
  position: relative !important;
  top: auto !important;
  left: auto !important;
  transform: none !important;
  inset: auto !important;
  width: min(560px, calc(100vw - 32px)) !important;
  max-width: 560px !important;
  margin: 0 auto !important;
}
.hd-modal__actions{
  justify-content: flex-end !important;
  flex-wrap: wrap !important;
}
.hd-modal__actions > .hd-btn,
.hd-modal__actions > button,
.hd-modal__actions > a{
  flex: 0 0 auto !important;
  min-width: 160px;
}

/* H1 anchor targets should land cleanly below sticky UI */
.outputdata_default h1[id],
.outputdata_default .hd-anchor,
.outputdata_default section[id]{
  scroll-margin-top: calc(var(--scroll-offset, 110px) + 12px);
}


/* 2026-03 final consistency pass: page frame vs block widths + drawer visibility */
:root{
  --hd-page-frame-width: var(--page-frame-max, var(--content-max, var(--container-max, 1040px)));
  --hd-block-width: var(--block-max, var(--content-max, 1040px));
  --hd-block-width-narrow: var(--block-max-narrow, 760px);
}

/* Keep the design drawer readable at all times; transparency should tint the surface,
   not fade the entire UI and its controls away. */
.hd-design-drawer__shell{
  opacity: 1 !important;
  background: color-mix(in srgb, var(--surface) calc(var(--hd-drawer-alpha, .96) * 100%), transparent) !important;
  border-color: color-mix(in srgb, var(--border) 86%, transparent) !important;
  box-shadow: 0 18px 44px rgba(0,0,0,.18) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  backdrop-filter: blur(12px) !important;
}
.hd-design-drawer__header,
.hd-design-drawer__body,
.hd-design-drawer__footer,
.hd-design-drawer__tabs,
.hd-design-drawer__frame{
  background: transparent !important;
}

/* Main page wrapper = page frame width. This is the outer container that holds the H1
   and the page content on standard pages. */
.outputdata_default > section:not(.hd-card):not(.hd-alert):not(.hd-admin-top):not(.hd-toolgroup):not(.hd-tool):not(.hd-grid):not(.hd-flex){
  width: min(100%, var(--hd-page-frame-width)) !important;
  max-width: var(--hd-page-frame-width) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
  gap: var(--card-gap, 14px) !important;
}

/* Admin/page heading wrappers should follow the same page-frame width. */
.outputdata_default > .hd-admin-top,
.outputdata_default > .hd-page-heading-card,
.outputdata_default > .hd-admin-hero{
  width: min(100%, var(--hd-page-frame-width)) !important;
  max-width: var(--hd-page-frame-width) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

/* Shared site blocks use the content-card sliders directly. */
.outputdata_default > .hd-card,
.outputdata_default > .hd-alert,
.outputdata_default > form,
.outputdata_default > details,
.outputdata_default > .hd-toolgrid,
.outputdata_default > .hd-toollist,
.outputdata_default > .hd-grid,
.outputdata_default > .hd-flex,
.outputdata_default > .hd-toolgroup,
.outputdata_default > .hd-tool{
  width: min(100%, var(--hd-block-width)) !important;
  max-width: var(--hd-block-width) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Pages that use an outer section wrapper should still let the inner cards respond to
   the block-width sliders instead of forcing them to full width. */
.outputdata_default > section > .hd-card,
.outputdata_default > section > .hd-alert,
.outputdata_default > section > form,
.outputdata_default > section > details,
.outputdata_default > section > .hd-grid,
.outputdata_default > section > .hd-flex,
.outputdata_default > section > .hd-toolgrid,
.outputdata_default > section > .hd-toollist,
.outputdata_default > section > .gi-block,
.outputdata_default > section > .hd-content-block,
.outputdata_default > section > .hd-panel{
  width: min(100%, var(--hd-block-width)) !important;
  max-width: var(--hd-block-width) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.outputdata_default > section > .hd-card--narrow,
.outputdata_default > section > .gi-block--narrow,
.outputdata_default > section > .hd-content-block--narrow,
.outputdata_default > section > .hd-panel--narrow,
.outputdata_default > .hd-card--narrow,
.outputdata_default > .gi-block--narrow,
.outputdata_default > .hd-content-block--narrow,
.outputdata_default > .hd-panel--narrow{
  width: min(100%, var(--hd-block-width-narrow)) !important;
  max-width: var(--hd-block-width-narrow) !important;
}

/* The H1 card lives inside the outer page wrapper and should span that wrapper, not the
   narrower content-card width. */
.outputdata_default > section > h1:first-of-type,
.outputdata_default > section > .hd-anchor + h1,
.outputdata_default > .hd-anchor + h1,
.outputdata_default > h1:first-of-type{
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}



/* 2026-03 final pass: unified heading cards, tighter spacing, block alignment control */
:root{
  --block-align: center;
  --heading-card-pad-y: clamp(12px, calc(var(--card-pad, 18px) * .78), 18px);
  --heading-card-pad-x: clamp(14px, calc(var(--card-pad, 18px) + 4px), 24px);
}

/* Let page wrappers and content wrappers use the same alignment model.
   Center = existing behaviour. Flex-start = left aligned blocks. */
.hd-page-inner .outputdata_default,
.outputdata_default > section:not(.hd-card):not(.hd-alert):not(.hd-admin-top):not(.hd-toolgroup):not(.hd-tool):not(.hd-grid):not(.hd-flex){
  display:flex !important;
  flex-direction:column !important;
  align-items: var(--block-align, center) !important;
}

/* Heading cards should use the page-frame width and the shared spacing tokens,
   not shrink-wrap around the H1 text. */
.hd-page-heading-card,
.outputdata_default > .hd-page-heading-card,
.outputdata_default > h1:first-of-type,
.outputdata_default > .hd-anchor + h1,
.outputdata_default > section > h1:first-of-type,
.outputdata_default > section > .hd-anchor + h1,
.outputdata_default .hd-admin-top > h1:first-of-type{
  width: min(100%, var(--hd-page-frame-width, var(--page-frame-max, var(--content-max, var(--container-max, 1040px))))) !important;
  max-width: var(--hd-page-frame-width, var(--page-frame-max, var(--content-max, var(--container-max, 1040px)))) !important;
  box-sizing: border-box !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding: var(--heading-card-pad-y) var(--heading-card-pad-x) !important;
  border-radius: calc(var(--radius-card, 18px) + 6px) !important;
}

/* Tighter, more uniform block spacing across the site. */
.outputdata_default > .hd-card,
.outputdata_default > .hd-alert,
.outputdata_default > form,
.outputdata_default > details,
.outputdata_default > .hd-toolgrid,
.outputdata_default > .hd-toollist,
.outputdata_default > .hd-grid,
.outputdata_default > .hd-flex,
.outputdata_default > .hd-toolgroup,
.outputdata_default > .hd-tool,
.outputdata_default > section > .hd-card,
.outputdata_default > section > .hd-alert,
.outputdata_default > section > form,
.outputdata_default > section > details,
.outputdata_default > section > .hd-grid,
.outputdata_default > section > .hd-flex,
.outputdata_default > section > .hd-toolgrid,
.outputdata_default > section > .hd-toollist,
.outputdata_default > section > .gi-block,
.outputdata_default > section > .hd-content-block,
.outputdata_default > section > .hd-panel,
.outputdata_default > .gi-block,
.outputdata_default > .hd-content-block,
.outputdata_default > .hd-panel{
  margin-top: 0 !important;
  margin-bottom: var(--card-gap, 14px) !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding: clamp(14px, var(--card-pad, 18px), 22px) !important;
  box-sizing: border-box !important;
}



/* Public forms and blog lists should use the shared content width instead of shrink-wrapping. */
.outputdata_default > section > .a11y-panel,
.outputdata_default > section > .hd-blog-list{
  width: min(100%, var(--hd-block-width)) !important;
  max-width: var(--hd-block-width) !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}
.outputdata_default > section > .a11y-panel{
  width: min(100%, var(--hd-block-width)) !important;
}
.outputdata_default > section > .hd-blog-list{
  width: min(100%, var(--hd-block-width)) !important;
}
.hd-blog-list > *{
  width: 100% !important;
  max-width: none !important;
}

/* Narrow cards keep the narrow slider width while obeying the same alignment choice. */
.outputdata_default > section > .hd-card--narrow,
.outputdata_default > section > .gi-block--narrow,
.outputdata_default > section > .hd-content-block--narrow,
.outputdata_default > section > .hd-panel--narrow,
.outputdata_default > .hd-card--narrow,
.outputdata_default > .gi-block--narrow,
.outputdata_default > .hd-content-block--narrow,
.outputdata_default > .hd-panel--narrow{
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Prevent nested heading cards from introducing extra outer gaps. */
.hd-page-heading-card > .hd-page-title{
  margin: 0 !important;
}

/* Mobile tightening */
@media (max-width: 640px){
  .hd-page-heading-card,
  .outputdata_default > .hd-page-heading-card,
  .outputdata_default > h1:first-of-type,
  .outputdata_default > .hd-anchor + h1,
  .outputdata_default > section > h1:first-of-type,
  .outputdata_default > section > .hd-anchor + h1,
  .outputdata_default .hd-admin-top > h1:first-of-type{
    padding: 14px 16px !important;
    border-radius: calc(var(--radius-card, 18px) + 2px) !important;
  }
}



/* Final consistency tightening: heading cards, admin heading rows and shared wrappers
   should all use the same spacing model across public/admin pages. */
.outputdata_default,
.outputdata_default > section,
.outputdata_default > .hd-admin-top,
.outputdata_default > .hd-page-heading-card,
.outputdata_default .hd-admin-top{
  gap: var(--card-gap, 14px) !important;
}

.hd-page-heading-card,
.outputdata_default > .hd-page-heading-card,
.outputdata_default > h1:first-of-type,
.outputdata_default > .hd-anchor + h1,
.outputdata_default > section > h1:first-of-type,
.outputdata_default > section > .hd-anchor + h1,
.outputdata_default .hd-admin-top > h1:first-of-type,
.outputdata_default .hd-admin-top > .hd-page-heading-row-card,
.outputdata_default .hd-admin-top > .hd-page-heading-hero-card{
  background: var(--card) !important;
  border: 1px solid color-mix(in srgb, var(--border) 88%, transparent) !important;
  box-shadow: 0 10px 22px rgba(0,0,0,.06) !important;
}

.outputdata_default .hd-admin-top > .hd-page-heading-row-card{
  width: min(calc(100% - (var(--page-pad-x, clamp(14px, 2vw, 22px)) * 2)), var(--hd-page-frame-width, var(--page-frame-max, var(--content-max, var(--container-max, 1040px))))) !important;
  max-width: var(--hd-page-frame-width, var(--page-frame-max, var(--content-max, var(--container-max, 1040px)))) !important;
  margin: 0 !important;
  padding: var(--heading-card-pad-y) var(--heading-card-pad-x) !important;
  border-radius: calc(var(--radius-card, 18px) + 6px) !important;
  box-sizing: border-box !important;
  align-items: flex-start !important;
}
.outputdata_default .hd-admin-top > .hd-page-heading-row-card .hd-page-title{
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  flex: 1 1 auto !important;
}
.outputdata_default .hd-admin-top > .hd-page-heading-row-card > :last-child{
  flex: 0 0 auto;
}

/* Keep hero cards visually aligned with the heading card rather than over-padded. */
.outputdata_default .hd-admin-top > .hd-admin-hero,
.outputdata_default > .hd-admin-hero,
.outputdata_default > section > .hd-admin-hero{
  width: min(100%, var(--hd-page-frame-width, var(--page-frame-max, var(--content-max, var(--container-max, 1040px))))) !important;
  max-width: var(--hd-page-frame-width, var(--page-frame-max, var(--content-max, var(--container-max, 1040px)))) !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding: clamp(14px, var(--card-pad, 18px), 22px) !important;
}

/* Public/admin page wrappers keep a consistent inset so inner cards never sit hard against the outer frame. */
.outputdata_default > section:not(.hd-card):not(.hd-alert):not(.hd-admin-top):not(.hd-toolgroup):not(.hd-tool):not(.hd-grid):not(.hd-flex){
  padding-left: var(--page-pad-x, clamp(14px, 2vw, 22px)) !important;
  padding-right: var(--page-pad-x, clamp(14px, 2vw, 22px)) !important;
}

/* Left aligned mode: keep shared blocks flush with the page frame rather than re-centering themselves. */
html[data-hd-block-align="flex-start"] .outputdata_default > .hd-card,
html[data-hd-block-align="flex-start"] .outputdata_default > .hd-alert,
html[data-hd-block-align="flex-start"] .outputdata_default > form,
html[data-hd-block-align="flex-start"] .outputdata_default > details,
html[data-hd-block-align="flex-start"] .outputdata_default > .hd-toolgrid,
html[data-hd-block-align="flex-start"] .outputdata_default > .hd-toollist,
html[data-hd-block-align="flex-start"] .outputdata_default > .hd-grid,
html[data-hd-block-align="flex-start"] .outputdata_default > .hd-flex,
html[data-hd-block-align="flex-start"] .outputdata_default > .hd-toolgroup,
html[data-hd-block-align="flex-start"] .outputdata_default > .hd-tool,
html[data-hd-block-align="flex-start"] .outputdata_default > section > .hd-card,
html[data-hd-block-align="flex-start"] .outputdata_default > section > .hd-alert,
html[data-hd-block-align="flex-start"] .outputdata_default > section > form,
html[data-hd-block-align="flex-start"] .outputdata_default > section > details,
html[data-hd-block-align="flex-start"] .outputdata_default > section > .hd-grid,
html[data-hd-block-align="flex-start"] .outputdata_default > section > .hd-flex,
html[data-hd-block-align="flex-start"] .outputdata_default > section > .hd-toolgrid,
html[data-hd-block-align="flex-start"] .outputdata_default > section > .hd-toollist,
html[data-hd-block-align="flex-start"] .outputdata_default > section > .gi-block,
html[data-hd-block-align="flex-start"] .outputdata_default > section > .hd-content-block,
html[data-hd-block-align="flex-start"] .outputdata_default > section > .hd-panel,
html[data-hd-block-align="flex-start"] .outputdata_default > section > .hd-card--narrow,
html[data-hd-block-align="flex-start"] .outputdata_default > .hd-card--narrow{
  margin-left: 0 !important;
  margin-right: auto !important;
}

@media (max-width: 760px){
  .outputdata_default .hd-admin-top > .hd-page-heading-row-card{
    flex-direction: column !important;
    align-items: stretch !important;
  }
}


/* ---- sitewide fix10 targeted consistency pass ---- */
.outputdata_default > .hd-card,
.outputdata_default > .hd-alert,
.outputdata_default > form,
.outputdata_default > details,
.outputdata_default > .hd-grid,
.outputdata_default > .hd-flex,
.outputdata_default > .hd-toolgrid,
.outputdata_default > .hd-toollist,
.outputdata_default > .gi-block,
.outputdata_default > .hd-content-block,
.outputdata_default > .hd-panel,
.outputdata_default > .hd-card--narrow{
  width: min(calc(100% - (var(--page-pad-x, clamp(14px, 2vw, 22px)) * 2)), var(--hd-block-width, var(--block-max, var(--content-max, 1040px)))) !important;
  box-sizing: border-box !important;
}

.nav-dropdown--account{
  transform: translateX(calc(-0.35 * var(--account-menu-shift))) !important;
}
.nav-dropdown--account .dropdown-menu{
  transform: translateX(calc(-1 * var(--account-menu-shift))) !important;
}

#security-dashboard .hd-admin-toolbar{
  padding: 12px 18px !important;
}
#security-dashboard .hd-admin-toolbar .hd-row{
  align-items: center;
}
#security-dashboard .hd-security-summary-grid{
  grid-template-columns: minmax(360px,1.35fr) minmax(280px,1fr) minmax(320px,1.1fr);
  align-items: stretch;
}
#security-dashboard .hd-security-summary-grid > .hd-card{
  height: 100%;
  overflow-wrap: anywhere;
}
#security-dashboard .hd-security-summary-grid > .hd-card h2{
  max-width: 14ch;
}
@media (max-width: 1100px){
  #security-dashboard .hd-security-summary-grid{ grid-template-columns: 1fr; }
  #security-dashboard .hd-security-summary-grid > .hd-card h2{ max-width: none; }
}

#export-snapshot-page > .hd-card{
  width: min(calc(100% - (var(--page-pad-x, clamp(14px, 2vw, 22px)) * 2)), var(--hd-block-width, var(--block-max, var(--content-max, 1040px)))) !important;
}
#export-snapshot-page .hd-checkrow{
  align-items: flex-start;
  padding-block: 4px;
}
#export-snapshot-page .hd-grid--2,
#export-snapshot-page .hd-grid--3{
  align-items: start;
}


/* fix12: tighter heading spacing, left-aligned CSS toolbar, stable account menu layering, status chips */
:root{
  --heading-card-pad-x: clamp(14px, 1.4vw, 20px);
  --heading-card-pad-y: clamp(10px, 1vw, 14px);
}
.outputdata_default > .hd-css-toolbar,
.outputdata_default > section > .hd-css-toolbar,
.outputdata_default .hd-css-toolbar{
  width: min(calc(100% - (var(--page-pad-x, clamp(14px, 2vw, 22px)) * 2)), var(--hd-page-frame-width, var(--page-frame-max, var(--content-max, var(--container-max, 1040px))))) !important;
  max-width: var(--hd-page-frame-width, var(--page-frame-max, var(--content-max, var(--container-max, 1040px)))) !important;
  margin: 0 0 var(--card-gap, 14px) 0 !important;
  justify-content: flex-start !important;
  padding: 0 !important;
}
.hd-css-toolbar{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
}
.hd-css-toolbar .hd-badge{ display:none !important; }
.hd-css-toolbar__actions{
  justify-content:flex-start !important;
  width:auto !important;
}
.outputdata_default > .hd-alert,
.outputdata_default > .hd-tool-result,
.outputdata_default > section > .hd-alert,
.outputdata_default > section > .hd-tool-result{
  width: min(calc(100% - (var(--page-pad-x, clamp(14px, 2vw, 22px)) * 2)), var(--hd-block-width, var(--block-max, var(--content-max, 1040px)))) !important;
}
#header-container,
#header-shell,
.brand-strip,
.brand-actions-row,
.header-auth-group,
.nav-dropdown,
.nav-dropdown--account{
  position: relative;
}
#header-container,
#header-shell,
.brand-strip,
.brand-actions-row,
.header-auth-group,
.nav-dropdown--account,
.nav-dropdown--account .dropdown-menu{
  z-index: 5000 !important;
}
.hero-banner,
.hero-media{ position: relative; z-index: 1 !important; }
.hd-status-chip{ gap: .3rem; }
.hd-status-chip__label{ font-weight:700; color: var(--text); }
.hd-status-chip__value--ok{ color: #198754; }
.hd-status-chip__value--warn{ color: #b54708; }


/* 2026-03 site-wide heading sweep: unified H1 block with subtitle inside the same shell */
:root{
  --heading-card-pad-y: clamp(18px, calc(var(--card-pad, 18px) + 4px), 30px);
  --heading-card-pad-x: clamp(20px, calc(var(--card-pad, 18px) + 10px), 34px);
}

.hd-page-title,
.outputdata_default .hd-page-title,
.outputdata_default h1.hd-page-title{
  margin: 0 !important;
  line-height: .96 !important;
  letter-spacing: -.03em !important;
  font-size: var(--h1-size) !important;
}

.hd-page-heading-card,
.outputdata_default > .hd-page-heading-card,
.outputdata_default .hd-admin-top > .hd-page-heading-row-card,
.outputdata_default .hd-admin-top > .hd-page-heading-hero-card{
  padding-top: clamp(22px, 2.4vw, 34px) !important;
  padding-bottom: clamp(18px, 2vw, 28px) !important;
}

.hd-page-heading-card .hd-page-subtitle,
.outputdata_default .hd-page-subtitle{
  display: block !important;
  width: min(100%, 72ch);
  margin: 14px 0 0 0 !important;
  color: var(--text, inherit) !important;
  font-size: clamp(1rem, 1.1vw, 1.25rem) !important;
  line-height: 1.55 !important;
}

.hd-page-heading-card--integrated{
  gap: 0 !important;
}

.hd-page-heading-card--integrated > :not(.hd-page-title):not(.hd-page-subtitle):not(.hd-anchor){
  margin-top: 16px;
}

.hd-page-heading-card--integrated > .hd-card,
.hd-page-heading-card--integrated > form,
.hd-page-heading-card--integrated > section,
.hd-page-heading-card--integrated > .hd-alert{
  width: 100%;
  box-sizing: border-box;
}

@media (max-width: 640px){
  .hd-page-title,
  .outputdata_default .hd-page-title,
  .outputdata_default h1.hd-page-title{
    font-size: var(--h1-size) !important;
  }

  .hd-page-heading-card .hd-page-subtitle,
  .outputdata_default .hd-page-subtitle{
    width: 100%;
    font-size: 1rem !important;
  }
}


/* =========================================================
   Layout token consumption hardening
   - ensures Layout & sizing controls affect the live UI
   - keeps admin/public consistent across live, draft and immutable flows
   ========================================================= */
.hd-btn,
.outputdata_default .hd-btn,
.btn,
button,
input[type="submit"],
input[type="button"],
input[type="reset"]{
  font-size: var(--btn-size, 16px) !important;
}

a.nav-btn,
button.nav-btn,
.nav-btn,
.nav-btn-dropdown,
.nav-dropdown--account .dropdown-menu .dropdown-item,
.nav-dropdown--account .dropdown-menu .dropdown-item a,
.account-menu a,
.account-menu button{
  font-size: var(--nav-size, 16px) !important;
}

.hd-btn,
.outputdata_default .hd-btn{
  line-height: var(--lh-heading, 1.2) !important;
}

.hd-page-title{
  line-height: var(--lh-h1, 1.05) !important;
}


/* Updates-only header lockup refinement */
.brand-strip--lockup{
  display:block;
  padding-bottom:8px;
}
.brand-lockup{
  display:flex;
  align-items:center;
  gap:18px;
  min-width:0;
}
.brand-text--lockup{
  gap:4px;
}
.brand-main--full{
  min-width:0;
}
.header-auth-group{
  display:none !important;
}
.brand-actions-row{
  justify-content:flex-end;
  margin-top:0;
}
@media (max-width: 720px){
  .brand-lockup{
    align-items:flex-start;
    gap:14px;
  }
}


/* 2026-03-23 final header/banner corrections */
.brand-strip{
  display:grid !important;
  grid-template-columns: var(--brand-logo-wrap) minmax(0,1fr) !important;
  column-gap: var(--brand-gap) !important;
  align-items:center !important;
  padding: 6px var(--strip-pad-x) 10px !important;
}
.brand-logo-link{ justify-self:start; }
.brand-main{ display:flex !important; flex-direction:column !important; gap:12px !important; min-width:0; }
.brand-top-row{ display:flex !important; align-items:flex-start !important; justify-content:flex-start !important; gap:16px !important; min-width:0; }
.header-auth-group{ display:inline-flex !important; align-items:center; gap:12px; flex-wrap:nowrap; }
.brand-actions-row{ display:flex !important; align-items:center !important; justify-content:space-between !important; gap:12px !important; margin-top:2px !important; flex-wrap:wrap !important; }
.header-icon-group{ display:inline-flex !important; align-items:center; gap: var(--brand-user-gap,12px); }
.hero-links{ display:flex !important; flex-direction:column !important; align-items:flex-start !important; justify-content:flex-end !important; left:22px !important; right:auto !important; bottom:20px !important; gap:8px !important; }
.hero-pill--secondary{ display:none !important; }
.hero-text-link{
  display:inline-flex; align-items:center; gap:8px;
  margin-left:12px; color:#fff !important; text-decoration:underline; font-weight:700;
  text-shadow:0 2px 10px rgba(0,0,0,.55);
}
.hero-text-link:visited{ color:#fff !important; }
@media (max-width: 720px){
  .brand-strip{ grid-template-columns: 1fr !important; row-gap: 12px !important; }
  .brand-actions-row{ justify-content:flex-start !important; }
}


/* r7 header and banner alignment */
.brand-strip{display:grid !important;grid-template-columns:var(--brand-logo-wrap) minmax(0,1fr) !important;column-gap:var(--brand-gap) !important;align-items:start !important;padding:6px var(--strip-pad-x) 10px !important;}
.brand-main{display:flex !important;flex-direction:column !important;gap:10px !important;min-width:0 !important;}
.brand-top-row{display:flex !important;align-items:flex-start !important;justify-content:space-between !important;gap:18px !important;min-width:0 !important;}
.brand-text{min-width:0 !important;flex:1 1 auto !important;}
.brand-controls-inline{display:flex !important;align-items:center !important;justify-content:flex-end !important;flex:0 0 auto !important;min-width:max-content !important;padding-left:var(--header-controls-gap, 28px) !important;transform:translateX(var(--header-controls-shift, 0px)) !important;}
.brand-controls-inline .header-icon-group{display:inline-flex !important;align-items:center !important;gap:var(--brand-user-gap, 12px) !important;}
.brand-actions-row{display:flex !important;align-items:center !important;justify-content:flex-end !important;gap:12px !important;flex-wrap:nowrap !important;margin-top:0 !important;}
.header-auth-group{display:inline-flex !important;align-items:center !important;justify-content:flex-end !important;gap:12px !important;flex-wrap:nowrap !important;}
.hero-links{display:flex !important;flex-direction:column !important;align-items:flex-start !important;gap:8px !important;left:22px !important;right:auto !important;bottom:20px !important;}
.hero-text-link{margin-left:4px !important;}
.hero-pill--secondary{display:none !important;}
@media (max-width: 900px){
  .brand-top-row{flex-wrap:wrap !important;}
  .brand-controls-inline{width:100% !important;justify-content:flex-end !important;}
}
@media (max-width: 720px){
  .brand-strip{grid-template-columns:1fr !important;row-gap:12px !important;}
  .brand-top-row{flex-direction:column !important;align-items:flex-start !important;}
  .brand-controls-inline,.brand-actions-row{width:100% !important;justify-content:flex-start !important;}
}


/* r10 header alignment refinement */
.brand-strip{
  align-items:center !important;
}
.brand-logo-link,
.brand-logo-wrap{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.brand-main{
  justify-content:center !important;
}
.brand-top-row{
  align-items:center !important;
  justify-content:space-between !important;
  gap:24px !important;
}
.brand-text{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  min-width:0 !important;
}
.brand-title,
.brand-subtitle{
  margin:0 !important;
}
.brand-controls-inline{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  align-self:center !important;
  margin-left:auto !important;
  padding-left:var(--header-controls-gap, 28px) !important;
  transform:translateX(var(--header-controls-shift, 0px)) !important;
}
.header-icon-group{
  align-items:center !important;
}
.header-auth-group{
  align-items:center !important;
}
.brand-actions-row{
  justify-content:flex-end !important;
}
@media (max-width: 900px){
  .brand-top-row{
    gap:18px !important;
  }
  .brand-controls-inline{
    padding-left:var(--header-controls-gap, 12px) !important;
  }
}
@media (max-width: 720px){
  .brand-strip{
    align-items:start !important;
  }
  .brand-top-row{
    align-items:flex-start !important;
  }
  .brand-controls-inline{
    padding-left:0 !important;
  }
}


/* r11 header + blog refinements */
.brand-strip{
  align-items:start !important;
}
.brand-main{
  align-self:start !important;
  display:grid !important;
  grid-template-rows:auto auto !important;
}
.brand-top-row{
  align-items:center !important;
}
.brand-actions-row{
  display:flex !important;
  justify-content:flex-end !important;
  width:100% !important;
  min-height:44px !important;
  margin-top:4px !important;
}
.header-auth-group{
  margin-left:auto !important;
}
.hd-blog-list{
  display:grid !important;
  gap:16px !important;
}
.hd-blog-summary--full{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
}
.hd-blog-summary--full .hd-actions{
  justify-content:flex-start !important;
}
@media (max-width: 720px){
  .brand-actions-row{
    justify-content:flex-start !important;
  }
  .header-auth-group{
    margin-left:0 !important;
  }
}


/* r12 cleanup refinements */
.brand-strip{
  align-items:center !important;
}
.brand-main{
  align-self:center !important;
}
.brand-top-row{
  align-items:center !important;
  justify-content:space-between !important;
  gap:28px !important;
}
.brand-text{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
}
.brand-controls-inline{
  margin-left:auto !important;
  padding-left:var(--header-controls-gap, 28px) !important;
  transform:translateX(var(--header-controls-shift, 0px)) !important;
}
.hd-header-auth-row{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  width:100% !important;
  min-height:44px !important;
  padding:0 var(--strip-pad-x) 8px !important;
  box-sizing:border-box !important;
}
.hd-header-auth-row .header-auth-group{
  margin-left:auto !important;
}
.hero-links--left{
  display:flex !important;
  align-items:flex-end !important;
  justify-content:flex-start !important;
  left:22px !important;
  right:auto !important;
  bottom:20px !important;
}
.hero-links-right{
  position:absolute !important;
  right:26px !important;
  bottom:26px !important;
  z-index:3 !important;
}
.hero-links-right .hero-text-link{
  margin-left:0 !important;
  font-size:16px !important;
  color:#fff !important;
  text-decoration:underline !important;
  font-weight:700 !important;
  text-shadow:0 2px 10px rgba(0,0,0,.55) !important;
}
.hd-signup-panel,
.hd-signup-panel .hd-form,
.hd-signup-form,
.hd-signup-form .hd-grid{
  width:100% !important;
  max-width:none !important;
}
.hd-signup-form .hd-grid{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:16px !important;
}
.hd-signup-form .hd-field,
.hd-signup-form .hd-span-2{
  width:100% !important;
}
.hd-signup-form .hd-input{
  width:100% !important;
  max-width:none !important;
}
.hd-signup-form .hd-span-2{
  grid-column:1 / -1 !important;
}
.hd-blog-list{
  display:block !important;
}
.hd-blog-list .hd-blog-summary--full{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  margin:0 0 16px 0 !important;
}
.hd-blog-list .hd-blog-summary--full:last-child{
  margin-bottom:0 !important;
}
@media (max-width: 900px){
  .brand-top-row{
    gap:18px !important;
  }
  .brand-controls-inline{
    padding-left:var(--header-controls-gap, 18px) !important;
  }
}
@media (max-width: 720px){
  .hd-header-auth-row,
  .brand-actions-row{
    justify-content:flex-start !important;
  }
  .hd-signup-form .hd-grid{
    grid-template-columns:1fr !important;
  }
  .hero-links-right{
    right:18px !important;
    bottom:18px !important;
  }
}


/* r13 collapse admin row space for public view */
#header-shell.no-admin-auth .hd-header-auth-row{
  display:none !important;
  min-height:0 !important;
  height:0 !important;
  padding:0 !important;
  margin:0 !important;
  overflow:hidden !important;
}
#header-shell.no-admin-auth .brand-strip{
  padding-bottom:0 !important;
  margin-bottom:0 !important;
}
#header-shell.no-admin-auth .hero-banner{
  margin-top:0 !important;
}
