html{scroll-padding-top:20px}button,input,select,summary{-webkit-tap-highlight-color:transparent}button{touch-action:manipulation}.destination-tabs{display:contents}.photo-zoom-controls{display:flex;justify-content:center;align-items:center;gap:10px;padding:15px 0 5px}.photo-zoom-controls button{height:40px;min-width:40px;border:1px solid #ffffff50;color:#fff;background:#ffffff0a;border-radius:7px;font-size:22px;cursor:pointer}.photo-zoom-controls input[type=range]{margin:0;padding:0;border:0;width:130px;min-height:40px;accent-color:#d0b27c;cursor:pointer}.photo-view-toolbar #photoZoom{min-width:70px;font-variant-numeric:tabular-nums}#photoStage{overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none;cursor:grab;position:relative}#photoStage:active{cursor:grabbing}#photoViewer #fullPhoto{transform-origin:center;will-change:transform;pointer-events:none;max-width:100%;max-height:100%;width:auto;height:auto;flex-shrink:0;user-select:none;-webkit-user-drag:none;transition:none}#photoViewer #photoStage.zoomed #fullPhoto{width:auto;max-width:100%;max-height:100%}.photo-view-hint{line-height:1.8}#photoViewer .photo-view-media{position:relative}.photo-view-header{position:sticky;top:0;z-index:5}#photoClose{touch-action:manipulation}#photoViewer{overscroll-behavior:contain}@media(max-width:760px){body{padding-bottom:calc(66px + env(safe-area-inset-bottom));overflow-x:hidden}header{position:relative;min-height:0;padding:19px 5% 14px;gap:12px;border-bottom:0;box-shadow:none}.brand{font-size:23px}.brand small{font-size:8px}header nav{position:fixed;z-index:40;left:0;right:0;bottom:0;width:100%;padding:9px 12px calc(9px + env(safe-area-inset-bottom));margin:0;display:flex;justify-content:space-around;gap:0;background:#fcfaf3f5;backdrop-filter:blur(16px);border-top:1px solid #d1d9ce;box-shadow:0 -5px 25px #102b3c0d}header nav a{font-size:12px;padding:12px 14px;min-height:44px;color:#214858}header .brand-tagline{font-size:10px;max-width:180px;text-align:right;margin-left:auto;padding-left:0;border:0;line-height:1.9}header .brand-tagline span{font-size:9px}.language-control{padding-top:10px;border-top:1px solid #e1e3d7;justify-content:space-between;width:100%;max-width:none}.language-control label{display:block}.language-control select{width:190px;min-height:38px;font-size:12px}.hotel-book{padding:23px 4% 26px}.book-heading{margin-bottom:18px}.book-heading .eyebrow{letter-spacing:1.8px;font-size:9px}.book-heading p{font-size:10px;line-height:1.8}.book-cover{padding:5px 5px 9px}.book-left{padding:15px 15px 13px}.book-photo-label{font-size:7px;letter-spacing:1.3px}.book-photo-button{height:55vw;max-height:340px}.book-photo-caption{font-size:9px;line-height:1.7}.book-right{padding:24px 22px 52px}.book-right h1{font-size:29px;line-height:1.5}.book-right h2{font-size:21px}.book-intro,.book-facts p{font-size:12px;line-height:1.95}.book-kicker{font-size:9px;letter-spacing:2px}.book-detail{min-height:44px}.book-controls{gap:16px}.book-chapters{gap:5px}.book-chapters button{min-height:48px;font-size:10px}.book-navigation button{min-height:44px}.strip{padding:20px 5%;gap:10px}.strip strong{font-size:15px}.strip div{font-size:9px;line-height:1.8;padding-left:8px}.section{padding:40px 4%}.section-head h2{font-size:28px;line-height:1.5}.section-head .muted{font-size:11px;line-height:1.9}.tools{display:flex;flex-direction:column;gap:0;padding:8px 10px;align-items:stretch;box-shadow:0 5px 18px #183b4907}.destination-tabs{display:flex;overflow-x:auto;gap:5px;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-bottom:8px}.destination-tabs::-webkit-scrollbar{display:none}.destination-tabs .filter{flex-shrink:0;font-size:12px;min-height:42px;padding:10px 14px}input#search{flex:none;min-width:0;width:100%;min-height:45px;margin:0;border-top:1px solid #e4e7db;border-left:0;padding:12px 8px;font-size:16px}#resultCount{font-size:10px;margin:14px 0 20px}.grid{grid-template-columns:1fr;gap:21px}.card,.card--lead{display:block;border-radius:12px}.card .photo,.card--lead .photo{height:61vw;max-height:360px}.card .rank,.card--lead .rank{font-size:22px;left:13px;top:13px;min-width:44px;padding:9px}.card-content,.card--lead .card-content{padding:22px}.card h3,.card--lead h3{font-size:24px}.card .desc,.card--lead .desc{font-size:13px;line-height:1.9;margin:15px 0;min-height:0}.card .en{font-size:12px}.card-location{font-size:12px;line-height:1.85}.card-history summary{min-height:33px;font-size:12px}.card .detail{min-height:42px;padding:10px 14px;font-size:12px}.card .tag{font-size:10px}.card:hover{transform:none}.card-credit{font-size:10px}.feature{margin:0 4%;padding:23px 6% 30px;gap:21px}.feature .feature-photo img{height:64vw;max-height:380px}.feature h2{font-size:32px}.feature p{font-size:13px}.guide p{font-size:13px}.route{padding:25px}.sources{font-size:11px;line-height:2}footer{font-size:8px;gap:15px}#hotelDialog{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;border-radius:0}#hotelDialog #modalImage{height:38dvh}.modal-body{padding:25px 6%}.close{position:sticky;float:right;top:12px;right:12px;z-index:5;width:42px;height:42px}#photoViewer{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;border-radius:0;padding-bottom:env(safe-area-inset-bottom);background:#fffdf6}#photoViewer .photo-view-header{padding:14px 17px;min-height:78px}#photoViewer .photo-view-header h2{font-size:20px;line-height:1.4;margin:5px 0 0}#photoViewer .photo-view-header .eyebrow{font-size:8px;letter-spacing:2px}#photoViewer .photo-view-layout{display:block}#photoViewer .photo-view-media{padding:8px 12px 14px}#photoStage{height:47dvh;min-height:245px;border-radius:4px}.photo-zoom-controls{padding-top:12px}.photo-zoom-controls button{height:44px;min-width:44px}.photo-zoom-controls input[type=range]{width:min(45vw,220px);min-height:44px}.photo-view-toolbar{margin-top:9px;gap:12px}.photo-view-toolbar button{min-height:42px;padding:9px 15px;font-size:12px}.photo-view-hint{font-size:10px;margin:10px 0 0}#photoInfo{padding:26px 6%;max-height:none}#photoInfo section p{font-size:14px;line-height:1.95}#photoInfo h3{font-size:12px}#photoClose{min-width:42px;min-height:42px}html[dir=rtl] header .brand-tagline{text-align:left}}@media(max-width:360px){.brand{font-size:20px}header .brand-tagline{max-width:160px;font-size:9px}.book-right h1{font-size:25px}.card h3{font-size:22px}}
