a.secondary-nav__menu-link.secondary-nav__menu-link--link.secondary-nav__menu-link--level-1 {
    font-family: 'Lufga', sans-serif;
}

.page-wrapper--centered {
    margin-inline: auto;
    max-width: var(--max-width);
    /* Ensure it doesn’t go full width */
}

@media (min-width: 75rem) {
    .layout-main>.main-content {
        width: 100%;
        margin-inline: auto;
    }
}

input::placeholder {
    color: #000;
}

#block-lbf-olivero-exposedformactpors-rebuiltpage-1 .js-form-item-title {
    background: white;
}

#block-lbf-olivero-exposedformactpors-rebuiltpage-1 .js-form-item-title .form-item__label {
    display: none;
}

.field--name-field-nationality .field__items {
    display: flex;
    flex-wrap: wrap;
    /* optional: allows wrapping on smaller screens */
    gap: 0.25rem;
    /* spacing between items */
}


.field--name-field-nationality .field__item::after {
    content: ',';

}

.field--name-field-nationality .field__item:last-child::after {
    content: '';
}

.view-actors-button {
    padding: 5px 10px !important;
    font-size: 15px !important;
}

.page-node-type-page .view-actors-button {
    background: black;
}

.page-node-type-page .view-actors-button:hover {
    background: black;
}

.page-node-type-page .view-actors-button a:hover {
    color: white;
}

body {
    background: none;
    /* Removes any background image */
    background-color: transparent;
    font-size: 0.9375rem;
    /* Removes any background color */
}

li {
    font-family: var(--font-sans);
}

p {
    font-family: var(--font-sans);
}

.about-lbf img {
    width: 20%;
    margin-top: 32px;
}

.views-field.views-field-field-dob {
    font-size: 13px;
    line-height: 20px;
}

.views-field.views-field-field-location {
    font-size: 13px;
    line-height: 20px;
}

.site-header__initial {
    position: relative;
    z-index: 102;
    display: flex;
    align-items: flex-end;
    align-self: stretch;
    background-color: white !important;
}

@media (min-width: 75rem) {
    .social-bar {
        flex-shrink: 0;
        width: var(--content-left);
        background-color: transparent !important;
    }
}

.actors-skills-wrapper .field--name-field-languages .field__label {
    display: none;
}

.actors-skills-wrapper .field--name-field-accents .field__label {
    display: none;
}


.talent-extra-info h3 {
    font-weight: bold;
}

#talent-audio h3 {
    font-weight: bold;
}

.page-node-type-webform #block-lbf-olivero-content {
    margin-block-end: var(--sp);
}

/* 🔹 Ensure the main container is flex-based */
/* 🔹 Two-column wrapper */
.talent-container {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 20px;
}

/* 🔹 Left column containing images and audio showreel */
.talent-left-column {
    flex: 1.618;
    display: flex;
    flex-direction: column;
}

/* 🔹 Images container */
.talent-images {
    padding-bottom: 10px;
}

.talent-images {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    /* 4 equal columns */
    grid-template-rows: repeat(2, 1fr);
    /* 2 equal-height rows */
    gap: 10px;
    padding-bottom: 10px;
    height: 520px;
    /* or auto-height if all images are the same size */
}

/* Large image takes up 3 columns and spans 2 rows */
.talent-image-large {
    grid-column: 1 / span 3;
    grid-row: 1 / span 2;
}

/* Small images take 1 column, each on a separate row */
.talent-image-small:nth-child(2) {
    grid-column: 4;
    grid-row: 1;
}

.talent-image-small:nth-child(3) {
    grid-column: 4;
    grid-row: 2;
}

.talent-image-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 8px;
}


.branding-contact__item a {
    text-decoration: none;
    color: white;
}

.branding-contact__item p {
    margin-bottom: 2px
}

@media (min-width: 43.75rem) {
    .field--name-field-foreign-accents {
        grid-template-columns: repeat(4, 1fr);
    }
}

.field--name-field-foreign-accents {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    gap: 10px;
    justify-content: center;
}

@media (min-width: 43.75rem) {
    .field--name-field-languages {
        grid-template-columns: repeat(4, 1fr);
    }
}

.field--name-field-languages {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    gap: 10px;
    justify-content: center;
}

/* 🔹 Audio showreel */
#talent-audio {
    padding-top: 10px;
}

.actor-skills-showreel {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

/* 🔹 Right column */
.talent-details {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.talent-details .field {
    display: flex;
    align-items: center;
    margin-bottom: 2px;
}

/* 🔹 Shared field style fallback */
.talent-container .field {
    display: flex;
    align-items: center;
    margin-bottom: 2px;
}


.field--label-inline {
    font-weight: normal;
    margin-right: 5px;
}

/* 🔹 Responsive Adjustments */
@media (max-width: 768px) {
    .talent-container {
        flex-direction: column;
    }

    .talent-images {
        flex: none;
        width: 100%;
        justify-content: center;
        flex-wrap: wrap;
    }

    .talent-images img {
        width: 100%;
    }

    .talent-details {
        width: 100%;
    }
}

/* 🔹 Static Content Below Fields */
.talent-contact {
    margin-top: 20px;
    padding-top: 10px;
    border-top: 1px solid #ccc;
    /* Subtle separator */
    text-align: left;
}

.talent-contact p {
    margin: 5px 0;
    font-size: 0.9375rem;
    color: #333;
}

/* Make the name stand out */
.talent-contact .talent-name {
    font-size: 0.9375rem;
    display: inline !important;

}

.talent-name {
    font-size: 0.9375rem;
    font-weight: normal;
    display: inline;
}

/* 🔹 Align email and phone on the same line */
.talent-contact-info {
    display: flex;
    gap: 15px;
    /* Adjust spacing between elements */
    font-size: 0.9375rem;
}

/* 🔹 Circle Background for Icons */
.contact-icon {
    background: #FF211A;
    /* Red background */
    color: white;
    /* White icon */
    border-radius: 50%;
    width: 32px;
    height: 32px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    font-size: 16px;
    vertical-align: middle;
    margin-right: 5px;
}

/* 🔹 Adjust styling for inline elements */
.talent-email,
.talent-phone {
    display: inline-flex;
    color: #333;
    align-items: center;
}

/* 🔹 Full-width Section for Table */
.talent-commercial {
    width: 100%;
    margin-top: 20px;
}

/* 🔹 Full-width Table Styling */
.talent-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    /* Ensures equal column spacing */
    background: #fff;
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1);
    border-radius: 8px;
    overflow: hidden;
    /* Rounds corners properly */
}




