/* font styles */
h1,h2,h3,h4,h5,h6 {
    font-family: 'Cabin', sans-serif;
    color: rgb(103,101,102);
}

body p {
    line-height: 1.4 !important;
    font-size: 12px;
}

body .df-mainContent p {
    text-align: left;
}

@media screen and (max-width: 1024px) {
    body p {
        font-size: 12px;
    }
}

header.df-mainnav {
    position: relative;
    z-index: 1000;
}

.df-rails a {
    color: #2472b0;
}

.star-rating {
    margin-top: 8px;
}

.star-icon:before {
    content: '\2605';
    position: absolute;
    /* text-shadow: 0 0 1px rgba(0,0,0,0.7); */
    color:rgba(66,66,66,0) !important;
    font-size: 45px;
    top: 50%;
    left:50%;
    transform: translate(-50%, -50%);   
}

.star-icon.full:before {
    color:rgb(66,66,66) !important;
    font-size: 45px;
    top: 50%;
    left:50%;
    transform: translate(-50%, -50%);
}
.star-icon.full:before,
.star-icon.half:before {
    color:rgb(66,66,66) !important;
}

@-moz-document url-prefix() {
    .star-rating {
        margin-top: 0;
    }
    .star-icon {
        font-size: 50px !important;
    }
    .star-icon:before {
        font-size: 50px !important;
        transform: translateX(-50%) translateY(-55%) !important; /* for firefox */
    }
    .star-icon.half:before {
        transform: translateX(3px) translateY(-55%) !important;
    }
}

/*********/
.star-icon {
    color: rgb(66,66,66);
    font-size: 45px;
    line-height: 1;
    z-index: 1; 
}

.star-icon + .star-icon {
    margin-left: 0;
}

.star-icon.full,
.star-icon.half {
    z-index: 2;
}

.star-icon.half::before {
    left: 0;
    transform: translateX(0) translateY(-50%);
}
/********/

.df-tilewall .star-rating {
    margin-left: 8px;
}

.aspect-landscape {
    aspect-ratio: 16/9;
}

/* font grey rgb(103,101,102) */

/****
 * SEARCH
 ****/
 .df-resultItem a + h4 {
    margin-top: 6px;
 }

 .df-resultItem h4 a {
    /* color: rgb(103,101,102); */
 }

footer .container .footer__menu .copyright p {
    color: white;
    font-size: 20px;
    font-weight: bold;
}

body .container {
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 30px;
}

body {
   color: rgb(66,66,66);
   font-family: 'Arial', sans-serif !important;
   font-weight: 400;
   background-color: #fff !important;
}

body p {
    margin-bottom: 30px;
    font-size: 20px !important; 
    line-height: 1.5;
}

body article ul li {
    list-style-type: square;
    margin: .5em 0 .5em 1.2em;
}

@media screen and (min-width: 1024px) {
    body ul li {
        font-size: 20px;
    }
}

@media screen and (max-width: 768px) {
    body .container {
        padding: 0 15px;
    } 
}

a img {
    transition: all 300ms ease-in-out;
}

a:hover img {
    filter:brightness(0.8);
}

img.aligncenter {
    display: block;
    margin: 40px auto;
    width: 100%;
    height: auto;
}


/* layout */

/* ------image deafaults */
.image-portrait {
    aspect-ratio: 3/4;
   
}
.image-portrait img {
    object-fit: cover;
    width: 100%;
    height: 100%;
    object-position: center;
}

.image-landscape {
    aspect-ratio: 16/9;
  
}
.image-landscape img {
    object-fit: cover;
    width: 100%;
    height: 100%;
    object-position: center;
}

@media screen and (min-width: 600px) {
    .df-titleBG + .df-articleInfo {
        position: relative !important;
    }
}


/* footer */

footer {
    position: relative;
    overflow: visible;
}

.footer-logo a {
    display:block;
    height: 60px;
}

@media screen and (min-width: 1024px) {
    .footer-logo {
        padding-left: 30px;
    }
}

.footer-logo .logo img {
    height: 40px;
 }

footer::after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100vw;
    z-index: -1;
    height:100%;
    background-color: #666666;
}

footer .container {
    display:flex;
    justify-content: space-between;
    color: white;
    padding: 30px 0;
}

.footer__logo a {
    display: block;
}

footer .copyright {
    text-align: right;
    color: white;
}

