*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#17324d;background:#f7f9fb;line-height:1.55}.site-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:2rem;padding:1rem max(1rem,calc((100% - 1120px)/2));background:#fff;border-bottom:1px solid #dce4ea}.brand{font-weight:800;color:#0b4f78;text-decoration:none;font-size:1.2rem}.site-header nav{display:flex;gap:1rem;margin-left:auto}.site-header nav a{color:#17324d;text-decoration:none}.nav-toggle{display:none;margin-left:auto;min-width:44px;min-height:44px;padding:0 .75rem}main{max-width:1120px;margin:auto;padding:2rem 1rem 4rem}.hero{padding:5rem 0 4rem;max-width:850px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-weight:700;color:#52738b}.hero h1,.page-head h1{font-size:clamp(2.4rem,7vw,5rem);line-height:1.02;margin:.2em 0}.lead{font-size:1.3rem;max-width:700px}.actions{display:flex;gap:1rem;flex-wrap:wrap;margin-top:2rem}.button{display:inline-block;background:#0b4f78;color:white;padding:.8rem 1.1rem;border-radius:.4rem;text-decoration:none;font-weight:700}.button.secondary{background:#e5eef4;color:#0b4f78}.cards,.directory{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.cards article,.card{background:#fff;border:1px solid #dce4ea;border-radius:.6rem;padding:1.25rem}.card h2,.card h3{margin-top:0}.filters{display:flex;gap:1rem;flex-wrap:wrap;background:#fff;padding:1rem;border:1px solid #dce4ea;border-radius:.6rem;margin:1.5rem 0}.filters label{display:grid;gap:.25rem;font-weight:600}.filters input,.filters select{min-width:220px;padding:.6rem;border:1px solid #b9c7d2;border-radius:.3rem}.tag{display:inline-block;background:#edf3f7;border-radius:999px;padding:.2rem .55rem;margin:.15rem .2rem .15rem 0;font-size:.85rem}.muted{color:#60798d}footer .muted{color:#9eb4c6}#count{color:#526f86}.page-head{margin-bottom:2rem}.card a,.cards a{color:#0b4f78}footer{padding:2rem max(1rem,calc((100% - 1120px)/2));background:#17324d;color:white}.empty{padding:2rem;background:white;border:1px dashed #b9c7d2;border-radius:.6rem}@media(max-width:760px){.nav-toggle{display:inline-flex;align-items:center;justify-content:center}.site-header{flex-wrap:wrap}.site-header nav{display:none;width:100%;flex-direction:column}.site-header nav.open{display:flex}.hero{padding-top:3rem}}

