body.view-entry .blog-movie-teaser,
body.view-item .blog-movie-teaser {
    display: none;
    }
body {
    background-color: #1c2f45;
    }
/* Kontrastfix WCAG AA: EasyBlog Post-Titel Links erben sonst eine zu dunkle Farbe */
body .eb-post-title a,
body .eb-post-title a.text-inherit {
    color: #d6e8f8 !important;
    }
body .eb-post-title a:hover,
body .eb-post-title a:focus,
body .eb-post-title a.text-inherit:hover,
body .eb-post-title a.text-inherit:focus {
    color: #3ea8fa !important;
    }

/* ── Listing: visuelle Differenzierung ───────────────────────── */

/* Linke Akzentlinie + etwas Luft pro Post-Eintrag */
.eb-post-listing__item {
    border-left: 3px solid rgba(62,168,250,0.25);
    padding-left: 1rem;
    transition: border-color 0.2s ease;
    }
.eb-post-listing__item:hover {
    border-left-color: #3ea8fa;
    }

/* Divider zwischen Posts: dezente Linie statt nur Abstand */
.eb-post-listing.is-row.has-divider > * + * {
    border-top: 1px solid rgba(255,255,255,0.07) !important;
    padding-top: 1.2rem;
    }

/* Metadata (Datum · Autor · Kategorie): etwas heller als Standardgrau */
body .eb-post-meta,
body .eb-post-meta.text-muted {
    color: #7a9bbf !important;
    font-size: 0.85rem;
    }

/* Kategorie-Link in der Meta-Zeile: kleines Highlight */
body .eb-post-meta a {
    color: #3ea8fa !important;
    text-decoration: none !important;
    }
body .eb-post-meta a:hover {
    text-decoration: underline !important;
    }

/* Actions (Hits, Comments): leicht heller als der Rest */
body .eb-post-actions,
body .eb-post-actions.text-muted {
    color: #5a7a9a !important;
    font-size: 0.82rem;
    }
.blog-movie-teaser {
    display: flex;
    gap: 1.5rem;
    margin-bottom: 2rem;
    align-items: flex-start;
    flex-wrap: wrap;
    }
body.smartphone-small-portrait .blog-movie-teaser,	
body.smartphone-small-landscape .blog-movie-teaser,	
body.smartphone-portrait .blog-movie-teaser,	
body.smartphone-landscape .blog-movie-teaser,
body.smartphone-large-portrait .blog-movie-teaser,	
body.smartphone-large-landscape .blog-movie-teaser,
body.tablet-small-portrait .blog-movie-teaser,	
body.tablet-small-landscape .blog-movie-teaser,
body.tablet-portrait .blog-movie-teaser,
body.tablet-landscape .blog-movie-teaser,
body.tablet-large-portrait .blog-movie-teaser,	
body.tablet-large-landscape .blog-movie-teaser {
    flex-direction: row;
    align-items: flex-start;
    gap: 0.9rem;
    margin-bottom: 1.3rem;
    flex-wrap: nowrap;
    }	
.blog-movie-teaser-figure {
    flex-shrink: 0;
    }
body.smartphone-portrait .blog-movie-teaser-figure {
    flex-shrink: 0;
    margin: 0;
    }
body.smartphone-large-portrait .blog-movie-teaser-figure,
body.smartphone-large-landscape .blog-movie-teaser-figure {
    flex-shrink: 0;
    margin: 0;
    }	
.blog-movie-teaser-image {
    width: 6.25rem;
    height: auto;
    border-radius: 0.5rem;
    box-shadow: 0 0 0.25rem rgba(0,0,0,0.4);
    object-fit: cover;
    }
body.smartphone-small-portrait .blog-movie-teaser-image,
body.smartphone-small-landscape .blog-movie-teaser-image,	
body.smartphone-portrait .blog-movie-teaser-image,
body.smartphone-landscape .blog-movie-teaser-image,	
body.smartphone-large-portrait .blog-movie-teaser-image,
body.smartphone-large-landscape .blog-movie-teaser-image,
body.tablet-small-portrait .blog-movie-teaser-image,
body.tablet-small-landscape .blog-movie-teaser-image,
body.tablet-portrait .blog-movie-teaser-image,
body.tablet-landscape .blog-movie-teaser-image,
body.tablet-large-portrait .blog-movie-teaser-image,
body.tablet-large-landscape .blog-movie-teaser-image {
    width: 3.8rem; 
    height: 3.8rem; 
    min-width: 3.8rem;
    min-height: 3.8rem;
    object-fit: cover;
    border-radius: 0.37rem;
    }	
.blog-movie-teaser-meta {
    flex-grow: 1;
    min-width: 60%;
    }
body.smartphone-small-portrait .blog-movie-teaser-meta,	
body.smartphone-small-landscape .blog-movie-teaser-meta,	
body.smartphone-portrait .blog-movie-teaser-meta,	
body.smartphone-landscape .blog-movie-teaser-meta,
body.smartphone-large-portrait .blog-movie-teaser-meta,	
body.smartphone-large-landscape .blog-movie-teaser-meta,
body.tablet-small-portrait .blog-movie-teaser-meta,	
body.tablet-small-landscape .blog-movie-teaser-meta,
body.tablet-portrait .blog-movie-teaser-meta,	
body.tablet-landscape .blog-movie-teaser-meta,
body.tablet-large-portrait .blog-movie-teaser-meta,	
body.tablet-large-landscape .blog-movie-teaser-meta {
    min-width: 0;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    }	
.blog-movie-teaser-title {
    font-size: 1.5rem; 
    font-weight: bold;
    margin-bottom: 0.3rem;
    line-height: 1.2;
    color: #fff;
    }
body.smartphone-small-portrait .blog-movie-teaser-title,	
body.smartphone-small-landscape .blog-movie-teaser-title,	
body.smartphone-portrait .blog-movie-teaser-title,	
body.smartphone-landscape .blog-movie-teaser-title,
body.smartphone-large-portrait .blog-movie-teaser-title,	
body.smartphone-large-landscape .blog-movie-teaser-title,
body.tablet-small-portrait .blog-movie-teaser-title,	
body.tablet-small-landscape .blog-movie-teaser-title,
body.tablet-portrait .blog-movie-teaser-title,	
body.tablet-landscape .blog-movie-teaser-title,
body.tablet-large-portrait .blog-movie-teaser-title,	
body.tablet-large-landscape .blog-movie-teaser-title {
    font-size: 1.2rem;
    margin-bottom: 0.14rem;
    line-height: 1.14;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    color: #fff;
    }	
.blog-movie-teaser-title a {
    text-decoration: none;
    color: inherit;
    }
.blog-movie-teaser-subheadline {
    font-size: 1rem; /* 16px */
    color: #ccc;
    margin-bottom: 0.5rem;
    }