footer .footer__menu ul.menu {
    display:flex;
    margin-bottom: 20px;
}

footer a {
    color: white !important;
    font-size:24px;
    font-weight: bold;
}

footer .footer__menu ul li {
    text-transform: uppercase;
    font-weight: 500;
    margin-left: 30px;
    font-size: 18px;
    color: white;
}
@media screen and (max-width: 1024px) {

    footer {
        padding: 2em 15px 1em;
    }

    footer .copyright {
        text-align: center;
    }
    footer .container {
        flex-wrap: wrap;
    }

    footer .footer__menu ul.menu {
        flex-wrap: wrap;
        margin-top: 15px;
        justify-content: center;
    }
    footer .footer__menu ul.menu li {
        flex-direction: column;
        margin: 0 15px 10px;
    }

    .footer__logo {
        margin: 0 auto;
    }

    .footer-logo {
        display: flex;
        justify-content: center;
        width: 100%;
    }

    .footer-logo a {
        display:inline-block;
        width: auto;
    }
    
    .footer-logo .logo img {
        max-height: 40px;
        width: auto;
        height: 100%;
        object-fit: contain;
        max-width: 100%;
        object-position: center center;
    }

    footer .copyright p {
        margin-bottom: 0;
    }
}
/* header */

header {
    z-index: 100;
    position: relative;
}

.header-logo {
    height: 50px;
    max-height: 50px;
}

.header-logo a {
    display: inline-block;
    height: 100%;
}

.header-logo .logo img {
   height: 50px;
   max-height: 50px;
   object-fit: contain;
   width: 100%;
   height: 100%;
}

.custom-logo-link {
    height: 40px;
    min-width: 150px;
}
.custom-logo-link img {
    object-fit: contain;
    width: 100%;
    height: 100%;
}

header .search {
    margin-left: 30px;
}

header .search-form {
    margin: 1rem auto;
}

.social-links {
    display: flex;
}
.social-links li {
    margin: 0;
}
.social-links li a {
    width: 30px;
    height: 30px;
    display:block;
    margin-left: 25px;
}

.social-links li a img {
    object-fit: contain;
    width: 100%;
    height: 100%;
}

.df-mainnav nav {
    overflow: visible;
    padding: 0;
    border-bottom: 3px solid rgb(223,223,223);
    margin-bottom: 15px;
}



.df-mainnav .top-section {
    position: relative;
    padding: 10px 0;
}

.df-mainnav .top-section::after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100vw;
    z-index: -1;
    height:100%;
    background-color: rgb(236,236,236);
}

.df-mainnav .top-section .container {
  
    display:flex;
    justify-content: space-between;
    align-items: center;
}

@media screen and (max-width: 1024px) {
    .df-mainnav .top .container {
        flex-wrap: wrap;
    }
    .df-mainnav .top-section .container {
        flex-direction: column;
    }
}
@media screen and (min-width: 1024px) {
    .df-mainnav nav li {
        line-height: 1.5rem;
    }
}

.df-mainnav .top-section .top__right {
    display: flex;
    align-items: center;

}

.df-mainnav h1 {
    position: relative;
}


.df-mainnav nav > div {
    float: none !important;
}

.primary-menu {
    display:flex;
}

@media screen and (max-width: 859px) {
    .primary-menu {
       flex-wrap: wrap;
       justify-content: center;
       flex-direction: column;
    }
    .primary-menu > li a:first-of-type {
        padding: 6px !important;
    }
    .primary-menu > li .sub-menu {
        position: absolute;
        top: 100%;
        left: 50% !important;
        transform: translateX(-50%);
        z-index: 100;
        background-color: rgb(103,101,102);
        opacity: 0;
        transition: opacity 300ms ease-in-out, transform 300ms ease-in-out;
        padding: 0px 15px 15px 15px;
        pointer-events: none;
    }
}

.primary-menu > li {
    position: relative;
    transition: background-color 300ms ease-in-out;
}

.primary-menu > li a {
    display: block;
    padding: 40px 10px;
    font-size: 28px;
}



@media screen and (min-width: 860px) and (max-width: 1024px) {
    .primary-menu > li a:first-of-type {
        padding: 10px;
    }

    .primary-menu > li.menu-item-has-children::after {
        right: -5px;
    }
}

