@charset "utf-8";
/* ============================================================
   Quick Enquiry boxes — Startup Advisory
   Footer (compact) + Service-page prominent banner
   Brand: blue #1f3b70 / green #41d25a; Barlow headings, Lato body
   ============================================================ */

.sa-enq *{box-sizing:border-box}
.sa-enq{font-family:"Lato",sans-serif}
.sa-enq h3,.sa-enq h2{font-family:"Barlow",sans-serif}

/* ---- Shared field styling ---- */
.sa-enq .sa-enq-field{
  width:100%;height:46px;border:1px solid #d9e0ec;background:#fff;border-radius:10px;
  padding:0 14px;font-size:14px;color:#243; outline:none;transition:border-color .2s, box-shadow .2s;
}
.sa-enq textarea.sa-enq-field{height:auto;padding:12px 14px;resize:vertical;min-height:70px;line-height:1.5}
.sa-enq select.sa-enq-field{appearance:none;-webkit-appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%231f3b70' d='M6 8 0 0h12z'/%3E%3C/svg%3E") no-repeat right 14px center;padding-right:34px;cursor:pointer}
.sa-enq .sa-enq-field:focus{border-color:#41d25a;box-shadow:0 0 0 3px rgba(65,210,90,.15)}
.sa-enq .sa-enq-field.sa-invalid{border-color:#e0707c;box-shadow:0 0 0 3px rgba(224,112,124,.15)}
.sa-enq input::placeholder,.sa-enq textarea::placeholder{color:#9aa6ba}

.sa-enq .sa-enq-btn{
  border:0;border-radius:50px;background:#41d25a;color:#06351a;font-weight:800;
  font-family:"Barlow",sans-serif;text-transform:uppercase;letter-spacing:.4px;
  padding:0 26px;height:48px;cursor:pointer;transition:transform .15s, background .2s;white-space:nowrap;font-size:15px;
}
.sa-enq .sa-enq-btn:hover{background:#36c050;transform:translateY(-2px)}
.sa-enq .sa-enq-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}

/* honeypot — hidden from humans */
.sa-enq .sa-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}

/* feedback message */
.sa-enq .sa-enq-msg{margin:10px 0 0;font-size:14px;font-weight:700;display:none}
.sa-enq .sa-enq-msg.show{display:block}
.sa-enq .sa-enq-msg.ok{color:#1f9d57}
.sa-enq .sa-enq-msg.err{color:#e0707c}

/* ============================================================
   1) PROMINENT banner (service pages)
   ============================================================ */
.sa-enq-banner{
  position:relative;overflow:hidden;border-radius:20px;margin:10px 0 40px;
  background:linear-gradient(135deg,#1f3b70 0%,#2f5aa8 100%);
  padding:34px 36px;color:#fff;box-shadow:0 24px 44px -28px rgba(31,59,112,.6);
}
.sa-enq-banner:before{content:"";position:absolute;right:-60px;top:-60px;width:240px;height:240px;border-radius:50%;background:rgba(65,210,90,.18)}
.sa-enq-banner:after{content:"";position:absolute;left:-50px;bottom:-80px;width:200px;height:200px;border-radius:50%;background:rgba(255,255,255,.06)}
.sa-enq-banner .sa-enq-inner{position:relative;z-index:1;display:flex;gap:30px;align-items:center;flex-wrap:wrap}
.sa-enq-banner .sa-enq-copy{flex:1 1 240px;min-width:240px}
.sa-enq-banner .sa-enq-copy h3{font-size:1.7em;font-weight:800;color:#fff;margin:0 0 8px;line-height:1.25}
.sa-enq-banner .sa-enq-copy p{margin:0 0 6px;color:#dce6f7;font-size:1.02em;line-height:1.55}
.sa-enq-banner .sa-enq-copy .sa-enq-call{display:inline-block;margin-top:8px;color:#fff;font-weight:700;font-size:1.15em;text-decoration:none}
.sa-enq-banner .sa-enq-copy .sa-enq-call span{color:#9be8ab}

.sa-enq-banner form{flex:1 1 340px;min-width:300px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:16px;padding:20px}
.sa-enq-banner .sa-enq-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.sa-enq-banner .sa-enq-grid .sa-col-full{grid-column:1 / -1}
.sa-enq-banner .sa-enq-btn{width:100%;margin-top:4px}
.sa-enq-banner .sa-enq-msg{color:#fff}
.sa-enq-banner .sa-enq-msg.ok{color:#b8f5c8}
.sa-enq-banner .sa-enq-msg.err{color:#ffd2d7}

@media (max-width:575px){
  .sa-enq-banner{padding:26px 20px}
  .sa-enq-banner .sa-enq-grid{grid-template-columns:1fr}
  .sa-enq-banner .sa-enq-copy h3{font-size:1.4em}
}

/* ============================================================
   2) COMPACT strip (footer, site-wide)
   ============================================================ */
.sa-enq-strip{background:#16294e;border-bottom:1px solid rgba(255,255,255,.08)}
.sa-enq-strip .sa-enq-wrap{max-width:1200px;margin:0 auto;padding:22px 16px;display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.sa-enq-strip .sa-enq-lead{flex:1 1 220px;min-width:200px;color:#fff}
.sa-enq-strip .sa-enq-lead h3{font-size:1.32em;font-weight:800;color:#fff;margin:0 0 3px}
.sa-enq-strip .sa-enq-lead p{margin:0;color:#aebbd4;font-size:.95em}
.sa-enq-strip form{flex:2 1 520px;display:flex;gap:10px;flex-wrap:wrap;align-items:flex-start}
.sa-enq-strip .sa-enq-field{flex:1 1 150px;min-width:130px}
.sa-enq-strip select.sa-enq-field{flex:1 1 160px}
.sa-enq-strip .sa-enq-btn{flex:0 0 auto}
.sa-enq-strip .sa-enq-msg{flex:1 1 100%;margin-top:2px;color:#cfe}
.sa-enq-strip .sa-enq-msg.ok{color:#7fe89c}
.sa-enq-strip .sa-enq-msg.err{color:#ffb3ba}

@media (max-width:991px){
  .sa-enq-strip form{flex-basis:100%}
}
@media (max-width:575px){
  .sa-enq-strip .sa-enq-field,.sa-enq-strip select.sa-enq-field{flex-basis:100%}
  .sa-enq-strip .sa-enq-btn{width:100%}
}

/* ============================================================
   3) FULL-WIDTH RIBBON (homepage About section — desktop only)
   Lead text + all fields + button across the full page width
   ============================================================ */
.sa-enq-ribbon .sa-enq-form{
  background:#16294e;border-radius:16px;padding:18px 20px;
  box-shadow:0 18px 36px -24px rgba(31,59,112,.6);
}
.sa-enq-ribbon .sa-enq-ribbon-lead{margin-bottom:12px}
.sa-enq-ribbon .sa-enq-ribbon-lead b{display:block;color:#fff;font-family:"Barlow",sans-serif;font-size:1.15em;font-weight:800}
.sa-enq-ribbon .sa-enq-ribbon-lead span{color:#aebbd4;font-size:.95em}
.sa-enq-ribbon .sa-enq-ribbon-fields{display:flex;flex-wrap:nowrap;gap:12px;align-items:center}
.sa-enq-ribbon .sa-enq-field{height:46px;flex:1 1 0;min-width:0}
.sa-enq-ribbon select.sa-enq-field{flex:1 1 0}
.sa-enq-ribbon .sa-enq-btn{height:46px;flex:0 0 auto;padding:0 24px}
.sa-enq-ribbon .sa-enq-msg{margin-top:10px}
.sa-enq-ribbon .sa-enq-msg.ok{color:#7fe89c}
.sa-enq-ribbon .sa-enq-msg.err{color:#ffb3ba}

/* On smaller desktops/tablets the single row gets tight — allow a graceful wrap */
@media (max-width:1199px){
  .sa-enq-ribbon .sa-enq-ribbon-fields{flex-wrap:wrap}
  .sa-enq-ribbon .sa-enq-field{flex:1 1 45%}
  .sa-enq-ribbon select.sa-enq-field{flex:1 1 45%}
  .sa-enq-ribbon .sa-enq-btn{flex:1 1 100%;width:100%}
}

/* ============================================================
   4) FLOATING WHATSAPP BUTTON (site-wide)
   Bottom-left so it never overlaps the Tawk.to chat (bottom-right)
   ============================================================ */
.sa-wa-float{
  position:fixed;left:20px;bottom:20px;z-index:9998;
  width:56px;height:56px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:#25d366;box-shadow:0 6px 18px rgba(0,0,0,.25);
  text-decoration:none;transition:transform .2s, box-shadow .2s;
  animation:sa-wa-pulse 2.5s infinite;
}
.sa-wa-float:hover{transform:scale(1.08);box-shadow:0 8px 22px rgba(0,0,0,.32)}
.sa-wa-float svg{display:block}
@keyframes sa-wa-pulse{
  0%{box-shadow:0 6px 18px rgba(0,0,0,.25),0 0 0 0 rgba(37,211,102,.5)}
  70%{box-shadow:0 6px 18px rgba(0,0,0,.25),0 0 0 14px rgba(37,211,102,0)}
  100%{box-shadow:0 6px 18px rgba(0,0,0,.25),0 0 0 0 rgba(37,211,102,0)}
}
@media (max-width:575px){
  .sa-wa-float{width:50px;height:50px;left:14px;bottom:14px}
  .sa-wa-float svg{width:30px;height:30px}
}
@media (prefers-reduced-motion:reduce){
  .sa-wa-float{animation:none}
}
