
/* source: css/studio-guest-home-polish-v410.css */
/*
 * Guest home polish V410.
 * Semantic tokens are the stable contract for the planned theme manager.
 * Components consume these tokens instead of introducing new page colours.
 */
body.studio-theme{
  --theme-canvas:var(--studio-color-canvas,#020713);
  --theme-canvas-deep:color-mix(in srgb,var(--studio-color-canvas,#020713) 88%,var(--studio-color-surface,#071a35));
  --theme-surface:var(--studio-color-surface,#071a35);
  --theme-surface-raised:color-mix(in srgb,var(--studio-color-surface,#071a35) 90%,var(--studio-color-accent,#1798ff) 10%);
  --theme-border:color-mix(in srgb,var(--studio-color-accent,#1798ff) 28%,var(--studio-color-surface,#071a35));
  --theme-text:var(--studio-color-text,#f8fbff);
  --theme-text-muted:var(--studio-color-text-muted,#91a9c5);
  --theme-header:color-mix(in srgb,var(--studio-color-canvas,#020713) 84%,var(--studio-color-surface,#071a35));
  --theme-footer:color-mix(in srgb,var(--studio-color-surface,#071a35) 78%,var(--studio-color-canvas,#020713));
  --studio-page-bg:var(--theme-canvas);
  --studio-canvas-master:var(--theme-canvas);
  --studio-page-soft:var(--theme-surface);
  --studio-page-soft-2:var(--theme-surface-raised);
  --studio-header-bg:var(--theme-header);
  --studio-panel:var(--theme-surface-raised);
  --studio-panel-strong:var(--theme-surface);
  --studio-footer-b:var(--theme-footer);
}

body.is-studio-guest,
body.is-studio-guest main,
body.is-studio-guest .studio-page{
  background-color:var(--theme-canvas)!important;
}

/* The builder may deliberately request a panel/image/custom background. */
body.is-studio-guest .studio-page>.studio-responsive-section[data-section-background="seamless"],
body.is-studio-guest .studio-page>.studio-responsive-section[data-section-background="glow"]{
  background-color:transparent!important;
}
body.is-studio-guest .studio-page>.studio-responsive-section[data-section-background="seamless"] :is(
  .studio-exact-latest,.studio-exact-series,.studio-exact-premium,
  .studio-exact-cinema,.studio-exact-plans,.studio-content,.studio-promo
){
  background-color:transparent!important;
  background-image:none!important;
  border-block-color:transparent!important;
}

/* Keep the modal vocabulary on the same surface system. */
body.is-studio-guest .studio-work-modal>article{
  border-color:var(--theme-border);
  background:linear-gradient(145deg,var(--theme-surface-raised),var(--theme-canvas-deep));
}
body.is-studio-guest .studio-work-meta span,
body.is-studio-guest .studio-work-actions button{
  border-color:var(--theme-border);
  background:var(--theme-surface);
}
body.is-studio-guest .studio-work-info>p{color:var(--theme-text-muted)}

@media(max-width:720px){
  body.is-studio-guest .studio-work-modal{
    align-items:center;
    padding:max(12px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom));
  }
  body.is-studio-guest .studio-work-modal>article{
    width:min(430px,100%);
    height:auto;
    max-height:calc(100dvh - 24px);
    grid-template-columns:1fr;
    grid-template-rows:min(210px,29dvh) auto;
    border-width:1px;
    border-radius:22px;
    overflow:auto;
    overscroll-behavior:contain;
  }
  body.is-studio-guest .studio-work-art{
    min-height:170px;
    margin:0;
    border:0;
    border-radius:21px 21px 0 0;
  }
  body.is-studio-guest .studio-work-info{
    display:block;
    padding:18px 16px 16px;
    overflow:visible;
  }
  body.is-studio-guest .studio-work-info h2{
    margin-top:9px;
    font-size:clamp(25px,8vw,31px);
  }
  body.is-studio-guest .studio-work-info h3{margin-bottom:10px}
  body.is-studio-guest .studio-work-info>p{
    margin:12px 0;
    font-size:10.5px;
    line-height:1.75;
    -webkit-line-clamp:3;
  }
  body.is-studio-guest .studio-work-cast{display:none}
  body.is-studio-guest .studio-work-actions{
    margin-top:12px;
    padding-top:0;
    grid-template-columns:1fr 1fr;
    gap:8px;
  }
  body.is-studio-guest .studio-work-actions>a{
    grid-column:1/-1;
    min-width:0;
  }
  body.is-studio-guest .studio-work-actions a,
  body.is-studio-guest .studio-work-actions button{height:42px}
  body.is-studio-guest .studio-work-close{
    position:absolute;
    top:10px;
    bottom:auto;
    left:10px;
  }
}

@media(max-width:390px){
  body.is-studio-guest .studio-work-modal>article{
    grid-template-rows:min(185px,26dvh) auto;
  }
  body.is-studio-guest .studio-work-meta span,
  body.is-studio-guest .studio-work-meta b{padding:5px 7px}
}


/* source: css/studio-guest-seamless-canvas-v411.css */
/*
 * Guest canvas V411
 * One page colour; sections only provide layout and cards provide elevation.
 */
body.is-studio-guest{
  --studio-page-bg:var(--theme-canvas);
  --studio-canvas:var(--theme-canvas);
  --studio-canvas-master:var(--theme-canvas);
  --studio-slider-seam:var(--theme-canvas);
  background:var(--theme-canvas)!important;
}

body.is-studio-guest main,
body.is-studio-guest .studio-page{
  background:var(--theme-canvas)!important;
}

/* Only seamless/glow wrappers dissolve into the canvas. Builder-selected
   custom, image and panel modes retain their own intentional background. */
body.is-studio-guest .studio-page>.studio-responsive-section:not([data-section-background]),
body.is-studio-guest .studio-page>.studio-responsive-section[data-section-background="seamless"],
body.is-studio-guest .studio-page>.studio-responsive-section[data-section-background="glow"]{
  border:0!important;
  box-shadow:none!important;
  background-color:transparent!important;
  background-image:none!important;
}

body.is-studio-guest .studio-page :is(
  .studio-exact-latest,
  .studio-exact-series,
  .studio-exact-premium,
  .studio-exact-cinema,
  .studio-exact-plans,
  .studio-content,
  .studio-promo,
  .builder-memberships
){
  border:0!important;
  box-shadow:none!important;
  background-color:transparent!important;
  background-image:none!important;
}

/* The first content block must use the exact page canvas, including its builder wrapper. */
body.is-studio-guest .studio-responsive-section:has(.studio-exact-latest),
body.is-studio-guest .studio-exact-latest{
  border:0!important;
  box-shadow:none!important;
  background:var(--theme-canvas)!important;
}
body.is-studio-guest .studio-responsive-section:has(.studio-exact-latest)::before,
body.is-studio-guest .studio-responsive-section:has(.studio-exact-latest)::after,
body.is-studio-guest .studio-exact-latest::before,
body.is-studio-guest .studio-exact-latest::after{
  display:none!important;
  content:none!important;
}
body.is-studio-guest .studio-responsive-section:has(.studio-exact-latest)+.studio-responsive-section:is(
  [data-section-background="seamless"],
  [data-section-background="glow"]
){
  margin-top:-2px!important;
  border-top:0!important;
  background-color:var(--theme-canvas)!important;
  background-image:none!important;
}

body.is-studio-guest .studio-page :is(
  .studio-exact-series,
  .studio-exact-premium,
  .studio-exact-cinema,
  .studio-exact-plans,
  .builder-memberships
)::before,
body.is-studio-guest .studio-page :is(
  .studio-exact-series,
  .studio-exact-premium,
  .studio-exact-cinema,
  .studio-exact-plans,
  .builder-memberships
)::after{
  display:none!important;
}

/* The CTA is a real card inside the canvas, rather than another section background. */
body.is-studio-guest .studio-exact-cta{
  position:relative;
  overflow:hidden;
  box-sizing:border-box;
  border:1px solid var(--theme-border)!important;
  background:
    radial-gradient(circle at 78% 28%,rgba(var(--studio-rgb),.14),transparent 38%),
    linear-gradient(135deg,var(--theme-surface-raised),var(--theme-surface))!important;
  box-shadow:0 24px 60px #0004!important;
}
body.is-studio-guest .studio-exact-cta::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border-radius:inherit;
  background:linear-gradient(110deg,transparent 15%,rgba(255,255,255,.035),transparent 62%);
}
body.is-studio-guest .studio-exact-cta>*{
  position:relative;
  z-index:1;
}

/* Slider dissolves into exactly the same canvas without a border or dark strip. */
body.is-studio-guest .studio-responsive-section:has(.studio-exact-hero),
body.is-studio-guest .studio-responsive-section:has(.studio-cine-slider),
body.is-studio-guest .studio-exact-hero,
body.is-studio-guest .studio-cine-slider{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background-color:var(--theme-canvas)!important;
}

body.is-studio-guest .studio-exact-hero::after,
body.is-studio-guest .studio-cine-slider::after{
  right:-2px!important;
  bottom:-2px!important;
  left:-2px!important;
  height:190px!important;
  border:0!important;
  background:linear-gradient(180deg,transparent 0,var(--theme-canvas) 92%)!important;
}

body.is-studio-guest .studio-responsive-section:has(.studio-exact-hero)+.studio-responsive-section,
body.is-studio-guest .studio-responsive-section:has(.studio-cine-slider)+.studio-responsive-section{
  margin-top:-2px!important;
  border-top:0!important;
  background:var(--theme-canvas)!important;
}

/* The footer begins from the same canvas; its waves may colour only the footer. */
body.is-studio-guest .studio-exact-footer.studio-footer-compact{
  margin-top:0!important;
  border-top:0!important;
  background:var(--theme-canvas)!important;
}
body.is-studio-guest .studio-compact-waves{
  border:0!important;
  background:var(--theme-canvas)!important;
}

@media(max-width:680px){
  body.is-studio-guest .studio-exact-cta{
    width:90vw;
    padding:28px 24px;
  }
}

