/**
 * @file
 * Subtheme specific CSS.
 * style.css → Handles structure, layout, grid, and positioning.
 */
 /* General Reset */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
  }
  
  /* Wrapper */
  #wrapper {
    width: 100%;
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    background-color: #fff;
  }

  #header-topbar-fullwidth {
    background: #3054c4;
    color: #fff;
    padding-top: 8px;
    padding-bottom: 8px;
}
 
#main-header {
  padding-top: 10px;
  padding-bottom: 10px;
}

.main-publications-section,
.main-statics-section,
.main-popular-videos-section,
.main-marcketplace-section,
#header-topbar,
.main-header-topbar,
#main-header {
    align-items: center;
    width: 1375px;
    margin: auto;
  }
  
  /* Logo */
  #header-left-logo img {
    max-height: 60px;
  }
  
  /* Main Content Layout */
  #main-area {
    flex-grow: 1;
    padding: 30px 0;
    width: 1375px;
  }

  body.path-frontpage #main-content,
  body.path-frontpage #main-area{
    padding-top: 0px;
  }

  body.path-events #main-area{
    padding-top: 0px;
  }
  

  body.path-events,
  body.path-node #main-area{
    padding-top: 0px !important;
  }

  #content-wrapper {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin: auto;
  }
  
  /* Sidebar First */
  #sidebar-first {
    flex: 1;
    min-width: 250px;
    padding: 15px;
  }
  
  /* Content Area */
  #main-content {
    flex: 2;
    padding: 15px;
  }
  
  /* Sidebar Second */
  #sidebar-second {
    flex: 1;
    min-width: 250px;
    padding: 15px;
  }

  .main-our-latest-section,
  .main-publication-section,
  .main-highlight-section,
  .main-about-section {
    width: 1375px;
    margin: auto;
}


.content-container {
  display: flex; /* Use flexbox to align the elements */
  justify-content: space-between; /* Ensures the left and right sections are spaced apart */
  align-items: flex-start; /* Aligns the content vertically at the top */
  flex-wrap: wrap; /* Allows content to wrap if the container is too small */
}

.image-left {
  flex: 1; /* Allows the left image section to take up available space */
  margin-right: 20px; /* Optional: Adds space between the image and text */
  max-height: 472px;
  overflow: hidden;
  border-radius: 12px;
}

.image-left img {
  max-width: 100%;
  height: auto;
}

.text-right {
    flex: 2;
    max-width: 52%;
    padding-left: 64px;
  }
  
h1 {
  font-size: 24px; /* Adjust font size for the title */
  margin-bottom: 15px; /* Adds space below the title */
}

.body-content {
  font-size: 18px; /* Adjust font size for the body */
  line-height: 1.6; /* Adds spacing between lines of text */
  margin-bottom: 15px; /* Adds space below the body content */
  font-weight: 500;
}

.view-node-content {
  margin-top: 20px; /* Adds space above the view_node content */
  font-size: 16px; /* Optional: Adjust font size for the view_node */
}

.body-content p {
  margin-bottom: 40px;
}

  /* Copyright */
  #copyright {
    width: 100%;
    padding: 15px 0;
    font-size: 14px;
    border-top: 1px solid #ddd;
    margin-top: 20px;
  }
  
