.vtf-villages{color:#243e37;line-height:1.65;max-width:1120px!important;margin-inline:auto!important;padding-bottom:2rem}
.vtf-villages *{box-sizing:border-box}
.vtf-villages h2{font-size:clamp(1.5rem,3vw,2rem);line-height:1.2;margin:0 0 1rem}
.vtf-villages h3{font-size:1.3rem;line-height:1.25;margin:.25rem 0 .75rem}
.vtf-villages p{margin:0 0 1rem}
.vtf-villages a{color:#245b48;text-decoration:underline;text-underline-offset:.2em}
.vtf-villages a:hover{color:#102e24}
.vtf-village-lead{font-size:1.15rem;max-width:76ch}
.vtf-villages>section{margin-block:2.75rem}
.vtf-village-search{background:#edf3ec;border:1px solid #c6d5c6;border-radius:18px;padding:clamp(1.25rem,4vw,2.25rem)}
.vtf-village-fields{display:grid;grid-template-columns:minmax(0,2fr) minmax(130px,1fr);gap:1.25rem;margin:1.25rem 0}
.vtf-village-fields label{display:block;font-weight:650;margin-bottom:.4rem}
.vtf-village-fields input,.vtf-village-fields select{font:inherit;width:100%;min-height:50px;border:1px solid #758d7f;border-radius:7px;background:#fff;color:#243e37;padding:.65rem .8rem}
.vtf-village-fields small{display:block;font-size:.85rem;line-height:1.45;margin-top:.45rem;color:#445d52}
.vtf-villages button{font:inherit;font-weight:650;min-height:50px;background:#214d3d;color:#fff;border:0;border-radius:7px;padding:.75rem 1.25rem;cursor:pointer;white-space:normal}
.vtf-villages button:hover{background:#143829}
.vtf-villages :is(a,button,input,select,summary):focus-visible{outline:3px solid #a56719;outline-offset:4px}
.vtf-village-search .vtf-village-help{font-size:.9rem;margin-top:1rem;color:#445d52;max-width:80ch}
.vtf-village-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}
.vtf-village-card{border:1px solid #d7dfd6;border-radius:14px;overflow:hidden;background:#fff;display:flex;flex-direction:column;min-width:0}
.vtf-village-card>img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;display:block}
.vtf-village-card-body{padding:1.25rem;display:flex;flex-direction:column;flex:1}
.vtf-village-region{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:#526c5b;margin-bottom:.5rem!important}
.vtf-village-card-link{margin-top:auto;font-size:.9rem;font-weight:650;padding-top:.5rem}
.vtf-village-advice ol{padding-left:1.5rem}
.vtf-village-advice li{padding-left:.4rem;margin-bottom:1rem}
.vtf-village-faq details{border-bottom:1px solid #ccd8cc;padding:1rem 0}
.vtf-village-faq summary{font-weight:650;cursor:pointer;min-height:32px}
.vtf-village-faq details p{margin:1rem 0 0}
.vtf-village-alternative{background:#f0eee6;border-radius:10px;padding:1.25rem}
@media(max-width:900px){.vtf-village-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.vtf-village-fields,.vtf-village-grid{grid-template-columns:minmax(0,1fr)}.vtf-villages button{width:100%}.vtf-villages>section{margin-block:2rem}}
