/* Shared styles for the Kabinet section pages (used with styles.css) */

.page-wrap{ max-width:900px; margin:0 auto; padding:2.5rem 1.25rem 4rem; }

.page-head{ text-align:center; margin-bottom:2.5rem; }
.page-head .back{
  display:inline-block; margin-bottom:1.6rem;
  font-family:"Roman Engraved",serif; font-size:.8rem; letter-spacing:.2em;
  text-transform:uppercase; color:var(--olive-lit);
  border:1px solid rgba(94,114,31,.4); border-radius:4px; padding:.45rem 1rem;
  transition:all .3s;
}
.page-head .back:hover{ color:var(--green); border-color:var(--green); }
.page-head h1{
  margin:.2rem 0; font-family:"Cromwell","Roman Engraved",serif; font-weight:400;
  font-size:clamp(2.2rem,6vw,3.6rem); color:var(--green);
  text-shadow:0 0 18px rgba(94,114,31,.5);
}
.page-head .kicker{
  font-family:"Roman Engraved",serif; letter-spacing:.3em; text-transform:uppercase;
  color:var(--olive); font-size:.8rem;
}
.page-head .lede{ color:var(--paper); max-width:620px; margin:1rem auto 0; }

.feature{ margin:3rem 0; }
.feature h2{
  font-family:"Roman Engraved",serif; color:var(--green); font-size:1.4rem;
  letter-spacing:.06em; text-align:center; margin-bottom:.4rem;
}
.feature .sub{ text-align:center; color:var(--olive-lit); font-size:.85rem; margin:0 0 1.2rem; }

.swf-frame, .video-frame{
  width:100%; background:#000; border:1px solid var(--purple); border-radius:8px;
  overflow:hidden; box-shadow:0 0 40px rgba(0,0,0,.9), 0 0 22px rgba(122,42,120,.3);
}
.swf-frame ruffle-player, .swf-frame > *{ width:100% !important; height:100% !important; }
.video-frame video{ width:100%; height:100%; display:block; }

.feature .note{
  text-align:center; margin-top:.7rem; font-size:.72rem; letter-spacing:.12em;
  text-transform:uppercase; color:var(--olive); opacity:.75;
}

.ext-links{ display:flex; flex-wrap:wrap; gap:.8rem; justify-content:center; margin-top:1.2rem; }
.ext-links a{
  font-family:"Roman Engraved",serif; letter-spacing:.12em; text-transform:uppercase;
  font-size:.8rem; color:var(--green); border:1px solid var(--green); border-radius:4px;
  padding:.6rem 1.2rem; transition:all .3s;
}
.ext-links a:hover{ color:var(--black); background:var(--green); box-shadow:0 0 18px rgba(153,255,0,.4); }

.coming{ text-align:center; padding:5rem 1rem; }
.coming .glyph{ font-family:"Zombified"; font-size:1.2rem; color:var(--olive); letter-spacing:.4em; }
.coming h2{ font-family:"Lovesick",serif; color:var(--green); font-size:clamp(1.8rem,5vw,2.8rem); margin:.8rem 0; }
.coming p{ color:var(--paper); }

footer.pagefoot{ border-top:1px solid rgba(94,114,31,.25); padding:1.5rem 1rem 3rem; text-align:center; }
footer.pagefoot img{ height:40px; margin:0 auto; display:inline-block; }
footer.pagefoot .copy{ margin-top:.8rem; font-size:.75rem; color:var(--olive); letter-spacing:.1em; }