/* 🔹 Header Styling */

.talent-table th {
    background: #f9f9f9;
    color: black;
    font-weight: bold;
    text-align: left;
    padding: 8px;
    padding-left: 8px;
    padding-right: 8px;
}

.talent-table.credits-table th:nth-child(1),
.talent-table.credits-table td:nth-child(1) {
    width: 20%;
}

.talent-table.credits-table th:nth-child(2),
.talent-table.credits-table td:nth-child(2) {
    width: 25%;
}

.talent-table.credits-table th:nth-child(3),
.talent-table.credits-table td:nth-child(3) {
    width: 15%;
}

.talent-table.credits-table th:nth-child(4),
.talent-table.credits-table td:nth-child(4) {
    width: 40%;
}

.talent-table-training {
    width: 75%;
    border-collapse: collapse;
    table-layout: fixed;
    /* Ensures equal column spacing */
    background: #fff;
    box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1);
    border-radius: 8px;
    overflow: hidden;
    /* Rounds corners properly */
}

/* 🔹 Row Styling */
.talent-table td {
    padding: 5px;
    border-bottom: 1px solid #ddd;
}

/* 🔹 Alternating Row Colors */
.talent-table tbody tr:nth-child(even) {
    background-color: #f9f9f9;
}

fieldset#edit-field-dob-value-age-filter-wrapper--4 .fieldset__wrapper {
    padding-block: 2px
}


.olivero-details {
    display: block;
    margin-block: 5px;
}

[type="color"],
[type="date"],
[type="datetime-local"],
[type="email"],
[type="file"],
[type="month"],
[type="number"],
[type="password"],
[type="search"],
[type="tel"],
[type="text"],
[type="time"],
[type="url"],
[type="week"],
textarea {
    width: 100%;
    max-width: 100%;
    min-height: var(--sp2);
    padding: 0 var(--sp);
    color: var(--color-text-neutral-loud);
    border: 1px solid var(--color--gray-60);
    border-radius: var(--border-radius);
    background-color: var(--color--white);
    font-family: inherit;
    font-size: inherit;
    appearance: none;
}


.text-content {
    font-family: var(--font-sans) !important;
}

.field.field--name-field-video-embed.field--type-video-embed-field.field--label-hidden .field__item {
    margin-bottom: 2rem;
}

.node__content {
    font-family: var(--font-sans) !important;
}

div#block-lbf-olivero-exposedformactpors-rebuiltpage-1 .fieldset__legend {
    font-size: 15px;
    font-weight: 100;
}

div#block-lbf-olivero-exposedformactpors-rebuiltpage-1 label[for="edit-title--2"] {
    padding-block: var(--sp1);
    padding-inline-start: var(--sp2);
    padding-inline-end: var(--sp1);
    background-color: var(--color--gray-100);
    color: inherit;
    font-size: 15px;
    font-weight: 100;
}

.view.view-academy-timetable.view-id-academy_timetable tr {
    font-size: 0.875rem;
}


.button {
    font-size: 15px;
}

.olivero-details__summary {
    position: relative;
    padding-block: 15px;
    padding-inline-start: var(--sp2);
    padding-inline-end: var(--sp1);
    list-style: none;
    cursor: pointer;
    transition: var(--details-summary-transition);
    word-wrap: break-word;
    hyphens: auto;
    color: inherit;
    background-color: var(--color--gray-100);
    font-size: 15px;
    font-weight: 100;
}

div#block-lbf-olivero-exposedformactpors-rebuiltpage-1 h2.block__title {
    margin-block: var(--sp1);
    margin-block-end: var(--sp1);
    line-height: var(--sp2);
    font-size: 1rem;
}

/* 🔹 Make the flags display inline */
.talent-flags ul {
    list-style: none;
    padding: 0;
    display: flex;
    /* Makes them horizontal */
    gap: 15px;
    /* Adjust spacing between flags */
    flex-wrap: wrap;
    /* Allows wrapping on small screens */
    align-items: center;
}

/* 🔹 Style individual flags */
.talent-flags li {
    display: flex;
    align-items: center;
    gap: 5px;
    /* Space between icon and flag */
}

/* 🔹 Style the FA icon */
.flag-icon {
    color: #FF211A;
    /* Same red as other elements */
    font-size: 1.2rem;
    /* Adjust size */
}

.region-footer {
    margin-top: 100px;
    background: white;
    color: #555;
    border-top: 1px solid #e5e5e5;
}



.field--name-field-actors-skills {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
    /* Equal width */
    gap: 10px;
    /* Adjust spacing */
    justify-content: center;
    /* Centers the grid */
}

.actor-skill {
    padding: 10px;
    border: 1px solid #ddd;
    border-radius: 6px;
    background: white;
    text-align: center;
    font-size: 14px;
    /* font-weight: bold; */
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 36px;
    padding-top: 5px;
    padding-bottom: 5px;
}

/* Force 4 Equal Columns from 700px Up */
@media (min-width: 43.75rem) {
    .field--name-field-actors-skills {
        grid-template-columns: repeat(4, 1fr);
    }
}




.shoot-title {
    font-size: 24px;
    color: #555;
    font-weight: bold;
    border-bottom: 2px solid #555;
    padding-bottom: 5px;
    margin-bottom: 15px;
}

.shoot-info {
    font-size: 16px;
    color: #333;
}

.shoot-info a {
    color: #ff211a;
    font-weight: bold;
    text-decoration: underline;
}

