/*
Theme Name: Custom
Theme URI: https://wordpress.org/themes/twentytwentyfive/
Author: the WordPress team
Author URI: https://wordpress.org
Description: Twenty Twenty-Five emphasizes simplicity and adaptability. It offers flexible design options, supported by a variety of patterns for different page types, such as services and landing pages, making it ideal for building personal blogs, professional portfolios, online magazines, or business websites. Its templates cater to various blog styles, from text-focused to image-heavy layouts. Additionally, it supports international typography and diverse color palettes, ensuring accessibility and customization for users worldwide.
Requires at least: 6.7
Tested up to: 6.7
Requires PHP: 7.2
Version: 1.1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: custom
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, style-variations, accessibility-ready, blog, portfolio, news
*/

/*
 * Link styles
 * https://github.com/WordPress/gutenberg/issues/42319
 */
a {
    text-decoration-thickness: 1px !important;
    text-underline-offset: .1em;
}

.flex-control-nav {
    display: none !important;
}

.landing-banner {
    flex-direction: row;
}

/* 
.ms-image {
    margin-bottom: 10vh !important;
} */

.caption-wrap {
    /* position: relative !important; */
    /* padding-bottom: 10vh !important; */
}

.flex-control-nav {
    /* margin-bottom: -3.5rem !important; */
}

.flex-control-nav a {
    /* color: black !important; */
}

.newsletter-container label {
    font-size: 1rem !important;
}

@media(max-width: 800px) {
    .nav-override {
        padding-left: 1rem;
        padding-right: 1rem;
    }
}

.newsletter-container {
    align-self: start !important;
    display: flex;
    flex-direction: column;
    width: 100% !important;
    justify-content: start !important;
    align-items: start !important;
}

.caption {
    /* position: absolute; */
    /* top: 0 !important; */
    margin-bottom: -0.9rem;
    line-height: 1.3 !important;
    width: 90%;
    text-align: start !important;
    font-size: 1rem !important;
    /* font-weight: 600 !important; */
}

@media (max-width: 675px) {
    .caption {
        margin-bottom: -2rem;

    }
}

@media (max-width: 1200px) {
    .landing-banner {
        flex-direction: column;
    }
}

.logo-background-cover {
    /* background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    background-image: url('/wp-content/uploads/2025/03/cropped-logo.png'); */
    font-weight: 700 !important;
}

.nav-override {
    align-items: baseline !important;
}

.film-info {
    display: flex;
    flex-direction: row;
    margin-bottom: 1rem;
    gap: 0.2rem;
    flex-wrap: wrap;
}

.film-info p {
    font-size: 0.9rem;
    font-weight: 100;
}

.sbi_bio {
    display: none;
}

.owl-prev {
    width: 70px !important;
    margin-left: -20px !important;
    top: 40% !important;
}

.owl-next {
    width: 70px !important;
    margin-right: -20px !important;
    top: 40% !important;
}

@media (max-width: 768px) {
    .owl-prev {
        width: 40px !important;
        margin-left: -20px !important;
        top: 40% !important;
    }

    .owl-next {
        width: 40px !important;
        margin-right: -20px !important;
        top: 40% !important;
    }
}

.owl-next:focus {
    outline: none !important;
    border: 0 !important;
    box-shadow: none !important;
    filter: none !important;
}

.owl-prev:focus {
    outline: none !important;
    border: 0 !important;
    box-shadow: none !important;
    filter: none !important;
}

/* .carousel-slider-nav-icon {
    width: 120%;
    height: 120%;
    align-self: center;
} */
/* body {
    width: 50vw !important;
    margin: auto;
}

@media (max-width: 1600px) {
    body {
        width: 70vw !important;
        margin: auto;
    }
}

@media (max-width: 1200px) { */
body {
    width: 80vw !important;
    margin: auto;
}

a:focus {
    outline: none !important;
    border: 0 !important;
    box-shadow: none !important;
    filter: none !important;
}

.main-container {
    height: fit-content;
}

.tag {
    display: inline-block;
    background-color: #f1f1f1;
    /* Light grey background */
    color: #333;
    /* Dark text for contrast */
    padding: 5px 10px;
    margin: 3px;
    border-radius: 15px;
    font-size: 1rem;
    font-weight: 500;
}

.footer-newsletter {
    display: flex;
    flex-direction: row;
    justify-content: flex-end !important;
    align-items: flex-end;
    align-self: flex-end;
    gap: 10px;
}