body.smartphone-small-portrait .blog-movie-teaser-subheadline,	
body.smartphone-small-landscape .blog-movie-teaser-subheadline,	
body.smartphone-portrait .blog-movie-teaser-subheadline,	
body.smartphone-landscape .blog-movie-teaser-subheadline,
body.smartphone-large-portrait .blog-movie-teaser-subheadline,	
body.smartphone-large-landscape .blog-movie-teaser-subheadline,
body.tablet-small-portrait .blog-movie-teaser-subheadline,	
body.tablet-small-landscape .blog-movie-teaser-subheadline,
body.tablet-portrait .blog-movie-teaser-subheadline,	
body.tablet-landscape .blog-movie-teaser-subheadline,
body.tablet-large-portrait .blog-movie-teaser-subheadline,	
body.tablet-large-landscape .blog-movie-teaser-subheadline {
    font-size: 0.86rem;
    color: #b6c7de;
    margin-bottom: 0.21rem;
    line-height: 1.12;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    }	
.blog-movie-teaser-year time {
    font-size: 0.875rem;
    color: #fff;
    }
body.smartphon-small-portrait .blog-movie-teaser-year time,
body.smartphone-small-large-portrait .blog-movie-teaser-year time,	
body.smartphone-portrait .blog-movie-teaser-year time,
body.smartphone-large-portrait .blog-movie-teaser-year time,
body.smartphone-large-landscape .blog-movie-teaser-year time,
body.tablet-small-portrait .blog-movie-teaser-year time,
body.tablet-small-landscape .blog-movie-teaser-year time,
body.tablet-portrait .blog-movie-teaser-year time,
body.tablet-landscape .blog-movie-teaser-year time,
body.tablet-large-portrait .blog-movie-teaser-year time,
body.tablet-large-landscape .blog-movie-teaser-year time{
    font-size: 0.74rem;
    color: #fff;
    letter-spacing: 0.02em;
    opacity: 0.98;
    margin: 0;
    }
.movie-post {
    max-width: 100%;
    margin: auto;
    padding: 30px 20px;
    font-family: 'Segoe UI', sans-serif;
    color: #e6eef5;
    line-height: 1.6;
    }
body.smartphone-portrait .movie-post {
    max-width: 100%;
    margin: auto;
    padding: 30px 5px;
    font-family: 'Segoe UI', sans-serif;
    color: #e6eef5;
    line-height: 1.6;
    }
body.smartphone-large-portrait .movie-post {
    max-width: 100%;
    margin: auto;
    padding: 30px 5px;
    font-family: 'Segoe UI', sans-serif;
    color: #e6eef5;
    line-height: 1.6;
    }	
.blog-author-portrait {
    position: absolute;
    top: -6px;
    right: 36px;
    width: 112px;
    height: 112px;
    z-index: 9;
    border-radius: 60px;
    overflow: visible;
    pointer-events: none;
    background: none;
    flex-direction: column;
    align-items: center;
    transition: top 0.2s, right 0.2s, width 0.2s, height 0.2s;
    box-shadow: 4px 4px 10px 4px rgba(0,0,0,0.4);
    }
body.smartphone-small-portrait .movie-head .blog-author-portrait,
body.smartphone-small-landscape .movie-head .blog-author-portrait {
    top: -35px;
    right: 0.4em;
    width: 50px;
    height: 50px;
   }	
body.smartphone-portrait .movie-head .blog-author-portrait {
    top: -35px;
    right: 0.6em;
    width: 50px;
    height: 50px;
   }
body.smartphone-landscape .movie-head .blog-author-portrait {
    top: -40px;
    right: 0.4em;
    width: 60px;
    height: 60px;
    }
body.smartphone-large-portrait .movie-head .blog-author-portrait {
    top: -35px;
    right: 0.6em;
    width: 50px;
    height: 50px;
   }
body.smartphone-large-landscape .movie-head .blog-author-portrait {
    top: -40px;
    right: 0.4em;
    width: 60px;
    height: 60px;
    }  	
body.tablet-small-portrait .movie-head .blog-author-portrait {
    top: -35px;
    right: 0.6em;
    width: 50px;
    height: 50px;
   }
 body.tablet-small-landscape .movie-head .blog-author-portrait {
    top: -40px;
    right: 0.4em;
    width: 60px;
    height: 60px;
    }  	
body.tablet-portrait .movie-head .blog-author-portrait {
    top: -35px;
    right: 0.6em;
    width: 50px;
    height: 50px;
   }
 body.tablet-landscape .movie-head .blog-author-portrait {
    top: -40px;
    right: 0.4em;
    width: 60px;
    height: 60px;
    }   
body.tablet-large-portrait .movie-head .blog-author-portrait {
    top: -35px;
    right: 0.6em;
    width: 50px;
    height: 50px;
   }
 body.tablet-large-landscape .movie-head .blog-author-portrait {
    top: -40px;
    right: 0.4em;
    width: 60px;
    height: 60px;
    } 	
