/* ==========================================================================
   Pyramid Stream — Page layouts
   Structural layout for the three pages, ported 1:1 from the inline styles
   in project/StreamingHome.dc.html, MovieLanding.dc.html, Membership.dc.html.
   ========================================================================== */

.page{min-height:100vh;background:var(--surface-base)}

/* ---------- Streaming Home -------------------------------------------------- */
.hero-wrap{margin-top:calc(var(--header-h) * -1)}
.home-main{display:flex;flex-direction:column;gap:var(--sp-12);max-width:var(--page-max);margin:calc(var(--sp-12) * -1) auto 0;padding:0 var(--page-gutter) var(--sp-13);position:relative}

.explore .gold-rule--ornament{margin-top:var(--sp-11)}
.explore__tags{display:flex;flex-wrap:wrap;gap:var(--sp-5)}

.membership-cta{position:relative;overflow:hidden;border:1px solid var(--line-hairline);border-radius:var(--r-lg);background:var(--surface-inset);padding:var(--sp-13) var(--sp-11)}
.membership-cta::before{content:"";position:absolute;inset:0;background:var(--grad-apex)}
.membership-cta__inner{position:relative;display:flex;flex-wrap:wrap;gap:var(--sp-11);align-items:center;justify-content:space-between}
.membership-cta__copy{max-width:460px}
.membership-cta__copy h2{margin:0 0 var(--sp-6);font-size:var(--fs-3xl)}
.membership-cta__copy p{margin:0;font:var(--type-body)}
.membership-cta__plans{display:flex;gap:var(--sp-6);flex-wrap:wrap}

/* ---------- Movie Landing --------------------------------------------------- */
.movie-stage-wrap{background:var(--surface-void);border-bottom:1px solid var(--line-hairline)}
.movie-stage{max-width:var(--page-max);margin:0 auto;padding:var(--page-gutter) var(--page-gutter) var(--sp-11);display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.85fr);gap:var(--sp-11)}

.movie-player{position:relative;border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--line-hairline);box-shadow:var(--shadow-xl)}
.movie-player .artwork{border-radius:0}
.movie-player__scrim{position:absolute;inset:0;background:var(--surface-scrim);opacity:.7}
.movie-player__play{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-6)}
.movie-player__play span{font:var(--type-label);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--gold-100)}
.movie-stage__note{display:flex;align-items:center;gap:var(--sp-5);margin-top:var(--sp-6);font-family:var(--font-ui);font-size:var(--fs-xs);color:var(--text-faint)}
.movie-stage__note .icon{width:13px;height:13px}

.movie-info{display:flex;flex-direction:column;gap:var(--sp-7)}
.movie-info__eyebrow{font-family:var(--font-label);font-weight:var(--fw-semibold);font-size:var(--fs-2xs);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--gold-400)}
.movie-info__title{margin:0;font-family:var(--font-display);font-weight:var(--fw-display);font-size:var(--fs-4xl);line-height:1.04;letter-spacing:var(--ls-display);text-transform:uppercase;color:var(--text-display)}
.movie-info__badges{display:flex;align-items:center;flex-wrap:wrap;gap:var(--sp-5)}
.movie-info__badges span.movie-info__facts{font-family:var(--font-ui);font-size:var(--fs-sm);color:var(--text-muted)}
.movie-info__synopsis{margin:0;font-family:var(--font-ui);font-size:var(--fs-md);line-height:var(--lh-body);color:var(--text-body)}
.movie-info__tags{display:flex;flex-wrap:wrap;gap:var(--sp-4)}

