/* ==========================================================================
   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)}

/* ---------- 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-player__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#000}
.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-6);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}

.plans-section{padding:var(--sp-13) var(--page-gutter);text-align:center;border-top:1px solid var(--line-hairline)}
.plans-section__inner{max-width:1120px;margin:0 auto}
.plans-section__title{margin:var(--sp-5) 0 var(--sp-10);font-size:var(--fs-3xl)}

.included-section{max-width:720px;margin:0 auto;padding:var(--sp-13) var(--page-gutter)}

.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{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}
  .membership-hero__inner{padding-left:var(--page-gutter-sm);padding-right:var(--page-gutter-sm)}
  .membership-hero__plans{flex-direction:column;align-items:stretch}
  .plan-card{min-width:0;width:100%}
}

/* ---------- Membership v2 (templates/membership-v2/MembershipV2.dc.html) ---------- */
.mv2-hero{position:relative;overflow:hidden;border-bottom:1px solid var(--line-hairline)}
.mv2-hero__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% 40%;opacity:.42;filter:saturate(.92) contrast(1.04)}
.mv2-hero__scrim-x{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,5,8,.98) 0%,rgba(5,5,8,.94) 46%,rgba(5,5,8,.72) 100%)}
.mv2-hero__scrim-y{position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,5,8,.6) 0%,rgba(5,5,8,0) 30%,rgba(5,5,8,.9) 100%)}
.mv2-hero__apex{position:absolute;inset:0;background:var(--grad-apex)}
.mv2-hero__inner{position:relative;max-width:1240px;margin:0 auto;padding:var(--sp-14) var(--page-gutter) var(--sp-13);display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:var(--sp-12);align-items:start}
.mv2-hero__title{margin:var(--sp-6) 0;font-size:clamp(34px,4.4vw,60px);line-height:var(--lh-tight);text-transform:uppercase;text-wrap:balance}
.mv2-hero__lede{max-width:520px;font-size:var(--fs-lg)}
.mv2-hero__cta{max-width:420px;margin-top:var(--sp-7)}

.mv2-toggle{display:inline-flex;position:relative;padding:4px;border:1px solid var(--line-subtle);border-radius:var(--r-pill);background:var(--surface-inset)}
.mv2-toggle__btn{position:relative;appearance:none;background:none;border:0;cursor:pointer;padding:9px 22px;font:var(--type-label);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--text-heading)}
.mv2-toggle__pill{position:absolute;inset:0;border-radius:var(--r-pill);background:rgba(201,162,74,.16);border:1px solid rgba(201,162,74,.45);opacity:0;transition:var(--t-hover)}
.mv2-toggle__btn.is-active .mv2-toggle__pill{opacity:1}
.mv2-toggle__save{margin-left:var(--sp-3);font-size:11px;letter-spacing:.12em;color:var(--gold-300)}

.mv2-price{display:flex;align-items:flex-end;gap:var(--sp-5);margin:var(--sp-9) 0 var(--sp-2)}
.mv2-price__amount{font-family:var(--font-display);font-size:clamp(40px,5vw,64px);line-height:1;letter-spacing:var(--ls-title);color:var(--text-display)}
.mv2-price__period{font:var(--type-label);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--text-muted);padding-bottom:10px}
.mv2-price__note{font:var(--type-body-sm);color:var(--text-muted);min-height:22px}

.mv2-trust{display:flex;align-items:center;gap:var(--sp-7);margin-top:var(--sp-6);flex-wrap:wrap;font:var(--type-body-sm);font-size:var(--fs-xs);color:var(--text-faint)}
.mv2-trust span{display:flex;align-items:center;gap:var(--sp-3)}

