.stays-page { background:#fff; color:#202326; }
.stays-header { padding:56px 0 38px; background:#f3f5f2; border-bottom:1px solid #dfe3de; }
.stays-breadcrumb { display:flex; gap:9px; color:#697168; font-size:13px; margin-bottom:28px; }
.stays-breadcrumb a { color:#2f6541; }
.stays-heading { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr); gap:48px; align-items:end; }
.stays-kicker { display:block; color:#a52d27; font-size:12px; font-weight:800; text-transform:uppercase; margin-bottom:10px; }
.stays-heading h1 { max-width:760px; margin:0; font-size:clamp(34px,5vw,56px); line-height:1.06; letter-spacing:0; }
.stays-heading p { margin:0; color:#5e665f; font-size:17px; line-height:1.7; }
.stays-results { padding:36px 0 72px; }
.stays-disclosure { padding:14px 16px; border-left:4px solid #d3a52d; background:#fff8df; color:#62531e; line-height:1.6; margin-bottom:24px; }
.stays-toolbar { display:grid; grid-template-columns:minmax(220px,1fr) 220px auto; gap:12px; align-items:end; padding-bottom:24px; border-bottom:1px solid #e1e4e1; }
.stays-toolbar label { display:grid; gap:7px; color:#424842; font-size:13px; font-weight:700; }
.stays-toolbar input,.stays-toolbar select { min-height:46px; border:1px solid #bfc5bf; border-radius:5px; background:#fff; padding:0 12px; color:#202326; font:inherit; }
.stays-toolbar button { min-height:46px; border:0; border-radius:5px; background:#2f6541; color:#fff; padding:0 20px; font-weight:800; cursor:pointer; }
.stays-result-head { display:flex; align-items:center; justify-content:space-between; gap:20px; margin:28px 0 18px; }
.stays-result-head h2 { margin:0; font-size:22px; }
.stays-result-head a { color:#a52d27; font-weight:700; }
.stays-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.stay-card { display:flex; flex-direction:column; border:1px solid #dfe3df; border-radius:8px; overflow:hidden; background:#fff; }
.stay-card>img { width:100%; aspect-ratio:16/10; object-fit:cover; background:#e8ebe8; }
.stay-card-body { display:flex; flex:1; flex-direction:column; align-items:flex-start; padding:19px; }
.stay-location { color:#2f6541; font-size:12px; font-weight:800; text-transform:uppercase; }
.stay-card h2 { margin:8px 0 10px; font-size:19px; line-height:1.35; }
.stay-card p { margin:0 0 18px; color:#666e67; line-height:1.6; font-size:14px; }
.stay-card a { display:flex; min-height:43px; align-items:center; justify-content:center; width:100%; margin-top:auto; border-radius:5px; background:#202326; color:#fff; text-decoration:none; font-weight:800; text-align:center; }
.stays-pagination { margin-top:28px; }
.stays-empty { padding:52px 0; text-align:center; }
.stays-guide { padding:68px 0; background:#202326; color:#fff; }
.stays-guide-heading { max-width:720px; margin-bottom:28px; }
.stays-guide-heading h2 { color:#fff; margin:0 0 10px; font-size:34px; letter-spacing:0; }
.stays-guide-heading p { color:#cbd0cb; line-height:1.7; }
.stays-guide-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid #555b56; border-left:1px solid #555b56; }
.stays-guide-grid>div { padding:24px; border-right:1px solid #555b56; border-bottom:1px solid #555b56; }
.stays-guide-grid h3 { color:#fff; margin:0 0 9px; font-size:19px; }
.stays-guide-grid p { color:#cbd0cb; margin:0; line-height:1.65; }
.stays-guide-link { display:inline-flex; margin-top:24px; color:#fff; font-weight:800; text-decoration:underline; text-underline-offset:4px; }
.stays-faq { padding:64px 0 80px; }
.stays-faq .container { max-width:900px; }
.stays-faq h2 { margin:0 0 20px; font-size:30px; letter-spacing:0; }
.stays-faq details { border-top:1px solid #dfe3df; padding:17px 0; }
.stays-faq details:last-child { border-bottom:1px solid #dfe3df; }
.stays-faq summary { cursor:pointer; font-weight:800; }
.stays-faq details p { color:#606861; line-height:1.7; margin:12px 0 0; }
@media (max-width:900px) { .stays-heading { grid-template-columns:1fr; gap:18px; } .stays-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .stays-guide-grid { grid-template-columns:1fr; } }
@media (max-width:640px) { .stays-header { padding-top:36px; } .stays-toolbar { grid-template-columns:1fr; } .stays-grid { grid-template-columns:1fr; } .stays-result-head { align-items:flex-start; flex-direction:column; } }
