:root{--navy: #005581;--blue: #008dd6;--ink: #1d2b36;--muted: #5c6b78;--line: #d7dee4;--wash: #e7f7ff;--paper: #ffffff;--page: #f4f7f9;--radius: 10px;--measure: 68ch;--font: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}*,*:before,*:after{box-sizing:border-box}html{color-scheme:light}body{margin:0;font:16px/1.6 var(--font);color:var(--ink);background:var(--page)}img{max-width:100%;height:auto;display:block}a{color:var(--navy)}a:hover{color:var(--blue)}h1,h2,h3{line-height:1.2;color:var(--navy);margin:0 0 .5em}h1{font-size:clamp(1.6rem,1.2rem + 1.8vw,2.4rem)}h2{font-size:clamp(1.25rem,1rem + 1vw,1.6rem)}p{margin:0 0 1em;max-width:var(--measure)}.wrap{width:min(100% - 2rem,1100px);margin-inline:auto}.site-header{background:#fff url(/images/layout/background.jpg) center top / cover no-repeat;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.25rem 0}.brand a{display:inline-block}.brand img{width:clamp(180px,25vw,300px)}.tagline{margin:0;color:var(--navy);font-weight:600;text-align:right;max-width:22ch}.nav{position:relative}.nav-toggle{display:none;background:none;border:1px solid var(--navy);color:var(--navy);border-radius:6px;padding:.4rem .7rem;font:inherit;cursor:pointer}.nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.25rem 1.75rem}.nav a{display:block;padding:.75rem 0;text-decoration:none;font-weight:600;color:var(--navy);border-bottom:3px solid transparent}.nav a:hover,.nav a[aria-current=page]{border-bottom-color:var(--blue);color:var(--blue)}@media(max-width:640px){.brand{flex-direction:column;align-items:flex-start}.tagline{text-align:left}.nav-toggle{display:inline-block;margin-bottom:.5rem}.nav ul{display:none;flex-direction:column;gap:0;border-top:1px solid var(--line)}.nav ul.open{display:flex}.nav a{padding:.6rem 0;border-bottom:1px solid var(--line)}}main{padding:2.5rem 0 3rem}.intro{display:grid;gap:2rem;align-items:start}@media(min-width:800px){.intro{grid-template-columns:1.1fr .9fr}}.intro img{border-radius:var(--radius);border:1px solid var(--line)}.lede{font-size:1.1rem}.cards{list-style:none;margin:0;padding:0;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column}.card a.thumb{display:block;aspect-ratio:4 / 3;overflow:hidden;background:var(--wash)}.card a.thumb img{width:100%;height:100%;object-fit:cover;transition:transform .25s}.card a.thumb:hover img{transform:scale(1.03)}.card .body{padding:1rem 1.15rem 1.25rem}.card h2{font-size:1.15rem;margin-bottom:.35em}.card p{margin:0;color:var(--muted);font-size:.95rem}.contact{display:grid;gap:2rem}@media(min-width:800px){.contact{grid-template-columns:1fr 1.2fr}}.contact dl{margin:0;display:grid;grid-template-columns:max-content 1fr;gap:.4rem 1rem}.contact dt{color:var(--muted)}.contact dd{margin:0}.map{aspect-ratio:4 / 3;border:0;border-radius:var(--radius);width:100%}.placeholder{border:2px dashed var(--line);border-radius:var(--radius);padding:2rem;background:var(--paper);color:var(--muted);text-align:center}.form{margin-top:2rem;max-width:760px}.form fieldset{border:1px solid var(--line);border-radius:var(--radius);padding:1rem 1.25rem 1.25rem;margin:0 0 1.25rem;background:var(--paper)}.form legend{padding:0 .5rem;color:var(--navy);font-weight:600}.form .grid-2{display:grid;gap:0 1.25rem}@media(min-width:640px){.form .grid-2{grid-template-columns:1fr 1fr}}.field{display:flex;flex-direction:column;gap:.3rem;margin-bottom:1rem}.field label{font-weight:600;font-size:.95rem}.field input,.field select,.field textarea{font:inherit;color:var(--ink);background:#fff;border:1px solid #b9c4cc;border-radius:6px;padding:.55rem .7rem;width:100%}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--blue);outline-offset:1px;border-color:var(--blue)}.field textarea{resize:vertical}.hint{color:var(--muted);font-size:.95rem}.note{background:var(--wash);border-left:4px solid var(--blue);border-radius:6px;padding:1rem 1.25rem;margin:1.5rem 0;max-width:var(--measure)}.note h2{font-size:1.1rem;margin-bottom:.3em}.button{font:inherit;font-weight:600;color:#fff;background:var(--navy);border:0;border-radius:6px;padding:.7rem 1.4rem;cursor:pointer}.button:hover{background:var(--blue)}.kw-alert{border-radius:6px;padding:.7rem 1rem;margin-bottom:1rem;font-weight:600}.kw-alert-error{background:#fdecea;color:#8a1c15}.kw-alert-success{background:var(--wash);color:var(--navy)}.field .kw-border-error{border-color:#b3261e}.kw-field-error-message{color:#b3261e;font-size:.9rem}dialog.lightbox{border:0;padding:0;background:transparent;max-width:min(96vw,1100px);max-height:96vh}dialog.lightbox::backdrop{background:#000c}dialog.lightbox figure{margin:0;display:grid;gap:.5rem;justify-items:center}dialog.lightbox img{max-height:84vh;width:auto;border-radius:6px}dialog.lightbox figcaption{color:#fff;text-align:center;max-width:60ch;font-size:.95rem}dialog.lightbox .close{position:absolute;top:.5rem;right:.5rem;border:0;background:#fff;color:var(--navy);border-radius:999px;width:2.25rem;height:2.25rem;font-size:1.25rem;cursor:pointer}.site-footer{border-top:1px solid var(--line);background:var(--paper);padding:1.5rem 0;color:var(--muted);font-size:.9rem}.site-footer .wrap{display:flex;flex-wrap:wrap;gap:.5rem 2rem;justify-content:space-between}
