/* General Styles */
body {
  font-family: "Open Sans", sans-serif;
  line-height: 1.6;
  color: #333;
  background-color: #f8f9fa; /* Light background */
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Roboto", sans-serif;
  color: #212529; /* Darker text for headings */
}

a {
  color: #007bff;
  text-decoration: none;
}

a:hover {
  color: #0056b3;
  text-decoration: underline;
}

.text-primary {
  color: #007bff !important;
}

.text-secondary {
  color: #6c757d !important;
}

.text-warning {
  color: #ffc107 !important;
}

.bg-light-blue {
  background-color: #eaf4f7; /* A very light blue tint for sections */
}

.bg-gradient-light-primary {
  background: linear-gradient(135deg, #eaf4f7 0%, #d0e8f0 100%);
}

.bg-gradient-light-secondary {
  background: linear-gradient(135deg, #f0f4f7 0%, #e2e8ed 100%);
}

/* Hero Section */
.hero-section {
  background-color: #ffffff;
  color: #212529;
  border-bottom: 1px solid #e9ecef;
}

.site-logo {
  max-height: 80px;
  width: auto;
}

.hero-image {
  max-width: 900px;
  width: 100%;
  height: auto;
  margin-top: 2rem;
  border: 5px solid #ffffff;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
}

/* Rating Grid Section */
.offer-logo {
  width: 100%;
  height: 100px;
  object-fit: contain;
  padding: 15px;
}

.product-image {
  max-width: 100%;
  height: auto;
  border: 1px solid #dee2e6;
}

.card {
  transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
}

.card:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
}

.rating-stars i {
  color: #ffc107; /* Bootstrap yellow for stars */
}

/* Comparison Table Section */
.table-responsive {
  border: 1px solid #dee2e6;
}

.table thead th {
  background-color: #343a40;
  color: #fff;
  border-color: #454d55;
}

.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(0, 0, 0, 0.03);
}

.table-hover tbody tr:hover {
  background-color: rgba(0, 0, 0, 0.075);
}

/* User Reviews Section */
.review-avatar {
  width: 60px;
  height: 60px;
  object-fit: cover;
  border: 2px solid #007bff;
}

.review-item .card {
  border-radius: 0.75rem;
}

/* Bonus List Section */
.bonus-image {
  max-width: 100%;
  height: auto;
  border-radius: 0.5rem;
  border: 1px solid rgba(0, 0, 0, 0.1);
}

.countdown {
  font-size: 1.25rem;
  color: #dc3545; /* Red for countdown */
}

/* Contact Form Section */
.form-control:focus {
  border-color: #80bdff;
  box-shadow: 0 0 0 0.25rem rgba(0, 123, 255, 0.25);
}

/* Disclaimer Block */
.disclaimer-section {
  background-color: #f8d7da; /* Light red background */
  border-top: 5px solid #dc3545; /* Red border top */
  padding: 2rem 0;
  margin-top: 3rem; /* Space above footer */
}

.disclaimer-content {
  background-color: #ffffff;
  border: 1px solid #f5c6cb;
  padding: 1.5rem;
  color: #721c24; /* Dark red text */
}

.disclaimer-title {
  color: #dc3545; /* Red title */
  font-size: 1.75rem;
  display: flex;
  align-items: center;
}

.disclaimer-title i {
  font-size: 2rem;
  color: #dc3545;
}

/* Footer Section */
.footer-section {
  background-color: #212529; /* Dark background */
  color: #f8f9fa;
}

.footer-logo {
  max-height: 60px;
  width: auto;
}

.footer-section a {
  color: #adb5bd;
}

.footer-section a:hover {
  color: #ffffff;
}

.footer-logos-container {
  gap: 15px; /* Spacing between logos */
}

.footer-logo-img {
  max-width: 120px; /* Adjusted for 7 images */
  height: auto;
  object-fit: contain;
  filter: none; /* Ensure no grayscale */
  transition: none; /* No hover effects */
}

.footer-img-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
}

/* 18+ icon specific styling */
.footer-logo-img[alt="18 ans et plus"] {
  max-width: 60px; /* Smaller for 18+ */
  height: auto;
  border: 2px solid #dc3545; /* Red border */
  border-radius: 50%;
  padding: 5px;
  background-color: #fff;
}

/* Cookie Banner Styles */
.cookie-banner {
  position: fixed;
  bottom: 0;
  width: 100%;
  background-color: #fff3cd; /* Light yellow background */
  color: #664d03; /* Dark yellow text */
  border-bottom: 1px solid #ffecb5;
  z-index: 1050;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
  display: flex;
  align-items: center;
  justify-content: center;
}

.cookie-banner p {
  font-size: 0.9rem;
}

.cookie-banner .btn {
  font-size: 0.8rem;
  padding: 0.3rem 0.6rem;
}

.cookie-banner .btn-primary {
  background-color: #007bff;
  border-color: #007bff;
}

