/* MARAUDERS: Great Hall at Night — Homepage v2 theme
   Inspired by the approved Great Hall mockup. Live cards, links and widgets remain interactive.
   Status dots are NOT fabricated. Layout targets the five existing service groups.
   Embedded self-contained artwork avoids custom Docker mounts or CDN dependence.
*/
:root {
  --hall-bg: #070a0e;
  --hall-card: #11181e;
  --hall-card2: #151c24;
  --hall-bronze: rgba(161,115,75,.67);
  --hall-bronze-faint: rgba(165,117,77,.30);
  --hall-cream: #e8d7bc;
  --hall-muted: #adacae;
}
html, body, #page_wrapper, #inner_wrapper { background-color:var(--hall-bg)!important; }
body { color:var(--hall-cream)!important; }
#inner_wrapper {
  min-height:100vh;
  background:radial-gradient(ellipse 78% 42% at 50% 60%, #152033 0%, transparent 90%),linear-gradient(180deg,#05080d,#0b1017 62%,#090c11)!important;
}
/* The hero comes from the approved artwork without its old, frozen clock. */
#information-widgets {
  position:relative!important;
  display:block!important;
  box-sizing:border-box;
  width:100%;
  height:clamp(205px,18.66vw,340px)!important;
  min-height:205px!important;
  border-bottom:1px solid var(--hall-bronze-faint);
  padding:0!important;
  margin:0!important;
  background-image:none;
  background-repeat:no-repeat!important;
  background-size:100% auto!important;
  background-position:center top!important;
}
#information-widgets #widgets-wrap {
  position:absolute!important;
  top:clamp(15px,2.3vw,37px)!important;
  right:clamp(15px,2.8vw,46px)!important;
  width:auto!important;
  display:flex!important;
  justify-content:flex-end!important;
  z-index:2;
  margin:0!important;
  padding:2px 8px;
  border-radius:4px;
  color:var(--hall-cream);
  background:rgba(6,11,18,.24);
}
#information-widgets #information-widgets-right {margin:0!important;flex-grow:0!important;justify-content:flex-end!important;}
#information-widgets * {color:var(--hall-cream);}
/* Five Hogwarts service groups in a balanced three-column layout. */
#layout-groups {
  display:grid!important;
  grid-template-columns: repeat(3,minmax(0,1fr))!important;
  align-items:stretch!important;
  width:calc(100% - 64px)!important;
  max-width:1680px!important;
  gap:14px!important;
  margin:14px auto 6px!important;
  padding:0!important;
}
#layout-groups > .services-group {
  position:relative;
  min-width:0!important;
  width:100%!important;
  flex:none!important;
  margin:0!important;
  padding:12px 12px 14px!important;
  min-height:245px;
  border-radius:6px!important;
  border:1px solid var(--hall-bronze)!important;
  background:linear-gradient(148deg,rgba(16,22,29,.96),rgba(8,13,19,.96) 80%)!important;
  box-shadow:0 8px 26px rgba(0,0,0,.35), inset 0 1px rgba(255,255,255,.025)!important;
}
/* Category headings / iconography: restrained, readable and aligned. */
#layout-groups > .services-group > button {
  display:flex!important;
  flex-direction:row!important;
  justify-content:flex-start!important;
  align-items:flex-start!important;
  position:relative;
  min-height:75px!important;
  width:100%!important;
  gap:13px!important;
  text-align:left!important;
  padding:4px 7px 22px!important;
  border-bottom:1px solid var(--hall-bronze-faint)!important;
}
#layout-groups .service-group-icon {
  display:flex!important;
  width:33px!important;
  height:33px!important;
  flex:0 0 33px!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  color:#cba477!important;
}
#layout-groups .service-group-icon img {width:32px!important;height:32px!important;object-fit:contain;}
#layout-groups .service-group-name {
  padding-top:2px!important;
  font:normal clamp(.95rem,1.16vw,1.31rem)/1.25 Georgia,'Palatino Linotype',serif!important;
  letter-spacing:.022em!important;
  text-align:left!important;
  color:var(--hall-cream)!important;
  margin:0!important;
}
#layout-groups > .services-group > button:after {
  position:absolute;
  bottom:7px;
  left:53px;
  font:500 .66rem/1.35 system-ui,sans-serif;
  letter-spacing:.11em;
  text-transform:uppercase;
  color:#b7a899;
  opacity:.85;
}
#layout-groups > .services-group:nth-child(1) > button:after {content:'Gateways & network services';}
#layout-groups > .services-group:nth-child(2) > button:after {content:'Automation & media';}
#layout-groups > .services-group:nth-child(3) > button:after {content:'Logs & observability';}
#layout-groups > .services-group:nth-child(4) > button:after {content:'Monitoring & notifications';}
#layout-groups > .services-group:nth-child(5) > button:after {content:'Virtualization & containers';}
#layout-groups .services-list {margin-top:13px!important;}
#layout-groups .service-card {
  border:1px solid rgba(174,149,122,.18)!important;
  border-radius:6px!important;
  min-height:66px!important;
  margin-bottom:9px!important;
  padding:5px 2px!important;
  background:linear-gradient(115deg,rgba(24,31,37,.98),rgba(20,26,32,.98))!important;
  color:var(--hall-cream)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.025)!important;
  transition:background-color .15s,border-color .15s,transform .15s;
}
#layout-groups .service-card:hover, #layout-groups .service-card:focus-within {
  background:#222b33!important;
  border-color:rgba(208,160,107,.6)!important;
  transform:translateY(-1px);
}
#layout-groups .service-title {min-height:50px;align-items:center;}
#layout-groups .service-title-text {align-items:center;}
#layout-groups .service-icon {width:48px!important;flex:0 0 48px!important;}
#layout-groups .service-icon img {height:34px!important;width:34px!important;object-fit:contain;}
#layout-groups .service-name {
  padding:5px 3px!important;
  color:#f0e6d7!important;
  font:normal .96rem/1.25 Georgia,'Palatino Linotype',serif!important;
  overflow-wrap:break-word;
}
#layout-groups .service-description {
  display:block!important;
  margin-top:4px!important;
  color:#a5a8ad!important;
  font:400 .80rem/1.33 system-ui,sans-serif!important;
}
#layout-groups .service-title-text, #layout-groups .service-card a {color:var(--hall-cream)!important;}
#layout-groups .service-card a:focus-visible {outline:2px solid #b89363!important;outline-offset:-1px;}
/* No fake green 'online' statuses. When configured, Homepage's genuine status remains visible. */
#layout-groups .service-tags {z-index:3;}
/* MARAUDERS HOMEPAGE BALANCE v1 — 3+2, native Hospital row */
#layout-groups > .services-group:nth-child(5) {
  grid-column: span 2 !important;
  min-height: 245px !important;
  padding: 12px 12px 14px !important;
  display: block !important;
}
#layout-groups > .services-group:nth-child(5) > button {
  min-height: 75px !important;
  border-right: 0 !important;
  border-bottom: 1px solid var(--hall-bronze-faint) !important;
  padding: 4px 7px 22px !important;
}
#layout-groups > .services-group:nth-child(5) .services-list {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
  width: 100% !important;
  margin: 13px 0 0 !important;
  align-items: stretch !important;
}
#layout-groups > .services-group:nth-child(5) .services-list > * {
  min-width: 0 !important;
  width: 100% !important;
  margin: 0 !important;
}
#layout-groups > .services-group:nth-child(5) .service-card {
  min-width: 0 !important;
  width: 100% !important;
  height: 100%;
  margin: 0 !important;
}
@media (max-width: 1180px) and (min-width: 641px) {
  #layout-groups > .services-group:nth-child(5) .services-list {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 640px) {
  #layout-groups > .services-group:nth-child(5) .services-list {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}

/* Quiet hall floor motif; contains NO user-interface labels or duplicate cards. */
#footer {margin-top:auto!important;min-height:145px!important;padding:0 26px 8px!important;}
#footer:before {
  content:'';display:block;
  width:calc(100% + 52px);
  margin:10px -26px 0;
  height:clamp(108px,11vw,180px);
  border-top:1px solid rgba(138,99,62,.25);
  pointer-events:none;
  background-image:linear-gradient(0deg,#070a0e 0%,rgba(7,10,14,.1) 100%),url("art/hall-floor.webp");
  background-position:center bottom;
  background-size:cover;
  background-repeat:no-repeat;
  opacity:.85;
}
#footer #style {position:relative;z-index:2;padding-top:4px;}
#footer #version {margin-top:0!important;}
@media(max-width:1180px) {
  #layout-groups {grid-template-columns:repeat(2,minmax(0,1fr))!important;width:calc(100% - 32px)!important;}
  #layout-groups > .services-group:nth-child(5) {grid-column:1/-1!important;}
  #layout-groups .service-group-name {font-size:1.12rem!important;}
}
@media(max-width:640px) {
  #information-widgets {height:180px!important;min-height:180px!important;background-size:auto 180px!important;}
  #information-widgets #widgets-wrap {top:auto!important;bottom:8px!important;right:10px!important;background:rgba(6,11,18,.72);}
  #layout-groups {grid-template-columns:1fr!important;width:calc(100% - 24px)!important;gap:12px!important;margin-top:12px!important;}
  #layout-groups > .services-group {min-height:unset!important;}
  #layout-groups > .services-group:nth-child(5) {grid-column:1!important;display:block!important;}
  #layout-groups > .services-group:nth-child(5) > button {border-right:0!important;border-bottom:1px solid var(--hall-bronze-faint)!important;}
  #layout-groups > .services-group:nth-child(5) .services-list {margin-top:12px!important;}
  #footer::before {height:100px;}
}
@media(prefers-reduced-motion:reduce) {#layout-groups .service-card {transition:none!important;transform:none!important;}}


/* MARAUDERS COMPACT CARDS v1 */
#layout-groups {
  display:block!important;
  column-count:3;
  column-gap:16px;
  width:calc(100% - 48px)!important;
  max-width:1500px!important;
  margin:18px auto 0!important;
  padding:0!important;
}
#layout-groups > .services-group,
#layout-groups > .services-group:nth-child(5) {
  display:inline-block!important;
  vertical-align:top;
  break-inside:avoid;
  box-sizing:border-box;
  width:100%!important;
  min-width:0!important;
  height:auto!important;
  min-height:0!important;
  grid-column:auto!important;
  margin:0 0 16px!important;
  padding:14px!important;
  border-radius:10px!important;
}
#layout-groups > .services-group > button,
#layout-groups > .services-group:nth-child(5) > button {
  min-height:62px!important;
  gap:10px!important;
  padding:0 0 25px!important;
}
#layout-groups .service-group-icon {
  width:26px!important;
  height:26px!important;
  flex:0 0 26px!important;
}
#layout-groups .service-group-icon img {
  width:26px!important;height:26px!important;
}
#layout-groups .service-group-name {
  padding-top:0!important;
  font:normal 1.14rem/1.3 Georgia,'Palatino Linotype',serif!important;
}
#layout-groups > .services-group > button:after {
  left:36px;right:0;bottom:8px;
  font-size:.59rem;
  letter-spacing:.085em;
}
#layout-groups .services-list,
#layout-groups > .services-group:nth-child(5) .services-list {
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  gap:8px!important;
  width:100%!important;
  margin:12px 0 0!important;
  padding:0!important;
  align-items:start!important;
}
#layout-groups .services-list > * {
  min-width:0!important;width:100%!important;margin:0!important;
}
#layout-groups .service-card,
#layout-groups > .services-group:nth-child(5) .service-card {
  box-sizing:border-box;
  width:100%!important;
  min-width:0!important;
  height:auto!important;
  min-height:60px!important;
  margin:0!important;
  padding:4px!important;
  border-radius:7px!important;
}
#layout-groups .service-title {min-height:48px;}
#layout-groups .service-icon {width:42px!important;flex:0 0 42px!important;}
#layout-groups .service-icon img {width:30px!important;height:30px!important;}
@media(max-width:1180px) {
  #layout-groups {column-count:2;}
}
@media(max-width:700px) {
  #layout-groups {column-count:1;width:calc(100% - 24px)!important;}
}

