:root {
  /* Brand */
  --ea-teal: #1E9197;
  --ea-teal-dark: #15737a;
  --ea-cyan: #2bc4cf;
  --ea-cyan-soft: #C8F7F8;
  --ea-sky: #D6F8FF;
  --ea-cream: #FFF8E7;
  --ea-cream-2: #FFF8EE;
  --ea-amber: #f5a623;
  --ea-mint: #2bb38a;

  /* Gradients */
  --ea-gradient: linear-gradient(135deg, #1E9197 0%, #2bc4cf 100%);
  --ea-gradient-warm: linear-gradient(135deg, #1E9197 0%, #34c6cf 55%, #ffd58a 130%);
  --ea-gradient-soft: linear-gradient(135deg, rgba(30,145,151,.12) 0%, rgba(43,196,207,.14) 100%);
  --ea-bg-grad-body: linear-gradient(to top, #FFFFFF 0%, #FFF8EE 60%, #D6F8FF 120%);
  --ea-bg-grad-hero: linear-gradient(to top right, #FFF8E7 0%, #FFFFFF 40%, #C8F7F8 100%);

  /* Typography */
  --ea-font-body: 'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --ea-font-head: 'Space Grotesk', 'Inter', system-ui, sans-serif;

  /* Radii & shadow */
  --ea-radius: 20px;
  --ea-radius-sm: 12px;
  --ea-radius-lg: 28px;
  --ea-shadow: 0 24px 60px rgba(15, 80, 84, .14);
  --ea-shadow-sm: 0 12px 30px rgba(15, 80, 84, .10);
  --ea-shadow-teal: 0 14px 30px rgba(30, 145, 151, .30);

  /* Layout */
  --ea-section-y: 6rem;
}

/* Light theme (default) */
[data-bs-theme="light"] {
  --ea-bg: #ffffff;
  --ea-bg-image: var(--ea-bg-grad-body);
  --ea-hero-image: var(--ea-bg-grad-hero);
  --ea-bg-elev: #ffffff;
  --ea-bg-elev-2: #f1fbfc;
  --ea-bg-tint: rgba(200, 247, 248, .35);
  --ea-border: rgba(30, 145, 151, .16);
  --ea-border-strong: rgba(30, 145, 151, .30);
  --ea-text: #344c4e;
  --ea-heading: #0d3032;
  --ea-muted: #5d7375;
  --ea-nav-bg: rgba(255, 255, 255, .72);
  --ea-glass: rgba(255, 255, 255, .65);
  --light-bg: #F3FEFF;
  --light-yellow: #F8F7F4;
  --light-blue: #f0f4ff;
}

/* Dark theme */
[data-bs-theme="dark"] {
  --ea-bg: #07181a;
  --ea-bg-image: radial-gradient(1100px 600px at 80% -10%, rgba(43,196,207,.16), transparent 60%), radial-gradient(900px 500px at -10% 10%, rgba(30,145,151,.18), transparent 55%);
  --ea-hero-image: radial-gradient(900px 500px at 75% 0%, rgba(43,196,207,.22), transparent 60%);
  --ea-bg-elev: #0e2427;
  --ea-bg-elev-2: #143033;
  --ea-bg-tint: rgba(43, 196, 207, .06);
  --ea-border: rgba(255, 255, 255, .09);
  --ea-border-strong: rgba(43, 196, 207, .35);
  --ea-text: #d4e7e8;
  --ea-heading: #f0fbfc;
  --ea-muted: #8ba6a8;
  --ea-nav-bg: rgba(7, 24, 26, .72);
  --ea-glass: rgba(14, 36, 39, .6);
  --light-bg: #07181a;
  --light-yellow: #143033;
  --light-blue: #143033;
}

/* ----- 2. Base ----- */
html { scroll-behavior: smooth; }
body {
  background-color: var(--ea-bg);
  /*background-image: var(--ea-bg-image);*/
  background-attachment: fixed;
  background-repeat: no-repeat;
  background-size: cover;
  min-height: 100vh;
  color: var(--ea-text);
  font-family: var(--ea-font-body);
  -webkit-font-smoothing: antialiased;
}
h1, h2, h3, h4, h5, .display-1, .display-2, .display-3, .display-4 {
  font-family: var(--ea-font-head);
  color: var(--ea-heading);
  letter-spacing: -.02em;
  font-weight: 700;
}
p { color: var(--ea-text); }
a { color: var(--ea-teal); text-decoration: none; transition: color .15s ease; }
a:hover { color: var(--ea-cyan); }
.text-muted-ea { color: var(--ea-muted) !important; }
.brand-logo {width: 200px;height: auto;}
.card-soft-1 {
    background: var(--ea-bg-elev);
    border-radius: var(--ea-radius);
    box-shadow: var(--ea-shadow-sm);
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
    height: 100%;
    position: relative;
    overflow: hidden;
}
.border-color-1 {border-color: rgba(30, 145, 151, 0.2) !important;}
.border-color-2 {border-color: var(--ea-teal) !important;}
.color-first {color: var(--ea-teal) !important;}
textarea {resize: none !important;}
.btn {
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: normal;
    padding: 10px 16px;
    width: fit-content;
}
.gradient-color1 {background: var(--ea-gradient) !important;}
.no-before::before, .no-after::after {display: none !important;}
.transform-none {transform: none !important;}
.min-w-fit-content {min-width: fit-content;}
.w-fit-content {width: fit-content;}
.w-max-content {min-width: max-content;}
.text-dark {color: var(--ea-heading) !important}

/*==================== FONT SIZE ==============================*/
.text-xxxl {font-size: 4.5rem !important;line-height: 1.3 !important;}
.text-xxl {font-size: 1.5rem !important;line-height: 1.3 !important;}
.text-xl {font-size: 1.4rem !important;line-height:1.5;}
.text-lg {font-size: 1.12rem !important;line-height:1.5;}
.text-md {font-size: 1rem !important;line-height: normal;}
.text-sm {font-size: 0.875rem !important;}
.text-xs {font-size: 0.75rem !important;line-height: normal;}
@media screen and (max-width: 1200px) {
    .webContent .mainHeading, .webContent .article-contents h1 {font-size: 2rem;}
    .webContent .largeHeading {font-size:1.6rem;}
    .webContent .subHeading {font-size: 1.35rem;}
    .text-xxxl {font-size: 3.5rem !important;}
}
@media screen and (max-width: 1024px) {
    .text-xxxl {font-size: 3rem !important;}
}
@media screen and (max-width: 991px) {
    *{font-size: 15px;}
    .webContent .mainHeading, .webContent .article-contents h1 {font-size: 1.8rem;}
    .webContent .largeHeading {font-size:1.4rem;}
    .webContent .subHeading {font-size: 1.25rem;}
    p {font-size: 1rem;}
    .text-xxxl {font-size: 2.6rem !important;}
}
@media screen and (max-width: 767px) {
    *{font-size: 14px;}
    .text-xxxl {font-size: 2rem !important;}
    .webContent .mainHeading, .webContent .article-contents h1 {font-size: 1.65rem;}
    .webContent .largeHeading {font-size:1.3rem;}
    .webContent .subHeading {font-size: 1.2rem;}
    p {font-size: 0.9rem;}
    .w-sm-100 {min-width: 100% !important;width: 100% !important;}
}
/*==================== FONT WIGHT =============================*/
.fw-400 {font-weight: 400 !important;}
.fw-500 {font-weight: 500 !important;}
.fw-600 {font-weight: 600 !important;}
.fw-700 {font-weight: 700 !important;}

/* ----- header navbar toggler ----- */
.navbar-toggler, .navbar-toggler:focus {border: none !important;outline: none !important;box-shadow: none !important;}
.navbar-toggler.collapsed .bi-list {display: block;}
.navbar-toggler .bi-list {display: none;}
.navbar-toggler.collapsed .bi-x-lg {display: none;}
.navbar-toggler .bi-x-lg {display: block;}
/* ----- header navbar toggler end ----- */

/* ----- 3. Reusable layout helpers ----- */
.section { padding-top: var(--ea-section-y); padding-bottom: var(--ea-section-y); }
.section-sm { padding-top: 3.5rem; padding-bottom: 3.5rem; }
.container-tight { max-width: 880px; }

.eyebrow {
  display: inline-block;
  font-family: var(--ea-font-head);
  font-size: .8rem;
  font-weight: 600;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--ea-teal);
  margin-bottom: .85rem;
}
.text-gradient {
  background: var(--ea-gradient);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.lead-ea { font-size: 1.18rem; color: var(--ea-muted); line-height: 1.7; }

/* Section tint band */
.bg-elev { background: var(--ea-bg-tint); }
.bg-tint { background: var(--ea-bg-tint); }

/* Decorative glow blobs */
.glow { position: relative; overflow: hidden; }
.glow::before {
  content: "";
  position: absolute;
  width: 560px; height: 560px;
  top: -220px; right: -120px;
  background: radial-gradient(circle, rgba(43,196,207,.40), transparent 60%);
  filter: blur(20px);
  pointer-events: none; z-index: 0;
}
.glow::after {
  content: "";
  position: absolute;
  width: 460px; height: 460px;
  bottom: -240px; left: -160px;
  background: radial-gradient(circle, rgba(255,213,138,.34), transparent 62%);
  filter: blur(24px);
  pointer-events: none; z-index: 0;
}
.glow > * { position: relative; z-index: 1; }

/* ----- 4. Buttons ----- */
.btn-grad, .btn-grad:hover, .btn-grad:focus {
  background-image: var(--ea-gradient);
  border: none;
  color: #fff !important;
  font-weight: 600;
  box-shadow: var(--ea-shadow-teal);
  transition: transform .16s ease, box-shadow .16s ease, filter .16s ease;
}
.btn-grad:hover, .btn-grad:focus {
  transform: translateY(-2px);
  filter: brightness(1.05);
  box-shadow: 0 18px 38px rgba(30, 145, 151, .42);
}
.btn-outline-soft, .btn-outline-soft:hover, .btn-outline-soft:focus, .btn-outline-soft:active {
  border: 1.5px solid var(--ea-border-strong);
  color: var(--ea-heading);
  background: var(--ea-bg) !important;
  backdrop-filter: blur(6px);
  font-weight: 600;
  transition: background .15s ease, border-color .15s ease, transform .15s ease;
}
.btn-outline-soft:hover {transform: translateY(-2px);}
.btn-light {font-weight: 600;}
.svg-heading-color, .svg-heading-color path {fill: var(--ea-heading);}

/* ------------------------------ Home page ------------------------------ */
/* ----- 5. Cards (component) ----- */
.card-soft {
  background: var(--ea-bg-elev);
  border: 1px solid var(--ea-border);
  border-radius: var(--ea-radius);
  box-shadow: var(--ea-shadow-sm);
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
  height: 100%;
  position: relative;
  overflow: hidden;
}
.card-soft::before {
  content: "";
  position: absolute; inset: 0 0 auto 0; height: 3px;
  background: var(--ea-gradient);
  opacity: 0;
  transition: opacity .2s ease;
}
.card-soft:hover {
  transform: translateY(-8px);
  border-color: var(--ea-border-strong);
  box-shadow: var(--ea-shadow);
}
.card-soft:hover::before { opacity: 1; }
.card-soft .card-body { color: var(--ea-text); }
.card-soft p { color: var(--ea-muted); }

/* Icon chip (component) */
.icon-chip {
  width: 56px; height: 56px;
  display: inline-flex; align-items: center; justify-content: center;
  border-radius: 16px;
  background: var(--ea-gradient-soft);
  color: var(--ea-teal);
  font-size: 1.5rem;
  border: 1px solid var(--ea-border);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.4);
}

/* Badge (component) */
.badge-soft {
  display: inline-flex; align-items: center; gap: .45rem;
  background: var(--ea-gradient-soft);
  border: 1px solid var(--ea-border);
  color: var(--ea-heading);
  padding: .5rem .95rem;
  border-radius: 999px;
  font-size: .82rem;
  font-weight: 600;
}

/* Stat (component) */
.stat-value { font-family: var(--ea-font-head); font-size: 2.8rem; font-weight: 700;padding: 0 12px;}
.stat-label { color: var(--ea-muted); font-size: .92rem;padding: 0 12px;}
.stats-cols:last-child {border: none !important;}

/* Progress (component) */
.progress-ea { height: 7px; background: var(--ea-bg-elev-2); border-radius: 999px; }
.progress-bar-grad { background: var(--ea-gradient); border-radius: 999px; }
.w-78 { width: 78%; }
.w-92 { width: 92%; }

/* ----- 6. Navbar ----- */
.ea-nav {
  background: var(--ea-nav-bg);
  backdrop-filter: saturate(160%) blur(14px);
  border-bottom: 1px solid var(--ea-border);
}
.ea-brand { font-family: var(--ea-font-head); font-weight: 700; font-size: 1.35rem; color: var(--ea-heading); }
.ea-brand:hover { color: var(--ea-heading); }
.ea-brand .brand-dot { color: var(--ea-teal); }
.ea-nav .nav-link { color: var(--ea-muted); font-weight: 500; padding-inline: .95rem; position: relative; }
.ea-nav .nav-link:hover { color: var(--ea-heading); }
.ea-nav .nav-link.active { color: var(--ea-teal-dark); }
.ea-nav .dropdown-menu {
  background: var(--ea-bg-elev);
  border: 1px solid var(--ea-border);
  border-radius: var(--ea-radius-sm);
  box-shadow: var(--ea-shadow);
}
.ea-nav .dropdown-item { color: var(--ea-muted); border-radius: 10px; padding: .6rem .8rem; }
.ea-nav .dropdown-item:hover { background: var(--ea-bg-elev-2); color: var(--ea-heading); }
.dropdown-item-title { display: block; color: var(--ea-heading); font-weight: 600; font-size: .92rem; }
.dropdown-item-desc { display: block; font-size: .78rem; color: var(--ea-muted); }
.theme-toggle {
  width: 42px; height: 42px;
  display: inline-flex; align-items: center; justify-content: center;
  border-radius: 50%;
  border: 1px solid var(--ea-border-strong);
  background: var(--ea-glass);
  color: var(--ea-teal);
  transition: background .15s ease, transform .15s ease;
}
.theme-toggle:hover { background: var(--ea-bg-elev-2); transform: rotate(-12deg); }
.theme-toggle .bi-sun { display: none; }
[data-bs-theme="light"] .theme-toggle .bi-sun { display: inline; }
[data-bs-theme="light"] .theme-toggle .bi-moon-stars { display: none; }

/* ----- 7. Hero ----- */
.hero {
  padding-top: 4rem; padding-bottom: 4rem;
  background-image: var(--ea-hero-image);
  background-repeat: no-repeat;
  background-size: cover;
}
.hero h1, .hero h1 span { font-size: clamp(2.5rem, 5.2vw, 4.1rem); line-height: 1.04; }
.hero-card {
  background: var(--ea-glass);
  backdrop-filter: blur(14px);
  border: 1px solid rgba(255, 255, 255, .55);
  border-radius: var(--ea-radius-lg);
  box-shadow: var(--ea-shadow);
}
[data-bs-theme="dark"] .hero-card { border-color: var(--ea-border); }

/* ----- 8. Logo strip ----- */
.logo-strip { opacity: .8; }
.logo-strip span {
    font-family: var(--ea-font-head);
    font-weight: 600;
    color: var(--ea-muted);
    font-size: 1.4rem;
}

/* ----- 9. Accordion (FAQ) ----- */
.accordion-ea .accordion-item {
  background: var(--ea-bg-elev);
  border: 1px solid var(--ea-border);
  border-radius: var(--ea-radius) !important;
  margin-bottom: 1rem;
  overflow: hidden;
  box-shadow: var(--ea-shadow-sm);
}
.accordion-ea .accordion-button {
  background: var(--ea-bg-elev);
  color: var(--ea-heading);
  font-family: var(--ea-font-head);
  font-weight: 600;
  box-shadow: none;
}
.accordion-button:not(.collapsed)::after{background-image: var(--bs-accordion-btn-icon) !important;}
.accordion-ea .accordion-button:not(.collapsed) { background: var(--ea-bg-elev-2); color: var(--ea-teal); }
.accordion-ea .accordion-button:focus { box-shadow: none; }
.accordion-ea .accordion-button::after { filter: hue-rotate(140deg) saturate(2); }
[data-bs-theme="dark"] .accordion-ea .accordion-button::after { filter: invert(.7); }
.accordion-ea .accordion-body { color: var(--ea-muted); }

/* ----- 10. Forms ----- */
.form-ea .form-control, .form-ea .form-select {
  background: var(--ea-bg-elev);
  border: 1px solid var(--ea-border-strong);
  color: var(--ea-heading);
  border-radius: var(--ea-radius-sm);
  padding: .7rem .9rem;
}
.form-ea .form-control::placeholder { color: var(--ea-muted); }
.form-ea .form-control:focus, .form-ea .form-select:focus {
  border-color: var(--ea-teal);
  box-shadow: 0 0 0 .22rem rgba(30, 145, 151, .16);
  outline: none;
  background: var(--ea-bg-elev);
  color: var(--ea-heading);
}
.form-ea .form-label { color: var(--ea-heading); font-weight: 600; font-size: .9rem; }

/* ----- 11. CTA band ----- */
.cta-band-section {
    background: linear-gradient(180deg, #c2dfe0 0%, #f6fbfb 100%);
    padding: 3px;
    border-radius: var(--ea-radius-lg);
}
.cta-band {
  background: linear-gradient(180deg, #d4eeef 0%, #ffffff 100%);
  border-radius: var(--ea-radius-lg);
  overflow: hidden;
  position: relative;
  /*box-shadow: var(--ea-shadow-teal);*/
}
.cta-band::before {
  content: "";
  position: absolute; inset: 0;
  background: radial-gradient(600px 300px at 85% 120%, rgba(255,255,255,.25), transparent 60%);
  pointer-events: none;
}
.cta-band h2, .cta-band p { color: #fff; position: relative; }
.book-demo-icon1 {
    position: absolute;
    left: 20%;
    bottom: 0;
    width: 300px;
    height: auto;
    z-index: 0;
}

/* ----- 12. Footer ----- */
.ea-footer { background: var(--ea-bg-elev); border-top: 1px solid var(--ea-border); }
.ea-footer h5 { font-size: .95rem; color: var(--ea-heading); }
.ea-footer a { color: var(--ea-muted); }
.ea-footer a:hover { color: var(--ea-teal); }
.ea-footer .footer-bottom { border-top: 1px solid var(--ea-border); color: var(--ea-muted); }
.ea-footer .footer-about { max-width: 320px; }

/* ----- 13. Misc utilities for reuse ----- */
.divider-soft { height: 1px; background: var(--ea-border); border: 0; }
.rounded-ea { border-radius: var(--ea-radius); }
.list-check { list-style: none; padding-left: 0; }
.list-check li { position: relative; padding-left: 1.9rem; margin-bottom: .75rem; color: var(--ea-text); }
.list-check li::before {
  content: "\F26E"; /* bi-check-lg */
  font-family: "bootstrap-icons";
  position: absolute; left: 0; top: 0;
  color: var(--ea-teal);
  font-weight: bold;
}
/* ------------------------------ Home page end ------------------------------ */

/* ------------------------------ Privacy and Security page ------------------------------ */
.sidebar-menu a.active {font-weight: 600;}
.sticky-sidebar{position: sticky;top: 100px;}
/*html[data-bs-theme="dark"] .theme-image {content: url('assets/img/security-dark.png');}*/
/*.theme-image {content: url('assets/img/security-light.png');}*/

/* ------------------------------ Privacy and Security page end ------------------------------ */

/* ------------------------------ Login ------------------------------ */
.fullscreen-bg {background: var(--ea-gradient-soft), url('../img/attestpath_bg.png') center/cover no-repeat;}
.btn {
    text-box-trim: trim-start;
}
.logo-white {
    filter: brightness(0) invert(1);
    max-height: 40px;
    width: auto;
}
.login-card-container {
    max-width: 1100px;
}
.form-check-input {
    outline: 0 !important;
    box-shadow: none !important;
}
.form-check-input:checked {
    background-color: var(--ea-teal-dark) !important;
    border-color: var(--ea-teal-dark) !important;
}
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
    /* Delay the background color change indefinitely */
    transition: background-color 9999s ease-in-out 0s;
}
/* Floating Inputs (User Liked These) */
.custom-input-line {
    background: transparent !important;
    border: none;
    border-bottom: 2px solid #e2e8f0;
    border-radius: 0;
    transition: all 0.3s ease;
    color: var(--color-second) !important;
}
.custom-input-line:focus {
    outline: none;
    box-shadow: none !important;
    border-bottom-color: var(--ea-teal);
}
/* Custom Select Styling for book-demo */
select.form-select.custom-input-line {
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23062018' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e") !important;
    background-repeat: no-repeat !important;
    background-position: right 0px bottom 14px !important;
    background-size: 16px 12px !important;
    color: var(--ink);
    padding-right: 20px !important;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
[data-bs-theme="dark"] select.form-select.custom-input-line {
    color-scheme: dark;
    background: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path fill='none' stroke='%23FFF' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/></svg>") !important;
    background-repeat: no-repeat !important;
    background-position: right 0px bottom 14px !important;
    background-size: 16px 12px !important;
}
option {
    padding: 12px;
    font-size: 1rem;
    color: var(--ea-heading);
    background-color: var(--ea-bg);
}
.custom-floating-wrapper {
    position: relative;
}
.custom-floating-label {
    font-size: 12px;
    font-weight: 500;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    text-transform: uppercase;
    letter-spacing: 1px;
    color: var(--ea-teal-dark) !important;
}
.custom-input-line:focus ~ .custom-floating-label,
.custom-input-line:not(:placeholder-shown) ~ .custom-floating-label {
    top: 0;
    color: var(--color-first);
}
/* Specialized Interactive Elements */
.eye-toggle-btn {
    position: absolute;
    right: 0;
    bottom: 6px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: none;
    cursor: pointer;
    transition: color 0.3s;
    outline: none;
    line-height: 1;
}
.eye-toggle-btn svg,
.eye-toggle-btn .bi {
    width: 1.25rem;
    height: 1.25rem;
}
.eye-toggle-btn:hover {
    color: var(--color-first);
}
/* Custom Validation Box Styling */
.validation-card {
    border-left: 3px solid #dc3545; /* text-danger equivalent */
}
.custom-slider h6 {
    color: var(--ea-cream-2);
}
.author-img {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid rgba(255, 255, 255, 0.3);
}
/* Slick Slider Custom Dots */
.slick-slide {
    height: auto;
}
.slick-dots {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 8px;
    list-style: none;
    padding: 0;
    margin: 1rem 0 0 0;
}
.slick-dots li {
    margin: 0;
}
.slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    width: 6px;
    height: 6px;
    padding: 0;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
    background: var(--color-white-same);
    opacity: 0.5;
    border-radius: 50px;
    transition: all 0.3s ease;
}
.slick-dots li.slick-active button {
    width: 24px;
    opacity: 1;
}
.transform-none {
    transform: none !important;
}
.login-card-container .card-soft.transform-none::before {
    display: none !important;
}
/* ------------------------------ Login end ------------------------------ */

/* ------------------------------ Book a Demo ------------------------------ */
.demo-hero {
    padding: 80px 0 100px;
    position: relative;
    overflow: hidden;
}
.demo-feature-list {
    list-style: none;
    padding: 0;
    margin: 2.5rem 0;
}
.demo-feature-list li {
    display: flex;
    align-items: center;
    gap: 1.2rem;
    margin-bottom: 1.2rem;
    font-size: 1.15rem;
    color: var(--ea-heading);
}
.demo-feature-icon {
    width: 40px;
    height: 40px;
    min-width: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(30, 145, 151, 0.1);
    color: var(--ea-heading, #1E9197);
    font-size: 1.2rem;
}
.social-proof-logos img {
    opacity: 0.6;
    transition: opacity 0.3s ease;
}
.social-proof-logos img:hover {
    opacity: 1;
}
.no-before::before,
.no-after::after {
    display: none !important;
}
.time-slot-btn:is(:hover, .selected) {
    background-color: var(--ea-cyan) !important;
    border-color: var(--ea-border) !important;
}
.calendar-date-item { min-width: 100px; flex-shrink: 0; flex-grow: 1; cursor: pointer;background-color: var(--ea-bg) !important}
/* Bento Grid Classes */
.bg-body-elevated { background: var(--bs-body-bg); }
.bento-blob-primary { width: 300px; height: 300px; background: radial-gradient(circle, rgba(30,145,151,0.15) 0%, rgba(30,145,151,0) 70%); transform: translate(30%, -30%); }
.bento-bg-primary-soft { background: linear-gradient(135deg, rgba(30,145,151,0.05), rgba(30,145,151,0.15)); }
.bento-icon-lg { width: 56px; height: 56px; font-size: 1.5rem; }
.bento-bg-purple-soft { background: linear-gradient(135deg, rgba(102,16,242,0.05), rgba(102,16,242,0.15)); }
.bento-icon-purple { width: 56px; height: 56px; font-size: 1.5rem; color: #6610f2 !important; }
.bento-bg-orange-soft { background: linear-gradient(135deg, rgba(253,126,20,0.05), rgba(253,126,20,0.15)); }
.bento-icon-orange { width: 56px; height: 56px; font-size: 1.5rem; color: #fd7e14 !important; }
.text-primary-brand { color: var(--ea-heading, #1E9197); }
.bento-stat-label { letter-spacing: 1px; font-size: 0.85rem; }
.text-gradient-purple { background: linear-gradient(135deg, #6610f2, #d63384); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.text-gradient-orange { background: linear-gradient(135deg, #fd7e14, #ffc107); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.calendar-dates-carousel { scrollbar-width: none; }
/* ------------------------------ Book a Demo end ------------------------------ */

/* ------------------------------ Framework pages ------------------------------ */
/* Frameworks nav dropdown */
nav.navbar .dropdown-menu { min-width: 320px !important; }
nav.navbar .dropdown-menu .dropdown-item { white-space: normal; }
/* Tabbed feature showcase (component) */
.framework-tabs .nav-pills .nav-link {
    color: var(--ea-muted);
    font-family: var(--ea-font-head);
    font-weight: 600;
    border: 1px solid var(--ea-border);
    background: var(--ea-bg-elev);
    border-radius: 999px;
    padding: .6rem 1.25rem;
    transition: color .15s ease, border-color .15s ease, background .15s ease, box-shadow .15s ease;
}
.framework-tabs .nav-pills .nav-link:hover {
    color: var(--ea-heading);
    border-color: var(--ea-border-strong);
}
.framework-tabs .nav-pills .nav-link.active {
    color: #fff;
    background-image: var(--ea-gradient);
    border-color: transparent;
    box-shadow: var(--ea-shadow-teal);
}
/* Showcase image frame (component) */
.showcase-frame {
    background: var(--ea-glass);
    border: 1px solid var(--ea-border);
    border-radius: var(--ea-radius-lg);
    box-shadow: var(--ea-shadow);
    backdrop-filter: blur(10px);
}
/* Numbered process step card (component) */
.step-card {
    background: var(--ea-bg-elev);
    border: 1px solid var(--ea-border);
    border-radius: var(--ea-radius);
    box-shadow: var(--ea-shadow-sm);
    padding: 1.75rem;
    position: relative;
    overflow: hidden;
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.step-card:hover {
    transform: translateY(-8px);
    border-color: var(--ea-border-strong);
    box-shadow: var(--ea-shadow);
}
.step-num {
    display: inline-flex; align-items: center; justify-content: center;
    width: 54px; height: 54px;
    font-family: var(--ea-font-head);
    font-weight: 700; font-size: 1.25rem;
    color: #fff;
    background-image: var(--ea-gradient);
    border-radius: 16px;
    box-shadow: var(--ea-shadow-teal);
}
.step-card h3 { color: var(--ea-heading); }
.step-card p { color: var(--ea-muted); }
@media screen and (max-width: 480px){
    nav.navbar .dropdown-menu { min-width: 280px !important; }
}
/* ------------------------------ Framework pages end ------------------------------ */

/* ------------------------------ Story Detail pages ------------------------------ */
.story-card {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    height: 100%;
    display: flex;
    flex-direction: column;
}
.story-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--ea-shadow-sm);
}
[data-bs-theme="dark"] .story-card:hover {
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.3);
}
.author-img {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    object-fit: cover;
}
.video-placeholder {
    border-radius: var(--ea-radius-lg);
    overflow: hidden;
    position: relative;
    box-shadow: var(--ea-shadow-sm);
    border: 1px solid var(--ea-border-strong);
}
.play-button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 80px;
    height: 80px;
    background: rgba(255, 255, 255, 0.9);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--ea-teal);
    font-size: 2.5rem;
    box-shadow: 0 10px 30px rgba(0,0,0,0.15);
    transition: transform 0.2s ease;
}
.video-placeholder:hover .play-button {
    transform: translate(-50%, -50%) scale(1.1);
}
.content-section ul {
    padding-left: 1.5rem;
}
.content-section ul li {
    margin-bottom: 0.75rem;
    color: var(--ea-text);
}
.content-section ul li::marker {
    color: var(--ea-teal);
}
/* Reusable Animation Classes */
.animate-fade-up {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.6s ease, transform 0.6s ease;
}
.animate-fade-up.in-view {
    opacity: 1;
    transform: translateY(0);
}
/* Story Detail Specific Styles */
.story-hero {
    padding-bottom: 12rem;
}
.story-hero-overlap {
    margin-top: -10rem;
    position: relative;
    z-index: 10;
}
.story-featured-media-container {
    border: 6px solid var(--ea-bg);
}
.story-featured-media {
    width: 100%;
    aspect-ratio: 21 / 9;
    max-height: 550px;
    object-fit: cover;
}
@media (max-width: 768px) {
    .story-featured-media {
        aspect-ratio: 16 / 9;
    }
}
.story-glass-box {
    /* background: var(--ea-nav-bg); */
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}
.story-glass-box::before {
    border-color: var(--ea-border-strong);
    opacity: 1;
}
.story-sidebar-sticky {
    top: 120px;
    z-index: 9;
}
.story-video-thumbnail {
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    filter: brightness(0.4);
}
/* Typography & Utilities */
.text-serif-spaced { font-family: serif; letter-spacing: 1px; }
.text-tracking-wide { letter-spacing: 1px; }
.text-label-sm { font-size: 0.7rem; letter-spacing: 0.5px; }
.text-shadow-soft { text-shadow: 0 4px 10px rgba(0,0,0,0.5); }
.bg-tint-soft { background: var(--ea-bg-tint); }
.icon-chip-md { width: 42px; height: 42px; font-size: 1.2rem; }
.testimonial-quote { color: var(--ea-heading); line-height: 1.6; }
/* ------------------------------ Story Detail pages end ------------------------------ */

/* ------------------------------ Press Kit pages ------------------------------ */
.press-hero {
    padding-top: 4rem; padding-bottom: 4rem;
    position: relative;
    overflow: hidden;
}
.press-hero::before {
    content: '';
    position: absolute;
    top: 0; left: 0; width: 100%; height: 100%;
    background: radial-gradient(circle at 50% 0%, var(--ea-bg-tint) 0%, var(--ea-bg) 70%);
    z-index: -1;
}
.guideline-list {
    list-style: none;
    padding: 0;
    margin: 0;
}
.guideline-item {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 1.5rem;
    padding-bottom: 1.5rem;
    border-bottom: 1px solid var(--ea-border);
}
.guideline-item:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}
.guideline-icon {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: var(--ea-bg-tint);
    color: var(--ea-teal);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.icon-square {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
}

/* Local Utilities to replace inline CSS */
.press-max-700 { max-width: 700px; }
.press-max-800 { max-width: 800px; }
.press-icon-massive {
    font-size: 15rem;
    color: var(--ea-teal);
    margin-top: -2rem;
    margin-right: -2rem;
}
.press-img-cover {
    max-height: 250px;
    object-fit: cover;
    width: 100%;
}
.text-heading { color: var(--ea-heading) !important; }
/* ------------------------------ Press Kit pages end ------------------------------ */

/* ------------------------------ Customer Stories pages ------------------------------ */
.story-card {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    height: 100%;
    display: flex;
    flex-direction: column;
}
/* Featured Bento Layout Styles */
.bento-card {
    background-color: var(--ea-bg-elev);
    border: 1px solid rgba(0,0,0,0.04);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
[data-bs-theme="dark"] .bento-card {
    border: 1px solid rgba(255,255,255,0.05);
}
.bento-card:hover {
    /* transform: translateY(-4px); */
    box-shadow: var(--ea-shadow);
}
.bento-quote-icon {
    font-size: 12rem;
    line-height: 1;
    margin-top: -3rem;
    margin-right: -1.5rem;
    opacity: 0.05;
}
[data-bs-theme="dark"] .bento-quote-icon {
    opacity: 0.1;
}
.bento-img-container {
    border-radius: 1.5rem;
}
.bento-responsive-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
@media (max-width: 991px) {
    .bento-responsive-img {
        aspect-ratio: 16 / 9;
        height: auto;
    }
}
/* Typography & Utilities */
.text-serif-spaced { font-family: serif; letter-spacing: 1px; }
.text-label-sm { font-size: 0.7rem; letter-spacing: 0.5px; }
.story-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
}
[data-bs-theme="dark"] .story-card:hover {
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.3);
}
.author-img {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    object-fit: cover;
}
/* Reusable Animation Classes */
.animate-fade-up {
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.6s ease, transform 0.6s ease;
}
.animate-fade-up.in-view {
    opacity: 1;
    transform: translateY(0);
}
/* ------------------------------ Customer Stories pages end ------------------------------ */

/* ------------------------------ pages ------------------------------ */
.sidebar-menu a.active {font-weight: 600;}
.sticky-sidebar{position: sticky;top: 100px;}
/* html[data-bs-theme="dark"] .theme-image {content: url('../../assets/img/security-dark.png');} */
/* .theme-image {content: url('../../assets/img/security-light.png');} */
.blog .card-soft{height: 100%;}
.blog .col-lg-6.d-flex.flex-column{height: 100%;}
.featured-post{position: sticky;top: 100px;}
.featured-post ol li{color: var(--ea-teal);}
.btn-request{right:15px;top:15px;}
#processorModal .modal-dialog{max-width: 750px!important;}
.modal-search{height:35px; width: 200px;}
.text-sm{font-size: 15px;}
#processorModal .bi-search{color: var(--ea-teal);}
#processorModal table td, #processorModal table th{color: var(--ea-muted);}
#processorModal tbody td:nth-child(3), #processorModal tbody th:nth-child(3) {width:23%;}
.w-30{max-width: 30px!important;}
#processorModal .form-control:focus{border: 1px solid var(--ea-border-strong);box-shadow: none;}
.progress{height:8px;background:#e5e5e5;}
.progress-bar{background:var(--ea-teal);;}
.step{display:none;}
.step.active{display:block;}
.text-limit-1,.text-limit-2,.text-limit-3,.text-limit-4{overflow: hidden;text-overflow: ellipsis;display: -webkit-box;-webkit-box-orient: vertical;}
.text-limit-1{-webkit-line-clamp: 1;}
.text-limit-2{-webkit-line-clamp: 2;}
.text-limit-3{-webkit-line-clamp: 3;}
.text-limit-4{-webkit-line-clamp: 4;}
/* ------------------------------ pages end ------------------------------ */

/* ------------------------------ Pricing ------------------------------ */
.gradient-pricing {background: linear-gradient(180deg, rgba(255, 240, 212, 0.4) 0%, rgba(255, 255, 255, 0.4) 100%);}
[data-bs-theme="dark"] .gradient-pricing {background: linear-gradient(135deg, rgba(255, 200, 120, 0.08) 0%, rgba(255, 255, 255, 0.02) 100%);}
[data-bs-theme="dark"] { .skyblue-gradient {background: linear-gradient(180deg, rgba(152, 230, 233, 0.18) 0%, rgba(255, 255, 255, 0.18) 100%);} }
.skyblue-gradient {background: linear-gradient(180deg, rgba(152, 230, 233, 0.18) 0%, rgba(255, 255, 255, 0.18) 100%);}
.small-text {font-size: 1rem;}
.light-bg {background: var(--light-bg);}
.light-yellow {background: var(--light-yellow);}
.most-popular {border: 7px solid #fff;}
.list-item-value {padding-left: 22px;}
.pricing-btn {border: 1px solid #20969D;color: #20969D;}
.iconSize-34 {min-width: 34px !important;width: 34px !important;height: 34px !important;}
.iconSize-12 {min-width:12px;width:12px;height:12px;}
.pricing-table table {min-width: 900px;}
.pricing-table th {background-color: var(--light-yellow);border: none;padding-left: 20px;}
.pricing-table td {padding-left: 20px;}
th.growth-heading {background: rgba(32, 150, 157, 0.1);color: #067949;}
.pricing-table table thead tr th:first-child,
.pricing-table table tbody tr td:first-child {position: sticky;left: 0;z-index: 2;min-width: 80px;text-align: left;}
.pricing-table table thead tr th {position: sticky;top: 0;z-index: 1;}
.pricing-table table thead tr th:first-child {z-index: 3;}
.pricing-table table tbody tr td.growth-heading {background: var(--light-blue);color: #067949;}
@media (max-width: 767px) {
    .pricing-table table thead tr th:first-child,
    .pricing-table table tbody tr td:first-child {min-width: 144px;max-width: 144px;width: 120px;font-size: 12px;padding: 8px 6px;}
    .pricing-table table thead tr th, .pricing-table table tbody tr td {min-width: 70px;font-size: 11px;padding: 8px 6px;}
}
/* ------------------------------ Pricing end ------------------------------ */

/* ------------------------------ Features ------------------------------ */
/* ----- Features nav dropdown (wider, like the frameworks menu) ----- */
.dropdown-menu-features { min-width: 320px; }
.dropdown-menu-features .dropdown-item { white-space: normal; }
/* ----- Hero "Live" pulse dot ----- */
.live-dot {
    display: inline-block;
    width: 8px; height: 8px;
    border-radius: 50%;
    background: var(--ea-mint);
    box-shadow: 0 0 0 0 rgba(43, 179, 138, .6);
    animation: ea-pulse 1.8s infinite;
    vertical-align: middle;
}
@keyframes ea-pulse {
    0%   { box-shadow: 0 0 0 0 rgba(43, 179, 138, .55); }
    70%  { box-shadow: 0 0 0 8px rgba(43, 179, 138, 0); }
    100% { box-shadow: 0 0 0 0 rgba(43, 179, 138, 0); }
}
/* ----- Feature detail: grid cards ----- */
.feature-card .icon-chip { transition: transform .2s ease; }
.feature-card:hover .icon-chip { transform: translateY(-2px) rotate(-4deg); }
.feature-card h3 { color: var(--ea-heading); }
/* ----- Related / "more features" link cards ----- */
.related-card { color: var(--ea-text); }
.related-card:hover { color: var(--ea-text); }
.related-card h3 { color: var(--ea-heading); }
.related-card .color-first { transition: gap .15s ease; }
.related-card:hover .bi-arrow-right { transform: translateX(3px); transition: transform .15s ease; }
/* Rotating capability words under the index hero */
.feature-pills { gap: .6rem .75rem; }
.feature-pill {
    display: inline-flex; align-items: center; gap: .45rem;
    background: var(--ea-bg-elev);
    border: 1px solid var(--ea-border);
    color: var(--ea-muted);
    padding: .45rem .9rem;
    border-radius: 999px;
    font-size: .85rem;
    font-weight: 600;
    font-family: var(--ea-font-head);
}
.feature-pill i { color: var(--ea-teal); }
/* Featured (spotlight) card on the index */
.feature-spotlight {
    background: var(--ea-bg-elev);
    border: 1px solid var(--ea-border);
    border-radius: var(--ea-radius-lg);
    box-shadow: var(--ea-shadow-sm);
    overflow: hidden;
    position: relative;
}
.feature-spotlight::before {
    content: "";
    position: absolute; inset: 0 0 auto 0; height: 4px;
    background: var(--ea-gradient);
}
/* Index feature link cards — bottom-anchored CTA, full-card click */
.feature-index-card { color: var(--ea-text); }
.feature-index-card:hover { color: var(--ea-text); }
.feature-index-card .card-body {
    display: flex;
    flex-direction: column;
    height: 100%;
}
.feature-index-card .feature-cta { margin-top: auto; }
.feature-index-card:hover .bi-arrow-right { transform: translateX(3px); transition: transform .15s ease; }
/* ----- Small responsive niceties ----- */
@media screen and (max-width: 575px) {
    .feature-hero h1 { font-size: 2.2rem; }
}
/* ------------------------------ Features end ------------------------------ */

/* ------------------------------ Responsive ------------------------------ */
@media screen and (max-width: 1024px) {
    .logo-strip span {font-size: 1.3rem;}
}
@media screen and (max-width: 991px) {
    :root { --ea-section-y: 4rem; }
    .ea-nav .dropdown-menu { border: none; box-shadow: none; padding-left: .5rem; }
    .ea-nav .nav-link.active::after { display: none; }
    .hero, .press-hero {padding-top: 3.2rem; padding-bottom: 3.2rem;}
    .book-demo-icon1 {width: 220px;}
}
@media screen and (max-width: 767px){
    .border-sm-none {border: none !important}
    .hero, .press-hero {padding-top: 2.5rem; padding-bottom: 2.5rem;}
    .stats-cols:nth-child(2) {border: none !important;}
}
@media screen and (max-width: 575px) {
    .stat-value { font-size: 2.2rem; }
}

/*profile dropdown*/
.profile-wrap {
    .profile-avatar {
        width: 40px;
        height: 40px;
        border-radius: 50%;
        background: var(--ea-gradient);
        color: #fff;
        display: flex;
        align-items: center;
        justify-content: center;
        font-weight: 700;
        font-size: 16px;
        flex: 0 0 auto;
        cursor: pointer;
    }
    svg.bi {
        width: 1em;
        height: 1em;
        vertical-align: -0.125em;
        flex: none;
        display: inline-block;
    }
    .svg-sprite {display: none;}
    .menu {
        position: absolute;
        top: 42px;
        left: auto;
        right: 0;
        z-index: 200;
        min-width: 320px;
        background: var(--ea-bg);
        border: 1px solid var(--ea-sky);
        border-radius: 14px;
        box-shadow: 0 12px 32px -8px rgba(0, 0, 0, .18);
        padding: .5rem;
        display: none;
    }
    .menu.open {display: block;}
    .header-actions .menu {
        top: calc(100% + 8px);
        right: 0;
        min-width: 300px;
        max-width: 320px;
    }
    .menu-item {
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 8px 12px;
        border-radius: var(--ea-radius-sm);
        color: var(var(--ea-heading));
        font-size: 15px;
        text-decoration: none;
        transition: background .15s ease;
        cursor: pointer;
    }
    .menu-item:hover {
        background: rgba(30, 145, 151, .08);
        color: var(--ea-heading);
    }
    .header-actions #profileMenu {
        min-width: 180px;
        max-width: 220px;
    }
    #profileMenu {
        min-width: 180px;
        max-width: 220px;
    }
}

@media screen and (max-width: 1200px){
    .brand-logo {width: 130px;}
}
/*profile dropdown end*/

.textarea-wrapper {margin-top: 48px;}
.textarea-wrapper .custom-floating-label {bottom: -20px;}