.primary-menu > li .sub-menu {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 100;
    background-color: rgb(103,101,102);
    opacity: 0;
    transition: opacity 300ms ease-in-out, transform 300ms ease-in-out;
    padding: 0px 15px 15px 15px;
    pointer-events: none;
}
/** TESTING **/
@media screen and (min-width: 860px) {
    .primary-menu > li > a {
        padding: 16px 10px 10px!important;
    }
    .primary-menu > .menu-item-has-children::after {
        right: -5px !important;
    }
    .primary-menu > li .sub-menu {
        padding-bottom: 0 !important;
    }
    .primary-menu > li .sub-menu li a {
        padding: 14px 7px !important;
    }
    .primary-menu > li .sub-menu li:last-child a {
        padding: 12px 7px 14px !important;
    }
}
@media screen and (min-width: 860px) and (max-width: 1368px) {
    .primary-menu > li:last-child .sub-menu {
        left: auto;
        right: 0;
    }
}


.primary-menu > li:hover .sub-menu {
    opacity: 1;
    pointer-events: all;
}

.primary-menu > .menu-item-has-children a {
    padding-right: 25px;
}

.primary-menu > .menu-item-has-children::after {
    content: '';
    position: absolute;
    top: 56%;
    transform: translateY(-50%);
    right: 5px;
    width: 20px; height:20px;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="white"><path d="M7 10l5 5 5-5z"/></svg>');
    background-size: contain;
    background-repeat: no-repeat;
    filter:invert();
}

.primary-menu > .menu-item-has-children:hover::after {
   filter:none;
}


.primary-menu > li .sub-menu li {
    display: block;
    margin: 0 !important;
    position: relative;
}
.primary-menu > li .sub-menu li:after {
    background-color: rgb(236,236,236);
    content: '';
    display: block;
    height: 100%;
    left: -15px;
    position: absolute;
    opacity: 0;
    top: 0;
    transition: opacity .2s linear;
    width: calc(100% + 30px);
    z-index: 0;
}
.primary-menu > li .sub-menu li:hover:after,
.primary-menu > li .sub-menu li.current-menu-item:after {
    opacity: 1;
}
.primary-menu > li .sub-menu li:hover > a,
.primary-menu > li .sub-menu li.current-menu-item a {
    color: #335e96;
}

.primary-menu > li .sub-menu li > a {
    position: relative;
    z-index: 2;
}




.primary-menu > li .sub-menu li a {
    padding: 20px 10px;
    font-size: 22px;
    text-transform: none;
    display: block;
    transition: color 300ms ease-in-out;
}



.primary-menu > li.menu-item-has-children:hover {
    background-color: rgb(103,101,102);
}

.primary-menu > li.menu-item-has-children:hover a {
    text-decoration: none;
    color: white;
     
}
 

/* page reviews index */

body.post-type-archive-reviews .df-rails, body.definitives-template-default  .df-rails {
    padding: 30px;
}

body.post-type-archive-reviews .df-rails .reviews-index-container {
    display: flex;
    justify-content: space-between;
}

body.post-type-archive-reviews .df-sidebarContent, body.archive .df-sidebarContent {
   margin: 0;
   float: none;
   right: auto;

}

body.post-type-archive-reviews  .df-rails h2 {
    font-size: 30px;/*2em*/
    color: #424242;
    margin-bottom: 20px;
    font-weight: 600;
}

/* homepage */
/* grey  color: #424242;
blue: color: #335e96; */

body.home .df-rails {
    padding: 0 30px;
}

body.home h2 {
    font-size: 40px;
    color: #424242;
    margin-bottom: 20px;
    width: 100%;
    line-height: 1.2;
    letter-spacing: -.3px;
}
body.home h3 {
    font-size: 32px;
    color: #335e96;
    margin: 15px 0;
    line-height: 1.2;
}
body.home h4 {
    font-size: 20px;
    color: #424242;
    margin-bottom: 15px;
    line-height: 1.2;
}
body.home p  {
    font-size: 24px;
    line-height: 1.2;
    color: #424242;
    margin-bottom: 15px;
}


body.home .df-rails .df-sidebarContent {
    margin: 0;
    right: auto;
    padding: 0;
}

body.home .df-rails .df-sidebarContent h3 {
    margin-top: 0;
    color: #424242;
 
}

body.home .df-rails h2.latest-reviews {
    font-size: 40px;
    color: #424242;
    margin-bottom: 5px;
    width: 100%;
    grid-column: 1 / span 3;
}