/* MARAUDERS REFINE v1 — balanced three-column hall, quieter cards, themed header, standard statuses */
:root {
  --hall-art: url("art/hall-banner.webp");
  --hall-brass: #d6aa73;
  --hall-tile: rgba(255,255,255,.035);
  --hall-tile-hover: rgba(255,255,255,.07);
  --hall-ui: system-ui,-apple-system,'Segoe UI',sans-serif;
  --hall-serif: Georgia,'Palatino Linotype',serif;
}

/* Surface: deep navy that lets the hall artwork carry the edges and stay calm in the centre. */
#inner_wrapper {
  background:
    radial-gradient(ellipse 62% 46% at 50% 34%, rgba(18,30,48,.9) 0%, transparent 78%),
    linear-gradient(180deg,#05080d 0%,#0a1018 52%,#080b10 100%)!important;
}

/* Header: the centred owl and wordmark are the identity; health summary sits beneath them. */
#information-widgets {
  --art-h:clamp(116px,9.6vw,138px);
  position:relative!important;
  flex:none!important;
  height:auto!important;
  min-height:0!important;
  padding:calc(var(--art-h) + 8px) 0 8px!important;
  border-bottom:0!important;
  background:none!important;
  background-image:none!important;
}
#information-widgets::before,
#information-widgets::after {
  content:'';
  position:absolute;
  pointer-events:none;
  background-image:var(--hall-art);
  background-repeat:no-repeat;
  z-index:0;
}
/* Wide layer: architecture and candles at the edges only, fading away downward and toward the middle. */
#information-widgets::before {
  top:0;left:0;right:0;
  height:min(36vw,330px);
  background-size:100% auto;
  background-position:center top;
  opacity:.5;
  -webkit-mask-image:linear-gradient(90deg,#000 0,#000 22%,transparent 38%,transparent 62%,#000 78%,#000 100%),linear-gradient(180deg,#000 0,#000 30%,transparent 100%);
  -webkit-mask-composite:source-in;
  mask-image:linear-gradient(90deg,#000 0,#000 22%,transparent 38%,transparent 62%,#000 78%,#000 100%),linear-gradient(180deg,#000 0,#000 30%,transparent 100%);
  mask-composite:intersect;
}
/* Centre layer: the same artwork, owl and wordmark included, at a smaller scale. */
#information-widgets::after {
  top:0;left:50%;
  width:min(100%,calc(var(--art-h) * 5.36));
  height:var(--art-h);
  transform:translateX(-50%);
  background-size:auto 100%;
  background-position:center top;
  /* Everything below the wordmark is cut away: the tiny baked-in tagline is replaced by live text. */
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 20%,#000 80%,transparent 100%),linear-gradient(180deg,#000 0,#000 80%,transparent 81.8%);
  -webkit-mask-composite:source-in;
  mask-image:linear-gradient(90deg,transparent 0,#000 20%,#000 80%,transparent 100%),linear-gradient(180deg,#000 0,#000 80%,transparent 81.8%);
  mask-composite:intersect;
}
/* Date and ChatGPT shortcut share one right-aligned stack. */
#information-widgets #widgets-wrap {
  position:absolute!important;
  top:52px!important;
  bottom:auto!important;
  right:clamp(16px,2vw,32px)!important;
  width:auto!important;
  padding:2px 10px!important;
  border-radius:999px;
  background:rgba(6,11,18,.5)!important;
  z-index:3;
}
#information-widgets .information-widget-datetime span {
  font:400 .76rem/1.2 var(--hall-ui)!important;
  letter-spacing:.02em;
  color:#b9b2a6!important;
  opacity:.9;
}
#mh-bar {
  display:flex;
  justify-content:center;
  padding:0 clamp(16px,2vw,32px);
}
/* The page title stays in the DOM for screen readers; the wordmark carries it visually. */
.mh-title {
  position:absolute;
  width:1px;height:1px;
  margin:-1px;padding:0;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}
