:root{
  --bg:#0b1220;
  --white:#fff;
  --text:#0f172a;
  --muted:#64748b;
  --line:rgba(15,23,42,.10);

  --primary:#0ea5e9;
  --radius:18px;
  --shadow: 0 14px 40px rgba(2,6,23,.18);
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:"Poppins",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--text);
  background:#fff;
}

a{color:inherit;text-decoration:none}
.container{width:min(1200px, calc(100% - 32px));margin:0 auto;}

.section{padding:72px 0}
.section-head h2{margin:0 0 10px;font-size:30px}
.section-head p{margin:0;color:var(--muted)}

/* content layout (hero covers) */
.site-content{
  position:relative;
  z-index:5;
  margin-top:100vh;
  background:#fff;
  border-top-left-radius:28px;
  border-top-right-radius:28px;
  box-shadow:0 -18px 40px rgba(2,6,23,.16);
  padding-bottom:120px; /* space for booking bar */
}

/* Buttons */
.btn{
  border:1px solid transparent;
  border-radius:999px;
  padding:10px 14px;
  cursor:pointer;
  font-weight:600;
  font-size:14px;
}
.btn-primary{background:linear-gradient(135deg, var(--primary), #2563eb);color:#fff;}
.btn-outline{background:#fff;border-color:var(--line);color:var(--text);}
.btn-outline:hover{border-color:rgba(14,165,233,.35)}
.btn-chip{background:#fff;border-color:var(--line);padding:8px 10px;}
.btn-block{width:100%}

/* Icon button */
.icon-btn{
  width:42px;height:42px;border-radius:999px;
  display:grid;place-items:center;
  border:1px solid var(--line);
  background:#fff;
}
.icon-btn:hover{border-color:rgba(14,165,233,.35)}

/* Basic icons (svg backgrounds injected elsewhere if you use them) */
.icon-person::before{content:"👤"}

/* ===== Icons (Phone / WhatsApp) ===== */
/* امنع أي ::before قديم (emoji) */
.icon-phone::before,
.icon-whatsapp::before{
  content:"" !important;
}

/* ارسم الأيقونات كـ SVG background */
.icon-phone,
.icon-whatsapp{
  display:block;
  width:20px;
  height:20px;
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
}

/* ===== Icons (Phone / WhatsApp) ===== */
.icon-phone::before,
.icon-whatsapp::before{ content:"" !important; }

.icon-phone,
.icon-whatsapp{
  display:block !important;
  width:20px !important;
  height:20px !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:contain !important;
}

.icon-phone{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%230f172a'%3E%3Cpath d='M6.62 10.79a15.05 15.05 0 0 0 6.59 6.59l2.2-2.2a1 1 0 0 1 1.01-.24c1.12.37 2.33.57 3.58.57a1 1 0 0 1 1 1V20a1 1 0 0 1-1 1C10.07 21 3 13.93 3 5a1 1 0 0 1 1-1h3.5a1 1 0 0 1 1 1c0 1.25.2 2.46.57 3.58a1 1 0 0 1-.24 1.01l-2.2 2.2z'/%3E%3C/svg%3E");
}

.icon-whatsapp{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2316a34a'%3E%3Cpath d='M20.52 3.48A11.91 11.91 0 0 0 12.01 0C5.39 0 .02 5.37.02 11.99c0 2.11.55 4.17 1.6 5.98L0 24l6.18-1.62a11.95 11.95 0 0 0 5.83 1.49h.01c6.62 0 11.99-5.37 11.99-11.99 0-3.2-1.25-6.2-3.49-8.4zM12.01 21.8h-.01a9.86 9.86 0 0 1-5.02-1.37l-.36-.21-3.67.96.98-3.58-.23-.37a9.83 9.83 0 0 1-1.51-5.23c0-5.45 4.44-9.89 9.9-9.89 2.64 0 5.12 1.03 6.99 2.9a9.82 9.82 0 0 1 2.9 6.99c0 5.46-4.44 9.9-9.9 9.9zm5.44-7.4c-.3-.15-1.77-.87-2.05-.97-.27-.1-.47-.15-.67.15-.2.3-.77.97-.94 1.17-.17.2-.35.22-.65.07-.3-.15-1.26-.46-2.4-1.48-.89-.79-1.49-1.77-1.66-2.07-.17-.3-.02-.46.13-.61.13-.13.3-.35.45-.52.15-.17.2-.3.3-.5.1-.2.05-.37-.02-.52-.07-.15-.67-1.61-.92-2.2-.24-.58-.48-.5-.67-.51h-.57c-.2 0-.52.07-.79.37-.27.3-1.04 1.02-1.04 2.49 0 1.47 1.07 2.89 1.22 3.09.15.2 2.11 3.22 5.11 4.51.71.31 1.27.49 1.7.63.71.23 1.36.2 1.87.12.57-.08 1.77-.72 2.02-1.42.25-.7.25-1.3.17-1.42-.08-.12-.27-.2-.57-.35z'/%3E%3C/svg%3E");
}

/* ===== Contact / Map section ===== */
.contact-grid{
  display:grid;
  grid-template-columns: 1.4fr 1fr;
  gap:14px;
  margin-top:18px;
}

.map-card, .contact-card{
  border:1px solid var(--line);
  border-radius: var(--radius);
  background:#fff;
  box-shadow: 0 10px 24px rgba(2,6,23,.05);
  overflow:hidden;
}

.map-embed{
  width:100%;
  height:100%;
  min-height: 360px;
  border:0;
  display:block;
}

.contact-card{
  padding:16px;
}

.contact-title{margin:0 0 10px;font-size:18px}
.contact-address{margin:0 0 14px;color:var(--muted);line-height:1.6}

.map-fallback{
  padding:18px;
  color:var(--muted);
}

.contact-grid{
  display:grid;
  grid-template-columns: 1.4fr 1fr;
  gap:14px;
  margin-top:18px;
  align-items:stretch;
}

.map-card, .contact-card{
  border:1px solid var(--line);
  border-radius: var(--radius);
  background:#fff;
  box-shadow: 0 10px 24px rgba(2,6,23,.05);
  overflow:hidden;
}

.map-embed{
  width:100%;
  height:420px;
  border:0;
  display:block;
}

.contact-card{ padding:16px; }

@media (max-width: 900px){
  .contact-grid{ grid-template-columns: 1fr; }
  .map-embed{ height:320px; }
}