body.home .df-rails ol {
    /* display a 3 col grid */
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 15px 50px;
}


@media screen and (max-width: 1024px) {
    body.home .df-rails ol {
        grid-template-columns: 1fr;
    }

    body.home .df-rails .featured-review  {
        grid-column: 1 / span 3;
    
    }
}

/* at a max width of 1024 */


body.home .df-rails .first-post {
    padding: 15px 0;
    border-bottom: solid 2px rgb(177,175,176);
    margin-bottom: 15px;
    width: 100%;
    /* span 3 columns */
    grid-column: 1 / span 3;
}

.df-rails .first-post .featured-review .featured-image {
    aspect-ratio: 16/6;
    width: 100%;
    /* height: 500px; */
    height: auto;
    background: gray;
    margin-bottom: 15px;
}

.df-rails .first-post .featured-review .featured-image img {
    object-fit: cover;
    width: 100%; height: 100%;
}

.df-rails .first-post .featured-review h2 {
    text-align: center;
    font-size: 80px;
    line-height: 1.2;
    color: #335e96;
    margin-bottom: 10px;
    transition: color 300ms ease-in-out;
}

.df-rails .first-post:hover .featured-review h2 {
    color: #424242;

}

.df-rails .first-post .featured-review h4 {
    font-size: 24px;
    color: #424242;
    margin-bottom: 15px;
}

.df-rails .first-post .featured-review .featured-review__details {
    margin:0 auto 15px auto;
    text-align: center;
    max-width: 900px;
}
.df-rails .first-post .featured-review .featured-review__details p {
    font-size: 28px;
    line-height: 1;
}
/* building subsequent reviews */
.df-rails .featured-review h3 {
    font-size: 32px;
    color: #335e96;
    margin: 15px 0;
}

.df-rails .featured-review p  {
    font-size: 22px 
    line-height: 1.2;
    color: #424242;
    margin-bottom: 15px;
}

.df-rails .featured-review h4  {
    font-size: 20px;
    color: #424242;
    margin-bottom: 15px;
}
.df-rails .featured-review .featured-review__details {
    margin-top: 5px;
}

.df-rails .featured-review .featured-image {
    background-color: lightskyblue;
}

@media screen and (max-width: 960px) {

    .df-rails .first-post .featured-review h2 {
        font-size: 50px;
    }

    .df-rails .first-post .featured-review h4 {
        font-size: 22px;
    }

    .df-rails .first-post .featured-review .featured-review__details p,
    .df-rails .featured-review p,
    .home__definitives-and-features a p {
        font-size: 20px;
        line-height: 1.2 !important;
    }

    .df-rails .first-post .featured-review .featured-image {
        aspect-ratio: 16/9;
    }
    
}

/* home definitive */

.home__definitives-and-features {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 15px;
    width: 100%;
    padding: 30px 0;
    border-top: solid 2px lightgray;
}

.home__definitives-and-features .definitives .definitive-post {
  display: block;
  grid-column: 1 / span-1;
  text-decoration: none;
}

@media screen and (min-width: 1024px) { 
    .home__definitives-and-features > .definitives .definitive-post .featured-image {
        aspect-ratio: 986/1479;
    }
    .home__definitives-and-features > .definitives .definitive-post .featured-image img {
        aspect-ratio: 986/1479;
        object-fit: inherit;
    }
}

/* home features */
.recent-features  {
    padding-left: 50px;
}
.recent-features .feature-post {
    background-color: lightgray;
    display: flex;
    align-items: center;
    padding: 20px;
    text-decoration: none;
}

.recent-features .feature-post .featured-image {
    width: 60%;
    height: 250px;
}

.recent-features .feature-post .featured-image img {
    object-fit: cover;
    width: 100%;
    height: 100%;

}

.home__definitives-and-features .recent-features {
    display: block;
    grid-column: 2 / span-2;
}
@media screen and (min-width: 1024px) {
    .home__definitives-and-features .recent-features .feature-post {
        padding: 20px 20px 0 20px;
    }
    .home__definitives-and-features .recent-features .feature-post:last-child {
        padding-bottom: 20px;
    }
    .home__definitives-and-features .recent-features .feature__details .eyebrow {
        font-size: 14px !important;
        letter-spacing: .25px;
    }

    .home__definitives-and-features .recent-features .feature__details h3 {
        font-size: 28px;
    }

    .home__definitives-and-features .recent-features .feature__details h4 {
        line-height: 1 !important;
        margin-bottom: 0;
        font-size: 16px;
    }

    .home__definitives-and-features .feature-post .feature__details p {
        line-height: 1.1 !important;
        letter-spacing: .2px;;
        font-size: 20px;
    }

    .more-reviews .more-reviews-list li {
        max-width: 200px;
    }

    .more-reviews .more-reviews-list li h3 {
        font-size: 22px !important;
        letter-spacing: .3px;
        margin-top: 7px;
        padding: 0 4px;
    }
}

