/* Quiet local-guide typography, with the actual decision in the first screen. */
:root{--ink:#222d2b;--muted:#626b65;--paper:#fffefa;--bg:#f6f4ed;--line:#dadfd5;--accent:#9c4530;--pine:#263f36;--sans:"Avenir Next","Segoe UI",system-ui,sans-serif;--display:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;--page-max:1120px}
*{box-sizing:border-box}html{background:var(--bg);color-scheme:light;scroll-behavior:auto}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 var(--sans);letter-spacing:-.012em;min-height:100dvh}body::before{display:none}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:inherit;text-underline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #b65538;outline-offset:4px}svg{flex-shrink:0;vertical-align:middle}[hidden]{display:none!important}h1,h2,h3,p{margin:0}h1,h2,h3{text-wrap:pretty}p{text-wrap:pretty}.page{max-width:1120px;width:100%;margin:0 auto;padding:0 36px;animation:none;border:0;box-shadow:none;border-radius:0;background:none}.skip{position:absolute;left:-9999px;top:0;z-index:100;background:var(--pine);color:white;padding:12px}.skip:focus{left:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.nightly-header{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:102px;border-bottom:1px solid var(--line)}.nightly-brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:23px;line-height:1.2;font-weight:720;letter-spacing:-1.1px}.brand-light{font-weight:400}.nightly-brand small{display:block;font:600 10px/1.5 var(--sans);letter-spacing:1.5px;margin-top:6px;color:var(--muted)}.brand-mark{border:1px solid #9aa598;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;font:italic 26px var(--display);letter-spacing:-7px;padding-right:7px;transform:rotate(-12deg)}.brand-mark span{margin-top:6px}.nightly-header nav{display:flex;gap:26px}.nightly-header nav a{text-decoration:none;font-size:14px;color:var(--muted);padding:14px 0;border-bottom:2px solid transparent}.nightly-header nav a[aria-current=page]{color:var(--ink);border-color:var(--accent);font-weight:650}.intro{padding:34px 0 25px}.overline{color:var(--accent);font-size:12px;font-weight:700;letter-spacing:1.4px}.intro h1,.place-header h1,.plan-intro h1{font:normal clamp(30px,3.3vw,43px)/1.12 var(--display);letter-spacing:-1.4px;margin:10px 0}.intro>p:last-child,.plan-intro>p:last-child{color:var(--muted);font-size:16px}.occasion-options{display:flex;gap:6px;border-bottom:1px solid var(--line);padding-bottom:13px}.occasion-options button{min-height:44px;border:1px solid transparent;padding:9px 18px;background:transparent;border-radius:6px;font-size:15px;color:var(--muted);white-space:nowrap}.occasion-options button:hover{background:#ebece3}.occasion-options button[aria-pressed=true]{color:#fff;background:var(--pine);font-weight:600}.choice-controls{display:flex;align-items:center;gap:30px;min-height:83px;border-bottom:1px solid var(--line)}.choice-field{display:flex;align-items:center;gap:9px;font-size:14px;min-width:0}.choice-field>span{color:var(--muted);white-space:nowrap}.choice-field select{min-width:0;max-width:230px;font-size:15px;font-weight:600;border:0;background:transparent;padding:12px 22px 12px 4px;min-height:44px;cursor:pointer}.filter-toggle{margin-left:auto;border:0;background:none;display:flex;gap:8px;align-items:center;font-size:14px;min-height:44px;padding:8px}.more-choices{padding:22px;background:#eaece4;border-radius:0 0 8px 8px}.filter-fields{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.filter-fields .choice-field{display:block}.filter-fields .choice-field>span{display:block;margin-bottom:4px;white-space:normal}.filter-fields select{background:var(--paper);border:1px solid #d1d7cc;width:100%;max-width:none;border-radius:5px;font-size:14px;padding:10px}.note,.fine{font-size:14px;line-height:1.6;color:var(--muted);margin:12px 0}.choices-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:24px 0 16px}.choices-heading h2{font-size:18px;font-weight:650;letter-spacing:-.3px}.choices-heading p{font-size:13px;color:var(--muted);margin-top:3px}.quiet-link{display:inline-flex;align-items:center;justify-content:flex-start;gap:7px;background:none;border:0;padding:9px 0;min-height:44px;color:inherit;text-decoration:underline;text-decoration-color:#aab4a8;font-size:14px;font-weight:600;line-height:1.45}.quiet-link:hover{text-decoration-color:currentColor}.choices-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:16px}.night-card{background:var(--paper);border:1px solid var(--line);border-radius:9px;padding:23px 25px;display:flex;flex-direction:column;min-width:0;position:relative}.night-card.featured{grid-row:span 2;background:var(--pine);color:#fbfcf2;border-color:var(--pine);padding:30px;box-shadow:0 8px 20px #2235290d}.card-kicker{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;font-weight:600;line-height:1.4;color:var(--muted)}.card-kicker>span:first-child{letter-spacing:1.1px;color:var(--accent);flex-shrink:0}.card-kicker>span:last-child{text-align:right}.featured .card-kicker{color:#ced6c5}.featured .card-kicker>span:first-child{color:#f0c89c}.night-card h2,.night-card h3{font:normal 27px/1.15 var(--display);letter-spacing:-.6px;margin:13px 0 9px}.night-card.featured h2{font-size:39px;letter-spacing:-1px;margin-top:32px;max-width:400px}.night-card h2 a,.night-card h3 a{text-decoration:none}.night-card h2 a:hover,.night-card h3 a:hover{text-decoration:underline;text-decoration-thickness:1px}.place-line{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--muted);flex-wrap:wrap}.place-line svg{width:15px;height:15px}.featured .place-line{color:#d0d8cd}.choice-reason{margin:13px 0 8px;font-size:16px;line-height:1.55}.choice-description{margin-top:12px;color:#d0d8cd;font-size:15px;line-height:1.65;max-width:390px}.price-line{font-size:13px;color:var(--muted);margin:6px 0 8px}.featured .price-line{margin-top:24px;color:#e5dbc3;border-top:1px solid #516456;padding-top:16px}.card-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:auto;padding-top:12px}.featured .card-actions{padding-top:25px}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;font-size:14px;font-weight:650;line-height:1.4;min-height:46px;padding:12px 18px;border:1px solid var(--line);border-radius:5px;transition:background .15s,color .15s}.button.primary{background:var(--pine);border-color:var(--pine);color:#fff}.button.primary:hover{background:#18352a}.button.secondary{background:var(--paper);color:var(--ink);border-color:#c6cebf}.button.secondary:hover{background:#e9ede2}.featured .button.primary{background:#efe5c9;border-color:#efe5c9;color:#263f36}.featured .button.primary:hover{background:#fff3d8}.featured .quiet-link{text-decoration-color:#7e9181;color:#edf0e4}.choices-bottom{display:flex;align-items:center;justify-content:space-between;gap:22px;margin:20px 0 8px}.choices-bottom p{font-size:13px;color:var(--muted);max-width:340px}.context-note{font-size:14px;color:var(--muted);margin:0 0 16px}.browse-search{display:flex;align-items:center;gap:10px;border:1px solid #cbd2c4;border-radius:6px;background:var(--paper);padding:4px 16px;margin:20px 0 0}.browse-search input{padding:12px 4px;border:0;background:none;min-width:0;flex:1;font-size:16px}.browse-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.browse-grid .night-card{padding:22px}.browse-grid .card-kicker{font-size:12px;flex-wrap:wrap}.browse-grid .card-kicker>span:last-child{text-align:left}.browse-grid .card-actions{gap:10px}.browse-grid .choice-reason{font-size:15px}.load-more{margin:24px 0}.no-matches{padding:38px;border:1px solid var(--line);background:var(--paper);border-radius:8px}.no-matches h2,.no-matches h3{font:28px var(--display);margin-bottom:12px}.no-matches p{max-width:620px;color:var(--muted);margin-bottom:15px}.empty-symbol{font-size:34px;color:var(--accent)}.nightly-footer{border-top:1px solid var(--line);margin-top:42px;padding:27px 0 35px;display:flex;gap:18px;justify-content:space-between;align-items:start;flex-wrap:wrap;color:var(--muted);font-size:13px}.nightly-footer nav{display:flex;gap:18px;flex-wrap:wrap}.nightly-footer a{font-size:13px;min-height:32px;display:inline-flex;align-items:center}.nightly-footer>span{padding-top:6px}.back-link{display:inline-flex;align-items:center;background:none;border:0;color:var(--muted);padding:20px 0;min-height:44px;text-decoration:none;font-size:14px}.back-link:hover{text-decoration:underline}.place-header{padding:6px 0 22px;border-bottom:1px solid var(--line)}.detail-lede{max-width:730px;color:var(--muted);font-size:18px;margin-top:18px}.hours-status{color:var(--muted);font-size:14px;margin:14px 0}.detail-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:20px}.place-detail-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:65px;margin-top:12px}.detail-section{border-bottom:1px solid var(--line);padding:24px 0}.detail-section h2{font:26px var(--display);margin-bottom:15px}.detail-section p{margin:13px 0}.detail-section .quiet-link{margin-right:20px}.menu-prices{list-style:none;padding:0}.menu-prices li{display:flex;align-items:start;justify-content:space-between;gap:14px;border-bottom:1px solid var(--line);padding:10px 0}.hours-list{margin:15px 0}.hours-list div{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:8px 0;font-size:14px}.hours-list dd{margin:0;text-align:right}.source-details{padding:20px 0;border-bottom:1px solid var(--line);font-size:14px}.source-details summary{cursor:pointer;min-height:44px;padding:10px 0;font-weight:650}.source-details ul{padding-left:20px}.source-details li{padding:5px 0}.save-place[aria-pressed=true] svg{fill:var(--accent);stroke:var(--accent)}.saved-list{border-top:1px solid var(--line)}.saved-row{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:25px 0}.saved-row h2{font:26px var(--display);margin:6px 0}.saved-row h2 a{text-decoration:none}.saved-row p:last-child{font-size:14px;color:var(--muted)}.plan-top{display:flex;align-items:center;justify-content:space-between;gap:15px}.plan-kept{font-size:13px;display:flex;align-items:center;gap:6px;color:#476746}.plan-intro{padding:14px 0 29px}.plan-intro h1{max-width:780px}.plan-layout{display:grid;grid-template-columns:1.45fr 1fr;gap:42px}.plan-paper{background:var(--paper);border:1px solid var(--line);border-radius:7px;overflow:hidden}.plan-paper-top{display:flex;justify-content:space-between;gap:16px;font-size:13px;background:#e4e9dc;border-bottom:1px solid var(--line);padding:16px 24px;color:#4d614d}.plan-stops{list-style:none;padding:0 25px;margin:0}.plan-stop{display:flex;gap:19px;padding:30px 0}.plan-stop+.plan-stop{border-top:1px dashed #b9c8b0}.stop-number{color:#889b7d;font:24px var(--display);padding-top:1px}.plan-stop h2{font:31px/1.2 var(--display);margin:10px 0}.plan-stop h2 a{text-decoration:none}.plan-stop p:not(.overline){font-size:14px;color:var(--muted)}.plan-stop .quiet-link{margin:5px 15px 0 0}.plan-next h2{font:27px var(--display);margin:5px 0 12px}.plan-next>p{color:var(--muted);font-size:15px;margin:0 0 20px}.plan-next>.button{display:flex;width:100%;margin:12px 0}.plan-next .save-place{margin-top:18px}.plan-warning{background:#f5e6ce;border-left:3px solid #b36a26;padding:14px}.after-note{padding:0 25px 20px}.after-note p{font-size:13px;color:var(--muted)}.dessert-add{padding:18px 0;margin-top:22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.dessert-add p{font-size:14px;color:var(--muted)}.dessert-add strong{display:block;margin-top:7px;font-size:15px}.nightly-status{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);max-width:calc(100% - 32px);width:max-content;background:var(--ink);color:#fff;padding:14px 20px;border-radius:6px;box-shadow:0 5px 25px #0002;font-size:14px;z-index:99;pointer-events:none}.load-error{margin:25px 0;padding:24px;border:1px solid #cca269;background:#fff4dc}.load-error h2{font:24px var(--display)}.load-error p{margin:12px 0}.ideas-list{margin:20px 0}.idea{border-bottom:1px solid var(--line);padding:10px 0}.idea summary{cursor:pointer;padding:15px 0;font:24px var(--display);min-height:54px}.idea p{margin:12px 0}.idea ol{padding-left:22px;max-width:720px}.idea li{padding:12px 0}.idea h3{font-size:17px}.idea .quiet-link{margin-right:22px}.events-list>h2{font-size:19px;margin:20px 0 0}.event-item{border-bottom:1px solid var(--line);padding:26px 0;max-width:850px}.event-item h3{font:27px var(--display);margin:9px 0}.event-item .note{margin:12px 0 0}dialog{color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:28px;max-width:540px;width:calc(100% - 30px)}dialog::backdrop{background:#14221ccc}dialog h2{font:28px var(--display)}dialog p{margin:12px 0}dialog label{font-size:14px}dialog textarea{display:block;width:100%;padding:12px;margin:10px 0 20px;font-size:16px;border:1px solid #c1cab8;resize:vertical}.guide-footer{font-size:14px}.page>h1{margin-top:28px}.masthead{margin:28px 0}.tabbar{display:none}
@media(max-width:900px){.browse-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.choice-controls{gap:14px}.night-card.featured{padding:26px}.card-actions{gap:14px}.place-detail-grid{gap:35px}.plan-layout{gap:25px}.nightly-footer{display:block}.nightly-footer nav{margin-top:10px}}
@media(max-width:640px){.page{padding:0 20px}.nightly-header{min-height:82px;gap:8px}.nightly-brand{font-size:20px;gap:8px}.brand-mark{display:none}.nightly-brand small{font-size:8px;letter-spacing:1px}.nightly-header nav{gap:15px}.nightly-header nav a{font-size:13px;padding:13px 0}.intro{padding:25px 0 20px}.intro h1,.place-header h1,.plan-intro h1{font-size:33px;line-height:1.13;letter-spacing:-1px;max-width:450px}.intro>p:last-child{font-size:15px;max-width:350px}.overline{font-size:11px;letter-spacing:1.25px}.occasion-options{gap:4px;justify-content:space-between;padding-bottom:11px}.occasion-options button{font-size:14px;padding:9px 12px;flex:1}.choice-controls{min-height:80px;gap:8px;align-items:center;justify-content:space-between}.choice-field{display:block;flex:1}.choice-field>span{font-size:12px;display:block}.choice-field select{font-size:14px;padding:8px 14px 8px 0;min-height:40px;width:100%;max-width:160px}.filter-toggle{font-size:13px;padding:10px 0;gap:5px;align-self:flex-end;margin:0 0 7px 4px}.filter-toggle svg{width:17px}.more-choices{padding:18px 14px}.filter-fields select{font-size:14px;padding:9px;width:100%;max-width:none}.choices-heading{margin:21px 0 14px;align-items:start}.choices-heading h2{font-size:17px}.choices-heading p{font-size:12px}.browse-instead{font-size:12px;text-align:right;line-height:1.4;gap:3px;min-height:38px;padding:4px 0}.browse-instead svg{width:15px}.choices-layout,.browse-grid{grid-template-columns:1fr;gap:13px}.night-card.featured{grid-row:auto;padding:24px}.night-card{padding:21px 24px}.night-card.featured h2{font-size:34px;margin-top:20px}.card-kicker{font-size:11px}.featured .choice-description{display:none}.choice-reason{margin:14px 0 8px}.featured .price-line{margin-top:12px;padding-top:12px}.featured .card-actions{padding-top:14px}.card-actions{justify-content:space-between;gap:8px}.card-actions .button{font-size:14px;padding:11px 14px}.choices-bottom{align-items:start;flex-direction:column;gap:12px}.choices-bottom p{max-width:100%;font-size:12px}.choices-bottom .button{width:100%}.no-matches{padding:24px}.nightly-footer{margin-top:30px;padding:23px 0 28px;font-size:12px}.nightly-footer nav{gap:10px 19px}.nightly-footer a{font-size:12px}.detail-lede{font-size:17px}.detail-actions{gap:10px 18px}.detail-actions .button{flex:1}.place-detail-grid{grid-template-columns:1fr;gap:0}.place-header h1{font-size:38px}.plan-intro{padding:5px 0 24px}.plan-layout{grid-template-columns:1fr;gap:20px}.plan-stop h2{font-size:28px}.plan-stops{padding:0 20px}.plan-stop{gap:13px;padding:25px 0}.plan-paper-top{padding:14px 20px}.plan-kept{font-size:12px}.plan-top .back-link{font-size:13px}.plan-next h2{font-size:25px}.plan-next>.button{min-height:49px}.plan-next .dessert-add{margin-top:22px}.plan-next .save-place{margin-top:10px}.source-details{margin-top:12px}}
@media(max-width:370px){.page{padding:0 16px}.nightly-header nav{gap:11px}.nightly-brand{font-size:18px}.occasion-options button{padding:8px;font-size:13px}.intro h1{font-size:30px}.choice-field select{max-width:130px}.filter-toggle{font-size:12px}.filter-toggle svg{display:none}.featured .card-actions .quiet-link{font-size:13px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* The directory exposes every listing, with one useful link per compact entry. */
.catalog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px}
.night-card.catalog-card{display:block;background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:22px 0;min-width:0}
.catalog-card h3{font-family:var(--display);font-size:25px;margin:7px 0 0}
.catalog-card h3 a{display:flex;justify-content:space-between;gap:16px;align-items:center;text-decoration:none;color:inherit;min-height:44px}
.catalog-card h3 a:hover{text-decoration:underline;text-underline-offset:4px}
.catalog-card h3 svg{flex-shrink:0;width:18px}
.catalog-meta{font-size:12px;line-height:1.7;color:var(--muted)}
.listing-check{display:inline-block;color:#755321;background:#f3ebd9;border-radius:4px;padding:2px 7px;font:12px/1.6 var(--sans);margin-left:6px}
.place-header>.listing-check{margin:16px 0 0}
.catalog-description{font-size:14px;line-height:1.55;color:var(--muted);margin:8px 0 0;max-width:62ch}
.older-explanation{max-width:65ch;line-height:1.7;margin:20px 0}
.catalog-categories{flex-wrap:wrap;gap:6px}
.catalog-categories button{display:flex;align-items:center;justify-content:center;gap:7px}
.catalog-categories button span{font-size:12px;opacity:.75}
body[data-page="browse"] .intro{padding-bottom:12px}
body[data-page="browse"] .browse-search{margin:8px 0 22px}
body[data-page="browse"] .choices-heading>div{min-width:0}
body[data-page="browse"] .choices-heading p{overflow-wrap:anywhere;max-width:72ch}
#show-all{white-space:nowrap;flex-shrink:0}
@media(max-width:640px){.catalog-grid{grid-template-columns:1fr}.catalog-categories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-categories button{font-size:14px;padding:9px 8px}.night-card.catalog-card{padding:17px 0}.catalog-card h3{font-size:24px}.catalog-meta .listing-check{display:table;margin:4px 0 0}.catalog-description{font-size:14px}body[data-page="browse"] .choice-field select{max-width:220px}body[data-page="browse"] .browse-search{margin-bottom:16px}}
