:root{--paper:#f3efe5;--ink:#203b30;--muted:#687267;--gold:#b29358;--line:#c9bb9e}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:5px}button{border:0;background:none}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400}h1{font-size:clamp(32px,3.4vw,52px);line-height:1.12}h2{font-size:30px;line-height:1.15}h3{font-size:25px}p{line-height:1.75}header{height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 3.4%;border-bottom:1px solid #b7a98750;gap:16px}.brand{font:25px Georgia,serif;text-align:center}.brand span{display:block;font:8px Arial,sans-serif;letter-spacing:3px;text-transform:uppercase;margin-top:3px}.contents-button{display:flex;gap:10px;align-items:center;font-size:11px;letter-spacing:1px;min-height:44px;text-transform:uppercase}.contents-button>span:first-child{font-size:17px;color:var(--gold)}.utilities{display:flex;align-items:center;gap:18px}.language{display:flex;border:1px solid #ad9568;border-radius:24px;padding:2px}.language button{width:42px;height:32px;border-radius:20px;font-size:11px}.language button.active{background:var(--ink);color:#f7edd4}.icon-button{height:44px;width:36px;font-size:23px}main{outline:none}footer{height:48px;display:flex;align-items:center;justify-content:space-between;padding:0 3.4%;font-size:9px;letter-spacing:2px;border-top:1px solid #b7a98750}.edition{color:var(--muted)}footer #help{font-size:11px;min-height:40px;color:var(--ink)}#offline{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.eyebrow{display:block;text-transform:uppercase;letter-spacing:2px;font-size:10px;line-height:1.6;color:#987940;margin:0 0 18px}.gold-rule{display:block;width:34px;height:1px;background:var(--gold);margin:20px 0}.button{display:inline-flex;align-items:center;gap:14px;justify-content:space-between;text-decoration:none;font-size:12px;min-height:44px;line-height:1.5;padding:9px 0;border-bottom:1px solid #b2935870;text-align:left}.button span{font-size:17px;color:#967334}.back{display:block;text-transform:uppercase;letter-spacing:1px;font-size:9px;min-height:44px;padding:0;margin-bottom:26px;color:var(--muted)}.actions{display:flex;flex-direction:column;align-items:flex-start;gap:5px;margin-top:25px}.small-note,.spa-note{font-size:13px;color:var(--muted);line-height:1.7}.skip{position:fixed;top:-100px;left:20px;z-index:30;padding:15px;background:var(--paper);color:var(--ink)}.skip:focus{top:10px}
/* The cover keeps each chapter photograph whole, in a dark photographic mount. */
body[data-page="home"]{background:#142a20;color:#f9f0da}body[data-page="home"] header{position:absolute;inset:0 0 auto;z-index:5;border:0;color:#22372b}body[data-page="home"] header .brand{visibility:hidden}body[data-page="home"] .contents-button{visibility:hidden}body[data-page="home"] .language{background:#f5eedfba}body[data-page="home"] footer{position:relative;background:#15291e;color:#eedcb7;border-color:#b2935840}body[data-page="home"] footer .edition,body[data-page="home"] footer #help{color:#eedcb7}.cover{height:calc(100dvh - 48px);min-height:660px;position:relative;isolation:isolate;display:flex;flex-direction:column;padding:80px 3.4% 16px}.cover-landscape{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 42%;z-index:-3}.cover:before{content:'';position:absolute;inset:0;z-index:-2;background:linear-gradient(180deg,#fff6de99 0%,#faf0d52b 33%,#0e24138f 60%,#0c1d13ed 100%)}.cover:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#f6eddcb0,transparent 63%);height:42%}.cover-heading{color:#1c3428;width:53%;max-width:660px;text-align:center;margin:0 0 28px}.cover-heading h1{font-size:clamp(27px,3.1vw,49px);letter-spacing:-.5px}.location{font-size:10px;letter-spacing:5px;margin-top:12px}.cover-heading .gold-rule{margin:17px auto}.cover-motto{font-size:9px;text-transform:uppercase;letter-spacing:2.5px;line-height:1.9}.cover-chapters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;width:100%;margin-top:auto}.chapter{display:flex;flex-direction:column;padding:0;text-align:left;min-width:0;overflow:hidden;border:1px solid #e0ce9bba;border-radius:5px;background:linear-gradient(150deg,#26392a,#0c1e12);box-shadow:0 8px 35px #0003;color:#f6efdf;transition:transform .3s}.chapter:hover{transform:translateY(-4px)}.chapter-photo{display:block;height:clamp(160px,26vh,290px);padding:12px 10px 0;background:#16271d}.chapter-photo img{width:100%;height:100%;object-fit:contain}.chapter-copy{display:block;position:relative;padding:18px 20px 23px;min-height:145px}.chapter-copy>small{display:block;font:10px Georgia,serif;letter-spacing:2px;color:#d8bd81;margin-bottom:7px}.chapter-copy strong{font:clamp(22px,2.5vw,37px) Georgia,serif;letter-spacing:1px;text-transform:uppercase}.chapter-copy .gold-rule{margin:11px 0}.chapter-sub{display:block;font-size:9px;text-transform:uppercase;letter-spacing:1.6px;line-height:1.8;max-width:76%}.round-arrow{position:absolute;right:18px;bottom:22px;border:1px solid #d1af67;border-radius:50%;width:37px;height:37px;display:grid;place-items:center;font-size:22px;color:#e7cd91}.cover-instruction{text-align:center;font:italic 14px Georgia,serif;letter-spacing:.5px;color:#e1d5b9;padding-top:18px}
/* A spread is a single screen: a complete photograph and a quiet facing page. */
.book-spread{height:calc(100dvh - 112px);min-height:560px;max-width:1800px;margin:auto;display:grid;grid-template-columns:64% 36%;background:linear-gradient(90deg,#f4f0e7 0%,#f4f0e7 63.6%,#d9d0bd 64%,#ece6d9 64.4%,#f4f0e7 66%);animation:appear .35s ease-out}.gallery{position:relative;height:100%;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto 48px;padding:34px 38px 17px;gap:15px;overflow:hidden}.photo-view{display:block;width:100%;height:100%;min-height:0;padding:0;cursor:zoom-in}.main-photo{display:block;width:100%;height:100%;object-fit:contain;object-position:center}.photo-caption{font:italic 14px Georgia,serif;text-align:center;color:#696a57;line-height:1.4;min-height:20px}.gallery-controls{display:flex;align-items:center;justify-content:center;gap:25px}.gallery-controls button{width:46px;height:44px;font:24px Georgia,serif;color:#9c7b3e}.count{min-width:65px;text-align:center;font:12px Georgia,serif;letter-spacing:2px;color:#6f6b5a}.count i{font-style:normal;color:#bcaf93;padding:0 8px}.story{align-self:center;padding:20px 13% 24px 12%;max-height:100%;overflow:auto}.story h1{font-size:clamp(31px,3vw,48px);letter-spacing:-.7px}.story p{font:16px/1.85 Georgia,'Times New Roman',serif;color:#536052}.story .gold-rule{margin:24px 0}.story-foot{display:block;font-size:8px;letter-spacing:2px;text-transform:uppercase;color:#9b8a68;margin-top:38px;line-height:1.8}.chapter-dot{padding:0 7px}.chapter-index{height:calc(100dvh - 112px);min-height:610px;padding:28px 5% 30px;display:grid;grid-template-columns:26% 74%;gap:0;max-width:1800px;margin:auto}.index-heading{padding:5px 14% 20px 0;align-self:center}.index-heading h1{font-size:clamp(36px,3.8vw,58px)}.index-heading p{font:15px/1.8 Georgia,serif;color:var(--muted);margin-top:25px}.experience-index{display:grid;grid-template-columns:1fr 1fr;gap:22px 26px;min-height:0;border-left:1px solid #c9bb9e70;padding-left:35px}.experience-entry{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);min-height:0;align-items:center;padding:0;text-align:left;gap:15px}.entry-photo{height:100%;min-height:0;display:grid;align-items:center}.entry-photo img{width:100%;height:100%;object-fit:contain;max-height:230px}.entry-copy{padding-right:12px}.entry-copy small,.folio{color:#9f8149;font:12px Georgia,serif;display:block;margin-bottom:14px}.entry-copy h2{font-size:25px}.entry-copy p{font-size:10px;letter-spacing:.5px;color:var(--muted);margin:12px 0}.text-link{font-size:10px;color:#846b40;display:inline-block;line-height:1.6}.partner-index{display:block;height:auto;min-height:calc(100dvh - 112px)}.partner-index .index-heading{padding:0;display:grid;grid-template-columns:1fr 2fr;column-gap:50px;align-items:end}.partner-index .index-heading .back{grid-column:1/-1;margin-bottom:3px}.partner-index .index-heading .eyebrow{grid-column:1/-1;margin:0 0 8px}.partner-index .index-heading h1{font-size:35px}.partner-index .index-heading p{margin:0;max-width:650px;font-size:14px}.partner-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:25px}.partner-photo{height:clamp(160px,28vh,310px)}.partner-photo img{width:100%;height:100%;object-fit:contain}.partner-grid .folio{margin:18px 0 10px}.partner-grid h2{font-size:26px}.partner-grid p{font:14px/1.7 Georgia,serif;color:var(--muted);margin:12px 0}
/* Menus and practical information live on separate leaves. */
dialog{border:1px solid #c9b17b;background:var(--paper);color:var(--ink);width:min(1000px,92vw);max-height:92dvh;padding:40px 50px;box-shadow:0 20px 100px #0006}dialog::backdrop{background:#0d2118e0;backdrop-filter:blur(5px)}.close{position:sticky;float:right;top:0;border:1px solid #c9bb9e;background:var(--paper);width:42px;height:42px;border-radius:50%;font-size:25px;z-index:5}dialog h2{padding-right:40px;font-size:34px;margin-bottom:22px}dialog h3{margin:20px 0 10px}dialog p{font:16px/1.8 Georgia,serif;max-width:730px;margin-bottom:15px}dialog .gallery{height:65vh;padding:15px 0 0}dialog .menu-full{width:100%;height:auto;display:block;margin-top:20px}.photograph-dialog{width:96vw;max-width:1600px;background:#101c15;color:#ece3cf;padding:20px;height:94dvh;max-height:94dvh;border-color:#9a8051}.photograph-dialog .close{background:#1c2b20;color:#eee0bd}.full-photograph{display:block;width:100%;height:calc(94dvh - 130px);object-fit:contain}.lightbox-caption{text-align:center;margin:15px auto 0!important;font-size:14px!important}.contents-list{margin:25px 0}.contents-list button{width:100%;display:grid;grid-template-columns:35px 1fr 1fr 25px;align-items:center;gap:12px;padding:24px 0;text-align:left;border-top:1px solid #c9bb9e80}.contents-list small{font:12px Georgia,serif;color:#9f8149}.contents-list span{font:30px Georgia,serif}.contents-list em{font:italic 14px Georgia,serif;color:var(--muted)}.contents-list b{font-size:22px;color:var(--gold);font-weight:400}.stops{display:grid;grid-template-columns:1fr;gap:10px}.stop{border-top:1px solid #c9bb9e80;padding:10px 0}.stop h3{font-size:25px}.stop p{color:var(--muted)}.menus{display:grid;grid-template-columns:1fr 1fr;gap:30px}.menu{padding:0}.menu img{width:100%;height:55vh;object-fit:contain}.menu span{display:block;font:18px Georgia,serif;margin-top:15px}.treatment-tabs{display:flex;gap:20px;flex-wrap:wrap;margin:20px 0}.treatment-tabs button{min-height:44px;border-bottom:1px solid transparent;padding:8px 0;font-size:12px}.treatment-tabs button.active{border-color:var(--gold);color:#93723c}.treatments{display:grid;grid-template-columns:1fr 1fr;gap:0 40px}.treatment{padding:18px 0;border-top:1px solid #c9bb9e80}.treatment h3{font-size:22px;margin:0 0 8px}.treatment p{font-size:14px;color:var(--muted);margin-bottom:9px}.price{font-size:12px;line-height:1.9;letter-spacing:.3px}.spa-note{margin-top:25px!important;font:12px/1.7 Arial,sans-serif!important}
@keyframes appear{from{opacity:.3;transform:translateX(5px)}to{opacity:1;transform:none}}
@media(min-width:1500px){.cover{padding-top:90px}.cover-heading{margin-bottom:40px}.chapter-copy{padding:25px 27px 28px}.chapter-photo{height:30vh}.chapter-copy strong{font-size:35px}.chapter-sub{font-size:11px}.story p{font-size:18px}.story h1{font-size:48px}}
@media(max-width:1100px){.book-spread{grid-template-columns:60% 40%;background:linear-gradient(90deg,#f4f0e7 0%,#f4f0e7 59.5%,#d9d0bd 60%,#f4f0e7 62%)}.gallery{padding:25px 24px 12px;gap:12px}.story{padding:16px 10%}.story h1{font-size:33px}.story p{font-size:15px;line-height:1.8}.story-foot{margin-top:25px}.story .back{margin-bottom:15px}.chapter-index{grid-template-columns:24% 76%;padding:20px 3%}.experience-index{padding-left:20px;gap:15px}.experience-entry{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) auto;gap:10px}.entry-photo img{max-height:150px}.entry-copy{padding:0}.entry-copy small{float:left;margin:4px 12px 0 0}.entry-copy h2{font-size:22px}.entry-copy p{margin:7px 0}.text-link{display:none}.cover-heading{width:65%}.cover{padding-top:78px;min-height:640px}.chapter-copy{padding:15px 13px 19px}.chapter-copy strong{font-size:25px}.chapter-sub{font-size:8px;letter-spacing:1px}.round-arrow{width:29px;height:29px;right:12px;bottom:20px;font-size:19px}.cover-chapters{gap:12px}.chapter-photo{height:25vh;padding:9px 8px 0}.cover-heading h1{font-size:35px}}
@media(max-width:700px){header{height:62px;padding:0 5%;gap:10px}.brand{font-size:19px}.brand span{font-size:7px;letter-spacing:1.7px}.contents-button{font-size:9px;gap:6px}.utilities{gap:6px}.language button{width:32px;height:30px}.icon-button{width:27px;font-size:21px}.cover{height:auto;min-height:calc(100dvh - 48px);padding:85px 5% 20px}.cover-heading{width:100%;margin-bottom:30px}.cover-heading h1{font-size:31px}.cover-motto{font-size:8px;letter-spacing:2px}.location{letter-spacing:3px}.cover:after{height:340px;background:#f5edda70}.cover-landscape{object-position:55% center}.cover-chapters{grid-template-columns:1fr 1fr;gap:14px}.chapter-photo{height:145px;padding:8px}.chapter-copy{min-height:125px;padding:12px 12px 17px}.chapter-copy strong{font-size:21px;letter-spacing:0}.chapter-copy .gold-rule{margin:9px 0}.chapter-copy>small{font-size:9px;margin-bottom:6px}.chapter-sub{font-size:8px;max-width:80%;letter-spacing:.5px}.round-arrow{width:24px;height:24px;font-size:17px;right:10px;bottom:14px}.cover-instruction{font-size:12px;padding-top:20px}.book-spread{height:auto;min-height:0;display:flex;flex-direction:column;background:var(--paper)}.gallery{height:55dvh;min-height:340px;padding:25px 20px 10px;gap:8px;grid-template-rows:minmax(0,1fr) auto 42px}.photo-caption{font-size:12px}.story{padding:25px 8% 35px;overflow:visible;width:100%;border-top:1px solid #c9bb9e60}.story h1{font-size:36px}.story p{font-size:16px}.story .back{margin-bottom:20px}.story-foot{margin-top:25px}.actions{margin-top:20px}.chapter-index{display:block;height:auto;min-height:0;padding:25px 6%}.index-heading{padding:0 0 25px}.index-heading p{margin-top:15px}.index-heading .back{margin-bottom:10px}.experience-index{padding:0;border:0;gap:28px 18px;grid-template-columns:1fr 1fr}.experience-entry{display:block}.entry-photo{height:145px}.entry-copy small{float:none;margin:12px 0 8px}.entry-copy h2{font-size:22px}.partner-index .index-heading{display:block}.partner-index .index-heading h1{font-size:34px}.partner-index .index-heading p{margin-top:15px}.partner-grid{grid-template-columns:1fr;gap:28px;margin-top:0}.partner-photo{height:260px}.partner-grid h2{font-size:28px}footer{padding:0 5%;height:55px;gap:10px}.edition{font-size:8px;letter-spacing:1px}footer #help{font-size:10px}dialog{padding:25px;width:94vw}dialog h2{font-size:29px}.contents-list button{grid-template-columns:25px 1fr 20px;gap:10px;padding:20px 0}.contents-list em{display:none}.contents-list span{font-size:27px}.menus{gap:15px}.menu img{height:38vh}.menu span{font-size:16px}.treatments{grid-template-columns:1fr}.treatment-tabs{gap:16px}.treatment-tabs button{font-size:11px}.photograph-dialog{padding:10px}.full-photograph{height:calc(94dvh - 120px)}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Feather the cover wash into the landscape rather than ending it at a seam. */
.cover:after{height:100%;background:linear-gradient(115deg,rgba(247,238,216,.72) 0%,rgba(247,238,216,.3) 26%,transparent 52%);pointer-events:none}
@media(max-width:700px){.cover:after{height:100%;background:linear-gradient(180deg,#f5edda90 0%,#f5edda30 26%,transparent 43%)}}
/* Photographic chapters share the cover's deep green and gold. */
body:not([data-page="home"]){background:#10251b;color:#f4ecd9}body:not([data-page="home"]) header,body:not([data-page="home"]) footer{border-color:#b293583d}body:not([data-page="home"]) .brand,body:not([data-page="home"]) #help{color:#f4ecd9}body:not([data-page="home"]) .edition{color:#c9b98f}body:not([data-page="home"]) .language button.active{background:#d1b577;color:#10251b}.book-spread{grid-template-columns:minmax(0,1fr) 240px;background:#10251b;max-width:none;min-height:560px}.gallery{padding:14px 18px 10px 26px;gap:8px;grid-template-rows:minmax(0,1fr) auto 42px}.photo-caption{color:#d1c4a7;font-size:13px}.gallery-controls button{color:#ddc18a}.count{color:#e3d4b3}.story{padding:22px 24px 22px 20px;align-self:center;overflow:auto;border-left:1px solid #b293583b}.story h1{font-size:30px;line-height:1.16;color:#fff4dc;letter-spacing:-.3px}.story .eyebrow{color:#d1b577;font-size:9px;letter-spacing:1.5px;margin-bottom:18px}.story .gold-rule{margin:22px 0}.story .back{color:#c9bb9b;margin-bottom:30px}.story .actions{margin-top:0;gap:10px;align-items:stretch}.story .button{color:#eee2c7;font-size:11px;border-color:#b2935855;padding:12px 0}.story .button span{color:#e0c17e}.story-foot{color:#b8a77e;font-size:8px;margin-top:32px;letter-spacing:1.5px}.chapter-index{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);padding:18px 3% 25px;gap:20px}.index-heading{display:flex;align-items:baseline;gap:25px;padding:0}.index-heading .back{margin:0;color:#c9bb9b}.index-heading .eyebrow{margin:0;color:#d1b577}.index-heading h1{font-size:35px}.index-heading>p{display:none}.experience-index{padding:0;border:0;gap:22px;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:1fr}.experience-entry{display:flex;flex-direction:column;align-items:stretch;gap:17px;min-width:0}.entry-photo{flex:1;min-height:0;width:100%}.entry-photo img{max-height:none;height:100%;width:100%;object-fit:contain}.entry-copy{padding:15px 0 0;border-top:1px solid #b2935850;min-height:135px}.entry-copy small{color:#cfb77e;float:none;margin:0 0 10px}.entry-copy h2{font-size:25px}.entry-copy p{color:#c9bb9b;font-size:11px}.text-link{display:none}.partner-index{display:grid;height:calc(100dvh - 112px);min-height:600px}.partner-index .index-heading{display:flex;align-items:baseline;gap:20px;padding:0}.partner-index .index-heading .back{margin:0}.partner-index .index-heading .eyebrow{margin:0}.partner-index .index-heading p{display:none}.partner-grid{margin:0;min-height:0;gap:28px}.partner-grid article{min-height:0;display:flex;flex-direction:column}.partner-photo{flex:1;height:auto;min-height:0}.partner-grid p{color:#c9bb9b;font-size:13px}.partner-grid .button{color:#eee2c7}.partner-grid .folio{margin:16px 0 9px;color:#cfb77e}.partner-grid h2{font-size:24px}dialog{background:#f3efe5;color:#203b30}dialog .photo-caption,dialog .count{color:#696a57}dialog .gallery-controls button{color:#9c7b3e}.photograph-dialog{background:#10251b;color:#f4ecd9}
@media(min-width:1500px){.book-spread{grid-template-columns:minmax(0,1fr) 290px}.story h1{font-size:36px}.story{padding:25px 35px}.gallery{padding:18px 24px 12px 35px}}
@media(max-width:1100px){.book-spread{grid-template-columns:minmax(0,1fr) 210px}.story{padding:18px 19px}.story h1{font-size:27px}.gallery{padding:14px 15px 8px}.story .back{margin-bottom:22px}.experience-index{gap:17px}.entry-copy h2{font-size:22px}.index-heading{gap:15px}.index-heading h1{font-size:30px}}
@media(max-width:700px){.book-spread{display:flex;flex-direction:column;min-height:0;height:auto}.gallery{height:66dvh;min-height:370px;width:100%;padding:12px 14px 6px}.story{border-left:0;border-top:1px solid #b293583b;padding:24px 7%;width:100%;overflow:visible}.story h1{font-size:33px}.story .back{margin-bottom:15px}.story .actions{display:flex;flex-direction:row;flex-wrap:wrap;gap:10px 24px}.story-foot{margin-top:25px}.chapter-index{display:block;height:auto;min-height:0;padding:22px 5%}.index-heading{display:block;padding-bottom:20px}.index-heading .back{margin-bottom:10px}.index-heading .eyebrow{margin-bottom:10px}.experience-index{grid-template-columns:1fr 1fr;gap:28px 18px;grid-template-rows:auto}.experience-entry{display:flex}.entry-photo{height:230px;flex:none}.entry-copy{min-height:115px;padding-top:12px}.entry-copy h2{font-size:23px}.partner-index{display:block;height:auto}.partner-index .index-heading{display:block}.partner-index .index-heading .back{margin-bottom:10px}.partner-grid{display:grid;grid-template-columns:1fr;gap:30px}.partner-photo{height:320px;flex:none}.partner-grid h2{font-size:28px}}
/* Identity, original printed menus and the photographic interlude. */
.brand img{width:220px;max-height:66px;object-fit:contain;filter:invert(1)}
.cover-wordmark{width:min(440px,40vw);height:auto}.cover-heading h1{line-height:1}
.venue-logo{width:150px;max-height:95px;object-fit:contain;background:transparent;padding:0;margin:12px 0;filter:brightness(0) invert(1);opacity:.88}.dialog-logo{display:block;width:190px;max-height:125px;object-fit:contain;margin:0 auto 24px}
.rate-table{width:100%;border-collapse:collapse;margin:24px 0;font-variant-numeric:tabular-nums}.rate-table th,.rate-table td{text-align:left;padding:12px;border-bottom:1px solid #c7b88f}.rate-table thead{background:#e9e2d3}.fact-time{color:#74602b;font-weight:600}
.card-shelf{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.card-shelf button{background:transparent;border:0;color:inherit;padding:0;text-align:left}.card-shelf img{width:100%;height:300px;object-fit:contain;filter:drop-shadow(0 12px 12px #0003)}.card-shelf span{display:block;text-align:center;margin:16px 0;font-family:Georgia,serif;font-size:18px}
.viewer-controls{display:flex;align-items:center;justify-content:center;gap:15px;flex-wrap:wrap;margin:16px 0}.viewer-controls button,.menu-jumps button{padding:12px 18px;border:1px solid #a38c53;background:transparent;color:inherit;border-radius:0;min-height:44px}.viewer-controls [aria-pressed=true]{background:#203b2c;color:#fff}.menu-jumps{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:20px}.menu-jumps button{font-size:12px}.restaurant-menu-dialog{width:min(1100px,94vw)}.restaurant-page{display:block;max-height:70vh;max-width:100%;margin:auto;object-fit:contain}.restaurant-page.enlarged{max-height:none;width:100%}.menu-dialog .menu-full{max-width:850px;margin:auto;display:block}.cards-dialog{width:min(1100px,94vw)}
#attract{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;background:#071710;overflow:hidden}#attract::backdrop{background:#071710}.attract-surface{position:relative;display:block;width:100%;height:100%;border:0;background:#071710;padding:0;color:white;cursor:pointer}.attract-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity 2.5s ease}.attract-photo.visible{opacity:1}.attract-surface:after{content:'';position:absolute;inset:0;background:linear-gradient(#00180d75,transparent 25%,transparent 70%,#00180dcf)}.attract-wordmark{position:absolute;z-index:1;top:4%;left:50%;transform:translateX(-50%);width:min(360px,45vw);filter:invert(1)}.attract-caption,.attract-prompt{position:absolute;z-index:1;left:0;right:0;text-align:center}.attract-caption{bottom:10%;font:italic 28px Georgia,serif;text-shadow:0 2px 10px #000}.attract-prompt{bottom:5%;font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:#e5c98d}#slideshow-preview{font-size:10px;letter-spacing:.06em}
@media(max-width:700px){.card-shelf{grid-template-columns:repeat(2,1fr)}.card-shelf img{height:220px}.brand img{width:150px}.venue-logo{max-height:75px}.cover-wordmark{width:80vw}.attract-caption{font-size:21px}}
@media(prefers-reduced-motion:reduce){.attract-photo{transition:none}}

.venue-logo,.dialog-logo,.brand img,.cover-wordmark,.attract-wordmark{background:transparent;border:0;box-shadow:none}.dialog-logo.bar-logo{max-height:140px}

/* Lao shaping needs natural spacing and room above and below the glyphs. */
:lang(lo){font-family:"Noto Sans Lao","Lao Sangam MN","Phetsarath OT",sans-serif;letter-spacing:normal!important;text-transform:none!important}
html:lang(lo) h1,html:lang(lo) h2,html:lang(lo) h3,html:lang(lo) button,html:lang(lo) p,html:lang(lo) span,html:lang(lo) .eyebrow{line-height:1.65}
html:lang(lo) .story h1{font-size:clamp(24px,2.2vw,34px);line-height:1.5}
html:lang(lo) .story .actions .button{font-size:14px;padding:13px 0}
html:lang(lo) .chapter strong{font-size:clamp(23px,3vw,38px)}
html:lang(lo) .chapter-sub,html:lang(lo) .cover-motto{font-size:14px}
html:lang(lo) .photo-caption{font-style:normal;font-size:16px;line-height:1.7}
.language button[lang=lo]{font-size:15px;line-height:1.6;min-width:48px}
@media(max-width:700px){html:lang(lo) .story h1{font-size:26px}.utilities{gap:6px}.language button{min-width:40px;padding:8px 9px}}

/* October refinement: generous photographs and clearly visible navigation. */
.cover{overflow:hidden}
.cover-landscape{object-position:center 72%;height:115%;top:-15%;bottom:auto}
.back,.story .back,.index-heading .back{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:9px 16px;border:1px solid #d6b979;border-radius:5px;background:#d6b97918;color:#f8e7bd;font-size:12px;font-weight:600;letter-spacing:1px;line-height:1.4}
.back-arrow{font-size:26px;font-family:Arial,sans-serif;line-height:1!important;font-weight:400}
.back:hover,.back:focus-visible{background:#d6b979;color:#10251b}
dialog .back{color:#203b30;background:#d6b97920}
.gallery-controls button{display:inline-flex;align-items:center;justify-content:center;border:1px solid #c9aa6b;border-radius:50%;background:#d6b97912;color:#f8e7bd;font-family:Arial,sans-serif;line-height:1}
.story .booking-link,.booking-link{padding:12px 14px!important;border:1px solid #c9aa6b;background:#d6b979;color:#10251b!important;border-radius:3px;font-weight:600}
.story .booking-link span,.booking-link span{color:#10251b}
.partner-spread{padding:26px 3.4% 24px;min-height:calc(100dvh - 112px)}
.partner-heading{display:flex;gap:30px;align-items:center;margin-bottom:30px}
.partner-heading .back{flex-shrink:0;margin:0}
.partner-heading .eyebrow{margin-bottom:8px;color:#d1b577}
.partner-heading h1{font-size:clamp(30px,3vw,46px)}
.partner-chapters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.partner-chapter{min-width:0;display:flex;flex-direction:column}
.partner-title{display:flex;gap:14px;align-items:baseline;min-height:70px;border-top:1px solid #b2935860;padding-top:20px}
.partner-title .folio{color:#d1b577;margin:0}
.partner-title h2{font-size:clamp(23px,2.1vw,34px);line-height:1.25}
.partner-chapter .gallery{height:clamp(320px,46dvh,620px);min-height:320px;padding:16px 0 8px;flex:none;grid-template-rows:minmax(0,1fr) 40px 46px;gap:10px}
.partner-chapter .photo-caption{align-self:center}
.partner-chapter>p{font:16px/1.7 Georgia,serif;color:#e1d5b9;margin-top:14px}
.partner-chapter .actions{margin-top:auto;padding-top:18px}
.partner-chapter .button,.partner-help .button{color:#f4ecd9;font-size:13px}
.partner-help{display:flex;justify-content:center;margin-top:26px}
.brand{display:flex;align-items:center;justify-content:center}.brand img{display:block;max-height:54px}
.language button{display:inline-flex;align-items:center;justify-content:center;padding-top:0;padding-bottom:0}
footer>span,footer>button{display:inline-flex;align-items:center;justify-content:center;line-height:1.4;min-height:40px}
.attract-heading,.attract-footer{position:absolute;left:0;right:0;z-index:1;display:flex;align-items:center;justify-content:center;box-sizing:border-box;text-align:center}
.attract-heading{top:0;height:20%;min-height:100px;padding:20px 5%}
.attract-heading .attract-wordmark{position:static;transform:none;display:block;max-height:100%;width:min(360px,45vw);object-fit:contain}
.attract-footer{bottom:0;min-height:120px;height:20%;padding:20px 5%;flex-direction:column;gap:16px}
.attract-footer .attract-caption,.attract-footer .attract-prompt{position:static;display:block;line-height:1.4;margin:0}
.attract-footer .attract-caption{font-size:clamp(20px,2.5vw,32px)}
@media(max-width:900px){.partner-chapters{gap:22px}.partner-title{min-height:94px}.partner-chapter>p{font-size:14px}.partner-chapter .gallery{height:390px}.partner-chapter .photo-caption{font-size:12px}}
@media(max-width:700px){.partner-heading{align-items:flex-start;flex-direction:column;gap:20px}.partner-chapters{grid-template-columns:1fr;gap:36px}.partner-title{min-height:0}.partner-chapter .gallery{height:65dvh;min-height:350px}.partner-chapter>p{font-size:16px}.partner-chapter .photo-caption{font-size:14px}.partner-spread{padding:24px 6%}.cover-landscape{height:110%;top:-10%}.attract-footer{gap:12px}.attract-footer .attract-prompt{font-size:10px}}

/* Hotel identity on the cover; restaurant and spa offer direct booking. */
.cover-hotel-logo{display:block;width:min(440px,44vw);height:clamp(140px,21vh,200px);object-fit:contain;margin:0 auto;background:transparent}
.cover-heading:has(.cover-hotel-logo){margin-bottom:18px}
.cover-heading:has(.cover-hotel-logo) .gold-rule{margin:12px auto}
body[data-page="restaurant"] footer #help,body[data-page="spa"] footer #help{display:none}
@media(max-width:700px){.cover-hotel-logo{width:85vw;height:180px}}

/* Keep the cover invitation legible over the mountain photograph. */
.cover-motto{display:inline-block;max-width:100%;padding:10px 18px;font-size:clamp(14px,1.25vw,17px);font-weight:600;letter-spacing:1.4px;line-height:1.75;color:#102b21;position:relative;isolation:isolate;background:none;text-shadow:none}
html:lang(lo) .cover-motto{font-size:18px;letter-spacing:0;line-height:1.8}
@media(max-width:700px){.cover-motto{font-size:14px;letter-spacing:.7px;padding:10px 12px}}


