/* Public editorial pages. Scoped so existing production and marketing layouts stay independent. */
.director-guide { --dg-copy:#cbc6d3; --dg-edge:#38313f; }
.director-guide .page-width { max-width:1240px; }
.dg-hero { padding-block:36px 58px; }
.dg-breadcrumb { display:flex; flex-wrap:wrap; gap:12px; margin-bottom:40px; color:#bdb5c8; font-size:13px; }
.dg-breadcrumb a:hover { color:white; }
.dg-hero h1 { max-width:990px; margin-top:18px; font-size:clamp(38px,5.4vw,74px); letter-spacing:-.045em; line-height:1.06; }
.dg-lead { max-width:780px; margin-top:24px; font-size:clamp(18px,1.7vw,22px); line-height:1.6; color:var(--dg-copy); }
.dg-actions { display:flex; flex-wrap:wrap; align-items:center; gap:18px 28px; margin-top:26px; }
.dg-link { color:#e0c6ff; text-decoration:underline; text-underline-offset:5px; font-weight:600; }
.dg-link:hover { color:#fff; }
.dg-note { margin-top:16px; color:#bdb5c8; font-size:13px; }
.dg-example { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:38px; align-items:center; padding:30px; border:1px solid var(--dg-edge); border-radius:18px; background:#15121c; }
.dg-poster { display:grid; place-items:center; position:relative; overflow:hidden; border-radius:10px; background:#08070a; }
.dg-poster img { width:100%; height:auto; aspect-ratio:16/9; object-fit:contain; }
.dg-play { position:absolute; display:grid; place-items:center; width:52px; height:52px; border-radius:50%; color:#fff; background:#08070acc; border:1px solid #d4b7ff; }
.dg-example h2 { margin-top:12px; font-size:clamp(25px,2.5vw,34px); }
.dg-example p:not(.eyebrow) { color:var(--dg-copy); margin-top:18px; line-height:1.7; }
.dg-example .dg-facts { font-size:13px; }
.dg-body { display:grid; grid-template-columns:250px minmax(0,760px); gap:clamp(36px,6vw,100px); padding-block:70px 20px; }
.dg-contents nav { position:sticky; top:110px; display:grid; gap:15px; }
.dg-contents a { color:#c7bfce; line-height:1.5; font-size:14px; }
.dg-contents a:hover { color:#e0c6ff; }
.dg-article { min-width:0; }
.dg-article section { margin-bottom:54px; scroll-margin-top:110px; }
.dg-article h2 { font-size:clamp(26px,2.4vw,34px); line-height:1.2; }
.dg-article p,.dg-article li { color:var(--dg-copy); line-height:1.85; font-size:17px; }
.dg-article p { margin-top:20px; }
.dg-article li { margin-block:10px; }
.dg-prompt { margin-top:28px; padding:26px; background:#1b1528; border-left:3px solid #b48aef; border-radius:0 10px 10px 0; }
.dg-prompt h3 { font-size:16px; }
.dg-prompt p { font-size:16px; }
.dg-article details { border-bottom:1px solid var(--dg-edge); padding-block:20px; }
.dg-article summary { font-weight:600; line-height:1.5; padding-right:14px; }
.dg-article details p { margin-top:14px; }
.dg-related { padding-block:32px 60px; border-top:1px solid var(--dg-edge); }
.dg-related h2 { margin-top:12px; }
.dg-related-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin-top:24px; }
.dg-related-grid a { display:flex; justify-content:space-between; gap:20px; padding:22px; border:1px solid var(--dg-edge); border-radius:10px; background:#15121c; line-height:1.5; }
.dg-related-grid a:hover { border-color:#b48aef; color:#e0c6ff; }
.dg-cta { margin-bottom:70px; padding:40px; border:1px solid #6f458f; border-radius:16px; background:linear-gradient(120deg,#271736,#141019); }
.dg-cta p { margin-block:18px 26px; color:var(--dg-copy); }
@media(max-width:800px) {
 .dg-example,.dg-body { grid-template-columns:minmax(0,1fr); gap:28px; }
 .dg-example { padding:20px; }
 .dg-contents nav { position:static; padding-bottom:28px; border-bottom:1px solid var(--dg-edge); }
 .dg-body { padding-top:42px; }
 .dg-hero { padding-bottom:36px; }
 .dg-related-grid { grid-template-columns:minmax(0,1fr); }
 .dg-cta { padding:28px; }
 .dg-hero .button { width:100%; }
}
