:root{--bg:#1f3330;--bg2:#264240;--text:#fff;--muted:#d5e2df;--accent:#3ddc97;--yellow:#f7d154;--max:1100px}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font-family:Lato,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;font-size:1.0625rem;line-height:1.65}
img{max-width:100%;height:auto;display:block}
a{color:var(--accent)}a:hover{color:var(--yellow)}
:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}
h1,h2,h3{line-height:1.2;margin:0 0 .6em}
h2,h3{color:var(--accent)}
h1{font-size:clamp(1.9rem,5.5vw,3.2rem);font-weight:900}
h2{font-size:clamp(1.5rem,3.5vw,2.1rem);font-weight:900}
h3{font-size:1.2rem;font-weight:700}
p{margin:0 0 1em}
.wrap{max-width:var(--max);margin:0 auto;padding:0 1.25rem}
.skip{position:absolute;left:-999px;top:0;background:var(--yellow);color:#111;padding:.5rem 1rem;z-index:10}.skip:focus{left:0}
.site-header{border-bottom:1px solid rgba(255,255,255,.1)}
.site-header .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;padding-top:.75rem;padding-bottom:.75rem}
.brand img{width:58px;height:auto}
.nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.25rem 1.25rem}
.nav a{color:var(--text);text-decoration:none;font-weight:700;padding:.4rem 0;border-bottom:3px solid transparent;font-size:.95rem}
.nav a:hover{color:var(--accent)}.nav a[aria-current=page]{border-color:var(--accent)}
.btn{display:inline-block;background:var(--yellow);color:#14201e;font-weight:900;text-decoration:none;padding:.85rem 1.5rem;border-radius:6px;transition:transform .15s,background .15s}
.btn:hover{background:#ffe07a;color:#14201e;transform:translateY(-1px)}
.hero{position:relative;min-height:78vh;display:flex;align-items:center;overflow:hidden}
.hero picture,.hero picture img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:72% center}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,20,18,.85),rgba(10,20,18,.55))}
.hero .wrap{position:relative;z-index:1;padding-top:4rem;padding-bottom:4rem}
.hero h1{max-width:20ch;color:#fff}
.hero p{max-width:60ch;font-size:1.15rem;color:#eef5f3}
.creds{background:var(--bg2);border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}
.creds ul{list-style:none;margin:0;padding:1.1rem 0;display:flex;flex-wrap:wrap;gap:.6rem 2rem;justify-content:center;font-weight:700;font-size:.95rem}
.creds li{text-align:center}
.creds li::before{content:"✔";color:var(--accent);margin-right:.5rem}
section{padding:3.5rem 0}
.lead{font-size:1.2rem;max-width:70ch}
.cards{display:grid;gap:1.25rem;grid-template-columns:1fr}
.card{background:var(--bg2);border-radius:10px;padding:1.5rem;border-top:4px solid var(--accent)}
.card p{margin:0;color:var(--muted)}
.cta{background:var(--bg2);text-align:center;border-radius:12px;padding:2.5rem 1.5rem}
.cta p{max-width:55ch;margin:0 auto 1.5rem}
.split{display:grid;gap:2rem;grid-template-columns:1fr;align-items:start}
.split>*{min-width:0}
.portrait{border-radius:12px;width:100%;max-width:420px}
.callout{background:rgba(247,209,84,.1);border-left:5px solid var(--yellow);border-radius:8px;padding:1.25rem 1.5rem;margin:1.5rem 0}
.callout strong{color:var(--yellow)}
.figure a{display:block;border-radius:12px;overflow:hidden}
.figure figcaption{font-size:.9rem;color:var(--muted);margin-top:.5rem}
ul.quals{padding-left:1.25rem}ul.quals li{margin-bottom:.4rem}
.pubs{list-style:none;padding:0;margin:0;display:grid;gap:1rem}
.pubs li{background:var(--bg2);border-radius:10px;padding:1.1rem 1.25rem}
.pubs .venue{display:block;color:var(--accent);font-weight:700;font-size:.9rem;text-transform:uppercase;letter-spacing:.04em}
.pubs .title{display:block;font-weight:700;margin:.2rem 0}
.pubs a{word-break:break-all}
.pubs li.featured{background:rgba(247,209,84,.1);border:2px solid var(--yellow)}
.pubs li.featured .venue{color:var(--yellow)}
.badge{display:inline-block;background:var(--yellow);color:#14201e;font-weight:900;font-size:.8rem;padding:.2rem .6rem;border-radius:999px;margin-top:.4rem}
.site-footer{border-top:1px solid rgba(255,255,255,.1);padding:1.5rem 0;font-size:.9rem;color:var(--muted);text-align:center}
.site-footer a{color:var(--muted)}
/* Shared colour treatment (from International page) */
.card h3{font-size:1.15rem;padding-bottom:.6rem;border-bottom:2px solid rgba(61,220,151,.25)}.cards .card:nth-child(even){border-top-color:var(--yellow)}.cards .card:nth-child(even) h3{color:var(--yellow)}.band.alt .card{background:var(--bg)}
.band{padding:4rem 0}.band.alt{background:var(--bg2)}.band.tint{background:linear-gradient(135deg,rgba(61,220,151,.16),rgba(247,209,84,.10)),var(--bg)}
.heroband{background:radial-gradient(circle at 80% 30%,rgba(61,220,151,.35),transparent 55%),linear-gradient(135deg,#1f3330 0%,#264240 60%,#2b4d47 100%);padding:4rem 0;border-bottom:4px solid var(--accent)}
.heroband .wrap{display:grid;gap:2rem;align-items:center}@media(min-width:900px){.heroband .wrap{grid-template-columns:1.3fr 1fr}}
.eyebrow{color:var(--yellow);font-weight:900;letter-spacing:.12em;text-transform:uppercase;font-size:.85rem}

.heroband h1 span{color:var(--accent)}
.cred{list-style:none;padding:0;display:grid;gap:.75rem}.cred li{padding:.9rem 1rem .9rem 3rem;background:rgba(0,0,0,.18);border-radius:8px;position:relative}.cred li::before{content:"\2605";position:absolute;left:1rem;color:var(--yellow)}
.yellowband{background:var(--yellow);color:#14201e;text-align:center;padding:3.5rem 0}.yellowband h2{color:#14201e}.yellowband a:not(.btn){color:#14201e;font-weight:900}.yellowband .btn{background:#1f3330;color:#fff}
.band.alt .pubs li{background:var(--bg)}.band.alt .callout{background:rgba(247,209,84,.12)}
.heroband.photo{padding:0;border-bottom:4px solid var(--accent)}
.hero::before{content:"";position:absolute;inset:0;z-index:1;background:radial-gradient(circle at 80% 30%,rgba(61,220,151,.28),transparent 55%);pointer-events:none}
.hero{border-bottom:4px solid var(--accent)}
.creds{background:linear-gradient(90deg,var(--bg2),#2b4d47,var(--bg2))}
.creds li:nth-child(even)::before{color:var(--yellow)}
.heroband .portrait{box-shadow:0 0 0 4px rgba(61,220,151,.35),0 20px 50px rgba(0,0,0,.35)}
.heroband .callout{background:rgba(0,0,0,.18)}
.figure a{box-shadow:0 0 0 4px rgba(247,209,84,.35)}
.yellowband p{max-width:55ch;margin:0 auto 1.5rem}
@media(min-width:900px){.heroband .wrap.split{grid-template-columns:2fr 1fr}}
@media (min-width:640px){.cards{grid-template-columns:1fr 1fr}.brand img{width:68px}}
@media (min-width:900px){.cards{grid-template-columns:repeat(4,1fr)}.split{grid-template-columns:2fr 1fr}.split.rev{grid-template-columns:1fr 1.4fr}}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
