:root{
  --ink:#0b0b0b;
  --char:#141414;
  --plate:#1c1c1c;
  --wire:#303030;
  --ash:#a8a8a8;
  --chalk:#e8e4de;
  --fire:#ff6400;
  --ember:#cc5000;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ink);color:var(--chalk);font-family:'Barlow',sans-serif;line-height:1.7}
a{color:inherit}
img{display:block;max-width:100%}
:focus-visible{outline:2px solid var(--fire);outline-offset:3px}
.skip-link{position:fixed;left:1rem;top:1rem;z-index:10;background:var(--fire);color:var(--ink);padding:.7rem 1rem;font-weight:700;transform:translateY(-160%);transition:transform .2s}
.skip-link:focus{transform:translateY(0)}
.site-header{height:64px;border-bottom:1px solid var(--wire);background:rgba(11,11,11,.96);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1.25rem,5vw,3rem)}
.site-header img{height:30px;width:auto}
.site-header nav{display:flex;align-items:center;gap:1.4rem}
.site-header nav a{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;color:var(--ash)}
.site-header nav a:hover{color:var(--chalk)}
.site-header .enquire{background:var(--fire);color:var(--ink);padding:.55rem .9rem;font-weight:700}
.legal-main{width:min(880px,calc(100% - 2.5rem));margin:0 auto;padding:clamp(3rem,8vw,6rem) 0}
.legal-hero{border-left:3px solid var(--fire);padding-left:clamp(1rem,3vw,2rem);margin-bottom:3rem}
.eyebrow{margin:0 0 .65rem;color:var(--fire);font-size:.68rem;letter-spacing:.2em;text-transform:uppercase}
h1,h2,h3{font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;line-height:1;letter-spacing:-.02em}
h1{font-size:clamp(2.8rem,8vw,5.3rem);margin:.15rem 0 .7rem}
h2{font-size:clamp(1.55rem,4vw,2.25rem);margin:2.8rem 0 .8rem;color:var(--chalk)}
h3{font-size:1.1rem;margin:1.7rem 0 .45rem}
p,li{color:var(--ash);font-size:.96rem}
p{margin:.7rem 0}
ul{padding-left:1.25rem}
li+li{margin-top:.35rem}
.updated{font-size:.78rem;color:var(--ash)}
.notice{margin:1.5rem 0;padding:1rem 1.15rem;background:var(--plate);border-left:2px solid var(--fire)}
.notice p{margin:0;color:var(--chalk)}
.contact-card{margin-top:2.5rem;padding:1.4rem;background:var(--char);border:1px solid var(--wire)}
.contact-card a,.legal-main a{color:var(--chalk);text-underline-offset:3px}
.site-footer{border-top:1px solid var(--wire);padding:2rem clamp(1.25rem,5vw,3rem);display:flex;align-items:flex-start;justify-content:space-between;gap:2rem;flex-wrap:wrap}
.site-footer img{height:26px;width:auto;margin-bottom:.65rem}
.site-footer p{margin:.2rem 0;font-size:.78rem}
.footer-links{display:flex;gap:1rem;flex-wrap:wrap}
.footer-links a{font-size:.75rem;color:var(--ash);text-underline-offset:3px}
.error-code{font-family:'Barlow Condensed',sans-serif;color:var(--fire);font-weight:900;font-size:clamp(5rem,22vw,12rem);line-height:.8;margin:0 0 1rem}
.action-row{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.8rem}
.button{display:inline-block;padding:.75rem 1rem;text-decoration:none;text-transform:uppercase;letter-spacing:.1em;font-size:.75rem;font-weight:700;border:1px solid var(--wire)}
.legal-main .button-primary{background:var(--fire);border-color:var(--fire);color:var(--ink)}
.button-secondary{color:var(--chalk)}

@media(max-width:640px){
  .site-header nav a:not(.enquire){display:none}
  .legal-main{width:min(100% - 2rem,880px)}
  .site-footer{display:block}
  .footer-links{margin-top:1.2rem}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition-duration:.01ms!important}
}