.blog-author-portrait img {
    width: 100%;
    height: 100%;
    border-radius: 60px;
    object-fit: cover;
    display: block;
    box-shadow: 0 2px 24px rgba(20, 67, 123, 0.22), 0 0 0 5px #4c91c9;
    filter: drop-shadow(0 2px 7px #e1c67699) drop-shadow(0 1px 3px #14437baa);
    background: none;
    margin-bottom: 1em;
    }
.blog-author-name {
    font-weight: bold;
    margin-top: 2em;
    font-size: 0.95rem;
    }
.blog-author-role {
    font-size: 0.8rem;
    }
.blog-author-name,
.blog-author-role {
    color: #d6e3f0;
    margin: 0;
    padding: 0;
    text-align: center;
    text-shadow: 0 1px 0 #fff, 0 1.5px 3px rgba(28,47,69,0.07), 0 0.3px 0 #c4d4eb;
    }
body.smartphone-small-portrait .blog-author-name,
body.smartphone-small-landscape .blog-author-name,
body.smartphone-portrait .blog-author-name,
body.smartphone-landscape .blog-author-name,
body.smartphone-large-portrait .blog-author-name,
body.smartphone-large-landscape .blog-author-name,
body.tablet-small-portrait .blog-author-name,
body.tablet-small-landscape .blog-author-name,
body.tablet-portrait .blog-author-name,
body.tablet-landscape .blog-author-name,
body.tablet-large-portrait .blog-author-name,
body.tablet-large-landscape .blog-author-name {
    font-size: 0.75rem;	
    }	
body.smartphone-small-portrait .blog-author-role,
body.smartphone-small-landscape .blog-author-role,
body.smartphone-portrait .blog-author-role,
body.smartphone-landscape .blog-author-role,
body.smartphone-large-portrait .blog-author-role,
body.smartphone-large-landscape .blog-author-role,
body.tablet-small-portrait .blog-author-role,
body.tablet-small-landscape .blog-author-role,
body.tablet-portrait .blog-author-role,
body.tablet-landscape .blog-author-role,
body.tablet-large-portrait .blog-author-role,
body.tablet-large-landscape .blog-author-role {
    font-size: 0.55rem;
	text-shadow: none;
    }	
.movie-head {
    position: relative; 
    display: flex;
    align-items: flex-start;
    gap: 1.4em;
    }
.movie-head-meta {
    flex-grow: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    padding-right: 0.5em;
    }
body.smartphone-small-portrait .movie-head .movie-head-meta,
body.smartphone-small-landscape .movie-head .movie-head-meta,	
body.smartphone-portrait .movie-head .movie-head-meta,
body.smartphone-landscape .movie-head .movie-head-meta,
body.smartphone-large-portrait .movie-head .movie-head-meta,
body.smartphone-large-landscape .movie-head .movie-head-meta,
body.tablet-small-portrait .movie-head .movie-head-meta,
body.tablet-small-landscape .movie-head .movie-head-meta,
body.tablet-portrait .movie-head .movie-head-meta,
body.tablet-landscape .movie-head .movie-head-meta,
body.tablet-large-portrait .movie-head .movie-head-meta,
body.tablet-large-landscape .movie-head .movie-head-meta {
    margin-top:160px;
	margin-left: -120px;
    }
.movie-image {
    width: 256px;
    height: 256px;
    object-fit: cover;
    border-radius: 12px;
    flex-shrink: 0;
    display: block;
    margin-bottom: 2rem;
    box-shadow: 4px 4px 10px 4px rgba(0,0,0,0.4); 
    }
body.smartphone-small-portrait .movie-head .movie-image,
body.smartphone-small-landscape .movie-head .movie-image,
body.smartphone-portrait .movie-head .movie-image,
body.smartphone-landscape .movie-head .movie-image,
body.smartphone-large-portrait .movie-head .movie-image,
body.smartphone-large-landscape .movie-head .movie-image,
body.tablet-small-portrait .movie-head .movie-image, 
body.tablet-small-landscape .movie-head .movie-image,
body.tablet-portrait .movie-head .movie-image,
body.tablet-landscape .movie-head .movie-image,
body.tablet-large-portrait .movie-head .movie-image,
body.tablet-large-landscape .movie-head .movie-image {
    margin-top: -6px;
    border-radius: 12px;  
    width: 104px;
    height: 104px;
    margin-bottom: 0.2em;
    } 		
.movie-title {
    font-size: 2.2rem;
    margin: 0;
    color: #ffffff;
    text-shadow: 0 1.5px 0 #fff, 0 2px 6px rgba(28,47,69,0.09), 0 0.5px 0 #b6c4db;
}
body.smartphone-small-portrait .movie-title,
body.smartphone-small-landscape .movie-title {
	font-size: 1.6rem;
    }
body.smartphone-large-portrait .movie-title,
body.smartphone-large-landscape .movie-title {
	font-size: 2.0rem;
    }	
.movie-subheadline {
    font-style: italic;
    color: #a5bacf;
    margin-top: 0.8rem;
    margin-bottom: 0.5rem;
    text-shadow: 0 1px 0 #fff, 0 1.5px 3px rgba(28,47,69,0.07), 0 0.3px 0 #c4d4eb;
    }
body.smartphone-portrait .movie-head .movie-subheadline,
body.smartphone-landscape .movie-head .movie-subheadline,
body.smartphone-large-portrait .movie-head .movie-subheadline,
body.smartphone-large-landscape .movie-head .movie-subheadline,
body.tablet-portrait .movie-head .movie-subheadline,
body.tablet-landscape .movie-head .movie-subheadline {
	 font-size: 1rem;
     text-shadow: none;
     }	 
.movie-year {
    color: #a5bacf;
    font-size: 1rem;
    margin-top: 0.5rem;
    text-shadow: 0 1px 0 #fff, 0 1.5px 3px rgba(28,47,69,0.07), 0 0.3px 0 #c4d4eb;
    }
.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0,0,0,0);
    white-space: nowrap;
    border: 0;
    }
.movie-info-box {
    background: rgba(255, 255, 255, 0.06);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 12px;
    padding: 20px;
    margin: 30px 0 3.5rem;
    color: #e6eef5;
    border-left: 4px solid #4c91c9;
    box-shadow: 4px 4px 10px 4px rgba(0,0,0,0.4);
    }
.info-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 2rem;
    }
.info-left,
.info-right {
    list-style: none;
    padding: 0;
    margin: 0;
    flex: 1 1 300px;
    }
.movie-info-box li {
    margin-bottom: 0.6rem;
    color: #e6eef5;
    font-size: 1rem;
    }
.movie-info-box strong {
    color: #ffffff;
    font-weight: 600;
    }
.cast-gallery {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    justify-content: center;
    margin: 30px 0 3.5rem;
    }
body.smartphone-small-portrait .cast-gallery {
	gap: 10px;
    }
.actor-card {
    width: 120px;
    text-align: center;
    color: #e6eef5;
    display: flex;
    flex-direction: column;
    align-items: center;
    }
.actor-card img {
    min-width: 100px;
    max-width: 100px;  
    min-height: 150px;   
    max-height: 150px;  
    object-fit: cover;
    border-radius: 50%;
    border: 2px solid #ffffff44;
    box-shadow: 4px 4px 10px 4px rgba(0,0,0,0.4);
    display: block;
    }
.actor-name {
    font-weight: bold;
    margin-top: 8px;
    font-size: 0.95rem;
    text-shadow: 0 1px 0 #fff, 0 1.5px 3px rgba(28,47,69,0.07), 0 0.3px 0 #c4d4eb;
    }
.actor-role {
    font-size: 0.8rem;
    color: #a5bacf;
    text-shadow: 0 1px 0 #fff, 0 1.5px 3px rgba(28,47,69,0.07), 0 0.3px 0 #c4d4eb;
    }
.movie-content {
    position: relative;
    background: none;
    padding: 0 0 0 2.3em;
    border-left: 3px solid #3ea8fa;
    color: #eaf3fc;
    font-size: 1.1rem;
    line-height: 1.68;
    margin: 2.3em 0;
    text-align: left;
    }
.movie-content p {
    margin-bottom: 1rem;
    }
.movie-content p:first-of-type::first-letter {
    font-size: 2.0em;
    color: #3ea8fa;
    float: left;
    line-height: 0.8;
    font-family: 'Georgia', serif;
    padding-right: 0.05em;
    }
.video-cta {
    margin: 2rem 0 3.5rem;
    text-align: center;
    }
.teaser-button {
    background-color: #e6eef5;
    color: #1c2f45;
    padding: 0.8rem 1.5rem;
    font-size: 1rem;
    font-weight: bold;
    border: none;
    border-radius: 0.5rem;
    cursor: pointer;
    transition: background-color 0.3s ease;
    box-shadow: 4px 4px 10px 4px rgba(0,0,0,0.4);
    position: relative;
    overflow: hidden;
    }
.teaser-button:hover {
    background-color: #d4e0eb;
    }
body.desktop .teaser-button:hover,
body.desktop-large .teaser-button:hover,
body.desktop .teaser-button:focus-visible,
body.desktop-large .teaser-button:focus-visible {
    background-color: #cce1f7;
    color: #124172;
    box-shadow: 0 8px 28px 0 rgba(62,168,250,0.24), 0 1.5px 8px 0 rgba(30, 64, 130, 0.16);
    transform: translateY(-4px) scale(1.04);
    text-shadow: 0 0 7px #cce1f7, 0 1px 0 #fff;
    outline: none;
    transition:
      background-color 0.22s cubic-bezier(.5,.32,0,1.02),
      box-shadow 0.22s cubic-bezier(.5,.32,0,1.02),
      transform 0.18s cubic-bezier(.46,.29,.54,.94),
      color 0.22s cubic-bezier(.5,.32,0,1.02),
      text-shadow 0.18s cubic-bezier(.46,.29,.54,.94);
    }
