body {
  font-family: 'Arial', sans-serif;
  line-height: 1.6;
  color: #E6E6FA;
  background: #121212;
  overflow-x: hidden;
}

body::before {
  content: '';
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background:
    radial-gradient(circle at 20% 80%, rgba(106, 90, 205, 0.3) 0%, transparent 50%),
    radial-gradient(circle at 80% 20%, rgba(129, 216, 208, 0.3) 0%, transparent 50%),
    radial-gradient(circle at 40% 40%, rgba(255, 182, 193, 0.2) 0%, transparent 50%);
  z-index: -1;
  animation: backgroundShift 20s ease-in-out infinite;
}

@keyframes backgroundShift {

  0%,
  100% {
    opacity: 1;
  }

  50% {
    opacity: 0.7;
  }
}

.header-transparent,
.header {
  background: rgba(18, 18, 18, 0.9) !important;
  border-bottom: 1px solid rgba(129, 216, 208, 0.3);
}

.logo span,
.logo a,
.logo h1 {
  color: #81D8D0 !important;
  font-weight: 900;
  letter-spacing: 4px;
  text-transform: uppercase;
}

.nav-menu>ul>li>a {
  color: #6A5ACD !important;
  font-weight: 600;
  padding: 1rem 2rem;
  border-radius: 0;
  text-transform: uppercase;
  font-size: 0.9rem;
  letter-spacing: 2px;
  transition: all 0.5s;
  position: relative;
  overflow: hidden;
  clip-path: polygon(0 0, 100% 0, 85% 100%, 0% 100%);
}

.nav-menu>ul>li>a::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, #6A5ACD, #00FA9A);
  transition: all 0.5s;
  z-index: -1;
}

.nav-menu>ul>li>a:hover::before {
  left: 0;
}

.nav-menu>ul>li>a:hover {
  color: #121212 !important;
  background: none !important;
  transform: translateY(-3px) skewX(-5deg);
  box-shadow: 0 10px 30px rgba(106, 90, 205, 0.4);
}

.btn-get-started,
.cta-button {
  display: inline-block;
  padding: 1.5rem 4rem;
  background: #81D8D0;
  color: #121212 !important;
  border-radius: 0;
  font-weight: 900;
  font-size: 1.2rem;
  transition: all 0.5s;
  position: relative;
  overflow: hidden;
  box-shadow: 0 15px 35px rgba(129, 216, 208, 0.4);
  text-transform: uppercase;
  letter-spacing: 3px;
  clip-path: polygon(0 0, 100% 0, 90% 100%, 10% 100%);
  border: 3px solid transparent;
}

.btn-get-started::before,
.cta-button::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, #FF6347, #FF1493);
  transition: all 0.5s;
  z-index: -1;
}

.btn-get-started:hover::before,
.cta-button:hover::before {
  left: 0;
}

.btn-get-started:hover,
.cta-button:hover {
  transform: translateY(-8px) scale(1.05);
  box-shadow: 0 25px 50px rgba(255, 99, 71, 0.5);
  border-color: #FF6347;
  color: #E6E6FA !important;
}

section,
.section-bg {
  background: #121212 !important;
  color: #E6E6FA !important;
}

.icon-box,
.company-info,
.info-box,
.feature-card,
.gallery-item {
  background: #fff !important;
  color: #444 !important;
  border-radius: 10px !important;
  box-shadow: 0 5px 26px 0 rgba(68, 88, 144, 0.14) !important;
  border: 1px solid #fff !important;
  margin-bottom: 60px;
  clip-path: none !important;
}

.icon-box .icon,
.feature-icon {
  font-size: 3rem;
  color: #68A4C4 !important;
  margin-bottom: 1rem;
  transition: all 0.6s;
  display: inline-block;
}

.icon-box:hover,
.feature-card:hover,
.gallery-item:hover {
  border-color: #68A4C4 !important;
  box-shadow: 0 10px 30px rgba(104, 164, 196, 0.2) !important;
  transform: none !important;
}

.icon-box:hover .icon,
.feature-card:hover .feature-icon {
  color: #68A4C4 !important;
  transform: none !important;
  filter: none !important;
}