.shoot-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 15px;
    margin-top: 20px;
}

.shoot-box {
    color: #333;
    padding: 10px;
    border-radius: 8px;
    font-weight: bold;
    text-align: center;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    border: 1px solid #ff211a;
}

/* 🔹 Full Contact Container */
.contact-container {
    margin: 0 auto;
    color: #333;
    background: #fff;
}

/* 🔹 Headings */
.contact-heading {

    padding-bottom: 5px;
    margin-bottom: 15px;
}

/* 🔹 Full-Width Contact Details */
.contact-details {
    text-align: left;
    border-radius: 8px;
}

.contact-details p {
    margin: 5px 0;
    font-size: 18px;
}

/* 🔹 Email Styling */
.contact-email {
    color: #ff211a;
    text-decoration: underline;
    font-weight: bold;
}

/* 🔹 Two-Column Layout */
.contact-main {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
    justify-content: space-between;
    align-items: start;
}

/* 🔹 Team Section (66%) */
.contact-team {
    flex: 2;
    min-width: 350px;
}

.team-grid {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
    justify-content: center;
}

.team-member {
    text-align: center;
    max-width: 180px;
}

.team-member img {
    width: 100%;
    max-width: 160px;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

.team-info {
    margin-top: 10px;
}

.team-name {
    font-weight: bold;
    color: #333;

}

.team-role {
    font-size: 0.9rem;
    color: #777;
}

/* 🔹 Social Section (33%) */
.contact-social {
    flex: 1;
    min-width: 250px;
    text-align: left;
}



.social-link {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    color: #ff211a;
    font-weight: bold;
    text-decoration: none;
    transition: all 0.3s ease;
    font-size: 18px;
}

.social-link i {
    background: #FFD6D1;
    color: #ff211a;
    border-radius: 50%;
    padding: 10px;
    width: 36px;
    height: 36px;
    text-align: center;
}

.social-link:hover {
    color: #cc0000;
}

/* 🔹 Mobile Layout (Stacked Columns) */
@media (max-width: 768px) {
    .contact-main {
        flex-direction: column;
        align-items: center;
    }

    .contact-social,
    .contact-team {
        width: 100%;
        text-align: center;
    }

    .social-icons {
        justify-content: center;
    }
}


@media (min-width: 43.75rem) {
    .page-node-type-webform .node__content {
        padding-block-end: 0px;
    }
}

a.social-link:before {
    font-family: fontAwesome;
    content: "\f16d";
    color: #ff211a;
}

.site-branding__logo img {
    display: block;
    /* Centers inside parent */
    margin: 0 auto;
    /* Ensures centering */
    /* Red circular border */
    border-radius: 50%;
    /* Makes it round */
    /* Adds spacing inside border */
    max-width: 120px;
    /* Limits max size */
    height: auto;
    /* Maintains aspect ratio */
    border: 7px solid red;
    border-radius: 50%;
    padding: 10px;
}

.site-branding__logo img {
    width: auto;
    max-width: 100%;
    max-height: var(--sp4);
    /* Increased from var(--sp2) */
}

@media (min-width: 31.25rem) {

    /* Tablet */
    .site-branding__logo img {
        max-height: var(--sp5);
        /* Increased */
    }
}

@media (min-width: 43.75rem) {

    /* Desktop */
    .site-branding__logo img {
        max-height: var(--sp6);
        /* Increased */
    }
}

@media (min-width: 75rem) {
    .site-branding__logo img {
        max-height: 150px !important;
        /* Adjust as needed */
    }
}



/* 🔹 Video Gallery Wrapper */
.video-gallery {

    margin: 0 auto;
    background: #fff;
    text-align: center;
}

/* 🔹 Responsive Grid Layout */
.video-grid {
    display: block;
}

/* 🔹 Individual Video Styling */
.video-item {
    width: 100%;
    aspect-ratio: 16 / 9;
    /* Ensures video remains 16:9 */
    background: #000;
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 32px;
}

/* 🔹 Iframe Styling */
.video-item iframe {
    width: 100%;
    height: 100%;
    border: none;
}

/* 🔹 Responsive Adjustments */
@media (max-width: 1024px) {
    .video-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .video-grid {
        grid-template-columns: 1fr;
    }
}

.workshop-heading {


    padding-bottom: 5px;
    margin-bottom: 25px;
    text-align: left;

}


/* 🔹 Media Section */
.about-media-item {
    margin-bottom: 20px;
    text-align: center;
}

.about-media-title {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 5px;
}

.print-view-online {
    display: none;
    font-size: 12px;
    margin-top: 2em;
    color: #000;
}

.about-media-item img {
    width: 100%;
    max-width: 500px;
    border-radius: 10px;
    transition: transform 0.3s ease-in-out;
}

.about-media-item img:hover {
    transform: scale(1.05);
}


/* 🔹 Ensure the View Content is a Flex Container */
.view-id-academy_classes_new .view-content {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    /* Adjust spacing between items */
    justify-content: center;
    /* Center items in the row */
}

/* 🔹 Individual Views Row */
.view-id-academy_classes_new .views-row {
    flex: 1 1 calc(20% - 20px);
    /* Ensure 5 columns with space */
    max-width: calc(25% - 20px);
    /* Limit width */
    text-align: center;
    background: #f9f9f9;
    /* Light background */
    border-radius: 10px;
    /* Rounded corners */
    padding: 10px;
    transition: transform 0.3s ease-in-out;
}

.view-id-academy_classes_new .views-row:hover {
    transform: translateY(-5px);
    /* Subtle lift effect */
}

/* 🔹 Image Styling */
.view-id-academy_classes_new .views-field-field-classes-img img {
    width: 100%;
    height: 150px;
    border-radius: 8px;
    /* Soft rounded edges */
    object-fit: cover;
    transition: transform 0.3s ease-in-out;
}

.view-id-academy_classes_new .views-field-field-classes-img img:hover {
    transform: scale(1.05);
    /* Slight zoom effect */
}

/* 🔹 Title Styling */
.view-id-academy_classes_new .views-field-title {
    margin-top: 10px;
    font-weight: bold;
    font-size: 0.9375rem;
    color: #333;
    transition: color 0.3s ease;
}

.view-id-academy_classes_new .views-field-title:hover {
    color: #ff211a;
    /* Match site theme */
}

/* 🔹 Responsive Adjustments */
@media (max-width: 1024px) {
    .view-id-academy_classes_new .views-row {
        flex: 1 1 calc(33.33% - 20px);
        /* 3 columns */
        max-width: calc(33.33% - 20px);
    }
}

@media (max-width: 768px) {
    .view-id-academy_classes_new .views-row {
        flex: 1 1 calc(50% - 20px);
        /* 2 columns */
        max-width: calc(50% - 20px);
    }
}

@media (max-width: 480px) {
    .view-id-academy_classes_new .views-row {
        flex: 1 1 100%;
        /* 1 column */
        max-width: 100%;
    }
}

.field--name-field-workshops-view .viewsreference--view-title {
    display: none;
}

.page-title-wrapper {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
}

.show-reels-link {
    display: inline-flex;
    align-items: center;
    font-size: 0.9375rem;
    font-weight: bold;
    color: white;
    text-decoration: none;
    padding: 12px;
    gap: 8px;
    background: black;
    border-radius: 8px;
    max-width: fit-content;
    margin-block-start: var(--sp);
}

.show-reels-link:hover {
    text-decoration: underline;
    color: white;
}

.show-reels-link i {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    /* Adjust circle size */
    height: 30px;
    font-size: 0.9375rem;
    color: white;
    background: #FF211A;
    border-radius: 50%;
    /* Makes it a circle */
    padding: 6px;
    /* Adjust padding */
    text-align: center;
}

.showreel {
    line-height: 1;
    /* Ensures text aligns properly */
    display: flex;
    align-items: center;
    /* Centers text vertically */
}



.node__content.talent-layout .layout {
    margin-bottom: 0px;
}

.field--type-video-embed-field .field__label {
    display: none;
}




fieldset#edit-field-dob-value-age-filter-wrapper--2 {
    border-color: var(--color--gray-95);
}


