
:root{
  --primary:#0a3d62; --accent:#2563eb; --accent-2:#0ea5e9; --bg:linear-gradient(180deg,#edf3ff 0%, #e4edff 60%, #eff4ff 100%);
  --text:#0f172a; --muted:#f8fafc; --border:#e5e7eb; --ring:#93c5fd;
}
*{box-sizing:border-box} html,body{height:100%}
body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Inter,Roboto;line-height:1.6;color:var(--text);background:var(--bg)}
.sr-only{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}
a{color:var(--accent);text-decoration:none} a:hover{text-decoration:underline}
.container{max-width:1200px;margin:0 auto;padding:0 1rem}
.header{position:sticky;top:0;background:rgba(226,236,255,.88);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);z-index:1000}
.header-inner{display:flex;align-items:center;gap:1rem;padding:.75rem 0}
.brand{display:flex;align-items:center;gap:.75rem;font-weight:800;letter-spacing:.2px;color:#0b1020}
.brand-badge{background:linear-gradient(135deg,#2563eb,#0ea5e9);width:34px;height:34px;border-radius:10px;box-shadow:0 6px 16px rgba(37,99,235,.35)}
.nav{margin-left:auto}
.nav ul{display:flex;gap:.25rem;list-style:none;margin:0;padding:0;flex-wrap:wrap}
.nav a{padding:.5rem .75rem;border-radius:.6rem;color:#111827}
.nav a.active,.nav a:hover{background:var(--muted)}
.mobile-book-btn{
  display:none;
  background:var(--accent);
  color:#fff;
  border-radius:.55rem;
  font-weight:600;
  text-decoration:none;
  white-space:nowrap;
}
.hero{position:relative;background:linear-gradient(180deg,#f1f6ff 0%, #e5eeff 60%, #eef3ff 100%);color:#0b1020;border-bottom:1px solid var(--border)}
.hero .container{padding:3rem 1rem}
.hero h1{font-size:clamp(2rem,5vw,3.2rem);margin:.25rem 0}
.hero p{max-width:70ch;opacity:.9}
.hero-art{border-radius:18px;border:1px solid var(--border);overflow:hidden;box-shadow:0 8px 30px rgba(15,23,42,.07)}
.badges{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin:2rem 0}
.badge{background:#fff;border:1px solid var(--border);border-radius:14px;padding:1rem;box-shadow:0 1px 0 rgba(0,0,0,.02)}
.section{padding:3rem 0}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}
.card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:1rem;box-shadow:0 1px 0 rgba(0,0,0,.02)}
.cta{background:linear-gradient(135deg,#eaf2ff,#f1fafe);border:1px solid var(--border);border-radius:18px;padding:1.5rem;display:flex;gap:1rem;align-items:center;justify-content:space-between}
.button{display:inline-block;background:linear-gradient(135deg,#2563eb,#0ea5e9);color:#fff;padding:.85rem 1.1rem;border-radius:.9rem;font-weight:800;letter-spacing:.2px;border:0;cursor:pointer;box-shadow:0 10px 30px rgba(14,165,233,.25);transform:translateZ(0);transition:transform .15s ease}
.button:hover{transform:translateY(-2px)}
.button.is-outline{background:#fff;color:#2563eb;border:2px solid #2563eb;box-shadow:none}
.footer{background:#0b1020;color:#e7e9ee;margin-top:3rem}
.footer a{color:#e7e9ee;opacity:.9}
.footer .container{padding:2rem 1rem}
.footer .google-review-badge{
  display:inline-flex;
  align-items:center;
  gap:.7rem;
  margin-top:1.3rem;
  padding:.7rem 1rem;
  border-radius:.9rem;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.08);
  color:#fff;
  text-decoration:none;
  font-weight:600;
  max-width:360px;
  box-shadow:0 12px 26px rgba(8,15,52,.28);
  transition:box-shadow .18s ease, border-color .18s ease, background .18s ease;
  direction:ltr;
  text-align:left;
}
.footer .google-review-badge:hover{
  border-color:rgba(255,255,255,.32);
  background:rgba(255,255,255,.14);
  box-shadow:0 18px 36px rgba(8,15,52,.32);
}
.footer .google-review-logo{
  width:26px;
  height:26px;
  flex-shrink:0;
}
.footer .google-review-stars{
  display:flex;
  align-items:center;
  gap:.25rem;
}
.footer .google-review-stars svg{
  width:18px;
  height:18px;
  fill:#facc15;
  filter:drop-shadow(0 3px 6px rgba(0,0,0,.3));
}
.footer .google-review-name{
  font-size:.95rem;
  line-height:1.2;
}
@media (max-width:640px){
  .footer .google-review-badge{width:100%;justify-content:flex-start;}
}
[dir="rtl"] .footer .google-review-name{
  direction:rtl;
  text-align:right;
}

.footer .contact-link{color:#e5eaf7;text-decoration:none;display:inline-flex;align-items:center;gap:.3rem}
.footer .contact-link span[aria-hidden="true"]{font-size:1rem}
.footer .payment-icons{margin-top:1rem;display:flex;gap:.5rem;flex-wrap:wrap}
.footer .payment-icons img{height:30px;border-radius:.25rem}

.footer-logo{height:clamp(56px,6.5vw,72px);width:auto;display:block;margin-bottom:.5rem;clip-path:inset(0 20% 0 20%);transform:translateX(-20%)}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.input, select, textarea{width:100%;padding:.9rem;border:1px solid var(--border);border-radius:.7rem;background:#fff;color:#0f172a}
.input:focus,select:focus,textarea:focus{outline:none;box-shadow:0 0 0 3px rgba(147,197,253,.5)}
.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
.small{font-size:.9rem;opacity:.9}
@media (max-width: 800px){.grid-2,.grid-3,.form-row{grid-template-columns:1fr}}
@media (max-width:900px){
    html[dir="rtl"] .nav-toggle{margin-right:auto;margin-left:12px}
    .mobile-book-btn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      height:44px;
      padding:0 .75rem;
      font-size:.9rem;
      max-width:45%;
      overflow:hidden;
      text-overflow:ellipsis;
    }
  }
/* micro effects */
.fade-in{opacity:0; transform:translateY(8px); animation:fade .4s ease forwards}
@keyframes fade{to{opacity:1; transform:translateY(0)}}

/* WhatsApp Floating Widget – smaller button override */
#waWidget .wa__btn{
  width:56px!important;
  height:56px!important;
  padding:0!important;
  border-radius:50%!important;
  justify-content:center!important;
  gap:0!important;
}
#waWidget .wa__btn svg{
  width:28px!important;
  height:28px!important;
}
#waWidget .wa__label{display:none!important;}
@media (max-width:560px){
  #waWidget .wa__btn{width:48px!important;height:48px!important;}
  #waWidget .wa__panel{bottom:60px!important;}
}
