/* /stays/ hub and destination stay hubs. Builds on themes.css (th-*), packages.css and the leads form styles (ktp-lf__*). */
.st [hidden]{display:none!important}
.th-h3{font:600 20px/1.3 Fraunces,Georgia,serif;margin:22px 0 8px}
.th-hero__media{margin:0}
.st-types,.st-loc,.st-needs{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
.st-type,.st-loc>li,.st-needs>li{background:#fff;border:1px solid var(--bd);border-radius:14px;padding:16px 18px}
.st-type h3,.st-loc h3,.st-needs h3{font:600 18px/1.3 Fraunces,Georgia,serif;margin:0 0 6px}
.st-type p,.st-loc p,.st-needs p{margin:0 0 8px;font-size:15.5px;line-height:1.6;color:#4A4744}
.st-type__l{margin:0!important}
.st-loc{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.st-cats{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:10px 0 0}
.st-cats li{border:1px solid var(--bd);background:#fff;border-radius:999px;padding:6px 14px;font-weight:600;font-size:14px}
.st-table td,.st-table tbody th{vertical-align:top}
.st-table{min-width:640px}
.st-two{columns:2;column-gap:32px}
.st-two li{break-inside:avoid}
.st-months{list-style:none;display:flex;flex-wrap:wrap;gap:8px 18px;padding:0;margin:8px 0 0}
.st-pk{list-style:none;margin:14px 0 6px;padding:0;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(290px,1fr))}
.st-pk__i{display:flex;flex-direction:column;gap:4px;background:#fff;border:1px solid var(--bd);border-radius:14px;padding:14px 16px}
.st-pk__t{font:600 18px/1.3 Fraunces,Georgia,serif;color:var(--ink);text-decoration:none}
.st-pk__t:hover{color:var(--r)}
.st-pk__m{font-size:13.5px;color:var(--mut)}
.st-pk__a{font-size:14.5px;font-weight:600}
.st-pk__c{font-size:14px;line-height:1.5;color:#4A4744}
.st-pk__go{margin-top:6px;text-decoration:underline}
/* enquiry */
.st-enq{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:32px;align-items:start}
.st-enq p{color:#E8EFEA;font-size:16px;line-height:1.6;margin:0 0 12px}
.st-enq__note{font-weight:600;color:#fff!important}
.st-form{background:#fff;color:var(--ink);border-radius:16px;padding:20px 22px}
.st-form .ktp-lf__row{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}
.st-form .ktp-lf__field{margin:0 0 14px}
.st-form .ktp-lf__field label,.st-form legend{color:var(--ink)}
.st-form input[type=text],.st-form input[type=tel],.st-form input[type=number],.st-form input[type=date],.st-form select,.st-form textarea{width:100%;min-height:46px;border:1px solid #8a8580;border-radius:10px;padding:8px 12px;font:500 16px Inter,system-ui,sans-serif;background:#fff;color:var(--ink)}
.st-form textarea{min-height:96px}
.st-form .ktp-lf__chips{border:0;padding:0;margin:0 0 14px}
.st-form .ktp-lf__chips legend{font-size:14px;font-weight:600;padding:0;margin:0 0 6px}
.st-form .ktp-lf__chips>div{display:flex;flex-wrap:wrap;gap:8px}
.st-form .ktp-lf__chip{display:inline-flex}
.st-form .ktp-lf__chip input{position:absolute;opacity:0;width:1px;height:1px}
.st-form .ktp-lf__chip span{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border:1px solid #8a8580;border-radius:999px;font-size:14.5px;cursor:pointer;background:#fff}
.st-form .ktp-lf__chip input:checked+span{background:var(--pine);border-color:var(--pine);color:#fff}
.st-form .ktp-lf__chip input:focus-visible+span{outline:2px solid var(--gold);outline-offset:2px}
.st-form .ktp-lf__hint{display:block;font-size:13px;color:#5b5752;margin-top:3px}
.st-form .ktp-lf__err{display:block;color:#a12a1a;font-size:13.5px;margin-top:3px}
.st-form .ktp-lf__formerr{color:#a12a1a;font-weight:600;margin:10px 0 0}
.st-form .ktp-lf__consent{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.5}
.st-form .ktp-lf__consent input{width:20px;height:20px;margin-top:2px;flex:none}
.st-form .ktp-btn{min-height:48px;width:100%}
.st-form .ktp-lf__done{padding:6px 0}
.st-form .ktp-lf__done h3{font:600 22px Fraunces,Georgia,serif;margin:0 0 8px;color:var(--ink)}
.st-form .ktp-lf__done p{color:#4A4744}
.st-ref{display:inline-block;font:700 18px Inter,sans-serif;background:var(--sand);border-radius:8px;padding:4px 12px;margin:0 0 10px}
@media (max-width:899px){.st-enq{grid-template-columns:1fr}.st-two{columns:1}}
@media (max-width:759px){.st-form{padding:16px 14px;border-radius:12px}}
/* No prices on stay pages, so the floating currency chip is hidden here (it would only cover content). */
.ktp-cur{display:none!important}