#edit-field-dob-value-age-filter-wrapper--2 .fieldset__label {
    padding-block: var(--sp1);
    padding-inline-start: var(--sp2);
    padding-inline-end: var(--sp1);
    background-color: var(--color--gray-100);
    color: inherit;

}

#edit-field-dob-value-age-filter-wrapper--4 .fieldset__legend {
    background-color: var(--color--gray-100);
}

#edit-field-dob-value-age-filter-wrapper--4 .fieldset__label {
    padding-block: var(--sp1);
    padding-inline-start: var(--sp2);
    padding-inline-end: var(--sp1);
    background-color: var(--color--gray-100);
    color: inherit;

}

#edit-field-dob-value-age-filter-wrapper--2 .fieldset__legend {
    background-color: var(--color--gray-100);
}


label[for="edit-title--2"] {
    padding-block: var(--sp1);
    padding-inline-start: var(--sp2);
    padding-inline-end: var(--sp1);
    background-color: var(--color--gray-100);
    color: inherit;
    font-size: var(--font-size-l);
    font-weight: 700;
}

.js-form-item-title {
    /* Add a border around the entire form item */

    margin: 0 auto;
    color: var(--color-text-neutral-loud);
    border: var(--details-border-width) solid var(--color--gray-95);
    border-radius: var(--border-radius);
    box-shadow: 0 1px 4px var(--color--gray-90);
}

/* Center text inside input */
#edit-title--2 {

    padding: 8px;
    border-color: var(--color--gray-60);
    border-radius: 4px;
    margin-block-start: var(--sp1-5);
    margin-block-end: var(--sp1-5);
    width: 80%;
    margin-inline-start: var(--sp);
}

/* fixes */

@media (min-width: 43.75rem) {
    h1 {
        font-size: 2.25rem;
        line-height: var(--sp2);
        color: #ff211a;
        font-weight: 100;
    }
}

@media (min-width: 43.75rem) {

    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
        margin-block: var(--sp1);
        margin-block-end: var(--sp1);
    }
}


@media (min-width: 43.75rem) {
    h2 {
        font-size: 1.75rem;
        line-height: var(--sp2);
    }
}

.red-text {
    color: #ff211a;
}

div#block-lbf-olivero-pagetitle {
    margin-block: 0;
}

div#block-lbf-olivero-breadcrumbs {
    margin-bottom: var(--sp1);
    margin-left: 5px;
    /* Adjust `sp1` as needed */
}

@media (min-width: 62.5rem) {
    .sidebar-grid .region--sidebar {
        grid-column: 12 / 15;
    }
}


@media (min-width: 62.5rem) {

    /* When the sidebar is present */
    .sidebar-grid .region--sidebar {
        grid-column: 1 / 4;
        /* Sidebar starts at column 3 and spans 4 columns */
    }

    .sidebar-grid>.site-main {
        grid-column: 4 / 15;
        /* Main content starts at column 7 when sidebar is present */
    }

    /* When the sidebar is NOT present, make main content start at column 3 */
    .sidebar-grid:not(:has(.region--sidebar))>.site-main {
        grid-column: 1 / 15;
    }
}



@media (min-width: 43.75rem) {
    .sidebar-grid .region--sidebar {
        grid-column: 1 / 4;
        /* Moves sidebar to the left */
    }

    .sidebar-grid>.site-main {
        grid-column: 4 / 15;
        /* Adjusts content accordingly */
    }

    /* When the sidebar is NOT present, make main content start at column 3 */
    .sidebar-grid:not(:has(.region--sidebar))>.site-main {
        grid-column: 1 / 15;
    }
}


.region--sidebar .form--inline>* {
    display: block;
    /* Prevents inline overflow */

}

.region--sidebar .fieldset {
    min-width: 0;
    margin-block: var(--sp1);
    margin-inline-start: 0;
    margin-inline-end: 0;
    padding-block: 0;
    padding-inline-start: 0;
    padding-inline-end: 0;
    color: inherit;
    border: solid 2px var(--color--gray-45);
    border-radius: var(--border-radius);
    background-color: var(--color--white);
}

