.gsbp{font-family:var(--font-body);font-size:1.05rem;line-height:1.65;color:var(--white);background:var(--black);-webkit-font-smoothing:antialiased;}
.gsbp *,.gsbp *::before,.gsbp *::after{box-sizing:border-box;margin:0;padding:0;}
.gsbp img{display:block;max-width:100%;height:auto;}
.gsbp ul,.gsbp ol{list-style:none;}

.gsbp-centered{width:100%;max-width:780px;margin-inline:auto;padding-inline:clamp(1rem,4vw,2rem);}
.gsbp-header .gsbp-centered,.gsbp-summary-band .gsbp-centered,.gsbp-full-band .gsbp-centered{max-width:1280px;padding-inline:clamp(1rem,3vw,2rem);}

.gsbp-header{background:var(--near-black);border-top:3px solid var(--crimson);border-bottom:1px solid var(--border);padding:clamp(2.5rem,6vw,4.5rem) 0;}
.gsbp-eyebrow{font-family:var(--font-condensed);font-size:0.75rem;font-weight:700;letter-spacing:0.22em;text-transform:uppercase;color:var(--crimson-lit);margin-bottom:0.75rem;}
.gsbp-title{font-family:var(--font-display);font-size:clamp(1.81rem,4.56vw,3.16rem);font-weight:900;color:var(--white);line-height:1.1;margin-bottom:1rem;}
.gsbp-byline{font-family:var(--font-condensed);font-size:0.78rem;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:var(--muted);}

.gsbp-summary-band{background:var(--panel);border-bottom:1px solid var(--border);padding:clamp(1.5rem,4vw,2.5rem) 0;}
.gsbp-summary-text{font-size:1.08rem;line-height:1.82;color:var(--muted);}

.gsbp-body{display:grid;grid-template-columns:3fr 2fr;gap:clamp(1.5rem,3vw,3rem);max-width:1280px;margin:0 auto;padding:0 clamp(1rem,3vw,2rem);}

.gsbp-video-col{overflow:visible;}
.gsbp-video-sticky{position:sticky;top:0;min-height:100dvh;display:flex;flex-direction:column;justify-content:center;gap:1.25rem;padding-block:2.5rem;}
.gsbp-video-embed{position:relative;width:100%;padding-bottom:56.25%;background:#000;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--border);box-shadow:0 6px 24px rgba(0,0,0,0.5);}
.gsbp-video-embed>div,.gsbp-video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:none;}

.gsbp-toc{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-md);padding:1.25rem 1.5rem;}
.gsbp-toc__label{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;font-family:var(--font-condensed);font-size:0.68rem;font-weight:700;letter-spacing:0.24em;text-transform:uppercase;color:var(--muted);user-select:none;}
.gsbp-toc__label::marker,.gsbp-toc__label::-webkit-details-marker{display:none;}
.gsbp-toc__label::after{content:'▾';font-size:0.75rem;transition:transform 0.2s;margin-left:0.5rem;}
.gsbp-toc[open] .gsbp-toc__label{margin-bottom:0.8rem;}
.gsbp-toc[open] .gsbp-toc__label::after{transform:rotate(-180deg);}
.gsbp-toc ol{list-style:decimal;padding-left:1.2rem;margin:0;}
.gsbp-toc li{margin-bottom:0.45rem;}
.gsbp-toc a{color:var(--crimson-lit);text-decoration:none;font-size:0.86rem;line-height:1.5;}
.gsbp-toc a:hover{color:var(--white);text-decoration:underline;}

.gsbp-text-col{min-width:0;display:flex;flex-direction:column;justify-content:center;padding-block:2.5rem;}
.gsbp-section{max-width:560px;margin-inline:auto;width:100%;padding-bottom:2.5rem;margin-bottom:2.5rem;scroll-margin-top:5.5rem;}
.gsbp-section:last-child{margin-bottom:0;padding-bottom:0;}

