:root{--paper:#f3efe6;--paper-deep:#ebe6da;--ink:#1b1814;--ink-soft:#3c372f;--muted:#746c61;--rule:#d6cfc2;--rule-strong:#c4bbad;--accent:#6b4a32;--draft:#7a5336;--danger:#6e3a30;--serif:"Newsreader", "Iowan Old Style", "Palatino Linotype", serif;--sans:"Jost", "Avenir Next", "Gill Sans", sans-serif;--max:1120px;--narrow:680px;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2.25rem;--space-7:3.5rem;--space-8:5.5rem;--header-h:4.75rem}*{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--paper);color:var(--ink);font-family:var(--sans);letter-spacing:.01em;text-rendering:optimizelegibility;font-synthesis:none;min-height:100vh;margin:0;font-size:1.02rem;font-weight:400;line-height:1.65}::selection{background:var(--paper-deep);color:var(--ink)}img{max-width:100%;display:block}a{color:inherit;text-underline-offset:.22em}a:hover{color:var(--accent)}:focus-visible{outline:1px solid var(--ink);outline-offset:3px}.skip-link{z-index:40;background:var(--ink);color:var(--paper);padding:.6rem .9rem;text-decoration:none;position:absolute;top:-4rem;left:1rem}.skip-link:focus{top:1rem}h1,h2,h3,.wordmark,.score-mark{font-family:var(--serif);letter-spacing:-.02em;text-wrap:balance;font-weight:400;line-height:1.12}h1{margin:0 0 .55em;font-size:clamp(2.35rem,5.4vw,4.15rem)}h2{margin:1.7em 0 .45em;font-size:clamp(1.55rem,2.6vw,2.05rem)}h3{margin:1.15em 0 .4em;font-size:1.35rem}p{margin:0 0 1em}.wrap{width:min(var(--max), calc(100% - 2.5rem));margin:0 auto}.narrow{width:min(var(--narrow), calc(100% - 2.5rem));margin:0 auto}.site-header{z-index:20;background:var(--paper);border-bottom:1px solid var(--rule);position:sticky;top:0}.header-inner,.footer-brand{justify-content:space-between;align-items:center;gap:var(--space-5);padding:1.1rem 0;display:flex}.wordmark{font-size:1.55rem;line-height:1.05;text-decoration:none}.wordmark:hover{color:var(--ink)}.wordmark span{font-family:var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-top:.28rem;font-size:.64rem;font-weight:400;display:block}.nav{flex-wrap:wrap;justify-content:flex-end;gap:.15rem 1.35rem;display:flex}.nav a{min-height:2.75rem;color:var(--ink-soft);letter-spacing:.06em;align-items:center;font-size:.82rem;text-decoration:none;display:inline-flex}.nav a[aria-current=page]{color:var(--ink);box-shadow:inset 0 -1px 0 var(--ink)}.nav-mobile{display:none}.nav-mobile summary{cursor:pointer;letter-spacing:.16em;text-transform:uppercase;min-height:2.75rem;color:var(--ink-soft);align-items:center;font-size:.72rem;list-style:none;display:inline-flex}.nav-mobile summary::-webkit-details-marker{display:none}.nav-mobile[open] summary{color:var(--ink)}.hero{padding:var(--space-8) 0 var(--space-6)}.hero .wrap,.hero .narrow{max-width:46rem}.hero .wrap:has(.filter-bar),.hero .wrap.hero-wide{max-width:var(--max)}.kicker{letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin:0 0 .85rem;font-size:.7rem}.lede{font-family:var(--serif);color:var(--ink-soft);max-width:38rem;font-size:clamp(1.15rem,2vw,1.38rem);line-height:1.55}.meta-row,.chip-row,.stay-meta,.listing-meta{flex-wrap:wrap;gap:.35rem .85rem;display:flex}.stay-meta,.listing-meta,.tag-line{color:var(--muted);margin:0 0 1.4rem;font-size:.86rem}.stay-meta a,.listing-meta a,.tag-line a{color:var(--ink-soft);text-decoration:none}.stay-meta a:hover,.listing-meta a:hover{color:var(--accent)}.stay-meta>:not(:first-child):before,.listing-meta>:not(:first-child):before,.tag-line>:not(:first-child):before{content:"·";color:var(--rule-strong);margin-right:.85rem}.status-draft,.status-sponsor{letter-spacing:.08em;text-transform:uppercase;font-size:.68rem}.status-draft{color:var(--draft)}.status-sponsor{color:var(--accent)}.grid{gap:1.75rem;display:grid}.grid-3{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.card,.score-card,.listing-card,.news-card,.panel,.folio-card{border:1px solid var(--rule);background:0 0;border-radius:0}.listing-card,.news-card,.folio-card{color:inherit;padding:1.85rem 1.7rem 1.95rem;text-decoration:none;display:block;overflow:hidden}.listing-card.has-photo{padding:0}.listing-card-media{aspect-ratio:4/3;background:var(--paper-deep);overflow:hidden}.listing-card-media img{object-fit:cover;width:100%;height:100%;display:block}.listing-card.has-photo .listing-card-body{padding:1.55rem 1.7rem 1.75rem}.listing-card:hover,.news-card:hover,.folio-card:hover{color:inherit;border-color:var(--rule-strong)}.listing-card-top{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.15rem;display:flex}.listing-card-top .kicker{max-width:70%;margin:0}.listing-card h3,.news-card h3,.folio-card h2{margin:0 0 .7rem}.listing-card .listing-verdict,.news-card p,.folio-card p{color:var(--ink-soft);margin:0}.listing-meta{margin:1.15rem 0 0}.folio-card{flex-direction:column;min-height:16rem;padding:2.1rem 1.8rem 2.2rem;display:flex}.folio-card .kicker{margin-bottom:1.1rem}.folio-card h2{font-size:clamp(2rem,3vw,2.6rem)}.folio-card p{max-width:28rem}.folio-meta{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-top:auto;padding-top:1.6rem;font-size:.8rem}.score-mark{color:var(--ink);margin:0;font-size:4.2rem;line-height:.85}.score-mark small{font-family:var(--sans);letter-spacing:.08em;color:var(--muted);margin-left:.2rem;font-size:.95rem}.listing-score{text-align:right;flex:none}.listing-score .score-mark{font-size:2.35rem}.listing-score .score-name{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:.35rem;font-size:.64rem;display:block}.muted{color:var(--muted)}.section{padding:.4rem 0 var(--space-8)}.section-head{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.6rem;padding-bottom:.85rem;display:flex}.section-head h2{margin:.15rem 0 0}.section-link{letter-spacing:.1em;text-transform:uppercase;min-height:2.75rem;color:var(--ink-soft);align-items:center;font-size:.78rem;text-decoration:none;display:inline-flex}.prose{font-family:var(--serif);font-size:1.16rem;line-height:1.72}.prose :where(h2,h3){font-family:var(--serif)}.prose :where(p,li){color:var(--ink-soft)}.prose :where(ul){padding-left:1.15rem}.prose a{color:var(--ink)}.score-card{padding:1.7rem 1.55rem 1.6rem}.score-card .score-title{letter-spacing:.18em;text-transform:uppercase;font-size:.68rem;font-family:var(--sans);color:var(--accent);margin:0;font-weight:400}.score-hero{border-bottom:1px solid var(--rule);margin:.85rem 0 1.35rem;padding-bottom:1.25rem}.score-caption,.score-verdict{color:var(--muted);margin:.7rem 0 0;font-size:.88rem}.score-axes{margin:0}.score-axes .axis{border-bottom:1px solid color-mix(in srgb, var(--rule) 70%, transparent);align-items:baseline;gap:.75rem;margin:0;padding:.58rem 0;font-size:.9rem;display:flex}.score-axes dt{color:var(--ink-soft);flex:0 auto;margin:0}.score-axes dd{flex:1;justify-content:flex-end;align-items:baseline;gap:.7rem;margin:0;display:flex}.score-axes dd:before{content:"";border-bottom:1px dotted var(--rule-strong);flex:1;transform:translateY(-.28em)}.score-axes strong{font-family:var(--serif);text-align:right;min-width:.8rem;font-size:1.15rem;font-weight:400}.bottom-line{border:0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);background:0 0;border-radius:0;margin:0 0 1.8rem;padding:1.45rem 0 1.5rem}.bottom-line h2{letter-spacing:.16em;text-transform:uppercase;font-size:.68rem;font-family:var(--sans);color:var(--accent);margin:0 0 .55rem;font-weight:400}.bottom-line p{font-family:var(--serif);color:var(--ink-soft);margin:0;font-size:1.28rem;line-height:1.45}.bottom-line strong{color:var(--ink);font-weight:500}.breadcrumbs{color:var(--muted);margin:0 0 1.4rem;font-size:.8rem}.breadcrumbs ol{flex-wrap:wrap;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.breadcrumbs a{text-decoration:none}.breadcrumbs li:not(:last-child):after{content:"/";color:var(--rule-strong);margin-left:.35rem}.prose dl,.narrow dl{margin:1.4rem 0 1.8rem}.prose dt,.narrow dt{font-family:var(--sans);letter-spacing:.04em;color:var(--ink);margin-top:1rem;font-size:.86rem;font-weight:500}.prose dd,.narrow dd{color:var(--muted);margin:.2rem 0 0}.note{color:var(--muted);margin:1.15rem 0 0;font-size:.84rem}.cta,.button{border:1px solid var(--ink);background:var(--ink);min-height:2.85rem;color:var(--paper);letter-spacing:.14em;text-transform:uppercase;border-radius:0;justify-content:center;align-items:center;padding:.75rem 1.2rem;font-size:.72rem;text-decoration:none;display:inline-flex}.cta:hover,.button:hover{color:var(--paper);background:var(--accent);border-color:var(--accent)}.button-ghost,.cta-empty{color:var(--muted);border-color:var(--rule);cursor:default;background:0 0}.button-ghost:hover,.cta-empty:hover{color:var(--muted);border-color:var(--rule);background:0 0}.split{gap:2.4rem;display:grid}@media (width>=960px){.split-listing{grid-template-columns:minmax(0,1.45fr) 300px;align-items:start}.sticky-aside{top:calc(var(--header-h) + 1.4rem);position:sticky}}.listing-page{padding-top:var(--space-6)}.listing-intro{padding-bottom:.4rem}.listing-body{padding-top:var(--space-6)}.listing-hero{margin:0 0 .2rem}.listing-hero-photo,.atmosphere-band img{object-fit:cover;width:100%;display:block}.listing-hero-photo{aspect-ratio:16/9;background:var(--paper-deep);max-height:min(78vh,860px)}.listing-hero-fallback{min-height:min(52vh,560px);margin:0}.image-credit{width:min(var(--max), calc(100% - 2.5rem));letter-spacing:.02em;color:var(--muted);flex-wrap:wrap;gap:.35rem .9rem;margin:.7rem auto 0;font-size:.78rem;display:flex}.image-credit a{color:var(--ink-soft);text-decoration:none}.image-credit-flag{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;font-size:.68rem}.listing-gallery{width:min(var(--max), calc(100% - 2.5rem));grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin:1.6rem auto 0;display:grid}.listing-gallery[data-count="1"]{grid-template-columns:1fr}.listing-gallery[data-count="1"] img{aspect-ratio:16/9}.listing-gallery figure{margin:0}.listing-gallery img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.listing-gallery .image-credit{width:100%;margin:.55rem 0 0}.atmosphere-band{margin:0 0 var(--space-6)}.atmosphere-band img{aspect-ratio:21/9;max-height:min(56vh,640px)}.listing-card-photo{display:none}.hero-panel{color:#f4efe6;background:linear-gradient(#1b18141f,#1b18149e),linear-gradient(135deg,#8d8578 0%,#6f675c 48%,#4d483f 100%);border-radius:0;flex-direction:column;justify-content:flex-end;min-height:260px;margin:0 0 1.5rem;padding:1.8rem 1.7rem;display:flex}.hero-panel .kicker{color:#f4efe6b8}.hero-panel strong{font-family:var(--serif);letter-spacing:-.03em;font-size:clamp(1.9rem,4vw,3rem);font-weight:400}.hero-panel span{color:#f4efe6c7}.listing-photo{aspect-ratio:16/9;object-fit:cover;width:100%;margin:0 0 1.5rem}@media (width<=720px){.listing-card.has-photo .listing-card-body{padding:1.35rem 1.2rem 1.5rem}.listing-gallery{grid-template-columns:1fr}.atmosphere-band img{aspect-ratio:16/9}}table{border-collapse:collapse;width:100%;font-size:.95rem}th,td{text-align:left;border-bottom:1px solid var(--rule);vertical-align:top;padding:1rem .7rem}th{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:.68rem;font-weight:400}td a{text-decoration:none}.rank-table .score-cell{font-family:var(--serif);font-size:1.45rem}.compare-select{gap:1rem;margin-bottom:.4rem;display:grid}.compare-select label{border:1px solid var(--rule);background:0 0;align-items:flex-start;gap:.6rem;padding:1rem 1.05rem;display:flex}.compare-select select{border:1px solid var(--rule);background:var(--paper);width:100%;color:var(--ink);font:inherit;border-radius:0;margin-top:.45rem;padding:.65rem .55rem;display:block}.compare-select .button{justify-self:start}.compare-heading{flex-wrap:wrap;align-items:baseline;gap:.65rem;margin-bottom:.85rem;display:flex}.compare-heading a{font-family:var(--serif);font-size:1.25rem;text-decoration:none}.site-footer{border-top:1px solid var(--rule);padding:var(--space-7) 0 var(--space-6);color:var(--muted);margin-top:1rem;font-size:.9rem}.footer-grid{gap:2.4rem;display:grid}@media (width>=800px){.footer-grid{grid-template-columns:minmax(0,1.4fr) auto;align-items:start}}.footer-brand-name{font-family:var(--serif);color:var(--ink);font-size:1.45rem;font-weight:400}.footer-links{flex-wrap:wrap;gap:.35rem 1.35rem;display:flex}.footer-links a{letter-spacing:.06em;align-items:center;min-height:2.75rem;font-size:.8rem;text-decoration:none;display:inline-flex}.empty{border:0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);background:0 0;padding:2.4rem 0}.empty-title{font-family:var(--serif);color:var(--ink);margin:0 0 .45rem;font-size:1.55rem}.empty-note{color:var(--muted);max-width:34rem;margin:0}.draft-banner{border:0;border-left:1px solid var(--draft);color:var(--draft);background:0 0;border-radius:0;margin-bottom:1.3rem;padding:.15rem 0 .15rem .9rem;font-size:.9rem}.filter-bar{border-top:1px solid var(--rule);flex-wrap:wrap;gap:.2rem 1.15rem;margin:1.6rem 0 0;padding-top:1.2rem;display:flex}.filter-bar a{min-height:2.75rem;color:var(--ink-soft);align-items:center;font-size:.84rem;text-decoration:none;display:inline-flex}.filter-bar a:hover,.filter-bar a[aria-current=page]{color:var(--ink)}.faq{border-bottom:1px solid var(--rule);padding:1.3rem 0}.faq:first-of-type{border-top:1px solid var(--rule)}.faq h3{margin:0 0 .45rem;font-size:1.2rem}.faq p{margin:0}.related-stays{border-top:1px solid var(--rule);margin-top:2.2rem;padding-top:1.4rem}.related-stays h2{margin-top:0}.related-stays ul{padding-left:1.1rem}.rates-panel{margin-top:1.15rem;padding:1.4rem 1.35rem 1.3rem}.rates-panel h3{margin:.15rem 0 .85rem;font-size:1.15rem}@media (width<=860px){.nav-desktop{display:none}.nav-mobile{display:block;position:relative}.nav-mobile[open] .nav{background:var(--paper);border:1px solid var(--rule);flex-direction:column;gap:0;min-width:14.5rem;padding:.55rem 1rem .7rem;position:absolute;top:calc(100% + .55rem);right:0}.header-inner{align-items:center}}@media (width<=720px){.wrap,.narrow{width:min(var(--max), calc(100% - 1.6rem))}.hero{padding:var(--space-7) 0 var(--space-5)}.listing-card,.news-card,.folio-card{padding:1.5rem 1.2rem 1.55rem}.score-mark{font-size:3.4rem}.bottom-line p{font-size:1.16rem}}
