/* ==========================================================================
   Greenhills — Conversion helpers
   #4 Announcement ribbon (fixed top, urgency)  +  #3 Contact FAB (Call/WhatsApp)
   ========================================================================== */
:root{ --announce-h:44px }

/* ---------- #4 Announcement ribbon ---------- */
.gh-announce{
  position:fixed;top:0;left:0;right:0;z-index:60;height:var(--announce-h);
  display:flex;align-items:center;justify-content:center;gap:10px;
  padding:0 44px 0 14px;color:#fff;font-family:var(--font-ui,Manrope,system-ui,sans-serif);
  font-size:.82rem;font-weight:600;line-height:1.15;text-align:center;
  background:linear-gradient(90deg,var(--navy-950,#0a1f3a),var(--navy-850,#123056));
  box-shadow:0 2px 12px rgba(6,22,37,.22)}
.gh-announce::before{content:"";position:absolute;inset:0;opacity:.6;pointer-events:none;
  background:radial-gradient(60% 120% at 88% 50%,rgba(198,137,42,.3),transparent 60%)}
.gh-announce a.gh-announce-cta{position:relative;z-index:1;display:inline-flex;align-items:center;gap:5px;
  color:var(--accent-soft,#e7c877);font-weight:700;text-decoration:none;white-space:nowrap}
.gh-announce a.gh-announce-cta:hover{text-decoration:underline}
.gh-announce .gh-dot{position:relative;z-index:1;flex:none;width:8px;height:8px;border-radius:50%;
  background:var(--accent-soft,#e7c877);box-shadow:0 0 0 0 rgba(231,200,119,.7);animation:ghPulse 2.2s infinite}
.gh-announce .gh-txt{position:relative;z-index:1}
.gh-announce .gh-x{position:absolute;right:8px;top:50%;transform:translateY(-50%);z-index:2;
  width:28px;height:28px;border:0;border-radius:50%;background:rgba(255,255,255,.14);color:#fff;
  font-size:1rem;line-height:1;cursor:pointer;display:grid;place-items:center}
.gh-announce .gh-x:hover{background:rgba(255,255,255,.28)}
@keyframes ghPulse{0%{box-shadow:0 0 0 0 rgba(231,200,119,.6)}70%{box-shadow:0 0 0 7px rgba(231,200,119,0)}100%{box-shadow:0 0 0 0 rgba(231,200,119,0)}}
@media (max-width:520px){.gh-announce{font-size:.76rem;gap:7px}.gh-announce .gh-sub{display:none}}
@media (prefers-reduced-motion:reduce){.gh-announce .gh-dot{animation:none}}

/* Push the fixed header (and mobile nav dropdown) below the ribbon when present */
body.gh-has-announce .site-header{top:var(--announce-h)}
@media (max-width:1100px){ body.gh-has-announce .main-nav{top:calc(74px + var(--announce-h))} }

/* ---------- #3 Contact FAB (Call + WhatsApp) ---------- */
.gh-fab{position:fixed;right:16px;bottom:16px;z-index:75;display:flex;flex-direction:column;gap:10px;
  bottom:calc(16px + env(safe-area-inset-bottom))}
.gh-fab a{position:relative;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;
  color:#fff;box-shadow:0 8px 22px rgba(6,22,37,.32);transition:transform .16s ease;
  -webkit-tap-highlight-color:transparent}
.gh-fab a:hover{transform:translateY(-2px)}
.gh-fab a:active{transform:scale(.94)}
.gh-fab .gh-wa{background:linear-gradient(180deg,#2bd66a,#1faa52)}
.gh-fab svg{width:26px;height:26px}
.gh-fab .gh-fab-label{position:absolute;right:64px;top:50%;transform:translateY(-50%);
  background:var(--navy-950,#0a1f3a);color:#fff;font-family:var(--font-ui,Manrope,sans-serif);
  font-size:.76rem;font-weight:700;padding:6px 10px;border-radius:8px;white-space:nowrap;
  opacity:0;pointer-events:none;transition:opacity .15s;box-shadow:0 6px 16px rgba(6,22,37,.24)}
.gh-fab a:hover .gh-fab-label{opacity:1}
@media (max-width:600px){.gh-fab a{width:52px;height:52px}.gh-fab .gh-fab-label{display:none}}