.node--type-report .view-filters {
  background: linear-gradient(90deg, #f8c6e8, #e2d4f8);
  padding: 30px;
  border-radius: 20px;
  margin-bottom: 30px;
}

.node--type-report .d-flex.flex-wrap {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 20px;
}

.node--type-report .form-type-select {
  flex: 1 1 30%;
  min-width: 250px;
  display: flex;
  flex-direction: column;
}

.node--type-report .form-type-select label {
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 8px;
  color: #333;
}

.node--type-report .form-type-select select.form-select {
  width: 100%;
  padding: 12px 18px;
  border-radius: 30px;
  border: 1px solid #ccc;
  background-color: #ffffff;
  font-size: 15px;
  appearance: none;
}

.node--type-report .form-actions {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

.node--type-report .form-actions .btn-primary {
  background-color: #92278f;
  background-image: none;
  color: white;
  padding: 14px 35px;
  border-radius: 30px;
  font-weight: bold;
  font-size: 16px;
  text-transform: uppercase;
  border: none;
}

.node--type-report .form-actions .btn-primary:hover {
  background-color: #7a1e76;
}

#block-vcda-views-block-publications-list-chapter-authors h2 {     margin-top: 20px;
    margin-bottom: 20px;
    font-size: 16px;
    color: #92278f;
    font-weight: bold;  }


.table-responsive {
  width: 100%;
  border-collapse: collapse;
}

.table-responsive thead {
  background: #1c1c1c;
  color: #ffffff;
}

.table-responsive th, .table-responsive td {
  padding: 15px;
  text-align: center;
  vertical-align: middle;
}

.table-responsive tbody tr:nth-child(odd) {
  background-color: #fff8cc;
}

.table-responsive tbody tr:nth-child(even) {
  background-color: #f4f1ff;
}

.table-responsive img {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  object-fit: cover;
}

.table-responsive .btn.btn-primary {
  display: inline-block;
  padding: 8px 16px;
  background: #00b383;
  color: white;
  text-decoration: none;
  border-radius: 25px;
  font-weight: bold;
  text-transform: uppercase;
  border:none;
}

.table-responsive .btn.btn-primary:hover {
  background: #009973;
}

/* Wrapper styling */
.field--name-field-attachments {
  margin-top: 20px;
  margin-bottom: 20px;
  overflow: hidden;
  width: 100%;
}

/* Each PDF Link item */
.field--name-field-attachments .field__item {
  margin-bottom: 15px;
}

/* Style the actual PDF link */
.field--name-field-attachments .field__item a {
  display: inline-flex;
  align-items: center;
  font-size: 16px;
  color: #00796b; /* Teal or any modern color */
  text-decoration: none;
  font-weight: 500;
  transition: color 0.3s ease;
  display: inline-block;
}

.field--name-field-attachments .field__item a:hover{ text-transform:none; }

/* Add PDF Icon before the link text */
.field--name-field-attachments .field__item a::before {
  content: '';
  display: inline-block;
  background-image: url('/themes/custom/vcda/images/pdf.png'); /* Replace with your actual icon */
  background-size: contain;
  background-repeat: no-repeat;
  width: 30px;
  height: 30px;
  margin-right: 10px;
  vertical-align: middle;
}

/* Hover Effect */
.field--name-field-attachments .field__item a:hover {
  color: #004d40; /* Darker teal on hover */
  text-decoration: underline;
}

.field--name-field-countries {
  margin-top: 10px;
  margin-bottom: 30px;
}

.field--name-field-countries .field__item {
  font-size: 17px;
  line-height: 2;
  color: #333;
  column-count: 2;
  column-gap: 60px;
  text-align: left;
}

.field--name-field-countries .field__item {
  word-break: break-word;
}

@media (max-width: 768px) {
  .field--name-field-countries .field__item {
    column-count: 1;
  }
}

.page-node-1340 .btn-primary { border: 0;background: #00a686;padding: 12px 20px;border-radius: 3px;color: #fff;text-transform: uppercase; transition: all 0.3s ease-in-out; margin-left: 2px; font-weight: 500; font-size: 13px;} 
.page-node-1338 .btn-primary { border: 0;background: #00a686;padding: 12px 20px;border-radius: 3px;color: #fff;text-transform: uppercase; transition: all 0.3s ease-in-out; margin-left: 2px; font-weight: 500; font-size: 13px;} 


/* Wrapper */
.qa-author-wrapper {
  font-family: 'Segoe UI', 'Roboto', sans-serif;
  color: #333;
  background-color: #fff;
  padding: 2rem;
  border-radius: 12px;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.05);
  /*max-width: 900px;*/
  margin: 2rem auto;
  line-height: 1.6;
}

/* Section Containers */
.qa-section {
  /* border: 1px solid #e0e0e0; */
  border-radius: 8px;
  padding: 1.5rem;
  margin-bottom: 2rem;
  background-color: #f9f9f9;
}

/* Section Titles */
.qa-legend {
  margin-bottom: 1rem;
}

.qa-title {
  font-size: 1.75rem;
  color: #00a686;
  font-weight: 600;
  margin: 0;
}

/* Labels (e.g., Subject, Description, Attachments) */
.qa-label {
  font-size: 1.25rem;
  color: #00a686;
  font-weight: 500;
  margin-bottom: 0.5rem;
  border-bottom: 2px solid #e0e0e0;
  padding-bottom: 4px;
}

/* Content Values */
.qa-value {
  font-size: 1rem;
  margin-top: 0.5rem;
  color: #444;
}

/* Field Spacing */
.qa-field {
  margin-bottom: 1.5rem;
}

.qa-field--attachments { margin-top: 59px !important; }

/* Attachments List */
.qa-attachments-list {
  list-style: none;
  padding-left: 0;
  margin: 0.5rem 0 0;
}

.qa-attachment-item {
  margin-bottom: 0.5rem;
}

.qa-attachment-link {
  color: #007b5e;
  text-decoration: none;
  font-weight: 500;
  padding-left: 20px;
  position: relative;
  transition: color 0.3s ease;
}

.qa-attachment-link::before {
  content: "📎";
  position: absolute;
  left: 0;
  top: 0;
}

.qa-attachment-link:hover {
  text-decoration: underline;
  color: #005b3c;
}

/* Response Styling */
.qa-response {
  background-color: #eef9ff;
  border-color: #c6e7f5;
}

.qa-response .qa-title {
  color: #005d91;
}

/* Responsive Design */
@media (max-width: 768px) {
  .qa-author-wrapper {
    padding: 1.2rem;
  }

  .qa-title {
    font-size: 1.5rem;
  }

  .qa-label {
    font-size: 1.1rem;
  }

  .qa-value {
    font-size: 0.95rem;
  }
}
