.service-title{margin:14px 0 0}
.service-meta-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:20px}
.service-meta-item{display:inline-flex;align-items:center;gap:6px;font-size:var(--text-sm);color:var(--text-muted,#6b7280);font-weight:var(--fw-semibold)}
.service-badge{display:inline-flex;align-items:center;background:#edf3e8;color:#3f6226;font-size:var(--text-xs);font-weight:var(--fw-bold);padding:6px 11px;border-radius:999px}

.service-gallery{display:grid;grid-template-columns:1.6fr 1fr;gap:8px;margin-bottom:8px}
.service-gallery-main{position:relative;border-radius:16px;overflow:hidden;background:linear-gradient(145deg,#f4eee7,#eee7df);aspect-ratio:16/10}
.service-gallery-main img{width:100%;height:100%;object-fit:cover;display:block}
.service-gallery-side{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:8px}
.service-gallery-thumb{position:relative;border:1px solid var(--line,#e9e8e5);padding:0;cursor:pointer;border-radius:12px;overflow:hidden;background:#f4eee7;aspect-ratio:1/1;transition:.2s}
.service-gallery-thumb:hover{transform:translateY(-1px)}
.service-gallery-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.service-gallery-more{position:absolute;inset:0;background:rgba(0,0,0,.5);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:var(--fw-bold);font-size:var(--text-sm)}

.service-body{display:grid;grid-template-columns:1fr 380px;gap:44px;margin-top:30px;align-items:start;padding-bottom:60px}
.service-content .accordions{margin-top:0}
.service-check-list{list-style:none;margin:0 0 16px;padding:0;display:grid;gap:9px}
.service-check-list li{display:flex;align-items:flex-start;gap:9px;font-size:var(--text-base);line-height:var(--lh-normal);color:#333}
.service-check-list svg{flex-shrink:0;margin-top:2px;color:#3f8a3f}
.service-check-list.no svg{color:#a23d32}
.service-includes-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.service-includes-grid h4{font-size:var(--text-sm);margin:0 0 10px}
.service-itinerary-list{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.service-itinerary-list li{display:flex;gap:12px;align-items:flex-start}
.service-itinerary-num{flex-shrink:0;width:26px;height:26px;border-radius:50%;background:#111;color:#fff;display:flex;align-items:center;justify-content:center;font-size:var(--text-xs);font-weight:var(--fw-bold)}
.service-plain-list{margin:0;padding-left:18px;display:grid;gap:8px;color:#444;font-size:var(--text-base);line-height:var(--lh-normal)}
.service-help-box{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--line,#e9e8e5);border-radius:14px;padding:18px 20px;margin-top:8px}
.service-help-box p{margin:2px 0 0;color:var(--text-muted,#6b7280);font-size:var(--text-sm)}
.btn-outline{display:inline-flex;align-items:center;justify-content:center;min-height:var(--tap-min);border:1px solid #111;border-radius:9px;padding:10px 16px;font-weight:var(--fw-semibold);font-size:var(--text-sm);white-space:nowrap}

.service-booking{position:sticky;top:102px;border:1px solid var(--line,#e9e8e5);border-radius:18px;padding:22px;box-shadow:0 18px 44px -30px #0000002e;background:#fff}
.service-booking-price{font-size:var(--text-lg);margin-bottom:16px}
.service-booking-price strong{font-size:var(--text-xl)}
.service-booking-price span{color:var(--text-muted,#6b7280);font-size:var(--text-sm)}
.service-booking-trust{text-align:center;font-size:var(--text-sm);color:var(--text-muted,#6b7280);margin:12px 0 0}
#serviceReserveBtn:disabled{opacity:.6;cursor:not-allowed}

@media(max-width:980px){
  .service-body{grid-template-columns:1fr}
  .service-booking{position:static}
}
@media(max-width:720px){
  .service-gallery{grid-template-columns:1fr}
  .service-gallery-side{grid-template-columns:repeat(4,1fr);grid-template-rows:1fr}
  .service-includes-grid{grid-template-columns:1fr}
  .service-help-box{flex-direction:column;align-items:flex-start}
}