body.desktop .teaser-button::after,
body.desktop-large .teaser-button::after {
    content: '';
    position: absolute;
    top: 0; left: -75%;
    width: 60%;
    height: 100%;
    background: linear-gradient(
      110deg,
      rgba(255,255,255,0) 0%,
      rgba(255,255,255,0.28) 60%,
      rgba(255,255,255,0.64) 100%);
    pointer-events: none;
    border-radius: inherit;
    opacity: 0;
    transition: opacity 0.15s;
    }
body.desktop .teaser-button:hover::after,
body.desktop-large .teaser-button:hover::after,
body.desktop .teaser-button:focus-visible::after,
body.desktop-large .teaser-button:focus-visible::after {
    animation: shine-move 0.85s cubic-bezier(.38,0,.62,1) 1;
    opacity: 1;
    }
@keyframes shine-move {
    0% {
      left: -75%;
      opacity: 0;
    }
    20% {
      opacity: 1;
    }
    80% {
      opacity: 1;
    }
    100% {
      left: 120%;
      opacity: 0;
    }
    }
/* Kein Trailer verfügbar */
.teaser-button--disabled {
    background-color: #2a3d52;
    color: #607080;
    cursor: default;
    box-shadow: none;
    display: inline-block;
    padding: 0.8rem 1.5rem;
    border-radius: 0.5rem;
    font-size: 1rem;
    font-weight: bold;
    }
.teaser-button--disabled:hover {
    background-color: #2a3d52;
    transform: none;
    }

/* "Watch on YouTube" Link unter dem Iframe */
.video-external-link {
    text-align: center;
    margin: 0.6rem 0 0;
    font-size: 0.85rem;
    }
.video-external-link a {
    color: #8ab0cc;
    text-decoration: underline;
    }
.video-external-link a:hover {
    color: #b8d4ea;
    }

.lightbox-overlay {
    position: fixed;
    inset: 0;
    background-color: rgba(0, 0, 0, 0.85);
    z-index: 9998;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 2rem;
    }
.lightbox-content {
    position: relative;
    max-width: 800px;
    width: 100%;
    background: #000;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 0 2rem rgba(0, 0, 0, 0.8);
    }
/* Video + iframe im Lightbox: Breite 100%, Höhe max 70vh damit es nicht riesig wird */
.lightbox-content video,
.lightbox-content iframe {
    display: block;
    width: 100%;
    max-height: 70vh;
    object-fit: contain;
    background: #000;
    }
.movie-close-btn {
    position: absolute;
    top: 0.5rem;
    right: 0.75rem;
    font-size: 2rem;
    line-height: 1;
    color: #fff;
    cursor: pointer;
    z-index: 10000;
    background: rgba(0, 0, 0, 0.6);
    border-radius: 4px;
    padding: 0 0.25em 0.1em;
    user-select: none;
    }
.movie-trivia {
    max-width: 780px;
    background: linear-gradient(98deg, rgba(20,67,123,0.16) 84%, rgba(62,168,250,0.07) 100%);
    backdrop-filter: blur(10px);
    border-left: 5px solid #3ea8fa;
    border-radius: 1.1em;
    border-top: 1px solid #a5bacf55;
    margin: 2.2em 0 1.7em 0;
    padding: 1.35em 1.7em 1.2em 1.4em;
    background-color: rgba(255, 255, 255, 0.05);
    border-left: 4px solid #4c91c9;
    color: #eaf3fc; 
    text-align: left;
    box-shadow: 4px 4px 10px 4px rgba(0,0,0,0.4);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center; 
    margin-left: auto !important;
    margin-right: auto !important;
    }
body.smartphone-portrait .movie-trivia {
    font-size: 0.99em;
    padding: 1em 0.8em 1em 0.95em;
    border-radius: 0.7em;
    margin: 1.2em 0 1em 0;
    max-width: 100%;
    }	
.movie-trivia-headline {
    margin-top: 0;
    margin-bottom: 0.75em;
    font-size: 1.12em;
    color: #3ea8fa;
    letter-spacing: 0.03em;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 0.5em;
    }
.movie-trivia-list {
    margin: 0;
    padding-left: 1.1em;
    list-style: disc outside;
    }
.movie-trivia-list li {
    margin-bottom: 0.42em;
    color: #f4f8fc;
    }
.rating-box {
    margin: 2.5rem 0;
    text-align: center;
    }
.rating-label {
    font-size: 1.6rem;
    font-weight: bold;
    margin-bottom: 1.2rem;
    display: block;
    color: #e6eef5;
    letter-spacing: 0.03em;
    }
/* Oscar-Icons: JS rendert 10 Stück, hell = bewertet, dunkel = leer */
.oscar-rating {
    display: flex;
    justify-content: center;
    align-items: flex-end;
    gap: 0.25rem;
    flex-wrap: wrap;
    margin-bottom: 0.8rem;
    }
.oscar-icon {
    width: 36px;
    height: auto;
    filter: drop-shadow(0 2px 6px rgba(225,198,118,0.45));
    transition: transform 0.15s ease, filter 0.15s ease;
    }
.oscar-icon--active {
    filter: drop-shadow(0 2px 6px rgba(225,198,118,0.55));
    }
body.desktop .oscar-icon:hover,
body.desktop-large .oscar-icon:hover {
    transform: scale(1.15) translateY(-2px);
    filter: drop-shadow(0 0 12px rgba(201,162,39,0.75)) drop-shadow(0 2px 5px rgba(0,0,0,0.35));
    }
body.smartphone-portrait .oscar-icon,
body.smartphone-small-portrait .oscar-icon,
body.smartphone-large-portrait .oscar-icon {
    width: 26px;
    }
/* Score als kleines Badge */
.rating-score-text {
    display: inline-block;
    font-size: 0.95rem;
    font-weight: 700;
    color: #c9a227;
    background: rgba(201,162,39,0.12);
    border: 1px solid rgba(201,162,39,0.4);
    border-radius: 20px;
    padding: 0.22em 0.85em;
    letter-spacing: 0.06em;
    margin-top: 0.3rem;
    }
.closing-curtain {
    width: 100%;
    background: rgba(255, 255, 255, 0.06);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 12px;
    border-top: 1px solid #a5bacf55;
    justify-content: center;
    margin-top: 3.5rem;
    padding: 20px;
    background-color: rgba(255, 255, 255, 0.05);
    border-left: 4px solid #4c91c9;
    color: #d6e3f0; 
    text-align: center;
    box-shadow: 4px 4px 10px 4px rgba(0,0,0,0.4);
    }
.closing-headline {
    font-size: 1.5rem;
    color: #e6eef5;
    margin-bottom: 1rem;
    }
.closing-curtain p {
    font-size: 1rem;
    color: #ccd9e5;
    line-height: 1.6;
    }
.blog-share {
    margin: 2.2em 0 1.1em 0;
    text-align: center;
    }
.blog-share-label {
    display: inline-block;
    color: #b7c4de;
    font-size: 0.98em;
    margin-right: 1em;
    letter-spacing: 0.03em;
    vertical-align: middle;
    margin-bottom: 10px;
    }
.share-list {
    list-style: none;
    padding: 0;
    margin-bottom: 10px;
    display: flex;
    gap: 1.1em;
    justify-content: center;
    }
.share-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    background: #fff;
    border-radius: 50%;
    box-shadow: 0 2px 9px 0 rgba(20,67,123,0.12);
    transition: box-shadow 0.16s, transform 0.14s, background 0.18s;
    border: none;
    position: relative;
    overflow: hidden;
    }