.mh-bar-main {display:flex;justify-content:center;max-width:100%;}

/* Live tagline under the wordmark (the artwork's own copy is masked out above). */
.mh-tagline {
  position:absolute;
  left:50%;
  top:calc(var(--art-h) * .835);
  transform:translateX(-50%);
  margin:0;
  white-space:nowrap;
  font:400 15px/1.3 var(--hall-serif);
  letter-spacing:.1em;
  text-transform:uppercase;
  color:#ecd9b8;
  text-shadow:0 1px 8px rgba(0,0,0,.85);
  pointer-events:none;
}
.mh-health {
  position:relative;
  z-index:3;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  padding:5px 14px;
  border-radius:999px;
  background:rgba(6,11,18,.6);
  font:500 .8rem/1.4 var(--hall-ui);
  color:#b3bac3;
}
.mh-health-item + .mh-health-item::before {
  content:'\00b7';
  content:'\00b7' / '';
  margin:0 10px;
  color:#7d8590;
}
.mh-health-ok {color:#7fddb3;}
.mh-health-bad {color:#ff9a9a;}
.mh-health-time {color:#a3abb5;}
.mh-shortcut {
  position:absolute;
  top:14px;
  right:clamp(16px,2vw,32px);
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:6px 13px 6px 10px;
  border-radius:999px;
  background:rgba(6,11,18,.6);
  box-shadow:inset 0 0 0 1px rgba(214,170,115,.28);
  font:500 .82rem/1 var(--hall-ui);
  color:#eadfca;
  text-decoration:none;
  transition:background-color .15s,box-shadow .15s;
}
.mh-shortcut img {width:18px;height:18px;object-fit:contain;}
.mh-shortcut:hover {background:rgba(214,170,115,.14);box-shadow:inset 0 0 0 1px rgba(214,170,115,.7);}

/* Three balanced columns: Staircase | Restricted Section over Burrow | Chamber of Secrets. */
#layout-groups {
  display:grid!important;
  column-count:auto!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px!important;
  width:calc(100% - 48px)!important;
  max-width:1500px!important;
  margin:6px auto 0!important;
  align-items:stretch!important;
  position:relative;
  z-index:1;
}
#layout-groups > .services-group {
  display:flex!important;
  flex-direction:column;
  position:relative;
  margin:0!important;
  padding:14px!important;
  border:1px solid var(--hall-bronze)!important;
  border-radius:10px!important;
  background:linear-gradient(150deg,rgba(14,21,31,.92),rgba(8,13,20,.95))!important;
  box-shadow:0 10px 30px rgba(0,0,0,.25)!important;
}
@media(min-width:1100px) {
  #layout-groups > .services-group:nth-child(1) {grid-column:1;grid-row:1 / 3;}
  #layout-groups > .services-group:nth-child(2) {grid-column:2;grid-row:1;}
  #layout-groups > .services-group:nth-child(3) {grid-column:2;grid-row:2;}
  #layout-groups > .services-group:nth-child(4) {grid-column:3;grid-row:1 / 3;}
}
#layout-groups > .services-group:nth-child(1) > button:after {content:'Network services';}
#layout-groups > .services-group:nth-child(2) > button:after {content:'Logs & monitoring';}
#layout-groups > .services-group:nth-child(3) > button:after {content:'Automation & media';}
#layout-groups > .services-group:nth-child(4) > button:after {content:'Virtualization & containers';}
#layout-groups > .services-group > button:after {color:#b9aea0;opacity:1;}
#layout-groups > .services-group > button:focus-visible {outline:2px solid var(--hall-brass);outline-offset:3px;border-radius:6px;}

/* Services: quiet tiles. Brass appears only on hover, focus and interaction. */
#layout-groups .service-card {
  border:0!important;
  box-shadow:none!important;
  background:var(--hall-tile)!important;
  transform:none!important;
  transition:background-color .15s,box-shadow .15s;
}
#layout-groups .service-card:hover,
#layout-groups .service-card:focus-within {
  background:var(--hall-tile-hover)!important;
  box-shadow:inset 0 0 0 1px rgba(214,170,115,.6)!important;
}
#layout-groups .service-card a:focus-visible {
  outline:2px solid var(--hall-brass)!important;
  outline-offset:2px;
  border-radius:6px;
}
#layout-groups .service-card button:focus-visible {
  outline:2px solid var(--hall-brass);
  outline-offset:1px;
  border-radius:4px;
}
#layout-groups .service-description {color:#adb3bb!important;}

