:root{--bg: #FFFFFF;--surface: #F3F2EE;--stone: #DFDDD7;--line: #E6E4DF;--ink: #1F1E1C;--ink-soft: #5F5C57;--btn: #1F1E1C;--btn-ink: #FFFFFF;--green: #2E4A3C;--green-soft: #E4EBE5;--green-on: #FFFFFF;--green-on-dark: #A9C7B5;--photo: #DFDDD7;--display: "Bricolage Grotesque", "Helvetica Neue", Arial, sans-serif;--body: "Figtree", "Helvetica Neue", Arial, sans-serif;--logo: "League Spartan", "Helvetica Neue", Arial, sans-serif;color-scheme:light}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit}button,input,select{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--green);outline-offset:3px;border-radius:4px}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.wrap{max-width:1120px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}main{padding-bottom:96px;min-height:60vh}h1,h2,h3{font-family:var(--display);font-weight:600;letter-spacing:-.04em;text-wrap:balance;margin:0}.h1{font-weight:800;font-size:clamp(42px,7vw,80px);line-height:.92;letter-spacing:-.05em}.h2{font-size:clamp(30px,4.4vw,46px);line-height:1}.hl{color:var(--green)}.bar{display:block;width:48px;height:3px;background:var(--green);margin:18px 0 0}.eyebrow{display:inline-block;font-family:var(--body);font-weight:600;font-size:11.5px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-soft)}.muted{color:var(--ink-soft)}.small{font-size:13px;color:var(--ink-soft)}.lead{font-size:clamp(17px,1.8vw,19px);color:var(--ink-soft);max-width:600px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:16px 26px;border-radius:4px;border:0;background:var(--btn);color:var(--btn-ink);font-weight:600;font-size:15px;letter-spacing:.01em;text-decoration:none;cursor:pointer}.btn svg{width:16px;height:16px}.btn.ghost{background:transparent;color:var(--ink);border:1.5px solid var(--ink)}.btn.full{width:100%}.top{position:sticky;top:0;z-index:20;background:var(--bg);border-bottom:1px solid var(--line)}.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:16px}.logo{display:inline-flex;align-items:center;gap:9px;text-decoration:none;font-family:var(--logo);font-weight:700;font-size:26px;letter-spacing:-.04em}.logo svg{width:28px;height:28px;color:var(--green)}.logo-text{display:flex;flex-direction:column;align-items:flex-start;line-height:1}.logo-word{font-family:var(--display);font-weight:800;font-size:35.75px;letter-spacing:-.045em;line-height:.95;white-space:nowrap}.logo-text small{margin-top:5px;margin-right:-.14em;font-family:var(--body);font-weight:600;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);white-space:nowrap}.logo{gap:12px}.logo svg{width:48px;height:48px}.nav{display:flex;align-items:center;gap:28px}.nav a{position:relative;padding-block:6px;font-family:var(--display);font-weight:700;font-size:18px;letter-spacing:-.03em;text-transform:lowercase;text-decoration:none;opacity:.62;transition:opacity .2s ease}.nav a:after{content:"";position:absolute;left:0;bottom:0;height:3px;width:0;background:var(--green);transition:width .25s ease}.nav a:hover,.nav a[aria-current=page]{opacity:1}.nav a:hover:after,.nav a[aria-current=page]:after{width:100%}.install{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:4px;border:1.5px solid var(--ink);background:transparent;font-family:var(--display);font-weight:700;font-size:15px;letter-spacing:-.02em;text-transform:lowercase;cursor:pointer}.install svg{width:15px;height:15px}.install:hover{background:var(--ink);color:var(--bg)}.install[hidden]{display:none}.foot{background:var(--stone);margin-top:48px;padding-block:48px 40px;font-size:14px;color:var(--ink-soft)}.foot a{text-decoration:none;color:inherit}.foot a:hover{color:var(--ink)}.foot-top{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1.5fr);gap:40px;padding-bottom:32px;border-bottom:1px solid rgba(31,30,28,.12)}.foot-brand .logo{color:var(--ink)}.foot-brand p{margin:16px 0 12px;max-width:360px;line-height:1.55}.foot-mail{font-weight:600;color:var(--green)!important;border-bottom:1px solid currentColor}.foot-cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.foot-cols h3{margin:0 0 12px;font-family:var(--body);font-size:11.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--ink)}.foot-cols a{display:block;padding:5px 0}.foot-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 20px;padding-top:20px;font-size:13px}.foot-bottom a{margin-right:18px}.foot-made{font-weight:600;letter-spacing:.14em;text-transform:uppercase;font-size:11px}@media(max-width:760px){.foot{padding-bottom:110px}.foot-top{grid-template-columns:1fr;gap:28px}.foot-cols{grid-template-columns:repeat(2,minmax(0,1fr))}}.tabs{display:none}.hero{margin-top:20px;padding:clamp(28px,6vw,72px);border-radius:6px;background:var(--stone)}.hero h1{font-weight:800;font-size:clamp(48px,9.4vw,116px);line-height:.88;letter-spacing:-.055em;margin-top:14px}.hero .lead{margin:24px 0 0}.search{margin-top:40px;padding:6px;border-radius:6px;background:var(--bg);display:grid;grid-template-columns:1fr 1fr 1fr 1fr auto;gap:6px}.field{display:flex;flex-direction:column;gap:2px;padding:10px 16px;border-radius:4px;background:var(--surface);min-width:0}.field label{font-weight:600;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft)}.field select,.field input{border:0;background:transparent;padding:2px 0;font-size:16px;width:100%;min-width:0}.field select:focus,.field input:focus{outline:none}.feats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.feat{display:flex;align-items:flex-start;gap:14px;padding:18px 18px 20px;background:var(--bg);border-radius:6px;min-width:0}.fi{flex:none;display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:var(--green);color:var(--green-on)}.fi svg{width:20px;height:20px}.feat strong{display:block;font-family:var(--display);font-weight:700;font-size:18px;letter-spacing:-.02em;line-height:1.2}.feat small{display:block;margin-top:4px;font-size:14px;line-height:1.45;color:var(--ink-soft)}.trust{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);border-radius:10px;margin-top:20px}.trust div{padding:20px 22px;border-left:1px solid var(--line);min-width:0}.trust div:first-child{border-left:0}.trust strong{display:block;font-family:var(--display);font-weight:600;font-size:20px;letter-spacing:-.02em;color:var(--green)}.trust span{font-size:13px;color:var(--ink-soft)}.section{padding-block:64px 0}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:30px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.card{display:flex;flex-direction:column;text-decoration:none;border-radius:10px;background:var(--bg);border:1px solid var(--line);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.card:hover{transform:translateY(-4px);box-shadow:0 18px 40px -18px #00000040,inset 0 -3px 0 var(--green)}.card[hidden]{display:none}.photo{position:relative;aspect-ratio:4 / 3;background:var(--photo);overflow:hidden}.photo img{width:100%;height:100%;object-fit:cover}.photo .tag{position:absolute;left:14px;top:14px;padding:6px 12px;border-radius:2px;background:var(--bg);font-size:12px;letter-spacing:.04em}.photo .ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:var(--ink-soft);font-size:13px}.card .body{padding:22px 22px 24px;display:flex;flex-direction:column;gap:8px}.card h3{font-size:23px;line-height:1.1;font-weight:700}.card .meta{font-size:14px;color:var(--ink-soft)}.card .price{font-weight:600;color:var(--green)}.card .price span{font-weight:400;color:var(--ink-soft);font-size:14px}.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.panel{padding:clamp(28px,4vw,44px);border-radius:10px;background:var(--bg);border:1px solid var(--line)}.panel.dark{background:var(--btn);color:var(--btn-ink);border:0}.panel.dark .muted,.panel.dark .eyebrow{color:var(--btn-ink);opacity:.75}.panel.dark .hl,.panel.dark .bar{color:var(--green-on-dark);background-color:transparent}.panel.dark .bar{background:var(--green-on-dark)}.panel.dark .btn{background:var(--green-soft);color:var(--green)}.panel p{margin:14px 0 22px}.page-head{padding-block:34px 18px}.chips{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 26px}.chip{padding:9px 16px;border-radius:4px;border:1px solid var(--line);background:var(--bg);cursor:pointer;font-size:14px;font-weight:500}.chip:hover{border-color:var(--green)}.chip[aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink);box-shadow:inset 0 -3px 0 var(--green)}.prop-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:32px;align-items:start}.gallery{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;gap:8px;border-radius:10px;overflow:hidden}.gallery .photo{aspect-ratio:auto;min-height:150px}.gallery .photo:first-child{grid-row:1 / 3;min-height:320px}.facts{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.facts span{padding:8px 14px;border-radius:6px;border:1px solid var(--line);font-size:14px}.incl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}.incl div{display:flex;gap:10px;align-items:center;padding:12px 14px;border-radius:6px;border:1px solid var(--line);font-size:15px}.incl svg{width:18px;height:18px;flex:none;color:var(--green)}.booker{position:sticky;top:96px;padding:24px;border-radius:10px;border:1px solid var(--line);background:var(--bg)}.booker .big{font-family:var(--display);font-weight:700;font-size:36px;letter-spacing:-.04em;line-height:1}.lengths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:16px 0}.lengths button{padding:11px 6px;border-radius:4px;border:1px solid var(--line);background:transparent;font-size:14px;cursor:pointer}.lengths button[aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink);box-shadow:inset 0 -3px 0 var(--green)}.lines{margin:14px 0 18px;padding:0;list-style:none;font-size:15px}.lines li{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}.lines li.total{border-bottom:0;font-family:var(--display);font-weight:700;font-size:19px}.save{color:var(--green);font-weight:600}.widget{margin-top:18px;padding-top:18px;border-top:1px solid var(--line);min-height:60px}.widget-empty{padding:16px;border-radius:6px;background:var(--surface);font-size:14px;color:var(--ink-soft)}.form{display:grid;gap:12px}.two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.input{display:flex;flex-direction:column;gap:6px}.input label{font-weight:600;font-size:13px;color:var(--ink-soft)}.input input,.input select{padding:15px 16px;border-radius:6px;border:1px solid var(--line);background:var(--bg);width:100%;min-width:0}.input input:focus,.input select:focus{outline:none;border-color:var(--green)}.check{display:flex;gap:12px;align-items:flex-start;font-size:14px;color:var(--ink-soft)}.check input{width:20px;height:20px;margin-top:2px;flex:none;accent-color:var(--green)}.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.error{color:#a33a2a;font-size:14px}.done{text-align:center;padding:48px 24px;border-radius:10px;border:1px solid var(--line)}.done[hidden],#glForm[hidden]{display:none}.tick{display:inline-flex;width:64px;height:64px;border-radius:50%;align-items:center;justify-content:center;background:var(--green);color:var(--green-on);margin-bottom:18px}.tick svg{width:30px;height:30px}.code{display:inline-flex;align-items:center;gap:12px;margin:18px 0 6px;padding:12px 12px 12px 20px;border-radius:4px;border:2px dashed var(--green);background:var(--green-soft);font-family:var(--display);font-weight:700;font-size:22px;letter-spacing:.06em}.code button{padding:8px 14px;border-radius:4px;border:0;background:var(--btn);color:var(--btn-ink);font-size:13px;cursor:pointer;letter-spacing:0;font-family:var(--body)}.guide-top{padding:clamp(24px,4vw,40px);border-radius:10px;background:var(--btn);color:var(--btn-ink)}.guide-top .muted,.guide-top .eyebrow{color:var(--btn-ink);opacity:.75}.guide-top .hl{color:var(--green-on-dark)}.tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:12px}.tile{padding:20px;border-radius:10px;border:1px solid var(--line);min-width:0}.tile .k{font-weight:600;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft)}.tile .v{margin-top:6px;font-family:var(--display);font-weight:700;font-size:22px;letter-spacing:-.02em;word-break:break-word}.tile .copy{margin-top:10px;padding:7px 14px;border-radius:4px;border:1px solid var(--line);background:transparent;font-size:13px;cursor:pointer}.list{margin:10px 0 0;padding:0;list-style:none}.list li{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}.list li:last-child{border-bottom:0}.prose{max-width:760px}.prose h2{font-size:26px;margin:34px 0 10px}.prose p,.prose li{color:var(--ink-soft)}.toast{position:fixed;left:50%;bottom:calc(96px + env(safe-area-inset-bottom,0px));transform:translate(-50%) translateY(20px);opacity:0;padding:12px 18px;border-radius:4px;background:var(--btn);color:var(--btn-ink);font-size:14px;transition:all .25s ease;pointer-events:none;z-index:40}.toast.on{opacity:1;transform:translate(-50%) translateY(0)}@media(max-width:900px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.prop-grid{grid-template-columns:minmax(0,1fr)}.booker{position:static}.search{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.search>.field:first-child,.search .btn,.search [data-guests]{grid-column:1 / -1}.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.nav,.install span{display:none}.tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));position:fixed;left:0;right:0;bottom:0;z-index:25;background:var(--bg);border-top:1px solid var(--line);padding:8px max(8px,env(safe-area-inset-right,0px)) calc(8px + env(safe-area-inset-bottom,0px)) max(8px,env(safe-area-inset-left,0px))}.tabs a{display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 0;text-decoration:none;font-family:var(--display);font-weight:700;letter-spacing:-.02em;text-transform:lowercase;font-size:13px;color:var(--ink-soft)}.tabs a[aria-current=page]{color:var(--ink)}.tabs a[aria-current=page] svg{color:var(--green)}.tabs svg{width:22px;height:22px}.feats,.cards,.split,.incl,.two,.tiles{grid-template-columns:minmax(0,1fr)}.trust{grid-template-columns:repeat(2,minmax(0,1fr))}.trust div:nth-child(3){border-left:0}.trust div:nth-child(n+3){border-top:1px solid var(--line)}.gallery{grid-template-columns:minmax(0,1fr);grid-template-rows:auto}.gallery .photo:not(:first-child){display:none}.gallery .photo:first-child{grid-row:auto;min-height:240px}}.sheet{width:min(640px,100%);max-height:min(92vh,900px);margin:auto;padding:0;border:0;border-radius:10px;background:var(--bg);color:var(--ink);box-shadow:0 30px 80px -20px #0006;overflow:hidden}.sheet[open]{display:flex;flex-direction:column}.sheet::backdrop{background:#1f1e1c8c}.sheet-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:22px 24px 0}.sheet-title{font-size:28px;font-weight:700;line-height:1.05;margin-top:6px}.sheet-close{flex:none;width:40px;height:40px;border-radius:4px;border:1px solid var(--line);background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center}.sheet-close svg{width:18px;height:18px}.sheet-note{margin:10px 24px 0}.sheet-body{padding:16px 24px 24px;overflow-y:auto;min-height:420px}@media(max-width:680px){.sheet{width:100%;max-width:100%;max-height:94vh;margin:auto 0 0;border-radius:12px 12px 0 0}.sheet-body{padding-bottom:calc(24px + env(safe-area-inset-bottom,0px))}}.sheet-body{position:relative}.widget-frame{display:block;width:100%;height:min(68vh,680px);min-height:520px;border:0;border-radius:6px;background:var(--bg)}#widgetLoading{position:absolute;left:24px;top:16px}.search-inline{margin:6px 0 4px;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;background:var(--surface)}.search-inline .field{background:var(--bg)}a.chip,.lengths a{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.lengths a{padding:11px 6px;border-radius:4px;border:1px solid var(--line);font-size:14px}.lengths a[aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink);box-shadow:inset 0 -3px 0 var(--green)}.date-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end;margin-top:16px}.date-row .btn{padding:15px 18px}.pre{white-space:pre-line;max-width:62ch}.more-photos,.more-text{margin-top:10px}.more-photos summary,.more-text summary{cursor:pointer;font-weight:600;font-size:14px;color:var(--ink)}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}.photo-grid img{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:6px}@media(max-width:680px){.search-inline{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.search-inline .btn{grid-column:1 / -1}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.search-inline{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) auto}.stay-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin-top:16px}.stay-form .input:last-of-type,.stay-form .btn{grid-column:1 / -1}.stay-form .btn{padding:14px 18px}@media(max-width:680px){.search>.field:first-child{grid-column:1 / -1}.search-inline .field:first-child{grid-column:auto}.search-inline [data-guests]{grid-column:1 / -1}}.picker{position:relative}.picker-btn{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:2px 0;border:0;background:transparent;font-size:16px;text-align:left;cursor:pointer;color:var(--ink)}.picker-btn svg{width:16px;height:16px;flex:none;transition:transform .2s ease}.picker.open .picker-btn svg{transform:rotate(180deg)}.input.picker .picker-btn{padding:15px 16px;border:1px solid var(--line);border-radius:6px;background:var(--bg)}.input.picker.open .picker-btn{border-color:var(--green)}.pop{position:absolute;z-index:40;top:calc(100% + 8px);left:0;min-width:300px;padding:18px;border-radius:10px;background:var(--bg);border:1px solid var(--line);box-shadow:0 24px 60px -24px #1f1e1c59;color:var(--ink);text-transform:none;letter-spacing:normal;font-weight:400}.pop[hidden]{display:none}.input .pop{left:0;right:0;min-width:0}.step-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}.step-row strong{display:block;font-family:var(--display);font-weight:700;font-size:17px;letter-spacing:-.02em}.step-row span{font-size:13px;color:var(--ink-soft)}.stepper{display:flex;align-items:center;gap:12px}.stepper button{width:36px;height:36px;border-radius:50%;border:1px solid var(--ink);background:transparent;font-size:18px;line-height:1;cursor:pointer;color:var(--ink)}.stepper button:hover:not(:disabled){background:var(--ink);color:var(--bg)}.stepper button:disabled{opacity:.25;cursor:default}.stepper output{min-width:22px;text-align:center;font-family:var(--display);font-weight:700;font-size:18px;font-variant-numeric:tabular-nums}.pop-note{margin:12px 0 14px;font-size:13px;color:var(--ink-soft)}.pop .btn{padding:13px 18px}.pop-list{list-style:none;margin:0;padding:8px;min-width:220px}.pop-list li{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-radius:6px;font-size:16px;cursor:pointer}.pop-list li:hover,.pop-list li:focus{background:var(--surface);outline:none}.pop-list li[aria-selected=true]{font-weight:600;box-shadow:inset 3px 0 0 var(--green)}.pop-list li[aria-selected=true]:after{content:"✓";color:var(--green)}@media(max-width:680px){.pop{position:fixed;inset:auto 0 0;min-width:0;border-radius:14px 14px 0 0;padding:22px max(18px,env(safe-area-inset-left,0px)) calc(22px + env(safe-area-inset-bottom,0px));box-shadow:0 -20px 60px -20px #1f1e1c66}}.search,.search-inline,.stay-form{position:relative}.range{display:contents}.picker-btn .placeholder{color:var(--ink-soft)}.input.picker-date .picker-btn{padding:15px 16px;border:1px solid var(--line);border-radius:6px;background:var(--bg)}.range.open .picker-date .picker-btn{border-color:var(--green)}.picker-date .picker-btn svg{width:17px;height:17px;color:var(--ink-soft)}.stay-form .picker-date label{display:block;margin-bottom:6px}.cal-pop{left:0;right:auto;width:100%;max-width:380px;padding:18px 18px 14px}.cal-pop.cal-two{max-width:720px}.stay-form .cal-pop{max-width:none}.cal-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.cal-status{margin:0;font-size:14px;font-weight:600;text-align:center}.cal-nav{width:36px;height:36px;flex:none;display:grid;place-items:center;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--ink);cursor:pointer}.cal-nav:hover:not(:disabled){border-color:var(--ink)}.cal-nav:disabled{opacity:.3;cursor:default}.cal-nav svg{width:18px;height:18px}.cal-months{display:grid;grid-template-columns:minmax(0,1fr);gap:32px;margin-top:10px}.cal-pop.cal-two .cal-months{grid-template-columns:repeat(2,minmax(0,1fr))}.cal-month h4{margin:4px 0 10px;text-align:center;font-family:var(--display);font-weight:700;font-size:17px;letter-spacing:-.02em}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));row-gap:3px}.cal-w{padding:4px 0 8px;text-align:center;font-size:11.5px;font-weight:600;letter-spacing:.1em;color:var(--ink-soft)}.cal-grid .d{height:42px;border:0;background:transparent;color:var(--ink);font:inherit;font-size:15px;font-variant-numeric:tabular-nums;cursor:pointer;border-radius:8px;position:relative}.cal-grid .d:hover:not(:disabled){box-shadow:inset 0 0 0 1.5px var(--ink)}.cal-grid .d:disabled{cursor:default;color:var(--ink-soft);opacity:.45}.cal-grid .d.past{opacity:.25}.cal-grid .d.booked{text-decoration:line-through;opacity:.4}.cal-grid .d.today:after{content:"";position:absolute;left:50%;bottom:6px;width:4px;height:4px;margin-left:-2px;border-radius:50%;background:var(--green)}.cal-grid .d.inrange{background:var(--stone);border-radius:0}.cal-grid .d.start,.cal-grid .d.end{background:var(--ink);color:var(--bg);opacity:1;text-decoration:none}.cal-grid .d.start.has-end{border-radius:8px 0 0 8px}.cal-grid .d.end{border-radius:0 8px 8px 0}.cal-grid .d.start.end{border-radius:8px}.cal-grid .d.start:after,.cal-grid .d.end:after{background:var(--bg)}.cal-foot{display:flex;align-items:center;gap:14px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.cal-key{font-size:13px;color:var(--ink-soft);display:inline-flex;align-items:center;gap:6px}.cal-key-x{text-decoration:line-through;opacity:.6}.cal-clear{margin-left:auto;border:0;background:none;padding:0;font:inherit;font-size:14px;font-weight:600;text-decoration:underline;color:var(--ink);cursor:pointer}.cal-foot .btn{padding:11px 22px}@media(max-width:680px){.cal-pop{max-width:none;max-height:88vh;overflow-y:auto}.cal-grid .d{height:46px}}.desc-p{margin:0 0 16px;max-width:62ch;color:var(--ink-soft)}.desc-p p{margin:0 0 4px}.desc-line{display:flex;gap:10px;align-items:flex-start}.desc-line .ico{width:20px;height:20px;flex:none;margin-top:2px;color:var(--green)}.desc-line.lead{color:var(--ink);font-weight:600}.desc-line+.desc-text,.desc-line~.desc-text{padding-left:30px}.amen{list-style:none;margin:16px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px}.amen li{display:flex;align-items:center;gap:12px;font-size:15px}.amen .ico{width:22px;height:22px;flex:none;color:var(--green)}.amen-more{margin-top:14px}@media(max-width:680px){.amen{grid-template-columns:minmax(0,1fr)}}.filters{margin:18px 0 26px}.filters-top{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.filters .chips{margin:0}.filter-chips{margin-top:12px!important;align-items:center}.check-chip{display:inline-flex;align-items:center;gap:8px;user-select:none}.check-chip input{position:absolute;opacity:0;width:1px;height:1px}.check-chip .ico{width:18px;height:18px;color:var(--green)}.check-chip:has(input:checked){background:var(--ink);color:var(--bg);border-color:var(--ink);box-shadow:inset 0 -3px 0 var(--green)}.check-chip:has(input:checked) .ico{color:var(--bg)}.check-chip:has(input:focus-visible){outline:2px solid var(--green);outline-offset:2px}.clear-filters{font-size:14px;font-weight:600;margin-left:4px}.sort-picker{flex-direction:row;align-items:center;gap:10px;padding:8px 14px;background:var(--bg);border:1px solid var(--line);border-radius:4px}.sort-picker label{white-space:nowrap}.sort-picker .picker-btn{font-size:14px;font-weight:500;gap:10px}.sort-picker .pop{left:auto;right:0}@media(max-width:680px){.filters .filter-chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px;margin-left:-16px;margin-right:-16px;padding-left:16px;padding-right:16px;scrollbar-width:none}.filter-chips .chip{flex:none}.sort-picker .pop{left:0;right:0}}.intro{margin:0 0 14px;max-width:62ch;color:var(--ink-soft);font-size:16.5px;line-height:1.7}.amen-h{margin:22px 0 0;font-family:var(--body);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft)}.about-more{margin-top:22px;padding-top:16px;border-top:1px solid var(--line)}.about-body{margin-top:14px}.map{background:var(--surface);border-radius:8px;overflow:hidden}.listing-map{height:340px;margin-top:16px;border:1px solid var(--line)}.map-home{width:38px;height:38px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;box-shadow:0 0 0 4px #ffffffe6,0 6px 16px -6px #1f1e1c80}.map-home svg{width:19px;height:19px}.map-pin{padding:6px 11px;border-radius:999px;border:1px solid var(--ink);background:var(--bg);color:var(--ink);font:600 13.5px/1 var(--body);font-variant-numeric:tabular-nums;cursor:pointer;box-shadow:0 4px 12px -6px #1f1e1c73;transition:transform .12s ease}.map-pin:hover,.map-pin.hover,.map-pin.on{background:var(--ink);color:var(--bg);transform:scale(1.08);z-index:2}.map-pin.on{background:var(--green);border-color:var(--green)}.map-pop .maplibregl-popup-content{padding:0;border-radius:10px;overflow:hidden;box-shadow:0 18px 40px -16px #1f1e1c73;font-family:var(--body)}.map-pop a{display:block;text-decoration:none;color:var(--ink)}.map-pop img{width:100%;height:130px;object-fit:cover;display:block}.mp-body{display:flex;flex-direction:column;gap:2px;padding:10px 12px 12px;font-size:13px;color:var(--ink-soft)}.mp-body strong{font-family:var(--display);font-weight:700;font-size:17px;letter-spacing:-.02em;color:var(--ink)}.mp-price{color:var(--ink);font-weight:600;margin-top:2px}.maplibregl-ctrl-group{border-radius:8px!important;box-shadow:0 4px 14px -8px #1f1e1c80!important}.maplibregl-ctrl-attrib{font-size:10.5px}.filters-right{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.map-toggle{display:inline-flex;align-items:center;gap:8px;padding:12px 16px;border-radius:4px;border:1px solid var(--ink);background:var(--ink);color:var(--bg);font-size:14px;font-weight:600;cursor:pointer}.map-toggle svg{width:18px;height:18px}.map-toggle .i-list,.map-toggle[aria-pressed=true] .i-map{display:none}.map-toggle[aria-pressed=true] .i-list{display:block}.results-map{display:none}.results[data-view=map]{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:22px;align-items:start}.results[data-view=map] .cards{grid-template-columns:repeat(2,minmax(0,1fr))}.results[data-view=map] .results-map{display:block;position:sticky;top:100px}.search-map{height:calc(100vh - 124px);min-height:420px;border:1px solid var(--line)}@media(max-width:900px){.results[data-view=map]{display:block}.results[data-view=map] .results-list{display:none}.results[data-view=map] .results-map{position:static}.search-map{height:calc(100vh - 250px);min-height:380px}}@media(max-width:680px){.filters-right{width:100%}.filters-right .sort-picker{flex:1}}.map-cluster{padding:8px 13px;border-radius:999px;border:2px solid #fff;background:var(--green);color:#fff;font:700 13.5px/1 var(--body);cursor:pointer;box-shadow:0 6px 16px -6px #1f1e1c8c;transition:transform .12s ease}.map-cluster:hover{transform:scale(1.08)}.guide .tile .k{display:flex;align-items:center;gap:8px}.guide .tile .k .ico{width:18px;height:18px;color:var(--green)}.guide .tile .v2{margin-top:6px;font-size:14px;color:var(--ink-soft)}.places{list-style:none;margin:14px 0 0;padding:0}.places li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:start;padding:14px 0;border-top:1px solid var(--line)}.pl-ico .ico{width:22px;height:22px;color:var(--green);margin-top:2px}.pl-main{display:flex;flex-direction:column;gap:2px}.pl-main a{text-decoration:none}.pl-side{display:flex;flex-direction:column;align-items:flex-end;gap:6px;text-align:right}.perk summary{list-style:none;cursor:pointer;padding:5px 10px;border-radius:999px;background:var(--green);color:#fff;font-size:12.5px;font-weight:600}.perk summary::-webkit-details-marker{display:none}.perk p{margin:8px 0 0;padding:10px 12px;border-radius:8px;background:var(--green-soft);color:var(--ink);font-weight:600;text-align:left}.how summary{cursor:pointer}.unlock{margin-top:12px;border:2px solid var(--green)}.unlock .unlock-done,.unlock[data-unlocked] .unlock-locked{display:none}.unlock[data-unlocked] .unlock-done{display:block}.perk-list{list-style:none;margin:14px 0 18px;padding:0;display:grid;gap:10px}.perk-list li{display:flex;gap:12px;align-items:center}.perk-list .ico{width:22px;height:22px;color:var(--green);flex:none}.unlock-form{display:grid;gap:10px;max-width:520px}.unlock-form label:not(.check){display:block;font-size:14px;font-weight:600;margin-bottom:6px}.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}.code-chip{display:inline-flex;align-items:baseline;gap:12px;margin-top:8px;padding:14px 18px;border-radius:8px;border:2px dashed var(--green);background:var(--green-soft);font-family:var(--display);font-weight:800;font-size:22px;letter-spacing:.04em;cursor:pointer;color:var(--ink)}.perk-open{display:none}.perks-unlocked .perk-open{display:block}.perks-unlocked .perk-locked{display:none}a.perk-locked{text-decoration:none;padding:5px 10px;border-radius:999px;border:1px solid var(--green);color:var(--green);font-size:12.5px;font-weight:600}.admin-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.admin-stats{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:18px}.admin-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:22px 0 14px}.admin-filter select{padding:10px 12px;border-radius:4px;border:1px solid var(--line);background:var(--bg);font-size:14px}.admin-bar .btn{margin-left:auto}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:8px}.admin-table{width:100%;border-collapse:collapse;font-size:14px;white-space:nowrap}.admin-table th{text-align:left;padding:12px 14px;background:var(--surface);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft)}.admin-table td{padding:12px 14px;border-top:1px solid var(--line)}.admin-table a{text-decoration:none}@media(max-width:680px){.admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-bar .btn{margin-left:0}}.heating h2 .ico{width:26px;height:26px;color:var(--green)}.how-item{border-top:1px solid var(--line);padding:14px 0}.how-item:first-of-type{margin-top:10px}.how-item summary{display:flex;align-items:center;gap:12px;cursor:pointer;font-weight:600;list-style:none}.how-item summary::-webkit-details-marker{display:none}.how-item summary:after{content:"+";margin-left:auto;font-size:20px;color:var(--ink-soft)}.how-item[open] summary:after{content:"–"}.how-item .ico{width:22px;height:22px;color:var(--green)}.how-item p{margin:10px 0 0 34px}.ask-fab{position:fixed;right:max(16px,env(safe-area-inset-right,0px));bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:45;display:inline-flex;align-items:center;gap:8px;padding:14px 18px;border-radius:999px;border:0;background:var(--green);color:#fff;font:600 15px/1 var(--body);cursor:pointer;box-shadow:0 12px 30px -10px #1f1e1c8c}.ask-fab .ico{width:18px;height:18px}.ask.open .ask-fab{display:none}.ask-panel{position:fixed;right:max(16px,env(safe-area-inset-right,0px));bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:46;width:min(400px,calc(100vw - 32px));height:min(560px,calc(100vh - 120px));display:flex;flex-direction:column;background:var(--bg);border:1px solid var(--line);border-radius:14px;box-shadow:0 24px 60px -20px #1f1e1c80;overflow:hidden}.ask-panel[hidden]{display:none}.ask-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--line);font-family:var(--display);font-size:20px;letter-spacing:-.02em}.ask-x{border:0;background:none;font-size:26px;line-height:1;cursor:pointer;color:var(--ink-soft)}.ask-log{flex:1;overflow-y:auto;padding:14px 16px;display:flex;flex-direction:column;gap:10px}.ask-msg{margin:0;padding:10px 13px;border-radius:12px;max-width:88%;font-size:15px;line-height:1.5;white-space:pre-line}.ask-msg.bot{background:var(--surface);align-self:flex-start;border-bottom-left-radius:4px}.ask-msg.me{background:var(--ink);color:var(--bg);align-self:flex-end;border-bottom-right-radius:4px}.ask-msg.typing{color:var(--ink-soft)}.ask-sugg{display:flex;flex-wrap:wrap;gap:6px;padding:0 16px 10px}.ask-sugg button{padding:7px 11px;border-radius:999px;border:1px solid var(--line);background:var(--bg);font-size:13px;cursor:pointer}.ask-sugg button:hover{border-color:var(--green)}.ask-form{display:flex;gap:8px;padding:12px;border-top:1px solid var(--line)}.ask-form input{flex:1;min-width:0;padding:12px 14px;border-radius:8px;border:1px solid var(--line);font-size:16px}.ask-form .btn{padding:12px 16px}@media(max-width:680px){.ask-fab{bottom:calc(86px + env(safe-area-inset-bottom,0px))}.ask-panel{inset:auto 0 0;width:100%;height:82vh;border-radius:16px 16px 0 0}}.admin-table .wrap-cell{white-space:normal;min-width:260px;max-width:520px;vertical-align:top}.admin-table.qa td{vertical-align:top}.guide-top .greet{display:block}.wifi-qr{margin-top:12px}.wifi-qr summary{cursor:pointer;font-size:14px;font-weight:600}.wifi-qr svg{width:160px;height:160px;margin-top:10px;border-radius:8px}.g-tabs{position:sticky;top:81px;z-index:15;display:flex;gap:6px;overflow-x:auto;margin:12px -4px 0;padding:10px 4px;background:var(--bg);scrollbar-width:none}.g-tabs::-webkit-scrollbar{display:none}.g-tabs a{flex:none;display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;border:1px solid var(--line);text-decoration:none;font-size:14px;font-weight:600;color:var(--ink);background:var(--bg)}.g-tabs a .ico{width:18px;height:18px;color:var(--green)}.g-tabs a[aria-current=true]{background:var(--ink);border-color:var(--ink);color:var(--bg)}.g-tabs a[aria-current=true] .ico{color:var(--bg)}.g-group>:first-child{margin-top:6px!important}.g-group[hidden]{display:none}.guide .tiles{margin-top:0}.city-switch{display:flex;gap:8px;margin-top:18px}.city-switch a{padding:9px 16px;border-radius:4px;border:1px solid rgba(255,255,255,.35);color:var(--btn-ink);text-decoration:none;font-size:14px;font-weight:600}.city-switch a[aria-current=page]{background:var(--btn-ink);color:var(--btn);border-color:var(--btn-ink)}.date-chip{display:inline-block;padding:4px 9px;border-radius:6px;background:var(--green-soft);color:var(--green);font-size:12.5px;font-weight:700;white-space:nowrap}.places li.away{opacity:.7}.walk-map{height:300px;margin-top:14px;border:1px solid var(--line)}.walk-stops{margin:14px 0 0;padding-left:22px;display:grid;gap:10px}.walk-stops li{padding-left:4px}.walk-stops li::marker{font-family:var(--display);font-weight:800;color:var(--green)}.walk-stops strong{display:block}.walk-stops .muted,.walk-stops .small{display:block;font-size:14px}.map-num{width:28px;height:28px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;font:700 13px/1 var(--body);border:2px solid #fff;box-shadow:0 4px 10px -4px #1f1e1c80;cursor:pointer}.indie-note{display:flex;align-items:center;gap:8px;margin:10px 0 0;padding:10px 12px;border-radius:8px;background:var(--green-soft);color:var(--green);font-size:14px;font-weight:600}.indie-note .ico{width:18px;height:18px;flex:none}.cuisine-chips{display:flex;gap:6px;overflow-x:auto;margin:14px -4px 0;padding:0 4px 4px;scrollbar-width:none}.cuisine-chips button{flex:none;padding:7px 12px;border-radius:999px;border:1px solid var(--line);background:var(--bg);font-size:13.5px;font-weight:600;cursor:pointer;color:var(--ink)}.cuisine-chips button[aria-pressed=true]{background:var(--green);border-color:var(--green);color:#fff}.places li[hidden]{display:none}.top-badge{display:inline-block;width:fit-content;margin-top:4px;padding:2px 8px;border-radius:999px;background:var(--ink);color:var(--bg);font-size:11.5px;font-weight:700;letter-spacing:.04em}.sub-tabs{display:flex;gap:6px;overflow-x:auto;margin:4px -4px 0;padding:4px;scrollbar-width:none}.sub-tabs::-webkit-scrollbar{display:none}.sub-tabs button{flex:none;padding:8px 13px;border-radius:6px;border:1px solid var(--line);background:var(--surface);font-size:13.5px;font-weight:600;color:var(--ink);cursor:pointer}.sub-tabs button[aria-pressed=true]{background:var(--green-soft);border-color:var(--green);color:var(--green)}.g-group section[hidden]{display:none}.places li[data-more]{display:none}.more-btn{margin-top:14px}.tour-info{margin-top:12px}.tour-info summary{cursor:pointer;font-weight:600;font-size:15px}.tour-info .list{margin-top:8px}.guide h2>.ico{width:26px;height:26px;flex:none;color:var(--green)}.partner-row{display:grid;grid-template-columns:minmax(200px,1fr) minmax(160px,.8fr) minmax(100px,.5fr) auto auto auto;gap:8px;align-items:end}.partner-row label{display:flex;flex-direction:column;gap:4px}.partner-row textarea{padding:9px 10px;border:1px solid var(--line);border-radius:6px;background:var(--bg);font:inherit;font-size:14px;resize:vertical}.partner-row input,.partner-row select{padding:9px 10px;border:1px solid var(--line);border-radius:6px;background:var(--bg);min-width:0}.partner-row .btn{padding:9px 14px}.perk-full{white-space:pre-line;display:none;grid-column:1 / -1;margin:-4px 0 0;padding:12px 14px;border-radius:8px;background:var(--green-soft);color:var(--ink);font-weight:600}.perks-unlocked .places li:has(.perk-open[open]) .perk-full{display:block}.bsel{position:relative;min-width:0}.bsel-btn{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:13px 12px;border:1px solid var(--line);border-radius:6px;background:var(--bg);font:inherit;font-size:15px;color:var(--ink);text-align:left;cursor:pointer}.bsel-btn span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bsel-btn .placeholder{color:var(--ink-soft)}.bsel-btn svg{width:16px;height:16px;flex:none;transition:transform .2s ease}.bsel.open .bsel-btn{border-color:var(--green)}.bsel.open .bsel-btn svg{transform:rotate(180deg)}.input .bsel-btn{padding:15px 16px;font-size:16px}.bsel .pop{left:0;right:0;min-width:220px;max-height:340px;overflow-y:auto;z-index:60;padding:8px}@media(max-width:680px){.bsel .pop{max-height:70vh;left:0;right:0}}.stars{display:flex;gap:8px}.stars button{width:52px;height:52px;display:grid;place-items:center;border:1px solid var(--line);border-radius:12px;background:var(--bg);cursor:pointer;color:var(--ink-soft)}.stars button .ico{width:28px;height:28px}.stars button.on{background:var(--green);border-color:var(--green);color:#fff}.stars button.on .ico{fill:currentColor}.stars button:focus-visible{outline:2px solid var(--green);outline-offset:2px}.review textarea{padding:14px 16px;border-radius:6px;border:1px solid var(--line);background:var(--bg);width:100%;font:inherit;resize:vertical}.review textarea:focus{outline:none;border-color:var(--green)}.leave-nudge{display:flex;align-items:center;gap:12px;margin:6px 0 12px;padding:14px 18px;border-radius:10px;background:var(--green);color:#fff;text-decoration:none}.leave-nudge .ico{width:24px;height:24px;flex:none}.admin-table tr.low td{background:#fbedea}.google-ask{display:flex;gap:14px;align-items:flex-start;margin:14px 0 16px;padding:16px;border-radius:12px;background:var(--green-soft)}.google-ask img{width:56px;height:56px;border-radius:50%;object-fit:cover;flex:none;box-shadow:0 0 0 2px var(--bg),0 0 0 4px var(--green)}.google-ask p{margin:0;font-size:15px;line-height:1.5}