.share-btn img {
    display: block;
    width: 28px;
    height: 28px;
    filter: grayscale(18%);
    transition: filter 0.17s;
    }
.share-x:hover,
.share-x:focus-visible {
    background: #222;
    }
.share-facebook:hover,
.share-facebook:focus-visible {
    background: #0866ff;
    }
.share-whatsapp:hover,
.share-whatsapp:focus-visible {
    background: #25D366;
    }
.share-mail:hover,
.share-mail:focus-visible {
    background: #ffff87;
    }
.share-instagram:hover,
.share-instagram:focus-visible {
    background: radial-gradient(circle at 30% 110%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%);
    }
.share-btn:hover img,
.share-btn:focus-visible img {
    filter: none;
    transform: scale(1.13);
    }
body.smartphone-portrait .share-list,
body.smartphone-landscape .share-list,
body.tablet-portrait .share-list,
body.tablet-landscape .share-list {
    gap: 0.6em;
    }
body.smartphone-portrait .share-btn,
body.smartphone-landscape .share-btn,
body.tablet-portrait .share-btn,
body.tablet-landscape .share-btn {
    width: 34px;
    height: 34px;
    }
body.smartphone-portrait .share-btn img,
body.smartphone-landscape .share-btn img,
body.tablet-portrait .share-btn img,
body.tablet-landscape .share-btn img {
    width: 24px;
    height: 24px;
    }
.share-x {
    background: #222;
    }
.share-facebook {
    background: #0866ff;
    }
.share-whatsapp {
    background: #25D366;
    }
.share-mail {
    background: #ffff87;
    width: 34px;
    height: 34px;
    min-width: 34px;
    min-height: 34px;
    padding: 0;	
	vertical-align: middle;
    position: static;
    margin-top: 3px;
    }
.share-instagram {
    background: radial-gradient(circle at 30% 110%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%);
    }
.blog-end-message {
    width: 50%;
    background: rgba(255, 255, 255, 0.06);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 12px;
    border-top: 1px solid #a5bacf55;
    margin-top: 3.5rem;
    margin-left: auto;
    margin-right: auto;
    padding: 20px;
    border-left: 4px solid #4c91c9;
    color: #d6e3f0;
    text-align: center;
    box-shadow: 4px 4px 10px 4px rgba(0,0,0,0.4);
    }
body.smartphone-small-portrait .blog-end-message,
body.smartphone-small-landscape .blog-end-message,
body.smartphone-large-portrait .blog-end-message,
body.smartphone-large-landscape .blog-end-message {
    width: 90%;
    }
body.smartphone-portrait .blog-end-message {
    width: 90%;
    }
.blog-end-text {
    margin: 0;
    line-height: 1.6;
    font-style: italic;
    }
.movie-adblock {
    position: relative;
    background: rgba(255,255,255,0.11);
    border: 2px solid #205083;
    border-radius: 22px;
    box-shadow: 4px 4px 10px 4px rgba(0,0,0,0.4);
    box-sizing: border-box;
    overflow: hidden;
    transition: box-shadow 0.25s cubic-bezier(.32,.74,.43,.94);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center; 
    margin-left: auto !important;
    margin-right: auto !important;
    }
body.smartphone-small-portrait .movie-adblock {
    margin: 2.5em auto;
    max-width: 258px;
    min-width: 258px;
    max-height: 120px;
    min-height: 120px;
    overflow: hidden;
    padding: 2.2em 2.2em 2em 2.2em;
    }
body.smartphone-small-landscape .movie-adblock {
    margin: 2.5em auto;
    max-width: 378px;
    min-width: 378px;
    max-height: 160px;
    min-height: 160px;
    overflow: hidden;
    padding: 2.2em 2.2em 2em 2.2em;
    }	
body.smartphone-portrait .movie-adblock {
    margin: 2.5em auto;
    max-width: 300px;
    min-width: 300px;
    max-height: 100px;
    min-height: 100px;
    overflow: hidden;
    padding: 2.2em 2.2em 2em 2.2em;
    }
body.smartphone-large-portrait .movie-adblock {
    margin: 2.5em auto;
    max-width: 340px;
    min-width: 340px;
    max-height: 150px;
    min-height: 150px;
    overflow: hidden;
    padding: 2.2em 2.2em 2em 2.2em;
    }
	
body.tablet-small-portrait .movie-adblock,
body.tablet-portrait .movie-adblock,
body.smartphone-landscape .movie-adblock,
body.smartphone-large-landscape .movie-adblock{
    margin: 2.5em auto;
    max-width: 550px;
    min-width: 550px;
    max-height: 120px;
    min-height: 120px;
    overflow: hidden;
    padding: 2.2em 2.2em 2em 2.2em;
    }
body.desktop .movie-adblock,
body.desktop-large .movie-adblock,
body.desktop-small .movie-adblock,
body.tablet-small-landscape .movie-adblock,
body.tablet-landscape .movie-adblock,
body.tablet-large-portrait .movie-adblock,
body.tablet-large-landscape .movie-adblock {
    margin: 2.5em auto;
    /* Fluid: max 810px, funktioniert ohne CSS min() — breiter Browser-Support */
    width: 100%;
    max-width: 810px;
    min-width: 0;
    max-height: 150px;
    min-height: 150px;
    overflow: hidden;
    padding: 1.6em 2.2em 2em 2.2em;
    }	
.movie-adblock:hover,
.movie-adblock:focus-within {
    box-shadow: 0 12px 38px 0 rgba(20,67,123,0.32), 0 4px 14px 0 rgba(30, 64, 130, 0.12);
    border-color: #3ea8fa;
    }
