/* =====================================================
   EPS LANDING POLISH - MODERN ENTERPRISE OVERRIDES
   ===================================================== */

:root {
   --eps-font: "Raleway", Arial, sans-serif;
   --eps-text: #0f172a;
   --eps-muted: #64748b;
   --eps-blue: #0f62fe;
   --eps-blue-dark: #0043ce;
   --eps-cyan: #2bb7f6;
   --eps-green: #16a34a;
   --eps-surface: rgba(255, 255, 255, 0.94);
   --eps-radius: 16px;
   --eps-shadow-sm: 0 8px 22px rgba(15, 23, 42, 0.055);
   --eps-shadow-md: 0 16px 44px rgba(15, 23, 42, 0.09);
   --eps-shadow-lg: 0 24px 70px rgba(15, 23, 42, 0.13);
}

html,
body {
   font-family: var(--eps-font);
   color: var(--eps-text);
   letter-spacing: 0;
   text-rendering: geometricPrecision;
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
}

body {
   background: #f7fafc;
}

h1,
h2,
h3,
h4,
h5,
h6,
.section-title {
   font-family: var(--eps-font);
   color: var(--eps-text);
   letter-spacing: 0;
}

p,
.desk,
.publikasi-desc,
.pelanggan-subtitle,
.eps-contact-subtitle,
.eps-contact-form-desc,
.eps-footer-desc {
   color: var(--eps-muted);
   line-height: 1.75;
}

.section-title,
.is-whyus h2,
.eps-contact-title {
   font-weight: 700;
}

.header {
   background: rgba(255, 255, 255, 0.94);
   border-bottom: 1px solid rgba(15, 23, 42, 0.075);
   box-shadow: 0 1px 0 rgba(15, 23, 42, 0.035);
   backdrop-filter: blur(18px);
   -webkit-backdrop-filter: blur(18px);
}

.header.scrolled {
   background: rgba(255, 255, 255, 0.88);
   box-shadow: 0 10px 34px rgba(15, 23, 42, 0.08);
}

.header-inner {
   min-height: 72px;
   padding-left: 44px;
   padding-right: 44px;
   gap: 32px;
}

.header.scrolled .header-inner {
   min-height: 62px;
}

.header .site-logo img {
   width: 76px;
}

.header.scrolled .site-logo img {
   width: 68px;
}

.header .navbar-nav {
   gap: 4px;
}

.header .navbar-nav > li > a,
.header .navbar-nav > li.active > a,
.header .navbar-nav > li.active > a:hover,
.header .navbar-nav > li.active > a:focus {
   min-height: 42px;
   padding: 0 14px;
   color: #243044 !important;
   font-size: 14px;
   font-weight: 500;
   border-radius: 10px !important;
}

.header .navbar-nav > li > a:hover {
   color: var(--eps-blue) !important;
   background: rgba(15, 98, 254, 0.065) !important;
}

.header .navbar-nav > li.active > a {
   color: var(--eps-blue) !important;
   font-weight: 600;
   background: rgba(15, 98, 254, 0.08) !important;
}

.header .navbar-nav > li.active > a::after {
   background: linear-gradient(90deg, var(--eps-blue), var(--eps-cyan));
}

.header .navbar-nav > li.active > a::before {
   background: var(--eps-blue);
   box-shadow: 0 0 0 4px rgba(15, 98, 254, 0.12);
}

.header .navbar-nav > li.cta > a {
   min-height: 44px;
   background: linear-gradient(135deg, var(--eps-blue) 0%, var(--eps-blue-dark) 100%) !important;
   border-radius: 10px !important;
   box-shadow: 0 10px 24px rgba(15, 98, 254, 0.24) !important;
}

