.footer-brand-text {
  font-size: 1.75rem;
  font-weight: 700;
  color: #563c12 !important;
  margin-left: 1.25rem;
  letter-spacing: 0.35rem;
}

.footer-brand {
  border-left: 3px solid rgba(255, 255, 255, 0.3);
  padding-left: 1rem;
}
#preloader.image-loader {
  position: fixed;
  inset: 0;
  background-color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
}

#preloader.image-loader .loader-bg {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  inset: 0;
}

#preloader.image-loader .status-mask {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.15);
}

#preloader.image-loader .spinner div {
  background-color: #fff;
}
.service-subtitle {
  display: flex;
  align-items: center;
}

.service-order {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.1rem;
  height: 2.1rem;
  border-radius: 50%;
  background: linear-gradient(135deg, #ff8a00, #ffbd45);
  color: #fff9ed;
  font-weight: 600;
  font-size: 0.95rem;
  margin-right: 0.65rem;
  box-shadow: 0 6px 16px rgba(255, 138, 0, 0.25);
}
:root {
  --color-primary: #ff8a00;
  --color-primary-dark: #e67600;
  --color-secondary: #ffbd45;
  --color-accent: #ffd166;
  --color-deep: #ff6b00;
  --color-soft: #fff6e8;
  --color-soft-strong: #ffe1bd;
}

body {
  background-color: #fffaf3;
  color: #3f2a14;
}

a,
.text-primary {
  color: var(--color-primary) !important;
}

a:hover,
.text-primary:hover {
  color: var(--color-primary-dark) !important;
}

.section.bg-light,
.service-box,
.card.border-0 {
  background-color: var(--color-soft) !important;
}

.navbar-custom {
  background-color: rgba(255, 255, 255, 0.95) !important;
  box-shadow: 0 0.5rem 1.5rem rgba(255, 138, 0, 0.08);
}

.navbar-custom .navbar-nav .nav-link {
  color: rgba(122, 59, 0, 0.55) !important;
  font-weight: 600;
  letter-spacing: 0.3px;
}

.navbar-custom .navbar-nav .nav-link:not(.active):hover {
  color: var(--color-secondary) !important;
}

.navbar-custom .navbar-nav .nav-link:hover,
.navbar-custom .navbar-nav .nav-link:focus,
.navbar-custom .navbar-nav .nav-link.active,
.navbar-custom .navbar-nav .nav-item.active .nav-link {
  color: var(--color-secondary) !important;
}

.navbar-custom .navbar-nav .nav-link.active::after,
.navbar-custom .navbar-nav .nav-item.active .nav-link::after {
  border-color: var(--color-secondary) !important;
}

.navbar-custom .navbar-toggler {
  color: #7a3b00;
  border-color: rgba(122, 59, 0, 0.3);
}

.navbar-custom .navbar-toggler:focus {
  box-shadow: 0 0 0 0.1rem rgba(255, 138, 0, 0.3);
}

.btn-primary {
  background-color: var(--color-primary);
  border-color: var(--color-primary);
  color: #fff;
  box-shadow: 0 0.5rem 1rem rgba(255, 138, 0, 0.2);
}

.btn-primary:hover,
.btn-primary:focus {
  background-color: var(--color-primary-dark);
  border-color: var(--color-primary-dark);
  color: #fff;
}

.btn-outline-primary,
.btn.btn-outline-primary {
  color: #fff7ea !important;
  border-color: rgba(178, 95, 0, 0.9) !important;
  background-color: rgba(178, 95, 0, 0.85) !important;
  box-shadow: 0 0.35rem 1rem rgba(178, 95, 0, 0.25);
}

.btn-outline-primary:hover,
.btn-outline-primary:focus,
.btn-outline-primary:active,
.btn-outline-primary:not(:disabled):not(.disabled).active,
.btn-outline-primary:not(:disabled):not(.disabled):active,
.show > .btn-outline-primary.dropdown-toggle,
.btn.btn-outline-primary:hover,
.btn.btn-outline-primary:focus,
.btn.btn-outline-primary:active,
.btn.btn-outline-primary:not(:disabled):not(.disabled).active,
.btn.btn-outline-primary:not(:disabled):not(.disabled):active,
.show > .btn.btn-outline-primary.dropdown-toggle {
  background-color: var(--color-primary) !important;
  border-color: var(--color-primary) !important;
  color: #fff !important;
  box-shadow: 0 0.35rem 1rem rgba(255, 138, 0, 0.25);
}

.btn-outline-info,
.btn-outline-success,
.btn-outline-warning {
  color: var(--color-secondary);
  border-color: var(--color-secondary);
}

.btn-outline-info:hover,
.btn-outline-success:hover,
.btn-outline-warning:hover {
  background-color: var(--color-secondary);
  border-color: var(--color-secondary);
  color: #7a4600;
}

.badge-primary,
.badge-info,
.badge-success,
.badge-warning,
.badge-danger,
.badge-secondary {
  background: linear-gradient(135deg, #ff8a00, #ffbd45) !important;
  color: #fff !important;
  border: none;
  box-shadow: 0 6px 14px rgba(255, 138, 0, 0.2);
}

.badge-guide,
.badge-expert,
.badge-pro {
  background: linear-gradient(135deg, #ff8a00, #ffbd45);
  color: #fff;
  border: none;
  box-shadow: 0 6px 12px rgba(255, 138, 0, 0.2);
}

.btn-theme {
  background: linear-gradient(135deg, #ff8a00, #ffae3d);
  border: none;
  color: #fff !important;
  box-shadow: 0 10px 25px rgba(255, 138, 0, 0.35);
}

.btn-theme:hover,
.btn-theme:focus {
  background: linear-gradient(135deg, #ff9c21, #ffc166);
  color: #fff !important;
  box-shadow: 0 12px 28px rgba(255, 138, 0, 0.4);
}

.btn-feature-plain {
  background: transparent !important;
  color: var(--color-primary) !important;
  border-color: rgba(255, 138, 0, 0.8) !important;
  background-image: none !important;
  box-shadow: none !important;
}

.btn-feature-plain:hover,
.btn-feature-plain:focus {
  background: rgba(255, 138, 0, 0.12) !important;
  color: var(--color-primary-dark) !important;
}

.feature-card .btn-feature-plain {
  background: transparent !important;
  color: var(--color-primary) !important;
  border-color: rgba(255, 138, 0, 0.8) !important;
  background-image: none !important;
  box-shadow: none !important;
}

.feature-card .btn-feature-plain:hover,
.feature-card .btn-feature-plain:focus {
  background: rgba(255, 138, 0, 0.12) !important;
  color: var(--color-primary-dark) !important;
}

.text-info,
.text-success,
.icon.text-info,
.icon.text-success {
  color: var(--color-secondary) !important;
}

.bg-soft-primary,
.bg-soft-info,
.bg-soft-success,
.bg-soft-warning {
  background-color: rgba(255, 138, 0, 0.12) !important;
  color: var(--color-primary) !important;
}

.vision-title {
  background-color: transparent;
  color: #7a3b00 !important;
}

.service-icon-bg {
  background-color: transparent !important;
}

.service-box {
  border-radius: 20px;
  transition: all 0.4s ease;
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255, 138, 0, 0.18) !important;
  background-color: #fffdf7 !important;
}

.service-box::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.15), transparent);
  transition: left 0.5s;
}

.service-box:hover::before {
  left: 100%;
}

.service-box:hover,
.service-box:focus-within {
  transform: translateY(-10px) scale(1.02);
  box-shadow: 0 25px 50px rgba(255, 138, 0, 0.25) !important;
  border-color: rgba(255, 138, 0, 0.45) !important;
  background-color: #fffaf0 !important;
}

.service-box:active {
  transform: translateY(-6px) scale(1.01);
  box-shadow: 0 18px 36px rgba(255, 138, 0, 0.3) !important;
  border-color: rgba(255, 138, 0, 0.6) !important;
  background-color: #ffe7c7 !important;
}

.service-box:hover .service-title,
.service-box:hover .read-more,
.service-box:hover .service-subtitle,
.service-box:hover .service-box-icon,
.service-box:hover .service-box-icon h2,
.service-box:active .service-title,
.service-box:active .read-more,
.service-box:active .service-subtitle,
.service-box:active .service-box-icon,
.service-box:active .service-box-icon h2 {
  color: #5c320a !important;
  filter: none !important;
  -webkit-filter: none !important;
}

.service-box-icon span,
.avatar-lg span,
.feature-card .avatar-lg span {
  background-color: rgba(255, 138, 0, 0.22) !important;
  color: #7a3b00;
  border: none;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.35);
}

