.nav__links a.active{color:var(--brass)}
.nav__links a.active::after{width:100%}
.visit-hero{background:linear-gradient(180deg,#fbe6bd,#f2c98d);padding:58px 0 44px;text-align:center}
.visit-hero h1{font-family:var(--font-display);color:var(--barn-deep);font-size:clamp(2.2rem,5.5vw,3.4rem);text-shadow:2px 2px 0 rgba(255,255,255,.35)}
.visit-hero p{max-width:60ch;margin:14px auto 0;color:#4a2f22;font-weight:500;font-size:1.08rem}
.getintouch{padding:60px 0 58px}
.git-grid{display:grid;grid-template-columns:1.25fr .9fr;gap:40px;align-items:start;max-width:1080px;margin:0 auto}
.git-grid .cform{max-width:none;margin:0}
.git-info .info-card{border-top:6px solid var(--barn)}
.mapband{border-top:1px solid var(--divider)}
.mapband iframe{display:block;width:100%;height:430px;border:0;filter:sepia(.12) saturate(1.05)}
@media(max-width:860px){.git-grid{grid-template-columns:1fr;gap:28px}.mapband iframe{height:340px}}
.facts{padding:72px 0;background:var(--cream-2);border-top:1px solid var(--divider)}
.factgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;max-width:1120px;margin:0 auto}
.factcard{background:#fff;border-radius:14px;padding:30px 24px;text-align:center;box-shadow:var(--shadow);border-top:5px solid var(--brass)}
.factcard .fic{width:54px;height:54px;margin:0 auto 14px;border-radius:50%;background:var(--cream-2);display:grid;place-content:center;color:var(--barn)}
.factcard .fic svg{width:27px;height:27px}
.factcard h3{font-family:var(--font-slab);color:var(--barn);font-size:1.05rem;margin-bottom:6px}
.factcard p{font-size:.9rem;color:#5c4d43;line-height:1.5}
.events{padding:76px 0;border-top:1px solid var(--divider)}
.events__grid{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center}
.events__media .photo-frame{border:10px solid #fff;box-shadow:var(--shadow);border-radius:4px;overflow:hidden;transform:rotate(-1.5deg)}
.events__media .photo-frame img{width:100%;display:block;transition:transform .8s ease}
.events__media .photo-frame:hover img{transform:scale(1.05)}
.events__text h2{font-family:var(--font-slab);color:var(--barn);font-size:clamp(1.5rem,3vw,2.2rem);margin-bottom:.5em}
.events__text p{color:#4c3d34;margin-bottom:1em}
.events__btns{display:flex;gap:12px;flex-wrap:wrap}
.visit-cta{padding:76px 0;text-align:center;background:linear-gradient(135deg,var(--barn),var(--barn-deep));color:var(--cream)}
.visit-cta h2{font-family:var(--font-slab);color:#fff;font-size:clamp(1.6rem,3.4vw,2.3rem);margin-top:6px}
.visit-cta p{color:var(--cream-2);margin:12px auto 26px;max-width:52ch}
.visit-cta .btns{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.visit-cta .btn-ghost{border-color:var(--cream);color:var(--cream)}
.visit-cta .btn-ghost:hover{background:var(--cream);color:var(--barn-deep)}
.contact{padding:76px 0;border-top:1px solid var(--divider)}
.cform{max-width:720px;margin:0 auto;background:#fff;border:1px solid #ecdcbb;border-radius:16px;padding:34px;box-shadow:var(--shadow)}
.hp{position:absolute!important;left:-9999px;top:-9999px;width:1px;height:1px;opacity:0;overflow:hidden}
.cf-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.cf-field{display:flex;flex-direction:column;gap:7px;font-family:var(--font-type);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--brass-deep)}
.cf-field span{color:#9b8a6a}
.cf-field input,.cf-field select,.cf-field textarea{font-family:var(--font-body);font-size:1rem;text-transform:none;letter-spacing:0;color:var(--ink);background:var(--paper);border:1px solid #e0cfa6;border-radius:9px;padding:12px 14px;transition:border-color .2s,box-shadow .2s;width:100%}
.cf-field input:focus,.cf-field select:focus,.cf-field textarea:focus{outline:none;border-color:var(--barn);box-shadow:0 0 0 3px rgba(147,41,30,.12)}
.cf-field textarea{resize:vertical;min-height:120px}
.cf-msg{margin-top:18px}
.cf-actions{display:flex;align-items:center;gap:18px;margin-top:22px;flex-wrap:wrap}
.cf-submit{cursor:pointer}
.cf-note{font-size:.92rem;margin:0;font-weight:600}
.cf-note.ok{color:#2f7a52}
.cf-note.err{color:var(--barn)}
@media(max-width:620px){.cf-grid{grid-template-columns:1fr}.cform{padding:24px}}
@media(max-width:860px){
  .findus__grid{grid-template-columns:1fr;gap:28px}
  .events__grid{grid-template-columns:1fr;gap:30px}
  .factgrid{grid-template-columns:1fr 1fr}
}
@media(max-width:520px){
  .factgrid{grid-template-columns:1fr}
}