.movie-body{max-width:var(--page-max);margin:0 auto;padding:var(--sp-11) var(--page-gutter) var(--sp-13);display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:var(--sp-13)}
.movie-lead{margin:0 0 var(--sp-6);font-family:var(--font-ui);font-weight:var(--fw-medium);font-size:var(--fs-lg);line-height:var(--lh-heading);color:var(--text-heading)}
.movie-copy{margin:0 0 var(--sp-9);font-family:var(--font-ui);font-size:var(--fs-md);line-height:var(--lh-body);color:var(--text-body)}
.movie-quote{margin:0 0 var(--sp-10);padding-left:var(--sp-8);border-left:1px solid var(--line-strong);font-family:var(--font-editorial);font-style:italic;font-size:var(--fs-2xl);line-height:1.4;color:var(--gold-100)}
.movie-stills{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-5)}
.movie-stills .artwork{aspect-ratio:16/9}
.movie-comments{margin-top:var(--sp-11)}
.movie-comments__gate{margin-bottom:0}
.movie-comments__list{margin-top:var(--sp-9)}

.movie-aside{display:flex;flex-direction:column;gap:var(--sp-7)}
.info-block__label{font-family:var(--font-label);font-weight:var(--fw-semibold);font-size:var(--fs-2xs);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--gold-400)}
.info-block__value{font-family:var(--font-ui);font-size:var(--fs-sm);color:var(--text-body)}

/* ---------- Membership ------------------------------------------------------ */
.membership-hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line-hairline)}
.membership-hero::before{content:"";position:absolute;inset:0;background:var(--grad-apex)}
.membership-hero__inner{position:relative;max-width:1120px;margin:0 auto;padding:var(--sp-14) var(--page-gutter) var(--sp-13);text-align:center}
.membership-hero__logo{margin:0 auto}
.membership-hero__logo img{height:92px;width:auto;margin:0 auto}
.membership-hero__inner h1{margin:var(--sp-9) 0 var(--sp-6);font-size:var(--fs-4xl)}
.membership-hero__inner p{max-width:560px;margin:0 auto var(--sp-10);font-family:var(--font-ui);font-size:var(--fs-md);line-height:var(--lh-body);color:var(--text-body)}
.membership-hero__plans{display:flex;gap:var(--sp-7);justify-content:center;flex-wrap:wrap;text-align:left}

.checkout{max-width:1120px;margin:0 auto;padding:var(--sp-13) var(--page-gutter);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--sp-13)}
.checkout-form{display:flex;flex-direction:column;gap:var(--sp-7);max-width:420px}
.checkout-form__row{display:flex;gap:var(--sp-6)}
.checkout-form__row .field{flex:1}
.checkout-form__secure{display:flex;align-items:center;gap:var(--sp-4);font-family:var(--font-ui);font-size:var(--fs-xs);color:var(--text-faint)}
.checkout-form__secure .icon{width:14px;height:14px}

.included-list{display:flex;flex-direction:column;gap:var(--sp-6)}
.included-item{display:flex;gap:var(--sp-6);padding:var(--sp-7);background:var(--surface-inset);border:1px solid var(--line-subtle);border-radius:var(--r-lg)}
.included-item .icon{color:var(--gold-400);margin-top:2px;width:18px;height:18px;flex:0 0 auto}
.included-item__title{font-family:var(--font-ui);font-weight:var(--fw-semibold);font-size:var(--fs-sm);letter-spacing:var(--ls-label-tight);text-transform:uppercase;color:var(--text-heading)}
.included-item__body{font-family:var(--font-ui);font-size:var(--fs-xs);color:var(--text-muted)}
.included .gold-rule--ornament{margin:var(--sp-11) 0 var(--sp-8)}
.included__badges{display:flex;gap:var(--sp-5);flex-wrap:wrap}

/* ---------- Responsive ------------------------------------------------------- */
@media (max-width:1100px){
  .movie-stage,.movie-body,.checkout{grid-template-columns:1fr}
}
@media (max-width:640px){
  .home-main{gap:var(--sp-11)}
  .hero__title{font-size:var(--fs-4xl)}
  .movie-info__title{font-size:var(--fs-3xl)}
  .movie-stills{grid-template-columns:1fr 1fr}
  .checkout-form__row{flex-direction:column}
}