.home__definitives-and-features .feature-post .feature__details  {
    width: 35%;
    padding-left: 20px;
}

.home__definitives-and-features .feature-post .feature__details p:empty {
    display: none;
}

.home__definitives-and-features .feature-post .feature__details .eyebrow {
    text-transform: uppercase;
    color: #424242;
    font-size: 16px;
    font-weight: bold;
}

@media screen and (max-width: 1024px) { 
    .home__definitives-and-features {
        grid-template-columns: 1fr;
    }

    .home__definitives-and-features .recent-features {
        grid-column: 1 / span 1;
        padding-left: 0;
    }

    .home__definitives-and-features .recent-features .feature-post {
        flex-wrap: wrap;
    }

    .home__definitives-and-features .feature-post .feature__details {
        width: 100%;
        padding-left: 0;
    }

    .recent-features .feature-post .featured-image {
       width: 100%;
       height: 200px;
    }

    .home__definitives-and-features .feature-post .feature__details .eyebrow {
        display: block;
        margin-top: 10px;
    }

}

/* home more reveiws */

.more-reviews {
    text-align: center;
}

.more-reviews .hr {
    max-width: 500px;
    height: 2px;
    background-color: rgb(177,175,176);
    margin: 30px auto 20px auto;
}

.more-reviews h2 {
    text-align: center;

   
}

.more-reviews h3 {
    font-size: 28px;
text-align: left;
}

.more-reviews-list {
    display: flex;
    gap: 50px;
    justify-content: center;
}

.more-reviews-list li {
    width: 100%;
}

.more-reviews-list li a {
    /* display:block; */
    display: flex;
    flex-direction: column;
    align-items: center;
    text-decoration: none;
   
}

.more-reviews-list li a img {
    object-fit: cover;
    /* max-height: 300px; */
    max-width: 200px;
    width: 100%;
    height: auto;
    background-color: lightgray;
}

.more-reviews-list li a .featured-image {
    width: 200px;
    height: 300px;
    overflow: hidden;
}

.more-reviews-list li a .more-review__details h3 {
    text-align: center;
}

@media screen and (max-width: 1024px) {
    .more-reviews-list {
        flex-wrap: wrap;
    }
    .more-reviews-list li {
        width: 33.333%;
    }
}


@media screen and (max-width: 768px) {
    .more-reviews-list {
        flex-wrap: wrap;
    }
    .more-reviews-list li {
        width: 50%;
    }
}

@media screen and (max-width: 450px) {
    .more-reviews-list {
        flex-wrap: wrap;
    }
    .more-reviews-list li {
        width: 100%;
    }

}

/* single reviews and features(posts) */

body.single .df-rails, body.single-post .df-rails, body.archive .df-rails  {
    padding: 10px 30px 30px 30px;
}

body.single .df-rail, body.single-post .df-rail {
    display:flex;
    
   
}

body.single .df-rail .df-rightRail, body.single-post .df-rail .df-rightRail,  body.archive .df-rail .df-rightRail {
   width: 25%;
}


body.single .df-mainContainer, body.single-post .df-rail .df-mainContainer, body.archive .df-rail .df-mainContainer {
    margin-right: 0;
    width: 75%;
    padding-right: 60px;
} 

@media screen and (max-width: 1024px) {
   
    body.single .df-mainContainer, 
    body.single-post .df-rail .df-mainContainer, 
    body.archive .df-rail .df-mainContainer,
    body.single-definitives .df-rail .df-rightRail {
        margin-right: 0;
        width: 100%;
        padding-right: 0px;
    } 
    body.single-definitives .df-rail,
    body.single-definitives .df-rail .df-rightRail,
    body.single-definitives #review .review__film-details {
        display: flex;
        flex-direction: column;
    }

    body.single-definitives .df-rail .df-rightRail {
        padding: 0;
    }
}