/* Metrics: readable weights in the UI font, quiet aligned labels. */
#layout-groups .service-container {align-items:stretch;}
#layout-groups .service-block {
  background:rgba(255,255,255,.025)!important;
  border-radius:6px!important;
  padding:6px 4px!important;
}
#layout-groups .service-block-value {
  font:600 .9rem/1.2 var(--hall-ui)!important;
  font-variant-numeric:tabular-nums;
  color:#f1e8d9!important;
}
#layout-groups .service-block-label {
  margin-top:3px;
  font:500 .62rem/1.2 var(--hall-ui)!important;
  letter-spacing:.07em;
  text-transform:uppercase;
  color:#a0a8b1!important;
}

/* Status: one labelled badge per service. Native dots/tags stay in the DOM as the data source. */
#layout-groups .service-site-monitor {display:none!important;}
#layout-groups .service-proxmoxstatus {position:absolute;top:0;right:0;min-width:92px;height:30px;z-index:4;}
#layout-groups .service-proxmoxstatus .proxmoxstatus {opacity:0;}
#layout-groups .mh-has-badge .service-name {padding-right:96px!important;}
.mh-badge {
  position:absolute;
  top:9px;
  right:10px;
  z-index:3;
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:2px 9px 2px 8px;
  border-radius:999px;
  background:rgba(255,255,255,.05);
  font:600 .64rem/1.5 var(--hall-ui);
  letter-spacing:.05em;
  text-transform:uppercase;
  color:#aab1ba;
  pointer-events:none;
}
.mh-badge::before {content:'';width:6px;height:6px;border-radius:50%;background:currentColor;}
.mh-badge--healthy {color:#7fddb3;}
.mh-badge--running {color:#8ec5ea;}
.mh-badge--offline {color:#ff9a9a;}
.mh-badge--paused {color:#e8c872;}
.mh-badge--unknown {color:#aab1ba;}

/* Desktop: roughly 12% larger text, icons, metrics and spacing, using ordinary rem sizing. */
@media(min-width:1100px) {
  #layout-groups {gap:18px!important;}
  #layout-groups > .services-group {padding:17px!important;}
  #layout-groups > .services-group > button {min-height:70px!important;gap:12px!important;padding-bottom:28px!important;}
  #layout-groups .service-group-icon {width:30px!important;height:30px!important;flex:0 0 30px!important;}
  #layout-groups .service-group-icon img {width:30px!important;height:30px!important;}
  #layout-groups .service-group-name {font:normal 1.3rem/1.3 var(--hall-serif)!important;}
  #layout-groups > .services-group > button:after {left:42px;bottom:9px;font-size:.68rem;letter-spacing:.09em;}
  #layout-groups .services-list {gap:10px!important;margin-top:14px!important;}
  #layout-groups .service-card {min-height:68px!important;padding:6px!important;border-radius:8px!important;}
  #layout-groups .service-title {min-height:54px;}
  #layout-groups .service-icon {width:48px!important;flex:0 0 48px!important;}
  #layout-groups .service-icon img {width:34px!important;height:34px!important;}
  #layout-groups .service-name {font:normal 1.08rem/1.25 var(--hall-serif)!important;padding:6px 4px!important;}
  #layout-groups .service-description {font:400 .9rem/1.35 var(--hall-ui)!important;margin-top:4px!important;}
  #layout-groups .service-block {padding:8px 5px!important;}
  #layout-groups .service-block-value {font-size:1.02rem!important;}
  #layout-groups .service-block-label {font-size:.7rem!important;margin-top:4px;}
  #layout-groups .mh-has-badge .service-name {padding-right:108px!important;}
  #layout-groups .mh-has-badge .service-description {margin-right:-104px;}
  .mh-badge {top:11px;right:12px;font-size:.7rem;padding:3px 10px 3px 9px;}
  .mh-badge::before {width:7px;height:7px;}
  #layout-groups .service-proxmoxstatus {min-width:104px;height:34px;}
}

/* Footer: less dead space under the cards, and the hall floor fades in instead of starting on a hard edge. */
#footer {margin-top:0!important;min-height:0!important;}
#footer:before {
  margin-top:6px!important;
  border-top:0!important;
  height:clamp(96px,8.5vw,140px)!important;
  -webkit-mask-image:linear-gradient(180deg,transparent 0,rgba(0,0,0,.55) 38%,#000 100%);
  mask-image:linear-gradient(180deg,transparent 0,rgba(0,0,0,.55) 38%,#000 100%);
}

/* Tablet and phone. */
@media(max-width:1099px) {
  #layout-groups {grid-template-columns:repeat(2,minmax(0,1fr))!important;width:calc(100% - 32px)!important;}
}
@media(max-width:979px) {
  .mh-tagline {font-size:13px;letter-spacing:.1em;}
  #information-widgets {--art-h:clamp(84px,14vw,112px);display:flex!important;flex-direction:column;align-items:center;gap:8px;padding:var(--art-h) 16px 10px!important;}
  #information-widgets::before {display:none;}
  #mh-bar {flex-direction:column;align-items:center;gap:10px;padding:0;}
  .mh-shortcut {position:static;}
  #information-widgets #widgets-wrap {position:static!important;display:block!important;}
}
@media(max-width:700px) {
  .mh-tagline {font-size:10.5px;letter-spacing:.07em;}
  #layout-groups {grid-template-columns:minmax(0,1fr)!important;width:calc(100% - 24px)!important;gap:12px!important;}
  #layout-groups > .services-group {padding:12px!important;}
  .mh-health {border-radius:12px;font-size:.76rem;}
  .mh-health-item:last-child {flex-basis:100%;justify-content:center;text-align:center;}
  .mh-health-item:last-child::before {display:none;}
}
@media(prefers-reduced-motion:reduce) {
  #layout-groups .service-card, .mh-shortcut {transition:none!important;}
}

/* MARAUDERS REFINE v3 — slightly brighter secondary text. Fonts, sizes, palette, spacing and focus states are unchanged. */
#layout-groups .service-description {color:#c3c9d1!important;}
#layout-groups .service-block-label {color:#bcc4cd!important;}
#layout-groups > .services-group > button:after {color:#d4c8b6!important;opacity:1!important;}