.home a:focus-visible,.home button:focus-visible{outline:3px solid #0b4f78;outline-offset:3px}
.home-hero a:focus-visible{outline-color:#fff}
.home main{max-width:none;margin:0;padding:0}
.home .site-header{padding-top:.6rem;padding-bottom:.6rem}
.home .brand{line-height:0}
.home .brand img{display:block;width:64px;height:64px;object-fit:cover;border-radius:50%;background:#fff}
.home-hero{display:grid;grid-template-columns:minmax(0,.36fr) minmax(0,.64fr);align-items:stretch;background:#17324d}
.home-hero-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(1.05rem,2.2vw,1.8rem);color:#fff}
.home-hero h1{font-size:clamp(1.7rem,2.3vw,2.45rem);line-height:1.08;margin:0}
.home-hero .lead{color:#fff;font-size:1rem;max-width:34rem;margin:.55rem 0 0}
.home-hero .actions{margin-top:.9rem;flex-wrap:nowrap}
.home-hero .button{white-space:nowrap}
.home-hero-media{margin:0;display:flex;flex-direction:column;min-width:0;background:#f7f9fb}
.home-hero-media img{display:block;flex:1 1 auto;width:100%;min-height:0;height:auto;aspect-ratio:2.15/1;object-fit:cover;object-position:center bottom;background:#d7e3ec}
.home-hero-media .photo-credit{margin:0;padding:.4rem .75rem .5rem}
.home-band{background:#fff}
.home-band-alt{background:#f7f9fb}
.home-wrap,.home-split{max-width:1120px;margin:0 auto;padding:2rem 1rem}
.home-split{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:1.25rem 1.75rem;align-items:center}
.home-happen{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start}
.home h2{font-size:clamp(1.45rem,2.4vw,2rem);line-height:1.15;margin:0 0 .45em}
.home-band p{margin:.45em 0}
.home-figure{margin:0}
.home-figure img,.discipline-card img,.pathway-card img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;object-position:center;border-radius:.5rem;background:#e5eef4}
.discipline-grid,.pathway-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.discipline-card,.pathway-card{display:flex;flex-direction:column;background:#fff;border:1px solid #dce4ea;border-radius:.6rem;overflow:hidden;text-decoration:none;color:inherit;height:100%}
.discipline-card img,.pathway-card img{order:-1;border-radius:0}
.discipline-card img[src*="coastal"]{object-position:center 40%}
.discipline-card h3,.pathway-card h2{margin:.85rem 1rem .2rem;font-size:1.15rem;line-height:1.25;color:#0b4f78}
.discipline-card p,.pathway-card p{margin:.3rem 1rem 0}
.discipline-card p:last-child,.pathway-card p:last-child{margin-bottom:.9rem}
.pathway-card .pathway-link{margin-top:auto}
.discipline-card-plain{justify-content:center;background:#17324d;color:#fff;padding-block:1.5rem}
.discipline-card-plain h3{margin-top:0;color:#fff}
.discipline-card-plain p{color:#fff}
.home-events{display:grid;gap:.15rem}
.home-event{padding:.55rem 0;border-bottom:1px solid #dce4ea}
.home-event:last-child{border-bottom:0;padding-bottom:.15rem}
.home-event p{margin:0}
.home-event h3{margin:.05rem 0 .15rem;font-size:1.02rem;line-height:1.3}
.home-event-date,.home-event-meta{font-size:.85rem;color:#526f86}
.home-event .home-event-line{margin-top:.2rem;font-size:.92rem}
.home-happen .home-more{margin:.55rem 0 0}
.text-link{color:#0b4f78;font-weight:700}
.photo-credit{margin:.35rem 0 0;font-size:.8rem;color:#526f86}
.home-connect{background:#fff;border-top:1px solid #dce4ea}
.home-connect-inner{display:flex;align-items:baseline;justify-content:space-between;gap:.4rem 1.5rem;padding-top:1rem;padding-bottom:1rem}
.home-connect h2,.home-connect p{margin:0}
.home-connect p{color:#17324d}
@media(max-width:800px){
.home .brand img{width:56px;height:56px}
.home-hero{display:flex;flex-direction:column}
.home-hero-media{order:-1}
.home-hero-media img{aspect-ratio:1.7/1;object-position:center bottom}
.home-hero-copy{padding:1.35rem 1rem 1.5rem}
.home-hero .actions{flex-wrap:wrap}
.home-split,.discipline-grid,.pathway-grid,.home-connect-inner{grid-template-columns:1fr;display:grid}
.home-connect-inner{justify-content:start}
}

.find-page a:focus-visible,.find-page button:focus-visible,.find-page input:focus-visible,.find-page select:focus-visible{outline:3px solid #0b4f78;outline-offset:3px}
.find-page .site-header{padding-top:.6rem;padding-bottom:.6rem}
.find-page .brand{line-height:0}
.find-page .brand img{display:block;width:64px;height:64px;object-fit:cover;border-radius:50%;background:#fff}
.find-page .page-head{margin-bottom:1.1rem}
.find-page .page-head h1{font-size:clamp(1.8rem,3vw,2.35rem);line-height:1.15;margin:0 0 .35em}
.find-page .page-head p{max-width:44rem;margin:0;font-size:1.05rem}
.find-page .filters{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);gap:.75rem;align-items:end;margin:1rem 0}
.find-page .filters label{min-width:0}
.find-page .filters input,.find-page .filters select{min-width:0;width:100%}
.find-page #count{margin:.25rem 0 1rem}
.find-page .directory{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}
.find-page .org-card{display:flex;flex-direction:column;padding:0;overflow:hidden}
.logo-frame{display:flex;align-items:center;justify-content:center;height:96px;padding:.65rem 1rem;background:#f4f7fa;border-bottom:1px solid #e4ebf0}
.org-logo{display:none;width:168px;height:72px;max-width:100%;object-fit:contain;object-position:center}
.org-logo.is-ready{display:block}
.logo-fallback{display:none;color:#526f86;font-size:.82rem;font-weight:700}
.logo-frame.is-empty .logo-fallback{display:block}
.find-page .org-body{display:flex;flex-direction:column;gap:.4rem;padding:1rem 1.05rem 1.1rem}
.find-page .org-body h2{margin:0;font-size:1.15rem;line-height:1.25;color:#0b4f78}
.find-page .org-body p{margin:0}
.find-page .org-place{color:#526f86;font-size:.9rem}
.find-page .org-tags{line-height:1.7}
@media(max-width:900px){
.find-page .directory{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
.find-page .brand img{width:56px;height:56px}
.find-page .filters{grid-template-columns:1fr}
}
@media(max-width:640px){
.find-page .directory{grid-template-columns:1fr}
}

.events-page a:focus-visible,.events-page button:focus-visible{outline:3px solid #0b4f78;outline-offset:3px}
.events-page .site-header{padding-top:.6rem;padding-bottom:.6rem}
.events-page .brand{line-height:0}
.events-page .brand img{display:block;width:64px;height:64px;object-fit:cover;border-radius:50%;background:#fff}
.events-page .page-head{margin-bottom:1.1rem}
.events-page .page-head h1{font-size:clamp(1.8rem,3vw,2.35rem);line-height:1.15;margin:0 0 .35em}
.events-page .page-head p{max-width:44rem;margin:0;font-size:1.05rem}
.events-page .event-section{margin-top:1.6rem}
.events-page .event-section h2{margin:0 0 .75rem;font-size:1.25rem;line-height:1.2;color:#0b4f78}
.events-page .event-list{display:flex;flex-direction:column;gap:.75rem}
.events-page .event-card{display:grid;grid-template-columns:minmax(9.5rem,12.5rem) minmax(0,1fr);gap:.35rem 1.25rem;align-items:start;background:#fff;border:1px solid #dce4ea;border-radius:.6rem;padding:1rem 1.1rem}
.events-page .event-card.is-marine{border-left:3px solid #3d6d8c}
.events-page .event-date{margin:0;color:#526f86;font-size:.92rem;font-weight:700}
.events-page .event-body{min-width:0}
.events-page .event-body h3{margin:0;font-size:1.15rem;line-height:1.25;color:#0b4f78}
.events-page .event-body p{margin:.3rem 0 0}
.events-page .event-meta,.events-page .event-venue,.events-page .event-organiser{color:#526f86;font-size:.92rem}
.events-page .is-marine .event-meta{font-weight:700;color:#17324d}
.events-page .event-link a{color:#0b4f78;font-weight:700}
.events-page .event-empty{margin:0;color:#526f86}
.events-page .past-events h2{color:#526f86}
.events-page .past-events .event-card{background:#f4f7fa}
.events-page .past-events .event-body h3{color:#17324d;font-weight:600}
@media(max-width:760px){
.events-page .brand img{width:56px;height:56px}
}
@media(max-width:640px){
.events-page .event-card{grid-template-columns:1fr}
}

.map-page a:focus-visible,.map-page button:focus-visible{outline:3px solid #0b4f78;outline-offset:3px}
.map-page .site-header{padding-top:.6rem;padding-bottom:.6rem}
.map-page .brand{line-height:0}
.map-page .brand img{display:block;width:64px;height:64px;object-fit:cover;border-radius:50%;background:#fff}
.map-page .page-head{margin-bottom:1.1rem}
.map-page .page-head h1{font-size:clamp(1.8rem,3vw,2.35rem);line-height:1.15;margin:0 0 .35em}
.map-page .page-head p{max-width:44rem;margin:0;font-size:1.05rem}
.map-page .map-stage{min-width:0}
.map-page .map-status{margin:0}
.map-page arcgis-map{display:block;width:100%;height:min(72vh,760px);min-height:520px;border:1px solid #dce4ea;border-radius:.6rem;overflow:hidden}
@media(max-width:760px){
.map-page .brand img{width:56px;height:56px}
}
@media(max-width:640px){
.map-page arcgis-map{height:calc(100vh - 220px);min-height:360px}
}
.map-page arcgis-layer-list.is-stowed{display:none !important}

.safety-page a:focus-visible,.safety-page button:focus-visible{outline:3px solid #0b4f78;outline-offset:3px}
.safety-page .site-header{padding-top:.6rem;padding-bottom:.6rem}
.safety-page .brand{line-height:0}
.safety-page .brand img{display:block;width:64px;height:64px;object-fit:cover;border-radius:50%;background:#fff}
.safety-page .page-head{margin-bottom:1.1rem}
.safety-page .page-head h1{font-size:clamp(1.8rem,3vw,2.35rem);line-height:1.15;margin:0 0 .35em}
.safety-page .page-head p{max-width:44rem;margin:0;font-size:1.05rem}
.safety-page .page-head p+p{margin-top:.75rem}
.safety-page .safety-intro{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:1.25rem 1.75rem;align-items:start}
.safety-page .safety-photo{margin:.15rem 0 0}
.safety-page .safety-photo img{display:block;width:100%;height:auto;border-radius:.5rem}
.safety-page .authority-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;align-items:stretch}
.safety-page .authority-card{display:flex;flex-direction:column;background:#fff;border:1px solid #dce4ea;border-radius:.6rem;padding:1.1rem 1.15rem 1.2rem}
.safety-page .authority-card h2{margin:0;font-size:1.15rem;line-height:1.25;color:#0b4f78}
.safety-page .authority-name{margin:.4rem 0 0;color:#526f86;font-size:.92rem;font-weight:700}
.safety-page .authority-card p{margin:.55rem 0 0}
.safety-page .authority-link{margin-top:auto;padding-top:.35rem}
.safety-page .authority-link a{color:#0b4f78;font-weight:700}
@media(max-width:760px){
.safety-page .brand img{width:56px;height:56px}
.safety-page .safety-intro,.safety-page .authority-list{grid-template-columns:1fr}
.safety-page .safety-photo{max-width:240px}
}

.about-page a:focus-visible,.about-page button:focus-visible{outline:3px solid #0b4f78;outline-offset:3px}
.about-page .site-header{padding-top:.6rem;padding-bottom:.6rem}
.about-page .brand{line-height:0}
.about-page .brand img{display:block;width:64px;height:64px;object-fit:cover;border-radius:50%;background:#fff}
.about-page .page-head{margin-bottom:1.1rem}
.about-page .page-head h1{font-size:clamp(1.8rem,3vw,2.35rem);line-height:1.15;margin:0 0 .35em}
.about-page .page-head p{max-width:44rem;margin:0;font-size:1.05rem}
.about-page .page-head p+p{margin-top:.75rem}
.about-page .about-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,400px);gap:1.25rem 2rem;align-items:start}
.about-page .about-photo{margin:.15rem 0 0}
.about-page .about-photo img{display:block;width:100%;height:auto;border-radius:.5rem}
.about-page .about-section{max-width:44rem;margin-top:1.85rem}
.about-page .about-section h2{margin:0 0 .45em;font-size:1.25rem;line-height:1.2;color:#0b4f78}
.about-page .about-section p{margin:0;font-size:1.05rem}
.about-page .about-section p+p{margin-top:.75rem}
@media(max-width:760px){
.about-page .brand img{width:56px;height:56px}
.about-page .about-intro{grid-template-columns:1fr}
.about-page .about-photo{max-width:420px}
}