/* Brand colours from guidelines */
:root{
  --brand-red:#ED1B23;
  --brand-grey:#575756;
  --brand-black:#231F20;
  --bg:#ffffff;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:"Titillium Web", system-ui, -apple-system, Segoe UI, Arial, sans-serif;color:var(--brand-black);background:var(--bg)}
.container{max-width:980px;margin:0 auto;padding:24px}

.site-header{border-bottom:4px solid var(--brand-red);background:#fff;}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;text-decoration:none;color:var(--brand-black)}
.logo-box{display:flex;align-items:center;justify-content:center;width:120px;height:42px;border:2px solid var(--brand-black);font-weight:700;letter-spacing:1px}
nav a{margin-left:16px;color:var(--brand-black);text-decoration:none;font-weight:600}
nav a:hover{color:var(--brand-red)}

.hero{padding:24px 0 8px 0;border-bottom:1px solid #e7e7e7;margin-bottom:16px}
.hero.small{padding:8px 0}
.intro{color:var(--brand-grey)}

.card{background:#fff;border:1px solid #e4e4e4;border-top:4px solid var(--brand-red);padding:24px;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,0.04);margin:24px 0}

.grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form-field{display:flex;flex-direction:column}
.form-field input{padding:10px 12px;border:1px solid #d0d0d0;border-radius:6px;font-size:16px}
.form-field label{font-weight:600;margin-bottom:6px}
.checkbox{display:flex;align-items:flex-start;gap:10px}
.checkbox input{margin-top:4px}

.col-span-2{grid-column:1/-1}

.actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.btn{background:var(--brand-red);color:#fff;border:none;border-radius:999px;padding:10px 18px;font-weight:700;cursor:pointer;text-decoration:none;display:inline-block}
.btn.secondary{background:#fff;color:var(--brand-black);border:2px solid var(--brand-black)}
.btn:hover{opacity:.92}

.help{color:var(--brand-grey);margin:0}

.file-list{list-style:none;padding:0;margin:0}
.file-item{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #eee;padding:12px 0}
.file-item .meta{color:var(--brand-grey);font-size:14px}

.flash-wrap{margin:12px 0}
.flash{padding:10px 12px;border-radius:6px}
.flash.error{background:#ffe9ea;color:#7a0008;border:1px solid #ffb5ba}

.site-footer{border-top:1px solid #e7e7e7;padding:24px 0;margin-top:24px;font-size:14px;color:var(--brand-grey);text-align:center}
.site-footer .spirit{font-style:italic;margin:0 0 4px 0}
code{background:#f7f7f7;border:1px solid #eee;border-radius:4px;padding:2px 6px}
@media (max-width:700px){.grid{grid-template-columns:1fr}}


.logo-img{height:42px; width:auto}

.cookie-bar{position:fixed;left:0;right:0;bottom:0;background:#000;color:#fff;padding:10px 0;z-index:999}
.cookie-inner{display:flex;align-items:center;justify-content:space-between;gap:12px}
.cookie-bar a{color:#fff;text-decoration:underline}
.cookie-bar button{background:var(--brand-red);border:none;color:#fff;padding:8px 14px;border-radius:999px;font-weight:700;cursor:pointer}

.flash.ok{background:#e9fff0;color:#0a5f2e;border:1px solid #b7efc8}
