.required-indicator{color:#c82f4f;font-weight:700}:root{--primary:#721953;--secondary:#53275c;--accent:#341e4a;--dark:#1d2350;--light-bg:#f4f5fa}*{scroll-behavior:smooth}body{font-family:'Montserrat',sans-serif;color:var(--dark);background-color:var(--light-bg);line-height:1.6}img{max-width:100%;display:block}section{padding:4.5rem 0}.section-label{letter-spacing:.18em;color:var(--accent);font-size:.85rem;text-transform:uppercase;font-weight:600}.section-heading{color:var(--dark);font-weight:700;margin-bottom:.75rem}.section-subheading{color:var(--secondary);font-weight:500}.section-description{max-width:780px;margin:0 auto 3.5rem;color:rgba(29,35,80,.76)}.hero{background-color:var(--primary);padding-top:6rem;padding-bottom:6rem;min-height:90vh;display:flex;align-items:center;color:#fff;position:relative;overflow:hidden}.hero .display-4{color:#fff}.hero h2{color:rgba(255,255,255,.82);font-weight:600}.hero .lead{color:rgba(255,255,255,.78)}.hero-visual{position:relative;border-radius:2rem;overflow:hidden;box-shadow:0 25px 60px rgba(29,35,80,.18)}.hero-visual::after{content:"";position:absolute;inset:0;background:rgba(29,35,80,.3)}.hero-visual img{width:100%;height:100%;object-fit:cover}.metrics-section{background-color:#fff;padding:3.5rem 0}.hero .btn-primary{background-color:#fff;border-color:#fff;color:var(--primary)}.hero .btn-primary:hover,.hero .btn-primary:focus{background-color:rgba(255,255,255,.85);border-color:rgba(255,255,255,.85);color:var(--accent)}.hero .btn-ghost{background-color:transparent;color:#fff;border:1px solid rgba(255,255,255,.4);box-shadow:none}.hero .btn-ghost:hover,.hero .btn-ghost:focus{border-color:#fff;color:#fff;background-color:rgba(255,255,255,.12)}.hero .stat-badge{background-color:rgba(255,255,255,.18);color:#fff}.metrics-section .stat-card{max-width:220px;margin-left:auto;margin-right:auto;border-radius:1.5rem;box-shadow:0 18px 40px rgba(29,35,80,.12)}.stat-badge{background-color:rgba(114,25,83,.12);color:var(--primary);border-radius:2rem;padding:.4rem .9rem;font-weight:600;font-size:.85rem;text-transform:uppercase}.stat-card{background-color:#fff;color:var(--dark);border:none;box-shadow:0 18px 40px rgba(29,35,80,.15);border-radius:1.25rem;padding:2rem 1.5rem;transition:transform .4s ease,box-shadow .4s ease}.stat-card:hover{transform:translateY(-6px);box-shadow:0 20px 45px rgba(29,35,80,.16)}.stat-card p{letter-spacing:.04em;color:rgba(29,35,80,.65)}.text-primary-accent{color:var(--primary)!important}.expertise-section{background-color:var(--light-bg)}.expertise-card{border:none;border-radius:1.25rem;box-shadow:0 14px 34px rgba(29,35,80,.28);transition:transform .3s ease,box-shadow .3s ease;height:100%;background-color:var(--accent);color:#fff}.expertise-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(29,35,80,.32)}.expertise-card .card-body{padding:2.25rem;display:flex;flex-direction:column;color:rgba(255,255,255,.82)}.expertise-card .card-title{color:#fff}.expertise-card .card-text{color:rgba(255,255,255,.82)}.expertise-icon{width:52px;height:52px;border-radius:14px;background-color:rgba(255,255,255,.14);display:grid;place-items:center;margin-bottom:1.5rem;color:#fff;font-size:1.5rem}.expertise-card .btn-link{display:inline-flex;align-items:center;gap:.4rem;background-color:#7b0f4f;color:#fff;font-weight:700;text-decoration:none;padding:.55rem 1.1rem;border-radius:999px;transition:background-color .2s ease,transform .2s ease;align-self:flex-start}.expertise-card .btn-link:hover{background-color:#b01869;color:#fff;transform:translateY(-2px)}.clients-section{background:linear-gradient(135deg,#1e214d 0%,#401a5d 52%,#6c1c53 100%);color:#fff;position:relative;overflow:hidden;padding:5rem 0}.clients-section::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at top right,rgba(114,25,83,.15),transparent 45%);pointer-events:none}.clients-section .container{position:relative;z-index:1}.clients-section .section-label{color:rgba(255,255,255,.6)}.clients-section .section-heading{color:#fff}.clients-intro{max-width:670px;margin-top:1rem;color:rgba(255,255,255,.7)}.clients-marquee{position:relative;overflow:hidden;margin-top:3rem;border-radius:1.6rem;padding:1.75rem 0}.marquee-track{display:flex;gap:2.8rem;min-width:max-content;animation:marquee 28s linear infinite}.client-logo{flex:0 0 auto;min-width:200px;display:flex;align-items:center;justify-content:center;padding:1rem 1.5rem;border-radius:1rem;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.06);color:#fff;font-weight:600;letter-spacing:.12em;text-transform:uppercase;font-size:.84rem;backdrop-filter:blur(6px);box-shadow:0 16px 40px rgba(17,20,50,.32);transition:transform .3s ease,background .3s ease,border-color .3s ease}.client-logo:hover{transform:translateY(-6px);background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.38)}@keyframes marquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}.clients-section .btn{background-color:#fff;border-color:#fff;color:var(--primary);border-radius:.8rem;padding:.85rem 2.5rem;font-weight:600;transition:all .3s ease}.clients-section .btn:hover{background-color:rgba(255,255,255,.9);border-color:rgba(255,255,255,.9);color:var(--accent);transform:translateY(-2px);box-shadow:0 8px 20px rgba(255,255,255,.2)}.blog-section{background-color:var(--light-bg)}.blog-card{border:none;border-radius:1.25rem;box-shadow:0 16px 36px rgba(29,35,80,.12);height:100%;overflow:hidden;background-color:#fff;transition:transform .4s ease,box-shadow .4s ease}.blog-card:hover{transform:translateY(-8px);box-shadow:0 20px 44px rgba(29,35,80,.16)}.blog-card img{height:220px;object-fit:cover}.blog-card .card-body{padding:2rem;display:flex;flex-direction:column}.blog-card .btn-link{color:var(--primary);font-weight:600;text-decoration:none;padding:0}.blog-card .btn-link:hover{color:var(--accent)}.newsletter-section{background-color:var(--accent);color:#fff;border-radius:2rem;padding:4rem 2rem}.newsletter-section .form-control,.newsletter-section .form-select{border-radius:1rem;border:none;padding:.9rem 1.1rem}.newsletter-section .btn{background-color:#fff;color:var(--accent);border-radius:1rem;padding:.85rem 2.6rem;font-weight:700;text-transform:uppercase}.newsletter-section .btn:hover{background-color:rgba(255,255,255,.85)}.contact-section{background-color:var(--light-bg)}.contact-wrapper{margin-top:3.2rem}.contact-info-card{display:flex;flex-direction:column;gap:1.75rem;background-color:var(--accent);color:#fff;border-radius:1.75rem;padding:2.5rem;box-shadow:0 30px 70px rgba(29,35,80,.18);height:100%}.contact-chip{display:inline-block;padding:.4rem 1.2rem;border-radius:999px;background-color:rgba(255,255,255,.16);color:#fff;letter-spacing:.14em;font-size:.75rem;font-weight:600}.contact-chip-light{background-color:rgba(114,25,83,.18);color:var(--primary)}.contact-info-head h4{font-size:1.6rem;font-weight:700;margin-bottom:.75rem}.contact-info-head p{color:rgba(255,255,255,.78);margin-bottom:0}.info-list{display:flex;flex-direction:column;gap:1.2rem}.info-item{display:flex;gap:1rem;align-items:flex-start}.info-icon{width:42px;height:42px;border-radius:50%;background-color:rgba(255,255,255,.12);display:grid;place-items:center;font-size:1.1rem}.info-label{display:block;text-transform:uppercase;font-size:.75rem;letter-spacing:.12em;color:rgba(255,255,255,.6)}.info-value{display:block;margin-top:.35rem;color:#fff;font-weight:600;text-decoration:none}.info-value:hover{color:rgba(255,255,255,.9)}.contact-info-card .btn-outline-light{border-radius:1rem;border-width:2px;font-weight:600}.contact-form-card{background-color:#fff;border-radius:1.75rem;padding:2.5rem 2.75rem;box-shadow:0 28px 68px rgba(29,35,80,.16);height:100%;display:flex;flex-direction:column;gap:1.8rem}.contact-form-card form{flex:1}.contact-form-card .form-control,.contact-form-card .form-select{border-radius:1rem;border:1px solid rgba(52,30,74,.18);padding:1rem 1.1rem;background-color:#fff;color:var(--dark);transition:border-color .2s ease,box-shadow .2s ease}.contact-form-card .form-control:focus,.contact-form-card .form-select:focus{border-color:var(--primary);box-shadow:0 12px 26px rgba(29,35,80,.12);outline:none}.contact-form-card textarea.form-control{min-height:160px;resize:vertical}.contact-form-card .form-label{font-weight:600;color:rgba(29,35,80,.82)}.contact-form-grid{row-gap:1.5rem}.contact-note{color:rgba(29,35,80,.65)}.btn-primary{background-color:var(--primary);border-color:var(--primary);border-radius:1rem;padding:.95rem 2.6rem;font-weight:600}.btn-primary:hover,.btn-primary:focus{background-color:var(--accent);border-color:var(--accent)}.btn-ghost{background-color:#fff;color:var(--dark);border-radius:.9rem;padding:.85rem 2.4rem;font-weight:600;box-shadow:0 14px 32px rgba(29,35,80,.12)}.reveal{opacity:0;transform:translateY(40px);transition:opacity .8s ease,transform .8s ease}.reveal-left{opacity:0;transform:translateX(-40px);transition:opacity .85s ease,transform .85s ease}.reveal-right{opacity:0;transform:translateX(40px);transition:opacity .85s ease,transform .85s ease}.reveal.show,.reveal-left.show,.reveal-right.show{opacity:1;transform:translate(0,0)}.divider{height:1px;background-color:rgba(82,39,92,.15);margin:2.5rem 0}@media (max-width:991.98px){.hero{text-align:center}.hero-visual{margin-top:2.5rem}.stat-card{padding:1.75rem 1.25rem}.contact-info-card,.contact-form-card{padding:2.3rem 2rem}}@media (max-width:767.98px){section{padding:3.5rem 0}.newsletter-section{border-radius:1.5rem;padding:3.2rem 1.5rem}.contact-info-card,.contact-form-card{padding:2rem 1.75rem}}@media (max-width:575.98px){.hero{padding-top:4.5rem;padding-bottom:4.5rem}.hero .display-4{font-size:2rem}.hero-stats{margin-top:2rem}.stat-card{padding:1.5rem}.contact-info-card,.contact-form-card{padding:1.8rem 1.5rem}}


/* Hero Circles - Transparent decorative circles */
.hero-circle {
  position: absolute;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.1);
  pointer-events: none;
  z-index: 1;
}

