
:root {
  --emerald: #052E16;
  --champagne: #F7E7CE;
  --stone: #78716C;
  --bordeaux: #7F1D1D;
  --paper: #FFF8EA;
}

body {
  background: var(--paper);
  color: var(--stone);
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

h1, h2, h3, h4, h5, h6,
.heading.hbm h1,
.contact_info h3,
.contact_info p strong {
  color: var(--emerald);
}

a, a:hover, a:focus,
a.readmore_btn,
.main_menu ul li a:hover,
.main_menu ul li.current a {
  color: var(--bordeaux);
}

.header_absolute {
  background: linear-gradient(100deg, var(--emerald) 0%, var(--stone) 58%, var(--bordeaux) 100%) !important;
  box-shadow: 0 10px 30px rgba(5, 46, 22, 0.2);
}

.logo {
  max-width: 320px;
}

.logo h3,
.main_menu ul li a {
  color: #fff !important;
}

.welcome_area {
  min-height: 100vh;
  padding: 160px 0 90px;
  background:
    radial-gradient(circle at 84% 22%, rgba(247, 231, 206, 0.6) 0, rgba(247, 231, 206, 0) 26%),
    linear-gradient(135deg, var(--emerald) 0%, #0A3D1E 34%, var(--champagne) 60%, var(--stone) 78%, var(--bordeaux) 100%);
  overflow: hidden;
}

.welcome_area::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(5, 46, 22, 0.88), rgba(5, 46, 22, 0.35), rgba(127, 29, 29, 0.24));
  z-index: -1;
}

.title h1,
.welcome_area .title h1 {
  color: #fff !important;
  text-shadow: 0 4px 24px rgba(0,0,0,.24);
}

.title h6,
.welcome_area .title h6 {
  color: var(--champagne) !important;
}

.primary_bg,
.contact_area {
  background: linear-gradient(135deg, rgba(247,231,206,.72), rgba(255,248,234,.95));
}

.single_core_feature,
.single_about,
.single_more_feature,
.contact_info,
.card,
.legal-box,
.thank-you-box {
  background: rgba(255, 248, 234, 0.92) !important;
  border: 1px solid rgba(120, 113, 108, 0.24);
  border-radius: 18px !important;
  box-shadow: 0 18px 45px rgba(5, 46, 22, 0.08);
}

.single_core_feature,
.single_about,
.single_more_feature {
  min-height: 100%;
}

.single_more_feature {
  padding: 10px;
}

.wow {
  margin-bottom: 10px;
}

.content_box h6,
.more_feature_content h6,
button.btn.btn-link.btn-block.text-left {
  color: var(--emerald) !important;
}

.content_box p,
.heading.hbm p,
.heading p,
.card-body,
.contact_info p,
.footer_pera,
.single_footer li,
.single_footer a,
.copyright p {
  color: var(--stone) !important;
}

button.submit_btn,
a.submit_btn,
button.signup_btn3,
a.signup_btn3,
a.btn4,
.contact_form .btn-primary,
.subscribe_form button.submit_btn,
button.submit_btn.submit_btn2 {
  background: var(--bordeaux) !important;
  color: #fff !important;
  border: 0 !important;
}

button.submit_btn:hover,
a.submit_btn:hover,
.contact_form .btn-primary:hover,
a.btn4:hover {
  background: var(--emerald) !important;
  color: var(--champagne) !important;
}

.contact_form .form-control {
  border-color: rgba(120,113,108,.35) !important;
  background: rgba(255,255,255,.84);
  color: var(--emerald) !important;
}

.contact_form .form-control:focus {
  border-color: var(--bordeaux) !important;
  box-shadow: 0 0 0 3px rgba(127,29,29,.16) !important;
}

.apps img,
.feature_tab_img_right img,
.feature_tab_img_left img,
.mobile_feature_img img,
.mobile_feature_img2 img,
.single_screen img,
.apps_app img {
  border-radius: 28px;
  box-shadow: 0 24px 60px rgba(5,46,22,.22);
}

.footer.footer1 {
  background: var(--emerald);
}

.footer h3,
.footer p,
.footer a,
.footer li,
.copyright p,
.copyright a {
  color: var(--champagne) !important;
}

.copyright {
  background: #031B0D;
}

.cookie-banner-center .cookie-btn.accept,
.cookie-icon,
.toggle-switch input:checked + .slider {
  background: var(--bordeaux) !important;
}

.cookie-banner-center .cookie-btn.manage {
  color: var(--emerald) !important;
  border-color: var(--stone) !important;
}

.cookie-banner-center .cookie-btn.reject {
  color: var(--bordeaux) !important;
}

.legal-page,
.thank-you-page {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 30px;
  background: linear-gradient(135deg, var(--emerald), var(--champagne), var(--stone), var(--bordeaux));
}

.legal-box,
.thank-you-box {
  max-width: 760px;
  padding: 46px;
}

.legal-back {
  margin-bottom: 20px;
}

/* FAQ dot indicators fix */
.faq_area button.btn.btn-link {
  padding-right: 58px;
}

.faq_area button.btn.btn-link::after {
  content: "•" !important;
  font-family: inherit !important;
  font-size: 34px;
  font-weight: 700;
  line-height: 1;
  right: 28px;
  top: 50%;
  color: var(--bordeaux);
  transform: translateY(-50%) !important;
  transition: color 0.25s ease, opacity 0.25s ease;
}

.faq_area button.btn.btn-link[aria-expanded="true"]::after,
.faq_area button.btn.btn-link[aria-expanded=true]::after {
  content: "•" !important;
  color: var(--emerald);
  transform: translateY(-50%) !important;
}
