/* MGI v7 — Luxury Miami Edition (with Lounge Music) */
:root{
  --navy:#0D1B2A;
  --gold:#F4A261;
  --coral:#E76F51;
  --ink:#0f172a;
  --muted:#667085;
  --card:#ffffff;
  --bg:#ffffff;
  --alt:#F8FAFD;
  --ring: rgba(13,27,42,.12);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;background:var(--bg);color:var(--ink);line-height:1.65;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
.container{max-width:1180px;margin:auto;padding:0 20px}

/* Header */
.site-header{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.95);backdrop-filter:saturate(120%) blur(8px);border-bottom:1px solid #eef0f4;transition:box-shadow .3s ease}
.site-header.scrolled{box-shadow:0 12px 24px var(--ring)}
.site-header .container{display:flex;align-items:center;justify-content:space-between;min-height:72px}
.brand{display:flex;gap:10px;align-items:center;text-decoration:none;color:var(--navy);font-weight:800}
.brand-logo{width:42px;height:42px}
.nav a{margin-left:18px;text-decoration:none;color:var(--ink)}
.icon-link{margin-left:10px;color:#111}
.icon-link.large{font-weight:700}
.nav .btn-outline{padding:8px 14px;border:1px solid var(--navy);border-radius:10px}
.menu{display:none;border:0;background:none;font-size:26px}

/* Hero with background image & overlay */
.hero{color:#fff;padding:100px 0 90px;background-size:cover;background-position:center;position:relative}
.hero .overlay{position:absolute;inset:0;background:linear-gradient(180deg, rgba(13,27,42,.6), rgba(13,27,42,.25));}
.hero > .container{position:relative;z-index:1}
.hero-grid{display:grid;grid-template-columns:1fr;gap:24px;align-items:center;text-align:center}
.hero-text h1{font-size:40px;line-height:1.15;margin:0 0 12px}
.hero-text p{color:#e7eeff;max-width:820px;margin:0 auto}
.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin:16px 0 8px;justify-content:center}
.btn{display:inline-block;padding:12px 18px;border-radius:14px;text-decoration:none;font-weight:700;transition:transform .15s ease, box-shadow .15s ease}
.btn:hover{transform:translateY(-1px)}
.btn-gold{background:var(--gold);color:#2c2100;box-shadow:0 10px 26px rgba(244,162,97,.35)}
.btn-ghost{border:2px solid #fff;color:#fff}
.btn-link{color:#ffe8c9;text-decoration:underline}

/* Sections with background images */
.section{padding:80px 0;position:relative}
.section.alt{background:var(--alt)}
.with-image::before{content:'';position:absolute;inset:0;background-image:var(--bg);background-size:cover;background-position:center;filter:brightness(.9);opacity:.18;pointer-events:none}
.two-col{display:grid;grid-template-columns:1fr .9fr;gap:26px;align-items:start}
.card{background:#fff;border-radius:18px;padding:22px;border:1px solid #eef0f4;box-shadow:0 10px 26px var(--ring);margin-top:18px}
h2{font-size:30px;margin:0 0 10px;color:#0D1B2A}
h3{margin:0 0 10px;color:#0D1B2A}
.bullets{padding-left:18px;margin:10px 0}
.bullets li{margin:6px 0}
.note{margin:10px 0;color:#374151}

/* Contact — dark premium */
.contact.dark{background:linear-gradient(135deg,#0D1B2A,#142338 60%,#1E3A5F);color:#e5eaf3}
.contact .lead{color:#c7d2fe}
.contact-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0 24px}
.contact-card{display:flex;align-items:center;gap:12px;padding:14px;border-radius:14px;background:#0f2035;color:#fff;text-decoration:none;border:1px solid rgba(255,255,255,.08)}
.contact-card .icon{font-size:18px}
.map-wrap{border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.12)}
.map-wrap iframe{width:100%;height:360px;border:0;display:block}

/* Floating WhatsApp */
.whatsapp-fab{position:fixed;right:18px;bottom:18px;background:#25D366;color:#fff;padding:12px 16px;border-radius:999px;font-weight:800;text-decoration:none;box-shadow:0 12px 32px rgba(37,211,102,.4);z-index:70}

/* Footer */
.footer-flex{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.micro{font-size:12px;color:#8d96ad}
.center{text-align:center}
.site-footer{border-top:1px solid #eee;background:#fafbfe;padding:18px 0;text-align:center;color:#6b7280}

/* Reveal on scroll */
.reveal{opacity:0;transform:translateY(12px);transition:opacity .6s ease, transform .6s ease}
.reveal.visible{opacity:1;transform:translateY(0)}

/* Audio button */
.audio-btn{position:fixed;left:18px;bottom:18px;z-index:75;border:0;background:#0D1B2A;color:#F4A261;
  width:44px;height:44px;border-radius:999px;font-size:18px;cursor:pointer;box-shadow:0 12px 24px var(--ring)}
.audio-btn.playing{background:#F4A261;color:#0D1B2A}

/* Responsive */
@media (max-width: 980px){
  .two-col{grid-template-columns:1fr}
  .nav{display:none;position:absolute;right:16px;top:72px;background:#fff;border:1px solid #eee;border-radius:12px;padding:12px}
  .nav a{display:block;margin:6px 0}
  .menu{display:block}
  .contact-cards{grid-template-columns:1fr}
}