.gsbp-rule{display:flex;align-items:center;gap:1rem;margin-bottom:1.25rem;}
.gsbp-rule::before,.gsbp-rule::after{content:'';flex:1;height:1px;background:linear-gradient(to right,transparent,var(--crimson-mid),transparent);}
.gsbp-rule span{font-family:var(--font-condensed);font-size:0.72rem;font-weight:700;letter-spacing:0.26em;text-transform:uppercase;color:var(--muted);white-space:nowrap;}

.gsbp-section__title{font-family:var(--font-display);font-size:clamp(1.2rem,2.5vw,1.65rem);font-weight:700;color:var(--white);line-height:1.25;margin-bottom:1.1rem;}

.gsbp-text-col p{font-size:1rem;line-height:1.8;color:var(--muted);margin-bottom:1.05rem;}
.gsbp-text-col p:last-child{margin-bottom:0;}
.gsbp-text-col a,.gsbp-full-band a,.gsbp-summary-band a{color:var(--crimson-lit);text-decoration:underline;text-underline-offset:3px;}
.gsbp-text-col a:hover,.gsbp-full-band a:hover,.gsbp-summary-band a:hover{color:var(--white);}

button.gsbp-timestamp{cursor:pointer;font-family:var(--font-condensed);font-size:0.75rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;color:#f4f1ec;background:var(--panel);border:1.5px solid var(--border);border-radius:var(--radius-sm);padding:0.28rem 0.7rem;transition:border-color 0.15s,background 0.15s;margin-bottom:0.9rem;display:inline-block;}
button.gsbp-timestamp:hover{border-color:var(--crimson-mid);background:var(--near-black);}
[data-theme="light"] button.gsbp-timestamp{background:var(--crimson);border-color:var(--crimson-mid);color:#f4f1ec;}
[data-theme="light"] button.gsbp-timestamp:hover{background:var(--crimson-mid);border-color:var(--crimson);}

.gsbp-full-band{border-top:1px solid var(--border);padding:clamp(2.5rem,6vw,4rem) 0;scroll-margin-top:5.5rem;}
.gsbp-full-band.gsbp-alternate{background:var(--panel);}

.gsbp-howto-steps{list-style:decimal;padding-left:1.5rem;margin-top:1.25rem;}
.gsbp-howto-steps li{margin-bottom:0.85rem;line-height:1.75;color:var(--muted);}
.gsbp-howto-steps li::marker{color:var(--crimson-lit);font-family:var(--font-condensed);font-weight:700;}

.gsbp-faq-list{margin-top:2rem;}
.gsbp-faq-item{border-bottom:1px solid var(--border);padding:1.4rem 0;}
.gsbp-faq-item:first-child{border-top:1px solid var(--border);}
.gsbp-faq-q{font-family:var(--font-condensed);font-size:1rem;font-weight:700;letter-spacing:0.02em;color:var(--white);margin-bottom:0.55rem;}
.gsbp-faq-a{font-size:0.97rem;line-height:1.78;color:var(--muted);}
.gsbp-faq-a p{margin:0;}

@media(max-width:800px){
  .gsbp-body{grid-template-columns:1fr;padding-inline:1rem;}
  .gsbp-video-sticky{position:static;min-height:auto;display:block;padding-block:0;gap:0;}
  .gsbp-video-embed{margin-bottom:1.25rem;}
  .gsbp-text-col{padding-block:0;}
  .gsbp-section{max-width:100%;}
}
@media(max-width:800px) and (orientation:portrait){
  .gsbp-body{display:flex;flex-direction:column;padding:0;}
  .gsbp-video-col{background:var(--black);border-bottom:1px solid var(--border);width:100%;}
  .gsbp-video-sticky{display:block;}
  .gsbp-video-embed{margin-bottom:0;border-radius:0;border-left:none;border-right:none;border-top:none;}
  .gsbp-text-col{padding-inline:1rem;justify-content:flex-start;}
  .gsbp-section{max-width:100%;}
  .gsbp-toc{border-radius:0;border-left:none;border-right:none;border-top:none;padding:0.65rem 1rem;}
}
