/* BMMS website - Gashpy Software.
   Brand palette copied unchanged from Design/bmms-brand/bmms-colours.css (the same values the application uses).
   To change a colour, change it in bmms-colours.css first, then copy the block here again. */
:root {
  --bmms-primary: #1E5AA8;
  --bmms-primary-hover: #174A8C;
  --bmms-primary-active: #123A70;
  --bmms-on-primary: #FFFFFF;
  --bmms-header-bg: #1F2937;
  --bmms-header-text: #FFFFFF;
  --bmms-page-bg: #F4F6F9;
  --bmms-panel-bg: #FFFFFF;
  --bmms-panel-border: #D5DCE5;
  --bmms-heading: #111827;
  --bmms-text: #1F2937;
  --bmms-text-muted: #4B5563;
  --bmms-table-head-bg: #E3EBF6;
  --bmms-table-head-text: #17325C;
  --bmms-table-stripe: #F2F6FB;
  --bmms-table-row-hover: #DCE8F7;
  --bmms-success: #166534;
  --bmms-success-tint: #E8F5EC;
  --bmms-success-border: #B7DFC3;
  --bmms-warning: #8A5300;
  --bmms-warning-tint: #FDF3E1;
  --bmms-warning-border: #F0D29E;
  --bmms-error: #B42318;
  --bmms-error-tint: #FDECEA;
  --bmms-error-border: #F3C1BC;
  --bmms-focus: #2563EB;
  --bmms-focus-on-dark: #93C5FD;
  --bmms-field-bg: #FFFFFF;
  --bmms-field-border: #6B7280;
  --bmms-field-border-hover: #4B5563;
  --bmms-disabled-text: #5B6574;
  --bmms-disabled-bg: #E9EDF2;
  --bmms-disabled-border: #C5CCD6;
  --bmms-link: #1E5AA8;
  --bmms-link-hover: #174A8C;
  --bmms-link-visited: #5B3E96;
  --bmms-btn-secondary-bg: #FFFFFF;
  --bmms-btn-secondary-text: #1E5AA8;
  --bmms-btn-secondary-border: #1E5AA8;
  --bmms-btn-secondary-hover-bg: #E8F0FA;
  --bmms-btn-secondary-hover-text: #174A8C;
  --bmms-btn-secondary-hover-border: #174A8C;
  --bmms-menu-text: #D1D5DB;
  --bmms-menu-hover-bg: #374151;
  --bmms-menu-hover-text: #FFFFFF;
  --bmms-menu-selected-bg: #1E5AA8;
  --bmms-menu-selected-text: #FFFFFF;
  /* 3 px bottom border on the selected menu item */
  --bmms-menu-selected-indicator: #FFFFFF;
}
/* Site names mapped to the brand palette */
:root{
  --ink:var(--bmms-text); --heading:var(--bmms-heading); --muted:var(--bmms-text-muted); --bg:#FFFFFF;
  --bar:var(--bmms-header-bg); --bar-ink:var(--bmms-header-text); --menu-ink:var(--bmms-menu-text); --menu-hover:var(--bmms-menu-hover-bg);
  --accent:var(--bmms-primary); --accent-ink:var(--bmms-on-primary); --accent-dark:var(--bmms-primary-hover); --accent-active:var(--bmms-primary-active);
  --panel:var(--bmms-table-stripe); --panel-head:var(--bmms-table-head-bg); --head-ink:var(--bmms-table-head-text); --line:var(--bmms-panel-border);
  --focus:var(--bmms-focus); --focus-dark:var(--bmms-focus-on-dark); --alt-hover:var(--bmms-btn-secondary-hover-bg);
}
@font-face{font-family:"Public Sans";src:url("fonts/PublicSans-Regular.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Public Sans";src:url("fonts/PublicSans-Bold.woff2") format("woff2");font-weight:700;font-display:swap}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font:17px/1.6 "Public Sans",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);background:var(--bg)}
.wrap{max-width:960px;margin:0 auto;padding:0 16px}
a{color:var(--bmms-link)}
a:hover{color:var(--bmms-link-hover)}
h1,h2,h3{color:var(--heading)}
a:focus-visible,.btn:focus-visible,.navbtn:focus-visible,input:focus-visible+label{outline:3px solid var(--focus);outline-offset:2px}
.skip{position:absolute;left:-999px;top:0;background:#fff;color:#000;padding:8px 12px;z-index:10}
.skip:focus{left:8px;top:8px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
/* header */
.bar{background:var(--bar);color:var(--bar-ink)}
.bar-in{display:flex;align-items:center;gap:20px;min-height:64px;flex-wrap:nowrap;position:relative}
.brand{flex:none;display:flex;align-items:center;text-decoration:none;padding:14px 0}
.brand img{display:block;width:223px;height:36px}
.bar nav{margin-left:auto}
.bar ul{list-style:none;margin:0;padding:0;display:flex;gap:2px;flex-wrap:nowrap}
.bar nav a{display:block;white-space:nowrap;color:var(--menu-ink);text-decoration:none;padding:10px 10px;font-size:15px;border-bottom:3px solid transparent}
.bar nav a:hover{background:var(--menu-hover);color:var(--bar-ink)}
.bar nav a[aria-current="page"]{color:var(--bar-ink);border-bottom-color:var(--bmms-menu-selected-indicator);font-weight:700}
.bar a:focus-visible,.cta a:focus-visible,.foot a:focus-visible,.navtoggle:focus-visible+label{outline-color:var(--focus-dark)}
.navtoggle,.navbtn{display:none}
/* hero */
.hero{background:var(--panel);border-bottom:1px solid var(--line);padding:44px 0 36px}
.hero h1{font-size:clamp(28px,5vw,40px);line-height:1.2;margin:0 0 14px;max-width:24em}
.lead{font-size:19px;max-width:40em;margin:0 0 20px;color:var(--ink)}
.actions{margin:0 0 12px;display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-block;background:var(--accent);color:var(--accent-ink);text-decoration:none;font-weight:700;padding:12px 22px;border-radius:6px;border:2px solid var(--accent)}
.btn:hover{background:var(--accent-dark);border-color:var(--accent-dark);color:var(--accent-ink)}
.btn:active{background:var(--accent-active);border-color:var(--accent-active)}
.btn-alt{background:#fff;color:var(--accent)}
.btn-alt:hover{background:var(--alt-hover);color:var(--accent-dark);border-color:var(--accent-dark)}
.note{color:var(--muted);font-size:15px;margin:10px 0 0}
/* sections */
.sec{padding:36px 16px}
.sec h2,.band h2{font-size:26px;margin:0 0 14px;line-height:1.25}
.sec h2:not(:first-child){margin-top:30px}
.band{background:var(--panel);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:36px 0}
.cols3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.cols2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.card{background:#fff;border:1px solid var(--line);border-radius:8px;padding:18px}
.card h3{margin:0 0 8px;font-size:19px}
.card p{margin:0}
.steps{list-style:none;counter-reset:s;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.steps li{counter-increment:s;background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:14px 14px 14px 52px;position:relative;display:flex;flex-direction:column}
.steps li::before{content:counter(s);position:absolute;left:14px;top:14px;width:28px;height:28px;border-radius:50%;background:var(--accent);color:#fff;font-weight:700;text-align:center;line-height:28px}
.steps strong{font-size:18px}
.steps span{color:var(--muted);font-size:15px}
.feat{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:center;padding-top:30px;padding-bottom:30px;border-bottom:1px solid var(--line)}
.feat:nth-of-type(odd) .shot{order:-1}
.feat h2{font-size:24px;margin:0 0 10px}
.feat ul,.plain{margin:0;padding-left:20px}
.feat li,.plain li{margin:0 0 8px}
.shot{margin:0;min-width:0}
.shot-box{background:var(--panel-head);border:2px dashed var(--accent);border-radius:8px;aspect-ratio:16/9;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:14px;gap:6px;color:var(--ink)}
.shot-box span{font-size:13px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
.shot figcaption{font-size:14px;color:var(--muted);margin-top:6px}
.shot img{max-width:100%;height:auto;border:1px solid var(--line);border-radius:8px}
.tbl{width:100%;border-collapse:collapse;margin:0 0 14px}
.tbl th,.tbl td{border:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:top}
.tbl th{background:var(--panel-head);color:var(--head-ink)}
.tbl tr:nth-child(even) td{background:var(--panel)}
.cta{background:var(--bar);color:#fff;padding:40px 0;text-align:center}
.cta h2{margin:0 0 8px;font-size:26px;color:var(--bar-ink)}
.cta p{margin:0 0 14px}
.cta .btn{background:#fff;color:var(--bar);border-color:#fff}
.cta .btn:hover{background:var(--alt-hover);border-color:var(--alt-hover);color:var(--accent-dark)}
.bigmail{font-size:26px;font-weight:700;word-break:break-word}
.foot{background:var(--bar);color:var(--menu-ink);font-size:14px;padding:18px 0}
.foot a{color:#fff}
.foot p{margin:4px 0}
@media (max-width:980px){
  .bar-in{flex-wrap:wrap}
  .cols3,.cols2,.steps,.feat{grid-template-columns:1fr}
  .feat:nth-of-type(odd) .shot{order:0}
  .navbtn{display:flex;flex-direction:column;gap:5px;margin-left:auto;padding:12px;cursor:pointer}
  .navbtn span{display:block;width:24px;height:3px;background:var(--bar-ink)}
  .bar nav{display:none;width:100%;margin:0 0 10px}
  .navtoggle:checked~nav{display:block}
  .bar ul{flex-direction:column}
  .bar nav a{padding:12px 4px;border-bottom:1px solid rgba(255,255,255,.15)}
  .navtoggle{display:block;position:absolute;right:16px;top:20px;width:44px;height:36px;opacity:0;z-index:2;cursor:pointer;margin:0}
  .tbl{display:block;overflow-x:auto}
}
@media print{.bar,.cta,.skip{display:none}body{font-size:12pt}}
