/* Page styles: services */
/* ── SERVICE HERO CARDS ── */
.service-hero-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:24px; margin-bottom:60px; }
.shc { border-radius:16px; overflow:hidden; position:relative; height:220px; cursor:pointer; text-decoration:none; display:block; }
.shc img { width:100%;height:100%;object-fit:cover;transition:transform .4s; }
.shc:hover img { transform:scale(1.06); }
.shc .shc-overlay { position:absolute;inset:0;background:linear-gradient(to top,rgba(92,20,20,.9) 40%,rgba(92,20,20,.18) 80%); }
.shc .shc-content { position:absolute;bottom:0;left:0;right:0;padding:18px 20px; }
.shc-icon { width:46px;height:46px;background:#f5a623;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px;color:#fff;margin-bottom:10px; }
.shc-content h3 { color:#fff;font-size:17px;font-weight:800;margin-bottom:3px; }
.shc-content p  { color:rgba(255,255,255,.75);font-size:12px; }
.shc-arrow { position:absolute;top:16px;right:16px;width:32px;height:32px;background:rgba(255,255,255,.2);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;transition:.2s; }
.shc:hover .shc-arrow { background:#f5a623; }

/* ── SERVICE DETAIL SECTION ── */
.svc-section { margin-bottom:64px; scroll-margin-top:90px; }
.svc-header { display:flex; align-items:center; gap:16px; margin-bottom:28px; padding-bottom:16px; border-bottom:2px solid #f0f0f0; }
.svc-header .svc-badge { width:56px;height:56px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:24px;color:#fff;flex-shrink:0; }
.svc-header h2 { font-size:26px;font-weight:800;color:#5c1414;margin-bottom:4px; }
.svc-header p  { font-size:14px;color:#888; }

/* CAB GRID */
.cab-service-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:22px; }
.cab-svc-card { background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 3px 14px rgba(0,0,0,.08);transition:.25s; }
.cab-svc-card:hover { transform:translateY(-5px); }
.cab-svc-card img { width:100%;height:160px;object-fit:cover; }
.csc-body { padding:16px; }
.csc-body h3 { font-size:16px;font-weight:700;color:#5c1414;margin-bottom:4px; }
.csc-body .csc-model { font-size:12px;color:#aaa;margin-bottom:10px; }
.csc-specs { display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:14px; }
.csc-spec { display:flex;align-items:center;gap:6px;font-size:12px;color:#555;background:#fdf7f7;padding:7px 10px;border-radius:7px; }
.csc-spec i { color:#f5a623;font-size:12px; }
.csc-footer { display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#fafafa;border-top:1px solid #f0f0f0; }
.csc-price { font-size:15px;font-weight:800;color:#5c1414; }
.csc-price span { font-size:11px;font-weight:400;color:#aaa; }

/* HOTEL GRID */
.hotel-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:22px; }
.hotel-card { background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 3px 14px rgba(0,0,0,.08);transition:.25s; }
.hotel-card:hover { transform:translateY(-5px); }
.hotel-card .hc-img { height:170px;overflow:hidden;position:relative; }
.hotel-card .hc-img img { width:100%;height:100%;object-fit:cover;transition:transform .4s; }
.hotel-card:hover .hc-img img { transform:scale(1.05); }
.hc-stars { position:absolute;bottom:10px;left:12px;display:flex;gap:3px; }
.hc-stars i { color:#f5a623;font-size:14px; }
.hc-body { padding:16px; }
.hc-body h3 { font-size:15px;font-weight:700;color:#5c1414;margin-bottom:4px; }
.hc-type { font-size:11px;color:#f5a623;font-weight:600;margin-bottom:8px; }
.hc-amenities { display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px; }
.hc-am { background:#fbf0f0;color:#5c1414;font-size:11px;font-weight:600;padding:3px 10px;border-radius:14px;display:flex;align-items:center;gap:4px; }
.hc-am i { color:#f5a623;font-size:10px; }
.hc-footer { display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#fafafa;border-top:1px solid #f0f0f0; }
.hc-price { font-size:14px;font-weight:800;color:#5c1414; }
.hc-price span { font-size:11px;font-weight:400;color:#aaa; }

/* GUIDE GRID */
.guide-preview-grid { display:grid;grid-template-columns:repeat(4,1fr);gap:22px; }
.gp-card { background:#fff;border-radius:14px;padding:22px 16px;text-align:center;box-shadow:0 3px 14px rgba(0,0,0,.08);transition:.25s; }
.gp-card:hover { transform:translateY(-5px); }
.gp-avatar { width:80px;height:80px;border-radius:50%;object-fit:cover;border:3px solid #f5a623;margin:0 auto 12px;display:block; }
.gp-avatar-placeholder { width:80px;height:80px;border-radius:50%;background:#5c1414;border:3px solid #f5a623;margin:0 auto 12px;display:flex;align-items:center;justify-content:center;color:#f5a623;font-size:28px;font-weight:800; }
.gp-card h3 { font-size:15px;font-weight:700;color:#5c1414;margin-bottom:3px; }
.gp-card .gp-lang { font-size:11px;color:#aaa;margin-bottom:8px; }
.gp-card .gp-dest { font-size:12px;color:#f5a623;font-weight:600;margin-bottom:10px; }
.gp-stars { color:#f5a623;font-size:13px;margin-bottom:10px; }
.gp-rate { font-size:14px;font-weight:800;color:#5c1414;margin-bottom:12px; }

/* WHEELCHAIR SECTION */
.wc-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:22px; }
.wc-card { background:#fff;border-radius:14px;padding:24px;box-shadow:0 3px 14px rgba(0,0,0,.08);transition:.25s;border-top:4px solid #f5a623; }
.wc-card:hover { transform:translateY(-5px); }
.wc-icon { width:60px;height:60px;background:#fbf0f0;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:26px;color:#5c1414;margin-bottom:14px; }
.wc-card h3 { font-size:16px;font-weight:700;color:#5c1414;margin-bottom:8px; }
.wc-card p  { font-size:13px;color:#666;line-height:1.75;margin-bottom:14px; }
.wc-features { display:flex;flex-direction:column;gap:7px;margin-bottom:16px; }
.wc-feat { display:flex;align-items:center;gap:8px;font-size:12px;color:#555; }
.wc-feat i { color:#2ecc71;font-size:13px; }
.wc-price { font-size:14px;font-weight:800;color:#f5a623;margin-bottom:12px; }

/* BOOKING MODAL (shared) */
.svc-modal-overlay { display:none;position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:9999;align-items:center;justify-content:center;padding:16px; }
.svc-modal-overlay.open { display:flex; }
.svc-modal-box { background:#fff;border-radius:18px;width:100%;max-width:540px;max-height:92vh;overflow-y:auto;box-shadow:0 24px 64px rgba(0,0,0,.28); }
.svc-modal-head { background:linear-gradient(135deg,#5c1414,#6e1c1c);padding:20px 26px;border-radius:18px 18px 0 0;position:relative; }
.svc-modal-head h2 { color:#fff;font-size:19px;font-weight:800;margin-bottom:3px; }
.svc-modal-head p  { color:rgba(255,255,255,.65);font-size:13px; }
.svc-modal-close { position:absolute;top:14px;right:16px;background:rgba(255,255,255,.15);border:none;color:#fff;width:32px;height:32px;border-radius:50%;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;transition:.2s; }
.svc-modal-close:hover { background:rgba(255,255,255,.3); }
.svc-modal-body { padding:22px 24px 4px; }
.svc-form-row { display:grid;grid-template-columns:1fr 1fr;gap:14px; }
.svc-fg { display:flex;flex-direction:column;gap:5px;margin-bottom:14px; }
.svc-fg label { font-size:12px;font-weight:700;color:#333;display:flex;align-items:center;gap:5px; }
.svc-fg label i { color:#f5a623;font-size:11px; }
.svc-fg input,.svc-fg select,.svc-fg textarea { padding:11px 13px;border:1.5px solid #e5e5e5;border-radius:9px;font-size:13px;font-family:inherit;outline:none;transition:.2s; }
.svc-fg input:focus,.svc-fg select:focus { border-color:#5c1414; }
.svc-fg textarea { resize:vertical;min-height:70px; }
.svc-modal-footer { padding:4px 24px 22px; }
.btn-svc-submit { width:100%;background:#f5a623;color:#fff;border:none;padding:13px;border-radius:10px;font-size:15px;font-weight:700;cursor:pointer;font-family:inherit;transition:.2s;display:flex;align-items:center;justify-content:center;gap:8px; }
.btn-svc-submit:hover { background:#d4891a; }

@media(max-width:1100px){.service-hero-grid{grid-template-columns:1fr 1fr;}.cab-service-grid,.hotel-grid,.wc-grid{grid-template-columns:1fr 1fr;}.guide-preview-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:640px){.service-hero-grid,.cab-service-grid,.hotel-grid,.guide-preview-grid,.wc-grid{grid-template-columns:1fr;}.svc-form-row{grid-template-columns:1fr;}}
.gp-avatar-placeholder img {
    width: 100%;  
    border-radius: 50%;
    object-fit: cover;
}
