/* Shared surface, fine metal edges and the final embroidered main banner. */
body {
  background: radial-gradient(ellipse at 0 35%, #58150f20, transparent 42%),
    radial-gradient(ellipse at 100% 75%, #58150f1a, transparent 40%),
    linear-gradient(#060b0e90, #060b0e90),
    #060b0e url('img/obsidian.svg') center top / 1400px auto repeat-y;
}
.site-wrap { background: transparent; }
.site-header {
  border: 1px solid #465055;
  border-bottom-color: #80332b;
  background: linear-gradient(95deg, #090f12ed, #080c10b3 50%, #080e11ee),
    url('img/obsidian.svg') center / 100% 100%;
  box-shadow: inset 0 1px #abbcc220, inset 0 -1px #030709, 0 3px 12px #0008;
}
.brand { background: linear-gradient(110deg, #07090c33, #4b111527 50%, #07090c33); }
.home-hero { background-image: url('img/hero-final.png'); }
.home-hero, .page-hero {
  border-color: #7a4238 #3d4648 #823c30;
  box-shadow: inset 0 0 0 1px #ddad7020, 0 3px 12px #0009;
}
.panel, .event-card, .stats-bar, .service-tile {
  border-top-color: #826758;
  border-right-color: #384346;
  border-bottom-color: #64332c;
  border-left-color: #4a4842;
  box-shadow: inset 0 1px #c4c1ac14, inset 0 -1px #02070b,
    0 2px 6px #0008;
}
.panel-head {
  background: linear-gradient(100deg, #b47b4210, transparent 58%, #971c1810);
  border-bottom-color: #52443c;
}
.panel::before {
  background: linear-gradient(90deg, #d48866a3, #91756524 14%, transparent 36%, transparent 65%, #a344302c 89%, #d06147a8);
}
.service-tile {
  background: linear-gradient(105deg, #160d10a6, #071016d9),
    url('img/obsidian.svg') center / 100% 100%;
}
.service-tile-safe { grid-column: 1 / -1; min-height: 66px; padding-block: 10px; gap: 14px; }
.service-tile-safe > .icon:first-child { width: 35px; height: 35px; margin-inline: 10px; }
.service-tile-safe h2 { font-size: 16px; margin-bottom: 3px; }
.service-tile-safe p { font-size: 11px; }
.service-tile-safe > .icon:last-child { bottom: calc(50% - 7px); }
.hero-embers i { width: 3.45px; height: 3.45px; box-shadow: 0 0 9.2px 2.3px #e94520; }
.site-footer {
  background: linear-gradient(0deg, #050b0ef2, #050b0e94 65%, #050b0e80),
    url('img/hero-final.png') center 19% / cover;
  border-top-color: #80513f;
}
.tools-navigation { display: flex; gap: 7px; align-items: center; margin: 14px 0 10px; }
.tools-navigation a { display: inline-flex; align-items: center; gap: 7px; min-height: 39px; padding: 7px 16px; border: 1px solid #3d4b50; border-radius: 4px; font-size: 13px; background: linear-gradient(#111a1e, #070d11); }
.tools-navigation a .icon { width: 19px; height: 19px; }
.tools-navigation a[aria-current] { border-color: #cf3341; background: linear-gradient(#55111a, #29090e); box-shadow: inset 0 0 12px #df1a2820; color: #fff; }
.tools-navigation a:hover { border-color: #cd7c68; }
@media (min-width: 761px) and (max-width: 1000px) {
  .mobile-menu-toggle { display: inline-flex; order: -1; }
  .site-header .brand { margin-right: auto; }
  .mobile-bottom { display: none; }
}
@media (max-width: 760px) {
  .site-wrap { background: transparent; }
  .site-header { border-top: 0; border-inline: 0; }
  .home-hero { background-image: url('img/hero-final.png'); }
  .service-tile-safe { min-height: 59px; gap: 8px; }
  .service-tile-safe > .icon:first-child { width: 29px; height: 29px; margin-inline: 5px; }
  .service-tile-safe h2 { font-size: 14px; }
  .service-tile-safe p { font-size: 10px; }
  .tools-navigation { margin: 10px 0 8px; gap: 6px; }
  .tools-navigation a { padding: 7px 11px; font-size: 12px; flex: 1; justify-content: center; }
  .tools-navigation a:first-child { flex: 0; padding: 8px; }
  .tools-navigation a:first-child span { display: none; }
}