.mv2-panel{position:relative;background:var(--surface-raised);border:1px solid var(--line-hairline);border-radius:var(--r-lg);padding:var(--sp-9);box-shadow:var(--shadow-xl)}
.mv2-panel__label{font:var(--type-label);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--gold-300);margin-bottom:var(--sp-8)}
.mv2-panel__list{display:flex;flex-direction:column;gap:var(--sp-7)}
.mv2-panel__row{display:flex;gap:var(--sp-6)}
.mv2-panel__row .icon{color:var(--gold-400);margin-top:3px;flex:0 0 auto}
.mv2-panel__row-title{font-family:var(--font-ui);font-weight:var(--fw-semibold);font-size:var(--fs-sm);color:var(--text-heading)}
.mv2-panel__row-body{font:var(--type-body-sm);color:var(--text-muted)}
.mv2-stats{display:flex;gap:var(--sp-9)}
.mv2-stats__num{font-family:var(--font-display);font-size:var(--fs-xl);color:var(--text-display)}
.mv2-stats__label{font-size:var(--fs-3xs);letter-spacing:var(--ls-label-tight);color:var(--text-faint);text-transform:uppercase}

.mv2-rail-section{max-width:1240px;margin:0 auto;padding:var(--sp-11) var(--page-gutter) 0}

.mv2-checkout-section{position:relative;overflow:hidden;margin-top:var(--sp-13);border-top:1px solid var(--line-hairline);border-bottom:1px solid var(--line-hairline)}
.mv2-checkout-section::before{content:"";position:absolute;inset:0;background:var(--grad-apex)}
.mv2-checkout{position:relative;max-width:560px;margin:0 auto;padding:var(--sp-13) var(--page-gutter) var(--sp-14)}
.mv2-checkout__eyebrow{text-align:center}
.mv2-checkout__title{margin:var(--sp-5) 0 var(--sp-9);text-align:center;font-size:var(--fs-3xl)}
.mv2-checkout__head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-6);padding-bottom:var(--sp-8);margin-bottom:var(--sp-8);border-bottom:1px solid var(--line-subtle)}
.mv2-checkout__plan-label{font:var(--type-label);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--text-faint)}
.mv2-checkout__plan-summary{margin-top:var(--sp-2);font-family:var(--font-ui);font-weight:var(--fw-semibold);font-size:var(--fs-md);color:var(--text-heading)}
.mv2-checkout__fields{display:flex;flex-direction:column;gap:var(--sp-7)}
.mv2-checkout__fields[hidden]{display:none}
.mv2-checkout__row{display:flex;gap:var(--sp-6)}
.mv2-checkout__note{display:flex;align-items:flex-start;gap:var(--sp-4);font:var(--type-body-sm);font-size:var(--fs-xs);line-height:1.5;color:var(--text-faint)}
.mv2-checkout__note .icon{margin-top:3px;flex:0 0 auto}
.mv2-checkout__badges{display:flex;justify-content:center;gap:var(--sp-5);margin-top:var(--sp-8);flex-wrap:wrap}
.mv2-checkout__demo-note{display:flex;align-items:center;gap:var(--sp-4);margin-top:var(--sp-7);padding:var(--sp-5) var(--sp-6);border-radius:var(--r-sm);background:rgba(62,142,147,.14);border:1px solid rgba(62,142,147,.5);color:var(--stone-100);font:var(--type-body-sm);font-size:var(--fs-xs);line-height:1.5}
.mv2-checkout__demo-note .icon{flex:0 0 auto;color:var(--aether-500)}
.mv2-checkout__demo-note[hidden]{display:none}

.mv2-faq{max-width:1000px;margin:0 auto;padding:var(--sp-14) var(--page-gutter) var(--sp-13)}
.mv2-faq__eyebrow{display:block;text-align:center;font:var(--type-label);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--text-muted)}
.mv2-faq__title{margin:var(--sp-5) 0 var(--sp-10);text-align:center;font-size:var(--fs-2xl)}
.mv2-faq__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--sp-9)}
.mv2-faq__q{font-family:var(--font-ui);font-weight:var(--fw-semibold);font-size:var(--fs-md);color:var(--text-heading);margin-bottom:var(--sp-3)}
.mv2-faq__a{font:var(--type-body-sm);line-height:var(--lh-body);color:var(--text-muted)}
.mv2-faq__cta{display:flex;justify-content:center;margin-top:var(--sp-11)}

@media (max-width:900px){
  .mv2-hero__inner{grid-template-columns:1fr}
}
@media (max-width:640px){
  .mv2-hero__inner{padding-left:var(--page-gutter-sm);padding-right:var(--page-gutter-sm)}
  .mv2-checkout__row{flex-direction:column}
  .mv2-stats{gap:var(--sp-6)}
}