.hero-circle-1 {
  width: 300px;
  height: 300px;
  top: 10%;
  left: 5%;
  opacity: 0.6;
}

.hero-circle-2 {
  width: 200px;
  height: 200px;
  bottom: 15%;
  left: 8%;
  opacity: 0.4;
}

.hero-circle-3 {
  width: 250px;
  height: 250px;
  top: 10%;
  right: 10%;
  opacity: 0.35;
}

.hero-circle-4 {
  width: 180px;
  height: 180px;
  bottom: 20%;
  right: 15%;
  opacity: 0.5;
}

.hero .container {
  position: relative;
  z-index: 2;
}

/* Hide reCAPTCHA badge but keep functionality */
.grecaptcha-badge {
  visibility: hidden !important;
  opacity: 0 !important;
  display: none !important;
}

@media (max-width: 991.98px) {
  .hero-circle {
    opacity: 0.3;
  }
  
  .hero-circle-1 {
    width: 200px;
    height: 200px;
  }
  
  .hero-circle-2 {
    width: 150px;
    height: 150px;
  }
  
  .hero-circle-3 {
    width: 100px;
    height: 100px;
  }
  
  .hero-circle-4 {
    width: 150px;
    height: 150px;
  }
}

@media (max-width: 767.98px) {
  .hero-circle {
    opacity: 0.2;
  }
}

/* Remove background from bridge image */
.hero-visual::after {
  display: none !important;
}

.hero-visual img {
  mix-blend-mode: multiply;
  filter: contrast(1.1) brightness(1.05);
  background: transparent;
}

/* Alternative: if multiply doesn't work well, try screen mode */
/* Uncomment and comment out multiply if needed */
/*
.hero-visual img {
  mix-blend-mode: screen;
  filter: contrast(1.1) brightness(0.95);
}
*/

/* Mobile width constraints - ensure 100% width on mobile */
@media (max-width: 575.98px) {
  html {
    width: 100% !important;
    max-width: 100vw !important;
    overflow-x: hidden !important;
  }

  body {
    overflow-x: hidden !important;
    width: 100% !important;
    max-width: 100vw !important;
  }

  main, section {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  .container,
  .container-fluid {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }

  .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  [class*="col-"] {
    padding-left: 0.75rem !important;
    padding-right: 0.75rem !important;
  }

  .clients-marquee {
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
  }
}
