/* Isolated styles: does not overwrite existing Le Pouzat site components. */
.stay-search-wrap{padding-bottom:3rem}
.stay-search-panel{background:#f4f1e9;border:1px solid #ddd8c9;border-radius:18px;padding:clamp(1.2rem,3vw,2.3rem);margin:1.5rem 0 1.8rem}
.stay-search-panel h2{margin:.2rem 0 1rem}
.stay-search-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:12px;align-items:end}
.stay-search-form label{font-weight:600;font-size:.85rem;display:grid;gap:.4rem;color:#243a2e}
.stay-search-form input,.stay-search-form select{box-sizing:border-box;width:100%;min-height:49px;padding:.75rem .85rem;font:inherit;color:#243a2e;background:#fff;border:1px solid #c3c8bc;border-radius:9px}
.stay-search-form button{min-height:49px;white-space:nowrap;cursor:pointer}
.stay-search-form button:disabled{opacity:.6;cursor:wait}
.stay-search-note{font-size:.9rem;line-height:1.55;color:#54675a;margin-top:1rem}
.stay-feedback{min-height:1.5em;line-height:1.6;margin:1.2rem 0;color:#415548}
.stay-results{display:grid;gap:16px}
.stay-result{display:grid;grid-template-columns:minmax(0,1fr) minmax(245px,.85fr);gap:24px;padding:clamp(1.1rem,2.5vw,2rem);background:#fff;border:1px solid #deded4;border-radius:16px}
.stay-result h3{margin:.4rem 0 .8rem}.stay-result p{line-height:1.55;margin:.3rem 0;color:#536259}
.stay-result__side{border-left:1px solid #e1e1d9;padding-left:22px;display:flex;flex-direction:column;align-items:flex-start;gap:.45rem}
.stay-result__side .button{margin-top:auto}
.stay-state{display:inline-block;background:#edf1e9;color:#244332;border-radius:99px;padding:.4rem .8rem;font-weight:700;font-size:.8rem}
.stay-result--busy .stay-state{background:#f5e4de;color:#813e32}
.stay-result--error .stay-state,.stay-result--capacity .stay-state{background:#eeeae3;color:#625a50}
@media(max-width:860px){.stay-search-form{grid-template-columns:repeat(2,minmax(0,1fr))}.stay-search-form button{grid-column:1/-1}}
@media(max-width:620px){.stay-search-form,.stay-result{grid-template-columns:1fr}.stay-result__side{padding:12px 0 0;border-left:0;border-top:1px solid #e1e1d9}.stay-result__side .button{margin-top:6px}}

/* Responsive, accessible search feedback — no artificial loading delay. */
.stay-search-submit{display:inline-flex;align-items:center;justify-content:center;gap:.65rem;transition:background-color .2s ease,box-shadow .2s ease}
.stay-search-submit__spinner{display:none;width:17px;height:17px;flex:none;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:stay-spin .65s linear infinite}
.stay-search-submit.is-loading .stay-search-submit__spinner{display:inline-block}
.stay-search-submit.is-complete{box-shadow:0 0 0 3px rgba(64,119,74,.15)}
.stay-results.is-updated .stay-result{animation:stay-appear .28s ease-out both}
.stay-feedback.is-loading::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:#557960;margin-right:9px;vertical-align:middle}
@keyframes stay-spin{to{transform:rotate(360deg)}}
@keyframes stay-appear{from{opacity:.45;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.stay-search-submit__spinner{animation-duration:1.8s}.stay-results.is-updated .stay-result{animation:none}}


/* V4: photography-led search results and alternative-week controls */
.stay-result{
  grid-template-columns:minmax(145px,215px) minmax(0,1fr) minmax(250px,.95fr);
  gap:clamp(14px,2vw,24px);align-items:stretch;
}
.stay-result__photo{display:block;align-self:stretch;min-height:180px;overflow:hidden;border-radius:12px;background:#e9e8de}
.stay-result__photo img{display:block;width:100%;height:100%;min-height:180px;object-fit:cover;transition:transform .3s ease}
.stay-result__photo:hover img{transform:scale(1.025)}
.stay-result__main{min-width:0}
.stay-result__main .eyebrow{font-size:.7rem;letter-spacing:.07em}
.stay-result__main h3{font-size:clamp(1.35rem,2vw,1.75rem)}
.stay-result__textlink{display:inline-block;margin-top:.9rem;color:#28533a;font-size:.9rem;text-decoration:underline;text-underline-offset:3px}
.stay-result__side{min-width:0;padding-left:clamp(14px,2vw,22px)}
.stay-result__side p{font-size:.91rem}
.stay-result__blocked-dates{margin:.55rem 0;padding-left:0;list-style:none}
.stay-result__blocked-dates li{padding:.35rem .55rem;border-radius:7px;background:#fbf0ed;font-weight:600;color:#774437;font-size:.89rem}
.stay-result__blocked-dates li+li{margin-top:5px}
.stay-result__blocked-dates small{font-weight:400;color:#695e58}
.stay-shift-button,.stay-week-tools button{background:transparent;border:1px solid #aab8aa;color:#244332;border-radius:8px;padding:.55rem .75rem;font:inherit;font-size:.85rem;cursor:pointer}
.stay-shift-button:hover,.stay-week-tools button:hover:not(:disabled){background:#edf2eb}
.stay-week-tools button:disabled{opacity:.45;cursor:not-allowed}
.stay-results-summary{padding:0 0 .85rem;font-weight:600;color:#2e4b37;font-size:.97rem}
.stay-week-tools{display:flex;align-items:center;flex-wrap:wrap;gap:.65rem;margin-top:1.2rem;padding:.9rem 0;border-top:1px solid #e2e4da}
.stay-week-tools span{color:#52665a;font-weight:600;font-size:.88rem;margin-right:.3rem}
.stay-week-tools[hidden],.stay-results-summary[hidden]{display:none}
@media(max-width:1000px){.stay-result{grid-template-columns:170px minmax(0,1fr)}.stay-result__side{grid-column:1/-1;border-left:0;border-top:1px solid #e1e1d9;padding:14px 0 0}.stay-result__side .button{margin-top:.45rem}}
@media(max-width:620px){.stay-result{grid-template-columns:1fr}.stay-result__photo{min-height:195px;max-height:240px}.stay-result__photo img{min-height:195px}.stay-result__side{grid-column:auto}}
@media(prefers-reduced-motion:reduce){.stay-result__photo img{transition:none}}

/* Enquiry action for every result */
.stay-result__side .button{max-width:100%;text-align:center}