body.single h2, body.page h2, body.single-definitives h2, body.single-post h2, body.archive h2 {
    font-size: 36px;
   
    margin-bottom: 15px;
  
    line-height: 1.2;
}

body.single h4,  body.single-definitives h4, body.single-post h4 {
    font-size: 18px;
   
    margin-bottom: 15px;
    line-height: 1.2;
}

body.single .df-rails .df-sidebarContent, body.single-definitives .df-rails .df-sidebarContent body.single-post .df-rails .df-sidebarContent {
    margin: 55px 0 0 0;
    float: none;
    right: auto;
}

body.single .df-sidebarContent #block-16 {
    display: none;
}

.single-review h1, .single-feature h1, .single-definitive h1 {
    font-size: 60px;
    color: #335e96;
    margin-bottom: 15px;
    line-height: 1;
}

.single-review .single__featured-image, .single-definitive .single__featured-image .single-feature .single__featured-image {
    margin-bottom: 15px;
}

.single-review .single__featured-image img, .single-definitive .single__featured-image img .single-feature .single__featured-image img  {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.single-review .details, .single-definitive .details, .single-feature .details {
   border-bottom: 2px solid lightgray;
   padding-bottom: 15px;
   margin-bottom: 30px;

}

.single-review__content p span img.alignleft, .single-feature__content p span img.alignleft {
    float: left !important;
    margin: 20px 30px 20px 0;
}
.single-review__content p span img.alignright, .single-feature__content p span img.alignright{
    float: right !important;
    margin: 20px 0 20px 30px;
}

img.alignright {
    float: right !important;
    margin: 20px 0 20px 30px;
}

img.alignleft {
    float: left !important;
    margin: 20px 30px 20px 0;
}

@media screen and (max-width: 1024px) {
    img.alignleft {
        float: none !important;
        margin: 20px auto 20px;
    }
}

.single-review__content {
    font-size: 20px;
    font-family: 'Inherit', sans-serif;
    line-height: 1.2;
}



.single-review .stars .star-rating {
    font-size: 60px;
    line-height: 60px;
    margin-top: 20px;
}

.review__film-details {
    border-top: 2px solid lightgray;
    border-bottom: 2px solid lightgray;
    padding: 30px 0;
    margin: 30px 0;
    display: flex;
    align-items: center;
    font-size: 20px;
    font-family: 'Inherit', sans-serif;
    line-height: 36px;
}


.review__film-details .film-poster {
   aspect-ratio: 2/3;
   height: 300px;
}

.review__film-details .film-poster img {
    object-fit: cover;
    width: 100%;
    height: 100%;
    object-position: center;
}

.review__film-details .film-details {
    padding-left: 30px;
    font-size: 22px;
}

.review__film-details .film-details {
    dd, 
    dt {
        line-height: 1.4;
    }
    dd {
        margin-bottom: 10px;
        /* padding-bottom: 0; */
        line-height: 1.4;
    }
}

.single-review__widget, .single-feature__widget {
    width: 100%;
    height: 100px;
    background: gray;
    padding: 30px;
    box-sizing: border-box;
}

.single-review__support, .single-feature__support {
    background-color: lightgrey;
    width: 100%;
    padding: 50px;
    margin: 30px 0;
    box-sizing: border-box;
}

.single-review__trailer iframe, .single-feature__trailer iframe {
    width: 100%;
    height: 100%;
   aspect-ratio: 16/9;
   box-sizing: border-box;
}


@media screen and (max-width: 1024px) { 

    body.single-reviews .df-rrCoverList li {
       height: auto;
    }
    body.single-reviews .df-rail, body.single-post .df-rail {
        flex-wrap: wrap;
    }

    body.single-reviews .df-mainContainer, body.single-post .df-rail .df-mainContainer {
        width: 100%;
    }

    body.single-reviews .df-rail .df-rightRail, body.single-post .df-rail .df-rightRail {
        width: 100%;
    }
    .review__film-details {
        flex-wrap: wrap;
    }

    .review__film-details .film-details {
        padding-left: 0;
        margin-top: 30px;
    }

    .df-sidebarContent ol, .df-sidebarContent ul {
        display :flex;
        flex-wrap: wrap;
    }
    .df-sidebarContent ol li, .df-sidebarContent ul li {
        width: 100%;
        float: none;
        max-width: none;
        margin: 15px 0;
    }

    .df-sidebarContent ol li a span, .df-sidebarContent ul li a span {
        width: 100%; 
        text-align: center;
        display: block;

    }
    .df-sidebarContent ol li a div, .df-sidebarContent ul li a div {
        width: 100%; 
        text-align: center;
        display: block;
    }
    .df-sidebarContent ol li a img, .df-sidebarContent ul li a img {
        margin: 0 auto;
        width: 100%;
        height: auto;
    }
}



/* sidebars */
.df-sidebarContent h3 {
    font-size: 36px;
    line-height: 1.2;
}

@media screen and (min-width: 800px) {
    .df-rails  {
        padding-left: 0;
    }
}

@media screen and (min-width: 1024px) {
    .df-rails {
        padding: 0 30px;
    }
    .df-rrCoverList > li  {
    width: 100%;
    max-width: none;
    }
    #bibliography {
        font-size: 24px;
        line-height: 1.4;
    }
}