.section-title,
h2 {
  color: #81D8D0 !important;
  text-align: center;
  font-size: 3rem;
  margin-bottom: 2rem;
  text-transform: uppercase;
  letter-spacing: 4px;
  font-weight: 900;
  position: relative;
}

.section-title::after,
h2::after {
  content: '';
  display: block;
  margin: 1rem auto 0 auto;
  width: 120px;
  height: 4px;
  background: linear-gradient(90deg, #FF1493, #81D8D0, #6A5ACD, #FF6347);
  background-size: 300% 100%;
  animation: gradientMove 3s ease-in-out infinite;
}

@keyframes gradientMove {

  0%,
  100% {
    background-position: 0% 50%;
  }

  50% {
    background-position: 100% 50%;
  }
}

.footer,
#footer {
  background: linear-gradient(135deg, #121212 0%, #6A5ACD 100%) !important;
  color: #E6E6FA !important;
  padding: 5rem 0 2rem;
  position: relative;
}

#footer .footer-top,
#footer .footer-bottom,
.footer-bottom {
  border-top: 1px solid #6A5ACD;
  padding-top: 2rem;
  text-align: center;
  opacity: 0.8;
}

/* 响应式 */
@media (max-width: 768px) {
  .nav-menu>ul>li>a {
    padding: 0.7rem 1rem;
    font-size: 0.8rem;
  }

  .section-title,
  h2 {
    font-size: 2rem;
  }
}

/* 修正导航栏菜单溢出和隐藏问题 */
.nav-menu>ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  width: 100%;
  overflow-x: auto;
  white-space: nowrap;
  background: none;
  margin: 0;
  padding: 0;
}

.nav-menu>ul>li {
  float: none !important;
  display: inline-block;
  white-space: nowrap;
  margin: 0 0.2em;
}

@media (max-width: 992px) {
  .nav-menu>ul {
    flex-direction: column;
    align-items: flex-start;
  }

  .nav-menu>ul>li {
    display: block;
    margin: 0.5em 0;
  }
}

/* Footer标题和内容左对齐 */
#footer .footer-top .footer-links h4,
#footer .footer-top .footer-contact h4,
#footer .footer-top .footer-info h3,
#footer .footer-top .footer-links ul,
#footer .footer-top .footer-contact p,
#footer .footer-top .footer-info p {
  text-align: left !important;
}

#footer .footer-top .footer-links ul,
#footer .footer-top .footer-contact p,
#footer .footer-top .footer-info p {
  margin-left: 0 !important;
}

@media (max-width: 768px) {

  #footer .footer-top .footer-links,
  #footer .footer-top .footer-contact,
  #footer .footer-top .footer-info {
    text-align: left !important;
  }
}

.icon {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  min-height: 72px;
  font-size: 3rem;
}

#services .row {
  margin-top: 40px;
  margin-bottom: 20px;
}

.privacy-modal {
  display: none;
  position: fixed;
  z-index: 9999;
  left: 0;
  top: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.55);
  align-items: center;
  justify-content: center;
}

.privacy-modal-content {
  background: #fff;
  color: #222;
  max-width: 1100px;
  width: 98vw;
  border-radius: 20px;
  box-shadow: 0 16px 64px rgba(0, 0, 0, 0.22);
  padding: 3.5em 3em 2.5em 3em;
  position: relative;
  margin: 60px auto;
  font-size: 1.35em;
}

.privacy-modal-content p {
  font-size: 1.22em;
}

.privacy-modal-title {
  text-align: center;
  font-size: 2.3em;
  text-decoration: underline;
  margin-bottom: 1.3em;
}

#privacyModalCloseBtn {
  background: linear-gradient(90deg, #6A5ACD 0%, #81D8D0 100%);
  color: #fff;
  border: none;
  border-radius: 30px;
  padding: 0.7em 2.8em;
  font-size: 1.15em;
  font-weight: 700;
  box-shadow: 0 2px 8px rgba(106, 90, 205, 0.13);
  transition: background 0.3s, color 0.3s, box-shadow 0.3s;
  cursor: pointer;
  letter-spacing: 0.08em;
  margin-top: 2.2em;
  z-index: 10;
  display: none;
}

#privacyModalCloseBtn.show {
  display: inline-block;
}
