/* Shared layout for pages that use the standard WordPress content renderer. */

.forum-safe-page {
    max-width: 1180px;
    margin: 0 auto;
    padding: 42px 20px 70px;
    color: var(--forum-text);
}

/* Keep the complete page canvas white; dark green belongs only to the footer. */
body.page-template-page-teddy-eddie,
body.page-template-page-kursy-standardowe-dla-mlodziezy,
body.page-template-page-kursy-maturalne,
body.page-template-page-kursy-dla-doroslych,
body.page-template-page-teddy-eddie .wrapper,
body.page-template-page-kursy-standardowe-dla-mlodziezy .wrapper,
body.page-template-page-kursy-maturalne .wrapper,
body.page-template-page-kursy-dla-doroslych .wrapper,
body.page-template-page-teddy-eddie .inner-wrapper,
body.page-template-page-kursy-standardowe-dla-mlodziezy .inner-wrapper,
body.page-template-page-kursy-maturalne .inner-wrapper,
body.page-template-page-kursy-dla-doroslych .inner-wrapper,
body.page-template-page-teddy-eddie #main,
body.page-template-page-kursy-standardowe-dla-mlodziezy #main,
body.page-template-page-kursy-maturalne #main,
body.page-template-page-kursy-dla-doroslych #main,
body.page-template-page-teddy-eddie #main-content,
body.page-template-page-kursy-standardowe-dla-mlodziezy #main-content,
body.page-template-page-kursy-maturalne #main-content,
body.page-template-page-kursy-dla-doroslych #main-content,
body.page-template-page-teddy-eddie #primary,
body.page-template-page-kursy-standardowe-dla-mlodziezy #primary,
body.page-template-page-kursy-maturalne #primary,
body.page-template-page-kursy-dla-doroslych #primary {
    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;
}

/* Fallback for page IDs if a caching/plugin layer changes template body classes. */
body.page-id-14892 #main-content,
body.page-id-15562 #main-content,
body.page-id-15467 #main-content,
body.page-id-15698 #main-content {
    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;
}

.forum-safe-page .entry-content {
    color: var(--forum-text);
    line-height: 1.7;
}

.forum-safe-page .entry-content img {
    max-width: 100%;
    height: auto;
}

/* Remove the legacy theme's floating white select decoration everywhere. */
body .selection-box::after {
    display: none !important;
}

/* Course grid & course card styles */
.forum-course-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 28px;
}

.forum-course-card {
    background: #ffffff;
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.05);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.forum-course-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 32px rgba(0, 0, 0, 0.08);
}

.forum-course-card img {
    width: 100%;
    height: 230px;
    object-fit: cover;
    display: block;
    transition: transform 0.35s ease;
}

.forum-course-card:hover img {
    transform: scale(1.03);
}

/* Keep every CTA on the price page consistent with the main site palette. */
body.page-template-page-cennik .forum-safe-page .forum-course-card a,
body.page-template-page-cennik .forum-safe-page a.forum-cta-primary,
body.page-template-page-cennik .forum-safe-page a.forum-cta-secondary,
body.page-template-page-cennik .forum-safe-page a.dt-sc-button,
body.page-template-page-cennik .forum-safe-page a.button,
body.page-template-page-cennik .forum-safe-page a[role="button"],
body.page-template-page-cennik .forum-safe-page a[style*="background" i],
body.page-template-page-cennik .forum-safe-page button,
body.page-template-page-cennik .forum-safe-page input[type="button"],
body.page-template-page-cennik .forum-safe-page input[type="submit"],
body.page-template-page-cennik .forum-safe-page button[type="submit"] {
    background: var(--forum-primary) !important;
    background-color: var(--forum-primary) !important;
    border-color: var(--forum-primary) !important;
    color: var(--forum-on-primary, #FFFFFF) !important;
    text-decoration: none !important;
}

body.page-template-page-cennik .forum-safe-page .forum-course-card a:hover,
body.page-template-page-cennik .forum-safe-page a.forum-cta-primary:hover,
body.page-template-page-cennik .forum-safe-page a.forum-cta-secondary:hover,
body.page-template-page-cennik .forum-safe-page a.dt-sc-button:hover,
body.page-template-page-cennik .forum-safe-page a.button:hover,
body.page-template-page-cennik .forum-safe-page a[role="button"]:hover,
body.page-template-page-cennik .forum-safe-page a[style*="background" i]:hover,
body.page-template-page-cennik .forum-safe-page button:hover,
body.page-template-page-cennik .forum-safe-page input[type="button"]:hover,
body.page-template-page-cennik .forum-safe-page input[type="submit"]:hover,
body.page-template-page-cennik .forum-safe-page button[type="submit"]:hover,
body.page-template-page-cennik .forum-safe-page .forum-course-card a:focus-visible,
body.page-template-page-cennik .forum-safe-page a.forum-cta-primary:focus-visible,
body.page-template-page-cennik .forum-safe-page a.forum-cta-secondary:focus-visible,
body.page-template-page-cennik .forum-safe-page a.dt-sc-button:focus-visible,
body.page-template-page-cennik .forum-safe-page a.button:focus-visible,
body.page-template-page-cennik .forum-safe-page a[role="button"]:focus-visible,
body.page-template-page-cennik .forum-safe-page a[style*="background" i]:focus-visible,
body.page-template-page-cennik .forum-safe-page button:focus-visible,
body.page-template-page-cennik .forum-safe-page input[type="button"]:focus-visible,
body.page-template-page-cennik .forum-safe-page input[type="submit"]:focus-visible,
body.page-template-page-cennik .forum-safe-page button[type="submit"]:focus-visible {
    background: var(--forum-primary-hover, #0F2C21) !important;
    background-color: var(--forum-primary-hover, #0F2C21) !important;
    border-color: var(--forum-primary-hover, #0F2C21) !important;
    color: var(--forum-on-primary, #FFFFFF) !important;
}

@media (max-width: 900px) {
    .forum-course-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 600px) {
    .forum-safe-page {
        padding: 24px 14px 50px;
    }

    /* Keep bright empty areas at the edge of hero photos out of the mobile crop. */
    .forum-safe-page .entry-content img[style*="object-fit: cover"],
    .teddy-eddie-page img[style*="object-fit: cover"] {
        object-position: 35% center !important;
    }
}
