:root{
  --orange: #FFA300;
  --orange-dark: #F39545;
  --orange-tint: #FFF4E0;
  --ink: #1a1a1a;
  --dark: #303030;
  --bg-soft: #F8F8F8;
  --field-bg: #F2F2F2;
  --radius-sm: 12px;
  --radius-md: 16px;
  --radius-lg: 28px;
  --shadow-card: 0 12px 30px rgba(0,0,0,0.05);
  --shadow-card-hover: 0 20px 40px rgba(0,0,0,0.08);
  --section-pad: 88px 32px;
  --font-head: "Baloo 2", sans-serif;
  --font-hand: "Caveat", cursive;
  --font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:var(--font-body);
  color:var(--ink);
  background:#fff;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
.dot{color:var(--orange);}

/* Header */
.site-header{
  position:sticky;
  top:0;
  z-index:50;
  background:#fff;
  border-bottom:1px solid #eee;
  transition:background-color .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.site-header.is-scrolled{
  background:rgba(255,255,255,0.8);
  border-bottom-color:rgba(238,238,238,0.6);
  box-shadow:0 8px 24px rgba(0,0,0,0.06);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.header-inner{
  max-width:1400px;
  margin:0 auto;
  padding:18px 32px;
  display:flex;
  align-items:center;
  gap:32px;
}
.logo{flex-shrink:0;}
.logo img{height:34px;width:auto;}
.main-nav{
  flex:1;
  display:flex;
  justify-content:center;
  gap:36px;
}
.main-nav a{
  font-weight:600;
  font-size:0.92rem;
  color:#1a1a1a;
  transition:color .2s;
  white-space:nowrap;
}
.main-nav a:hover{color:var(--orange);}
.cta-btn{
  flex-shrink:0;
  background:var(--dark);
  color:#fff;
  font-weight:600;
  font-size:0.9rem;
  padding:10px 20px;
  border-radius:999px;
  transition:background .2s, transform .2s;
}
.cta-btn:hover{background:var(--orange); transform:translateY(-1px);}
.lang-switch{
  display:flex;
  align-items:center;
  gap:6px;
  font-family:var(--font-head);
  font-weight:700;
  font-size:0.8rem;
  margin-right:20px;
  flex-shrink:0;
}
.lang-switch a{color:#8a8a8a; transition:color .2s;}
.lang-switch a:hover{color:var(--orange);}
.lang-switch .lang-current{color:var(--orange);}
.lang-switch .lang-sep{color:#ddd;}

/* Hero */
.hero{position:relative;}
.hero-media{
  position:relative;
  overflow:hidden;
}
.hero-media img{
  display:block;
  width:100%;
  height:320px;
  object-fit:cover;
  filter:grayscale(1) contrast(1.05);
}
.hero-overlay{
  position:relative;
  z-index:2;
  display:flex;
  flex-direction:column;
  gap:20px;
  margin-top:-40px;
  padding:0 32px 20px;
}
.hero-text{
  order:1;
  background:#fff;
  border-radius:var(--radius-md);
  box-shadow:0 20px 44px rgba(0,0,0,0.14);
  padding:28px 26px;
}
.hero-text h1{
  font-family:var(--font-head);
  font-weight:700;
  font-size:clamp(1.5rem, 3.4vw, 2.2rem);
  line-height:1.25;
  margin:0;
  max-width:16ch;
}
.hero-sub{
  max-width:56ch;
  margin:16px 0 0;
  font-size:0.98rem;
  line-height:1.6;
  color:#4a4a4a;
}
.hero-cta{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:22px;
  background:var(--orange);
  color:#fff;
  font-family:var(--font-head);
  font-weight:700;
  font-size:1rem;
  padding:14px 30px;
  border-radius:999px;
  transition:background .2s, transform .2s;
}
.hero-cta:hover{background:var(--orange-dark); transform:translateY(-1px);}

/* Dashboard mockup (reused in hero + proof section) */
.hero-dashboard{
  order:2;
  position:relative;
  width:100%;
  max-width:380px;
  background:#fff;
  border-radius:var(--radius-md);
  box-shadow:0 24px 48px rgba(0,0,0,0.16);
  padding:18px 20px 22px;
}
.db-topbar{
  display:flex;
  align-items:center;
  gap:6px;
  margin-bottom:14px;
}
.db-dot{width:9px;height:9px;border-radius:50%;}
.db-title{
  font-weight:700;
  font-size:0.78rem;
  color:#8a8a8a;
}
.db-kpis{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:10px;
  margin-bottom:16px;
}
.db-kpi{
  background:var(--bg-soft);
  border-radius:10px;
  padding:10px 8px;
  display:flex;
  flex-direction:column;
  gap:4px;
}
.db-kpi-value{
  font-family:var(--font-head);
  font-weight:700;
  font-size:1.1rem;
  color:var(--ink);
}
.db-kpi-label{
  font-size:0.62rem;
  font-weight:600;
  color:#9a9a9a;
  line-height:1.2;
}
.db-charts{
  display:flex;
  align-items:center;
  gap:16px;
}
.db-donut-wrap{
  position:relative;
  width:60px;
  height:60px;
  flex-shrink:0;
}
.db-donut{width:100%;height:100%;}
.db-donut-label{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:0.68rem;
  font-weight:700;
  color:var(--ink);
}
.db-bars{
  flex:1;
  display:flex;
  flex-direction:column;
  gap:7px;
}
.db-bar{
  background:var(--bg-soft);
  border-radius:4px;
  height:7px;
  overflow:hidden;
}
.db-bar span{
  display:block;
  height:100%;
  background:var(--orange);
  border-radius:4px;
}

/* Hero — desktop: text and dashboard float side by side on top of the photo */
@media (min-width: 861px){
  .hero-media img{ height:min(80vh, 640px); }
  .hero-overlay{
    position:absolute;
    inset:0;
    flex-direction:row;
    align-items:flex-start;
    justify-content:center;
    gap:48px;
    margin-top:0;
    padding:56px;
  }
  .hero-text{
    max-width:460px;
    padding:36px 40px;
  }
  .hero-dashboard{
    width:380px;
    margin-top:28px;
    flex-shrink:0;
  }
}

/* Shared section pattern */
.section-inner{
  max-width:1100px;
  margin:0 auto;
  text-align:center;
}
.section-kicker{
  display:inline-block;
  font-family:var(--font-head);
  font-weight:700;
  font-size:0.8rem;
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:var(--orange);
  margin-bottom:14px;
}
.section-title{
  font-family:var(--font-head);
  font-weight:700;
  font-size:clamp(1.5rem, 3vw, 2.1rem);
  line-height:1.3;
  max-width:26ch;
  margin:0 auto 24px;
}
.section-intro{
  max-width:56ch;
  margin:0 auto 32px;
  font-size:0.98rem;
  line-height:1.6;
  color:#4a4a4a;
}
.section-note{
  margin:36px auto 0;
  font-size:0.9rem;
  color:#6a6a6a;
}

/* Legal pages (privacy policy) */
.legal{
  padding:var(--section-pad);
}
.legal-inner{
  max-width:760px;
}
.legal-content{
  text-align:left;
  margin-top:24px;
}
.legal-content h2{
  font-family:var(--font-head);
  font-weight:700;
  font-size:1.15rem;
  margin:36px 0 12px;
}
.legal-content h2:first-child{
  margin-top:0;
}
.legal-content p{
  font-size:0.98rem;
  line-height:1.7;
  color:#4a4a4a;
  margin:0 0 14px;
}
.legal-content ul{
  margin:0 0 14px;
  padding-left:22px;
}
.legal-content li{
  font-size:0.98rem;
  line-height:1.7;
  color:#4a4a4a;
  margin-bottom:6px;
}
.legal-content a{
  color:var(--orange-dark);
}

/* Services detail page */
.services-detail-list{margin-top:16px; text-align:left;}
.service-detail{
  padding:40px 0;
  border-bottom:1px solid #ececec;
}
.service-detail:first-of-type{padding-top:0;}
.service-detail:last-of-type{border-bottom:none; padding-bottom:0;}
.service-detail-head{
  display:flex;
  align-items:baseline;
  gap:16px;
  margin-bottom:6px;
}
.service-detail-head .service-number{margin-bottom:0;}
.service-detail-head h2{
  font-family:var(--font-head);
  font-weight:700;
  font-size:1.4rem;
  margin:0;
}
.service-detail-tagline{
  font-family:var(--font-head);
  font-weight:700;
  color:var(--orange);
  font-size:1rem;
  margin:0 0 14px;
}
.service-detail > p{
  font-size:0.98rem;
  line-height:1.7;
  color:#4a4a4a;
  margin:0 0 18px;
  max-width:64ch;
}
.service-detail .checklist{
  margin:0 0 6px;
  max-width:none;
}
.services-more{
  text-align:center;
  margin-top:32px;
}

/* Cookie consent banner */
.cookie-banner{
  position:fixed;
  left:0; right:0; bottom:0;
  z-index:100;
  background:var(--dark);
  color:#fff;
  padding:20px 32px;
  display:flex;
  align-items:center;
  gap:24px;
  flex-wrap:wrap;
  box-shadow:0 -8px 24px rgba(0,0,0,0.16);
  border-radius:var(--radius-md) var(--radius-md) 0 0;
  animation:cookie-banner-in .45s cubic-bezier(0.16, 1, 0.3, 1);
}
@keyframes cookie-banner-in{
  from{transform:translateY(100%); opacity:0;}
  to{transform:translateY(0); opacity:1;}
}
.cookie-banner p{
  flex:1;
  min-width:240px;
  font-size:0.9rem;
  line-height:1.5;
  margin:0;
  color:#fff;
}
.cookie-banner a{color:var(--orange); text-decoration:underline;}
.cookie-banner-actions{display:flex; gap:12px; flex-shrink:0;}
.cookie-banner-actions button{
  font-family:var(--font-head);
  font-weight:700;
  font-size:0.85rem;
  padding:10px 20px;
  border-radius:999px;
  border:1px solid transparent;
  cursor:pointer;
  transition:transform .15s ease, background .2s, border-color .2s;
}
.cookie-accept{background:var(--orange); color:#1a1a1a;}
.cookie-accept:hover{background:var(--orange-dark); transform:translateY(-1px);}
.cookie-reject{background:transparent; color:#fff; border-color:rgba(255,255,255,0.4);}
.cookie-reject:hover{border-color:#fff;}
.whatsapp-float{transition:bottom .2s ease;}
body.cookie-banner-visible .whatsapp-float{bottom:104px;}
@media (max-width:560px){
  .cookie-banner{padding:16px 20px;}
  .cookie-banner-actions{width:100%;}
  .cookie-banner-actions button{flex:1;}
  body.cookie-banner-visible .whatsapp-float{bottom:150px;}
}

/* Checklist (recognition + excel scan) */
.checklist{
  list-style:none;
  margin:0 auto 32px;
  padding:0;
  max-width:640px;
  display:flex;
  flex-direction:column;
  gap:14px;
  text-align:left;
}
.checklist--wide{max-width:760px;}
.checklist li{
  display:flex;
  align-items:center;
  gap:14px;
  font-size:1rem;
  font-weight:600;
  color:#2b2b2b;
  background:#fff;
  border-radius:var(--radius-sm);
  padding:14px 18px;
  box-shadow:var(--shadow-card);
}
.checklist li svg{flex-shrink:0;}
.callout{
  font-family:var(--font-head);
  font-weight:700;
  font-size:1.3rem;
  color:var(--ink);
  margin:0;
}
.callout::before{content:"\2192\00a0"; color:var(--orange);}

/* Recognition */
.recognition{
  padding:var(--section-pad);
  background:#fff;
}

/* Transform (van/na flow) */
.transform{
  padding:var(--section-pad);
  background:var(--bg-soft);
}
.flow-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:48px;
  max-width:760px;
  margin:0 auto 32px;
  align-items:start;
}
.flow-col{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:10px;
}
.flow-col-label{
  font-family:var(--font-head);
  font-weight:800;
  font-size:0.85rem;
  letter-spacing:0.08em;
  margin-bottom:6px;
}
.flow-col-label--muted{color:#9a9a9a;}
.flow-col-label--accent{color:var(--orange-dark);}
.flow-step{
  width:100%;
  text-align:center;
  border-radius:999px;
  padding:11px 16px;
  font-size:0.85rem;
  font-weight:700;
}
.flow-step--muted{
  background:#fff;
  color:#8a8a8a;
  border:1px solid #e6e6e6;
}
.flow-step--first{
  background:#fff;
  color:var(--ink);
  border:1px solid #e6e6e6;
}
.flow-step--accent{
  background:var(--orange);
  color:#fff;
}
.flow-arrow{flex-shrink:0;}

/* Excel Scan */
.excel-scan{
  padding:var(--section-pad);
  background:#fff;
}

/* Use cases (reuses .service-card styling on a wrapping flex row so a ragged last row stays centered) */
.usecases{
  padding:var(--section-pad);
  background:var(--bg-soft);
}
.usecases .services-grid{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
}
.usecases .service-card{
  flex:1 1 300px;
  max-width:340px;
}

/* Services / pricing cards */
.services{
  padding:var(--section-pad);
  background:#fff;
}
.services-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:28px;
  text-align:left;
}
.services-grid--pricing{grid-template-columns:repeat(4, 1fr);}
.service-card{
  background:#fff;
  border:1px solid #ececec;
  border-radius:var(--radius-md);
  padding:30px 26px;
  box-shadow:var(--shadow-card);
  display:flex;
  flex-direction:column;
  transition:transform .2s, box-shadow .2s;
}
.service-card:hover{transform:translateY(-4px); box-shadow:var(--shadow-card-hover);}
.service-icon{
  width:44px;
  height:44px;
  border-radius:var(--radius-sm);
  background:var(--bg-soft);
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:18px;
}
.service-number{
  font-family:var(--font-head);
  font-weight:800;
  font-size:1.6rem;
  color:var(--orange);
  margin-bottom:12px;
}
.service-card h3{
  font-family:var(--font-head);
  font-weight:700;
  font-size:1.15rem;
  margin:0 0 10px;
}
.service-card p{
  font-size:0.92rem;
  line-height:1.55;
  color:#4a4a4a;
  margin:0 0 16px;
  flex:1;
}
.service-price{
  display:block;
  font-family:var(--font-head);
  font-weight:700;
  font-size:0.95rem;
  color:var(--ink);
  margin-bottom:16px;
}
.service-link{
  font-family:var(--font-head);
  font-weight:700;
  font-size:0.88rem;
  color:var(--ink);
  transition:color .2s;
}
.service-link:hover{color:var(--orange);}

/* Proof */
.proof{
  padding:var(--section-pad);
  background:#fff;
}
.proof-grid{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:28px;
  flex-wrap:wrap;
  margin-bottom:24px;
}
.file-stack{
  display:flex;
  flex-direction:column;
  gap:10px;
  width:min(280px, 100%);
}
.file-chip{
  display:flex;
  align-items:center;
  gap:10px;
  background:#fff;
  border:1px solid #e6e6e6;
  border-radius:var(--radius-sm);
  padding:12px 16px;
  font-size:0.85rem;
  font-weight:700;
  color:#5a5a5a;
  box-shadow:var(--shadow-card);
}
.file-chip--1{transform:rotate(-2deg);}
.file-chip--2{transform:rotate(1.5deg); margin-left:14px;}
.file-chip--3{transform:rotate(-1deg); margin-left:6px;}
.file-chip--4{transform:rotate(2deg);}
.proof-arrow-icon{flex-shrink:0;}
.proof-dashboard{
  width:min(340px, 100%);
  background:#fff;
  border-radius:var(--radius-md);
  box-shadow:var(--shadow-card-hover);
  border:1px solid #ececec;
  padding:18px 20px 22px;
}
.db-kpis--proof{grid-template-columns:1fr 1fr;}
.proof-caption{
  font-family:var(--font-hand);
  font-weight:700;
  font-size:1.7rem;
  text-align:center;
  margin:0;
}

/* Case study */
.case-study{
  padding:var(--section-pad);
  background:var(--bg-soft);
}
.case-kicker-row{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin-bottom:14px;
}
.case-kicker-row .section-kicker{margin-bottom:0;}
.case-label{
  display:inline-block;
  margin:0;
  padding:3px 12px;
  border-radius:999px;
  background:var(--orange-tint);
  color:var(--orange-dark);
  font-family:var(--font-head);
  font-weight:700;
  font-size:0.75rem;
  letter-spacing:0.03em;
  vertical-align:middle;
}
.case-grid{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:24px;
  text-align:left;
  margin:0 auto 40px;
}
.case-item{
  background:#fff;
  border-radius:var(--radius-md);
  box-shadow:var(--shadow-card);
  padding:24px 20px;
}
.case-item h3{
  font-family:var(--font-head);
  font-weight:700;
  font-size:1rem;
  margin:0 0 10px;
  color:var(--orange-dark);
}
.case-item p{
  font-size:0.9rem;
  line-height:1.5;
  color:#4a4a4a;
  margin:0;
}

/* Quadrant-style cards (reused for "Why us") */
.quadrant-grid{
  max-width:1000px;
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  gap:32px;
  text-align:left;
}
.quad-card{
  background:#fff;
  border-left:6px solid var(--orange);
  border-radius:var(--radius-md);
  padding:28px 32px;
  box-shadow:var(--shadow-card);
  transition:transform .2s, box-shadow .2s;
}
.quad-card:hover{transform:translateY(-4px); box-shadow:var(--shadow-card-hover);}
.quad-card h3{
  font-family:var(--font-head);
  font-weight:700;
  font-size:1.15rem;
  margin:0 0 10px;
}
.quad-card p{
  font-size:0.92rem;
  line-height:1.5;
  margin:0;
  color:#4a4a4a;
}

.whyus{
  padding:var(--section-pad);
  background:#fff;
}

/* Contact */
.contact{
  position:relative;
  padding:88px 32px 100px;
  background:var(--bg-soft);
}
.contact-inner{
  max-width:1100px;
  margin:0 auto;
  display:grid;
  grid-template-columns:0.8fr 1.2fr;
  gap:56px;
  align-items:center;
}
.contact-signature{
  font-family:var(--font-hand);
  font-weight:700;
  font-size:1.8rem;
  color:var(--ink);
  text-align:center;
  margin:56px 0 0;
}
.contact-info .section-title{margin:0 0 16px;}
.contact-info > p{
  font-size:0.98rem;
  line-height:1.6;
  color:#4a4a4a;
  margin:0 0 28px;
}
.contact-list{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:16px;
}
.contact-list li{
  display:flex;
  align-items:center;
  gap:12px;
  font-weight:600;
  font-size:0.95rem;
}
.contact-list a:hover{color:var(--orange);}
.founder-note{
  display:flex;
  align-items:flex-start;
  gap:16px;
  margin-top:32px;
  padding-top:28px;
  border-top:1px solid #ececec;
}
.founder-avatar{
  flex-shrink:0;
  width:56px;
  height:56px;
  border-radius:50%;
  object-fit:cover;
  box-shadow:0 4px 12px rgba(0,0,0,0.12);
}
.founder-text p{
  font-size:0.95rem;
  font-style:italic;
  color:#3a3a3a;
  line-height:1.6;
  margin:0 0 6px;
}
.founder-meta{
  display:flex;
  align-items:center;
  gap:8px;
}
.founder-name{
  font-family:var(--font-head);
  font-weight:700;
  font-size:0.85rem;
  color:var(--ink);
}
.founder-linkedin{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:22px;
  height:22px;
  border-radius:50%;
  background:#f2f2f2;
  color:#6a6a6a;
  transition:background .2s, color .2s;
}
.founder-linkedin:hover{background:var(--orange); color:#fff;}
.contact-card{
  position:relative;
  z-index:1;
  max-width:640px;
  width:100%;
  background:#fff;
  border-radius:var(--radius-lg);
  box-shadow:0 30px 60px rgba(0,0,0,0.08);
  padding:56px 64px;
}
.contact-card h2{
  font-family:var(--font-head);
  font-weight:700;
  font-size:2rem;
  text-align:center;
  margin:0 0 40px;
}
.field-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
}
.field{margin-bottom:22px;}
.field label{
  display:block;
  font-weight:700;
  font-size:0.95rem;
  margin-bottom:8px;
}
.req{color:var(--orange); margin-left:2px;}
.field input,
.field textarea{
  width:100%;
  border:none;
  background:var(--field-bg);
  border-radius:8px;
  padding:14px 16px;
  font-family:var(--font-body);
  font-size:0.95rem;
  color:var(--ink);
  resize:vertical;
}
.field input:focus,
.field textarea:focus{
  outline:2px solid var(--orange);
  outline-offset:1px;
}
.submit-btn{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin:24px auto 0;
  background:var(--orange);
  color:#fff;
  border:none;
  font-family:var(--font-head);
  font-weight:700;
  font-size:1.05rem;
  padding:14px 40px;
  border-radius:999px;
  cursor:pointer;
  transition:background .2s, transform .2s;
}
.submit-btn:hover{background:var(--orange-dark); transform:translateY(-1px);}
.submit-btn:disabled{background:var(--dark); cursor:not-allowed; transform:none;}
.form-status{
  margin:16px 0 0;
  text-align:center;
  font-size:0.9rem;
  font-weight:600;
  min-height:1.2em;
}
.form-status--success{color:#1a7f37;}
.form-status--error{color:#c92a2a;}

/* Footer */
.site-footer{
  background:var(--dark);
  color:#cfcfcf;
  padding:64px 32px 0;
}
.footer-inner{
  max-width:1100px;
  margin:0 auto;
  display:grid;
  grid-template-columns:1.4fr 1fr 1fr 1fr;
  gap:32px;
  padding-bottom:48px;
}
.footer-col h4{
  color:#fff;
  font-family:var(--font-head);
  font-weight:700;
  font-size:0.85rem;
  letter-spacing:0.06em;
  text-transform:uppercase;
  margin:0 0 18px;
}
.footer-col{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.footer-col a{
  font-size:0.9rem;
  color:#b8b8b8;
  transition:color .2s;
}
.footer-col a:hover{color:var(--orange);}
.footer-brand p{
  font-size:0.9rem;
  color:#9a9a9a;
  margin:0;
  max-width:26ch;
}
.footer-logo{
  font-family:var(--font-head);
  font-weight:700;
  font-size:1.3rem;
  color:#fff;
  margin:0 0 10px;
}
.footer-bottom{
  border-top:1px solid #3a3a3a;
  padding:22px 0;
  max-width:1100px;
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:10px 24px;
}
.footer-legal{
  display:flex;
  gap:20px;
}
.footer-legal a{
  font-size:0.85rem;
  color:#a8a8a8;
  transition:color .2s;
}
.footer-legal a:hover{color:var(--orange);}
.footer-copy{
  margin:0;
  font-size:0.85rem;
  color:#a8a8a8;
}

/* Responsive */
@media (max-width: 980px){
  .services-grid--pricing{grid-template-columns:repeat(2, 1fr);}
}

@media (max-width: 1150px){
  .main-nav{display:none;}
  .header-inner{justify-content:space-between;}
}

@media (max-width: 860px){
  .quadrant-grid{grid-template-columns:1fr;}
  .services-grid{grid-template-columns:1fr;}
  .case-grid{grid-template-columns:1fr 1fr;}
  .field-row{grid-template-columns:1fr;}
  .contact-card{padding:40px 28px;}
  .contact-inner{grid-template-columns:1fr;}
  .contact-info{text-align:center;}
  .contact-info .section-title{text-align:center !important;}
  .contact-list{align-items:center;}
  .founder-note{flex-direction:column; align-items:center; text-align:center;}
  .founder-meta{justify-content:center;}
  .footer-inner{grid-template-columns:1fr 1fr;}
  .footer-bottom{justify-content:center; text-align:center;}
  .db-kpi-label{font-size:0.58rem;}
  .flow-grid{grid-template-columns:1fr; gap:32px;}
  .proof-grid{flex-direction:column;}
  .proof-arrow-icon{transform:rotate(90deg);}
}

@media (max-width: 560px){
  .cta-btn{padding:9px 14px; font-size:0.8rem;}
  .case-grid{grid-template-columns:1fr;}
  .db-kpis{grid-template-columns:1fr 1fr 1fr;}
  .db-kpis--proof{grid-template-columns:1fr 1fr;}
  .footer-inner{grid-template-columns:1fr; text-align:center;}
  .footer-col{align-items:center;}
  .contact-card{padding:36px 22px;}
}

/* Floating WhatsApp button */
.whatsapp-float{
  position:fixed;
  right:24px;
  bottom:24px;
  z-index:60;
  width:58px;
  height:58px;
  border-radius:50%;
  background:#25D366;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 8px 24px rgba(0,0,0,0.25);
  transition:transform .2s, background .2s;
}
.whatsapp-float:hover{background:#1DA851; transform:scale(1.08);}

@media (max-width: 560px){
  .whatsapp-float{width:52px; height:52px; right:16px; bottom:16px;}
}
