:root{--bg:#f4f0e8;--paper:#fffaf0;--ink:#171717;--muted:#64615a;--line:rgba(23,23,23,0.13);--gold:#c99733;--gold-deep:#7b5817;--rose:#b95c72;--wine:#8f2f52;--wine-deep:#4d172c;--blue:#406f9b;--ivory:#fffaf0;--ink-soft:#31291f;--mist:#dce8e8;--night:#100b15;--night-soft:#19101f;--neon-cyan:#4ee7ff;--neon-pink:#ff5f9d;--neon-gold:#ffd166;--radius:8px;--max:1180px}.site-header{border:1px solid rgba(31,35,40,.12)}.brand-mark{border:1px solid rgba(31,35,40,.1)}.site-header nav a:hover{background:#6f8f8a}.compare-panel,.faq-list article,.grid-tile,.room-copy{border:1px solid rgba(31,35,40,.1)}.compare-panel span,.tile-content .tile-label,.tile-intro .tile-label,.tile-label{color:#6f7f8f}.tile-intro{border-color:rgba(111,143,138,.16)}.action-link.dark,.action-link.gold,.bottom-nav a:first-child,.intro-actions a:first-child{border:1px solid #243447}.action-link.light,.bottom-nav a:nth-child(2),.intro-actions a:last-child{background:#e8eef1;border:1px solid rgba(36,52,71,.14)}.action-link.wine,.bottom-nav a:nth-child(3){border:1px solid #8c5f68}.tile-hotel .tile-content a{background:rgba(255,255,255,.9)}.compare-panel.shuffle,.tile-booking.shuffle{border-color:rgba(36,52,71,.14)}.compare-panel li{border-top:1px solid rgba(31,35,40,.1)}.room-card figcaption{background:rgba(255,255,255,.9);border:1px solid rgba(31,35,40,.08)}.project-meta span,.room-copy .tag-row span,.tag-row span{background:#f3f0ea;border-color:rgba(31,35,40,.1)}.bottom-nav{border:1px solid rgba(31,35,40,.1)}@media (max-width:640px){.swipe-hint{color:#243447}.swipe-hint span{color:#626a72}}*{box-sizing:border-box}html{min-width:320px;background:var(--bg)}body{margin:0;color:var(--ivory);background:linear-gradient(90deg,rgba(255,209,102,.045) 1px,transparent 0),linear-gradient(rgba(78,231,255,.035) 1px,transparent 0),linear-gradient(150deg,#08070e,#14101f 46%,#291321);background-size:36px 36px,36px 36px,100% 100%;font-family:Yu Gothic,Hiragino Kaku Gothic ProN,Meiryo,sans-serif;line-height:1.65;padding-bottom:92px}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}h1,h2,p{margin:0}h1,h2{font-family:Georgia,Times New Roman,Yu Mincho,serif;font-weight:500;letter-spacing:0;line-height:1.05;overflow-wrap:anywhere}.library-shell{width:min(calc(100% - 32px),var(--max));margin:0 auto;padding:42px 0 64px}.library-hero{display:grid;min-height:310px;align-items:end;grid-gap:24px;gap:24px;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);padding:clamp(24px,4vw,44px);color:#fffaf0;background:linear-gradient(135deg,rgba(18,18,18,.96),rgba(51,51,45,.9)),#171717;border:1px solid rgba(255,250,240,.14);border-radius:var(--radius);box-shadow:0 24px 80px rgba(23,23,23,.16)}.eyebrow{margin-bottom:16px;color:var(--gold);font-size:12px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.library-hero h1{max-width:9em;font-size:clamp(40px,7vw,86px)}.library-hero>p{max-width:32em;color:rgba(255,250,240,.74);font-size:15px}.summary-strip{display:grid;grid-template-columns:.6fr 1fr 1fr;grid-gap:10px;gap:10px;margin-top:12px}.summary-strip article{min-width:0;padding:18px;background:rgba(255,250,240,.86);border:1px solid var(--line);border-radius:var(--radius)}.summary-strip span{display:block;color:var(--ink);font-size:clamp(22px,2.6vw,34px);font-weight:900;line-height:1.15;overflow-wrap:anywhere}.summary-strip p{margin-top:6px;color:var(--muted);font-size:12px;font-weight:900}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px;margin-top:28px}.project-card{min-width:0;overflow:hidden;background:rgba(255,250,240,.9);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 18px 56px rgba(23,23,23,.1)}.project-card.gold{--accent:var(--gold)}.project-card.rose{--accent:var(--rose)}.project-card.blue{--accent:var(--blue)}.project-shot{display:block;height:260px;overflow:hidden;background:#161616;border-bottom:4px solid var(--accent)}.project-shot img{width:100%;height:100%;object-fit:cover;object-position:top center}.project-body{display:grid;grid-gap:14px;gap:14px;padding:20px}.project-meta,.tag-row{display:flex;flex-wrap:wrap;gap:8px}.project-meta span,.tag-row span{display:inline-flex;min-height:30px;align-items:center;padding:0 10px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.58);color:var(--muted);font-size:11px;font-weight:900}.project-meta span:first-child{color:var(--ink);border-color:var(--accent);background:rgba(255,255,255,.78)}.project-body h2{color:var(--ink);font-size:clamp(27px,3vw,38px)}.project-body p{color:var(--muted);font-size:14px}.project-actions{display:grid;grid-gap:10px;gap:10px;margin-top:4px}.project-actions a{display:inline-flex;min-height:44px;align-items:center;justify-content:center;padding:0 16px;color:#fff;background:var(--ink);border-radius:999px;font-size:13px;font-weight:900}.project-actions code{display:block;min-width:0;overflow:hidden;padding:10px;color:var(--muted);background:rgba(23,23,23,.05);border:1px solid var(--line);border-radius:var(--radius);font-family:Consolas,Courier New,monospace;font-size:11px;text-overflow:ellipsis;white-space:nowrap}@media (hover:hover){.project-actions a,.project-card{transition:transform .18s ease,box-shadow .18s ease}.project-card:hover{transform:translateY(-2px);box-shadow:0 26px 70px rgba(23,23,23,.16)}.project-actions a:hover{transform:translateY(-1px)}}@media (max-width:980px){.library-hero,.project-grid,.summary-strip{grid-template-columns:1fr}.library-hero{min-height:430px}.project-shot{height:320px}}@media (max-width:640px){.library-shell{width:calc(100% - 16px);padding-top:8px}.library-hero{min-height:500px;padding:22px}.library-hero h1{font-size:40px}.summary-strip{gap:8px}.project-grid{gap:10px;margin-top:18px}.project-shot{height:230px}}.site-header{position:-webkit-sticky;position:sticky;top:12px;z-index:30;display:flex;align-items:center;justify-content:space-between;width:min(calc(100% - 32px),var(--max));margin:12px auto 0;padding:8px;background:rgba(16,11,21,.78);border:1px solid rgba(255,209,102,.28);border-radius:999px;box-shadow:0 16px 48px rgba(0,0,0,.28),0 0 24px rgba(78,231,255,.12);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand-mark{display:grid;width:58px;height:40px;place-items:center;color:var(--night);background:linear-gradient(135deg,var(--neon-gold),#fff2a6);border:1px solid rgba(255,255,255,.42);border-radius:8px;font-size:11px;font-weight:900;box-shadow:0 0 18px rgba(255,209,102,.45),inset 0 0 10px rgba(255,255,255,.3)}.site-header nav{display:flex;min-width:0;gap:4px;overflow:hidden}.site-header nav a{display:grid;min-height:38px;place-items:center;padding:0 13px;border-radius:999px;color:rgba(255,250,240,.82);font-size:12px;font-weight:900;white-space:nowrap}.site-header nav a:hover{color:var(--night);background:var(--neon-cyan);box-shadow:0 0 18px rgba(78,231,255,.28)}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.grid-stage{display:grid;width:min(calc(100% - 32px),var(--max));min-height:calc(100svh - 86px);margin:20px auto 0;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(3,minmax(185px,1fr));grid-gap:12px;gap:12px}.grid-tile{position:relative;min-width:0;overflow:hidden;padding:clamp(18px,2.2vw,28px);color:var(--ivory);background:linear-gradient(145deg,rgba(255,250,240,.08),rgba(255,250,240,.025)),rgba(18,12,24,.86);border:1px solid rgba(255,250,240,.14);border-radius:var(--radius);box-shadow:0 18px 56px rgba(0,0,0,.28),inset 0 0 0 1px rgba(255,255,255,.025);animation:tileIn .62s ease both;animation-delay:var(--delay)}.grid-tile:after{right:12px;bottom:12px;left:12px;height:1px;background:repeating-linear-gradient(90deg,rgba(255,250,240,.26) 0 8px,transparent 8px 14px)}.grid-tile:after,.grid-tile:before{content:"";position:absolute;pointer-events:none}.grid-tile:before{inset:0;background:linear-gradient(135deg,rgba(255,209,102,.14),transparent 32%),linear-gradient(315deg,rgba(78,231,255,.12),transparent 42%)}.grid-tile>*{position:relative;z-index:1}.tile-label{display:inline-flex;margin-bottom:10px;color:var(--neon-gold);font-size:11px;font-weight:900;letter-spacing:.12em;line-height:1.3;text-transform:uppercase;text-shadow:0 0 14px rgba(255,209,102,.5)}.tile-intro{display:flex;grid-column:span 2;flex-direction:column;justify-content:space-between;color:var(--ivory);background:linear-gradient(135deg,rgba(13,9,18,.98),rgba(45,22,51,.94) 56%,rgba(10,42,48,.9)),var(--night);border-color:rgba(255,209,102,.32);box-shadow:0 22px 70px rgba(0,0,0,.38),0 0 34px rgba(255,95,157,.12),inset 0 0 0 1px rgba(255,209,102,.06)}.tile-intro:after{content:"IKB NIGHT PASS";position:absolute;right:18px;bottom:18px;left:auto;width:auto;height:auto;padding:7px 10px;color:rgba(16,11,21,.94);background:rgba(255,209,102,.9);border-radius:8px;font-size:11px;font-weight:900;letter-spacing:.08em;box-shadow:0 0 22px rgba(255,209,102,.22)}.tile-content .tile-label,.tile-intro .tile-label{color:var(--gold)}.tile-intro h1{max-width:10em;margin-top:8px;font-size:clamp(38px,5.6vw,76px);text-shadow:0 0 18px rgba(255,209,102,.22),0 0 36px rgba(78,231,255,.12)}.tile-intro p{max-width:42em;color:rgba(255,250,240,.76);font-size:15px;padding-bottom:40px}.intro-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.action-link,.intro-actions a,.tile-hotel .tile-content a{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:10px;padding:0 15px;border-radius:999px;font-size:13px;font-weight:900;line-height:1;white-space:nowrap}.action-link.dark,.action-link.gold,.intro-actions a:first-child{color:var(--night);background:linear-gradient(135deg,var(--neon-gold),#ffe8a3);border:1px solid rgba(255,255,255,.32);box-shadow:0 0 20px rgba(255,209,102,.28)}.intro-actions a:last-child{color:var(--ivory);background:rgba(78,231,255,.12);border:1px solid rgba(78,231,255,.34);box-shadow:0 0 18px rgba(78,231,255,.14)}.action-link.light{color:var(--ivory);background:rgba(78,231,255,.14);border:1px solid rgba(78,231,255,.42);box-shadow:0 0 18px rgba(78,231,255,.26)}.action-link.wine{color:var(--ivory);background:linear-gradient(135deg,var(--wine),var(--neon-pink));box-shadow:0 0 20px rgba(255,95,157,.24)}.arrow-icon{display:grid;width:22px;height:22px;place-items:center;border-radius:8px;background:rgba(255,255,255,.34);font-size:13px}.tile-hotel,.tile-photo{min-height:0;color:var(--ivory);background:var(--night);border-color:rgba(78,231,255,.18)}.tile-booking:after,.tile-hotel:after,.tile-photo:after{top:12px;right:12px;bottom:auto;left:12px}.tile-hotel.shuffle,.tile-photo{border-color:rgba(255,209,102,.24)}.tile-hotel.refrain{border-color:rgba(255,95,157,.28)}.room-card img,.tile-hotel img,.tile-photo img{width:100%;height:100%;object-fit:cover}.tile-hotel .tile-shade,.tile-photo .tile-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(8,5,10,.82)),linear-gradient(135deg,rgba(255,209,102,.15),transparent 46%),linear-gradient(315deg,rgba(78,231,255,.13),transparent 50%)}.tile-content{position:absolute;right:18px;bottom:18px;left:18px;z-index:2}.tile-content:before{content:"";display:block;width:48px;height:3px;margin-bottom:12px;background:var(--neon-gold);border-radius:999px;box-shadow:0 0 16px rgba(255,209,102,.36)}.tile-booking h2,.tile-compare h2,.tile-content h2,.tile-faq h2{font-size:clamp(28px,3.2vw,42px);text-shadow:0 0 18px rgba(255,250,240,.16)}.tile-booking p,.tile-compare p,.tile-content p,.tile-faq p{margin-top:10px;color:rgba(255,250,240,.78);font-size:14px}.tile-hotel .tile-content a{margin-top:16px;color:var(--night);background:rgba(255,250,240,.92);border-radius:8px;box-shadow:0 0 18px rgba(255,250,240,.16)}.tile-booking,.tile-compare,.tile-faq{display:flex;flex-direction:column;justify-content:space-between}.tile-compare p,.tile-faq p{color:rgba(255,250,240,.7)}.tile-booking.shuffle{color:var(--ivory);background:linear-gradient(135deg,rgba(255,209,102,.3),transparent 46%),linear-gradient(315deg,rgba(78,231,255,.12),transparent 54%),var(--night-soft);border-color:rgba(255,209,102,.32)}.tile-booking.refrain{color:var(--ivory);background:linear-gradient(135deg,rgba(255,95,157,.3),transparent 50%),linear-gradient(315deg,rgba(78,231,255,.12),transparent 55%),var(--wine-deep);border-color:rgba(255,95,157,.35)}.tile-booking .tile-label,.tile-booking p{color:rgba(255,250,240,.78)}.section-band{width:min(calc(100% - 32px),var(--max));margin:84px auto 0}.section-heading{display:grid;max-width:780px;grid-gap:10px;gap:10px;margin-bottom:18px}.section-heading.split{max-width:none;grid-template-columns:1fr auto;align-items:flex-end}.section-heading h2{font-size:clamp(34px,5vw,64px);color:var(--ivory);text-shadow:0 0 24px rgba(78,231,255,.12)}.compare-table{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.compare-panel,.room-copy{min-width:0;padding:clamp(20px,3vw,34px);color:var(--ivory);background:linear-gradient(145deg,rgba(255,250,240,.08),rgba(255,250,240,.025)),rgba(18,12,24,.9);border:1px solid rgba(255,250,240,.14);border-radius:var(--radius);box-shadow:0 24px 70px rgba(0,0,0,.24),inset 0 0 0 1px rgba(255,255,255,.03)}.compare-panel,.faq-list article,.room-copy{position:relative}.compare-panel:before,.faq-list article:before,.room-copy:before{content:"";position:absolute;top:12px;right:12px;left:12px;height:1px;background:repeating-linear-gradient(90deg,rgba(255,250,240,.22) 0 8px,transparent 8px 14px)}.compare-panel.refrain{background:linear-gradient(145deg,rgba(255,95,157,.12),rgba(255,250,240,.025)),rgba(38,12,28,.9);border-color:rgba(255,95,157,.26)}.compare-panel.shuffle{border-color:rgba(255,209,102,.24)}.compare-panel span{color:var(--neon-gold);font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.compare-panel h3,.room-copy h3{margin-top:10px;font-size:clamp(28px,3vw,42px)}.compare-panel p{margin-top:14px;color:rgba(255,250,240,.7)}.compare-panel ul{display:grid;grid-gap:10px;gap:10px;margin:22px 0 0;padding:0;list-style:none}.compare-panel li{padding-top:10px;border-top:1px solid rgba(255,250,240,.14);color:rgba(255,250,240,.86);font-weight:800}.room-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:220px;grid-gap:12px;gap:12px}.swipe-hint{display:none}.room-card{position:relative;min-width:0;min-height:0;margin:0;overflow:hidden;background:var(--night);border:1px solid rgba(255,250,240,.14);border-radius:var(--radius);box-shadow:0 18px 50px rgba(0,0,0,.24)}.room-card.featured{border-color:rgba(255,209,102,.28);grid-column:span 2;grid-row:span 2}.room-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 48%,rgba(0,0,0,.68))}.room-card figcaption{position:absolute;right:14px;bottom:12px;z-index:1;min-height:30px;padding:6px 10px;color:var(--night);background:rgba(255,250,240,.88);border:1px solid rgba(255,255,255,.34);border-radius:8px;font-size:13px;font-weight:900;box-shadow:0 0 18px rgba(255,250,240,.16)}.room-copy{display:flex;grid-column:span 2;flex-direction:column;justify-content:space-between}.room-copy .tag-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.room-copy .tag-row span{display:inline-flex;min-height:32px;align-items:center;padding:0 10px;border:1px solid rgba(255,250,240,.16);border-radius:999px;background:rgba(255,250,240,.08);color:rgba(255,250,240,.86);font-size:12px;font-weight:900}.faq-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px}.faq-list article{min-width:0;padding:20px;background:linear-gradient(145deg,rgba(78,231,255,.08),transparent 42%),rgba(16,11,21,.92);border:1px solid rgba(78,231,255,.18);border-radius:var(--radius);color:var(--ivory)}.faq-list h3{font-size:22px}.faq-list p{margin-top:12px;color:rgba(255,250,240,.72);font-size:14px}.bottom-nav{position:fixed;right:16px;bottom:14px;left:16px;z-index:40;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:6px;gap:6px;width:min(560px,calc(100% - 32px));margin:0 auto;padding:7px;background:rgba(12,8,16,.82);border:1px solid rgba(255,250,240,.16);box-shadow:0 24px 70px rgba(0,0,0,.34),0 0 30px rgba(78,231,255,.14);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.bottom-nav,.bottom-nav a{display:grid;border-radius:999px}.bottom-nav a{min-width:0;min-height:44px;place-items:center;padding:0 8px;overflow:hidden;font-size:12px;font-weight:900;text-align:center;text-overflow:ellipsis;white-space:nowrap}.bottom-nav a:first-child{color:var(--night);background:linear-gradient(135deg,var(--neon-gold),#fff0a8);box-shadow:0 0 18px rgba(255,209,102,.25)}.bottom-nav a:nth-child(2){color:var(--night);background:var(--neon-cyan);box-shadow:0 0 18px rgba(78,231,255,.24)}.bottom-nav a:nth-child(3){color:var(--ivory);background:linear-gradient(135deg,var(--wine),var(--neon-pink));box-shadow:0 0 18px rgba(255,95,157,.24)}@keyframes tileIn{0%{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media (hover:hover){.action-link,.grid-tile,.intro-actions a,.room-card,.site-header nav a{transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}.grid-tile:hover,.room-card:hover{transform:translateY(-2px);box-shadow:0 24px 70px rgba(0,0,0,.32),0 0 26px rgba(78,231,255,.12)}.action-link:hover,.intro-actions a:hover{transform:translateY(-1px)}}@media (max-width:980px){.grid-stage{min-height:auto;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none}.tile-intro{grid-column:span 2;min-height:420px}.grid-tile{min-height:260px}.compare-table,.faq-list,.section-heading.split{grid-template-columns:1fr}.room-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){body,html{max-width:100%;overflow-x:hidden}body{padding-bottom:86px}.site-header{top:8px;width:auto;max-width:none;margin:8px 16px 0;padding:6px;gap:6px}.brand-mark{width:42px;height:36px;font-size:11px}.site-header nav{display:none}.grid-stage,.section-band{width:calc(100% - 16px);max-width:none}.grid-stage{margin:10px auto 0;grid-template-columns:1fr;gap:8px}.section-band{margin-left:auto;margin-right:auto}.grid-tile,.tile-intro{grid-column:auto;width:100%;min-height:250px}.tile-intro{min-height:430px}.tile-intro h1{font-size:clamp(28px,8.1vw,34px);line-height:1.16}.compare-panel p,.faq-list p,.tile-booking p,.tile-compare p,.tile-content p,.tile-faq p,.tile-intro p{font-size:13px}.intro-actions{display:grid;grid-template-columns:1fr}.action-link,.intro-actions a,.tile-hotel .tile-content a{min-width:0;width:100%;justify-content:space-between;overflow:hidden;text-overflow:ellipsis}.section-band{margin-top:48px}.section-heading{gap:8px;margin-bottom:12px}.section-heading h2{font-size:clamp(30px,9vw,40px);line-height:1.08}.compare-panel,.faq-list article,.room-copy{padding:18px}.compare-panel h3,.room-copy h3{font-size:clamp(25px,7.4vw,32px);line-height:1.12}.room-grid{display:flex;grid-template-columns:none;grid-auto-rows:auto;gap:10px;margin-right:-8px;padding:0 8px 12px 0;overflow-x:auto;overscroll-behavior-x:contain;scroll-padding-left:0;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 0 84%,transparent 100%);mask-image:linear-gradient(90deg,#000 0 84%,transparent 100%)}.room-grid::-webkit-scrollbar{display:none}.room-grid>*{flex:0 0 min(304px,84vw);scroll-snap-align:start}.room-card.featured,.room-copy{grid-column:auto;grid-row:auto}.room-card{height:248px}.room-copy{min-height:286px}.swipe-hint{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;margin:-4px 0 12px;color:var(--neon-gold);font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.swipe-hint span{color:rgba(255,250,240,.68);font-size:11px;letter-spacing:0;text-transform:none}.bottom-nav{right:16px;bottom:8px;left:16px;width:auto;max-width:none;padding:6px}.bottom-nav a{min-height:42px;padding:0 4px;font-size:10px}}html{background:#f3f0ea}body{color:#1f2328;background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(243,240,234,.9)),#f3f0ea}.site-header{background:rgba(255,255,255,.86);border-color:rgba(31,35,40,.12);box-shadow:0 16px 46px rgba(31,35,40,.08)}.brand-mark{color:#ffffff;background:#243447;border-color:rgba(31,35,40,.1);box-shadow:none}.site-header nav a{color:#343a40}.site-header nav a:hover{color:#ffffff;background:#243447;box-shadow:none}.compare-panel,.faq-list article,.grid-tile,.room-copy{color:#1f2328;background:rgba(255,255,255,.88);border-color:rgba(31,35,40,.1);box-shadow:0 18px 52px rgba(31,35,40,.08)}.compare-panel:before,.faq-list article:before,.grid-tile:after,.grid-tile:before,.room-copy:before,.tile-booking:after,.tile-content:before,.tile-hotel:after,.tile-intro:after,.tile-photo:after{content:none}.compare-panel span,.tile-content .tile-label,.tile-intro .tile-label,.tile-label{color:#6f8f8a;text-shadow:none}.tile-intro{color:#1f2328;background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(232,238,239,.9)),#ffffff;border-color:rgba(31,35,40,.1);box-shadow:0 20px 58px rgba(31,35,40,.09)}.section-heading h2,.tile-booking h2,.tile-compare h2,.tile-content h2,.tile-faq h2,.tile-intro h1{color:#1f2328;text-shadow:none}.compare-panel p,.faq-list p,.tile-booking p,.tile-compare p,.tile-faq p,.tile-intro p{color:#626a72}.action-link.dark,.action-link.gold,.bottom-nav a:first-child,.intro-actions a:first-child{color:#ffffff;background:#243447;border-color:#243447;box-shadow:none}.action-link.light,.bottom-nav a:nth-child(2),.intro-actions a:last-child{color:#243447;background:#e4efec;border-color:rgba(111,143,138,.26);box-shadow:none}.action-link.wine,.bottom-nav a:nth-child(3){color:#ffffff;background:#8c5f68;border-color:#8c5f68;box-shadow:none}.arrow-icon{color:inherit;background:rgba(255,255,255,.24)}.room-card,.tile-hotel,.tile-photo{color:#ffffff;background:#1f2328;border-color:rgba(31,35,40,.12);box-shadow:0 18px 52px rgba(31,35,40,.1)}.tile-hotel .tile-shade,.tile-photo .tile-shade{background:linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.62))}.tile-content h2{color:#ffffff}.tile-content p{color:rgba(255,255,255,.84)}.tile-hotel .tile-content a{color:#1f2328;background:rgba(236,245,242,.92);border-color:rgba(111,143,138,.18);box-shadow:none}.compare-panel.shuffle,.tile-booking.shuffle{background:#ffffff;border-color:rgba(111,143,138,.22)}.compare-panel.refrain,.tile-booking.refrain{background:#fbf7f6;border-color:rgba(140,95,104,.16)}.tile-booking .tile-label,.tile-booking p{color:#626a72}.compare-panel li{color:#343a40;border-top-color:rgba(31,35,40,.1)}.room-card,.room-card.featured{border-color:rgba(31,35,40,.12)}.room-card figcaption{color:#1f2328;background:rgba(236,245,242,.92);border-color:rgba(111,143,138,.18);box-shadow:none}.project-meta span,.room-copy .tag-row span,.tag-row span{color:#4f5963;background:#eef4f1;border-color:rgba(111,143,138,.18)}.bottom-nav{background:rgba(255,255,255,.9);border-color:rgba(31,35,40,.1);box-shadow:0 18px 48px rgba(31,35,40,.12)}@media (hover:hover){.grid-tile:hover,.room-card:hover{box-shadow:0 22px 58px rgba(31,35,40,.13)}}@media (max-width:640px){.swipe-hint{color:#6f8f8a}.swipe-hint span{color:#626a72}}.compare-panel h3,.faq-list h3,.room-copy h3,.section-heading h2,.tile-booking h2,.tile-compare h2,.tile-content h2,.tile-faq h2,.tile-intro h1,h1,h2{word-break:keep-all;overflow-wrap:normal}.site-header{padding:9px}.brand-mark{width:62px}.grid-stage{gap:14px;grid-template-rows:repeat(3,minmax(196px,1fr))}.grid-tile{border-radius:8px}.tile-intro{padding:clamp(26px,4vw,42px)}.tile-intro h1{max-width:11.5em;font-size:clamp(42px,5vw,68px);line-height:1.12}.tile-intro p{max-width:38em;padding-bottom:0}.intro-actions{align-items:center}.action-link,.intro-actions a,.tile-hotel .tile-content a{border-radius:8px}.tile-hotel .tile-shade,.tile-photo .tile-shade{background:linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.56)),linear-gradient(90deg,rgba(0,0,0,.22),transparent 44%)}.room-card img,.tile-hotel img,.tile-photo img{filter:saturate(.96) contrast(1.02)}.tile-hotel.refrain img{object-position:center 58%}.tile-content{right:20px;bottom:20px;left:20px}.tile-content h2{font-size:clamp(32px,3.4vw,46px)}.tile-content p{max-width:24em}.tile-booking,.tile-compare,.tile-faq{padding:clamp(22px,2.4vw,30px)}.tile-booking h2,.tile-compare h2,.tile-faq h2{line-height:1.14}.section-band{margin-top:96px}.section-heading{margin-bottom:22px}.section-heading h2{max-width:12em;line-height:1.12}.section-heading.split{gap:16px}.compare-table,.faq-list,.room-grid{gap:14px}.compare-panel,.faq-list article,.room-copy{border-radius:8px}.compare-panel h3,.room-copy h3{line-height:1.16}.room-card{border-radius:8px}.room-card:after{background:linear-gradient(180deg,transparent 48%,rgba(0,0,0,.58))}.room-copy{gap:18px}.bottom-nav{max-width:540px}@media (hover:hover){.grid-tile:hover,.room-card:hover{transform:translateY(-3px)}}@media (max-width:980px){.grid-stage{gap:12px}.tile-intro h1{max-width:9.5em}}@media (max-width:640px){.site-header{margin-right:8px;margin-left:8px}.brand-mark{width:56px}.grid-stage,.section-band{width:calc(100% - 16px)}.grid-stage{gap:10px}.grid-tile,.tile-intro{min-height:238px}.tile-intro{min-height:388px;padding:22px 18px}.tile-intro h1{max-width:8.7em;font-size:clamp(31px,9vw,38px);line-height:1.18}.tile-intro p{max-width:100%}.tile-content{right:18px;bottom:18px;left:18px}.tile-content h2{font-size:clamp(31px,9vw,39px)}.section-band{margin-top:54px}.section-heading h2{max-width:9em}.room-grid>*{flex-basis:min(312px,86vw)}.bottom-nav{width:auto;max-width:none}}.tile-intro{gap:22px}.hero-copy{display:grid;grid-gap:16px;gap:16px}.hero-copy .tile-label{margin-bottom:0}.hero-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px;max-width:560px}.hero-highlights span{display:grid;min-height:44px;place-items:center;padding:0 10px;color:#243447;background:rgba(232,241,238,.9);border:1px solid rgba(111,143,138,.22);border-radius:8px;font-size:12px;font-weight:900;text-align:center}.tile-intro .intro-actions{margin-top:0}.tile-intro .intro-actions a{min-width:126px}.tile-compare,.tile-faq{background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(242,247,245,.9)),#ffffff}.tile-compare .tile-label,.tile-faq .tile-label{margin-bottom:18px}.tile-booking{background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(238,244,241,.92)),#ffffff}.tile-booking.refrain{background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(248,241,241,.92)),#fbf7f6}.tile-booking .action-link{width:100%}@media (min-width:981px){.grid-stage{min-height:calc(100svh - 96px)}.tile-intro{min-height:420px}}@media (max-width:640px){.tile-intro{min-height:454px;gap:18px}.hero-copy{gap:14px}.hero-highlights{grid-template-columns:1fr;gap:6px}.hero-highlights span{min-height:38px;justify-content:start;padding:0 12px}.tile-intro .intro-actions{gap:8px}}.grid-stage{gap:10px;grid-template-rows:repeat(3,minmax(168px,1fr))}.grid-tile{padding:clamp(16px,2vw,24px)}.tile-hotel,.tile-photo{padding:0}.tile-intro{gap:18px;padding:clamp(24px,3.4vw,36px)}.tile-intro h1{max-width:10.5em;font-size:clamp(38px,4.7vw,62px)}.tile-intro p{font-size:14px}.hero-highlights span{min-height:40px}.tile-booking h2,.tile-compare h2,.tile-faq h2{font-size:clamp(25px,2.8vw,38px)}.tile-content h2{font-size:clamp(30px,3.1vw,42px)}@media (min-width:981px){.grid-stage{min-height:calc(100svh - 118px)}.tile-intro{min-height:360px}}@media (max-width:980px){.grid-tile{min-height:232px}.tile-intro{min-height:360px}}@media (max-width:640px){.grid-stage{gap:8px}.grid-tile,.tile-intro{min-height:220px}.tile-intro{min-height:408px;padding:20px 18px;gap:14px}.tile-intro h1{max-width:8.4em;font-size:clamp(29px,8.5vw,36px)}.hero-copy{gap:12px}.hero-highlights span{min-height:34px}.tile-intro .intro-actions a{min-height:42px}.tile-content h2{font-size:clamp(29px,8.4vw,36px)}}@media (min-width:981px){.grid-stage{grid-template-columns:minmax(0,1.32fr) minmax(0,.92fr) minmax(0,1.08fr);grid-template-rows:minmax(330px,1.18fr) minmax(215px,.82fr) minmax(185px,.7fr);min-height:calc(100svh - 108px);gap:12px}.tile-intro{min-height:330px}.tile-hotel,.tile-photo{min-height:0}.tile-booking,.tile-compare,.tile-faq{min-height:185px}.tile-booking h2{font-size:clamp(25px,2.4vw,34px)}.tile-booking p,.tile-compare p,.tile-faq p{font-size:13px}}@media (max-width:980px){.tile-hotel,.tile-photo{min-height:320px}.tile-booking,.tile-compare,.tile-faq{min-height:220px}}@media (max-width:640px){.tile-intro{min-height:392px}.tile-hotel{min-height:360px}.tile-photo{min-height:300px}.tile-booking,.tile-compare,.tile-faq{min-height:212px}}.stay-scene-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.stay-scene-panel{min-width:0;overflow:hidden;background:rgba(255,255,255,.88);border:1px solid rgba(111,143,138,.16);border-radius:8px;box-shadow:0 18px 52px rgba(31,35,40,.08)}.stay-scene-panel.refrain{border-color:rgba(140,95,104,.16);background:#fbf7f6}.stay-scene-copy{display:grid;grid-gap:10px;gap:10px;padding:clamp(18px,2.4vw,26px)}.stay-scene-copy .tile-label{margin-bottom:0}.stay-scene-copy h3{margin:0;color:#1f2328;font-family:Georgia,Times New Roman,Yu Mincho,serif;font-size:clamp(28px,3vw,42px);font-weight:500;line-height:1.12;word-break:keep-all}.stay-scene-copy p{margin:0;color:#626a72;font-size:14px}.stay-scene-rail{display:grid;grid-template-columns:1.3fr .7fr;grid-auto-rows:190px;grid-gap:10px;gap:10px;padding:0 10px 10px}.stay-scene-card{position:relative;min-width:0;min-height:0;margin:0;overflow:hidden;background:#1f2328;border-radius:8px}.stay-scene-card.featured{grid-row:span 2}.stay-scene-card img{width:100%;height:100%;object-fit:cover}.stay-scene-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 48%,rgba(0,0,0,.52))}.stay-scene-card figcaption{position:absolute;right:12px;bottom:12px;z-index:1;min-height:30px;padding:6px 10px;color:#1f2328;background:rgba(236,245,242,.92);border:1px solid rgba(111,143,138,.18);border-radius:8px;font-size:12px;font-weight:900}@media (max-width:980px){.stay-scene-grid{grid-template-columns:1fr}}@media (max-width:640px){.stay-scene-copy{padding:18px}.stay-scene-copy h3{font-size:clamp(25px,7.4vw,32px)}.stay-scene-rail{display:flex;gap:10px;padding:0 10px 12px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 0 86%,transparent 100%);mask-image:linear-gradient(90deg,#000 0 86%,transparent 100%)}.stay-scene-rail::-webkit-scrollbar{display:none}.stay-scene-card,.stay-scene-card.featured{flex:0 0 min(318px,86vw);height:248px;scroll-snap-align:start}}main{scroll-padding-top:72px}.grid-tile,.section-band{scroll-margin-top:78px}@media (max-width:640px){body{padding-bottom:calc(96px + env(safe-area-inset-bottom))}.site-header{top:6px;margin:6px 8px 0;border-radius:8px}.brand-mark{height:34px}.grid-stage,.section-band{width:calc(100% - 12px)}.grid-stage{margin-top:8px;gap:8px}.grid-tile{padding:16px}.tile-intro{min-height:auto;padding:18px;justify-content:start}.tile-intro h1{max-width:8.2em;font-size:clamp(28px,8.2vw,34px);line-height:1.18}.tile-intro p{font-size:12.5px;line-height:1.75;word-break:normal;overflow-wrap:anywhere}.hero-highlights{display:flex;gap:7px;max-width:none;overflow-x:auto;margin-top:4px;scroll-snap-type:x mandatory;scrollbar-width:none}.hero-highlights::-webkit-scrollbar{display:none}.hero-highlights span{flex:0 0 auto;min-width:116px;min-height:34px;scroll-snap-align:start;white-space:nowrap}.intro-actions{grid-template-columns:1fr 1fr;margin-top:4px}.action-link,.intro-actions a,.tile-hotel .tile-content a{min-height:44px;font-size:12px}.tile-hotel{min-height:318px}.tile-photo{min-height:246px}.tile-booking,.tile-compare,.tile-faq{min-height:184px;padding:18px}.tile-booking h2,.tile-compare h2,.tile-faq h2{font-size:clamp(24px,7vw,31px)}.tile-content{right:16px;bottom:16px;left:16px}.tile-content p{max-width:23em;font-size:12.5px}.section-band{margin-top:42px}.section-heading{margin-bottom:10px}.section-heading h2{max-width:9.5em;font-size:clamp(28px,8.2vw,36px)}.compare-table,.faq-list,.stay-scene-grid{gap:10px}.compare-panel,.faq-list article,.room-copy,.stay-scene-copy{padding:16px}.room-grid,.stay-scene-rail{margin-right:-6px;padding-right:6px;-webkit-mask-image:linear-gradient(90deg,#000 0 88%,transparent 100%);mask-image:linear-gradient(90deg,#000 0 88%,transparent 100%)}.room-grid>*,.stay-scene-card,.stay-scene-card.featured{flex-basis:min(294px,82vw)}.room-card,.stay-scene-card,.stay-scene-card.featured{height:232px}.room-copy{min-height:248px}.bottom-nav{right:10px;bottom:calc(8px + env(safe-area-inset-bottom));left:10px;gap:5px;padding:6px;border-radius:999px}.bottom-nav a{min-height:46px;font-size:10px}.grid-stage{grid-template-rows:none;grid-auto-rows:auto}.grid-stage .tile-intro{display:grid;min-height:0;grid-gap:12px;gap:12px;align-content:start;padding-top:18px;padding-bottom:16px}.grid-stage .tile-intro .intro-actions{display:grid;grid-template-columns:1fr 1fr;margin-top:0}}.tile-hotel.shuffle .tile-shade{background:linear-gradient(180deg,rgba(0,0,0,.02) 28%,rgba(20,12,6,.82)),linear-gradient(90deg,rgba(16,10,6,.32),transparent 48%)}.tile-hotel.refrain .tile-shade{background:linear-gradient(180deg,rgba(0,0,0,.01) 24%,rgba(68,42,42,.78)),linear-gradient(90deg,rgba(58,38,36,.28),transparent 52%)}.tile-hotel.shuffle .tile-content .tile-label{color:#c9a66a}.tile-hotel.refrain .tile-content .tile-label{color:#e1b8aa}.tile-hotel.shuffle .tile-content a{background:rgba(246,238,224,.94);border-color:rgba(201,166,106,.22)}.tile-hotel.refrain .tile-content a{color:#3f2d2c;background:rgba(246,229,222,.95);border-color:rgba(163,104,92,.24)}.tile-mood{justify-content:center;min-height:152px}.tile-mood h2{margin-bottom:0}@media (max-width:640px){.tile-mood{min-height:140px}}.price-guide{display:grid;grid-gap:5px;gap:5px;padding:10px 12px;color:#243447;background:rgba(232,241,238,.72);border:1px solid rgba(111,143,138,.2);border-radius:8px}.price-guide span{color:#6f8f8a;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.price-guide strong{font-size:13px;line-height:1.45;font-weight:800;overflow-wrap:anywhere}.room-copy .price-guide{margin-top:2px;background:rgba(255,255,255,.58)}.tile-booking.refrain .price-guide{background:rgba(246,229,222,.68);border-color:rgba(163,104,92,.18)}.tile-booking.refrain .price-guide span{color:#8c5f68}.tile-booking .price-guide{display:none!important}.tile-price{background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(238,244,241,.92)),#ffffff}.tile-price h2{margin-bottom:12px}.price-mini-list{display:grid;grid-gap:8px;gap:8px}.tile-price .tile-label{margin-bottom:10px}.price-mini-row{display:grid;grid-gap:4px;gap:4px;padding:10px 11px;color:#243447;background:rgba(232,241,238,.76);border:1px solid rgba(111,143,138,.2);border-radius:8px;text-decoration:none}.price-mini-row.refrain{background:rgba(246,229,222,.74);border-color:rgba(163,104,92,.2)}.price-mini-row span{color:#6f8f8a;font-size:10px;font-weight:900;letter-spacing:.08em}.price-mini-row.refrain span{color:#8c5f68}.price-mini-row strong{font-size:12px;line-height:1.45;font-weight:900;overflow-wrap:anywhere}@media (max-width:640px){.price-guide{padding:9px 10px}.price-guide strong{font-size:12px}}.section-note{max-width:34em;margin:0;color:#626a72;font-size:13px;line-height:1.75}.price-table-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.price-table-card{display:grid;grid-gap:16px;gap:16px;min-width:0;padding:clamp(18px,2.4vw,28px);background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(238,244,241,.92)),#ffffff;border:1px solid rgba(111,143,138,.16);border-radius:8px;box-shadow:0 18px 52px rgba(31,35,40,.08)}.price-table-card.refrain{background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(248,241,241,.92)),#fbf7f6;border-color:rgba(163,104,92,.16)}.price-table-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px}.price-table-head span{color:#6f8f8a;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.price-table-card.refrain .price-table-head span{color:#8c5f68}.price-table-head h3{margin:0;color:#1f2328;font-family:Georgia,Times New Roman,Yu Mincho,serif;font-size:clamp(30px,3.1vw,44px);font-weight:500;line-height:1}.price-plan-list{display:grid;grid-gap:10px;gap:10px}.price-plan{display:grid;grid-gap:8px;gap:8px;padding:12px;background:rgba(255,255,255,.62);border:1px solid rgba(111,143,138,.14);border-radius:8px}.price-table-card.refrain .price-plan{border-color:rgba(163,104,92,.14)}.price-plan p{margin:0;color:#243447;font-size:12px;font-weight:900}.price-plan dl{display:grid;grid-gap:6px;gap:6px;margin:0}.price-plan dl div{display:flex;min-height:34px;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid rgba(31,35,40,.08)}.price-plan dl div:first-child{border-top:0}.price-plan dt{color:#626a72;font-size:12px;font-weight:800}.price-plan dd{margin:0;color:#1f2328;font-size:18px;font-weight:900;white-space:nowrap}.price-note{margin:0;color:#626a72;font-size:12px;line-height:1.7}@media (max-width:980px){.price-table-grid{grid-template-columns:1fr}}@media (max-width:640px){.section-note{font-size:12px}.price-table-card{gap:12px;padding:16px}.price-table-head{align-items:flex-start;flex-direction:column}.price-plan dd{font-size:16px}.tile-intro{min-height:320px}.room-grid{align-items:flex-start;height:232px;max-height:232px;padding-bottom:0!important;overflow-x:auto;overflow-y:hidden}.room-grid>.room-card,.room-grid>.room-card.featured{flex:0 0 min(294px,82vw)!important;height:232px!important;min-height:232px}.room-grid>.room-copy{display:none!important}.tile-booking{min-height:168px}}main{padding-top:0;scroll-padding-top:12px}.grid-stage{margin-top:8px}@media (max-width:640px){.grid-stage{margin-top:6px}}.tile-intro .hero-copy{gap:0}.top-bar{position:-webkit-sticky;position:sticky;top:8px;z-index:45;display:flex;align-items:center;justify-content:space-between;width:min(calc(100% - 12px),var(--max));min-height:46px;margin:6px auto 0;padding:5px;color:#243447;background:rgba(255,255,255,.82);border:1px solid rgba(31,35,40,.1);border-radius:8px;box-shadow:0 14px 34px rgba(31,35,40,.1);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.top-bar nav a,.top-bar-brand{display:grid;min-height:36px;place-items:center;border-radius:8px;color:inherit;font-size:11px;font-weight:900;text-decoration:none}.top-bar-brand{padding:0 12px;color:#ffffff;background:#243447;letter-spacing:.02em}.top-bar nav{display:flex;gap:4px}.top-bar nav a{min-width:56px;padding:0 10px;background:rgba(232,241,238,.86);border:1px solid rgba(111,143,138,.18)}.map-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.map-card{display:grid;grid-gap:12px;gap:12px;min-width:0;padding:clamp(14px,2vw,18px);background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(238,244,241,.92)),#ffffff;border:1px solid rgba(111,143,138,.16);border-radius:8px;box-shadow:0 18px 52px rgba(31,35,40,.08)}.map-card.refrain{background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(248,241,241,.92)),#fbf7f6;border-color:rgba(163,104,92,.16)}.map-card-head{display:flex;align-items:flex-end;justify-content:space-between;gap:10px}.map-card-head span{color:#6f8f8a;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.map-card.refrain .map-card-head span{color:#8c5f68}.map-card-head h3{margin:0;color:#1f2328;font-family:Georgia,Times New Roman,Yu Mincho,serif;font-size:clamp(26px,2.8vw,38px);font-weight:500;line-height:1}.map-card iframe{width:100%;height:260px;border:0;border-radius:8px;background:#e8f1ee}.map-link{display:inline-flex;min-height:42px;align-items:center;justify-content:space-between;gap:10px;padding:0 12px;color:#243447;background:rgba(232,241,238,.9);border:1px solid rgba(111,143,138,.22);border-radius:8px;font-size:12px;font-weight:900;text-decoration:none}.map-card.refrain .map-link{background:rgba(246,229,222,.86);border-color:rgba(163,104,92,.2)}.search-summary{background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(238,244,241,.88)),#ffffff}.answer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.answer-grid article{min-width:0;padding:clamp(14px,1.8vw,20px);background:rgba(255,255,255,.68);border:1px solid rgba(111,143,138,.16);border-radius:8px}.answer-grid article:last-child{background:rgba(246,229,222,.38);border-color:rgba(163,104,92,.16)}.answer-grid h3{margin:0 0 8px;color:#243447;font-family:Georgia,Times New Roman,Yu Mincho,serif;font-size:clamp(26px,2.8vw,38px);font-weight:500;line-height:1}.answer-grid p{margin:0;color:#4f5963;font-size:13px;line-height:1.8}.booking-stage{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.booking-stage .grid-tile{grid-column:auto!important;grid-row:auto!important;min-height:220px}.booking-stage .tile-booking,.booking-stage .tile-faq{padding:clamp(18px,2vw,24px)}@media (min-width:981px){.grid-stage:not(.booking-stage){grid-template-columns:minmax(0,1.24fr) minmax(0,1fr) minmax(0,1fr);grid-template-rows:minmax(300px,auto) minmax(255px,auto) minmax(150px,auto);min-height:auto;align-items:stretch}.grid-stage:not(.booking-stage) .tile-intro{grid-column:1/span 2;min-height:300px}.grid-stage:not(.booking-stage) .tile-hotel{min-height:300px}.grid-stage:not(.booking-stage) .tile-hotel:nth-of-type(3),.grid-stage:not(.booking-stage) .tile-photo{min-height:255px}.grid-stage:not(.booking-stage) .tile-mood,.grid-stage:not(.booking-stage) .tile-price{min-height:150px}.grid-stage:not(.booking-stage) .tile-price{grid-column:1/-1}.grid-stage:not(.booking-stage) .price-mini-list{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-stage:not(.booking-stage) .price-mini-row{align-content:center;min-height:64px}.answer-grid h3,.map-card-head h3,.price-table-head h3,.section-heading h2,.stay-scene-copy h3,.tile-intro h1{letter-spacing:0;overflow-wrap:normal;word-break:keep-all;text-wrap:balance}.tile-intro h1{max-width:9.6em;font-size:clamp(42px,4.2vw,58px);line-height:1.16}.tile-content{display:grid;grid-gap:8px;gap:8px;align-content:end;max-width:calc(100% - 40px)}.tile-content h2{font-size:clamp(31px,2.8vw,40px);line-height:1.02}.tile-content p{max-width:25em;line-height:1.7}.section-heading.split{align-items:end;grid-template-columns:minmax(0,.9fr) minmax(280px,.7fr);gap:24px}.section-heading h2{max-width:11em;font-size:clamp(38px,3.4vw,54px);line-height:1.15}.section-note{align-self:end;max-width:42em;margin-bottom:2px}.stay-scene-rail{grid-auto-rows:clamp(150px,13.5vw,190px)}.stay-scene-copy h3{font-size:clamp(30px,2.5vw,38px);line-height:1.14}.answer-grid h3,.map-card-head h3,.price-table-head h3{font-size:clamp(30px,2.6vw,38px);line-height:1.05}.booking-stage{min-height:auto;grid-template-rows:minmax(210px,auto)}.hotel-band .section-heading.split{align-items:end;margin-bottom:18px}.hotel-band .section-heading .action-link{width:min(100%,520px);justify-self:end}.hotel-band .room-grid{grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(218px,auto);align-items:stretch;overflow:visible}.hotel-band .room-copy{grid-column:span 2;grid-row:span 2;min-height:0;gap:14px;overflow:hidden}.hotel-band .room-copy h3{display:-webkit-box;margin:0;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3;font-size:clamp(26px,2.35vw,34px);line-height:1.2}.hotel-band .room-copy .tag-row{margin-top:0}.hotel-band .room-copy .action-link{margin-top:auto;width:100%}.map-band{margin-top:112px}.bottom-nav{display:none}}@media (max-width:640px){.top-bar{top:6px;width:calc(100% - 12px);min-height:44px}.top-bar-brand{max-width:184px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.map-grid{grid-template-columns:1fr;gap:10px}.map-card{padding:12px}.map-card iframe{height:236px}.answer-grid{grid-template-columns:1fr;gap:10px}.answer-grid article{padding:14px}.booking-stage{grid-template-columns:1fr;gap:10px}.booking-stage .grid-tile{min-height:172px}}.subpage-header{position:-webkit-sticky;position:sticky;top:8px;z-index:45;display:flex;align-items:center;justify-content:space-between;width:min(calc(100% - 24px),var(--max));min-height:50px;margin:8px auto 0;padding:6px;background:rgba(255,255,255,.86);border:1px solid rgba(31,35,40,.1);border-radius:8px;box-shadow:0 14px 34px rgba(31,35,40,.1);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.subpage-header nav{display:flex;gap:4px}.subpage-header nav a{display:grid;min-height:36px;place-items:center;padding:0 12px;color:#243447;background:rgba(232,241,238,.86);border:1px solid rgba(111,143,138,.18);border-radius:8px;font-size:12px;font-weight:900;text-decoration:none}.subpage-main{width:min(calc(100% - 24px),var(--max));margin:0 auto;padding:18px 0 88px}.subpage-hero,.subpage-section{margin-top:14px;padding:clamp(22px,3vw,38px);background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(238,244,241,.86)),#ffffff;border:1px solid rgba(111,143,138,.16);border-radius:8px;box-shadow:0 18px 52px rgba(31,35,40,.08)}.detail-copy h2,.sub-hotel-card h2,.subpage-hero h1,.subsection-heading h2{margin:0;color:#1f2328;font-family:Georgia,Times New Roman,Yu Mincho,serif;font-weight:500;letter-spacing:0;line-height:1.12;text-wrap:balance}.subpage-hero h1{max-width:10em;font-size:clamp(38px,5vw,68px)}.detail-copy p,.sub-hotel-card p,.subpage-hero p,.subsection-heading p{max-width:48em;margin:14px 0 0;color:#626a72;line-height:1.85}.hotel-detail{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);grid-gap:18px;gap:18px}.detail-visual{min-height:520px;overflow:hidden;border-radius:8px;background:#1f2328}.detail-visual img,.sub-room-grid img{width:100%;height:100%;object-fit:cover}.detail-copy,.sub-hotel-card,.sub-map-card{display:grid;grid-gap:14px;gap:14px;align-content:start;min-width:0}.detail-copy .tag-row{display:flex;flex-wrap:wrap;gap:8px}.detail-copy .tag-row span{display:inline-flex;min-height:34px;align-items:center;padding:0 12px;color:#243447;background:rgba(232,241,238,.82);border:1px solid rgba(111,143,138,.22);border-radius:999px;font-size:12px;font-weight:900}.sub-action-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px;margin-top:8px}.sub-action-row a,.sub-map-link{display:inline-flex;min-height:48px;align-items:center;justify-content:space-between;gap:10px;padding:0 14px;color:#ffffff;background:#243447;border-radius:8px;font-size:13px;font-weight:900;text-decoration:none}.sub-action-row a:nth-child(2),.sub-map-link{color:#243447;background:rgba(232,241,238,.9);border:1px solid rgba(111,143,138,.22)}.subsection-heading{margin-bottom:16px}.detail-copy h2,.sub-hotel-card h2,.subsection-heading h2{font-size:clamp(30px,3vw,46px)}.sub-room-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:12px;gap:12px}.sub-room-grid figure{position:relative;height:260px;min-width:0;margin:0;overflow:hidden;background:#1f2328;border-radius:8px}.sub-room-grid figcaption{position:absolute;right:12px;bottom:12px;padding:7px 10px;color:#243447;background:rgba(236,245,242,.92);border-radius:8px;font-size:12px;font-weight:900}.sub-two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px}.sub-hotel-card,.sub-map-card{padding:clamp(18px,2.2vw,26px);background:rgba(255,255,255,.72);border:1px solid rgba(111,143,138,.16);border-radius:8px}.sub-hotel-card.refrain,.sub-map-card.refrain{background:rgba(246,229,222,.34);border-color:rgba(163,104,92,.16)}.sub-price-list{display:grid;grid-gap:10px;gap:10px}.sub-price-plan{padding:14px;background:rgba(255,255,255,.74);border:1px solid rgba(111,143,138,.14);border-radius:8px}.sub-price-plan h3{margin:0 0 8px;color:#243447;font-size:13px}.sub-price-plan dl{display:grid;grid-gap:6px;gap:6px;margin:0}.sub-price-plan dl div{display:flex;min-height:34px;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid rgba(31,35,40,.08)}.sub-price-plan dl div:first-child{border-top:0}.sub-price-plan dt{color:#626a72;font-size:12px;font-weight:900}.sub-price-plan dd{margin:0;color:#1f2328;font-size:17px;font-weight:900;white-space:nowrap}.sub-map{width:100%;height:360px;border:0;border-radius:8px;background:#e8f1ee}@media (max-width:980px){.subpage-header{align-items:stretch;flex-direction:column;gap:6px}.subpage-header nav{overflow-x:auto;scrollbar-width:none}.subpage-header nav::-webkit-scrollbar{display:none}.subpage-header nav a{flex:0 0 auto}.hotel-detail,.sub-two-col{grid-template-columns:1fr}.detail-visual{min-height:320px}.sub-room-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.subpage-header,.subpage-main{width:calc(100% - 12px)}.subpage-main{padding-bottom:104px}.subpage-hero,.subpage-section{padding:18px}.subpage-hero h1{font-size:clamp(30px,9vw,40px)}.sub-action-row,.sub-room-grid{grid-template-columns:1fr}.sub-room-grid figure{height:232px}.sub-map{height:260px}}@media (min-width:641px) and (max-width:980px){.hotel-band{padding-bottom:88px}.hotel-band+.hotel-band,.hotel-band+.map-band{margin-top:112px}.hotel-band .section-heading.split{gap:12px;margin-bottom:16px}.hotel-band .section-heading .action-link{width:100%}.hotel-band .room-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:auto;gap:12px;margin-bottom:56px;overflow:visible}.hotel-band .room-card,.hotel-band .room-card.featured{grid-column:auto;grid-row:auto;height:260px}.hotel-band .room-copy{display:grid;grid-column:1/-1;grid-row:auto;min-height:0;grid-gap:12px;gap:12px;overflow:visible}.hotel-band .room-copy h3{margin:0;font-size:clamp(26px,4vw,34px);line-height:1.24}.hotel-band .room-copy .tag-row{margin-top:0}.hotel-band .room-copy .action-link{position:static;transform:none;width:100%;margin-top:0}.map-band{margin-top:72px}}