#related-list, #review-list {
    /* border-top: 3px solid rgb(223,223,223); */
    border-bottom:  3px solid rgb(223,223,223);
    padding: 10px 0 50px 0;
}

#related-list li a, #review-list li a {
    font-size: 24px;
    color:#335e96;
    font-family: 'Cabin', sans-serif;
    /* text-align: center; */
    display: flex !important;
    flex-direction: column;
    align-items: center;
    width: 100%;
}

#related-list li a em {
    display:block;
}

#related-list li a:hover, #review-list li a:hover {
    color: #424242;
}

#related-list li a img, #review-list li a img {
    width: 100%;
    height: auto;
    max-width: 260px;
    /* max-height: 300px; */
}

#related-list li .title, #review-list li .title {
    text-align: center;
}

#review-list .title,
#related-list .title {
    line-height: 1.4em;
}

.df-rrCoverList {
    overflow:hidden;
}

.df-sidebarContent h3 {
    margin-bottom: 30px;
}

.df-rrCoverList > li,
#review-list ol > li  {
    margin-bottom: 30px;
}

.df-rrCoverList > li:last-of-type {
    margin-bottom: 0;
}

.df-rrCoverList > li img {
    margin-bottom: 10px;
    width: 200px;
    height: 300px;
}

body.single #review-list ol li, body.archive #review-list ol li {
    margin-bottom: 30px;
}

body.single #review-list ol li a img, 
body.archive #review-list ol li a img,
body.page #review-list ol li a img  {
    width: 100%;
    /* max-height: 300px; */
    margin-bottom: 10px;
}


/* search page */

body.search .df-rails {
    padding-left: 0;
}

body.single-post .df-rails #df-related #review-list ol li {
    display: block;
    max-width: 100%;
    margin-bottom: 40px;
    text-align: center;
}

body.single-post #review-list ol li a img {
    width: 100%;
    height: auto;
    margin-bottom: 5px;
}

body.single-post #review-list ol li a  {
    color: #335e96;
    font-size: 24px;
    font-weight: bold;
}

.single-post__featured-image {
    width: 100%;
    height: 450px;
    margin-bottom: 40px;
}

.single-post__featured-image img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.guest-appearances .single-post__featured-image {
    height: auto;
}

/* .guest-appearances .single-post__featured-image img {
    object-fit: cover;
    width: 100%;
    height: 100%;
} */

.single__pt {
    display:flex;
    align-items: center;
}

.single__pt h2 {
    width: auto;
    margin: 0 10px 0 0;
}

.single__pt p {
    margin: 0;
    font-style: italic;
    font-size: 20px;
}


/* body archive */
body.archive .df-rail {
    flex-wrap: wrap;
}
body.archive .df-articleHead {
    width: 100%;
}

body.archive .df-mainContent {
    width: 100%;
    box-shadow: none;
    padding-left: 0;
}

body.archive .df-rail:not(.df-sidebarContent),
body.page .df-rail:not(.df-sidebarContent),
body.page-template-archive-posts .df-rail:not(.df-sidebarContent) {
    /* width: calc(75% - 60px); */
    width: 75%;
    padding-right: 0;
}

@media screen and (max-width: 960px) {
    body.archive .df-rail:not(.df-sidebarContent),
    body.page .df-rail:not(.df-sidebarContent),
    body.page-template-archive-posts .df-rail:not(.df-sidebarContent) {
        width: 100%;
        padding-right: 0;
    }
    body > header + .df-rails {
        padding: 0 20px;
    }

    body > header + .df-rails .df-mainRail + .df-rightRail {
        width: 100%;
        padding: 0;
    }
}

