/*
Theme Name: Best Summer Courses
Theme URI: https://bestsummercourses.com
Author URI: https://bestsummercourses.com
Description: Custom theme for BestSummerCourses.com
Version: 1.0
Text Domain: bestsummercourses
*/


* {
    margin: 0;
    padding: 0;
}

body,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
p {
    margin: 0;
    padding: 0;
    font-family: "Poppins", sans-serif;
}
p {
    margin-bottom: 20px;
}
body {
    width: 100%;
    overflow-x: hidden;
}

.theme-container {
    width: 1220px;
    margin: 0 auto;
}

/* ----------------------------------------------------
   BLOG / ARTICLE TYPOGRAPHY
   ---------------------------------------------------- */

/* Default readable content width for long-form text */
.article-content,
.single-post-section .prose,
.single-post-section article .prose {
    max-width: 760px;
    margin-left: auto;
    margin-right: auto;
}

/* Paragraphs */
.article-content p,
.single-post-section .prose p {
    font-size: 16px;
    line-height: 1.7;
    color: #444;
    margin-bottom: 1.4em;
}

/* Headings */
.article-content h1,
.article-content h2,
.article-content h3,
.article-content h4,
.article-content h5,
.article-content h6,
.single-post-section .prose h1,
.single-post-section .prose h2,
.single-post-section .prose h3,
.single-post-section .prose h4,
.single-post-section .prose h5,
.single-post-section .prose h6 {
    font-weight: 600;
    color: #1A2249;
    margin-top: 1.6em;   /* good spacing above headings */
    margin-bottom: 0.6em;
    line-height: 1.3;
}

.article-content h1,
.single-post-section .prose h1 {
    font-size: 32px;
}
.article-content h2,
.single-post-section .prose h2 {
    font-size: 28px;
}
.article-content h3,
.single-post-section .prose h3 {
    font-size: 24px;
}
.article-content h4,
.single-post-section .prose h4 {
    font-size: 20px;
}

/* Lists */
.article-content ul,
.article-content ol,
.single-post-section .prose ul,
.single-post-section .prose ol {
    margin: 1.2em 0 1.4em 1.4em;
    line-height: 1.7;
}

.article-content li,
.single-post-section .prose li {
    margin-bottom: 0.4em;
}

/* Blockquotes */
.article-content blockquote,
.single-post-section .prose blockquote {
    border-left: 4px solid #1A90A1;
    padding-left: 16px;
    margin: 1.6em 0;
    color: #555;
    font-style: italic;
}

/* Images inside content */
.article-content img,
.single-post-section .prose img {
    max-width: 100%;
    border-radius: 12px;
    margin: 1.6em 0;
}

/* Links */
.article-content a,
.single-post-section .prose a {
    color: #1A90A1;
    text-decoration: underline;
}

.article-content a:hover,
.single-post-section .prose a:hover {
    color: #0d6f79;
}

/* Code blocks (optional, in case you ever add any) */
.article-content pre,
.single-post-section .prose pre {
    background: #f5f5f5;
    padding: 12px 16px;
    border-radius: 8px;
    overflow-x: auto;
    margin: 1.6em 0;
}

.article-content code,
.single-post-section .prose code {
    background: #f5f5f5;
    padding: 2px 4px;
    border-radius: 4px;
}


.green {
    color: #2596BE;
}

.bg-green {
    background-color: #2596BE;
}

.border-green {
    border-color: #2596BE;
}

.dark-green {
    color: #1A90A1;
}

.bg-dark-green {
    background-color: #1A90A1;
}

.border-dark-green {
    border-color: #1A90A1;
}

.blue {
    color: #1A2249;
}

.bg-blue {
    background-color: #1A2249;
}

.border-blue {
    border-color: #1A2249;
}

.trip-sans {
    font-family: 'TripSans', sans-serif;
}

.slider-container {
    width: 100% !important;
    padding-left: 20px !important;
}

.steps-courses .step-course-box:nth-child(odd) {
    direction: rtl;
}

.steps-courses .step-course-box:nth-child(odd) .step-course-text {
    direction: ltr;
}


/* single camps related image css */
.related-camps-gird .feature-program-card a img {
    min-height: 237px;
    object-fit: cover;
    max-height: 237px;
}


.animate-slide-in {
    animation: slideInFadeIn 0.35s ease forwards;
}
.animate-slide-out {
    animation: slideOutFadeOut 0.25s ease forwards;
}
@keyframes slideInFadeIn {
    from {
        opacity: 0;
        transform: translateX(80px) scale(0.95);
    }
    to {
        opacity: 1;
        transform: translateX(0) scale(1);
    }
}

@keyframes slideOutFadeOut {
    from {
        opacity: 1;
        transform: translateX(0) scale(1);
    }
    to {
        opacity: 0;
        transform: translateX(80px) scale(0.95);
    }
}

/* single camps */
.camps-summary p:not(:first-child), .tabs-details p:not(:first-child) {
    margin-top: 16px;
}

@media (max-width: 1279px) {
    .theme-container {
        width: 970px;
    }
}

@media (max-width: 1023px) {
    .theme-container {
        width: calc(100% - 40px);
    }
}

@media (max-width: 767px) {
    .steps-courses .step-course-box:nth-child(odd) {
        direction: ltr;
    }
}

/* ===============================
   Best Generic Content – Table
   Brand Colors Applied
================================ */
.best-generic-content .bsc-compare {
  overflow-x: auto;
  margin-top: 24px;
}

/* Table base */
.best-generic-content .bsc-table {
  width: 100%;
  min-width: 1100px;
  border-collapse: collapse;
  background: #ffffff;
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid rgba(26, 34, 73, 0.1);
}

/* Header */
.best-generic-content .bsc-table thead th {
  background: #1a2249;
  color: #ffffff;
  font-size: 14px;
  font-weight: 600;
  text-align: left;
  padding: 14px 16px;
  white-space: nowrap;
  text-align:center;
}

/* Body cells */
.best-generic-content .bsc-table tbody td {
  font-size: 14px;
  line-height: 1.5;
  color: #1a2249;
  padding: 14px 16px;
  border-bottom: 1px solid rgba(26, 34, 73, 0.08);
  vertical-align: top;
}

/* Zebra rows */
.best-generic-content .bsc-table tbody tr:nth-child(even) {
  background: rgba(118, 209, 255, 0.08);
}

/* Hover state */
/*.best-generic-content .bsc-table tbody tr:hover {
  background: rgba(118, 209, 255, 0.18);
}
*/
/* Programme title emphasis */
.best-generic-content .bsc-table strong {
  color: #000029;
  font-weight: 600;
}

/* Links */
.best-generic-content .bsc-table a {
  color: #1a2249;
  font-weight: 600;
  text-decoration: none;
/*  border-bottom: 1px solid rgba(26, 34, 73, 0.3);*/
}

.best-generic-content .bsc-table a:hover {
  color: #000029;
  border-bottom-color: #76d1ff;
}

/* Fees column */
.best-generic-content .bsc-table td:nth-child(8) {
  font-weight: 600;
  color: #000029;
  white-space: nowrap;
}

/* "More Info" column subtle CTA */
.best-generic-content .bsc-table td:last-child a {
  color: #1a2249;
}

/*.best-generic-content .bsc-table td:last-child a:hover {
  color: #76d1ff;
}
*/
/* Mobile */
@media (max-width: 1024px) {
  .best-generic-content .bsc-table thead th,
  .best-generic-content .bsc-table tbody td {
    padding: 12px 14px;
    font-size: 13px;
  }
}