@media (max-width: 900px) {
    .nav-container-override {
        width: 90%;
        margin: auto;
    }
    .nav-override {
        border-bottom: 2px solid black;
    }
    .footer-p {
        text-align: center !important;
    }

    .footer-icons {
        display: flex;
        justify-content: center !important;
        gap: 10px;
    }

    .footer-grid {
        /* grid auto */
        grid-template-columns: repeat(1, 1fr);
    }

    .footer-newsletter {
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        align-items: center !important;
        align-self: center !important;
    }
}

.return-arrow {
    position: sticky;
    height: 24px;
    width: 48px;
    margin-right: 20px;
    margin-left: 10px;
    left: 0;
    top: var(--topbar-height, 10vh);
    object-position: left;
    object-fit: contain;
}

.inner-spacer {
    display: block;
    height: 250px;
}

.spacer {
    display: block;
    height: 15px;
}

.movie-container {
    display: flex;
    flex-direction: row;
    width: 98%;
    height: fit-content;
    margin: 0;
}

/* Left Side (Fixed) */
.movie-cover-container {
    flex: 1;
    width: 50vw;
    position: sticky;
    top: var(--topbar-height, 10vh);
    left: 0;
    height: 80vh;
    display: flex;
    align-items: start;
    justify-content: start;
}

.movie-cover {
    position: sticky;
    height: 80vh;
    width: 50vw;
    left: 0;
    top: var(--topbar-height, 10vh);
    object-position: right;
    object-fit: contain;
}

@media (max-width: 1450px) {
    .movie-cover {
        height: 72vh;
    }

    .movie-info p {
        font-size: 0.9rem !important;
    }
}

/* Right Side (Scrollable) */
.movie-info {
    height: fit-content;
    display: flex;
    width: 100%;
    flex-direction: column;
    padding: 20px;
    padding-top: 0px;
    padding-bottom: 0px;
}

.movie-trailer {
    height: 100%;
    aspect-ratio: 16/9;
}

@media (max-width: 820px) {
    .movie-trailer {
        height: 25vh;
    }
}

@media (max-width: 1200px) {
    .footer-grid {
        gap: 20px;
    }

    .mc4wp-form-fields {
        justify-content: center !important;
    }

    .main-container {
        height: auto;
    }

    .return-arrow {
        position: static;
    }

    .movie-cover {
        height: fit-content;
        position: static;
        margin: auto;
    }

    /* Left Side (Fixed) */
    .movie-cover-container {
        flex: 1;
        max-width: 36%;
        position: sticky;
        top: 0;
        height: 88vh;
        display: flex;
        align-items: start;
        justify-content: start;
    }

    .movie-container {
        display: flex;
        flex-direction: column;
        height: fit-content;
        min-height: 100vh;
        width: 100%;
        margin: 0;
    }

    .movie-cover-container {
        height: 30vh;
        margin-top: 10px;
        align-self: center;
    }

    .movie-info {
        margin: auto;
        width: 90%;
        height: fit-content;
        margin-top: 20px;
    }

    .has-text-align-right {
        text-align: left;
    }

    .tag {
        font-size: 1rem;
    }

    .movie-info p {
        font-size: 1.5rem;
    }

    .title {
        font-size: 2rem !important;
    }
}

.single-film-title {
    font-weight: 400;
}

.single-film-subtitle {
    font-weight: lighter;
    margin-top: 1rem !important;
}

.movie-title {
    font-size: 32px;
    margin-bottom: 15px;
}

.movie-synopsis {
    font-size: 18px;
    margin-bottom: 20px;
}

.movie-still {
    width: 100%;
    border-radius: 5px;
    margin-top: 1rem;
    margin-bottom: 10px;
    transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
    cursor: pointer;
}

.laureat-still {
    width: 100%;
    aspect-ratio: 4/3;
    object-fit: contain;
    margin-top: 1rem;
    border-radius: 5px;
    margin-bottom: 10px;
    transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
}

.still-container {
    position: relative;
    display: inline-block;
}

.still-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.8);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease-in-out, visibility 0.3s;
    z-index: 1000;
}

.mc4wp-form-fields {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: flex-end;
    gap: 10px;
}

.mc4wp-form-fields label {
    margin: 0 !important;
    justify-content: start !important; 
}

.still-overlay img {
    max-width: 90vw;
    max-height: 90vh;
    border-radius: 8px;
    box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.5);
}

.still-overlay.show {
    opacity: 1;
    visibility: visible;
}

.movie-still:hover {
    transform: scale(1.02);
}

.laureat-still:hover {
    transform: scale(1.02);
}

