:root{--bg: #f7f4ef;--paper: rgba(255,255,255,.72);--text: #2f2a24;--muted: #6f675f;--line: #ddd2c6}body{background:var(--bg);color:var(--text)}.hero,.detail-hero{position:relative;background-size:cover;background-position:center}.hero{min-height:100vh;display:flex;align-items:center;justify-content:center}.detail-hero{min-height:68vh;display:flex;align-items:flex-end}.overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,#0000002e,#0006)}.hero-inner,.detail-hero-inner{position:relative;z-index:1;color:#fff;text-align:center;padding:32px}.hero-inner h1,.detail-hero-inner h1{font-size:clamp(40px,7vw,84px);margin:0 0 16px;letter-spacing:.08em;font-weight:700}.eyebrow{letter-spacing:.2em;text-transform:uppercase;opacity:.85;margin-bottom:12px}.hero-text,.detail-hero-inner p{font-size:18px;line-height:1.9;max-width:680px;margin:0 auto 28px}.primary-button,.secondary-button,.back-button{border:1px solid rgba(255,255,255,.7);background:#ffffff24;color:#fff;padding:12px 24px;border-radius:999px;cursor:pointer;transition:.25s ease}.primary-button:hover,.secondary-button:hover,.back-button:hover{background:#ffffff3d}.secondary-button{color:var(--text);border-color:var(--line);background:transparent}.content-section,.detail-section{max-width:1180px;margin:0 auto;padding:88px 24px}.content-section h2,.detail-section h2{text-align:center;font-size:32px;margin:0 0 32px;font-weight:600}.narrow{max-width:820px;text-align:center}.narrow p,.detail-section p,.detail-section li{color:var(--muted);line-height:2;font-size:17px}.lifestyle p{font-size:22px;color:var(--text)}.list-card{background:var(--paper);border:1px solid var(--line);border-radius:28px;padding:36px 24px}.center{max-width:780px;margin:0 auto;text-align:center}.rooms-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.room-card{background:var(--paper);border:1px solid var(--line);border-radius:28px;overflow:hidden;cursor:pointer;box-shadow:0 12px 30px #382d1e0f}.room-card-image{height:240px;background-size:cover;background-position:center}.room-card-body{padding:28px}.room-card-body h3{margin:0 0 12px;font-size:28px}.room-card-body p,.room-card-body span{color:var(--muted)}.room-card-body span{display:inline-block;margin-top:18px}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.gallery-item{height:280px;border-radius:24px;background-size:cover;background-position:center}.booking-block,.contact-block{background:var(--paper);border:1px solid var(--line);border-radius:28px;margin-top:24px}.site-footer{text-align:center;padding:48px 24px 60px;color:#8a8076}.detail-wrap{max-width:1100px;margin:0 auto;padding:24px 24px 80px}.back-button{margin-bottom:24px}.detail-gallery-scroll{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(280px,1fr);gap:16px;overflow-x:auto;padding-bottom:8px}.detail-gallery-image{height:360px;border-radius:22px;background-size:cover;background-position:center;min-width:280px}.two-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.info-box,.booking-panel,.route-map-placeholder{background:var(--paper);border:1px solid var(--line);border-radius:24px}.info-box{padding:28px}.info-box h2{text-align:left;font-size:24px;margin-bottom:20px}.info-box ul,.detail-section ul{margin:0;padding-left:20px}.route-map-placeholder{min-height:280px;display:flex;align-items:center;justify-content:center;color:#8a8076;padding:20px;text-align:center}.route-note{margin-top:16px}.booking-panel{text-align:center;padding:36px 24px}.booking-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:20px}@media (max-width: 900px){.rooms-grid,.gallery-grid,.two-col{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr 1fr}.content-section,.detail-section{padding:64px 18px}}@media (max-width: 640px){.gallery-grid{grid-template-columns:1fr}.hero-inner,.detail-hero-inner{padding:24px 18px}.hero-text,.detail-hero-inner p,.narrow p,.detail-section p,.detail-section li{font-size:16px}.lifestyle p{font-size:18px}}
