html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 60px;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
  color: var(--bs-secondary-color);
  text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
  text-align: start;
}

/* Products Modal Styles */
.products-modal-content {
  border-radius: 1rem;
  border: none;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  background-color: #fff;
}

.products-modal-content .modal-header {
  border-bottom: 1px solid #dee2e6;
  border-top-left-radius: 1rem;
  border-top-right-radius: 1rem;
  padding: 1.25rem 1.5rem;
  background-color: #fff;
}

.products-modal-content .modal-body {
  padding: 1.5rem;
}

.products-modal-content .modal-body a {
  color: #333;
  transition: all 0.2s ease;
  display: inline-block;
}

.products-modal-content .modal-body a:hover {
  color: #0d6efd;
  transform: translateX(5px);
}

.products-modal-content .modal-body h6 {
  border-bottom: 2px solid #0d6efd;
  padding-bottom: 0.5rem;
  color: #0d6efd;
}

/* Dark Mode Support for Products Modal */
.dark-mode .products-modal-content {
  background-color: #2b2b2b;
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.5);
}

.dark-mode .products-modal-content .modal-header {
  background-color: #2b2b2b;
  border-bottom: 1px solid #444;
  color: #e0e0e0;
}

.dark-mode .products-modal-content .modal-title {
  color: #e0e0e0;
}

.dark-mode .products-modal-content .btn-close {
  filter: invert(1);
}

.dark-mode .products-modal-content .modal-body {
  background-color: #2b2b2b;
}

.dark-mode .products-modal-content .modal-body a {
  color: #b0b0b0;
}

.dark-mode .products-modal-content .modal-body a:hover {
  color: #5ea3ff;
}

.dark-mode .products-modal-content .modal-body h6 {
  color: #5ea3ff;
  border-bottom: 2px solid #5ea3ff;
}

.dark-mode .modal-backdrop {
  background-color: #000;
}

/* Dark Mode Support for Contact Page */
.dark-mode .card {
  background-color: #2b2b2b;
  border-color: #444;
}

.dark-mode .card-body {
  color: #e0e0e0;
}

.dark-mode .card-title,
.dark-mode .card-header {
  color: #e0e0e0;
  background-color: #2b2b2b;
  border-bottom-color: #444;
}

.dark-mode .form-label {
  color: #b0b0b0;
}

.dark-mode .form-control {
  background-color: #1e1e1e;
  border-color: #444;
  color: #e0e0e0;
}

.dark-mode .form-control:focus {
  background-color: #2b2b2b;
  border-color: #5ea3ff;
  color: #e0e0e0;
}

.dark-mode .form-control::placeholder {
  color: #666;
}

.dark-mode .bg-light {
  background-color: #1e1e1e !important;
}

.dark-mode .captcha-question {
  background-color: #2b2b2b !important;
  border-color: #444 !important;
  color: #5ea3ff !important;
}

.dark-mode .captcha-question strong {
  color: #5ea3ff !important;
}

.dark-mode .alert-success {
  background-color: #1a3d1a;
  border-color: #2d5f2d;
  color: #a8d5a8;
}

.dark-mode .alert-info {
  background-color: #1a2d3d;
  border-color: #2d4a5f;
  color: #a8c5d5;
}

.dark-mode .text-muted {
  color: #a0a0a0 !important;
}

/* Dark Mode Support for Blog */
.dark-mode .breadcrumb {
  background-color: #1e1e1e;
}

.dark-mode .breadcrumb-item a {
  color: #5ea3ff;
}

.dark-mode .breadcrumb-item.active {
  color: #b0b0b0;
}

.dark-mode .blog-content {
  color: #e0e0e0;
}

.dark-mode .blog-content h1,
.dark-mode .blog-content h2,
.dark-mode .blog-content h3,
.dark-mode .blog-content h4,
.dark-mode .blog-content h5,
.dark-mode .blog-content h6 {
  color: #e0e0e0;
}

.dark-mode .blog-content a {
  color: #5ea3ff;
}

.dark-mode .blog-content blockquote {
  border-left-color: #444;
  color: #b0b0b0;
}

.dark-mode .blog-content code {
  background-color: #1e1e1e;
  color: #ff7b72;
  border-color: #444;
}

.dark-mode .blog-content pre {
  background-color: #1e1e1e;
  border-color: #444;
}

.dark-mode .list-group-item {
  background-color: #2b2b2b;
  border-color: #444;
  color: #e0e0e0;
}

.dark-mode .list-group-item:hover {
  background-color: #333;
}

.dark-mode .list-group-item.active {
  background-color: #5ea3ff;
  border-color: #5ea3ff;
}

.dark-mode .list-group-item-action {
  color: #e0e0e0;
}

.dark-mode .pagination .page-link {
  background-color: #2b2b2b;
  border-color: #444;
  color: #5ea3ff;
}

.dark-mode .pagination .page-link:hover {
  background-color: #333;
  border-color: #5ea3ff;
  color: #5ea3ff;
}

.dark-mode .pagination .page-item.active .page-link {
  background-color: #5ea3ff;
  border-color: #5ea3ff;
  color: #fff;
}

.dark-mode .badge {
  filter: brightness(0.85);
}

.dark-mode h1,
.dark-mode h2,
.dark-mode h3,
.dark-mode h4,
.dark-mode h5,
.dark-mode h6 {
  color: #e0e0e0;
}

.dark-mode article header h1 {
  color: #e0e0e0;
}

.dark-mode a:not(.btn):not(.badge):not(.page-link):not(.list-group-item) {
  color: #5ea3ff;
}

.dark-mode a:not(.btn):not(.badge):not(.page-link):not(.list-group-item):hover {
  color: #7eb8ff;
}

