:root{
  --tsa-bg:#050a08;
  --tsa-panel:#0a1210;
  --tsa-panel-2:#0e1714;
  --tsa-gold:#c49a43;
  --tsa-gold-bright:#e0bd6e;
  --tsa-red:#7d201d;
  --tsa-red-bright:#a5362e;
  --tsa-ivory:#f1eadb;
  --tsa-muted:#bdb5a5;
  --tsa-line:rgba(196,154,67,.34);
}
body.tsa-bonus-page{
  --shell:1180px;
  background:var(--tsa-bg);
  color:var(--tsa-ivory);
}
.tsa-bonus-page .site-header{
  background:linear-gradient(180deg,rgba(3,7,5,.98),rgba(3,7,5,.78) 72%,transparent);
}
.tsa-bonus-page .primary-nav>a.current{color:var(--tsa-gold-bright)}
.tsa-bonus-page .primary-nav>a.current::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:6px;
  height:1px;
  background:var(--tsa-gold-bright);
  box-shadow:0 0 8px rgba(224,189,110,.35);
}
.tsa-archive-hero{
  position:relative;
  min-height:520px;
  display:grid;
  align-items:center;
  overflow:hidden;
  border-bottom:1px solid var(--tsa-line);
  background:#020504;
}
.tsa-archive-hero-art{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:72% center;
  filter:brightness(.47) saturate(.86) contrast(1.08);
  transform:scale(1.02);
}
.tsa-archive-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:
    radial-gradient(circle at 76% 46%,rgba(196,154,67,.14),transparent 25%),
    linear-gradient(90deg,rgba(3,7,5,.98) 0%,rgba(3,7,5,.91) 34%,rgba(3,7,5,.62) 54%,rgba(3,7,5,.18) 76%,rgba(3,7,5,.28) 100%),
    linear-gradient(180deg,rgba(0,0,0,.10),rgba(0,0,0,.18) 66%,rgba(0,0,0,.88));
}
.tsa-archive-hero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  opacity:.14;
  background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.02) 1px,transparent 1px);
  background-size:76px 76px;
  mask-image:linear-gradient(180deg,transparent,#000 16%,#000 84%,transparent);
}
.tsa-archive-hero-inner{
  position:relative;
  z-index:2;
  padding-top:118px;
  padding-bottom:58px;
}
.tsa-breadcrumb{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:26px;
  color:#a69c8b;
  font:700 10px/1.3 Arial,sans-serif;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.tsa-breadcrumb a{color:var(--tsa-gold-bright)}
.tsa-breadcrumb a:hover,.tsa-breadcrumb a:focus{text-decoration:underline}
.tsa-kicker,.tsa-section-kicker{
  margin:0 0 13px;
  color:var(--tsa-gold-bright);
  font:700 10px/1.3 Arial,sans-serif;
  letter-spacing:.28em;
  text-transform:uppercase;
}
.tsa-archive-hero h1{
  max-width:940px;
  margin:0;
  color:#f3eee6;
  line-height:.98;
  font-weight:400;
  text-transform:none;
  letter-spacing:-.026em;
  text-shadow:0 12px 36px rgba(0,0,0,.9);
}
.tsa-title-line{display:block}
.tsa-title-line--main{
  white-space:nowrap;
  font-size:clamp(38px,4.1vw,58px);
}
.tsa-title-line--archive{
  margin-top:4px;
  white-space:nowrap;
  color:var(--tsa-gold-bright);
  font-size:clamp(56px,6.3vw,88px);
  letter-spacing:-.035em;
}
.tsa-hero-lead{
  max-width:670px;
  margin:24px 0 0;
  color:#d5cbbb;
  font-size:clamp(18px,2vw,25px);
  line-height:1.55;
  font-style:italic;
  text-shadow:0 4px 20px rgba(0,0,0,.85);
}
.tsa-hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:34px;
}
.tsa-primary-button,.tsa-secondary-button{
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  min-height:50px;
  padding:15px 18px;
  border:1px solid var(--tsa-gold-bright);
  font:700 10px/1.2 Arial,sans-serif;
  letter-spacing:.08em;
  text-transform:uppercase;
  transition:transform .2s ease,background .2s ease,color .2s ease,border-color .2s ease;
}
.tsa-primary-button{min-width:220px;background:var(--tsa-gold-bright);color:#080604}
.tsa-secondary-button{min-width:310px;background:rgba(3,6,5,.72);color:var(--tsa-gold-bright)}
.tsa-secondary-button span{color:#a99c86;font-size:9px;letter-spacing:.04em}
.tsa-primary-button:hover,.tsa-primary-button:focus,.tsa-secondary-button:hover,.tsa-secondary-button:focus{transform:translateY(-2px)}
.tsa-secondary-button:hover,.tsa-secondary-button:focus{background:var(--tsa-gold-bright);color:#080604}
.tsa-secondary-button:hover span,.tsa-secondary-button:focus span{color:#352a19}
.tsa-archive-overview{
  padding:92px 0;
  background:
    radial-gradient(circle at 15% 10%,rgba(196,154,67,.08),transparent 28%),
    #07100d;
  border-bottom:1px solid rgba(196,154,67,.18);
}
.tsa-overview-grid{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:78px;
  align-items:start;
}
.tsa-overview-grid h2,.tsa-downloads-heading h2,.tsa-complete-pack h2{
  margin:0;
  color:#f1ebdf;
  font-size:clamp(40px,5vw,66px);
  line-height:1.04;
  font-weight:400;
}
.tsa-overview-copy{
  padding-left:36px;
  border-left:1px solid var(--tsa-line);
}
.tsa-overview-copy>p{
  margin:0;
  color:#c7bdad;
  font-size:17px;
  line-height:1.75;
}
.tsa-stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin:30px 0 0;
}
.tsa-stats div{
  padding-top:18px;
  border-top:1px solid rgba(196,154,67,.32);
}
.tsa-stats dt{
  color:var(--tsa-gold-bright);
  font-size:29px;
  line-height:1;
}
.tsa-stats dd{
  margin:8px 0 0;
  color:#9e9587;
  font:700 9px/1.35 Arial,sans-serif;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.tsa-downloads{
  position:relative;
  padding:96px 0 112px;
  overflow:hidden;
  background:
    radial-gradient(circle at 90% 20%,rgba(125,32,29,.12),transparent 28%),
    radial-gradient(circle at 8% 74%,rgba(196,154,67,.06),transparent 25%),
    #030706;
}
.tsa-downloads::before{
  content:"";
  position:absolute;
  inset:0;
  opacity:.1;
  background-image:linear-gradient(rgba(255,255,255,.02) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.016) 1px,transparent 1px);
  background-size:80px 80px;
  mask-image:linear-gradient(180deg,transparent,#000 8%,#000 92%,transparent);
}
.tsa-downloads>.shell{position:relative;z-index:1}
.tsa-downloads-heading{
  max-width:780px;
  margin:0 auto 48px;
  text-align:center;
}
.tsa-downloads-heading>p:last-child{
  max-width:680px;
  margin:18px auto 0;
  color:#aaa194;
  font-size:16px;
  line-height:1.65;
}
.tsa-material-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:24px;
}
.tsa-material-card{
  display:grid;
  grid-template-columns:230px minmax(0,1fr);
  min-height:390px;
  overflow:hidden;
  border:1px solid var(--tsa-line);
  background:linear-gradient(145deg,rgba(14,23,20,.98),rgba(5,9,7,.99));
  box-shadow:0 22px 55px rgba(0,0,0,.4),inset 0 0 0 1px rgba(255,255,255,.015);
}
.tsa-material-card--restricted{border-color:rgba(165,54,46,.55)}
.tsa-material-card--wide{
  grid-column:1/-1;
  grid-template-columns:minmax(380px,.95fr) minmax(0,1.05fr);
  min-height:350px;
}
.tsa-material-visual{
  position:relative;
  overflow:hidden;
  background:#050806;
}
.tsa-material-visual::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,transparent 58%,rgba(6,10,8,.9)),linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.5));
}
.tsa-material-card--wide .tsa-material-visual::after{background:linear-gradient(90deg,transparent 54%,rgba(6,10,8,.92)),linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.4))}
.tsa-material-visual img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .4s ease,filter .4s ease;
}
.tsa-material-visual--portrait img{object-position:center top}
.tsa-material-visual--wide img{object-position:center}
.tsa-material-card:hover .tsa-material-visual img{transform:scale(1.025);filter:brightness(1.05)}
.tsa-material-content{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:35px 34px;
}
.tsa-material-type{
  color:var(--tsa-gold-bright);
  font:700 9px/1.35 Arial,sans-serif;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.tsa-material-card--restricted .tsa-material-type{color:#d16357}
.tsa-material-content h3{
  margin:13px 0 14px;
  color:#f1eadd;
  font-size:clamp(31px,3vw,44px);
  line-height:1.02;
  font-weight:400;
}
.tsa-material-content>p{
  margin:0;
  color:#b9b0a2;
  font-size:15px;
  line-height:1.65;
}
.tsa-file-actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:25px;
  padding-top:22px;
  border-top:1px solid rgba(196,154,67,.22);
}
.tsa-file-actions a{
  display:flex;
  flex-direction:column;
  gap:5px;
  padding:12px 13px;
  border:1px solid rgba(196,154,67,.46);
  color:var(--tsa-gold-bright);
  background:rgba(0,0,0,.2);
  font:700 10px/1.2 Arial,sans-serif;
  letter-spacing:.06em;
  text-transform:uppercase;
  transition:background .2s ease,color .2s ease,border-color .2s ease;
}
.tsa-file-actions a span{
  color:#8f877b;
  font-size:9px;
  letter-spacing:.03em;
}
.tsa-file-actions a:hover,.tsa-file-actions a:focus{background:var(--tsa-gold-bright);color:#070504;border-color:var(--tsa-gold-bright)}
.tsa-file-actions a:hover span,.tsa-file-actions a:focus span{color:#3d321f}
.tsa-complete-pack{
  padding:88px 0;
  border-top:1px solid rgba(196,154,67,.16);
  border-bottom:1px solid rgba(196,154,67,.22);
  background:
    linear-gradient(90deg,rgba(3,7,5,.94),rgba(3,7,5,.78)),
    url('../images/bonus/tsa-initiate-archive-hero.webp') center/cover no-repeat;
}
.tsa-complete-pack-inner{
  display:grid;
  grid-template-columns:minmax(0,1fr) 370px;
  gap:62px;
  align-items:center;
}
.tsa-complete-pack p:not(.tsa-section-kicker){
  max-width:680px;
  margin:16px 0 0;
  color:#c3b9aa;
  font-size:17px;
  line-height:1.65;
}
.tsa-complete-button{
  display:flex;
  flex-direction:column;
  gap:7px;
  padding:20px 22px;
  border:1px solid var(--tsa-gold-bright);
  background:var(--tsa-gold-bright);
  color:#070504;
  text-transform:uppercase;
  transition:transform .2s ease,background .2s ease;
}
.tsa-complete-button span{font:700 12px/1.2 Arial,sans-serif;letter-spacing:.07em}
.tsa-complete-button small{font:700 9px/1.3 Arial,sans-serif;letter-spacing:.04em;color:#4d3b1c}
.tsa-complete-button:hover,.tsa-complete-button:focus{transform:translateY(-2px);background:#edcf85}
.tsa-use-note{
  padding:48px 0 58px;
  background:#070c0a;
}
.tsa-use-note-inner{
  display:grid;
  grid-template-columns:220px minmax(0,1fr) auto;
  gap:30px;
  align-items:center;
}
.tsa-use-note h2{
  margin:0;
  color:#eee6d8;
  font-size:26px;
  font-weight:400;
}
.tsa-use-note p{
  margin:0;
  color:#a99f92;
  font-size:14px;
  line-height:1.65;
}
.tsa-use-note a{
  color:var(--tsa-gold-bright);
  font:700 10px/1.3 Arial,sans-serif;
  letter-spacing:.07em;
  text-transform:uppercase;
  white-space:nowrap;
}
.tsa-use-note a:hover,.tsa-use-note a:focus{text-decoration:underline}
@media(max-width:1000px){
  .tsa-material-card{grid-template-columns:190px minmax(0,1fr)}
  .tsa-material-content{padding:30px 26px}
  .tsa-material-card--wide{grid-template-columns:minmax(320px,.9fr) minmax(0,1.1fr)}
}
@media(max-width:860px){
  .tsa-bonus-page .site-header{background:#040806}
  .tsa-archive-hero{min-height:560px}
  .tsa-archive-hero-inner{padding-top:108px;padding-bottom:64px}
  .tsa-title-line--main{white-space:normal;font-size:45px}
  .tsa-title-line--archive{white-space:normal;font-size:62px}
  .tsa-overview-grid{grid-template-columns:1fr;gap:30px}
  .tsa-overview-copy{padding:26px 0 0;border-left:0;border-top:1px solid var(--tsa-line)}
  .tsa-material-grid{grid-template-columns:1fr}
  .tsa-material-card--wide{grid-column:auto;grid-template-columns:230px minmax(0,1fr)}
  .tsa-complete-pack-inner{grid-template-columns:1fr;gap:32px}
  .tsa-complete-button{max-width:430px}
  .tsa-use-note-inner{grid-template-columns:1fr;gap:14px}
}
@media(max-width:620px){
  .tsa-archive-hero{min-height:auto}
  .tsa-archive-hero-art{object-position:58% center}
  .tsa-archive-hero-inner{padding-top:92px;padding-bottom:62px}
  .tsa-breadcrumb{margin-bottom:20px}
  .tsa-archive-hero h1{line-height:.98}
  .tsa-title-line--main{font-size:36px}
  .tsa-title-line--archive{margin-top:5px;font-size:49px}
  .tsa-hero-lead{font-size:17px}
  .tsa-hero-actions{flex-direction:column;align-items:stretch}
  .tsa-primary-button,.tsa-secondary-button{width:100%;min-width:0}
  .tsa-archive-overview,.tsa-downloads,.tsa-complete-pack{padding-top:68px;padding-bottom:72px}
  .tsa-overview-grid h2,.tsa-downloads-heading h2,.tsa-complete-pack h2{font-size:38px}
  .tsa-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tsa-material-card,.tsa-material-card--wide{grid-template-columns:1fr}
  .tsa-material-visual--portrait{height:430px}
  .tsa-material-visual--wide{height:240px}
  .tsa-material-visual::after,.tsa-material-card--wide .tsa-material-visual::after{background:linear-gradient(180deg,transparent 55%,rgba(6,10,8,.94))}
  .tsa-material-content{padding:29px 23px 32px}
  .tsa-file-actions{grid-template-columns:1fr}
  .tsa-use-note{padding-top:40px;padding-bottom:44px}
}
@media(prefers-reduced-motion:reduce){
  .tsa-primary-button,.tsa-secondary-button,.tsa-material-visual img,.tsa-file-actions a,.tsa-complete-button{transition:none}
  .tsa-archive-hero-art{transform:none}
}
