/* GOV.UK-inspired visual language (colours, type scale, focus, spacing). No crown, no GOV.UK wordmark, no GDS Transport font. */
:root{--text:#0b0c0c;--sec:#505a5f;--link:#1d70b8;--link-h:#003078;--link-v:#4c2c92;--border:#b1b4b6;--bg2:#f3f2f1;--focus:#ffdd00;--green:#00703c;--green-d:#002d18;--red:#d4351c;--blue:#1d70b8;--amber:#b35c00}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;background:var(--bg2)}
body{margin:0;background:#fff;color:var(--text);font:400 19px/1.32 Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
.wrap{max-width:960px;margin:0 auto;padding:0 15px}
@media(min-width:641px){.wrap{padding:0 30px}}
@media(max-width:640px){body{font-size:16px;line-height:1.25}}
a{color:var(--link);text-decoration:underline;text-underline-offset:.1em}a:visited{color:var(--link-v)}a:hover{color:var(--link-h);text-decoration-thickness:3px}
a:focus,summary:focus,button:focus,input:focus,.tw:focus{outline:3px solid transparent;color:var(--text);background-color:var(--focus);box-shadow:0 -2px var(--focus),0 4px var(--text);text-decoration:none}
.skip{position:absolute;left:-999px;background:var(--focus);padding:10px;color:var(--text)}.skip:focus{left:0;top:0;z-index:99}
/* header */
header.site{background:var(--text);border-bottom:10px solid var(--blue)}
header.site .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:6px 28px;padding-top:12px;padding-bottom:10px}
.logo{display:inline-flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-size:1.55rem;line-height:1}
.logo:visited,.logo:hover{color:#fff}.logo:hover{text-decoration:underline}.logo .word b{font-weight:700}.logo .word{font-weight:400;letter-spacing:-.01em}
.logo:focus{color:var(--text)}.logo:focus .mark *{stroke:#0b0c0c}
nav{display:flex;flex-wrap:wrap;gap:4px 20px;font-size:1rem}
header.site nav a{color:#fff;text-decoration:none;font-weight:700;padding:6px 0;border-bottom:4px solid transparent}
header.site nav a:visited{color:#fff}header.site nav a:hover{text-decoration:underline}header.site nav a[aria-current=page]{border-bottom-color:#fff}
header.site nav a:focus{color:var(--text)}
.phase{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;border-bottom:1px solid var(--border);padding-top:8px;padding-bottom:8px;font-size:.84rem;color:var(--text)}
.tag{display:inline-block;background:#d2e2f1;color:#003078;font-weight:700;text-transform:uppercase;letter-spacing:1px;font-size:.7rem;padding:3px 8px 2px}
/* typography */
main.wrap{padding-bottom:30px;overflow-wrap:anywhere}
main.wrap>*{max-width:720px}
.crumbs{font-size:.84rem;color:var(--sec);margin:16px 0 0}.crumbs a{color:var(--text)}
h1{font-size:2.5rem;line-height:1.1;font-weight:700;margin:18px 0 20px;letter-spacing:-.01em}
.lead{font-size:1.3rem;line-height:1.3;color:var(--text);margin:0 0 24px}
h2{font-size:1.9rem;line-height:1.15;font-weight:700;margin:2em 0 .6em}
h3{font-size:1.3rem;line-height:1.25;font-weight:700;margin:1.6em 0 .5em}
@media(max-width:640px){h1{font-size:2rem}.lead{font-size:1.15rem}h2{font-size:1.5rem}h3{font-size:1.15rem}}
p{margin:0 0 1.2em}ul,ol{padding-left:1.3em;margin:0 0 1.2em}li{margin:.35em 0}
strong,b{font-weight:700}
.prose h2{border-top:2px solid var(--blue);padding-top:.7em;scroll-margin-top:12px}.prose h3{scroll-margin-top:12px}
.prose p,.prose li{hyphens:auto}
/* tool */
.tool{border-left:10px solid var(--blue);background:var(--bg2);padding:20px;margin:0 0 30px}
.tool form{display:flex;gap:10px;flex-wrap:wrap}
.reg{flex:1 1 220px;min-width:0;font:700 1.9rem/1 Arial,Helvetica,sans-serif;text-transform:uppercase;text-align:center;letter-spacing:.06em;padding:12px;border:2px solid var(--text);border-radius:0;background:#ffdd00;color:var(--text)}
.reg::placeholder{color:#6b5d00}.reg:focus{box-shadow:inset 0 0 0 2px var(--text);outline:3px solid var(--focus)}
button.go{font:400 1.1875rem/1 Arial,Helvetica,sans-serif;padding:12px 20px 10px;border:2px solid transparent;border-radius:0;background:var(--green);color:#fff;cursor:pointer;min-height:48px;box-shadow:0 2px 0 var(--green-d)}
button.go:hover{background:#005a30}button.go:focus{background:var(--focus);color:var(--text);box-shadow:0 2px 0 var(--text)}button.go[disabled]{opacity:.5;cursor:wait}
.note{font-size:.84rem;color:var(--sec);margin:10px 0 0}
#result{margin-top:14px}#result:empty{display:none}
.card{background:#fff;border:1px solid var(--border);border-left:5px solid var(--blue);padding:14px 16px;margin-top:12px}
.badge{display:inline-block;padding:3px 9px 2px;font-weight:700;font-size:.8rem;color:#fff;text-transform:uppercase;letter-spacing:1px}
.badge.ok{background:var(--green)}.badge.bad{background:var(--red)}.badge.warn{background:var(--amber)}
.card dl{display:grid;grid-template-columns:auto 1fr;gap:6px 18px;margin:12px 0 0}.card dt{color:var(--sec)}.card dd{margin:0;font-weight:700}
.err{color:var(--red);font-weight:700;border-left:5px solid var(--red);padding-left:12px}
.test{border-top:1px solid var(--border);padding:10px 0}.test:first-child{border-top:0}.test ul{margin:.3em 0;font-size:.9rem;color:var(--sec)}
/* components */
.answer{border-left:10px solid var(--border);padding:15px;margin:0 0 30px}
.answer strong{display:block;font-size:.84rem;text-transform:uppercase;letter-spacing:1px;color:var(--sec)}.answer p{margin:.4em 0 0;font-size:1.1rem}
.keypoints{border-top:5px solid var(--blue);background:var(--bg2);padding:5px 20px 10px;margin:0 0 30px}
.keypoints h2{font-size:1.3rem;margin:.8em 0 .4em;border:0;padding:0}
.toc{margin:0 0 30px}.toc summary{cursor:pointer;color:var(--link);text-decoration:underline;font-weight:700}
.toc ol{columns:2;column-gap:30px;font-size:.95rem;margin:12px 0 0;padding-left:1.4em;border-left:5px solid var(--border);padding-top:10px;padding-bottom:6px}.toc li{break-inside:avoid;margin:.3em 0}
@media(max-width:640px){.toc ol{columns:1}}
details{border-bottom:1px solid var(--border)}.faq details{padding:12px 0}
summary{cursor:pointer;color:var(--link);text-decoration:underline;font-weight:400;padding-right:6px}summary:hover{color:var(--link-h)}
details[open]>summary{font-weight:700}details p{margin:.7em 0 0;padding:6px 0 6px 15px;border-left:5px solid var(--border)}
.tw{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 0 24px}
table{border-collapse:collapse;width:100%;font-size:.95rem}.tw table{min-width:520px}
th,td{padding:10px 20px 10px 0;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}th{font-weight:700}
figure.info{margin:1.8em 0;padding:0;max-width:720px}
figure.info img{display:block;width:100%;height:auto;border:1px solid var(--border);background:var(--bg2)}
figure.info figcaption{font-size:.84rem;color:var(--sec);margin-top:8px}
.sources li{margin:.5em 0;font-size:.95rem}
.related{border-top:5px solid var(--blue);padding-top:5px;margin-top:40px}.related h2{font-size:1.3rem;margin:.6em 0 .4em;border:0;padding:0}
.meta{font-size:.84rem;color:var(--sec);margin-top:30px;border-top:1px solid var(--border);padding-top:14px}
code{font-size:.92em;background:var(--bg2);padding:1px 5px}
blockquote{margin:0 0 1.2em;padding:.3em 0 .3em 15px;border-left:10px solid var(--border)}
/* footer */
footer.site{background:var(--bg2);border-top:1px solid var(--blue);margin-top:0;padding:30px 0 40px;font-size:.95rem;color:var(--text)}
footer.site nav{margin:14px 0 0;gap:6px 22px}footer.site nav a{font-weight:400}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
@media print{header.site,footer.site,.tool,.toc,.related,.phase{display:none}body{font-size:12pt}figure.info{break-inside:avoid}a{color:inherit}}

/* ================= v2 – professional long-form theme (GOV.UK palette) ================= */
main.wrap{padding-bottom:0}
main>*{max-width:none}
.pagebody{padding-bottom:40px;max-width:760px}
/* hero */
.hero{background:#003078;color:#fff;padding:6px 0 34px;border-bottom:5px solid var(--focus)}
.hero .crumbs{color:#dde4ee;margin:14px 0 4px}.hero .crumbs a{color:#fff}
.hero h1{color:#fff;font-size:2.7rem;max-width:860px;margin:10px 0 14px}
.hero .lead{color:#fff;max-width:760px;margin-bottom:22px}
.hero a:not(.btn){color:#fff}
.hero .tool{background:#fff;color:var(--text);border-left:10px solid var(--focus);max-width:760px;margin:0}
.hero .tool a{color:var(--link)}
.cta{display:flex;flex-wrap:wrap;gap:12px;margin:0}
.btn{display:inline-block;font-weight:700;text-decoration:none;padding:13px 22px 11px;background:var(--green);color:#fff;box-shadow:0 2px 0 var(--green-d);font-size:1.05rem}
.btn:visited{color:#fff}.btn:hover{background:#005a30;color:#fff}.btn.alt{background:#f3f2f1;color:var(--text);box-shadow:0 2px 0 #929191}.btn.alt:visited{color:var(--text)}.btn.alt:hover{background:#dbdad9;color:var(--text)}
.btn:focus{background:var(--focus);color:var(--text);box-shadow:0 2px 0 var(--text)}
@media(max-width:640px){.hero h1{font-size:2rem}.btn{width:100%;text-align:center}}
/* two-column layout with sticky contents */
.layout{display:block;padding-top:8px;padding-bottom:30px}
.side{display:none}
.content{min-width:0;max-width:760px}
.content>*{max-width:none}
@media(min-width:1000px){
  .wrap.layout{max-width:1160px;display:grid;grid-template-columns:270px minmax(0,1fr);gap:48px;align-items:start}
  .side{display:block;position:sticky;top:14px;max-height:calc(100vh - 28px);padding-top:26px}
  .toc{display:none}
}
.sidetoc{border-top:5px solid var(--blue);background:var(--bg2);padding:4px 0 8px}
.sidetitle{font-weight:700;margin:10px 16px 8px;font-size:1rem}
.sidetoc ol{list-style:none;margin:0;padding:0 6px 0 0;max-height:calc(100vh - 120px);overflow-y:auto;position:relative;font-size:.86rem;line-height:1.25}
.sidetoc li{margin:0}
.sidetoc a{display:block;padding:7px 10px 7px 16px;color:var(--text);text-decoration:none;border-left:4px solid transparent}
.sidetoc a:hover{background:#e8e7e6;text-decoration:underline}
.sidetoc a.on{border-left-color:var(--blue);background:#fff;font-weight:700;color:var(--link-h)}
/* headings */
.prose h2{border-top:0;border-left:8px solid var(--blue);padding:3px 0 3px 16px;font-size:1.75rem;line-height:1.15;margin:2.4em 0 .8em}
.prose h2#faq,.prose h2#sources{border-left-color:var(--green)}
.prose h3{display:flex;gap:10px;align-items:baseline;color:#003078;font-size:1.25rem;line-height:1.25;margin:1.9em 0 .55em}
.prose h3::before{content:"";flex:0 0 10px;height:10px;background:var(--blue);transform:translateY(-1px)}
.prose h3.step{display:block;background:var(--blue);color:#fff;padding:11px 16px 9px;border-left:8px solid #003078}
.prose h3.step::before{display:none}
@media(max-width:640px){.prose h2{font-size:1.4rem;border-left-width:6px;padding-left:12px}.prose h3{font-size:1.12rem}}
/* reading comfort */
.prose p,.prose li{line-height:1.55}
.prose strong{color:#003078}
/* bullets */
.prose ul{list-style:none;padding-left:0;margin:0 0 1.3em}
.prose ul>li{position:relative;padding-left:28px;margin:.55em 0}
.prose ul>li::before{content:"";position:absolute;left:5px;top:.62em;width:11px;height:11px;border-radius:50%;background:var(--blue)}
.prose ul ul{margin:.4em 0}.prose ul ul>li::before{width:9px;height:9px;background:#fff;border:2px solid var(--blue);top:.6em}
.prose ol{list-style:none;counter-reset:n;padding-left:0;margin:0 0 1.4em}
.prose ol>li{counter-increment:n;position:relative;padding-left:46px;margin:1em 0;min-height:32px}
.prose ol>li::before{content:counter(n);position:absolute;left:0;top:.05em;width:32px;height:32px;border-radius:50%;background:var(--blue);color:#fff;font-weight:700;text-align:center;line-height:32px;font-size:1rem}
/* callouts */
.callout{border-left:8px solid var(--blue);background:#e8f1f8;padding:14px 18px 6px;margin:1.6em 0}
.callout p{margin:0 0 .8em}
.callout .ctitle{font-weight:700;text-transform:uppercase;letter-spacing:1px;font-size:.78rem;color:#003078;margin:0 0 6px}
.callout.tip{border-color:var(--green);background:#e5f1ea}.callout.tip .ctitle{color:#00703c}
.callout.warning{border-color:var(--red);background:#fbe9e6}.callout.warning .ctitle{color:#a82a15}
.callout.important{border-color:var(--focus);background:#fff7bf}.callout.important .ctitle{color:#0b0c0c}
.callout.example{border-color:#505a5f;background:#f3f2f1}.callout.example .ctitle{color:#505a5f}
/* tables */
.prose .tw{border:1px solid var(--border);margin:1.6em 0}
.prose table{font-size:.93rem}
.prose th{background:#003078;color:#fff;padding:11px 14px}
.prose td{padding:10px 14px}.prose tbody tr:nth-child(even) td{background:#f8f8f8}
/* faq accordion cards */
.faq details{border:1px solid var(--border);margin:0 0 8px;padding:0;background:#fff}
.faq summary{display:block;padding:14px 46px 14px 16px;position:relative;list-style:none;font-weight:700;text-decoration:none;color:var(--text)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:1.6rem;font-weight:400;color:var(--blue)}
.faq details[open] summary::after{content:"\2212"}.faq details[open]>summary{background:var(--bg2)}
.faq summary:hover{background:#f8f8f8;color:var(--link-h)}
.faq details p{margin:0;border:0;padding:12px 16px 16px}
/* key points ticks */
.keypoints ul{list-style:none;padding:0}.keypoints li{position:relative;padding-left:30px;margin:.5em 0}
.keypoints li::before{content:"";position:absolute;left:8px;top:.3em;width:7px;height:13px;border:solid var(--green);border-width:0 3px 3px 0;transform:rotate(45deg)}
.answer{background:#fff;border-left-color:var(--blue)}
/* related cards */
.related{border-top:0}
.cards{list-style:none;padding:0;margin:0;display:grid;gap:14px;grid-template-columns:1fr}
@media(min-width:700px){.cards{grid-template-columns:1fr 1fr}}
.cards li{margin:0}.cards a{display:block;height:100%;border:1px solid var(--border);border-top:5px solid var(--blue);padding:14px 16px 16px;text-decoration:none;color:var(--text)}
.cards a:hover{background:var(--bg2)}.cards strong{display:block;color:var(--link);text-decoration:underline;margin-bottom:6px;font-size:1.08rem}.cards span{display:block;font-size:.92rem;color:var(--sec)}
/* footer columns */
footer.site{padding:36px 0 44px}
.fgrid{display:grid;gap:26px;grid-template-columns:1fr}
@media(min-width:700px){.fgrid{grid-template-columns:repeat(3,1fr)}}
footer.site h2{font-size:1.2rem;margin:0 0 12px;padding:0 0 10px;border-bottom:1px solid var(--border)}
footer.site ul{list-style:none;padding:0;margin:0}footer.site li{margin:.5em 0}
footer.site nav{display:block;margin:0}
.fnote{margin:30px 0 0;padding-top:18px;border-top:1px solid var(--border);color:var(--sec);font-size:.9rem;max-width:760px}
/* align header, banner, hero, content and footer on one container width */
.wrap{max-width:1160px}
.pagebody{max-width:1160px}.pagebody>*{max-width:760px}

/* ===== v3: paired cards, pill buttons, rounded italic Pro Tip ===== */
.callout{border-radius:4px 14px 14px 4px}
.callout.tip p:not(.ctitle){font-style:italic}
.cardpair{display:grid;gap:18px;grid-template-columns:1fr;margin:1.8em 0}
@media(min-width:700px){.cardpair.c2{grid-template-columns:1fr 1fr}.cardpair.c3{grid-template-columns:repeat(3,1fr)}}
.pc{border:2px solid var(--text);border-radius:8px;background:#fff;overflow:hidden}
.pct{margin:0;padding:11px 14px;font-weight:700;text-align:center;font-size:1.1rem;line-height:1.2;color:#fff;background:var(--blue)}
.pc.do .pct{background:var(--green)}.pc.avoid .pct{background:var(--red)}
.pc.note .pct,.pc.info .pct{background:var(--blue)}
.pc.check .pct,.pc.warning .pct{background:var(--focus);color:var(--text)}
.pcb{padding:14px 16px 4px}.pcb p{margin:0 0 .9em;line-height:1.5}.pcb ul,.pcb ol{margin:0 0 .9em}
.btnrow{margin:1.4em 0}
.pill{display:inline-block;border-radius:999px;background:var(--blue);color:#fff;font-weight:700;padding:11px 24px 10px;text-decoration:none;box-shadow:0 2px 0 #003078;line-height:1.2}
.pill::after{content:" \2192"}
.pill:visited{color:#fff}.pill:hover{background:#003078;color:#fff}.pill:focus{background:var(--focus);color:var(--text);box-shadow:0 2px 0 var(--text)}
@media(max-width:640px){.pill{display:block;text-align:center}}

/* mobile/tablet contents: sits right after Key Points, closed by default */
details.toc{border:1px solid var(--border);border-left:8px solid var(--blue);background:var(--bg2);padding:0;margin:0 0 30px}
details.toc>summary{display:block;list-style:none;padding:14px 48px 14px 16px;position:relative;text-decoration:none;color:var(--text);font-weight:700;cursor:pointer}
details.toc>summary::-webkit-details-marker{display:none}
details.toc>summary::after{content:"+";position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:1.7rem;font-weight:400;color:var(--blue)}
details.toc[open]>summary::after{content:"\2212"}
details.toc[open]>summary{border-bottom:1px solid var(--border);background:#fff}
details.toc ol{margin:0;border:0;padding:12px 16px 14px 38px;columns:1;background:#fff;max-height:60vh;overflow-y:auto}
@media(min-width:700px){details.toc ol{columns:2}}
details.toc ol{max-height:none;overflow:visible;columns:auto}
@media(min-width:700px){details.toc ol{columns:2;column-gap:30px}}

/* "This Guide Answers" summary */
.covers{border:1px solid var(--border);border-top:5px solid var(--green);padding:6px 20px 12px;margin:0 0 30px;background:#fff}
.covers h2{font-size:1.3rem;margin:.8em 0 .5em;border:0;padding:0}
.covers ul{list-style:none;margin:0;padding:0;columns:1}
@media(min-width:700px){.covers ul{columns:2;column-gap:28px}}
.covers li{break-inside:avoid;position:relative;padding:5px 0 5px 22px;margin:0;line-height:1.3;font-size:.97rem}
.covers li::before{content:"";position:absolute;left:2px;top:.8em;width:8px;height:8px;border-top:3px solid var(--green);border-right:3px solid var(--green);transform:rotate(45deg)}

/* logo image in the header, on a white tile so it reads on the black bar */
.logo .mark{width:52px;height:52px;background:#fff;border-radius:6px;padding:3px;display:block;flex:0 0 52px;object-fit:contain}
.logo:focus .mark{background:#fff}
@media(max-width:640px){.logo{font-size:1.3rem}.logo .mark{width:44px;height:44px;flex-basis:44px}}

/* ===== v4: bright header – white bar, colour stripe, pill nav, green CTA ===== */
header.site{background:#fff;border-bottom:0}
header.site::after{content:"";display:block;height:8px;background:linear-gradient(90deg,#003078 0%,#1d70b8 28%,#28a197 55%,#00703c 78%,#ffdd00 100%)}
header.site .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px;padding-top:10px;padding-bottom:10px}
.logo,.logo:visited{color:#003078}
.logo:hover{color:#003078;text-decoration:none}
.logo .word{font-size:1.65rem;color:#1d70b8;letter-spacing:-.01em}
.logo .word b{color:#003078;font-weight:700}
.logo .mark{width:60px;height:60px;flex:0 0 60px;background:none;border-radius:0;padding:0}
.logo:focus{background:var(--focus);box-shadow:0 0 0 4px var(--focus),0 6px 0 4px var(--text);color:var(--text)}
.logo:focus .word,.logo:focus .word b{color:var(--text)}
header.site nav{gap:6px}
header.site nav a,header.site nav a:visited{color:#0b0c0c;border:0;border-radius:999px;padding:9px 16px;font-weight:700;text-decoration:none;line-height:1.1}
header.site nav a:hover{background:#d2e2f1;color:#003078;text-decoration:none}
header.site nav a[aria-current=page]{background:#1d70b8;color:#fff}
header.site nav a:focus{background:var(--focus);color:var(--text);box-shadow:0 0 0 3px var(--text)}
.hcta,.hcta:visited{display:none;margin-left:auto;background:var(--green);color:#fff;font-weight:700;text-decoration:none;padding:11px 20px 10px;border-radius:999px;box-shadow:0 2px 0 var(--green-d);line-height:1.1}
.hcta:hover{background:#005a30;color:#fff}.hcta:focus{background:var(--focus);color:var(--text);box-shadow:0 0 0 3px var(--text)}
@media(min-width:900px){.hcta{display:inline-block}}
@media(max-width:640px){
  header.site .wrap{gap:4px 10px;padding-top:8px;padding-bottom:6px}
  .logo .mark{width:46px;height:46px;flex-basis:46px}
  .logo .word{font-size:1.35rem}
  header.site nav{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;width:100%;padding-bottom:4px;scrollbar-width:none}
  header.site nav::-webkit-scrollbar{display:none}
  header.site nav a{white-space:nowrap;padding:8px 13px;background:#f3f2f1}
  header.site nav a[aria-current=page]{background:#1d70b8}
}
@media(max-width:640px){header.site nav{gap:4px;justify-content:space-between}header.site nav a{padding:8px 10px;font-size:.92rem}}
@media(max-width:350px){header.site nav a{padding:8px 8px;font-size:.86rem}}
@media(max-width:380px){header.site nav{gap:2px}header.site nav a{padding:8px 7px;font-size:.88rem}}
@media(max-width:340px){header.site nav a{padding:8px 5px;font-size:.82rem}}

/* ===== v5: sticky header (desktop), pro footer, legal pages, cookie banner ===== */
@media(min-width:900px){
  header.site{position:sticky;top:0;z-index:50;box-shadow:0 2px 10px rgba(11,12,12,.12)}
  .side{top:100px;max-height:calc(100vh - 116px)}
  .prose h2,.prose h3{scroll-margin-top:104px}
  html{scroll-padding-top:100px}
}

footer.site{background:#0b0c0c;color:#e8eaec;border-top:0;padding:0;margin-top:40px;position:relative}
footer.site .fstripe{height:8px;background:linear-gradient(90deg,#003078 0%,#1d70b8 28%,#28a197 55%,#00703c 78%,#ffdd00 100%)}
footer.site .wrap{padding-top:42px;padding-bottom:26px}
footer.site a{color:#fff;text-decoration:none;font-weight:400}
footer.site a:hover{color:#ffdd00;text-decoration:underline}
footer.site a:focus,footer.site .linkbtn:focus{background:#ffdd00;color:#0b0c0c;outline:3px solid #ffdd00;text-decoration:none}
footer.site .fgrid{display:grid;gap:30px;grid-template-columns:1fr}
@media(min-width:700px){footer.site .fgrid{grid-template-columns:1fr 1fr}}
@media(min-width:1000px){footer.site .fgrid{grid-template-columns:1.5fr 1fr 1.2fr 1fr;gap:36px}}
footer.site h2{color:#fff;font-size:1.05rem;text-transform:uppercase;letter-spacing:.06em;margin:0 0 14px;padding:0 0 12px;border-bottom:3px solid #1d70b8}
footer.site li{margin:.55em 0}
footer.site .flogo{display:inline-flex;align-items:center;gap:12px;font-size:1.5rem;font-weight:700;color:#fff}
footer.site .flogo .mark{background:#fff;border-radius:12px;padding:4px;width:52px;height:52px}
footer.site .flogo b{color:#7fb6e8}
footer.site .fbrand p{color:#c9ced3;margin:14px 0 0;max-width:340px;line-height:1.5}
footer.site .fcta{display:inline-block;background:#00703c;color:#fff;font-weight:700;border-radius:999px;padding:11px 22px 10px;box-shadow:0 2px 0 #004d29}
footer.site .fcta:hover{background:#005a30;color:#fff;text-decoration:none}
footer.site .linkbtn{background:none;border:0;padding:0;margin:0;color:#fff;font:inherit;cursor:pointer;text-align:left}
footer.site .linkbtn:hover{color:#ffdd00;text-decoration:underline}
footer.site .fofficial{margin-top:34px;padding:18px 0 0;border-top:1px solid #3a3d40}
footer.site .fofficial p{margin:0 0 10px;color:#c9ced3}
footer.site .fofficial ul{display:flex;flex-wrap:wrap;gap:10px}
footer.site .fofficial li{margin:0}
footer.site .fofficial a{display:inline-block;border:1px solid #5b6064;border-radius:999px;padding:7px 15px;font-size:.92rem}
footer.site .fofficial a:hover{border-color:#ffdd00}
footer.site .fofficial a::after{content:" \2197";color:#7fb6e8}
footer.site .fbottom{margin-top:28px;padding-top:20px;border-top:1px solid #3a3d40;display:grid;gap:10px;color:#aeb4b9;font-size:.9rem}
footer.site .fbottom p{margin:0}
footer.site .fnote{margin:0;padding:0;border:0;color:#aeb4b9;max-width:880px}
footer.site .fnote strong{color:#fff}
@media(min-width:900px){footer.site .fbottom{grid-template-columns:auto 1fr auto;align-items:start;gap:26px}}

/* legal pages */
.legalhero{padding-bottom:26px}
.pagebody.legal{padding-top:32px;padding-bottom:46px}
.pagebody.legal>*{max-width:860px}
.pagebody.legal .stamp{display:inline-block;background:#f3f2f1;border-left:5px solid #1d70b8;padding:8px 14px;margin:0 0 1.4em;font-size:.95rem}
.pagebody.legal h2{margin-top:1.6em}
.pagebody.legal .cards{margin:1.4em 0}
button.pill{border:0;cursor:pointer;font:inherit;font-weight:700}

/* cookie banner */
.ck{position:fixed;left:0;right:0;bottom:0;z-index:100;background:#fff;border-top:6px solid #1d70b8;box-shadow:0 -6px 24px rgba(11,12,12,.22);max-height:90vh;overflow-y:auto}
.ck-in{max-width:1160px;margin:0 auto;padding:18px 16px 16px}
.ck h2{margin:0 0 6px;font-size:1.25rem;border:0;padding:0}
.ck p{margin:0 0 12px;font-size:.98rem;line-height:1.5}
.ck-actions{display:flex;flex-wrap:wrap;gap:10px}
.ck-btn{font:inherit;font-weight:700;border-radius:999px;padding:11px 22px 10px;border:2px solid #1d70b8;background:#fff;color:#003078;cursor:pointer;line-height:1.2}
.ck-accept,.ck-save{background:#1d70b8;color:#fff;box-shadow:0 2px 0 #003078}
.ck-reject{background:#1d70b8;color:#fff;box-shadow:0 2px 0 #003078}
.ck-btn:hover{background:#003078;border-color:#003078;color:#fff}
.ck-btn:focus{background:#ffdd00;color:#0b0c0c;border-color:#0b0c0c;outline:3px solid #0b0c0c}
.ck-more{margin:0 0 14px;border:1px solid #b1b4b6;border-radius:8px;padding:6px 14px 14px;background:#f3f2f1}
.ck-more[hidden]{display:none}
.ck-row{display:flex;gap:12px;align-items:flex-start;padding:10px 0;border-bottom:1px solid #d6d7d8;cursor:pointer}
.ck-row input{width:22px;height:22px;margin:2px 0 0;flex:none;accent-color:#1d70b8}
.ck-row small{display:block;color:#505a5f;font-size:.88rem}
.ck-save{margin-top:12px}
@media(max-width:640px){.ck-actions .ck-btn{flex:1 1 100%;text-align:center}.ck-in{padding:14px 14px 14px}.ck h2{font-size:1.1rem}}
@media print{.ck{display:none}}
.pagebody.legal ul.cards{list-style:none;padding:0}.pagebody.legal ul.cards li{list-style:none;padding:0}.pagebody.legal ul.cards li::before,.pagebody.legal ul.cards li::marker{content:none;display:none}
