.post-detail{max-width:900px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden;box-shadow:0 8px 30px #24543a0d}
.post-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:4px;background:var(--mint)}
.post-gallery img{display:block;width:100%;height:360px;object-fit:cover}
.post-gallery img:first-child{grid-column:span 2;height:470px}
.post-content{padding:40px 54px;color:#42564b;font-size:16px;line-height:1.85}
.post-content p{margin:0 0 18px}.post-content ul{padding-left:24px;margin:0 0 22px}.post-content li{margin:8px 0}.post-content strong{color:var(--green)}
.service-video-wrap{display:flex;justify-content:center;background:#0b2d23}.service-video{display:block;width:auto;height:min(78vh,700px);max-width:100%;aspect-ratio:9/16;object-fit:contain;background:#0b2d23}
.food-detail .post-content{order:1}.food-detail .post-gallery{order:2;display:flex;flex-direction:column;align-items:center;gap:20px;padding:20px;background:var(--mint)}.food-detail .food-gallery-group{width:min(100%,800px)}.food-detail .food-gallery-group h3{margin:0 0 10px;color:var(--green);font-size:22px}.food-detail .post-gallery img,.food-detail .post-gallery img:first-child,.food-detail .food-gallery-group img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;cursor:zoom-in;margin-bottom:12px}.food-detail .food-gallery-group img:last-child{margin-bottom:0}
.menu-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.menu-card{display:flex;align-items:center;gap:18px;padding:14px;background:#fff;border:1px solid var(--line);border-radius:8px;color:var(--green);text-decoration:none;box-shadow:0 5px 20px #24543a0d}.menu-card img{width:150px;height:130px;object-fit:cover;border-radius:5px}.menu-card b{display:block;font-size:22px;margin-bottom:8px}.menu-card span{display:block;color:var(--muted);font-size:13px;line-height:1.4}@media(max-width:800px){.menu-grid{grid-template-columns:1fr}.menu-card img{width:110px;height:100px}.menu-card b{font-size:19px}}
.back-link{display:inline-block;margin:0 0 24px;color:#557f3e;text-decoration:none;font-size:13px;font-weight:700}.back-link:hover{text-decoration:underline}.faq-content{max-width:900px}.faq-content h2{font-size:25px}.faq-content p{margin:10px 0 18px}
.contact-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:24px;align-items:stretch;margin-bottom:24px}.contact-intro{padding:38px;border-radius:10px;background:var(--green);color:#eaf3ec}.contact-intro h2{font-size:32px;color:#fff;margin-bottom:24px}.contact-intro p{line-height:1.65}.contact-intro .post-kicker{color:var(--lime);font-weight:700}.contact-hotline{display:flex;flex-direction:column;align-items:flex-start;width:100%;padding:18px 20px;margin-bottom:18px;border:1px solid #ffffff3d;border-radius:8px;background:#ffffff10;color:#fff;text-decoration:none}.contact-hotline span{font-size:12px;color:#cddfd3}.contact-hotline strong{margin-top:3px;color:var(--lime);font-size:31px;letter-spacing:.5px}.contact-actions{display:flex;gap:10px;margin-top:22px}.contact-actions a{flex:1;padding:12px 14px;border-radius:5px;background:var(--lime);color:var(--green);font-weight:700;text-align:center;text-decoration:none}.contact-links{display:flex;flex-direction:column;gap:12px}.contact-card{display:grid;grid-template-columns:50px minmax(0,1fr) auto;align-items:center;gap:15px;flex:1;padding:18px 20px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--green);text-decoration:none;box-shadow:0 5px 20px #24543a0d;transition:transform .2s,box-shadow .2s}.contact-card:hover{transform:translateY(-2px);box-shadow:0 10px 25px #24543a18}.contact-card-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#1877f2;color:#fff;font:bold 26px Arial}.contact-card-icon-dark{background:#111}.contact-card-icon-map{background:#e74b3c;font:700 24px 'Roboto Condensed'}.contact-card strong,.contact-card small{display:block}.contact-card strong{font-size:18px}.contact-card small{margin-top:5px;color:var(--muted);font-size:12px;line-height:1.45}.contact-card>b{font-size:22px;color:#7ea052}.contact-note{max-width:none}.contact-note h2{margin-top:0}.contact-note .green-btn{color:var(--green)}
.contact-intro .contact-secondary{margin:-4px 0 18px;color:#b9cec1;font-size:13px}.contact-secondary a{color:#d8e7dc;text-decoration:none}.contact-secondary a:hover{text-decoration:underline}.contact-secondary span{padding:0 5px;color:#789789}
.room-detail-content{max-width:1000px}.room-detail-content img{display:block;max-width:100%;height:auto;margin:18px auto;border-radius:6px}.room-detail-content h2,.room-detail-content h3{color:var(--green);margin-top:25px}.room-detail-content p,.room-detail-content li{line-height:1.75}
.room-card-link{display:block;color:inherit;text-decoration:none}.room-card-link img{display:block;width:100%;height:190px;object-fit:cover}.room-title-link{color:var(--green);text-decoration:none}.room-title-link:hover{text-decoration:underline}.room-summary{display:grid;gap:6px;border-top:1px solid var(--line);padding-top:13px;color:var(--muted);font-size:12px}.room-summary strong{color:var(--green);font-size:13px;margin-left:4px}.room-summary .price-highlight,.room-summary .price-highlight strong{color:#d92d20!important;font-weight:700}
.booking-status{max-width:900px;margin:0 auto 20px;padding:13px 16px;border-radius:8px;background:#fff;border:1px solid var(--line);color:var(--muted);font-size:14px}.booking-status-ok{border-color:#b8d9bd;color:#2f7d4a;background:#f3fbf3}.booking-status-error{border-color:#e6c2b9;color:#9a402f;background:#fff8f5}.booking-status-warning{border-color:#e5cd83;color:#755b12;background:#fffbed}.booking-status-warning strong{color:#6b500b}
.booking-status strong{color:#24723f;font-weight:700}
.room-results-tools{padding-top:32px}.room-results-back{display:inline-block;margin:0 0 18px}.results-search-panel{margin-bottom:20px;padding:24px;border:1px solid var(--line);border-radius:8px;background:var(--mint)}.results-search-heading{margin-bottom:17px}.results-search-heading .eyebrow{margin-bottom:7px}.results-search-heading h2{font-size:26px;color:var(--green)}.results-search-heading>p:last-child{margin:6px 0 0;color:var(--muted);font-size:13px}.room-search{width:min(1040px,100%)}.room-search-results{width:100%;box-shadow:0 7px 22px #24543a12}.room-search-results>.search-field:last-child{border-right:0}.room-results-tools .booking-status{max-width:none;margin:0 0 14px}.guest-summary{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-type-field{min-width:160px}.room-type-field select{width:100%;border:0;outline:0;background:transparent;color:var(--ink);font:600 13px "Roboto Condensed",sans-serif;cursor:pointer}
.booking-refresh-status{margin:8px 0 0;color:var(--muted);font-size:12px;text-align:right}
.room-summary{grid-template-columns:1fr 1fr auto;align-items:center;gap:8px}.room-capacity{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.room-capacity svg{width:20px;height:20px;fill:var(--green)}.room-capacity strong{margin-left:0}@media(max-width:500px){.room-summary{grid-template-columns:1fr 1fr;row-gap:9px}.room-capacity{grid-column:2;justify-self:end}}
@media(max-width:800px){.post-gallery img,.post-gallery img:first-child{height:230px}.service-video{width:100%;height:auto;aspect-ratio:9/16}.post-content{padding:26px 22px;font-size:15px;line-height:1.75}.room-results-tools{padding-top:22px}.results-search-panel{padding:18px 14px}.results-search-heading h2{font-size:23px}.room-search-results{padding:8px}.contact-layout{grid-template-columns:1fr}.contact-intro{padding:27px 22px}.contact-intro h2{font-size:27px}.contact-hotline strong{font-size:28px}.contact-actions{flex-direction:column}.contact-card{padding:16px 14px;grid-template-columns:46px minmax(0,1fr) auto}.contact-address small{font-size:11px}}