.cookie-banner .btn-outline-secondary {
  color: #6c757d;
  border-color: #6c757d;
}

.cookie-banner .btn-outline-secondary:hover {
  background-color: #6c757d;
  color: #fff;
}

/* Cookie Modal Styles */
.modal-content {
  border-radius: 0.75rem;
}

.modal-header {
  background-color: #f8f9fa;
  border-bottom: 1px solid #e9ecef;
}

.form-check-input:checked {
  background-color: #007bff;
  border-color: #007bff;
}

.form-check-input:focus {
  box-shadow: 0 0 0 0.25rem rgba(0, 123, 255, 0.25);
}
/* Styles for the main content frame */
.dataTrustFrame {
  padding-top: 3rem; /* Top padding for the main content area */
  padding-left: 1rem; /* Left padding for the main content area */
  padding-right: 1rem; /* Right padding for the main content area */
  /* Consider adding max-width and margin: auto for centering content on larger screens */
  /* max-width: 1200px; */
  /* margin-left: auto; */
  /* margin-right: auto; */
}

/* Heading styles within the dataTrustFrame */
.dataTrustFrame h1 {
  font-size: 2.2rem; /* Moderate size for H1 */
  margin-top: 1.5rem; /* Top margin for H1 */
  margin-bottom: 0.8rem; /* Bottom margin for H1 */
  line-height: 1.2; /* Line height for H1 */
  font-weight: 700; /* Bold font weight for H1 */
  color: #212529; /* Heading color */
}

.dataTrustFrame h2 {
  font-size: 1.8rem; /* Moderate size for H2 */
  margin-top: 1.5rem; /* Top margin for H2 */
  margin-bottom: 0.7rem; /* Bottom margin for H2 */
  line-height: 1.2; /* Line height for H2 */
  font-weight: 600; /* Font weight for H2 */
  color: #212529; /* Heading color */
}

.dataTrustFrame h3 {
  font-size: 1.5rem; /* Moderate size for H3 */
  margin-top: 1.2rem; /* Top margin for H3 */
  margin-bottom: 0.6rem; /* Bottom margin for H3 */
  line-height: 1.3; /* Line height for H3 */
  font-weight: 600; /* Font weight for H3 */
  color: #212529; /* Heading color */
}

.dataTrustFrame h4 {
  font-size: 1.25rem; /* Moderate size for H4 */
  margin-top: 1rem; /* Top margin for H4 */
  margin-bottom: 0.5rem; /* Bottom margin for H4 */
  line-height: 1.4; /* Line height for H4 */
  font-weight: 500; /* Font weight for H4 */
  color: #212529; /* Heading color */
}

.dataTrustFrame h5 {
  font-size: 1rem; /* Moderate size for H5 */
  margin-top: 0.8rem; /* Top margin for H5 */
  margin-bottom: 0.4rem; /* Bottom margin for H5 */
  line-height: 1.5; /* Line height for H5 */
  font-weight: 500; /* Font weight for H5 */
  color: #212529; /* Heading color */
}

/* Paragraph styles within the dataTrustFrame */
.dataTrustFrame p {
  font-size: 1rem; /* Base font size for paragraphs */
  margin-bottom: 1rem; /* Bottom margin for paragraphs */
  line-height: 1.6; /* Line height for paragraphs */
  color: #333; /* Paragraph text color */
}

/* Unordered list styles within the dataTrustFrame */
.dataTrustFrame ul {
  list-style-type: disc; /* Default disc bullet for unordered lists */
  padding-left: 20px; /* Indentation for list items */
  margin-bottom: 1rem; /* Bottom margin for the list */
  color: #333; /* List text color */
}

/* List item styles within the dataTrustFrame */
.dataTrustFrame li {
  font-size: 1rem; /* Font size for list items */
  margin-bottom: 0.5rem; /* Space between list items */
  line-height: 1.6; /* Line height for list items */
}

footer{
    .text-muted{
        color: #ffffffd4 !important;
    }

    a{
        transition: 0.4s linear;

        &:hover,
        &:focus{
            color: #007bff !important;
        }
    }
}

@media (max-width: 768px) {
  .table-responsive table,
  .table-responsive thead,
  .table-responsive tbody,
  .table-responsive th,
  .table-responsive td,
  .table-responsive tr {
    display: block;
    width: 100%;
  }

  /* Скрываем заголовок в мобильной версии */
  .table-responsive thead {
    display: none;
  }

  .table-responsive tr {
    margin-bottom: 1rem;
    border: 1px solid #ddd;
    border-radius: 8px;
    background: #fff;
    padding: 10px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
  }

  .table-responsive td {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px;
    border: none;
    border-bottom: 1px solid #eee;
    font-size: 14px;
  }

  .table-responsive td:last-child {
    border-bottom: none;
  }

  /* Показываем имя колонки перед значением */
  .table-responsive td:before {
    content: attr(data-label);
    font-weight: bold;
    color: #333;
    margin-right: 10px;
  }
}