:root{--navy:#071f3a;--gold:#d9a441;--teal:#0b9f9a;--cream:#fff8ea;--white:#fff;--ink:#14243a;--muted:#526375;--line:#d8e6ef;--danger:#a82727;--success:#176332}
*{box-sizing:border-box}
body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--cream);color:var(--ink);font-size:18px;line-height:1.6}
a{color:#086ea0}a:focus,button:focus,input:focus,textarea:focus,select:focus{outline:4px solid rgba(217,164,65,.55);outline-offset:3px}
.site-header,.site-footer{background:var(--navy);color:white}
.nav,.footer-inner,.wrap{max-width:1120px;margin:auto}
.nav{min-height:84px;padding:16px 20px;display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}
.brand{color:white;text-decoration:none;display:flex;align-items:center;gap:12px;font-size:27px;font-weight:900}
.brand img{width:58px;height:58px;object-fit:contain;background:white;border-radius:14px;padding:5px}
.brand .go{color:var(--gold)}
.navlinks{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.navlinks a,.navlinks button{color:white;background:transparent;border:0;text-decoration:none;font:inherit;font-weight:800;padding:9px 11px;border-radius:10px;cursor:pointer}
.navlinks a:hover,.navlinks button:hover{background:rgba(255,255,255,.12)}
.wrap{padding:38px 20px}
.hero{background:linear-gradient(90deg,rgba(7,31,58,.92),rgba(11,111,159,.68)),url("assets/senior-go-hero.png") center/cover no-repeat;color:white;padding:76px 20px}
.hero .wrap{padding:0}.hero h1{font-size:clamp(40px,7vw,72px);line-height:1.05;margin:0 0 16px}.hero p{font-size:23px;max-width:820px}
.card{background:white;border:1px solid var(--line);border-radius:16px;padding:24px;margin-bottom:22px;box-shadow:0 12px 28px rgba(7,31,58,.08)}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}
h1,h2,h3{color:var(--navy);line-height:1.15}h1{font-size:clamp(36px,6vw,58px);margin-top:0}h2{font-size:32px;margin-top:0}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;background:var(--gold);color:#102033;text-decoration:none;border:0;border-radius:999px;padding:12px 22px;font-weight:900;cursor:pointer;font-size:18px}
.btn.secondary{background:var(--teal);color:white}.btn.navy{background:var(--navy);color:white}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
label{display:block;font-weight:800;color:var(--navy);margin-top:14px}input,select,textarea{width:100%;padding:13px 14px;border:2px solid #bfd3df;border-radius:10px;font:inherit;background:white}textarea{min-height:140px}
.check{display:flex;gap:10px;align-items:flex-start;font-weight:400;background:#f8fbff;border:1px solid var(--line);border-radius:10px;padding:12px}.check input{width:auto;margin-top:8px}
.notice,.error,.success{padding:15px 18px;border-radius:10px;margin:0 0 18px}.notice{background:#eef9fb;border-left:6px solid var(--teal)}.error{background:#fff0f0;border-left:6px solid var(--danger);color:var(--danger);font-weight:800}.success{background:#f2fff4;border-left:6px solid #258a3d;color:var(--success);font-weight:800}
.small{font-size:15px;color:var(--muted)}.site-footer .small{color:#d7e6ef}.footer-inner{padding:26px 20px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.footer-inner a{color:white;margin-right:12px}
.table-wrap{overflow:auto;background:white;border:1px solid var(--line);border-radius:14px}table{width:100%;border-collapse:collapse;min-width:760px}th,td{padding:12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{background:#eff7fb;color:var(--navy)}
.feature-photo{width:100%;border-radius:16px;box-shadow:0 14px 34px rgba(7,31,58,.18);border:1px solid var(--line)}
.flag{width:120px;max-width:100%;border:1px solid var(--line);border-radius:10px;background:white}
.map-stage{background:white;border:1px solid var(--line);border-radius:20px;padding:14px;overflow:auto}.map-wrap{position:relative;min-width:760px}.map-img{display:block;width:100%;height:auto;border-radius:14px}.hotspots{position:absolute;inset:0;width:100%;height:100%}.hotspots a polygon{fill:rgba(217,164,65,0);stroke:rgba(7,31,58,0);stroke-width:0;cursor:pointer}.hotspots a:hover polygon,.hotspots a:focus polygon{fill:rgba(217,164,65,.32);stroke:#071f3a;stroke-width:3}.directory{columns:3 220px}.directory a{display:block;margin:0 0 8px;font-weight:800}
@media(max-width:720px){body{font-size:17px}.hero{padding:48px 20px}.btn,.actions .btn{width:100%;text-align:center}.footer-inner{display:block;text-align:center}.navlinks{width:100%}.directory{columns:1}}
