/*
Theme Name: TDLR2 Noir 1.7.2
Theme URI: https://tdlr2.fr
Author: Théâtre DLR²
Description: Version administrable du site sombre et épuré du Théâtre DLR².
Version: 1.7.2
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: tdlr2-noir
*/
:root{--bg:#07080a;--bg2:#0d0f12;--panel:#12151a;--ink:#f5f3ee;--muted:#9c9993;--line:rgba(255,255,255,.13);--accent:#c83c34}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}.wrap{width:min(1240px,92vw);margin:auto}.screen-reader-text{position:absolute;left:-9999px}
.site-header{position:sticky;top:0;z-index:40;background:rgba(7,8,10,.97);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.header-inner{min-height:104px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;min-width:330px}.brand img{width:350px;max-width:40vw;max-height:78px;object-fit:contain;object-position:left center}.main-nav{display:flex;gap:24px;flex-wrap:wrap;justify-content:flex-end}.main-nav a{font-size:.74rem;letter-spacing:.115em;text-transform:uppercase;color:#efede8;opacity:.84}.main-nav a:hover{opacity:1}
.hero{min-height:48vh;display:flex;align-items:flex-end;padding:10vh 0 7vh;background:radial-gradient(circle at 76% 15%,rgba(200,60,52,.18),transparent 34%),linear-gradient(180deg,#0a0b0e,#07080a)}.hero-kicker,.eyebrow{font-size:.72rem;letter-spacing:.17em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}.hero h1,.page-hero h1{font-weight:500;font-size:clamp(3rem,7vw,7.4rem);letter-spacing:-.055em;line-height:.91;margin:0;max-width:980px}.hero p,.page-hero p{font-size:clamp(1.05rem,1.9vw,1.45rem);color:#b8b4ae;max-width:730px;margin:24px 0 0}.page-hero{padding:11vh 0 7vh;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#0b0d10,#07080a)}
.section{padding:92px 0;border-top:1px solid var(--line)}.compact-section{padding:56px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:34px}.section h2{font-size:clamp(2rem,4vw,4.5rem);font-weight:500;letter-spacing:-.045em;line-height:1;margin:0}.section-note{color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.13em}.text-link{display:inline-block;margin-top:18px;border-bottom:1px solid currentColor;padding-bottom:3px}
.featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.poster-card{position:relative;overflow:hidden;background:#020203;aspect-ratio:4/5;border:1px solid var(--line);padding:18px;display:flex;align-items:center;justify-content:center}.poster-card img{width:100%;height:100%;object-fit:contain;object-position:center;transition:transform .55s ease,filter .4s ease}.poster-card:hover img{transform:scale(1.012);filter:brightness(.84)}.poster-title{position:absolute;left:-9999px}
.company-home-image{display:block;width:100%;aspect-ratio:16/7;min-height:520px;background:#0e1013;overflow:hidden;border:1px solid var(--line);margin-bottom:42px}.company-home-image img{width:100%;height:100%;min-height:520px;object-fit:cover;object-position:center;filter:none}.company-home-copy{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}.company-home-copy .lead,.prose-large .lead,.company-page-copy .lead{font-size:clamp(1.45rem,2.5vw,2.25rem);line-height:1.28;color:#f2efe9;margin-top:0}.company-home-copy p,.prose-large p,.company-page-copy p{font-size:1.08rem;color:#c8c4be;max-width:820px}.company-home-copy .text-link{align-self:end;justify-self:start}
.actions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.action-box{display:block;background:var(--panel);border:1px solid var(--line);padding:34px;min-height:245px;transition:border-color .25s ease,background .25s ease,transform .25s ease;cursor:pointer}.action-box:hover,.action-box:focus-visible{border-color:rgba(255,255,255,.38);background:#171b20;transform:translateY(-2px);outline:none}.action-num{display:none}.action-box h3{margin:0 0 14px;font-size:1.42rem;font-weight:500}.action-box p{color:#aaa7a1;margin:0}.actions-large .action-box{min-height:330px}.action-detail{scroll-margin-top:120px}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.news-card{display:block;padding:0 0 24px;border-bottom:1px solid var(--line);transition:opacity .25s ease}.news-card:hover{opacity:.82}.news-thumb{aspect-ratio:16/10;overflow:hidden;background:#111;margin-bottom:20px;display:flex;align-items:center;justify-content:center}.news-thumb img{width:100%;height:100%;object-fit:cover}.news-thumb-placeholder{display:flex;width:100%;height:100%;padding:24px;align-items:flex-end;background:linear-gradient(145deg,#191d23,#0c0e11);color:#8f8b84;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase}.news-card time,.news-archive-card time{font-size:.7rem;color:var(--muted);letter-spacing:.12em;text-transform:uppercase}.news-card h3{font-size:1.38rem;line-height:1.15;font-weight:500;margin:12px 0}
.archive-mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.archive-mini{border-top:1px solid var(--line);padding-top:14px}.archive-mini-thumb{aspect-ratio:4/3;overflow:hidden;background:#050506;margin-bottom:14px;display:flex;align-items:center;justify-content:center;padding:8px}.archive-mini-thumb img{width:100%;height:100%;object-fit:contain}.archive-mini span{display:block;color:var(--muted);font-size:.7rem;letter-spacing:.12em;margin-bottom:5px}.archive-mini strong{font-weight:500;font-size:1.08rem}.contact{background:#0c0e11}.contact-big{font-size:clamp(2.3rem,5vw,5.7rem);letter-spacing:-.055em;line-height:1.02;margin:0 0 36px;max-width:1020px}.contact-links{display:flex;gap:24px;flex-wrap:wrap;color:#d5d1ca;font-size:1.05rem}
.company-page-visual{padding:0 0 72px;background:linear-gradient(180deg,#0b0d10,#07080a)}.company-page-visual .wrap{width:min(1380px,94vw)}.company-page-photo{width:100%;height:min(68vh,760px);object-fit:cover;object-position:center;filter:none;border:1px solid var(--line)}.company-page-copy{max-width:980px}.statement-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:start}.statement-grid h2{max-width:520px}.timeline{border-top:1px solid var(--line)}.timeline-row{display:grid;grid-template-columns:140px 1fr;gap:30px;padding:22px 0;border-bottom:1px solid var(--line)}.timeline-row span{color:var(--muted);font-size:.78rem;letter-spacing:.11em}.timeline-row strong{font-size:1.08rem;font-weight:500}
.spectacle-hero{padding:10vh 0 8vh;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#0b0d10,#07080a)}.spectacle-hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:76px;align-items:center}.spectacle-title h1{font-size:clamp(3rem,6.5vw,7.2rem);line-height:.92;letter-spacing:-.055em;font-weight:500;margin:0}.spectacle-intro{font-size:clamp(1.2rem,2.2vw,1.85rem);line-height:1.35;color:#c8c4bd;max-width:650px;margin:28px 0 0}.spectacle-poster{background:#030304;border:1px solid var(--line);min-height:520px;display:flex;align-items:center;justify-content:center;padding:22px}.spectacle-poster img{max-height:75vh;width:100%;height:100%;object-fit:contain}.project-copy{max-width:870px}.project-copy p{font-size:clamp(1.35rem,2.3vw,2.05rem);line-height:1.42;letter-spacing:-.018em;margin:0 0 1em}.spectacle-gallery-section{padding-top:58px}.spectacle-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.spectacle-gallery a{aspect-ratio:4/3;overflow:hidden;background:#111;border:1px solid var(--line)}.spectacle-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.spectacle-gallery a:hover img{transform:scale(1.02)}.archive-details{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.archive-details summary{cursor:pointer;padding:22px 0;font-size:1rem;letter-spacing:.03em}.archive-details[open] summary{border-bottom:1px solid var(--line)}.archive-details .entry-content{padding:32px 0;max-width:820px}.next-archive{padding-top:44px;padding-bottom:44px}
.archive-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px 18px}.archive-card-image{aspect-ratio:4/3;background:#050506;overflow:hidden;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;padding:10px}.archive-card-image img{width:100%;height:100%;object-fit:contain;transition:transform .45s,filter .35s}.archive-card:hover .archive-card-image img{transform:scale(1.018);filter:brightness(.82)}.archive-placeholder{width:100%;height:100%;background:linear-gradient(145deg,#15181d,#090a0c)}.archive-card-meta{padding-top:13px}.archive-card-meta span{font-size:.68rem;color:var(--muted);letter-spacing:.12em}.archive-card-meta h2{font-size:1.2rem;letter-spacing:-.02em;line-height:1.15;margin:6px 0 0;font-weight:500}
.news-archive-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:60px 22px}.news-archive-image{aspect-ratio:16/9;overflow:hidden;background:#111;margin-bottom:18px}.news-archive-image img{width:100%;height:100%;object-fit:cover}.news-archive-card h2{font-size:2rem;line-height:1.05;letter-spacing:-.035em;font-weight:500;margin:10px 0}.news-archive-card p{color:var(--muted);max-width:560px}.article-body{width:min(840px,90vw);margin:auto}.article-featured{width:100%;margin:0 0 44px}.entry-content{font-size:1.08rem;color:#d2cec7}.entry-content h2,.entry-content h3,.entry-content h4{color:var(--ink);font-weight:500;line-height:1.15;margin:2em 0 .7em}.entry-content p{margin:0 0 1.35em}.entry-content ul,.entry-content ol{margin:0 0 1.4em 1.3em}.entry-content blockquote{border-left:2px solid var(--line);padding-left:22px;color:#c0bcb5}.entry-content a{text-decoration:underline;text-underline-offset:3px}.entry-content img{max-height:78vh;width:auto;margin:30px auto;object-fit:contain}.entry-content figure{margin:36px 0}.entry-content figcaption{color:var(--muted);font-size:.8rem;text-align:center}
.site-footer{padding:30px 0;border-top:1px solid var(--line);color:#85817b;font-size:.78rem}.footer-inner{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
@media(max-width:980px){.header-inner{min-height:auto;padding:15px 0}.brand{min-width:0}.brand img{width:300px;max-width:68vw}.main-nav{display:none}.featured-grid,.company-home-copy,.statement-grid,.spectacle-hero-grid,.actions-grid,.news-grid,.archive-mini-grid,.archive-card-grid,.news-archive-grid{grid-template-columns:1fr}.poster-card{aspect-ratio:4/5}.section{padding:66px 0}.hero{min-height:38vh}.company-home-image,.company-home-image img{min-height:320px}.company-home-image{aspect-ratio:4/3}.company-page-photo{height:auto;aspect-ratio:4/3}.spectacle-poster{min-height:360px}.spectacle-gallery{grid-template-columns:repeat(2,1fr)}.timeline-row{grid-template-columns:90px 1fr}.archive-card-image{aspect-ratio:4/3}}
@media(max-width:620px){.wrap{width:min(92vw,1180px)}.hero h1,.page-hero h1,.spectacle-title h1{font-size:clamp(2.7rem,15vw,4.6rem)}.hero{padding-top:9vh}.poster-card{padding:10px}.section-head{align-items:flex-start;flex-direction:column}.spectacle-gallery{grid-template-columns:1fr}.contact-big{font-size:2.45rem}}

/* v1.6 : affichage net des medias */
.poster-card img,.archive-card-image img,.archive-mini-thumb img,.news-thumb img,.spectacle-gallery img,.company-home-image img,.company-page-photo{image-rendering:auto;-webkit-backface-visibility:hidden;backface-visibility:hidden;}


/* v1.7 : galeries compactes et agrandissement au clic */
.spectacle-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:1080px}
.spectacle-gallery a{aspect-ratio:4/3;max-height:260px;cursor:zoom-in}
.spectacle-gallery img{width:100%;height:100%;object-fit:cover}
.poster-fallback{color:var(--muted);font-size:1rem;text-align:center;padding:20px}
.tdlr2-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.92);display:none;align-items:center;justify-content:center;padding:4vw}
.tdlr2-lightbox.is-open{display:flex}
.tdlr2-lightbox img{display:block;max-width:92vw;max-height:90vh;width:auto;height:auto;object-fit:contain;box-shadow:0 0 0 1px rgba(255,255,255,.14)}
.tdlr2-lightbox-close{position:fixed;right:22px;top:16px;border:0;background:transparent;color:#fff;font-size:48px;line-height:1;cursor:pointer;padding:8px 12px}
body.tdlr2-lightbox-open{overflow:hidden}
@media(max-width:980px){.spectacle-gallery{grid-template-columns:repeat(2,1fr)}.spectacle-gallery a{max-height:300px}}
@media(max-width:620px){.spectacle-gallery{grid-template-columns:1fr}.spectacle-gallery a{max-height:300px}}