@media (min-width: 43.75rem) {

    .text-content,
    .cke_editable {
        font-size: 0.9375rem;
        line-height: var(--sp1-5);
    }
}

@media (min-width: 43.75rem) {

    .text-content p,
    .cke_editable p {
        margin-block-start: var(--sp1);
        margin-block-end: var(--sp1);
    }
}

.view-actpors-rebuilt.view-id-actpors_rebuilt a {
    color: var(--color-text-neutral-medium);
    font-weight: bold;
}

.views-field.views-field-field-dob {
    font-style: italic;
}

.view-academy-timetable table.views-table.cols-6 {
    margin-block-end: var(--sp1);
}

.view-academy-timetable :is(.forum table, .text-content table, .views-table, .draggable-table) caption {
    margin-block-end: var(--sp1);
    text-align: start;
    color: var(--color-text-neutral-medium);
    font-size: 1.1rem;
    font-style: normal;
    line-height: var(--sp);
    font-weight: bold;
    font-family: var(--font-sans);
}

@media (max-width: 768px) {
    .main-navigation {
        display: none;
        /* Hide the desktop menu */
    }


    .mobile-nav-button {
        display: block !important;
        /* Ensure the hamburger button is visible */
    }

    .mobile-nav-button[aria-expanded="true"]+#header-nav {
        display: block !important;
        /* Show menu when button is clicked */
    }
}

@media (min-width: 43.75rem) {
    div#header-nav {
        display: none;
    }
}

#header-nav.is-active {
    display: block;
    /* Adjust based on content */
}


/* 🔹 Full-width header specific to the front page */
.front-page__header {
    width: 100%;
    background-color: #e0e0e0;
    /* Change as needed */
    padding: 20px 0;
}

.front-page__header-inner {
    max-width: var(--max-width);
    margin: 0 auto;
}

/* 🔹 Three-column grid layout for the home page */
.front-page__layout {
    display: grid;
    grid-template-columns: 3fr 8fr 3fr;
    /* Matches 14-column system */
    gap: 20px;
    max-width: calc(var(--max-width) - 150px);
    ;
    margin: 0 auto;
}

/* 🔹 Sidebar and Content Styling */
.front-page__left-sidebar,
.front-page__right-sidebar {
    background: black;
    /* Light background */
    padding: 15px;
    min-height: 300px;
    /* Adjust as needed */
}

.front-page__main-content {
    background: black;
    padding: 20px;
    min-height: 400px;
    /* Adjust as needed */
}

/* 🔹 Responsive Adjustments */
@media (max-width: 1024px) {
    .front-page__layout {
        grid-template-columns: 1fr 6fr 1fr;
        /* Reduce sidebar width */
    }
}

@media (max-width: 768px) {
    .front-page__layout {
        grid-template-columns: 1fr;
        /* Stacks sections on small screens */
    }

    .front-page__left-sidebar,
    .front-page__right-sidebar {
        display: none;
        /* Hide sidebars on mobile */
    }
}

#front-page-wrapper {
    background: black;
}

.front-page__footer {
    background: black;
}

/* 🔹 Ensure the front page takes full height */
.front-page__wrapper {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

/* 🔹 Allow main content to expand and push footer down */
.front-page__main-wrapper {
    flex: 1;
}

/* 🔹 Footer always at the bottom */
.front-page__footer {
    margin-top: auto;
}

.lbf-logo-round img {
    margin: 0 auto;
    display: block;
    border: 7px solid red;
    border-radius: 50%;
    padding: 10px;
}


/* 🔹 Target menu only inside the front page wrapper */
.front-page__wrapper .menu.menu--level-1 {
    list-style: none;
    /* Removes bullet points */
    display: flex;
    /* Aligns menu items horizontally */
    justify-content: center;
    /* Distributes items evenly */
    gap: 20px;
    /* Adds spacing between items */
    padding: 0;
    margin: 0;
}

.first-word {
    display: block;
}

/* 🔹 Style individual menu items */
.front-page__wrapper .menu__item {
    display: inline-block;
}

/* 🔹 Style links */
.front-page__wrapper .menu__link {
    text-decoration: none;
    /* Removes underline */
    font-size: 16px;
    /* Adjust text size */
    font-weight: bold;
    color: black;
    /* Makes text black */
    padding: 10px 15px;
    /* Adds spacing */
    transition: color 0.3s ease-in-out;

}

.about-section.about-affiliations img {
    max-width: 150px;
    margin-top: 32px;
}

/* 🔹 Hover effect */
.front-page__wrapper .menu__link:hover {
    color: red;
    /* Change color on hover */
}

/* 🔹 Ensure no extra spacing on the sides */
.front-page__wrapper nav {
    width: 100%;
    text-align: center;
}

/* 🔹 Responsive Fixes */
@media (max-width: 768px) {
    .front-page__wrapper .menu.menu--level-1 {
        flex-wrap: wrap;
        /* Wrap menu items on small screens */
        justify-content: center;
    }
}

.front-page__layout .views-view-grid {
    --views-grid--layout-gap: 3px;
    /* Reduce gap size */
}

.front-page__layout .views-field.views-field-field-talent-image {
    border: 2px solid white;
    border-radius: 2px;
}

@media (min-width: 62.5rem) {
    .block-system-breadcrumb-block {
        grid-column: 1 / 7;
        /* Moves breadcrumb block to start from column 1 */
        justify-self: start;
        /* Ensures it aligns left inside its grid cell */
    }
}

@media (min-width: 43.75rem) {

    .block-system-breadcrumb-block {
        grid-column: 1 / 7;
        /* Moves breadcrumb block to start from column 1 */
        justify-self: start;
        /* Ensures it aligns left inside its grid cell */
    }
}

@media (min-width: 62.5rem) {
    .block-local-tasks-block {
        grid-column: 1 / 13;
        /* Moves breadcrumb block to start from column 1 */
        justify-self: start;
        /* Ensures it aligns left inside its grid cell */
    }
}

@media (min-width: 43.75rem) {

    .block-local-tasks-block {
        grid-column: 1 / 13;
        /* Moves breadcrumb block to start from column 1 */
        justify-self: start;
        /* Ensures it aligns left inside its grid cell */
    }
}

@media (min-width: 75rem) {
    .site-branding__inner {
        height: auto;
        padding-block: var(--sp0-5);
        padding-inline-start: 0;
        padding-inline-end: 0;
    }
}

.site-branding--bg-white {
    background: var(--color--black);
}

/* Center the branding & nav inside the header */
.site-header__inner-container {
    max-width: var(--max-width);
    margin-inline: auto;
    padding: 0 var(--sp1);
}

/* Ensure content inside stays centered */
.site-header__content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: black;
    /* Adjust as needed */
}

