/*
Theme Name: Cinemandu Profiles
Theme URI: https://thecinemandu.com/
Author: Cinemandu
Author URI: https://thecinemandu.com/
Description: A cinematic, profile-first Full Site Editing magazine theme for Cinemandu.
Requires at least: 6.6
Tested up to: 6.8
Requires PHP: 8.1
Version: 1.0.1
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: cinemandu-profiles
Tags: block-patterns, block-styles, editor-style, full-site-editing, news, entertainment
*/

:root { --cinema-red: #d40000; --cinema-ink: #0b0b0b; --cinema-paper: #f6f2ea; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { overflow-x: hidden; }
a { text-underline-offset: .18em; }
h1, h2, h3, h4, h5, h6,
.wp-block-post-title,
.wp-block-query-title { text-shadow: none !important; filter: none !important; }
.wp-site-blocks { min-height: 100vh; }
.cinema-header { position: sticky; top: 0; z-index: 50; box-shadow: 0 1px 0 rgba(255,255,255,.12); }
.admin-bar .cinema-header { top: 32px; }
.cinema-logo img { display:block; width:auto; max-height:48px; }
.cinema-eyebrow { letter-spacing: .13em; text-transform: uppercase; font-weight: 800; font-size: .75rem; }
.cinema-rule { border-top: 1px solid rgba(11,11,11,.18); }
.cinema-card { height:100%; transition: transform .22s ease, box-shadow .22s ease; }
.cinema-card:hover { transform: translateY(-4px); }
.cinema-card img { display:block; width:100%; height:260px; object-fit:cover; }
.cinema-card--hero img { height:540px; }
.cinema-card__media { position: relative; overflow: hidden; background: #151515; }
.cinema-card__media::after { content:""; position:absolute; inset:auto 0 0; height:40%; background:linear-gradient(transparent,rgba(0,0,0,.62)); pointer-events:none; }
.cinema-fallback { display:grid; place-items:center; width:100%; height:260px; padding:2rem; color:#fff; background:linear-gradient(145deg,#d40000 0 52%,#090909 52%); font:800 clamp(1.1rem,3vw,2rem)/1.05 var(--wp--preset--font-family--display); text-align:center; }
.cinema-card--hero .cinema-fallback { height:540px; }
.cinema-meta { color:#68635d; font-size:.78rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
.cinema-badge { display:inline-flex; padding:.35rem .55rem; color:#fff; background:#d40000; font-size:.7rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.cinema-section-head { display:flex; align-items:end; justify-content:space-between; gap:1rem; margin-bottom:1.5rem; padding-bottom:.75rem; border-bottom:3px solid #0b0b0b; }
.cinema-section-head h2 { margin:0; }
.cinema-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1.5rem; }
.cinema-grid--lead { grid-template-columns:minmax(0,2fr) minmax(260px,1fr); }
.cinema-grid--lead .cinema-stack { display:grid; gap:1.25rem; }
.cinema-profile-card { display:flex; gap:1rem; align-items:flex-start; padding-bottom:1rem; border-bottom:1px solid rgba(11,11,11,.14); }
.cinema-profile-card img,.cinema-profile-card .cinema-fallback { width:96px; height:96px; flex:0 0 96px; object-fit:cover; }
.cinema-profile-card h3 { margin:.25rem 0 .5rem; font-size:1.15rem; }
.cinema-ticker { overflow:hidden; white-space:nowrap; }
.cinema-ticker__track { display:inline-flex; gap:2.5rem; min-width:100%; animation:cinema-ticker 35s linear infinite; }
.cinema-ticker:hover .cinema-ticker__track { animation-play-state:paused; }
@keyframes cinema-ticker { to { transform:translateX(-50%); } }
.cinema-single-hero { min-height:min(74vh,780px); display:grid; align-items:end; position:relative; color:#fff; background:#111; }
.cinema-single-hero img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.62; }
.wp-block-post-template .wp-block-post-featured-image { height:260px; overflow:hidden; background:#151515; }
.wp-block-post-template .wp-block-post-featured-image a { display:block; width:100%; height:100%; }
.wp-block-post-template .wp-block-post-featured-image img { width:100%; height:100% !important; object-fit:cover; }
.wp-block-post-featured-image.alignwide { height:520px; overflow:hidden; background:#151515; }
.wp-block-post-featured-image.alignwide img { width:100%; height:100% !important; object-fit:cover; }
.cinema-single-hero::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(0,0,0,.06) 15%,rgba(0,0,0,.9)); }
.cinema-single-hero__content { position:relative; z-index:1; padding-block:clamp(3rem,8vw,7rem); }
.cinema-reading-time { white-space:nowrap; }
.cinema-share { display:flex; flex-wrap:wrap; gap:.6rem; }
.cinema-share a { border:1px solid currentColor; padding:.45rem .7rem; text-decoration:none; font-size:.78rem; font-weight:800; text-transform:uppercase; }
.cinema-newsletter { position:relative; overflow:hidden; }
.cinema-newsletter::before { content:"C"; position:absolute; right:-.04em; top:-.35em; font:900 18rem/1 var(--wp--preset--font-family--display); color:rgba(255,255,255,.08); }
.cinema-search-modal { display:none; }
.cinema-search-modal:target { display:grid; position:fixed; inset:0; z-index:1000; place-items:center; padding:2rem; background:rgba(0,0,0,.92); }
.cinema-search-modal .wp-block-search { width:min(760px,100%); }
.cinema-search-close { position:absolute; right:2rem; top:2rem; color:#fff; font-size:2rem; text-decoration:none; }
@media (max-width: 900px) { .cinema-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .cinema-grid--lead { grid-template-columns:1fr; } .cinema-card--hero img,.cinema-card--hero .cinema-fallback { height:460px; } }
@media (max-width: 600px) { .admin-bar .cinema-header { top:0; } .cinema-grid { grid-template-columns:1fr; } .cinema-section-head { align-items:flex-start; flex-direction:column; } .cinema-logo img { max-width:210px; } .cinema-card img,.cinema-fallback,.wp-block-post-template .wp-block-post-featured-image { height:230px; } .cinema-card--hero img,.cinema-card--hero .cinema-fallback,.wp-block-post-featured-image.alignwide { height:340px; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior:auto; } .cinema-card { transition:none; } .cinema-ticker__track { animation:none; white-space:normal; flex-wrap:wrap; } }
