/* ============ Reset & base ============ */
  *,*::before,*::after{box-sizing:border-box}
  *{margin:0}
  html{-webkit-text-size-adjust:100%}
  @media (prefers-reduced-motion: no-preference){html{scroll-behavior:smooth}}
  body{
    font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
    color:var(--ink);background:var(--bg);
    line-height:1.55;-webkit-font-smoothing:antialiased;
  }
  img,svg{display:block;max-width:100%;height:auto}
  button{font:inherit;cursor:pointer;background:none;border:0}
  a{color:inherit;text-decoration:none}
  input,select,textarea,button{font:inherit;color:inherit}

  :root{
    --blue:#2A6FDB;
    --blue-dark:#1F4FB0;
    --blue-light:#EAF1FB;
    --ink:#0F172A;
    --ink-soft:#1E293B;
    --muted:#475569;          /* WCAG AA on white */
    --border:#E2E8F0;
    --bg:#FFFFFF;
    --bg-soft:#F8FAFC;
    --bg-dark:#0B1A33;
    --green:#10B981;
    --amber:#F59E0B;
    --shadow-sm:0 2px 6px rgba(15,23,42,.06);
    --shadow:0 8px 24px rgba(15,23,42,.08);
    --shadow-lg:0 20px 48px rgba(15,23,42,.12);
    --radius:14px;
    --radius-lg:20px;
  }

  /* ============ Layout ============ */
  .container{width:100%;max-width:1200px;margin:0 auto;padding:0 24px}
  section{padding:80px 0}
  @media (max-width:768px){section{padding:56px 0}}

  /* ============ Type ============ */
  h1,h2,h3,h4{line-height:1.15;letter-spacing:-.02em;color:var(--ink)}
  h1{font-size:clamp(2rem, 3.4vw + 1rem, 3.5rem);font-weight:800}
  h2{font-size:clamp(1.75rem, 2vw + 1rem, 2.5rem);font-weight:700;margin-bottom:12px}
  h3{font-size:1.25rem;font-weight:700;margin-bottom:8px}
  .lede{font-size:1.125rem;color:var(--muted);max-width:60ch}
  .section-lede{font-size:1.05rem;color:var(--muted);max-width:62ch;margin-bottom:48px}
  .eyebrow{font-size:.8rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--blue);margin-bottom:8px}

  /* ============ Buttons ============ */
  .btn{
    display:inline-flex;align-items:center;justify-content:center;gap:8px;
    padding:14px 26px;border-radius:999px;font-weight:600;font-size:1rem;
    transition:transform .12s ease, box-shadow .12s ease, background .12s ease;
    text-align:center;white-space:nowrap;
  }
  .btn-primary{background:var(--blue);color:#fff;box-shadow:var(--shadow-sm)}
  .btn-primary:hover{background:var(--blue-dark);box-shadow:var(--shadow);transform:translateY(-1px)}
  .btn-secondary{background:#fff;color:var(--blue);border:1.5px solid var(--blue)}
  .btn-secondary:hover{background:var(--blue-light)}
  .btn-text{color:var(--blue);font-weight:600;display:inline-flex;align-items:center;gap:6px}
  .btn-text:hover{text-decoration:underline}
  .btn-lg{padding:16px 32px;font-size:1.05rem}
  .btn-block{width:100%}
  *:focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:4px}

  /* Skip link */
  .skip-link{position:absolute;left:-9999px;top:0;background:var(--blue);color:#fff;padding:12px 20px;border-radius:0 0 8px 0;z-index:100}
  .skip-link:focus{left:0}

  /* ============ Top bar (no nav for paid LP) ============ */
  .topbar{
    position:sticky;top:0;z-index:40;background:rgba(255,255,255,.92);
    backdrop-filter:blur(8px);border-bottom:1px solid var(--border);
  }
  .topbar.is-sticky{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background-color: #fff;
  }
  .topbar-inner{display:flex;align-items:center;justify-content:space-between;padding:14px 0;margin-top: 5px; margin-bottom: 5px;}
  .logo{font-weight:800;font-size:1.25rem;letter-spacing:-.01em;color:var(--ink)}
  .logo span{color:var(--blue)}
  .topbar-actions{display:flex;align-items:center;gap:14px}
  .phone{font-weight:600;color:var(--ink);display:inline-flex;align-items:center;gap:6px}
  .phone:hover{color:var(--blue)}
  @media (max-width:600px){.phone .phone-label{display:none}}

  /* ============ Hero ============ */
  .hero{padding:64px 0 56px;background:linear-gradient(180deg,#F4F8FE 0%,#FFFFFF 100%)}
  .hero-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:56px;align-items:start}
  @media (max-width:960px){.hero-grid{grid-template-columns:1fr;gap:40px}}
  .hero h1 strong{color:var(--blue)}
  .hero .lede{margin-top:18px;font-size:1.2rem;color:var(--ink-soft);max-width:54ch}
  .trust-line{
    margin-top:22px;display:inline-flex;flex-wrap:wrap;gap:6px 14px;align-items:center;
    padding:10px 16px;background:#fff;border:1px solid var(--border);border-radius:999px;
    font-size:.92rem;color:var(--ink-soft);font-weight:500;box-shadow:var(--shadow-sm);
  }
  .trust-line .dot{width:4px;height:4px;background:var(--blue);border-radius:50%;display:inline-block}
  .hero-ctas{margin-top:28px;display:flex;flex-wrap:wrap;gap:16px;align-items:center}

  /* Form card */
  .form-card{
    background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);
    padding:28px;box-shadow:var(--shadow-lg);
  }
  .form-card h2{font-size:1.5rem;margin-bottom:6px}
  .form-sub{color:var(--muted);font-size:.95rem;margin-bottom:20px}
  .form-row{display:grid;gap:12px}
  .form-card input,.form-card select,.form-card textarea{
    width:100%;padding:13px 14px;border:1.5px solid var(--border);
    border-radius:12px;background:#fff;transition:border-color .12s, box-shadow .12s;
    font-size:.98rem;
  }
  .form-card input:focus,.form-card select:focus,.form-card textarea:focus{
    outline:none;border-color:var(--blue);box-shadow:0 0 0 4px rgba(42,111,219,.15)
  }
  .form-card select{appearance:none;-webkit-appearance:none;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23475569' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");
    background-repeat:no-repeat;background-position:right 14px center;padding-right:40px;
  }
  .consent{display:flex;align-items:flex-start;gap:8px;font-size:.85rem;color:var(--muted);margin-top:6px}
  .consent input{margin-top:3px;width:auto}
  .consent a{color:var(--blue);text-decoration:underline}
  .honeypot{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none}
  .form-success{
    display:none;padding:24px;background:#ECFDF5;border:1.5px solid var(--green);
    border-radius:14px;color:#065F46;text-align:center;
  }
  .form-success.show{display:block}
  .form-error{display:none;padding:14px;background:#FEF2F2;border:1px solid #FCA5A5;border-radius:10px;color:#991B1B;font-size:.9rem;margin-top:10px}
  .form-error.show{display:block}

  /* ============ Stats strip ============ */
  .stats{padding:56px 0;background:var(--bg-dark);color:#fff}
  .stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;text-align:center}
  @media (max-width:768px){.stats-grid{grid-template-columns:repeat(2,1fr);gap:32px 16px}}
  .stat-num{font-size:clamp(2.2rem,3.6vw,3rem);font-weight:800;color:#fff;letter-spacing:-.02em}
  .stat-num span{color:#7AB1F5}
  .stat-label{font-size:.95rem;color:#B6C7DC;margin-top:4px}

  /* ============ Logo marquee ============ */
  .logos{padding:56px 0;background:var(--bg-soft);overflow:hidden}
  .logos-title{text-align:center;color:var(--muted);font-weight:500;margin-bottom:28px;font-size:.95rem;letter-spacing:.04em}
  .marquee{display:flex;gap:48px;animation:scroll 32s linear infinite;width:max-content}
  .marquee:hover{animation-play-state:paused}
  .marquee img{height:42px;width:auto;opacity:.7;filter:grayscale(1);transition:opacity .2s,filter .2s}
  .marquee img:hover{opacity:1;filter:grayscale(0)}
  @keyframes scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
  @media (prefers-reduced-motion:reduce){.marquee{animation:none}}

  /* ============ Generic grid sections ============ */
  .grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
  .grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
  @media (max-width:960px){.grid-4{grid-template-columns:repeat(2,1fr)}}
  @media (max-width:768px){.grid-3{grid-template-columns:1fr}.grid-4{grid-template-columns:1fr}}

  .card{
    background:#fff;border:1px solid var(--border);border-radius:var(--radius);
    padding:28px 24px;transition:transform .15s, box-shadow .15s, border-color .15s;
  }
  .card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#C8D7E8}
  .card .icon{
    width:44px;height:44px;border-radius:10px;background:var(--blue-light);
    display:flex;align-items:center;justify-content:center;color:var(--blue);margin-bottom:14px;
  }
  .card .icon svg{width:24px;height:24px;stroke:currentColor;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}
  .card p{color:var(--muted);font-size:.95rem}

  /* ============ Process ============ */
  .process{background:var(--bg-soft)}
  .process-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:24px;position:relative}
  @media (max-width:960px){.process-steps{grid-template-columns:repeat(2,1fr)}}
  @media (max-width:560px){.process-steps{grid-template-columns:1fr}}
  .step{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:24px 20px;position:relative}
  .step-num{
    width:36px;height:36px;background:var(--blue);color:#fff;border-radius:50%;
    display:flex;align-items:center;justify-content:center;font-weight:700;margin-bottom:14px;
  }
  .step h3{font-size:1.05rem;margin-bottom:6px}
  .step p{color:var(--muted);font-size:.92rem}

  /* ============ Case studies ============ */
  .case-card{
    background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);
    overflow:hidden;display:flex;flex-direction:column;
    transition:transform .15s,box-shadow .15s;
  }
  .case-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
  .case-img{aspect-ratio:16/10;background:linear-gradient(135deg,#EAF1FB,#C4D9F4);display:flex;align-items:center;justify-content:center}
  .case-img img{width:100%;height:100%;object-fit:cover}
  .case-body{padding:24px}
  .case-tag{font-size:.75rem;font-weight:700;color:var(--blue);text-transform:uppercase;letter-spacing:.1em;margin-bottom:8px}
  .case-card h3{font-size:1.15rem;margin-bottom:14px}
  .case-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0}
  .case-metric{padding:12px 8px;background:var(--bg-soft);border-radius:10px;text-align:center}
  .case-metric .v{font-size:1.25rem;font-weight:800;color:var(--blue)}
  .case-metric .l{font-size:.7rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-top:2px}
  .case-quote{font-size:.9rem;color:var(--muted);font-style:italic;border-left:3px solid var(--blue-light);padding-left:12px;margin-top:14px}

  /* ============ Testimonials ============ */
  .testi-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
  @media (max-width:768px){.testi-grid{grid-template-columns:1fr}}
  .testi{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:28px;display:flex;flex-direction:column;gap:16px}
  .testi blockquote{font-size:1.05rem;color:var(--ink-soft);line-height:1.6}
  .testi blockquote::before{content:'"';font-size:2.5rem;color:var(--blue);line-height:.5;display:block;margin-bottom:6px}
  .testi-author{display:flex;align-items:center;gap:12px;margin-top:auto;padding-top:14px;border-top:1px solid var(--border)}
  .testi-avatar{width:48px;height:48px;border-radius:50%;background:var(--blue-light);overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--blue);font-weight:700}
  .testi-avatar img{width:100%;height:100%;object-fit:cover}
  .testi-name{font-weight:700;font-size:.98rem}
  .testi-role{font-size:.85rem;color:var(--muted)}
  .stars{color:var(--amber);font-size:.9rem;letter-spacing:2px}

  /* ============ Why us ============ */
  .why{background:var(--bg-soft)}
  .why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
  @media (max-width:768px){.why-grid{grid-template-columns:1fr}}
  .badges {
    margin-top: 48px;
    text-align: center
  }

.badges-title {
    font-size: .85rem;
    color: var(--muted);
    font-weight: 500;
    margin-bottom: 18px;
    letter-spacing: .06em
}

.badges-row {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 32px;
    align-items: center
}

.badges-row img {
    height: 44px;
    opacity: .75;
}
.mediaSlider{
    display: flex;
    flex-wrap: wrap;
    /*row-gap: 10px;*/
    align-items: center;
    justify-content: space-between;
}
.mediaSlider .innerClient{
    margin-bottom: 10px;
    width: calc((100% / 5) - 10px);
}
@media only screen and (max-width: 767px){
    .mediaSlider{
        justify-content: center;
    }
    .mediaSlider .innerClient{
        margin: 0 5px 10px;
        width: calc((100% / 4) - 10px);
    }
}
@media only screen and (max-width: 500px){
    .mediaSlider{
        justify-content: center;
    }
    .mediaSlider .innerClient{
        margin: 0 5px 10px;
        width: calc((100% / 2) - 10px);
    }
}
.mediaSlider .innerClient figure {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 15px;
    background-color: #fff;
    border-radius: 10px;
    height: 60px;
}
.mediaSlider .innerClient img {
    height: 100%;
    width: 100%;
    object-fit: contain;
}
  

  /* ============ Team ============ */
  .team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
  @media (max-width:960px){.team-grid{grid-template-columns:repeat(2,1fr)}}
  @media (max-width:480px){.team-grid{grid-template-columns:1fr}}
  .person{text-align:center;background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:24px}
  .person-photo{
    width:108px;height:108px;border-radius:50%;background:var(--blue-light);
    margin:0 auto 14px;overflow:hidden;display:flex;align-items:center;justify-content:center;
    color:var(--blue);font-weight:800;font-size:1.5rem;
  }
  .person-photo img{width:100%;height:100%;object-fit:cover}
  .person-name{font-weight:700;font-size:1rem}
  .person-role{font-size:.88rem;color:var(--muted);margin-bottom:8px}
  .person-li{display:inline-flex;align-items:center;gap:4px;color:var(--blue);font-size:.85rem;font-weight:600}
  .person-li svg{width:14px;height:14px}

  /* ============ FAQ ============ */
  .faq-list{max-width:820px;margin:0 auto;display:flex;flex-direction:column;gap:12px}
  details.faq-item{
    background:var(--bg-soft);border:1px solid var(--border);border-radius:12px;
    padding:18px 22px;transition:border-color .15s, box-shadow .15s;
  }
  details.faq-item[open]{border-color:var(--blue);box-shadow:var(--shadow-sm)}
  summary{
    list-style:none;cursor:pointer;font-weight:600;font-size:1.02rem;
    display:flex;align-items:center;justify-content:space-between;gap:16px;color:var(--ink);
  }
  summary::-webkit-details-marker{display:none}
  summary::after{
    content:"";width:18px;height:18px;flex-shrink:0;
    background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%232A6FDB' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");
    transition:transform .2s;
  }
  details[open] summary::after{transform:rotate(180deg)}
  .faq-item p{margin-top:12px;color:var(--muted);font-size:.96rem;line-height:1.65}

  /* ============ Final CTA strip ============ */
  .final-cta{
    background:linear-gradient(135deg,var(--blue) 0%,var(--blue-dark) 100%);
    color:#fff;text-align:center;padding:80px 24px;
  }
  .final-cta h2{color:#fff}
  .final-cta p{font-size:1.1rem;color:#DCE7F8;margin:14px auto 28px;max-width:54ch}
  .final-cta .btn-primary{background:#fff;color:var(--blue)}
  .final-cta .btn-primary:hover{background:#F0F6FF}
  .final-cta .btn-secondary{background:transparent;color:#fff;border-color:#fff}
  .final-cta .btn-secondary:hover{background:rgba(255,255,255,.1)}
  .final-cta .ctas{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}

  /* ============ Footer ============ */
  footer{background:#0A1628;color:#B6C7DC;padding:60px 0 32px}
  .footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:48px}
  @media (max-width:768px){.footer-grid{grid-template-columns:1fr 1fr;gap:32px}}
  @media (max-width:480px){.footer-grid{grid-template-columns:1fr}}
  footer h4{color:#fff;font-size:.95rem;margin-bottom:14px}
  footer ul{list-style:none;padding:0;display:flex;flex-direction:column;gap:8px;font-size:.92rem}
  footer ul a:hover{color:#fff}
  .footer-addr{font-size:.92rem;line-height:1.7}
  .footer-addr strong{color:#fff;font-size:1.1rem;display:block;margin-bottom:8px}
  .socials{display:flex;gap:12px;margin-top:16px}
  .socials a{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;color:#fff;transition:background .15s}
  .socials a:hover{background:var(--blue)}
  .socials svg{width:16px;height:16px;fill:currentColor}
  .footer-bottom{margin-top:40px;justify-content:center;padding-top:24px;border-top:1px solid rgba(255,255,255,.08);font-size:.85rem;color:#7C8FA8;display:flex;flex-wrap:wrap;gap:12px}

  /* ============ WhatsApp FAB ============ */
.wa-fab {
    position: fixed;
    bottom: 24px;
    right: 24px;
    z-index: 30;
    width: 56px;
    height: 56px;
    background: #25D366;
    border-radius: 50%;
    box-shadow: 0 8px 24px rgba(37, 211, 102, .4);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    transition: transform .2s;
}

.wa-fab:hover {
    transform: scale(1.06)
}

.wa-fab svg {
    width: 30px;
    height: 30px
}
.wa-fab img{
    width: 40px;
}
  @media (max-width:768px){.wa-fab{bottom:84px}} /* lift above mobile sticky bar */

  /* ============ Mobile sticky CTA ============ */
  .mobile-sticky{
    display:none;position:fixed;bottom:0;left:0;right:0;z-index:30;
    background:#fff;border-top:1px solid var(--border);padding:10px 16px;
    box-shadow:0 -4px 16px rgba(15,23,42,.08);gap:10px;
  }
  .mobile-sticky a{flex:1;padding:13px 16px;text-align:center;font-weight:600;font-size:.95rem;border-radius:10px}
  .mobile-sticky .btn-primary{background:var(--blue);color:#fff}
  .mobile-sticky .btn-secondary{background:#25D366;color:#fff;border:0}
  @media (max-width:768px){.mobile-sticky{display:flex}body{padding-bottom:72px}}

  /* ============ Exit-intent modal ============ */
  .modal-overlay{
    display:none;position:fixed;inset:0;background:rgba(15,23,42,.65);z-index:50;
    align-items:center;justify-content:center;padding:24px;
  }
  .modal-overlay.show{display:flex}
  .modal{
    background:#fff;border-radius:var(--radius-lg);max-width:580px;width:100%;
    padding:36px 32px;text-align:center;position:relative;
  }
  .modal-close{
    position:absolute;top:14px;right:14px;width:32px;height:32px;border-radius:50%;
    background:var(--bg-soft);display:flex;align-items:center;justify-content:center;color:var(--muted);
  }
  .modal h3{font-size:1.5rem;margin-bottom:8px}
  .modal p{color:var(--muted);margin-bottom:20px}
  .modal form{display:flex;gap:8px}
  .modal input{flex:1;padding:13px 14px;border:1.5px solid var(--border);border-radius:10px}

  /* ============ Testimonials alternating layout ============ */
  .testi-alt-section{background:#fff}
  .testi-row{display:flex;align-items:center;gap:64px;padding:64px 0;border-bottom:1px solid var(--border)}
  .testi-row:last-child{border-bottom:0}
  .testi-row.reverse{flex-direction:row-reverse}
  .testi-text{flex:1;min-width:0}
  .testi-photo{flex:0 0 38%;min-width:0}
  .testi-photo-inner{background:#F0F4FF;border-radius:24px;padding:14px;transition:transform .3s}
  .testi-photo-inner.tilt-left{transform:rotate(-3deg)}
  .testi-photo-inner.tilt-right{transform:rotate(3deg)}
  .testi-photo-inner:hover{transform:rotate(0) scale(1.02)}
  .testi-photo-inner img{
      width: 100%;
    border-radius: 16px;
    display: block;
    object-fit: cover;
    max-height: 350px;
    object-position: top center;
  }
  .testi-quote-text{font-size:1.05rem;color:var(--ink-soft);line-height:1.8;font-style:italic}
  .testi-quote-text::before{content:'"';font-size:2.5rem;color:var(--blue);line-height:.5;display:block;margin-bottom:10px}
  .testi-bar{width:60px;height:3px;background:var(--blue);margin:20px 0 14px}
  .testi-name{font-size:1.15rem;font-weight:700;color:var(--blue)}
  .testi-role{font-size:.9rem;color:var(--muted);margin-top:4px}
  @media (max-width:768px){
    .testi-row,.testi-row.reverse{flex-direction:column-reverse;gap:32px;padding:40px 0}
    .testi-photo{flex:0 0 auto;width:100%}
  }

  /* ============================================================
     COMPREHENSIVE RESPONSIVE OVERRIDES
     Breakpoints: 1200 | 960 | 768 | 600 | 480 | 375
  ============================================================ */

  /* --- Global: prevent horizontal overflow --- */
  html, body { overflow-x: hidden; max-width: 100vw; }
  .container { padding: 0 24px; }
  img { max-width: 100%; height: auto; }

  /* --- Section lede: remove max-width restriction on small screens --- */
  @media (max-width:768px) {
    .section-lede { max-width: 100%; margin-bottom: 32px; }
    .lede { max-width: 100%; }
  }

  /* ─── TABLET (max 960px) ─── */
  @media (max-width:960px) {
    /* Section spacing */
    section { padding: 64px 0; }
    .container { padding: 0 20px; }

    /* Hero */
    .hero { padding: 48px 0 40px; }
    .hero-ctas { gap: 12px; }

    /* Grid-3 → 2-col on tablet */
    .grid-3 { grid-template-columns: repeat(2,1fr); }

    /* Why-us grid → 2-col on tablet */
    .why-grid { grid-template-columns: repeat(2,1fr); }

    /* Badges row: wrap and smaller */
    .badges-row { gap: 20px; }
    .badges-row img { height: 36px; }
  }

  /* ─── MOBILE LANDSCAPE / LARGE PHONE (max 768px) ─── */
  @media (max-width:768px) {
    /* Base typography */
    h1 { font-size: clamp(1.75rem, 6vw, 2.4rem); }
    h2 { font-size: clamp(1.5rem, 5vw, 2rem); margin-bottom: 10px; }
    h3 { font-size: 1.1rem; }

    /* Section & container */
    section { padding: 48px 0; }
    .container { padding: 0 16px; }

    /* Topbar */
    .topbar-inner { padding: 10px 0; }
    .topbar-inner img { height: 32px !important; }
    .topbar-actions { gap: 10px; }
    .btn { padding: 11px 18px; font-size: .92rem; }
    .btn-lg { padding: 13px 22px; font-size: .97rem; }

    /* Hero */
    .hero { padding: 40px 0 32px; }
    .hero .lede { font-size: 1.05rem; }
    .trust-line {
      display: flex; flex-direction: column; gap: 8px;
      border-radius: 14px; padding: 12px 16px; text-align: left; width: 100%;
    }
    .trust-line .dot { display: none; }
    .hero-ctas { flex-direction: column; align-items: flex-start; gap: 12px; }
    .hero-ctas .btn { width: 100%; justify-content: center; }

    /* Form card */
    .form-card { padding: 20px 16px; border-radius: 14px; }
    .form-card h2 { font-size: 1.25rem; }
    .form-card input, .form-card select, .form-card textarea {
      padding: 12px 12px; font-size: .95rem;
    }

    /* Stats */
    .stats { padding: 40px 0; }
    .stat-num { font-size: 2.2rem; }

    /* Logo marquee */
    .logos { padding: 36px 0; }
    .marquee { gap: 32px; }
    .marquee img { height: 34px; }

    /* Services: 2-col grid on mobile */
    .grid-4 { grid-template-columns: repeat(2,1fr); gap: 16px; }
    .card { padding: 20px 16px; }

    /* Process: 2-col on mobile landscape */
    .process-steps { gap: 16px; }
    .step { padding: 18px 16px; }

    /* Grid-3 → 1-col on mobile */
    .grid-3 { grid-template-columns: 1fr; gap: 16px; }

    /* Why us → 1-col on mobile */
    .why-grid { grid-template-columns: 1fr; gap: 16px; }

    /* Testimonials */
    .testi-alt-section { }
    .testi-row { gap: 28px; padding: 36px 0; }
    .testi-photo-inner { padding: 8px; }
    .testi-photo-inner.tilt-left,
    .testi-photo-inner.tilt-right { transform: none; }
    .testi-photo-inner img { max-height: inherit; border-radius: 12px; }
    .testi-quote-text { font-size: .97rem; }
    .testi-name { font-size: 1.05rem; }

    /* FAQ */
    .faq-list { gap: 8px; }
    details.faq-item { padding: 14px 16px; }
    summary { font-size: .95rem; }

    /* Final CTA */
    .final-cta { padding: 56px 16px; }
    .final-cta h2 { font-size: 1.75rem; }
    .final-cta p { font-size: 1rem; }
    .final-cta .ctas { flex-direction: column; align-items: center; gap: 10px; }
    .final-cta .ctas .btn { width: 100%; max-width: 320px; justify-content: center; }

    /* Footer */
    footer { padding: 48px 0 24px; }
    .footer-bottom { flex-direction: column; gap: 8px; text-align: center; }

    /* Badges */
    .badges { margin-top: 32px; }
    .badges-row { gap: 16px; flex-wrap: wrap; justify-content: center; }
    .badges-row img { height: 32px; }

    /* Team */
    .team-grid { gap: 16px; }
    .person { padding: 18px 14px; }
    .person-photo { width: 88px; height: 88px; }
  }

  /* ─── SMALL PHONE (max 600px) ─── */
  @media (max-width:600px) {
    /* Stats 2x2 tighter */
    .stats-grid { gap: 24px 12px; }
    .stat-num { font-size: 2rem; }
    .stat-label { font-size: .88rem; }

    /* Services → 2-col */
    .grid-4 { grid-template-columns: repeat(2,1fr); gap: 12px; }
    .card { padding: 16px 14px; border-radius: 12px; }
    .card .icon { width: 38px; height: 38px; margin-bottom: 10px; }
    .card h3 { font-size: 1rem; margin-bottom: 6px; }
    .card p { font-size: .88rem; }

    /* Form */
    .form-card { padding: 18px 14px; }

    /* Topbar phone number hidden on <600px already handled */
  }

  /* ─── TINY PHONE (max 480px) ─── */
  @media (max-width:480px) {
    h1 { font-size: clamp(1.6rem, 7vw, 2rem); }
    h2 { font-size: clamp(1.4rem, 6vw, 1.75rem); }
    .container { padding: 0 14px; }
    section { padding: 40px 0; }

    /* Services → 1-col at 480px (icons look better 1-col) */
    .grid-4 { grid-template-columns: 1fr; gap: 12px; }

    /* Process → 1-col */
    .process-steps { grid-template-columns: 1fr; gap: 12px; }

    /* Hero */
    .hero { padding: 32px 0 28px; }
    .form-card { padding: 16px 12px; border-radius: 12px; }
    .form-card input, .form-card select { padding: 11px 10px; }

    /* Stats */
    .stats { padding: 32px 0; }
    .stats-grid { grid-template-columns: repeat(2,1fr); gap: 20px 10px; }
    .stat-num { font-size: 1.8rem; }

    /* Logos */
    .logos { padding: 28px 0; }
    .marquee img { height: 28px; }
    .marquee { gap: 24px; }

    /* Testimonials: full stack */
    .testi-row { padding: 28px 0; gap: 20px; }
    .testi-photo-inner img { max-height: inherit; }

    /* FAQ */
    details.faq-item { padding: 12px 14px; border-radius: 10px; }
    summary { font-size: .92rem; gap: 10px; }
    .faq-item p { font-size: .9rem; margin-top: 10px; }

    /* Footer */
    footer { padding: 40px 0 20px; }
    .footer-grid { gap: 28px; }
    .socials { margin-top: 12px; }

    /* Exit modal */
    .modal { padding: 28px 20px; border-radius: 16px; }
    .modal form { flex-direction: column; gap: 10px; }
    .modal input, .modal form button { width: 100%; border-radius: 10px; }

    /* Team */
    .team-grid { grid-template-columns: repeat(2,1fr); gap: 12px; }
    .person-photo { width: 76px; height: 76px; font-size: 1.2rem; }
    .person-name { font-size: .92rem; }
    .person-role { font-size: .8rem; }
    .wa-fab {
        bottom: 170px;
    }
  }

  /* ─── VERY SMALL (max 375px) ─── */
  @media (max-width:375px) {
    .container { padding: 0 12px; }
    h1 { font-size: 1.55rem; }
    h2 { font-size: 1.35rem; }
    .btn-lg { padding: 12px 18px; font-size: .93rem; }
    .trust-line { font-size: .85rem; }
    .topbar-inner img { height: 28px !important; }
    .stats-grid { gap: 16px 8px; }
    .stat-num { font-size: 1.65rem; }
    .marquee img { height: 24px; }
    .team-grid { grid-template-columns: 1fr; }
  }

  /* ─── LARGE SCREENS (min 1280px) ─── */
  @media (min-width:1280px) {
    .hero { padding: 80px 0 72px; }
    .hero-grid { gap: 72px; align-items: center; }
    h1 { font-size: 3.5rem; }
  }