@media (min-width: 75rem) {
    .layout-main {
        flex-direction: row !important;
        /* Forces normal order */
    }
}

@media (min-width: 43.75rem) {
    .main-content__container {
        padding-block-start: var(--sp1);
    }
}

.site-header__inner {
    width: 100vw !important;
    /* Makes it full width */
    margin: 0 auto;
    /* Ensures centering */
    background: black;
}

button.print-page-button {

    background: white;
    font-size: 0.9375rem;
    margin-top: 24px;
    display: block;
    border: 1px solid #ff2111;
    color: #ff2211;
    padding: 10px;
    border-radius: 5px;
    cursor: pointer;
}

.views-view-responsive-grid__item-inner {
    text-align: center;
}

.grape-nuts-text tt {
    font-family: "Grape Nuts", cursive;
    font-weight: 400;
    font-style: normal;
    font-size: 1.7rem;
    color: #ff211a;
    /* Adjust as needed */
}

/* 🔹 Branding Contact: Default for Desktop */
.branding-contact {
    display: flex;
    flex-direction: column;
    gap: 0px;
}

/* 🔹 Each contact item */
.branding-contact__item {
    display: flex;
    align-items: baseline;
    gap: 5px;
}

/* 🔹 Circle Background for Icons */
.contact-icon {
    background: #FF211A;
    color: #FFD6D1;
    border-radius: 50%;
    width: 28px;
    height: 28px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 0.9375rem;
}

/* 🔹 Text Styling */
.branding-contact__phone,
.branding-contact__info {
    color: white;
    margin: 0;
}

.field--name-field-awards.field--label-inline {
    font-family: var(--font-sans);
}

.branding-contact__email {
    color: white !important;
    box-shadow: none !important;
}

/* 🔹 Responsive Adjustments for Mobile */
@media (max-width: 768px) {

    /* 🔹 Change layout: Logo Left, Phone Right */
    .branding-container {
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        text-align: left;
    }

    /* 🔹 Only show first phone number */
    .branding-contact__item:nth-child(2),
    .branding-contact__item:nth-child(3) {
        display: none;
    }

    /* 🔹 Adjust phone alignment */
    .branding-contact {
        flex-direction: row;
        align-items: center;
    }
}

h4.branding-contact__phone {
    font-size: 0.9375rem
}

.views-field.views-field-field-talent-image img {
    margin: 0 auto;
}

@media (min-width: 43.75rem) {
    body:not(.is-always-mobile-nav) .region--secondary-menu {
        display: flex;
        justify-content: space-between;
        /* Spread across the full width */
        align-items: center;
        width: 100%;
    }

    /* Ensure the secondary menu itself expands */
    .secondary-nav {
        flex-grow: 1;
        /* Allow it to take the full width */
        width: 100%;
    }

    /* Spread out menu items evenly */
    .secondary-nav__menu {
        display: flex;
        justify-content: space-between;
        /* Adjust to space-evenly if needed */
        width: 100%;
        border-bottom: 1px solid #ff211a;
        padding-bottom: 10px;
    }

    /* Make sure each item gets an equal portion */
    .secondary-nav__menu-item {
        flex-grow: 1;
        text-align: center;
    }
}

@media (min-width: 43.75rem) {
    body:not(.is-always-mobile-nav) .secondary-nav {
        position: relative;
        display: flex;
        margin-inline-start: 0;
        padding-inline-start: 0;
    }

    .secondary-nav {
        letter-spacing: 0.02em;
        font-size: 0.9375rem;
        font-weight: 600;
    }

    .region--secondary-menu>* {
        padding-block-end: var(--sp1);
        padding-block-start: var(--sp1);

    }
}

.site-footer {
    display: flex;
    justify-content: center;
    /* Center the menus */
    gap: 40px;
    /* Add spacing between menus */
    flex-wrap: wrap;
    /* Prevents items from breaking into separate lines */
}

.site-footer .menu {
    display: flex;
    justify-content: center;
    /* Center the menu items */
    align-items: center;
    gap: 20px;
    /* Space between menu items */
    flex-wrap: wrap;
}

/* Ensure menu items don't stretch awkwardly */
.site-footer .menu li {
    margin-block-end: var(--sp0-5);
    display: flex;
    justify-content: center;
    color: white;
}

.site-footer .block__title {
    color: white;
    text-align: center;
    font-size: 1.2rem;
}

@media (min-width: 43.75rem) {
    body:not(.is-always-mobile-nav) .site-footer {
        border-inline-start-width: 0px;
    }
}

.shoot-box {
    color: #555;
    /* White text for better contrast */
    background: linear-gradient(135deg, #ddd, #aaa);
    /* Bold gradient effect */
    padding: 15px;
    /* Slightly larger padding for emphasis */
    border-radius: 10px;
    /* Smoother corners */
    font-weight: bold;
    text-align: center;
    font-size: 1.1rem;
    /* Slightly larger text */

    /* Stronger Box Shadow */
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.25);
    border: 2px solid #b5b5b5;
    /* Slightly thicker border */
    transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
}



