.town-page{color:var(--ink);background:#fff;font-size:1rem;line-height:1.65}.town-page .tf-wrap{max-width:1200px;margin:auto;padding:0 28px}.town-page h1{font:800 clamp(2.5rem,4.6vw,4.2rem)/1.08 'Manrope',sans-serif;letter-spacing:-.045em;color:var(--navy);margin:22px 0}.town-page h2{font:800 clamp(1.7rem,3vw,2.4rem)/1.2 'Manrope',sans-serif;margin:12px 0 20px;color:var(--navy)}.town-page h3{font:700 1.4rem/1.3 'Manrope',sans-serif;margin:0 0 12px}.town-page p{margin:0 0 20px;color:var(--muted)}.town-page .tf-hero{display:grid;grid-template-columns:1.08fr 1fr;gap:48px;align-items:center;padding:52px 0;background:none}.town-page .tf-eyebrow{font-size:.8rem;font-weight:700;letter-spacing:.12em;color:#007ba8}.town-page figure{margin:0}.town-page .tf-hero img{width:100%;height:520px;object-fit:contain;background:var(--pale);border-radius:65px 18px 18px 18px}.town-page figcaption{font-size:.85rem;padding:12px 0;color:var(--muted)}.town-page .tf-btn{display:inline-block;text-decoration:none;border:0;border-radius:10px;background:var(--navy);color:white;padding:14px 20px;font-weight:700;font-size:.95rem}.town-page .tf-secondary{background:#fff;color:var(--navy);border:1px solid var(--line);margin:8px}.town-page .tf-quote{font:700 1.5rem/1.4 'Manrope',sans-serif;color:var(--blue);margin-top:25px}.town-page .tf-credentials{display:flex;flex-wrap:wrap;justify-content:space-between;gap:18px;border-block:1px solid var(--line);padding:20px 0;font-size:.85rem;font-weight:700}.town-page .tf-section{padding:60px 0}.town-page .tf-twocol{display:grid;grid-template-columns:1fr 1fr;gap:48px}.town-page .tf-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:25px}.town-page .tf-card{padding:26px;background:var(--pale);border:1px solid var(--line);border-radius:18px}.town-page .tf-card p{margin:0}.town-page .tf-num{display:block;font-size:.85rem;color:#007ba8;margin-bottom:18px}.town-page .tf-gallery{display:grid;grid-template-columns:1fr 1fr;gap:22px}.town-page .tf-gallery figure{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--pale)}.town-page .tf-gallery img{width:100%;height:430px;object-fit:contain}.town-page .tf-gallery figcaption{padding:22px}.town-page .tf-gallery b{display:block;font-size:1.3rem;margin-bottom:8px;color:var(--navy)}.town-page .tf-gallery:has(figure:only-child){grid-template-columns:1fr}.town-page .tf-green{background:var(--pale)}.town-page .tf-booking{background:var(--navy);padding:34px;border-radius:20px;align-self:start}.town-page .tf-booking h2,.town-page .tf-booking p,.town-page .tf-booking a{color:#fff}.town-page .tf-booking .tf-btn{background:var(--yellow);color:var(--navy)}.town-page .tf-fine{font-size:.9rem}.town-page .tf-faq details{border-bottom:1px solid #bdced8;padding:18px 0}.town-page summary{cursor:pointer;font-weight:700}.town-page details p{padding-top:14px}.priority-town-links{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}.priority-town-links a{display:inline-block;padding:12px 22px;background:var(--pale);border:1px solid var(--line);border-radius:12px;color:var(--navy);font-weight:700;text-decoration:none}.priority-town-links a:hover{background:#d9f1fa}.town-discovery{padding-top:45px;padding-bottom:50px}.town-page a:focus-visible,.priority-town-links a:focus-visible{outline:3px solid #c06000;outline-offset:4px}@media(max-width:760px){.town-page .tf-hero,.town-page .tf-twocol{grid-template-columns:1fr;gap:25px}.town-page .tf-wrap{padding:0 20px}.town-page .tf-hero{padding:32px 0}.town-page .tf-hero img{height:390px}.town-page .tf-cards,.town-page .tf-gallery{grid-template-columns:1fr}.town-page .tf-section{padding:38px 0}.town-page .tf-gallery img{height:360px}.town-page .tf-booking{padding:25px}.town-page h1{font-size:2.6rem}.town-page .tf-secondary{margin:8px 0}} 

.site-map-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;margin:35px 0}.site-map-links{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.site-map-links a{font-size:1rem}.site-map-links button{font-size:1rem}@media(max-width:650px){.site-map-grid{grid-template-columns:1fr;gap:30px}}