.movie-adblock-label {
    position: absolute;
    top: 0;
    left: 0;
    background: linear-gradient(90deg, #3ea8fa 70%, #205083 100%);
    color: #fff;
    font-size: 1.01rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    padding: 0.38em 1.2em 0.32em 1.2em;
    border-bottom-right-radius: 13px;
    border-top-left-radius: 20px;
    box-shadow: 0 2px 9px 0 rgba(30,64,130,0.11);
    z-index: 2;
    text-shadow: 0 1px 5px rgba(20,67,123,0.11);
    pointer-events: none;
    user-select: none;
    }
body.smartphone-portrait .movie-adblock-label,
body.smartphone-landscape .movie-adblock-label,
body.tablet-portrait .movie-adblock-label,
body.tablet-landscape .movie-adblock {
    font-size: 0.7rem;
    font-weight: 500;
    }
.movie-adblock-content {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.7em;
    min-height: 80px;
    justify-content: center;
    box-sizing: border-box;
    margin-left: auto;
    margin-right: auto; 
    display: block;
    box-sizing: border-box;
    }
body.smartphone-small-portrait .movie-adblock-content {
    width: 238px;
    min-height: 64px;
    height: 64px;
    padding: 0;
	margin-top: -20px;
    }
body.smartphone-small-portrait .movie-adblock-content > * {
    width: 238px !important;
    height: 64px !important;
    max-width: 238px;
    min-width: 238px;
    min-height: 64px;
    padding: 0;
    margin-top: 10px;
    }
body.smartphone-small-landscape .movie-adblock-content,
body.smartphone-large-portrait .movie-adblock-conten {
    width: 324px;
    min-height: 104px;
    height: 104px;
    padding: 0;
	margin-top: -20px;
    }
body.smartphone-small-landscape .movie-adblock-content,
body.smartphone-large-portrait .movie-adblock-conten > * {
    width: 324px !important;
    height: 104px !important;
    max-width: 324px;
    min-width: 324px;
    min-height: 104px;
    padding: 0;
    margin-top: 10px;
    }	
body.smartphone-portrait .movie-adblock-content {
    width: 238px;
    min-height: 64px;
    height: 64px;
    padding: 0;
	margin-top: -20px;
    }
body.smartphone-portrait .movie-adblock-content > * {
    width: 238px !important;
    height: 64px !important;
    max-width: 238px;
    min-width: 238px;
    min-height: 64px;
    padding: 0;
    margin-top: 10px;
    }	
	
body.tablet-portrait .movie-adblock-content,
body.smartphone-landscape .movie-adblock-content,
body.smartphone-large-landscape .movie-adblock-content {
    width: 472px;
    min-height: 64px;
    height: 64px;
    padding: 0;	
    margin-top: 5px;
    }
body.tablet-portrait .movie-adblock-content,
body.smartphone-landscape .movie-adblock-content,
body.smartphone-large-landscape .movie-adblock-content > * {
    width: 472px !important;
    height: 64px !important;
    max-width: 472px;
    min-width: 472px;
    min-height: 64px;
    padding: 0;
    margin-top: 15px;
    }	
body.desktop .movie-adblock-content,
body.desktop-large .movie-adblock-content,
body.desktop-small .movie-adblock-content,
body.tablet-small-landscape .movie-adblock-content,
body.tablet-landscape .movie-adblock-content,
body.tablet-large-portrait .movie-adblock-content,
body.tablet-large-landscape .movie-adblock-content {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    min-height: 94px;
    height: 94px;
    padding: 0;
    }
body.desktop .movie-adblock-content > *,
body.desktop-large .movie-adblock-content > *,
body.desktop-small .movie-adblock-content > *,
body.tablet-small-landscape .movie-adblock-content > *,
body.tablet-landscape .movie-adblock-content > *,
body.tablet-large-portrait .movie-adblock-content > *,
body.tablet-large-landscape .movie-adblock-content > * {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 94px !important;
    min-height: 94px;
    padding: 0;
    }
.movie-interest {
    width: 100%;
    background: rgba(255, 255, 255, 0.06);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 12px;
    border-top: 1px solid #a5bacf55;
    justify-content: center;
    margin-top: 3.5rem;
    padding: 20px;
    background-color: rgba(255, 255, 255, 0.05);
    border-left: 4px solid #4c91c9;
    color: #d6e3f0;
    text-align: center;
    box-shadow: 4px 4px 10px 4px rgba(0,0,0,0.4);
    flex-direction: column;
    align-items: center;
    justify-content: center;
    /* Pflicht: position:relative für absolute-Kinder (Titel, Progress),
       overflow:hidden damit Carousel-Cards den Content-Bereich nicht verlassen */
    position: relative;
    overflow: hidden;
    }
body.smartphone-small-portrait .movie-interest {
	width: 100%;
    min-height: 200px;
    max-height: 200px;
    }	
body.smartphone-small-landscape .movie-interest {
	width: 100%;
    min-height: 280px;
    max-height: 280px;
    }	
body.smartphone-portrait .movie-interest {
	width: 100%;
    min-height: 230px;
    max-height: 230px;
    }
body.smartphone-landscape .movie-interest {
	width: 100%;
    min-height: 250px;
    max-height: 250px;
    }
body.smartphone-large-portrait .movie-interest {
	width: 100%;
    min-height: 240px;
    max-height: 240px;
    }	
body.smartphone-large-landscape .movie-interest {
	width: 100%;
    min-height: 280px;
    max-height: 280px;
    }	
body.tablet-portrait .movie-interest {
	width: 100%;
    min-height: 275px;
    max-height: 275px;
    }
body.tablet-portrait .movie-interest {
	width: 100%;
    min-height: 275px;
    max-height: 275px;
    }	
	

/* EasyBlog eigene Share-Buttons ausblenden — Harry hat seine eigenen */
.eb-share-buttons,
.eb-socialbuttons {
    display: none !important;
    }

/* ─── Quick Verdict Block (GEO: direkte Antwort für KI-Extraktion) ─────────── */
.movie-verdict {
    background: rgba(62, 168, 250, 0.08);
    border-left: 4px solid #3ea8fa;
    border-radius: 0 10px 10px 0;
    /* padding-left: 2.3em matcht die Einrückung von .movie-content */
    padding: 1.1em 1.4em 1.1em 2.3em;
    margin: 1.5em 0 2em;
    }
.movie-verdict-text {
    color: #eaf3fc;
    font-size: 1.08em;
    line-height: 1.65;
    margin: 0;
    font-style: italic;
    }

/* ─── FAQ Section — JS-Accordion (GEO: FAQPage Schema + Sichtbare Q&A) ───── */
.movie-faq {
    max-width: 780px;
    background: linear-gradient(135deg, rgba(20,67,123,0.22) 0%, rgba(62,168,250,0.06) 100%);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(62,168,250,0.16);
    border-left: 4px solid #3ea8fa;
    border-radius: 14px;
    padding: 1.6em 1.8em 1.2em;
    margin: 2.5em auto;
    box-shadow: 4px 4px 20px 2px rgba(0,0,0,0.45), inset 0 0 0 1px rgba(62,168,250,0.06);
    counter-reset: faq-counter;
    }
body.smartphone-portrait .movie-faq,
body.smartphone-large-portrait .movie-faq,
body.smartphone-small-portrait .movie-faq,
body.smartphone-small-landscape .movie-faq {
    padding: 1.1em 1em 0.9em;
    border-radius: 8px;
    max-width: 100%;
    }
.movie-faq-headline {
    color: #3ea8fa;
    font-size: 1.05em;
    font-weight: 700;
    margin: 0 0 0.9em 0;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    gap: 0.55em;
    }
.movie-faq-headline::before {
    content: '';
    display: inline-block;
    flex-shrink: 0;
    width: 17px;
    height: 17px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233ea8fa' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3'/%3E%3Cline x1='12' y1='17' x2='12.01' y2='17'/%3E%3C/svg%3E") center/contain no-repeat;
    opacity: 0.85;
    }
/* Accordion-Item */
.movie-faq-item {
    counter-increment: faq-counter;
    border-bottom: 1px solid rgba(62,168,250,0.10);
    border-radius: 6px;
    transition: background 0.18s ease;
    }
.movie-faq-item:last-child {
    border-bottom: none;
    }
/* Offener Zustand — sanfte Aufhellung */
.movie-faq-item.faq-open {
    background: rgba(62,168,250,0.05);
    }
/* Klickbare Frage-Zeile */
.movie-faq-question {
    display: flex;
    align-items: center;
    gap: 0.85em;
    padding: 0.95em 0.3em;
    cursor: pointer;
    color: #e4eff9;
    font-size: 0.99em;
    font-weight: 600;
    line-height: 1.4;
    transition: color 0.18s ease;
    user-select: none;
    }
/* Nummern-Badge (CSS Counter) */
.movie-faq-question::before {
    content: counter(faq-counter, decimal-leading-zero);
    display: inline-flex;
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    min-width: 28px;
    background: linear-gradient(135deg, #15416e 0%, #1d5490 100%);
    border: 1.5px solid rgba(62,168,250,0.35);
    border-radius: 50%;
    font-size: 0.70em;
    font-weight: 700;
    color: #3ea8fa;
    letter-spacing: 0.02em;
    }
/* Chevron-Pfeil rechts */
.movie-faq-question::after {
    content: '';
    display: block;
    flex-shrink: 0;
    margin-left: auto;
    width: 20px;
    height: 20px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234c91c9' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") center/contain no-repeat;
    transition: transform 0.28s cubic-bezier(.4,0,.2,1), opacity 0.18s;
    opacity: 0.6;
    }
.movie-faq-item.faq-open .movie-faq-question::after {
    transform: rotate(180deg);
    opacity: 1;
    }
/* Hover / Fokus */
.movie-faq-question:hover {
    color: #3ea8fa;
    }
.movie-faq-question:hover::after {
    opacity: 1;
    }
.movie-faq-question:focus-visible {
    outline: 2px solid rgba(62,168,250,0.45);
    outline-offset: 3px;
    border-radius: 4px;
    color: #3ea8fa;
    }
/* Antwort-Wrapper: collapsed by default, smooth slide über grid-Trick */
.movie-faq-answer-wrap {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.32s cubic-bezier(.4,0,.2,1);
    overflow: hidden;
    }
.movie-faq-item.faq-open .movie-faq-answer-wrap {
    grid-template-rows: 1fr;
    }
.movie-faq-answer {
    overflow: hidden;
    color: #b4cce6;
    font-size: 0.96em;
    line-height: 1.68;
    margin: 0;
    padding: 0 0.4em 1.1em 2.6em;
    }
/* Mobile */
body.smartphone-portrait .movie-faq-question,
body.smartphone-large-portrait .movie-faq-question,
body.smartphone-small-portrait .movie-faq-question {
    font-size: 0.92em;
    gap: 0.65em;
    padding: 0.8em 0.1em;
    }
body.smartphone-portrait .movie-faq-answer,
body.smartphone-large-portrait .movie-faq-answer,
body.smartphone-small-portrait .movie-faq-answer {
    padding-left: 2.3em;
    font-size: 0.9em;
    }

/* ═══════════════════════════════════════════════════════════════════════════
   REDESIGN 2026 — Cinematic Hero, Stats Strip, Key Facts, Scroll Reveal
   Neue Klassen für den umstrukturierten Movie Blog Post.
   Alte Klassen (.movie-head, .blog-author-portrait, .movie-info-box etc.)
   bleiben als toter Code erhalten — kein Risiko für bestehende Posts.
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── Reading Progress Bar ────────────────────────────────────────────────── */
.reading-progress {
    position: fixed;
    top: 0;
    left: 0;
    width: 0%;
    height: 3px;
    background: linear-gradient(90deg, #3ea8fa 0%, #e1c676 100%);
    z-index: 9999;
    transition: width 0.12s linear;
    border-radius: 0 2px 2px 0;
    pointer-events: none;
    }

/* ── Cinematic Hero ──────────────────────────────────────────────────────── */
.movie-hero {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    margin-bottom: 1.8rem;
    /* --mb: CSS Custom Property, per Inline-Style gesetzt (PHP: $hero_bg_style) */
    background:
        linear-gradient(to bottom right, rgba(8,20,38,0.84) 30%, rgba(13,25,42,0.93) 100%),
        var(--mb, linear-gradient(135deg, #0d1926 0%, #1c2f45 100%)) center / cover no-repeat;
    box-shadow: 0 8px 32px rgba(0,0,0,0.55), inset 0 0 0 1px rgba(62,168,250,0.09);
    }
/* Film-Grain Overlay — nur CSS, kein Bild nötig */
.movie-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)' opacity='0.035'/%3E%3C/svg%3E");
    pointer-events: none;
    z-index: 0;
    border-radius: inherit;
    }
.movie-hero-inner {
    position: relative;
    z-index: 1;
    display: flex;
    gap: 2rem;
    align-items: flex-start;
    padding: 2rem 2rem 1.4rem;
    }
.movie-hero-poster {
    flex-shrink: 0;
    width: 180px;
    height: auto;
    border-radius: 10px;
    object-fit: cover;
    box-shadow: 0 8px 24px rgba(0,0,0,0.6), 0 0 0 1px rgba(255,255,255,0.08);
    display: block;
    }
.movie-hero-content {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
    }
.movie-hero-badges {
    display: flex;
    gap: 0.55rem;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: 0.15rem;
    }
/* Rating Badge: große Zahl mit Farbkodierung */
.movie-rating-badge {
    display: inline-flex;
    align-items: baseline;
    gap: 0.1em;
    font-size: 1.55rem;
    font-weight: 800;
    letter-spacing: -0.01em;
    padding: 0.2em 0.6em;
    border-radius: 8px;
    line-height: 1;
    }
.movie-rating-badge .badge-max {
    font-size: 0.56em;
    font-weight: 500;
    opacity: 0.72;
    vertical-align: baseline;
    }
/* Farbvarianten: Gold ≥8, Blau ≥6, Neutral ≥4, Rot <4 */
.rtg-gold    { background: rgba(225,198,118,0.16); color: #e1c676; border: 1px solid rgba(225,198,118,0.38); }
.rtg-blue    { background: rgba(62,168,250,0.16);  color: #3ea8fa; border: 1px solid rgba(62,168,250,0.38);  }
.rtg-neutral { background: rgba(180,195,210,0.12); color: #b4c3d2; border: 1px solid rgba(180,195,210,0.25); }
.rtg-low     { background: rgba(220,80,80,0.12);   color: #e06060; border: 1px solid rgba(220,80,80,0.28);   }
/* Typ-Badge */
.movie-type-badge {
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #7fa8c9;
    background: rgba(62,168,250,0.08);
    border: 1px solid rgba(62,168,250,0.18);
    padding: 0.28em 0.7em;
    border-radius: 6px;
    }
/* Titel im Hero: Text-Shadow für cinematic look */
.movie-hero .movie-title {
    text-shadow: 0 2px 14px rgba(0,0,0,0.65), 0 1px 3px rgba(0,0,0,0.45);
    font-size: clamp(1.5rem, 4vw, 2.3rem);
    }
/* Subheadline im Hero */
.movie-hero .movie-subheadline {
    text-shadow: 0 1px 6px rgba(0,0,0,0.5);
    margin: 0;
    }
/* Meta-Zeile: Jahr | Laufzeit | Genre */
.movie-hero-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4em 1.2em;
    color: #7fa8c9;
    font-size: 0.88rem;
    letter-spacing: 0.02em;
    }
.movie-hero-meta time,
.movie-hero-meta span {
    position: relative;
    }
.movie-hero-meta span + span::before,
.movie-hero-meta time + span::before {
    content: '\00B7';
    position: absolute;
    left: -0.8em;
    color: #3ea8fa;
    opacity: 0.5;
    }
/* Verdict im Hero: kursiv, mit linker Betonung */
.movie-hero .movie-verdict-text {
    color: #dae8f4;
    font-size: 1.02em;
    line-height: 1.62;
    margin: 0.3rem 0 0;
    font-style: italic;
    border-left: 3px solid rgba(62,168,250,0.38);
    padding-left: 0.9em;
    }
/* Autor-Zeile am Boden des Hero */
.movie-hero-author {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    gap: 0.7rem;
    padding: 0.75rem 2rem 1rem;
    border-top: 1px solid rgba(62,168,250,0.1);
    }
.movie-hero-author img {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    object-fit: cover;
    border: 2px solid rgba(62,168,250,0.32);
    box-shadow: 0 2px 8px rgba(0,0,0,0.35);
    flex-shrink: 0;
    }
/* Überschreibe alte blog-author-name/role Styles im neuen Hero-Kontext */
.movie-hero-author .blog-author-name {
    font-size: 0.87rem;
    font-weight: 600;
    color: #c8daea;
    text-shadow: none;
    display: block;
    margin: 0;
    text-align: left;
    }
.movie-hero-author .blog-author-role {
    font-size: 0.75rem;
    color: #6b8aa8;
    text-shadow: none;
    display: block;
    margin: 0;
    text-align: left;
    }

/* ── Stats Strip ─────────────────────────────────────────────────────────── */
/* Horizontal scrollbar auf Mobile, kein sichtbarer Scrollbar */
.movie-stats-strip {
    overflow-x: auto;
    padding: 0 0 1.4rem;
    margin-bottom: 0.8rem;
    scrollbar-width: none;
    }
.movie-stats-strip::-webkit-scrollbar {
    display: none;
    }
.stats-list {
    display: flex;
    gap: 0;
    padding: 0;
    margin: 0;
    flex-wrap: nowrap;
    }
.stat-item {
    display: flex;
    flex-direction: column;
    padding: 0.6em 1.3em 0.6em 0;
    border-right: 1px solid rgba(62,168,250,0.12);
    min-width: 0;
    white-space: nowrap;
    }
.stat-item:last-child {
    border-right: none;
    padding-right: 0;
    }
.stat-item:not(:first-child) {
    padding-left: 1.3em;
    }
.stat-item dt {
    font-size: 0.67rem;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #8ab0cc;
    font-weight: 600;
    margin: 0 0 0.18em;
    }
.stat-item dd {
    font-size: 0.91rem;
    color: #c4d8ea;
    font-weight: 500;
    margin: 0;
    }

/* ── Section Label (Cast, Key Facts) ────────────────────────────────────── */
.section-label {
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #3ea8fa;
    margin: 0 0 1rem 0;
    padding-bottom: 0.45rem;
    border-bottom: 1px solid rgba(62,168,250,0.15);
    width: 100%;
    }

/* ── Cast Gallery: section-label sichtbar machen ─────────────────────────── */
.cast-gallery {
    margin: 1rem 0 2.5rem;
    }

/* Actor Cards: rechteckig (2:3 Hochformat) statt runde Fotos */
/* Überschreibt die alten min/max-width/height und border-radius:50% Regeln */
.actor-card img {
    width: 100%;
    height: auto;
    min-width: 0;
    max-width: none;
    min-height: 0;
    max-height: none;
    aspect-ratio: 2 / 3;
    object-fit: cover;
    border-radius: 8px;
    border: 1px solid rgba(255,255,255,0.1);
    box-shadow: 4px 4px 12px rgba(0,0,0,0.45);
    display: block;
    }

/* ── Key Facts Block (GEO) ───────────────────────────────────────────────── */
/* Definition List, 2-spaltig auf Desktop — für KI-Extraktion optimiert */
.movie-key-facts {
    background: linear-gradient(135deg, rgba(20,50,90,0.22) 0%, rgba(13,25,42,0.14) 100%);
    border: 1px solid rgba(62,168,250,0.14);
    border-left: 4px solid #3ea8fa;
    border-radius: 12px;
    padding: 1.3em 1.6em 1.3em;
    margin: 2rem 0;
    }
.key-facts-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.65em 2.5em;
    margin: 0;
    padding: 0;
    }
.key-facts-grid > div {
    display: flex;
    flex-direction: column;
    }
.key-facts-grid dt {
    font-size: 0.67rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #8ab0cc;
    color: #4e6e8a;
    font-weight: 600;
    margin: 0;
    }
.key-facts-grid dd {
    color: #c4d8ea;
    font-size: 0.91rem;
    font-weight: 500;
    margin: 0.07em 0 0;
    }

/* ── Scroll Reveal Animation ─────────────────────────────────────────────── */
/* Nur wenn JS läuft (body.js-loaded) → kein FOUC bei JS-Off */
.js-loaded .reveal {
    opacity: 0;
    transform: translateY(22px);
    transition: opacity 0.52s ease, transform 0.52s ease;
    }
.js-loaded .reveal.visible {
    opacity: 1;
    transform: none;
    }

/* ── Responsive: Hero ────────────────────────────────────────────────────── */
body.smartphone-portrait .movie-hero,
body.smartphone-small-portrait .movie-hero,
body.smartphone-large-portrait .movie-hero {
    border-radius: 10px;
    }
body.smartphone-portrait .movie-hero-inner,
body.smartphone-small-portrait .movie-hero-inner,
body.smartphone-large-portrait .movie-hero-inner {
    flex-direction: column;
    padding: 1.2rem 1.1rem 1rem;
    gap: 1rem;
    }
body.smartphone-portrait .movie-hero-poster,
body.smartphone-small-portrait .movie-hero-poster,
body.smartphone-large-portrait .movie-hero-poster {
    width: 100px;
    }
body.smartphone-portrait .movie-hero-author,
body.smartphone-small-portrait .movie-hero-author,
body.smartphone-large-portrait .movie-hero-author {
    padding: 0.6rem 1.1rem 0.8rem;
    }
body.smartphone-portrait .movie-rating-badge,
body.smartphone-small-portrait .movie-rating-badge {
    font-size: 1.2rem;
    }
body.smartphone-landscape .movie-hero-poster,
body.smartphone-large-landscape .movie-hero-poster {
    width: 130px;
    }
body.tablet-portrait .movie-hero-poster,
body.tablet-small-portrait .movie-hero-poster {
    width: 150px;
    }

/* ── Responsive: Stats Strip ─────────────────────────────────────────────── */
/* Auf kleinen Mobiles umbrechen statt horizontal scrollen */
body.smartphone-portrait .stats-list,
body.smartphone-small-portrait .stats-list {
    flex-wrap: wrap;
    }
body.smartphone-portrait .stat-item,
body.smartphone-small-portrait .stat-item {
    border-right: none;
    border-bottom: 1px solid rgba(62,168,250,0.1);
    padding: 0.45em 0;
    width: 50%;
    white-space: normal;
    }
body.smartphone-portrait .stat-item:not(:first-child),
body.smartphone-small-portrait .stat-item:not(:first-child) {
    padding-left: 0;
    }
body.smartphone-portrait .stat-item:last-child,
body.smartphone-small-portrait .stat-item:last-child {
    border-bottom: none;
    }

/* ── Responsive: Key Facts ────────────────────────────────────────────────── */
body.smartphone-portrait .key-facts-grid,
body.smartphone-small-portrait .key-facts-grid {
    grid-template-columns: 1fr;
    }
