*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:#293a30;line-height:1.65}a{color:#3e6849}.wrap{width:min(1120px,92%);margin:auto}.narrow{max-width:800px}.nav{min-height:76px;display:flex;align-items:center;gap:25px}.brand{margin-right:auto;text-decoration:none;color:#41664b;font-weight:800;letter-spacing:.12em;line-height:1.05}.brand span{display:block;letter-spacing:0;font-size:1.25rem}.nav nav{display:flex;gap:18px}.nav nav a{text-decoration:none;color:#293a30}.menu{display:none}.hero{min-height:620px;display:flex;align-items:center;color:white;background:linear-gradient(90deg,rgba(25,49,32,.8),rgba(25,49,32,.08)),url("../images/exterior.jpg") center/cover}.hero h1,.pagehead h1{font-size:clamp(2.7rem,6vw,5rem);line-height:1.03;margin:8px 0 20px}.hero p{font-size:1.25rem;max-width:620px}.btn{display:inline-block;background:#416b4b;color:#fff;text-decoration:none;border:0;padding:11px 18px;border-radius:6px;font-weight:700}.outline{background:transparent;border:1px solid white;margin-left:7px}small{font-weight:800;letter-spacing:.13em;color:#708474}.hero small,.facebook small{color:#dbe8dd}.section,.welcome,.facebook{padding:78px 0}.centre{text-align:center}.pale{background:#f2f5f1}h2{font-size:clamp(2rem,4vw,3rem);line-height:1.12;margin:8px 0 25px}.grid{display:grid;gap:28px}.three{grid-template-columns:repeat(3,1fr)}.two{grid-template-columns:repeat(2,1fr)}.tile,article,.formbox{background:#fff;border:1px solid #dce4dc;border-radius:10px;padding:27px;text-decoration:none;color:#293a30}.tile:hover{transform:translateY(-2px)}.feature-img{width:100%;height:390px;object-fit:cover;border-radius:10px}.vcentre{align-self:center}.textlink{font-weight:700;text-decoration:none}.facebook{background:#31553b;color:#fff}.fb,.embed{min-height:260px;background:#fff;color:#68756b;border:1px solid #dce4dc;border-radius:10px;display:flex;align-items:center;justify-content:center;text-align:center}.pagehead{padding:85px 0;background:#31553b;color:#fff}.pagehead small{color:#dbe8dd}.pagehead p{font-size:1.15rem}.schedule{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.schedule>div,.notice{background:#f2f5f1;border-radius:8px;padding:22px}.notice{margin-top:28px}.card{padding:0;overflow:hidden}.card img{width:100%;height:320px;object-fit:cover}.card>div{padding:27px}.tablewrap{overflow-x:auto}table{width:100%;border-collapse:collapse;background:#fff;margin:20px 0}th,td{padding:14px;border-bottom:1px solid #dce4dc;text-align:left}th{background:#31553b;color:#fff}.features{display:grid;grid-template-columns:repeat(3,1fr)}.people p{padding:18px 0;border-bottom:1px solid #ddd}.formbox label{display:block;font-weight:700;margin-bottom:16px}.formbox input,.formbox textarea,.formbox select{width:100%;padding:11px;margin-top:5px;border:1px solid #bfc9c0;border-radius:5px;font:inherit}footer{background:#24372a;color:#dce5dd;padding:35px 0}.footer{display:flex;justify-content:space-between;gap:30px}.footer a{color:#dce5dd}@media(max-width:820px){.menu{display:block;border:0;background:none;font-size:1.5rem}.nav nav{display:none;position:absolute;top:76px;left:0;right:0;background:white;padding:20px 4%;flex-direction:column;border-top:1px solid #ddd}.nav nav.open{display:flex}.three,.two,.schedule{grid-template-columns:1fr}.hero{min-height:520px}.feature-img{height:300px}.footer{display:block}}@media(max-width:520px){.section,.welcome,.facebook{padding:55px 0}.hero h1,.pagehead h1{font-size:2.65rem}.card img{height:230px}}
.calendar-wrap{position:relative;width:100%;overflow:hidden;border-radius:10px;background:#fff}
.calendar-wrap iframe{display:block;width:100%;min-height:600px;border:0}
.winners iframe{min-height:520px}
.fb-embed{background:#fff;border-radius:10px;padding:18px;min-height:500px;overflow:hidden;text-align:center}
.doclinks{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}
.btn.secondary{background:#617565}.btn.disabled{opacity:.55;cursor:not-allowed}
.booking-placeholder{margin-top:28px;padding:24px;border:2px dashed #b9c7bb;border-radius:10px;background:#f8faf8}
.document-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:25px 0}
.document-grid a{padding:22px;border:1px solid #dce4dc;border-radius:9px;text-decoration:none;background:#fff}
.document-grid b,.document-grid span{display:block}.document-grid span{margin-top:8px;color:#657268}
@media(max-width:700px){.document-grid{grid-template-columns:1fr}.calendar-wrap iframe{min-height:520px}}

.google-form-wrap{width:100%;max-width:760px;margin:22px auto 0;overflow:hidden;background:#fff;border-radius:10px}.google-form-wrap iframe{display:block;width:100%;height:2167px;border:0}.booking-section{margin-top:32px}@media(max-width:700px){.google-form-wrap iframe{height:2250px}.formbox{padding:16px}}

/* Trustees */
.trustee-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:26px 0 34px}
.trustee-card{overflow:hidden;border:1px solid #dce4dc;border-radius:12px;background:#fff;box-shadow:0 4px 16px rgba(0,0,0,.06)}
.trustee-card img{display:block;width:100%;height:285px;object-fit:cover;object-position:center 20%}
.trustee-info{padding:17px 18px 19px;background:#f3f7ef;min-height:145px}
.trustee-info h3{margin:0 0 4px;font-size:1.25rem;color:#173f2a}
.trustee-info p{margin:5px 0}.trustee-info .role{font-weight:700;color:#506456}
.trustee-info a{overflow-wrap:anywhere}
@media(max-width:900px){.trustee-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.trustee-grid{grid-template-columns:1fr}.trustee-card img{height:340px}}


/* Native booking enquiry form */
.booking-form-section{margin-top:46px;padding-top:8px}
.booking-form{max-width:900px;margin-top:24px}
.booking-form fieldset{border:1px solid #dce4dc;border-radius:10px;background:#fff;padding:24px;margin:0 0 22px}
.booking-form legend{font-size:1.25rem;font-weight:800;color:#31553b;padding:0 8px}
.booking-form label,.question-label{display:block;font-weight:700;margin:0 0 17px}
.booking-form input[type="text"],.booking-form input[type="email"],.booking-form input[type="tel"],.booking-form input[type="number"],.booking-form input[type="date"],.booking-form input[type="time"],.booking-form textarea{display:block;width:100%;padding:11px 12px;margin-top:6px;border:1px solid #bfc9c0;border-radius:6px;background:#fff;color:#293a30;font:inherit}
.booking-form textarea{resize:vertical}
.form-grid{display:grid;gap:18px}.two-fields{grid-template-columns:repeat(2,1fr)}.three-fields{grid-template-columns:1.3fr 1fr 1fr}
.form-question{margin-bottom:20px}.choice-row{display:flex;gap:28px;flex-wrap:wrap}.choice-row label,.check-label{font-weight:500;margin:0}.choice-row input,.check-label input{width:auto;margin-right:7px}
.required{color:#a42b2b;font-weight:800}.booking-note{padding:18px 20px;background:#fff7df;border-left:4px solid #d7a42c;border-radius:5px}.booking-submit{font-size:1rem;cursor:pointer}.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:700px){.two-fields,.three-fields{grid-template-columns:1fr}.booking-form fieldset{padding:18px}.choice-row{gap:14px 22px}}

/* 100 Club */
.doclinks{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:18px}.results-table th,.results-table td{white-space:nowrap}.results-table .no-results td{text-align:center;color:#657268;font-style:italic;padding:24px}.results-table td:nth-child(3),.results-table td:nth-child(5),.results-table td:nth-child(7){text-align:right}

