:root{--blue:#1d3f8f;--blue-d:#12285e;--cream:#fbf5e6;--butter:#f4c542;--ink:#14213d;--tile:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='80' height='80' viewBox='0 0 80 80'%3E%3Cg fill='none' stroke='%231d3f8f' stroke-width='2'%3E%3Cpath d='M40 6 74 40 40 74 6 40Z'/%3E%3Cpath d='M40 22 58 40 40 58 22 40Z'/%3E%3Ccircle cx='40' cy='40' r='5' fill='%231d3f8f'/%3E%3Cpath d='M0 0 12 0 0 12ZM80 0 68 0 80 12ZM0 80 12 80 0 68ZM80 80 68 80 80 68Z' fill='%231d3f8f'/%3E%3C/g%3E%3C/svg%3E")}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{font-family:'Figtree',sans-serif;color:var(--ink);background:var(--cream);font-size:1.05rem}
h1,h2,h3,.display{font-family:'Abril Fatface',serif;font-weight:400;letter-spacing:.01em}
a{color:var(--blue)}
.navbar{background:var(--cream);border-bottom:3px solid var(--blue);padding:.6rem 0}
.navbar .brand{display:block;text-align:center;font-family:'Abril Fatface',serif;font-size:1.7rem;color:var(--blue);text-decoration:none;line-height:1}
.navbar .brand small{display:block;font-family:'Figtree',sans-serif;font-size:.68rem;letter-spacing:.3em;text-transform:uppercase;margin-top:.35rem;color:var(--ink)}
.navbar.navbar-expand-lg .navbar-collapse{justify-content:center}
.navbar .nav-link{font-weight:700;text-transform:uppercase;letter-spacing:.14em;font-size:.82rem;color:var(--ink);padding:.5rem 1.1rem}
.navbar .nav-link:hover{color:var(--blue)}
.navbar-toggler{border-color:var(--blue)}
.nav-top{display:flex;flex-direction:column;align-items:center;width:100%}
.nav-top .bar{display:flex;justify-content:space-between;align-items:center;width:100%}
@media(min-width:992px){.nav-top .bar{justify-content:center}.navbar-toggler{display:none}}
.hero{background:var(--blue);color:var(--cream);position:relative;overflow:hidden;padding:5rem 0 6rem}
.hero::after{content:"";position:absolute;inset:0;background:var(--tile);opacity:.16;filter:invert(1);pointer-events:none;-webkit-mask-image:linear-gradient(90deg,transparent 45%,#000);mask-image:linear-gradient(90deg,transparent 45%,#000)}
.hero .container{position:relative;z-index:1}
.eyebrow{font-weight:700;text-transform:uppercase;letter-spacing:.28em;font-size:.78rem}
.hero .eyebrow{color:var(--butter)}
.hero h1{font-size:clamp(3.2rem,9vw,7rem);line-height:.95;margin:1rem 0 1.4rem}
.hero h1 em{color:var(--butter);font-style:normal}
.hero p.lead{max-width:34rem;font-size:1.25rem}
.btn-b{background:var(--butter);color:var(--ink);font-weight:800;border:2px solid var(--butter);border-radius:0;padding:.8rem 1.8rem;letter-spacing:.08em;text-transform:uppercase;font-size:.85rem}
.btn-b:hover{background:var(--cream);border-color:var(--cream);color:var(--ink)}
.btn-o{background:transparent;color:var(--cream);font-weight:800;border:2px solid var(--cream);border-radius:0;padding:.8rem 1.8rem;letter-spacing:.08em;text-transform:uppercase;font-size:.85rem}
.btn-o:hover{background:var(--cream);color:var(--blue)}
.hero-photo{position:relative;margin:0 auto;max-width:360px;border:8px solid var(--cream);outline:3px solid var(--butter);transform:rotate(2deg)}
.hero-photo>img:first-child{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 40%}
.hero-photo .badge-logo{position:absolute;left:-2.2rem;bottom:-2.2rem;width:128px;height:128px;border-radius:50%;border:4px solid var(--cream);background:var(--cream);transform:rotate(-6deg)}
.photo-pair{display:grid;grid-template-columns:1fr 1.5fr;gap:1rem;align-items:stretch}
.photo-pair img{width:100%;height:100%;object-fit:cover;border:5px solid var(--blue);display:block}
@media(max-width:575px){.photo-pair{grid-template-columns:1fr}.photo-pair img{height:auto;aspect-ratio:4/3}.hero-photo .badge-logo{left:-.5rem;width:100px;height:100px}}
.story-photo{margin:0;border:8px solid var(--cream);outline:3px solid var(--blue-d);transform:rotate(-1.5deg)}
.story-photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:50% 25%;filter:sepia(.25)}
.tilestrip{height:56px;background:var(--cream) var(--tile);background-size:56px 56px;border-block:3px solid var(--blue)}
section{padding:5rem 0}
h2{font-size:clamp(2.2rem,5vw,3.6rem);color:var(--blue);line-height:1.05}
.sec-eyebrow{color:var(--ink);opacity:.75}
.board{background:var(--blue);color:var(--cream);padding:2.5rem;border:8px solid var(--cream);outline:3px solid var(--blue);position:relative}
.board h2{color:var(--butter)}
.board ul{list-style:none;padding:0;margin:0}
.board li{display:flex;align-items:baseline;gap:.6rem;padding:1.05rem 0;border-bottom:1px dashed rgba(251,245,230,.4)}
.board li:last-child{border-bottom:0}
.board .nm{font-family:'Abril Fatface',serif;font-size:1.6rem;white-space:nowrap}
.board .dots{flex:1}
.board .ds{font-size:.95rem;opacity:.9;max-width:21rem;text-align:right}
@media(max-width:575px){.board{padding:1.5rem}.board li{flex-direction:column;gap:.1rem}.board .ds{text-align:left}.board .nm{white-space:normal}}
.about{background:var(--butter)}
.about h2{color:var(--blue-d)}
.fact{border-top:4px solid var(--blue);padding-top:.9rem}
.fact b{font-family:'Abril Fatface',serif;font-weight:400;font-size:1.5rem;color:var(--blue);display:block}
.visit .card-t{background:var(--cream);border:3px solid var(--blue);padding:2rem;height:100%}
.visit iframe{width:100%;height:100%;min-height:340px;border:3px solid var(--blue)}
.visit .big{font-family:'Abril Fatface',serif;font-size:2rem;color:var(--blue);text-decoration:none}
footer{background:var(--blue-d);color:var(--cream);padding:2.5rem 0;text-align:center}
footer a{color:var(--butter)}
footer .fb{font-family:'Abril Fatface',serif;font-size:1.6rem}
