:root{--c71-dark:#101922;--c71-dark-2:#18232e;--c71-gold:#b88939;--c71-cream:#f3efe7;--c71-paper:#fbfaf7;--c71-text:#24364a;--c71-muted:#64707b}
.c71-home{background:var(--c71-cream);color:var(--c71-text)}
.c71-container{width:min(1100px,calc(100% - 40px));margin:auto}
.c71-hero{position:relative;min-height:440px;display:flex;align-items:center;padding:64px 0;background-image:url('../images/cinesub71-projecteurs-banner.png');background-size:cover;background-position:center center;overflow:hidden;color:#fff}
.c71-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,12,16,.95) 0%,rgba(8,12,16,.84) 34%,rgba(8,12,16,.42) 55%,rgba(8,12,16,.08) 80%);pointer-events:none}
.c71-hero-content{position:relative;z-index:1}
.c71-kicker{margin:0 0 12px;color:var(--c71-gold);font-size:12px;font-weight:800;letter-spacing:.15em}
.c71-hero h1{max-width:620px;margin:0 0 12px;font-size:clamp(42px,6vw,68px);line-height:1.04;color:#f7f5f0;text-shadow:0 3px 18px rgba(0,0,0,.45)}
.c71-hero h1 span{display:block;color:#d0a24e}
.c71-intro{max-width:700px;margin:0 0 20px;font-size:18px;line-height:1.55;text-shadow:0 2px 10px rgba(0,0,0,.65)}
.c71-search{display:flex;max-width:700px;background:#fff;padding:5px;border-radius:6px;box-shadow:0 8px 28px rgba(0,0,0,.22)}
.c71-search input{min-width:0;flex:1;border:0!important;background:transparent!important;padding:15px 18px;color:#222;font-size:15px}.c71-search input:focus{outline:none}
.c71-search button{border:0;border-radius:3px;background:var(--c71-gold);padding:14px 24px;font-size:12px;font-weight:800;text-transform:uppercase;color:#171717;cursor:pointer}
.c71-section{padding:56px 0}.c71-section h2{margin:0;color:var(--c71-text);font-size:clamp(32px,4vw,44px);line-height:1.15}.c71-section-intro{margin:8px 0 24px;color:var(--c71-muted);font-size:16px}
.c71-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.c71-grid-two{grid-template-columns:repeat(2,1fr)}.c71-card{background:rgba(255,255,255,.82);padding:24px 22px 18px;border-top:3px solid var(--c71-gold);box-shadow:0 8px 22px rgba(35,40,45,.06)}
.c71-card h3{margin:0 0 10px;font-size:20px;line-height:1.4;color:var(--c71-text)}.c71-card p{margin:0 0 12px;color:var(--c71-muted);line-height:1.55}
.c71-card ul{list-style:none;margin:0;padding:0}.c71-card li{border-top:1px solid #ded8cd}.c71-card li a{display:block;padding:9px 0;color:#34475a;text-decoration:none;font-weight:600;font-size:14px}.c71-card li a:hover{color:var(--c71-gold)}
.c71-alt{background:#eae4d8;border-top:1px solid rgba(80,65,40,.04)}.c71-explore-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:26px}.c71-explore-heading>p{max-width:350px;margin:0;color:var(--c71-muted);line-height:1.5}
.c71-explore-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.c71-explore-box{background:rgba(255,255,255,.8);padding:28px;border-left:3px solid var(--c71-gold)}.c71-explore-box h3{margin:0 0 18px;color:var(--c71-text);font-size:21px}
.c71-tags{display:flex;flex-wrap:wrap;gap:9px}.c71-tags a{padding:11px 14px;background:#f4f1ea;border:1px solid #ddd5c8;color:#34475a;text-decoration:none;font-weight:700;font-size:14px}.c71-tags a:hover{border-color:var(--c71-gold);color:#8d6425;background:#fffaf0}
@media(max-width:900px){.c71-hero{min-height:500px;background-position:62% center}.c71-hero-overlay{background:linear-gradient(90deg,rgba(8,12,16,.95),rgba(8,12,16,.78) 58%,rgba(8,12,16,.38))}.c71-grid,.c71-grid-two{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.c71-container{width:min(100% - 28px,1100px)}.c71-hero{min-height:560px;padding:52px 0;background-position:66% center}.c71-hero h1{font-size:46px}.c71-intro{font-size:16px}.c71-search{flex-direction:column;gap:5px}.c71-search button{width:100%}.c71-grid,.c71-grid-two,.c71-explore-grid{grid-template-columns:1fr}.c71-explore-heading{display:block}.c71-explore-heading>p{margin-top:12px}}


/* Recherche spécialisée dans les articles : prototype projecteurs */
.c71-article-filter{margin-top:18px}
.c71-article-filter label{display:block;font-size:13px;font-weight:700;color:#59636c;margin-bottom:7px}
.c71-article-filter .c71-select,.c71-article-filter select{width:100%;min-height:46px;padding:10px 38px 10px 12px;border:1px solid #d9d0c2;background:#fbfaf7;color:#24364b;font-weight:600}
.c71-card-button{width:100%;margin-top:12px;border:0;background:#b98932;color:#fff;padding:12px 14px;font-weight:700;cursor:pointer;transition:background .2s ease,transform .2s ease}
.c71-card-button:hover{background:#9e2020;transform:translateY(-1px)}
.c71-filter-results{margin-top:30px;background:#fff;padding:28px;box-shadow:0 8px 24px rgba(0,0,0,.07);border-top:3px solid var(--c71-gold)}
.c71-results-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:20px}
.c71-results-heading .c71-kicker{margin-bottom:5px}
.c71-results-heading h3{margin:0;font-size:26px;line-height:1.2;color:#20334a}
.c71-results-count{margin:6px 0 0;color:#69727b;font-size:14px}
.c71-reset-link{color:#9e2020;text-decoration:none;font-weight:700;white-space:nowrap}
.c71-result-list{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.c71-result-item{display:flex;flex-direction:column;min-width:0;border:1px solid #e5ded2;background:#fcfbf8;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}
.c71-result-item:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(35,40,45,.08)}
.c71-result-thumb{display:block;background:#eee8dc;aspect-ratio:16/9;overflow:hidden}
.c71-result-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .25s ease}
.c71-result-item:hover .c71-result-thumb img{transform:scale(1.03)}
.c71-result-body{padding:16px}
.c71-post-date{margin:0 0 6px;color:#8a7a64;font-size:12px;font-weight:700}
.c71-result-item h4{margin:0 0 8px;font-size:19px;line-height:1.3}
.c71-result-item h4 a{color:#24364b;text-decoration:none}
.c71-result-item h4 a:hover{color:#9e2020}
.c71-result-item p:not(.c71-post-date){margin:0;color:#69727b;line-height:1.5;font-size:14px}
.c71-result-more{display:inline-block;margin-top:12px;color:#9e2020;text-decoration:none;font-size:13px;font-weight:700}
.c71-result-more:hover{color:#b88939}
.c71-no-results{margin:0;color:#69727b}
@media(max-width:900px){.c71-result-list{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.c71-result-list{grid-template-columns:1fr}.c71-results-heading{align-items:flex-start;flex-direction:column}}

/* Prototypes de recherche spécialisés : réparations, documentation, pièces */
.c71-special-card .c71-article-filter{margin-top:16px}
.c71-special-card .c71-card-button{margin-top:10px}
.c71-special-results{margin-top:24px}


/* =====================================================
   CINESUB71 – TITRES D'ARTICLES ENCORE PLUS COMPACTS
   ===================================================== */

/* Titre principal d'un article */
.single-post .entry-title,
.single-post article .entry-title {
    font-size: 38px !important;
    line-height: 1.14 !important;
    margin-bottom: 18px !important;
}

/* Sous-titres dans le contenu */
.single-post .entry-content h2 {
    font-size: 30px !important;
    line-height: 1.22 !important;
    margin-top: 30px !important;
    margin-bottom: 12px !important;
}

.single-post .entry-content h3 {
    font-size: 24px !important;
    line-height: 1.25 !important;
    margin-top: 26px !important;
    margin-bottom: 10px !important;
}

.single-post .entry-content h4 {
    font-size: 20px !important;
    line-height: 1.3 !important;
}

/* Évite que les titres deviennent énormes sur petits écrans */
@media (max-width: 900px) {
    .single-post .entry-title,
    .single-post article .entry-title {
        font-size: 34px !important;
    }

    .single-post .entry-content h2 {
        font-size: 27px !important;
    }

    .single-post .entry-content h3 {
        font-size: 22px !important;
    }
}

@media (max-width: 600px) {
    .single-post .entry-title,
    .single-post article .entry-title {
        font-size: 30px !important;
    }

    .single-post .entry-content h2 {
        font-size: 24px !important;
    }

    .single-post .entry-content h3 {
        font-size: 20px !important;
    }
}


/* =====================================================
   CINESUB71 – TITRES D'ARTICLES PLUS DISCRETS
   ===================================================== */

.single-post .entry-title,
.single-post article .entry-title {
    font-size: 31px !important;
    line-height: 1.18 !important;
    margin-bottom: 16px !important;
}

.single-post .entry-content h2 {
    font-size: 24px !important;
    line-height: 1.25 !important;
    margin-top: 26px !important;
    margin-bottom: 10px !important;
}

.single-post .entry-content h3 {
    font-size: 20px !important;
    line-height: 1.3 !important;
    margin-top: 22px !important;
    margin-bottom: 9px !important;
}

.single-post .entry-content h4 {
    font-size: 18px !important;
    line-height: 1.3 !important;
}

@media (max-width: 900px) {
    .single-post .entry-title,
    .single-post article .entry-title {
        font-size: 29px !important;
    }

    .single-post .entry-content h2 {
        font-size: 23px !important;
    }

    .single-post .entry-content h3 {
        font-size: 19px !important;
    }
}

@media (max-width: 600px) {
    .single-post .entry-title,
    .single-post article .entry-title {
        font-size: 27px !important;
    }

    .single-post .entry-content h2 {
        font-size: 22px !important;
    }

    .single-post .entry-content h3 {
        font-size: 18px !important;
    }
}


/* =====================================================
   CINESUB71 – PROPORTIONS DES CONTENEURS D'ARTICLES
   ===================================================== */

/* Page article : colonne principale + barre latérale */
body.single-post .content-area,
body.single-post .main-content,
body.single-post .site-content .container {
    width: 100%;
}

/* Donner un peu plus d'air à la colonne latérale */
body.single-post #secondary,
body.single-post .widget-area,
body.single-post .sidebar {
    width: 31% !important;
    max-width: 31% !important;
}

/* Colonne article légèrement resserrée pour équilibrer */
body.single-post #primary,
body.single-post .content-area,
body.single-post .main-content {
    width: 69% !important;
    max-width: 69% !important;
}

/* Le cadre du contenu garde des proportions équilibrées */
body.single-post .entry-content {
    max-width: 100%;
}

/* Titres et widgets de la colonne droite : plus compacts */
body.single-post #secondary .widget-title,
body.single-post .widget-area .widget-title,
body.single-post .sidebar .widget-title {
    font-size: 24px !important;
    line-height: 1.2 !important;
}

/* Le bloc de bienvenue doit tenir sur une ligne autant que possible */
body.single-post #secondary,
body.single-post .widget-area,
body.single-post .sidebar {
    font-size: 15px;
}

body.single-post #secondary h2,
body.single-post #secondary h3,
body.single-post .widget-area h2,
body.single-post .widget-area h3,
body.single-post .sidebar h2,
body.single-post .sidebar h3 {
    letter-spacing: -0.01em;
}

/* À partir de la tablette, revenir à une seule colonne */
@media (max-width: 900px) {
    body.single-post #primary,
    body.single-post .content-area,
    body.single-post .main-content,
    body.single-post #secondary,
    body.single-post .widget-area,
    body.single-post .sidebar {
        width: 100% !important;
        max-width: 100% !important;
        float: none !important;
    }
}


/* =====================================================
   CINESUB71 – TITRES D'ARTICLES : ÉQUILIBRE FINAL
   ===================================================== */

/* Titre principal */
body.single-post .entry-title,
body.single-post article .entry-title {
    font-size: 28px !important;
    line-height: 1.18 !important;
    font-weight: 600 !important;
    margin-bottom: 14px !important;
}

/* Sous-titres de l'article */
body.single-post .entry-content h2 {
    font-size: 22px !important;
    line-height: 1.28 !important;
    font-weight: 600 !important;
    margin-top: 24px !important;
    margin-bottom: 10px !important;
}

body.single-post .entry-content h3 {
    font-size: 19px !important;
    line-height: 1.3 !important;
    font-weight: 600 !important;
    margin-top: 20px !important;
    margin-bottom: 8px !important;
}

body.single-post .entry-content h4 {
    font-size: 17px !important;
    line-height: 1.3 !important;
    font-weight: 600 !important;
}

/* Sidebar : même hiérarchie visuelle, mais plus discrète */
body.single-post #secondary .widget-title,
body.single-post .widget-area .widget-title,
body.single-post .sidebar .widget-title {
    font-size: 22px !important;
    line-height: 1.18 !important;
    font-weight: 600 !important;
}

@media (max-width: 900px) {
    body.single-post .entry-title,
    body.single-post article .entry-title {
        font-size: 26px !important;
    }

    body.single-post .entry-content h2 {
        font-size: 21px !important;
    }

    body.single-post .entry-content h3 {
        font-size: 18px !important;
    }
}

@media (max-width: 600px) {
    body.single-post .entry-title,
    body.single-post article .entry-title {
        font-size: 25px !important;
    }

    body.single-post .entry-content h2 {
        font-size: 20px !important;
    }
}


/* =====================================================
   CINESUB71 – TYPOGRAPHIE DE LA COLONNE DROITE
   ===================================================== */

/* Titres des widgets : plus sobres et cohérents avec l'article */
body.single-post #secondary .widget-title,
body.single-post .widget-area .widget-title,
body.single-post .sidebar .widget-title {
    font-family: inherit !important;
    font-size: 20px !important;
    line-height: 1.25 !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    color: #152d4d !important;
    margin-bottom: 14px !important;
}

/* Bloc de bienvenue */
body.single-post #secondary .widget:first-child h2,
body.single-post #secondary .widget:first-child h3,
body.single-post .widget-area .widget:first-child h2,
body.single-post .widget-area .widget:first-child h3,
body.single-post .sidebar .widget:first-child h2,
body.single-post .sidebar .widget:first-child h3 {
    font-size: 22px !important;
    line-height: 1.22 !important;
    font-weight: 600 !important;
}

/* Texte des widgets */
body.single-post #secondary .widget,
body.single-post .widget-area .widget,
body.single-post .sidebar .widget {
    font-size: 15px !important;
    line-height: 1.55 !important;
    color: #46515d !important;
}

/* Liens de la colonne droite */
body.single-post #secondary a,
body.single-post .widget-area a,
body.single-post .sidebar a {
    color: #a92d2d !important;
    text-decoration: none !important;
}

body.single-post #secondary a:hover,
body.single-post .widget-area a:hover,
body.single-post .sidebar a:hover {
    color: #c38f25 !important;
}

/* Libellés des champs */
body.single-post #secondary label,
body.single-post .widget-area label,
body.single-post .sidebar label {
    color: #152d4d !important;
    font-weight: 600 !important;
}


/* =====================================================
   CINESUB71 – SIDEBAR LÉGÈREMENT PLUS ÉTROITE
   ===================================================== */

/* Sur desktop uniquement : donner un peu plus de largeur
   à l'article tout en gardant une sidebar confortable. */
@media (min-width: 901px) {
    body.single-post #primary,
    body.single-post .content-area,
    body.single-post .main-content {
        width: 71% !important;
        max-width: 71% !important;
    }

    body.single-post #secondary,
    body.single-post .widget-area,
    body.single-post .sidebar {
        width: 29% !important;
        max-width: 29% !important;
    }

    /* Le titre de bienvenue reste sur une seule ligne */
    body.single-post #secondary .widget:first-child .widget-title,
    body.single-post .widget-area .widget:first-child .widget-title,
    body.single-post .sidebar .widget:first-child .widget-title {
        font-size: 19px !important;
        white-space: nowrap !important;
        letter-spacing: -0.02em !important;
    }
}


/* =====================================================
   CINESUB71 – CADRE DES PAGES D'ARCHIVES
   ===================================================== */

/* Les pages d'archives doivent reprendre le même cadre
   que les pages d'articles : fond clair + bordure dorée
   + séparation nette de la colonne droite. */
@media (min-width: 901px) {
    body.archive .site-content,
    body.archive .content-area,
    body.archive .main-content,
    body.blog .site-content,
    body.blog .content-area {
        background: #ffffff !important;
    }

    body.archive .site-content,
    body.blog .site-content {
        border: 1px solid #d4af37 !important;
        box-sizing: border-box !important;
    }

    body.archive #primary,
    body.blog #primary {
        border-right: 1px solid #d4af37 !important;
        box-sizing: border-box !important;
    }

    body.archive #secondary,
    body.blog #secondary {
        box-sizing: border-box !important;
    }

    /* Évite le grand espace blanc visuel et donne une vraie
       continuité au cadre sur toute la hauteur du contenu. */
    body.archive .site-content,
    body.blog .site-content {
        overflow: hidden !important;
    }

    /* Ligne discrète entre les résultats d'archives. */
    body.archive .post,
    body.blog .post {
        border-bottom: 1px solid #e2ddd2 !important;
        padding-bottom: 28px !important;
        margin-bottom: 28px !important;
    }
}


/* =====================================================
   CINESUB71 – CADRE COMMUN DES PAGES DU SITE
   ===================================================== */

/* Même présentation que les pages d'articles : un cadre
   doré autour de l'ensemble et une séparation nette entre
   le contenu principal et la colonne droite. */
@media (min-width: 901px) {
    body.page,
    body.archive,
    body.blog {
        background: #f3efe7 !important;
    }

    body.page .site-content .container,
    body.archive .site-content .container,
    body.blog .site-content .container {
        background: #ffffff !important;
        border: 1px solid #caa24b !important;
        box-sizing: border-box !important;
        overflow: hidden !important;
        padding: 0 !important;
    }

    /* Colonne principale : cadre + ligne de séparation */
    body.page #primary,
    body.archive #primary,
    body.blog #primary {
        background: #ffffff !important;
        border-right: 1px solid #caa24b !important;
        box-sizing: border-box !important;
        padding: 38px 40px !important;
        margin: 0 !important;
    }

    /* Colonne droite : intégrée au même grand cadre */
    body.page #secondary,
    body.archive #secondary,
    body.blog #secondary {
        background: #ffffff !important;
        box-sizing: border-box !important;
        padding: 30px 28px !important;
        margin: 0 !important;
    }

    /* Les widgets ne doivent pas ajouter de cadre intérieur. */
    body.page #secondary .widget,
    body.archive #secondary .widget,
    body.blog #secondary .widget {
        border: 0 !important;
        box-shadow: none !important;
    }

    /* Titres principaux plus compacts et cohérents. */
    body.page .entry-title,
    body.archive .page-title,
    body.archive .entry-title,
    body.blog .page-title,
    body.blog .entry-title {
        color: #10284a !important;
        font-size: clamp(30px, 3.2vw, 42px) !important;
        line-height: 1.15 !important;
        margin-top: 0 !important;
    }

    /* Séparation discrète des éléments de liste. */
    body.page article,
    body.archive article,
    body.blog article {
        border-bottom: 1px solid #e2ddd2 !important;
        padding-bottom: 26px !important;
        margin-bottom: 26px !important;
    }
}

/* Sur petits écrans, le cadre devient une seule colonne. */
@media (max-width: 900px) {
    body.page .site-content .container,
    body.archive .site-content .container,
    body.blog .site-content .container {
        background: #ffffff !important;
        border: 1px solid #caa24b !important;
        box-sizing: border-box !important;
    }

    body.page #primary,
    body.archive #primary,
    body.blog #primary {
        padding: 28px 24px !important;
    }

    body.page #secondary,
    body.archive #secondary,
    body.blog #secondary {
        padding: 24px !important;
        border-top: 1px solid #caa24b !important;
    }
}

/* Base Pièces détachées : recherche compacte dans la carte d'accueil */
.c71-parts-card .c71-article-filter{display:grid;grid-template-columns:1fr 1fr;gap:10px 10px}
.c71-parts-card .c71-part-filter-field{min-width:0}
.c71-parts-card .c71-part-filter-field label{font-size:11px;margin-bottom:4px}
.c71-parts-card .c71-part-filter-field .c71-select{min-height:42px;padding:8px 30px 8px 9px;font-size:12px}
.c71-parts-card .c71-card-button{grid-column:1/-1;margin-top:0}
.c71-parts-results .c71-result-body p{margin-bottom:4px}
@media(max-width:900px){.c71-parts-card .c71-article-filter{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.c71-parts-card .c71-article-filter{grid-template-columns:1fr}}


/* =====================================================
   CINESUB71 – TITRES DES FICHES PIÈCES DÉTACHÉES
   ===================================================== */
.single-c71_piece .entry-title,
.single-c71_piece article .entry-title {
    font-size: 30px !important;
    line-height: 1.2 !important;
    margin-bottom: 16px !important;
}

.single-c71_piece .entry-content h2 {
    font-size: 24px !important;
    line-height: 1.25 !important;
}

.single-c71_piece .entry-content h3 {
    font-size: 22px !important;
    line-height: 1.3 !important;
}

@media (max-width: 900px) {
    .single-c71_piece .entry-title,
    .single-c71_piece article .entry-title { font-size: 28px !important; }
    .single-c71_piece .entry-content h2 { font-size: 23px !important; }
    .single-c71_piece .entry-content h3 { font-size: 21px !important; }
}

@media (max-width: 600px) {
    .single-c71_piece .entry-title,
    .single-c71_piece article .entry-title { font-size: 26px !important; }
    .single-c71_piece .entry-content h2 { font-size: 22px !important; }
    .single-c71_piece .entry-content h3 { font-size: 20px !important; }
}

/* =====================================================
   CINESUB71 – DERNIERS ARTICLES + ACCÈS UTILES
   ===================================================== */
.c71-latest-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.c71-latest-card{background:rgba(255,255,255,.88);border:1px solid #ded8cd;overflow:hidden;display:flex;flex-direction:column}
.c71-latest-thumb{display:block;aspect-ratio:16/9;overflow:hidden;background:#eee}
.c71-latest-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .2s ease}
.c71-latest-card:hover .c71-latest-thumb img{transform:scale(1.03)}
.c71-latest-body{padding:20px}
.c71-latest-body h3{margin:5px 0 9px;font-size:21px;line-height:1.3}
.c71-latest-body h3 a{color:#24364b;text-decoration:none}
.c71-latest-body h3 a:hover{color:#9e2020}
.c71-latest-body>p:not(.c71-post-date){margin:0 0 12px;color:#69727b;line-height:1.5;font-size:14px}
.c71-home-links{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:24px}
.c71-home-link{display:flex;align-items:center;gap:16px;background:rgba(255,255,255,.88);border-left:3px solid var(--c71-gold);padding:20px 24px;color:#24364b;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}
.c71-home-link:hover{transform:translateY(-2px);box-shadow:0 7px 18px rgba(35,40,45,.08);color:#24364b}
.c71-home-link-icon{font-size:28px;line-height:1}
.c71-home-link strong{display:block;font-size:19px;line-height:1.3}
.c71-home-link small{display:block;margin-top:4px;color:#69727b;font-size:14px}
@media(max-width:900px){.c71-latest-grid{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.c71-latest-grid,.c71-home-links{grid-template-columns:1fr}}
