
.site-layout{display:grid;grid-template-columns:minmax(0,1fr) 13rem;gap:clamp(2rem,5vw,5rem);max-width:77rem;margin:auto;padding:2rem clamp(1rem,4vw,3rem);align-items:start}
.site-layout main{grid-area:1/1;margin:0;max-width:100%;min-width:0;padding:0}
.site-index{grid-area:1/2;border-left:1px solid #cebea4;padding-left:1.4rem}
.site-index img{display:block;width:6rem;height:auto;margin:0 auto 1.5rem}
.site-index summary{font:600 1.1rem Georgia,serif;color:#243b50;cursor:pointer}
.site-index h2{font:600 .76rem/1.35 system-ui;letter-spacing:.06em;text-transform:uppercase;margin:1rem 0 .35rem;border-top:1px solid #d9cebc;padding-top:.8rem}
.site-index a{display:block;font:500 .94rem/1.45 system-ui;padding:.19rem 0;text-decoration:none}
.site-layout a:link{color:#174f78}.site-layout a:visited{color:#733e68}.site-layout a:hover,.site-layout a:focus-visible{color:#854417;text-decoration:underline}
@media(max-width:760px){.site-layout{display:flex;flex-direction:column;gap:1rem;padding:1rem}.site-index{width:100%;border:0;border-bottom:1px solid #cebea4;padding:0 0 .7rem}.site-index img{float:right;width:2.7rem;margin:0 .4rem}.site-index summary{padding:.7rem 0}.site-layout main{width:100%}}
@keyframes hypercube-turn {
  0%,100% { transform: perspective(360px) rotateX(7deg) rotateY(-17deg) rotateZ(-2deg) }
  50% { transform: perspective(360px) rotateX(-7deg) rotateY(17deg) rotateZ(2deg) }
}
.mast-cube { animation: hypercube-turn 4.8s ease-in-out 1; filter: drop-shadow(1px 2px 1px #243b5030) }
@media (hover:hover) { .mast-cube:hover { animation: hypercube-turn 3.2s ease-in-out infinite } }
@media (prefers-reduced-motion:reduce) { .mast-cube,.mast-cube:hover {animation:none} }

@media(min-width:761px){.site-index img{width:8rem}}

.family-mast{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:clamp(1rem,4vw,3rem);align-items:center}
.family-mast>a,.family-mast>.legacy-banner{grid-column:1}
.family-mast>a{grid-row:1;justify-self:start}
.family-mast>.legacy-banner{grid-row:2}
.family-mast>.mast-cube{grid-column:2;grid-row:1/3;width:clamp(5rem,10vw,8rem);height:auto}
@media(max-width:580px){.family-mast>.mast-cube{width:3.6rem;grid-row:1}.family-mast>.legacy-banner{grid-column:1/-1}}
