:root{--paper:#eee9e1;--ink:#2c2723;--muted:#665c51;--gold:#826746;--line:#c9beb0;--white:#faf7f1;--serif:Georgia,'Yu Mincho','Hiragino Mincho ProN',serif;--sans:'Yu Gothic','Hiragino Kaku Gothic ProN',Arial,sans-serif}*{box-sizing:border-box}html{scroll-padding-top:100px}body{margin:0;background:#d8d2c8;color:var(--ink);font:16px/1.8 var(--sans)}button,a,input,textarea{touch-action:manipulation}button,input,textarea{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #8b4c28;outline-offset:4px}button{color:inherit}#app{max-width:600px;margin:auto;background:var(--paper);min-height:100vh;box-shadow:0 0 80px #332b2410}header{position:sticky;top:0;z-index:10;background:#eee9e1f7;border-bottom:1px solid var(--line);padding:12px 24px;display:flex;justify-content:space-between;align-items:center;gap:10px}.brand img{display:block;width:112px;height:auto}.brand{min-height:44px;display:flex;align-items:center}.tools{display:flex;align-items:center;gap:4px}.tools button{border:0;background:transparent;min-width:48px;min-height:44px;font-size:14px}.tools button[aria-pressed=true]{text-decoration:underline;text-underline-offset:6px}.tools .help{border-left:1px solid var(--line);padding-left:12px;font-size:13px}.prototype{font-size:12px;text-align:center;padding:6px 12px;background:#e1d8c9;color:#544331;letter-spacing:.04em}main{padding-bottom:30px}.hero{padding:35px 27px 0;overflow:hidden}.eyebrow{font:11px/1.5 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.hero h1{font:400 clamp(29px,6.7vw,43px)/1.65 var(--serif);letter-spacing:.05em;margin:18px 0 12px}.hero .en-line{font:italic 16px/1.5 var(--serif);color:var(--gold);margin:0 0 18px}.intro{font-size:14px;line-height:1.95;max-width:440px}.hero-image{margin:30px 0 0}.hero-image img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center 54%}.hero-image figcaption{display:flex;gap:12px;align-items:center;font:10px/1.5 var(--sans);letter-spacing:.17em;color:var(--muted);padding-top:13px}.quick{margin:26px 24px 0;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.quick a{min-height:72px;padding:13px 8px;text-decoration:none;display:flex;align-items:center;justify-content:space-between;font-size:14px}.quick a:first-child{border-right:1px solid var(--line);padding-right:16px}.quick a:last-child{padding-left:16px}.quick small{display:block;color:var(--muted);font-size:11px}.section{padding:50px 24px 0;scroll-margin-top:10px}.section h2{font:400 30px/1.5 var(--serif);margin:9px 0 8px;letter-spacing:.03em}.section-lead{font-size:14px;color:var(--muted);margin:0 0 24px}.section-no{font:italic 18px var(--serif);color:var(--gold);margin-right:10px}.experience{padding:22px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:78px 1fr;gap:18px}.experience img{width:78px;height:108px;object-fit:cover;border-radius:40px 40px 0 0}.experience .symbol{width:78px;height:90px;display:flex;justify-content:center;align-items:center;font:40px var(--serif);color:var(--gold);border:1px solid var(--line);border-radius:40px 40px 0 0}.experience h3{font:400 21px/1.5 var(--serif);margin:0 0 8px}.experience p{font-size:14px;margin:0 0 10px}.micro{font-size:12px!important;color:var(--muted)}.text-button{background:none;border:0;border-bottom:1px solid var(--gold);padding:8px 0;min-height:44px;text-align:left;font-size:13px}.lounge{background:var(--ink);color:var(--paper);padding:25px;margin-top:28px}.lounge .eyebrow{color:#d2c5b2}.lounge h3{font:400 27px var(--serif);margin:16px 0}.lounge p{font-size:14px}.rates{display:grid;grid-template-columns:1fr 1fr;gap:18px;border-block:1px solid #756b60;padding:18px 0}.rates div{font-size:12px}.rates strong{display:block;font:28px/1.6 var(--serif)}.lounge .micro{color:#d5cbbf}.night{margin:20px 0 0;padding-top:16px;border-top:1px solid #756b60}.filters{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0 16px}.filters button{border:1px solid var(--line);background:transparent;min-height:44px;padding:7px 15px;border-radius:24px;font-size:13px}.filters button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.place{border-top:1px solid var(--line)}summary{list-style:none;cursor:pointer;min-height:75px;padding:19px 28px 19px 0;position:relative}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:3px;top:24px;color:var(--gold);font:24px var(--serif)}details[open]>summary:after{content:'−'}summary h3{font:400 21px/1.5 var(--serif);margin:0}summary .eyebrow{font-size:10px}.detail-body{padding:0 0 24px;font-size:14px}.detail-body p{margin:0 0 13px}.facts{background:#e6dfd4;padding:15px 17px;margin:14px 0;font-size:13px}.source{border:0;padding:8px 0;background:none;text-decoration:underline;text-underline-offset:3px;min-height:44px;font-size:12px;text-align:left;color:var(--muted)}.stay-list{border-bottom:1px solid var(--line)}.stay-list details{border-top:1px solid var(--line)}.stay-list summary{min-height:64px;font-weight:500;font-size:16px}.stay-list summary:after{top:20px}.safe{background:#e0d6c6;padding:18px;margin:20px 0;font-size:14px}.safe strong{display:block;margin-bottom:6px}.steps{padding-left:22px}.steps li{padding:0 0 14px 6px}.steps strong{display:block}.feedback{background:#e4dccf;margin-top:45px;padding:30px 24px}.feedback h2{font-size:27px}.primary,.secondary{display:block;width:100%;min-height:52px;border:1px solid var(--ink);padding:12px 18px;text-align:center;text-decoration:none;font-size:14px}.primary{background:var(--ink);color:var(--paper)}.secondary{background:transparent;margin-top:12px}.feedback .text-button{margin-top:10px}.footer{padding:35px 24px 110px;text-align:center}.footer .signature{font:22px var(--serif)}.footer p{font-size:12px;color:var(--muted)}nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:600px;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);background:#faf7f1fa;padding-bottom:env(safe-area-inset-bottom);z-index:15}nav a{min-height:64px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-decoration:none;font-size:12px;line-height:1.8}nav a span{font:italic 16px var(--serif);color:var(--gold)}nav a[aria-current=true]{background:#e4dccf}dialog{border:1px solid var(--line);background:var(--white);color:var(--ink);width:calc(100% - 32px);max-width:500px;max-height:85dvh;padding:36px 24px 26px;box-shadow:0 15px 80px #0003;overflow:auto}dialog::backdrop{background:#29231bb3}.close{position:sticky;float:right;top:0;background:var(--white);border:0;font-size:27px;width:44px;height:44px;margin:-25px -12px 0 0}.dialog-title,dialog h2{font:26px/1.5 var(--serif);margin:6px 0 18px}dialog p{font-size:14px}dialog code{font-size:12px;overflow-wrap:anywhere;display:block;background:var(--paper);padding:12px}fieldset{border:0;padding:0;margin:20px 0}legend{font-size:15px;margin-bottom:12px}.rating{display:flex;gap:6px}.rating label{flex:1;text-align:center}.rating input{accent-color:var(--gold);width:18px;height:18px}.rating label span{display:block;border:1px solid var(--line);padding:8px 0}.rating label:has(input:checked) span{background:var(--ink);color:var(--paper)}.scale{display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}textarea{width:100%;min-height:100px;padding:12px;border:1px solid var(--line);background:white;font-size:16px}label[for=comment]{display:block;font-size:14px;margin:18px 0 8px}.skip{position:fixed;top:-100px;left:10px;padding:12px;background:white;z-index:100}.skip:focus{top:10px}[hidden]{display:none!important}.empty{padding:20px}.links{display:flex;gap:15px;flex-wrap:wrap}.admin{max-width:850px;margin:auto;background:var(--paper);padding:35px}.admin h1,.admin h2{font-family:var(--serif)}.admin table{border-collapse:collapse;width:100%;font-size:14px}.admin th,.admin td{border:1px solid var(--line);padding:10px;text-align:left}.admin code{overflow-wrap:anywhere}.admin a{overflow-wrap:anywhere}@media(min-width:550px){.hero{padding-inline:40px}.section{padding-inline:36px}.feedback{padding:35px 36px}.quick{margin-inline:36px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}@media print{header,nav,.prototype,.tools{position:static}nav,dialog{display:none}#app{max-width:none;box-shadow:none}.footer{padding-bottom:20px}}

