:root{--bg:#ffffff;--fg:#1d2b3a;--mute:#5b6b7b;--pri:#1d3557;--acc:#e8892b;--card:#f4f7fa;--line:#dbe3ea;--head:"Trebuchet MS", "Segoe UI", Arial, sans-serif;--body:"Segoe UI", Roboto, Arial, sans-serif;--radius:8px}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--body);font-size:17px;line-height:1.65}
img{max-width:100%;height:auto;display:block}
a{color:var(--pri)}
h1,h2,h3{font-family:var(--head);line-height:1.2;margin:0 0 .5em;color:var(--fg)}
h1{font-size:clamp(1.9rem,4.2vw,3rem)}
h2{font-size:clamp(1.4rem,2.6vw,2rem);margin-top:1.6em}
h3{font-size:1.2rem}
p{margin:0 0 1em}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}
.site-header{background:var(--card);border-bottom:1px solid var(--line)}
.bar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:14px;padding-bottom:14px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--fg);font-family:var(--head);font-weight:700;font-size:1.25rem}
.brand svg{width:34px;height:34px;flex:none}
.nav{display:flex;flex-wrap:wrap;gap:4px 18px}
.nav a{text-decoration:none;color:var(--fg);padding:4px 0;border-bottom:2px solid transparent;font-size:.97rem}
.nav a:hover,.nav a[aria-current]{border-color:var(--acc)}
.hero{position:relative;color:#fff;background:#222}
.hero-img img{width:100%;height:min(62vh,560px);object-fit:cover}
.hero-text{position:absolute;left:0;right:0;bottom:0;padding:48px max(20px,calc((100% - 1040px)/2));background:linear-gradient(transparent,rgba(0,0,0,.68))}
.hero-text h1{color:#fff;margin-bottom:.3em;max-width:18em}
.hero-text .lead{max-width:40em;margin-bottom:1em;font-size:1.1rem}
.btn{display:inline-block;background:var(--acc);color:#fff;text-decoration:none;padding:.65em 1.3em;border-radius:var(--radius);font-weight:600}
.btn:hover{filter:brightness(.92)}
.pagehead{padding:36px 0 8px}
.pagehead-img img{width:100%;height:min(40vh,380px);object-fit:cover;margin-bottom:28px}
.lead{font-size:1.12rem;color:var(--mute)}
.wrap.text>*{max-width:780px}
.wrap.text ul{padding-left:1.2em}
.hero-text .lead{color:rgba(255,255,255,.93)}
.cta h2{border:0;padding:0}
.wrap.text li{margin-bottom:.5em}
.split{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center;margin-top:44px}
.split.rev figure{order:2}
.split figure{margin:0}
.split img,.card-img img,.gallery img{border-radius:var(--radius)}
figcaption{font-size:.85rem;color:var(--mute);margin-top:6px}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:26px;margin-top:20px}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column}
.card-img img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:0}
.card-body{padding:16px 18px 6px}
.card h3 a{text-decoration:none;color:var(--fg)}
.meta{font-size:.85rem;color:var(--mute);margin-bottom:.4em}
.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}
.gallery figure{margin:0}
.gallery img{width:100%;aspect-ratio:4/3;object-fit:cover}
table.facts{border-collapse:collapse;width:100%;max-width:780px;background:var(--card);border:1px solid var(--line)}
.facts th,.facts td{text-align:left;padding:10px 14px;border-bottom:1px solid var(--line);vertical-align:top}
.facts th{width:34%;font-weight:600;color:var(--mute)}
.note{font-size:.88rem;color:var(--mute);margin-top:10px}
.cta{background:var(--pri);color:#fff;margin-top:56px;padding:44px 0;text-align:center}
.cta h2{color:#fff;margin-top:0}
.cta p{max-width:36em;margin:0 auto 1.2em}
.cta .btn{background:var(--acc)}
.site-footer{margin-top:64px;background:var(--card);border-top:1px solid var(--line);padding:36px 0 18px;font-size:.93rem}
.foot{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:28px}
.copy{margin-top:20px;color:var(--mute);font-size:.85rem}
.credits{font-size:.9rem}
main{min-height:60vh}
@media (max-width:720px){.split{grid-template-columns:1fr}.split.rev figure{order:0}body{font-size:16px}.hero-text{padding:24px 20px}}

.site-header{position:sticky;top:0;z-index:5;border-bottom:3px solid var(--acc)}
.brand{color:var(--pri)}
.hero-text{left:max(20px,calc((100% - 1040px)/2));right:auto;bottom:34px;max-width:520px;background:rgba(29,53,87,.9);padding:26px 30px;border-radius:var(--radius)}
.hero-text h1{font-size:clamp(1.6rem,3.2vw,2.3rem)}
.card{background:#fff;box-shadow:0 2px 10px rgba(29,53,87,.08);border:0}
h2{color:var(--pri)}
.cta{background:var(--acc)}.cta .btn{background:var(--pri)}
@media (max-width:720px){.hero-text{position:static;max-width:none;border-radius:0}}
