/* Local presentation fixes. Keep these after the original theme styles. */
body { color: #d8d8d4; }
.bg-dark1 { background-color: #202121; background-size: 1920px 93px; }
.bg-dark2 { background-color: #171818; background-size: 1920px 93px; }
body p { line-height: 1.7; }
body p.color-white, body p.opacity-7, body p.opacity-8,
body .price-sub-heading { color: #d8d8d4 !important; opacity: 1; }
body .color-yellow { color: #f5ce38 !important; }
body p.demo-notice {
  color: #deded8 !important; background: #252622; opacity: 1;
  font-size: 14px; line-height: 1.65; padding: 14px 18px;
  border: 1px solid #706b50; border-radius: 6px;
}
body p.demo-notice.container { margin: 0 auto 32px; }
footer #demo-information { max-width: 1110px; margin: 32px auto 0; }
body .demo-feedback { color: #f5f5ee; background: #252622; }
header .navbar-top-default,
header.header-appear .navbar-top-default { background: #1c1d1c; border-bottom: 1px solid #414139; }
header .navbar-top-default .navbar-nav .nav-link { color: #f7f7f2; }
header .logo, footer .logo { color: #fff; }
header .demo-wordmark, footer .demo-wordmark { color: #fff !important; }
header .side-menu.center { background: #1c1d1c !important; }
header .side-menu .nav-link, header .side-menu .text-white { color: #f7f7f2 !important; opacity: 1; }
#home .bg-overlay {
  background: linear-gradient(90deg, rgba(12,15,14,.76) 0%, rgba(12,15,14,.58) 54%, rgba(12,15,14,.20) 100%) !important;
  opacity: 1;
}
#home > .container { padding-top: 125px; padding-bottom: 70px; }
#home p.text-white { color: #f5f5ef !important; opacity: 1; max-width: 740px; }
#home h6 { line-height: 1.5; }
.main-title h2, .about-box h4, .team-classic-content h5,
.news_desc h4, .contact-info h6 { line-height: 1.25; }
.about-box { padding: 36px 22px; max-width: none; }
.team-classic-content { height: 100%; padding: 36px 22px; }
.team-image img { width: 150px; height: 180px; object-fit: cover; }
#js-filters-mosaic-flat { display: flex; justify-content: center; flex-wrap: wrap; gap: 10px; }
#js-filters-mosaic-flat .cbp-filter-item {
  padding: 8px 18px; border: 1px solid #68685d; border-radius: 24px;
  color: #eee; line-height: 1.5;
}
#js-filters-mosaic-flat .cbp-filter-item-active,
#js-filters-mosaic-flat .cbp-filter-item:hover { color: #171818; background: #f5ce38; border-color: #f5ce38; }
.cbp-l-grid-mosaic-flat .cbp-caption-activeWrap { background: rgba(15,18,17,.88); }
.cbp-l-grid-mosaic-flat .cbp-caption-activeWrap p { line-height: 1.4; font-size: 14px; }
.cbp-l-grid-mosaic-flat .cbp-l-caption-title { line-height: 1.2; font-size: 18px; right: 15px; }
.cbp-l-grid-mosaic-flat .work-icon { color: #161616; }
.pricing-item .price h2 { font-size: clamp(34px, 3.5vw, 48px); line-height: 1.2; white-space: nowrap; }
.pricing-item .price .month { display: inline; font-size: 16px; }
.pricing-item .price-sub-heading { display: block; margin-top: 8px; }
.contact-info p { transform: none; margin-top: 6px; }
.contact-info .any-profile { border-color: #5a5a50; }
body .contact-form-textfield .form-control { color: #f7f7f2 !important; border-color: #77786c !important; }
body .contact-form-textfield .form-control::placeholder { color: #cecec5 !important; opacity: 1; }
body .contact-form-textfield .form-control:focus { border-color: #f5ce38 !important; }
.btn-yellow:hover, .btn-yellow:focus-visible { background: #f8da65 !important; color: #111 !important; border-color: #f8da65 !important; }
.news_desc a:hover { color: #f5ce38 !important; }
@media (max-width: 1199px) and (min-width: 992px) {
  .navbar-top-default .navbar-nav .nav-link { margin-left: 7px; margin-right: 7px; font-size: 12px; }
  .navbar .nav-btn-number { padding: 9px 14px; }
}
@media (max-width: 767px) {
  #home .bg-overlay { background: linear-gradient(90deg, rgba(12,15,14,.72), rgba(12,15,14,.48)) !important; }
  #home > .container { padding-top: 135px; padding-bottom: 80px; }
  #home .row { margin-right: 0; }
  #home h1 { font-size: clamp(36px, 10.5vw, 56px) !important; }
  #home .btn-group { display: flex; flex-direction: column; gap: 12px; max-width: 350px; }
  #home .btn-group .btn { margin: 0 !important; width: 100%; }
  .main-title h2 { font-size: 30px; line-height: 1.25; }
  .main-title { margin-bottom: 38px; }
  .pricing-item.active-price, .pricing-item.active-price:hover { transform: none !important; }
  #contact .bg-dark1.p-5, #blog .blog-listing-inner.p-5 { padding: 26px 20px !important; }
  body p.demo-notice.container, footer #demo-information { width: calc(100% - 30px); }
}

/* Refined texture layers retain depth without compromising body-copy contrast. */
body .bg-dark1 {
  background-image: linear-gradient(rgba(24, 25, 25, .38), rgba(24, 25, 25, .38)), url("../img/bg-1.jpg");
}
body .bg-dark2 {
  background-image: linear-gradient(rgba(16, 18, 18, .38), rgba(16, 18, 18, .38)), url("../img/bg-2.jpg");
}
body .team-classic-content p,
body .pricing-item .price-description p,
body .copyrights { opacity: 1; color: #d8d8d4; }
body .team-classic-content .color-yellow { opacity: 1; }
body .btn-yellow { color: #171818 !important; }
a:focus-visible, button:focus-visible, [role="button"]:focus-visible {
  outline: 2px solid #f5ce38; outline-offset: 4px;
}