/* Hover Effect to Make it Pop */
.shoot-box:hover {
    transform: scale(1.05);
    /* Slight hover lift */
    box-shadow: 0 6px 14px rgba(0, 0, 0, 0.3);
}

.print-logo-container {
    display: none;
}

.jwt-url {
    width: 100%;
    padding: 5px;
    border: 1px solid #ccc;
    background: #f9f9f9;
}

.copy-btn {
    background: #ff2111;
    color: #fff;
    border: none;
    padding: 6px 12px;
    cursor: pointer;
    margin-left: 5px;
    border-radius: 4px;
    margin-top: 12px;
}

.copy-btn:hover {
    background: #ff5733;
}

.region--sidebar .fieldset {
    border: var(--details-border-width) solid var(--color--gray-95);
    border-radius: var(--border-radius);
    box-shadow: 0 1px 4px var(--color--gray-90);
}

.view-id-frontpage_actors_scroll_taxonomy.view-display-id-block_7 .views-view-grid.views-view-grid--horizontal {
    grid-gap: 6px;
}

@media (min-width: 43.75rem) {
    .view-id-frontpage_actors_scroll_taxonomy.view-display-id-block_7.view {
        gap: var(--sp);
    }
}

/* Ensure icons are aligned inline with spacing */
.social-icons {
    display: flex;
    gap: 15px;
    /* Space between icons */
    align-items: center;
    margin-top: 10px;
}

/* Style only the social media links */
.social-icons a {
    text-decoration: none;
    /* Remove underline */
    display: inline-block;
    box-shadow: inherit;
}

/* Ensure all images within social-icons are the same size */
.social-icons img {
    width: 46px;
    height: 46px;
    transition: transform 0.2s ease-in-out;
}

/* Optional hover effect */
.social-icons a:hover img {
    transform: scale(1.1);
}

h2,
h3 {
    font-weight: normal;
    font-size: 1.15rem;
}

h3,
h2 {
    margin-block-end: 10px;
    margin-block-start: 10px;
}

@media (max-width: 43.75rem) {
    #block-lbf-olivero-fblikebox {
        display: none;
    }

    .site-header__inner {
        background: white;
    }

    .site-header__content {
        background: white;
    }

    .branding-contact__phone,
    .branding-contact__info {
        color: var(--color-text-neutral-medium);
        margin: 0;
    }

    .branding-contact__item a {
        text-decoration: none;
        color: black;
    }

    .site-branding--bg-white {
        background: white;
    }

    .site-branding__logo img {
        max-height: 120px;
        margin-top: 12px;
    }

    #block-lbf-olivero-views-block-frontpage-actors-all-genders {
        display: none;
    }

    .front-page__header {
        width: 100%;
        background-color: white;
        padding: 20px 0;
    }

    .page-node-type-talent #block-lbf-olivero-exposedformactpors-rebuiltpage-1 {
        display: none;
    }



}

.node--type-talent.node--view-mode-casting-list-subs .field--name-field-dob::after {
    content: ", ";
}

.node--type-talent.node--view-mode-casting-list-subs .field--name-field-dob.field__item {
    display: inline;
}

.node--type-talent.node--view-mode-casting-list-subs .field.field--name-field-role-description {
    margin-block-end: 0;
}

.node--type-talent.node--view-mode-casting-list-subs .field.field--name-field-location.field__items {
    display: inline-block;
}

.node--view-mode-casting-list-subs {
    text-align: center;
}

.page-node-type-talent main.site-main {
    background: white;
    padding-block-start: var(--sp1);
}

.field.field--name-field-field-accents {
    width: 105%;
}

@media (min-width: 43.75rem) {
    .view.view-academy-timetable.view-id-academy_timetable .view-content {
        gap: 0px;
    }
}

td.views-field.views-field-field-booking-form a {
    font-size: 0.9rem;
    text-decoration: none;
    background: #ff221a;
    display: block;
    color: white;
    line-height: 1em;
    padding: 10px;
    border-radius: 5px;
}

td.views-field-field-booking-form {
    text-align: center;
}

.paragraph.paragraph--type--role01 .field.field--name-field-role-title.field--type-string.field--label-inline.clearfix {
    margin-block-end: var(--sp);
}

.paragraph.paragraph--type--role01 .subs-images img {
    flex: 1;
    width: 200px;
    height: 250px;
    border-radius: 8px;
    object-fit: cover;
}

@media (min-width: 62.5rem) {
    .paragraph.paragraph--type--role01 .node__content {
        padding-block-end: var(--sp);
    }
}



.paragraph.paragraph--type--role01 .field.field--name-field-actors.field--type-entity-reference.field--label-hidden.field__items {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    /* ⬅️ Center child items */
    gap: 1rem;
}


.paragraph.paragraph--type--role01 .field__items>.node_content {
    flex: 1 1 calc(25% - 1rem);
    /* 4 columns with spacing adjustment */
    min-width: 160px;
    /* Prevent items from shrinking too much */
}

@media (max-width: 43.75em) {
    .paragraph.paragraph--type--role01 .field__items>.node_content {
        flex: 1 1 calc(50% - 1rem);
        /* 2 columns on smaller screens */
    }
}

@media (max-width: 30em) {
    .paragraph.paragraph--type--role01 .field__items>.node_content {
        flex: 1 1 100%;
        /* Single column on very small screens */
    }
}

.paragraph.paragraph--type--role01 h2.node__title {
    font-size: 1.2rem;
    text-align: center;
}

.paragraph.paragraph--type--role01.paragraph--view-mode--full .field.field--name-field-role-title.field--type-string.field--label-inline.clearfix {
    font-size: 1rem;
}

.paragraph.paragraph--type--role01 h2.node__title a {
    color: #ff221a;
}


@media (max-width: 768px) {

    /* Hide the default horizontal menu on mobile */
    .front-page__wrapper .menu.menu--level-1 {
        display: none !important;
    }

    /* Ensure the mobile navigation button is always visible */
    .mobile-nav-button {
        display: block !important;
    }

    /* When the mobile menu is open, display it */
    .mobile-nav-button[aria-expanded="true"]+#header-nav,
    .mobile-nav-button[aria-expanded="true"]~#header-nav {
        display: block !important;
    }
}