@media screen and (min-width: 1024px) {
    body.archive .df-rail:not(.df-sidebarContent),
    body.page .df-rail:not(.df-sidebarContent),
    body.page-template-archive-posts .df-rail:not(.df-sidebarContent) {
        max-width: 1005px;
    }

    body.archive .df-tilewall ol {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 15px 50px;
    }

    body.archive .df-tilewall ol li:first-child {
        border-bottom: solid 2px rgb(177,175,176);
        grid-column: 1 / span 2;
        padding-bottom: 20px
    }

    body.archive .df-tile:not(:first-child) {
        float: none;
        width: 100%;
    }
}

body.archive .df-rightRail,
body .df-rightRail {
    width: 25%;
    margin-top: 60px;
}

@media screen and (min-width: 600px) {
    body .df-titleBG + .df-articleInfo .df-titleMain {
        background-color: #fff;
    }
    body .df-titleMain {
        box-sizing: border-box;
        padding: 5px 0; 
    }
}

@media screen and (max-width: 1024px){

    body.archive .df-rails {
        display:block !important;
    }
    body.archive .df-rail,
    body.archive .df-rail:not(.df-sidebarContent) {
        width: 100%;
        padding-right: 0;
    }

    body.archive .df-rightRail {
        width: 100%;
        margin-top: 30px;
    
    }
}

@media screen and (min-width: 1024px) {
    body.archive .df-rightRail,
    body .df-rightRail {
        width: calc(25% - 20px);
        margin-top: 60px;
    }
}

body.archive .df-rails {
    display: flex;
}

body.archive,
body.page-template-archive-posts {
    /* background: #fff !important; */
    font-family: 'Inherit', sans-serif;
    font-size: 24px;
}


body.archive #review-list ol li {
    list-style: none;
}

body.archive #review-list ol {
    height: auto !important;
    
}

body.archive .df-sideRail {
    overflow: visible;

}

body.archive .df-mainContent :first-child {
    margin-top: 0;
}

body.archive .df-titleMain {
    background-color: transparent  !important;
}

.df-titleMain h2 p {
    margin-bottom: 0px;
 
}

.df-titleMain h4 {
    color:#424242 !important;
}

body.archive .df-tile a {
    background-color: transparent !important;
 
}

.df-titleAux {
    background-color: transparent !important;
    padding-left: 0 !important; 
}
.df-titleAux h2 {
    font-size: 32px;
    color: rgb(103,101,102) !important;
    margin-bottom: 15px;
   
}

body.archive .df-titleMain h2 {
    margin-bottom: 15px;
}
body.archive .df-titleMain h2,
body.page-template-archive-posts .df-titleMain h2,
body.archive .df-titleMain h2 em {
    color: #335e96;
    font-style: normal;
}

body.page-template-archive-posts .df-tile:first-child .df-titleMain {
    padding-right: 1.2rem;
    padding-left: 1.2rem;
    text-align: center;
}

body.archive .df-titleMain h2 em {
    font-style: normal;
    font-size: 32px;
}

body.archive .df-tile:first-child h2 em {
    font-size: 50px;
    width: 100%;
    line-height: 1.2;
}

body.archive .df-tile:first-child {
    text-align: center;
}

body.archive .df-tile:not(:first-child) .df-titleMain {
  padding-left: 0 !important;
}

body.archive .pagination,
body.page-template-archive-posts .pagination,
body.search-results .pagination {
    background-color: rgb(236,236,236);
    color: rgb(103,101,102);
}


body.archive .pagination a,
body.page-template-archive-posts .pagination a,
body.search-results .pagination a {
    color: rgb(103,101,102);
}

@media screen and (min-width: 1024px){
    body.archive .pagination a,
    body.page-template-archive-posts .pagination a,
    body.search-results .pagination a,
    body.search-results .pagination .page-numbers {
        font-size: 24px;
    }
    body.search-results .pagination {
        padding-top: 1.85em;
        padding-bottom: 1.85em;
    }
}

.df-titleMain .excerpt {
    font-size: 24px;
    color: rgb(103,101,102);
    font-family: 'Arial', sans-serif !important;
    font-weight: 400;
}

#related-list h3, #review-list h3 {
    text-transform: none;
    text-align: center;
}

