.ensemble-grid{gap:24px}
.ensemble-grid article,.ensemble-grid article+article{border:1px solid #161719;padding:38px 28px;grid-template-columns:64px minmax(0,1fr);gap:22px}
.ensemble-grid .text-link{border:1px solid #161719;padding:10px 17px;gap:26px;min-height:44px;line-height:1.5}
.ensemble-grid .text-link:hover{background:#161719;color:var(--paper)}
.scene-controls #scene-toggle{border:1px solid #77796f;min-width:36px;min-height:36px;font-family:Arial,sans-serif;font-size:15px;line-height:1}
.scene-controls #scene-toggle:hover{border-color:var(--orange);color:var(--orange)}
@media(max-width:1150px){.ensemble-grid article,.ensemble-grid article+article{padding:30px 22px;grid-template-columns:48px minmax(0,1fr);gap:16px}}
@media(max-width:800px){.ensemble-grid article,.ensemble-grid article+article{display:block;padding:26px 22px}.scene-controls #scene-toggle{min-width:36px;min-height:44px}}
@media(max-width:540px){.ensemble-grid{gap:24px}.ensemble-grid article,.ensemble-grid article+article{display:grid;grid-template-columns:36px minmax(0,1fr);gap:14px;padding:26px 18px;margin-top:0}.ensemble-grid .roman{font-size:52px}.ensemble-grid .text-link{gap:18px;padding:10px 13px;font-size:11px}.scene-controls{gap:6px}.scene-dots{gap:4px}.scene-dots button{width:13px}.scene-controls>button{min-width:29px;padding:0 2px}.scene-controls #scene-toggle{min-width:30px}.scene-number{gap:5px;font-size:9px}}
@media(max-width:360px){.scroll-note{font-size:5px;gap:4px}.scene-controls{gap:4px}.scene-controls>button{min-width:26px}.scene-controls #scene-toggle{min-width:27px}.scene-dots{gap:3px}.scene-dots button{width:10px}.scene-number{font-size:8px;gap:4px}}

.footer-top{display:grid;grid-template-columns:236px minmax(0,1fr) auto 44px;gap:36px;align-items:center;padding:36px 0}
.footer-contact{min-width:0}
.footer-tagline{font-size:12px;color:#adb5a6;margin-bottom:10px}
.footer-contact address{display:grid;gap:3px;font-style:normal}
.footer-contact address a{display:flex;align-items:center;gap:14px;min-height:32px;font-size:14px;line-height:1.6;color:var(--paper)}
.footer-contact .contact-label{flex:0 0 38px;font-size:10px;color:#a0a995}
.footer-contact .contact-value{min-width:0;overflow-wrap:anywhere;word-break:normal}
.footer-contact address a:hover .contact-value{color:var(--orange);text-decoration:underline;text-underline-offset:4px}
.footer-youtube{justify-self:end;justify-content:center;gap:10px;min-height:44px;padding:8px 13px;border:1px solid #818779;border-radius:4px;font-size:12px;line-height:1.4;color:var(--paper)}
.footer-youtube:hover{border-color:var(--paper);background:#ffffff0c;color:var(--paper)}
.youtube-mark{width:26px;height:auto;flex:0 0 26px}
.footer-youtube .footer-youtube-label{font-size:12px}
.footer-youtube .footer-youtube-arrow{font-size:17px}
.footer-top>.back-top{width:44px;height:44px;margin:0;justify-self:end}
.video-copy .youtube-channel-link{gap:12px;min-height:44px}
.video-copy .youtube-channel-link .youtube-channel-label{font-size:12px}
.join-copy .contact-inline{display:inline-flex;align-items:center;min-height:32px;max-width:100%;overflow-wrap:anywhere;word-break:normal;text-decoration:underline;text-decoration-color:#737b69;text-underline-offset:4px;color:var(--paper)}
.join-copy .contact-inline:hover{color:var(--orange)}
@media(max-width:1150px){.footer-top{grid-template-columns:218px minmax(0,1fr) auto 44px;gap:24px}.footer-top .brand-stacked{width:218px}.footer-contact address a{font-size:13px}.footer-youtube{gap:8px;padding:8px 10px}}
@media(max-width:800px){.footer-top{grid-template-columns:minmax(0,1fr) auto;gap:24px}.footer-top .brand-stacked{grid-column:1;grid-row:1}.footer-top>.footer-youtube{grid-column:2;grid-row:1;align-self:center}.footer-contact{grid-column:1;grid-row:2}.footer-top>.back-top{grid-column:2;grid-row:2;align-self:end}.footer-contact address a,.join-copy .contact-inline{min-height:44px}.footer-contact address a{font-size:14px}}
@media(max-width:540px){.footer-top{padding:30px 0;gap:22px 16px}.footer-top .brand-stacked{grid-column:1/-1;grid-row:1;width:220px;max-width:100%}.footer-contact{grid-column:1/-1;grid-row:2}.footer-top>.footer-youtube{grid-column:1;grid-row:3;justify-self:start;align-self:center;margin:0;padding:9px 14px}.footer-top>.back-top{grid-column:2;grid-row:3;align-self:center}.footer-tagline{font-size:12px;margin-bottom:8px}.footer-contact address a{gap:10px;font-size:13px}.footer-contact .contact-label{flex-basis:36px}.video-copy .youtube-channel-link .youtube-channel-label{font-size:11px}}
