/* Scoped lodging catalog. Uses the established RiverBarn palette and typefaces. */
.entry-content > .rb-stays { max-width:none; margin:0; }
.rb-stays { --stay-sans:Arial,Helvetica,sans-serif; }
.rb-stays [hidden] { display:none !important; }
.rb-stays button { cursor:pointer; }
.rb-stay-directory { padding-top:32px; padding-bottom:44px; scroll-margin-top:110px; }
.entry-content .rb-stays .rb-stay-page-heading h1 { font-size:clamp(34px,4vw,46px); font-weight:400; line-height:1.15; letter-spacing:-.02em; margin:0 0 8px; color:var(--rb-forest); }
.rb-stay-page-heading { margin-bottom:22px; }
.rb-stay-page-heading p { margin:0; color:#5b5f55; font-size:17px; }
.rb-stay-search { display:flex; align-items:center; gap:14px; background:var(--rb-white); border:1px solid var(--rb-border); padding:10px 14px 10px 18px; }
.rb-stay-search-main { flex:1; min-width:0; }
.rb-stay-search label { display:block; font:600 11px/1.6 var(--stay-sans); letter-spacing:.04em; text-transform:uppercase; }
.rb-stay-search input { width:100%; min-height:32px; padding:5px 0; color:var(--rb-ink); border:0; background:transparent; font:15px var(--stay-sans); }
.rb-stay-search input::placeholder { color:#666a60; opacity:1; }
.rb-stay-search-button { min-height:44px; border:1px solid var(--rb-forest); padding:8px 24px; background:var(--rb-paper); color:var(--rb-forest); font:14px var(--stay-sans); }
.rb-stay-search-button:hover { background:var(--rb-cream); }
.rb-stay-filter-panel { margin-top:10px; border-bottom:1px solid var(--rb-border); font:14px/1.5 var(--stay-sans); }
.rb-stay-filter-panel summary { width:fit-content; cursor:pointer; padding:12px 0; min-height:44px; color:var(--rb-forest); }
.rb-stay-filter-fields { display:flex; flex-wrap:wrap; gap:16px; padding:10px 0; }
.rb-stay-filter-fields>div { flex:1 1 180px; }
.rb-stay-filter-fields label { display:block; margin-bottom:7px; font-weight:600; }
.rb-stay-filter-fields select { width:100%; background:var(--rb-white); border:1px solid var(--rb-border); padding:10px 12px; min-height:44px; color:var(--rb-ink); font:14px var(--stay-sans); }
.rb-stays .rb-stay-small { color:#5b5f55; font:13px/1.6 var(--stay-sans); }
.rb-stay-filter-panel>.rb-stay-small { margin:4px 0 16px; }
.rb-stay-toolbar { display:flex; justify-content:space-between; align-items:center; gap:16px; margin:16px 0; font:13px var(--stay-sans); }
.rb-stay-toolbar>div:first-child { display:flex; align-items:center; gap:14px; }
.rb-stay-toolbar p { margin:0; color:#5b5f55; }
.rb-stay-toolbar button,.rb-stay-comparison button { background:transparent; color:var(--rb-forest); border:0; font:13px var(--stay-sans); padding:10px; min-height:40px; }
.rb-stay-toolbar [data-stay-reset] { text-decoration:underline; }
.rb-stay-view { display:flex; border:1px solid var(--rb-border); }
.rb-stay-view button { min-width:48px; }
.rb-stay-view button[aria-pressed=true] { background:var(--rb-cream); color:var(--rb-forest); box-shadow:inset 0 -2px var(--rb-forest); }
.rb-stay-results { display:grid; gap:18px; }
.rb-stay-card { display:grid; grid-template-columns:240px minmax(0,1fr); min-width:0; border:1px solid var(--rb-border); background:var(--rb-white); }
.rb-stay-photo { display:flex; min-height:190px; overflow:hidden; background:#eee9df; color:var(--rb-olive); text-decoration:none; }
.rb-stay-photo img { width:100%; height:100%; min-height:190px; object-fit:cover; }
.rb-stay-placeholder { display:flex; align-items:center; justify-content:center; flex-direction:column; gap:12px; width:100%; padding:22px; background:linear-gradient(150deg,#f0ede5,#e6dfd2); }
.rb-stay-placeholder small { font:12px var(--stay-sans); }
.rb-stay-card-content { padding:21px 26px; min-width:0; }
.rb-stay-card .rb-eyebrow { font-size:10px; margin:0; }
.entry-content .rb-stays .rb-stay-card h2 { font-size:28px; line-height:1.2; font-weight:400; margin:4px 0 9px; }
.rb-stay-card h2 a { color:var(--rb-forest); text-decoration:none; }
.rb-stay-card h2 a:hover { text-decoration:underline; }
.rb-stay-address { font:13px/1.6 var(--stay-sans); color:#5b5f55; margin:0 0 10px; }
.rb-stay-summary { font-size:16px; line-height:1.55; margin:10px 0; max-width:640px; }
.rb-stay-facts { display:flex; flex-wrap:wrap; gap:16px; padding:0; margin:14px 0; list-style:none; font:14px var(--stay-sans); }
.rb-stay-chips { display:flex; flex-wrap:wrap; gap:6px; list-style:none; padding:0; margin:12px 0; }
.rb-stay-chips li { background:var(--rb-cream); padding:5px 9px; font:12px var(--stay-sans); }
.rb-stay-card-actions { display:flex; align-items:center; flex-wrap:wrap; gap:8px 24px; margin-top:12px; }
.rb-stay-card-actions>a { display:inline-flex; align-items:center; min-height:40px; font:14px var(--stay-sans); }
.rb-stay-detail-link { gap:12px; font-weight:600 !important; color:var(--rb-forest); text-decoration:none; }
.rb-stay-detail-link:hover { text-decoration:underline; }
.rb-stay-inquiry-link { color:var(--rb-burgundy); text-decoration:underline; text-underline-offset:4px; }
.rb-stay-compare-control { display:flex; align-items:center; gap:6px; font:12px var(--stay-sans); color:#5b5f55; min-height:40px; margin-left:auto; cursor:pointer; }
.rb-stay-compare-control input { width:16px; height:16px; accent-color:var(--rb-forest); }
.rb-stay-results[data-layout=grid] { grid-template-columns:repeat(3,minmax(0,1fr)); }
.rb-stay-results[data-layout=grid] .rb-stay-card { display:flex; flex-direction:column; }
.rb-stay-results[data-layout=grid] .rb-stay-photo { height:190px; }
.rb-stay-results[data-layout=grid] .rb-stay-card-content { flex:1; display:flex; flex-direction:column; padding:21px; }
.rb-stay-results[data-layout=grid] .rb-stay-card-actions { margin-top:auto; padding-top:8px; gap:4px 18px; }
.rb-stay-results[data-layout=grid] .rb-stay-compare-control { margin-left:0; }
.rb-stay-empty { background:var(--rb-cream); border:1px solid var(--rb-border); padding:30px; text-align:center; }
.entry-content .rb-stays .rb-stay-empty h3 { margin:0; font-size:28px; font-weight:400; }
.rb-stay-section-heading { display:flex; justify-content:space-between; align-items:center; gap:20px; }
.entry-content .rb-stays .rb-stay-comparison h2 { font-size:28px; line-height:1.25; font-weight:400; margin:0; }
.rb-stay-comparison { margin-top:26px; padding:24px; border:1px solid var(--rb-border); background:var(--rb-cream); scroll-margin-top:110px; }
.rb-stay-table-wrap { overflow-x:auto; }
.rb-stay-comparison table { border-collapse:collapse; width:100%; min-width:520px; text-align:left; font:14px/1.5 var(--stay-sans); }
.rb-stay-comparison th,.rb-stay-comparison td { vertical-align:top; padding:14px 12px; border-bottom:1px solid var(--rb-border); min-width:120px; }
.rb-stay-comparison thead th { font:22px Georgia,serif; }
.rb-stay-compare-status { font:13px var(--stay-sans); }
.rb-stay-tray { position:sticky; bottom:12px; z-index:20; margin:20px auto 0; width:fit-content; max-width:100%; padding:12px 20px; background:var(--rb-forest); color:white; display:flex; align-items:center; gap:24px; font:13px var(--stay-sans); box-shadow:var(--rb-shadow); }
.rb-stay-tray a { color:white; padding:6px 0; }
.rb-stay-next { padding:38px 0; background:var(--rb-cream); border-top:1px solid var(--rb-border); }
.rb-stay-next-grid { display:grid; grid-template-columns:1fr 1fr; gap:64px; }
.entry-content .rb-stays .rb-stay-next h2 { font-size:30px; line-height:1.2; font-weight:400; margin:0 0 16px; }
.rb-stay-next p { font-size:17px; margin:0 0 18px; }
.rb-stay-next .rb-button { padding:12px 20px; font-size:11px; }
.rb-stay-call { display:inline-flex; padding:10px 0; margin-left:15px; font:14px var(--stay-sans); }
.rb-stay-next .rb-stay-small { margin:18px 0 0; }
.entry-content .rb-stays .rb-stay-faq h2 { font-size:25px; }
.rb-stay-faq details { border-bottom:1px solid var(--rb-border); }
.rb-stay-faq summary { cursor:pointer; padding:14px 0; font-size:17px; }
.rb-stay-faq details p { font-size:16px; line-height:1.6; margin:0 0 16px; }
.rb-stay-single-contact { display:block; margin:16px 0; font-size:22px; }
@media(max-width:1000px) { .rb-stay-results[data-layout=grid] { grid-template-columns:repeat(2,minmax(0,1fr)); } .rb-stay-card { grid-template-columns:210px minmax(0,1fr); } .rb-stay-next-grid { gap:32px; } }
@media(max-width:700px) { .rb-stay-directory { padding-top:24px; } .rb-stay-page-heading { margin-bottom:18px; } .rb-stay-card { grid-template-columns:1fr; } .rb-stay-results[data-layout=grid] { grid-template-columns:1fr; } .rb-stay-photo { height:185px; min-height:185px; } .rb-stay-photo img { min-height:185px; } .rb-stay-card-content { padding:20px; } .rb-stay-card-actions { gap:4px 18px; } .rb-stay-compare-control { margin-left:0; } .rb-stay-next-grid { grid-template-columns:1fr; gap:30px; } .rb-stay-search { padding:10px 12px; gap:8px; } .rb-stay-search-button { padding:8px 16px; } .rb-stay-search input { font-size:16px; } .rb-stay-search input::placeholder { font-size:13px; } .rb-stay-filter-fields { gap:12px; } .rb-stay-filter-fields>div { flex-basis:130px; } .rb-stay-filter-panel summary { max-width:100%; } .rb-stay-call { display:flex; margin:6px 0 0; } .rb-stay-comparison { padding:18px 10px; } .rb-stay-section-heading { flex-direction:column; align-items:flex-start; gap:8px; } }

@media(max-width:700px) { .rb-stay-card.is-without-photo .rb-stay-photo { height:72px; min-height:72px; } .rb-stay-card.is-without-photo .rb-stay-placeholder { flex-direction:row; gap:12px; padding:12px; } .rb-stay-card.is-without-photo .rb-stay-placeholder svg { width:30px; height:28px; } }
/* Cabin actions: clear button shapes, readable labels, and comfortable targets. */
.rb-stay-card-actions { gap:12px; }
.entry-content .rb-stays .rb-stay-card-actions > a { justify-content:center; min-height:46px; padding:11px 20px; border:1px solid var(--rb-forest); border-radius:var(--rb-radius); font:600 15px/1.4 var(--stay-sans); text-align:center; text-decoration:none; }
.entry-content .rb-stays .rb-stay-card-actions > .rb-stay-detail-link { background:var(--rb-forest); color:var(--rb-white); }
.entry-content .rb-stays .rb-stay-card-actions > .rb-stay-detail-link:hover { background:var(--rb-ink); border-color:var(--rb-ink); color:var(--rb-white); text-decoration:none; }
.entry-content .rb-stays .rb-stay-card-actions > .rb-stay-inquiry-link { background:var(--rb-paper); color:var(--rb-burgundy); border-color:var(--rb-burgundy); }
.entry-content .rb-stays .rb-stay-card-actions > .rb-stay-inquiry-link:hover { background:var(--rb-cream); color:var(--rb-burgundy); text-decoration:none; }
.rb-stay-results[data-layout=grid] .rb-stay-card-actions { gap:10px; }
.rb-stay-results[data-layout=grid] .rb-stay-card-actions > a { flex:1 1 100%; }
@media(max-width:700px) { .rb-stay-card-actions > a { flex:1 1 100%; } .rb-stay-card-actions .rb-stay-compare-control { margin-top:2px; } }
