:root{--ink:#1a2425;--paper:#f3efe6;--cyan:#a2e4f8;--copper:#a9704a;--muted:#777d78}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.65 Arial,Helvetica,sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button,a{touch-action:manipulation}button{border:0}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #35a4bd;outline-offset:5px}header{background:#161c1e;color:#f4efe5;height:73px;display:flex;align-items:center;justify-content:space-between;padding:0 4%;gap:25px}.wordmark{font-size:17px;letter-spacing:2.5px;font-weight:700;white-space:nowrap}.wordmark>span{font-weight:400}.wordmark i{font-style:normal;color:var(--copper);font-size:25px;margin-left:3px}nav{display:flex;gap:28px;align-items:center;font-size:11px}nav button,footer button{background:none;color:inherit;padding:6px 0;font-size:11px}#sound{display:flex;align-items:center;gap:10px;border-left:1px solid #5b605d;padding-left:25px;color:#bfc8c5}#sound[aria-pressed=true]{color:var(--cyan)}#sound svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.4}.reception{position:relative;overflow:hidden;background:#1d2423;aspect-ratio:1671/941}.room{position:absolute;inset:0;transform-origin:13% 36%;transition:transform 1.45s cubic-bezier(.55,.05,.35,1),filter 1.45s;will-change:transform}.room>img{display:block;width:100%;height:100%;object-fit:fill}.book-zone{position:absolute;top:14%;height:45%;width:11%;transition:background .3s}.zone-left{left:7.8%;transform:skewY(5deg)}.zone-right{right:8%;transform:skewY(-5deg)}.corner{position:absolute;width:19px;height:19px;border-color:var(--cyan);border-style:solid;opacity:0;transition:opacity .3s,transform .3s}.tl{top:-8px;left:-8px;border-width:1px 0 0 1px}.tr{top:-8px;right:-8px;border-width:1px 1px 0 0}.bl{bottom:-8px;left:-8px;border-width:0 0 1px 1px}.br{bottom:-8px;right:-8px;border-width:0 1px 1px 0}.book-zone:hover,.book-zone:focus-visible{background:#98e5fb0a}.book-zone:hover .corner,.book-zone:focus-visible .corner,body.entered .corner{opacity:1}.book-label{position:absolute;top:109%;left:50%;transform:translateX(-50%) skewY(-5deg);background:#162529ec;backdrop-filter:blur(8px);color:#fff;width:210px;padding:13px 16px;font:19px/1.2 Georgia,serif;opacity:0;transition:opacity .3s,translate .3s;box-shadow:0 5px 20px #0003}.zone-right .book-label{transform:translateX(-50%) skewY(5deg)}.book-label small{display:block;color:#b5c9c8;font:8px Arial;letter-spacing:1.5px;margin-bottom:6px}.book-label>span{display:block;font:10px Arial;margin-top:10px;color:var(--cyan)}body.entered .book-label,.book-zone:hover .book-label,.book-zone:focus-visible .book-label{opacity:1}.welcome{position:absolute;left:50%;bottom:7%;transform:translateX(-50%);width:480px;max-width:45%;text-align:center;color:#fff;background:linear-gradient(140deg,#142022ed,#222d2de8);backdrop-filter:blur(12px);padding:24px 20px 25px;border:1px solid #ffffff32;box-shadow:0 18px 40px #0002;transition:opacity .35s,visibility .35s}.eyebrow{font-size:9px;font-weight:600;letter-spacing:2px;margin:0 0 16px}.light-dot{display:inline-block;background:var(--cyan);box-shadow:0 0 12px #8ee5ff;width:5px;height:5px;border-radius:50%;margin-right:8px}.welcome h1{font:normal clamp(25px,2.7vw,43px)/1.12 Georgia,serif;letter-spacing:-1px;margin:0 0 12px}.welcome h1 em{font-weight:400;color:#b9e8ee}.welcome>p:not(.eyebrow){font-size:11px;color:#c9d7d6;margin:0 0 18px}.entry-actions{display:flex;gap:16px;align-items:center;justify-content:center}.primary{padding:12px 18px;background:#c0eaf1;color:#163039;display:inline-flex;justify-content:space-between;gap:23px;font-size:11px;font-weight:600;transition:background .2s}.primary:hover{background:white}.primary span{font-size:17px;line-height:1.2}.quiet{font-size:10px;color:#f1eee3;background:transparent;padding:12px 2px;border-bottom:1px solid #b0c3c1}.quiet span{margin-left:10px}body.entered .welcome{opacity:0;visibility:hidden;pointer-events:none}.concierge{position:absolute;left:50%;bottom:6%;transform:translateX(-50%);width:470px;max-width:44%;background:#17252cec;border:1px solid #9de6ff55;box-shadow:0 0 40px #3bb6d315;color:#e8f8fb;padding:19px 24px;backdrop-filter:blur(12px)}[hidden]{display:none!important}.concierge-heading{display:flex;align-items:center;font-size:11px;letter-spacing:1px}.concierge-heading .light-dot{animation:breathe 3s infinite}.concierge-kind{font-size:7px;letter-spacing:1.5px;margin-left:auto;color:#9fb7bc}.concierge>p{font:19px/1.4 Georgia,serif;margin:12px 0}.concierge-actions{display:flex;align-items:center;gap:20px;font-size:9px;color:#b9e6ed}.concierge-actions button{color:inherit;background:none;padding:4px 0;font-size:9px}#hide-greeting{margin-left:auto;font-size:19px}.room-caption{position:absolute;bottom:0;left:0;width:100%;padding:10px 4%;color:#f5f0e3;display:flex;justify-content:space-between;gap:15px;font-size:7px;letter-spacing:2px;background:linear-gradient(transparent,#1a1e1e77);pointer-events:none}.wrap{width:min(1160px,calc(100% - 96px));margin:auto}.library{padding:55px 0 70px}.section-top{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #cccfc4;padding-bottom:18px}.section-top .eyebrow{margin:0}.index-note{font-size:8px;letter-spacing:1.4px;color:var(--muted)}.library-intro{display:flex;justify-content:space-between;align-items:center;gap:30px;margin:35px 0}h2{font:normal 43px/1.15 Georgia,serif;letter-spacing:-1.3px;margin:0}h2 em{font-weight:400;color:#8a4c35}.library-intro>p{font-size:12px;color:var(--muted)}.catalog{display:grid;grid-template-columns:1.8fr 1fr;gap:35px}.book-card{display:grid;grid-template-columns:185px 1fr;gap:30px;padding:28px;background:#e7e2d5;transition:background .25s}.book-card:hover{background:#dfd9c9}.card-cover{display:grid;align-items:center}.card-cover img{display:block;width:100%;height:auto;box-shadow:6px 10px 17px #17232533;transform:rotate(-3deg)}.availability{font-size:7px;letter-spacing:1.3px}.availability>span{display:inline-block;width:5px;height:5px;background:#4f7660;border-radius:50%;margin-right:5px}h3{font:normal 34px/1.08 Georgia,serif;letter-spacing:-.8px;margin:20px 0 8px}.book-subtitle{font:italic 19px Georgia,serif;margin:0 0 15px}.card-info>p:not(.book-subtitle){font-size:11px;color:#626860;max-width:280px}.card-cta{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #bfc1b5;padding-top:13px;margin-top:22px;font-size:11px}.card-cta>span{font-size:20px}.future-card{border:1px solid #cbcfc4;padding:30px;position:relative;overflow:hidden}.future-symbol{display:block;font:italic 65px Georgia,serif;color:#9eaa9d;line-height:1;margin-bottom:20px}.future-card .eyebrow{font-size:7px;letter-spacing:1.3px}.future-card h3{font-size:31px;margin-top:15px}.future-card p{font-size:12px;max-width:235px;color:var(--muted)}.text-link{background:none;color:var(--ink);padding:5px 0;border-bottom:1px solid #8c9389;font-size:11px}.beyond{background:#23302e;color:#eef0e6;padding:50px 0}.beyond-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px}.beyond .eyebrow{color:#b5c3ba}.beyond h2{font-size:38px}.beyond h2 em{color:#b3c8bb}.services{border-top:1px solid #65766c}.services>a,.services>button{width:100%;display:flex;align-items:center;gap:22px;padding:18px 0;border-bottom:1px solid #65766c;background:none;color:inherit;text-align:left}.services span{font-size:9px;color:#9bb2a2}.services strong{font-size:13px;font-weight:400}.services i{font-style:normal;margin-left:auto;color:#c2d3c9}footer{padding:28px 0;display:flex;justify-content:space-between;gap:20px;align-items:center}footer .wordmark{font-size:12px;letter-spacing:1.5px}footer p{font-size:9px;color:var(--muted)}footer button{font-size:9px}dialog{width:min(550px,calc(100% - 36px));padding:45px;border:1px solid #c2c9bd;background:var(--paper);color:var(--ink);box-shadow:0 30px 90px #0005}dialog::backdrop{background:#0d191cbb;backdrop-filter:blur(4px)}#close-dialog{position:absolute;right:15px;top:10px;background:none;color:var(--ink);font-size:26px}dialog h2{font-size:36px;margin-bottom:23px}#dialog-body p{font-size:14px;color:#56615b}#dialog-body a{border-bottom:1px solid currentColor}#dialog-done{margin-top:18px;background:#243b3c;color:#fff}.travel-ui{position:fixed;bottom:35px;left:50%;transform:translateX(-50%);z-index:20;background:#15262cf2;color:#fff;padding:15px 22px;display:flex;gap:25px;align-items:center;font-size:13px;white-space:nowrap}.travel-ui button{background:none;border-bottom:1px solid #add7d8;color:#b9e8ee;font-size:10px;padding:5px}.fade{position:fixed;inset:0;background:#101719;opacity:0;pointer-events:none;z-index:15;transition:opacity .5s}.fade.active{opacity:1}.travel .room{transform:scale(6);filter:brightness(.65)}.travel .welcome,.travel .concierge,.travel .room-caption,.travel .book-label{opacity:0}.travel .book-zone{pointer-events:none}.skip{position:fixed;top:-100px;left:10px;background:#fff;padding:12px;z-index:100}.skip:focus{top:10px}.noscript{padding:25px;text-align:center}.noscript a{text-decoration:underline}@keyframes breathe{50%{box-shadow:0 0 20px #8ee5ff;opacity:.5}}
@media(min-width:1700px){.reception{max-height:1100px}.welcome{bottom:10%;padding:30px}}@media(max-width:1050px){header{height:64px}nav{gap:18px}.welcome{bottom:5%;max-width:46%;padding:17px 15px}.welcome .eyebrow{font-size:7px;margin-bottom:12px}.welcome h1{font-size:30px}.welcome>p:not(.eyebrow){font-size:10px;margin-bottom:12px}.primary{padding:10px 13px;font-size:10px;gap:14px}.quiet{font-size:9px}.entry-actions{gap:12px}.book-label{width:170px;font-size:16px;padding:11px}.book-label small{font-size:6px}.book-label>span{font-size:9px}.concierge{padding:13px 17px;bottom:4%}.concierge>p{font-size:16px}.concierge-kind{display:none}.wrap{width:calc(100% - 64px)}.catalog{grid-template-columns:1.7fr 1fr;gap:20px}.book-card{grid-template-columns:145px 1fr;padding:22px;gap:22px}h3{font-size:29px}.future-card{padding:25px}.library-intro h2{font-size:36px}.beyond-inner{gap:35px}}@media(max-width:700px){header{height:auto;min-height:65px;padding:13px 20px;flex-wrap:wrap;gap:7px}.wordmark{font-size:14px;letter-spacing:1.7px}nav{width:100%;justify-content:space-between;font-size:10px;gap:10px}nav button{font-size:10px}#sound{padding-left:12px;gap:6px}#sound svg{width:14px;height:14px}#sound span{font-size:9px}.reception{aspect-ratio:auto;overflow:hidden;padding-top:56.31%;padding-bottom:0}.room{height:auto;aspect-ratio:1671/941;inset:0 0 auto}.welcome{position:relative;left:auto;bottom:auto;transform:none;max-width:none;width:auto;padding:26px 22px 30px;margin:0;background:#1c2b30;border:0;border-top:1px solid #5b828555;box-shadow:none}.welcome h1{font-size:34px;margin-bottom:14px}.welcome .eyebrow{font-size:8px}.welcome>p:not(.eyebrow){font-size:12px;margin-bottom:20px}.entry-actions .primary{padding:14px 18px;font-size:11px;gap:25px}.quiet{font-size:11px}.entry-actions{gap:20px}.room-caption{top:0;bottom:auto;padding:7px 12px;font-size:5px;letter-spacing:1px;background:linear-gradient(#0005,transparent)}.room-caption span:nth-child(2){display:none}.book-label{display:none}.corner{width:9px;height:9px}.tl{top:-2px;left:-2px}.tr{top:-2px;right:-2px}.bl{bottom:-2px;left:-2px}.br{bottom:-2px;right:-2px}body.entered .welcome{display:none}.concierge{position:relative;left:auto;bottom:auto;transform:none;max-width:none;width:auto;margin:0;padding:22px;border-left:0;border-right:0;box-shadow:none}.concierge-heading{font-size:11px}.concierge-kind{display:block;font-size:6px}.concierge>p{font-size:20px}.concierge-actions{font-size:10px}.concierge-actions button{font-size:10px}.wrap{width:calc(100% - 40px)}.library{padding:30px 0 40px}.section-top{padding-bottom:15px}.section-top .eyebrow{font-size:8px}.index-note{font-size:6px;letter-spacing:.7px}.library-intro{display:block;margin:25px 0}.library-intro h2{font-size:34px}.library-intro>p{font-size:12px;margin:15px 0 0}.catalog{grid-template-columns:1fr;gap:18px}.book-card{padding:20px;grid-template-columns:105px 1fr;gap:21px}.availability{font-size:6px;letter-spacing:.7px}h3{font-size:29px;margin-top:15px}.book-subtitle{font-size:17px}.card-info>p:not(.book-subtitle){font-size:11px}.card-cta{margin-top:16px;font-size:11px}.future-card{padding:22px 25px}.future-symbol{float:right;font-size:85px;margin:10px 8px 0 20px}.future-card h3{font-size:28px}.future-card p{max-width:240px}.beyond{padding:35px 0}.beyond-inner{grid-template-columns:1fr;gap:25px}.beyond h2{font-size:33px}.beyond .eyebrow{font-size:8px}.services strong{font-size:13px}footer{flex-wrap:wrap;padding:22px 0;gap:10px}footer p{order:3;flex-basis:100%;margin:0;font-size:8px}.travel-ui{bottom:20px;font-size:11px;gap:15px;padding:12px 15px}dialog{padding:35px 25px}.travel .room{transform:scale(4)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

#entry-dialog{width:min(540px,calc(100% - 32px));max-height:90dvh;overflow:auto}#entry-dialog h2{font-size:38px;line-height:1.1}#entry-intro{font-size:14px;color:#56615b}.entry-close{position:absolute;right:15px;top:10px;font-size:26px;background:transparent;color:#243b3c}.field-label{display:block;font-size:13px;font-weight:600;margin:22px 0 8px}#entry-form input:not([type=checkbox]){width:100%;padding:13px;border:1px solid #a8b6ae;background:#fff;font:inherit;color:#243b3c;border-radius:2px}#entry-form input:focus{outline:2px solid #287e86;outline-offset:3px}.newsletter-option{border-top:1px solid #c9d0c9;margin-top:22px;padding-top:18px}.newsletter-option label{display:flex;align-items:start;gap:10px;font-size:13px;line-height:1.5}.newsletter-option input{flex-shrink:0;width:18px;height:18px;margin:1px 0;accent-color:#24575a}.newsletter-option:has(input:disabled){color:#66736e}#newsletter-pending,.entry-small{font-size:12px;color:#59675f;line-height:1.5}.entry-small a{text-decoration:underline}#entry-status{font-size:13px;line-height:1.5;color:#24575a}#entry-form .primary{background:#243b3c;color:white}.entry-secondary{display:block;margin-top:14px;padding:8px 0;color:#325858;background:none;text-decoration:underline;font-size:13px}.entry-honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}#entry-form button:disabled{opacity:.6;cursor:wait}