.header .navbar-nav > li.cta > a:hover {
   background: linear-gradient(135deg, #0b5eea 0%, #0036ad 100%) !important;
   box-shadow: 0 16px 32px rgba(15, 98, 254, 0.30) !important;
}

.keunggulan-item,
.fitur-card,
.pelanggan-card,
.pelanggan-summary-item,
.publikasi-card,
.eps-contact-card {
   border: 0 !important;
   border-radius: var(--eps-radius) !important;
   background: var(--eps-surface) !important;
   box-shadow: var(--eps-shadow-sm) !important;
   transition:
      transform 0.32s cubic-bezier(0.16, 1, 0.3, 1),
      box-shadow 0.32s cubic-bezier(0.16, 1, 0.3, 1),
      background 0.28s ease !important;
}

.keunggulan-item:hover,
.fitur-card:hover,
.pelanggan-card:hover,
.pelanggan-summary-item:hover,
.publikasi-card:hover {
   transform: translateY(-6px) !important;
   box-shadow: var(--eps-shadow-md) !important;
}

.fitur-title,
.publikasi-title,
.eps-contact-form-title,
.eps-footer-title {
   color: var(--eps-text);
   font-weight: 700;
}

.fitur-desc,
.publikasi-desc,
.eps-contact-note p,
.eps-contact-submit-note {
   color: var(--eps-muted);
}

.eps-contact-input,
.eps-contact-select {
   border: 1px solid rgba(148, 163, 184, 0.18) !important;
   box-shadow: none !important;
}

.eps-contact-input:focus,
.eps-contact-select:focus {
   border-color: rgba(15, 98, 254, 0.55) !important;
   box-shadow: 0 0 0 4px rgba(15, 98, 254, 0.10) !important;
}

.eps-contact-submit,
.eps-footer-cta-btn {
   background: linear-gradient(135deg, var(--eps-blue), var(--eps-blue-dark)) !important;
   border-radius: 12px;
   box-shadow: 0 14px 30px rgba(15, 98, 254, 0.26);
}

.eps-contact-submit:hover,
.eps-footer-cta-btn:hover {
   background: linear-gradient(135deg, #0b5eea, #0036ad) !important;
   box-shadow: 0 18px 38px rgba(15, 98, 254, 0.32);
}

.eps-contact-section {
   padding-top: 88px !important;
   padding-bottom: 88px !important;
}

.eps-contact-heading {
   margin-bottom: 36px !important;
}

.eps-contact-title {
   margin-bottom: 14px !important;
   font-size: 38px !important;
   font-weight: 700 !important;
}

.eps-contact-title::after {
   width: 58px !important;
   height: 3px !important;
   margin-top: 14px !important;
}

.eps-contact-subtitle {
   max-width: 680px !important;
   font-size: 15px !important;
}

.eps-contact-card {
   max-width: 900px !important;
   padding: 32px 36px !important;
   border-radius: 18px !important;
   background: rgba(255, 255, 255, 0.96) !important;
}

.eps-contact-card::before {
   height: 4px !important;
   background: linear-gradient(90deg, var(--eps-blue), var(--eps-cyan), var(--eps-green)) !important;
}

.eps-contact-card::after {
   opacity: 0.55;
}

.eps-contact-card-inner {
   max-width: 800px !important;
}

.eps-contact-form-title {
   margin-bottom: 6px !important;
   font-size: 23px !important;
   font-weight: 700 !important;
}

.eps-contact-form-desc {
   max-width: 620px !important;
   margin-bottom: 24px !important;
   font-size: 13.5px !important;
}

.eps-contact-grid {
   max-width: 800px !important;
   gap: 16px 18px !important;
}

.eps-contact-label {
   margin-bottom: 7px !important;
   color: #334155 !important;
   font-size: 12.5px !important;
   font-weight: 600 !important;
}

.eps-contact-required {
   color: var(--eps-blue) !important;
}

.eps-contact-input,
.eps-contact-select {
   height: 48px !important;
   padding-left: 14px !important;
   padding-right: 14px !important;
   color: #0f172a !important;
   font-size: 13.5px !important;
   font-weight: 500 !important;
   background: #ffffff !important;
   border: 1px solid rgba(148, 163, 184, 0.24) !important;
   border-radius: 10px !important;
   box-shadow: 0 1px 0 rgba(15, 23, 42, 0.025) !important;
}

.eps-contact-input:hover,
.eps-contact-select:hover {
   border-color: rgba(100, 116, 139, 0.34) !important;
}

.eps-contact-input::placeholder {
   color: #94a3b8 !important;
   font-weight: 400 !important;
}

.eps-contact-error {
   margin-top: 6px !important;
   font-size: 11.5px !important;
   font-weight: 600 !important;
}

.eps-contact-other {
   margin-top: 14px !important;
   padding-top: 14px !important;
   border-top: 1px solid rgba(148, 163, 184, 0.16);
}

.eps-contact-alert {
   margin-bottom: 16px !important;
   padding: 12px 14px !important;
   border-radius: 10px !important;
   font-size: 12.5px !important;
   font-weight: 600 !important;
}

.eps-contact-submit-row {
   max-width: 800px !important;
   margin-top: 24px !important;
   justify-content: flex-end !important;
}

.eps-contact-submit {
   min-height: 46px !important;
   padding-left: 24px !important;
   padding-right: 24px !important;
   border-radius: 10px !important;
   font-size: 13.5px !important;
   font-weight: 700 !important;
}

@media (max-width: 767px) {
   .eps-contact-section {
      padding-top: 72px !important;
      padding-bottom: 72px !important;
   }

   .eps-contact-title {
      font-size: 30px !important;
   }

   .eps-contact-card {
      padding: 26px 18px !important;
      border-radius: 16px !important;
   }

   .eps-contact-submit-row {
      justify-content: stretch !important;
   }
}

.pelanggan-logo-wrap img {
   opacity: 0.78;
}

.pelanggan-card:hover .pelanggan-logo-wrap img {
   transform: scale(1.04);
}

.is-keunggulan,
.is-fitur,
.is-pelanggan,
.is-publikasi,
.eps-contact-section {
   background:
      radial-gradient(circle at 10% 18%, rgba(15, 98, 254, 0.075), transparent 26%),
      radial-gradient(circle at 88% 16%, rgba(22, 163, 74, 0.055), transparent 24%),
      linear-gradient(180deg, #f6f9fc 0%, #ffffff 48%, #f3f8fc 100%) !important;
}

@media (max-width: 991px) {
   .header-inner {
      min-height: 68px;
      padding-left: 22px;
      padding-right: 22px;
   }
}