/* @media (max-width: 768px) {
    .movie-container {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: column;
    }

    .movie-cover-container {
        max-width: 100vw;
        width: 100vw;
        background-color: blue;
        height: 100vh;
    }

    .movie-info {
        max-width: 100vw;
        padding: 50px;
        width: 100vw;
        height: 100vh;
    }
} */


.movie-still:hover {
    transform: scale(1.02);
}

/* } */

@media (max-width: 800px) {
    body {
        width: 100vw !important;
        margin: auto;
    }
}

.grid-responsive {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

@media (max-width: 800px) {
    .grid-responsive {
        grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
    }
}

/* Focus styles */
:where(.wp-site-blocks *:focus) {
    outline-width: 2px;
    outline-style: solid;
}

/* Increase the bottom margin on submenus, so that the outline is visible. */
.wp-block-navigation .wp-block-navigation-submenu .wp-block-navigation-item:not(:last-child) {
    margin-bottom: 3px;
}

/* Increase the outline offset on the parent menu items, so that the outline does not touch the text. */
.wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item__content {
    outline-offset: 4px;
}

/* Remove outline offset from the submenus, otherwise the outline is visible outside the submenu container. */
.wp-block-navigation .wp-block-navigation-item ul.wp-block-navigation__submenu-container .wp-block-navigation-item__content {
    outline-offset: 0;
}

/*
 * Progressive enhancement to reduce widows and orphans
 * https://github.com/WordPress/gutenberg/issues/55190
 */
h1,
h2,
h3,
h4,
h5,
h6,
blockquote,
caption,
figcaption,
p {
    text-wrap: pretty;
}

/*
 * Change the position of the more block on the front, by making it a block level element.
 * https://github.com/WordPress/gutenberg/issues/65934
*/
.more-link {
    display: block;
}

.film-item {
    position: relative;
    overflow: hidden;
    border-radius: 1px;
    transition: transform 0.2s ease-in-out;
}

.film-item:hover {
    transform: scale(1.05);
}

.film-thumbnail {
    width: 50px;
    height: 100px;
    background-size: cover;
    background-position: center;
    position: relative;
}

.film-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: background 0.3s ease, opacity 0.3s ease;
}

.nav-btn {
    background: none;
    width: 32px;
    height: 32px;
    border: none;
    cursor: pointer;
    color: white;
}

.film-item:hover .film-overlay {
    background: rgba(0, 0, 0, 0.6);
    opacity: 1;
}

.film-title {
    color: #fff;
    font-size: 1rem;
    font-weight: bold;
    text-align: center;
    padding: 10px;
}

/* Reduce the gap between columns */
.wp-block-columns {
    gap: 5px !important;
    /* Adjust as needed */
    margin-bottom: 5px !important;
    /* Reduce vertical spacing */
}

/* Reduce padding inside each column */
.wp-block-column {
    padding: 0 !important;
    margin: 0 !important;
}

/* Ensure no extra margins in text elements */
p {
    margin: 0 !important;
    padding: 2px 0;
    /* Adjust if needed */
}

.carousel-slider-caption-override h4 {
    text-align: start !important;
    font-size: 1.2rem !important;
    text-decoration: none !important;
}

.carousel-slider-caption-override img {

    /* Default height for desktop */
    object-fit: cover !important;
    aspect-ratio: 16/9 !important;
}

@media (max-width: 768px) {
    .carousel-slider-caption-override {
        width: 73% !important;
    }

    .carousel-slider-caption-override img {
        object-fit: cover !important;
        aspect-ratio: 16/9 !important;
    }
}

@media (max-width: 480px) {

    /* Even smaller screens */
    .carousel-slider-caption-override img {
        object-fit: cover !important;
        aspect-ratio: 16/9 !important;
    }
}

/* 
@media (max-width: 1600px) {
    .carousel-slider-caption-override img {
        object-fit: cover !important;
        height: 50vh !important;
    }
}

@media (max-width: 1200px) {
    .carousel-slider-caption-override img {
        object-fit: cover !important;
        height: 20vh !important;
    }
} */

.carousel-slider-caption-override a {
    text-decoration: none !important;
}

.carousel-slider-caption-override a:hover {
    text-decoration: underline !important;
}

.carousel-slider-caption-override p {
    text-align: start !important;
    font-size: 1rem !important;
}

.carousel-slider-desktop {
    display: block;
}

.carousel-slider-mobile {
    display: none;
}

@media (max-width: 1400px) {
    .carousel-slider-desktop {
        display: none;
    }

    .carousel-slider-mobile {
        display: block;
    }
}