.mobile-nav-button {
    position: relative;
    z-index: 505;
    display: flex;
    align-items: center;
    align-self: center;
    width: var(--sp2);
    height: var(--sp2);
    margin-inline-start: auto;
    margin-inline-end: 1rem;
    padding-block: 0;
    padding-inline-start: 0.375rem;
    padding-inline-end: 0.375rem;
    cursor: pointer;
    border: none;
    background: transparent;
    appearance: none;
}

.secondary-nav__menu-link {
    -webkit-text-decoration: none;
    text-decoration: none;
    color: var(--color-text-neutral-loud);
    font-size: 0.9375rem;
    font-weight: bold;
    line-height: var(--sp2);
}

.secondary-nav__menu {
    display: flex;
    align-items: center;
    margin-block: 0;
    margin-inline-start: 0;
    margin-inline-end: 0;
    padding-block: 0;
    padding-inline-start: 0;
    padding-inline-end: 0;
    list-style: none;
}

.secondary-nav__menu-item {
    margin-block-end: var(--sp0-5)
}

.mobile-nav-button {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: var(--sp2);
    /* Keep the original size */
    height: var(--sp2);
    padding: 0;
    /* Remove extra padding */
    background: transparent;
    border: none;
    cursor: pointer;
    appearance: none;
}

.mobile-nav-button__icon {
    position: relative;
    display: block;
    width: var(--sp2);
    height: 0;
    border-top: solid 3px var(--color--primary-50);
}

/* Ensure the "X" transforms properly */
.mobile-nav-button__icon::before,
.mobile-nav-button__icon::after {
    position: absolute;
    inset-block-start: 0;
    inset-inline-start: 0;
    width: 100%;
    height: 0;
    content: "";
    transition: transform 0.2s ease-in-out;
    border-top: solid 3px var(--color--primary-50);
}

/* Properly aligns the three bars */
.mobile-nav-button__icon::before {
    transform: translateY(-0.6875rem);
}

.mobile-nav-button__icon::after {
    transform: translateY(0.3125rem);
}

/* Styles the "X" when menu is open */
.mobile-nav-button[aria-expanded="true"] .mobile-nav-button__icon {
    border-top-color: transparent;
}

.mobile-nav-button[aria-expanded="true"] .mobile-nav-button__icon::before {
    transform: translateY(-0.1875rem) rotate(-45deg);
}

.mobile-nav-button[aria-expanded="true"] .mobile-nav-button__icon::after {
    transform: translateY(-0.1875rem) rotate(45deg);
}


/* 🔹 Extra Small Phones (up to 320px) */
@media (max-width: 320px) {
    /* Styles for very small screens */
}

/* 🔹 Small Phones (up to 375px) */
@media (max-width: 375px) {
    /* Styles for small phones */
}

/* 🔹 Standard Phones (up to 480px) */
@media (max-width: 480px) {
    /* Styles for typical smartphones */
}

/* 🔹 Large Phones & Small Tablets (up to 600px) */
@media (max-width: 600px) {
    /* Styles for large phones / small tablets */
}

/* 🔹 Tablets (up to 768px) */
@media (max-width: 768px) {


    .secondary-nav__menu {
        display: block;
        align-items: center;
        margin-block: 0;
        margin-inline-start: 0;
        margin-inline-end: 0;
        padding-block: 0;
        padding-inline-start: 0;
        padding-inline-end: 0;
        list-style: none;
    }

    .secondary-nav__menu-link {
        -webkit-text-decoration: none;
        text-decoration: none;
        color: var(--color-text-neutral-loud);
        font-size: 1.35rem;
        font-weight: bold;
        line-height: var(--sp2);
    }
}

/* 🔹 Show only up to 700px (before olivero.md kicks in) */
@media (max-width: 699px) {
    .hamburger-logo {
        display: block;
        margin-bottom: 2rem;
    }
}

/* 🔹 Hide from 700px and above */
@media (min-width: 700px) {
    .hamburger-logo {
        display: none;
    }
}

@media (min-width: 767px) {
    .mobile-buttons {
        display: none;
    }
}


span.mobile-nav-button__label {
    display: none;
}

.talent-contact-info a {
    text-decoration: none;
    color: #333;
}

@media (min-width: 1024px) {
    body {
        /* Styles for larger screens */
        background: #e0e0e0;
    }

    #page-wrapper {
        background: #e0e0e0;
    }

    h1.title.page-title {
        margin-block-start: 0px;
    }

    main.site-main {
        padding-block-start: 0px;
        padding-block-end: var(--sp);
        background: #e0e0e0;
        border-radius: 5px;
        padding-inline-start: var(--sp);
        padding-inline-end: var(--sp);
        margin-block-end: var(--sp2);
    }

    main {
        padding-block-start: var(--sp);
        padding-block-end: var(--sp);
        background: #e0e0e0;
        border-radius: 5px;
        padding-inline-start: var(--sp);
        padding-inline-end: var(--sp);
        margin-block-end: var(--sp2);
    }
}

.workshop-inline-table td {
    font-size: 0.875rem
}

.workshop-inline-table a {
    font-size: 0.9rem;
    text-decoration: none;
    background: #ff221a;
    display: block;
    color: white;
    line-height: 1em;
    padding: 10px;
    border-radius: 5px;
    text-align: center;
}

.workshop-inline-table table {
    margin-top: 10px;
    margin-bottom: 10px;
}

.workshop-inline-table a:hover {
    color: white !important;
    box-shadow: none;
    text-decoration: none;
}

.workshop-inline-table h4 {
    font-size: 1rem
}

@media (max-width: 699px) {
    div#block-lbf-olivero-fblikebox-2 {
        display: none;
    }
}

@media (min-width: 699px) {
    div#block-lbf-olivero-fblikebox-3 {
        display: none;
    }
}

@media (max-width: 767px) {
    h1.title.page-title {
        color: red;
    }
}