.service-box-icon span h2 {
  color: #7a3b00;
  margin-top: 0.15rem;
}

.hero-1-bg {
  background-color: #fff4e3;
}

.hero-1-bg p,
.hero-1-bg .text-muted {
  color: #4a2a08 !important;
}

.hero-1-bg .hero-note {
  font-size: 1.1rem;
  font-weight: 600;
  letter-spacing: 0.3px;
  color: #5c320a !important;
}

h2 {
  color: #3b2108;
}

h2::after {
  background: linear-gradient(90deg, #ff8a00, #ffbd45) !important;
}

.vision-item::before {
  color: var(--color-deep) !important;
}

.feature-card {
  border: 1px solid rgba(255, 138, 0, 0.15);
}

.vision-content .vision-title {
  color: var(--color-primary) !important;
}

#contact h4,
#contact p,
#contact .badge {
  color: #5c3b16;
}

/* .footer {
  background: linear-gradient(135deg, #b55400, #ff8a00);
}

.footer,
.footer * {
  color: #2e1a07 !important;
}

.footer-link,
.footer a {
  color: #4b2b0e !important;
}

.footer-link:hover,
.footer a:hover {
  color: #2e1a07 !important;
} */

.footer {
  background-color: #5d4037 !important; /* 棕色纯色背景 */
  background-image: none !important; /* 移除原有背景图片 */
  color: #f5f5f5 !important; /* 浅色字体 */
}

.footer,
.footer * {
  color: #f5f5f5 !important; /* 所有子元素使用浅色字体 */
}

.footer-link,
.footer a {
  color: #ffe0b2 !important; /* 链接使用较浅的棕色 */
}

.footer-link:hover,
.footer a:hover {
  color: #fff !important; /* 悬停时使用白色 */
}

