/* CENC Royale v000035a — Full-Bleed Hero Refinement
 * Platform Home only. The hero becomes the first visual surface of the page,
 * flowing behind the platform header and removing the competing card/top borders.
 */

.public-shell.is-platform-home{
  --royale-platform-header-height:82px;
}

/* Header + hero become one opening composition on the platform Home. */
.public-shell.is-platform-home .public-header{
  border-bottom:0;
  box-shadow:none;
  background:linear-gradient(180deg,
    color-mix(in srgb,var(--theme-bg) 94%,transparent) 0%,
    color-mix(in srgb,var(--theme-bg) 82%,transparent) 62%,
    color-mix(in srgb,var(--theme-bg) 48%,transparent) 100%);
  backdrop-filter:blur(18px) saturate(120%);
}

/* Desktop/tablet: truly full-bleed, without the old inset/card treatment. */
.public-shell.is-platform-home .royale-commercial-hero{
  width:100%;
  max-width:none;
  min-height:max(720px,100svh);
  margin:calc(var(--royale-platform-header-height) * -1) 0 0;
  border:0;
  border-radius:0;
  box-shadow:none;
  overflow:hidden;
}

/* One subtle closure at the END of the hero; no line competes with the header. */
.public-shell.is-platform-home .royale-commercial-hero::after{
  content:"";
  position:absolute;
  z-index:3;
  left:0;
  right:0;
  bottom:0;
  height:1px;
  background:linear-gradient(90deg,
    transparent,
    color-mix(in srgb,var(--theme-border) 44%,transparent) 18%,
    color-mix(in srgb,var(--theme-primary) 34%,var(--theme-border)) 50%,
    color-mix(in srgb,var(--theme-border) 44%,transparent) 82%,
    transparent);
  pointer-events:none;
}

/* Keep all real content clear of the header while the media extends behind it. */
.public-shell.is-platform-home .royale-commercial-hero .royale-home-hero-content{
  box-sizing:border-box;
  min-height:max(720px,100svh);
  padding-top:calc(var(--royale-platform-header-height) + clamp(56px,7vw,108px));
  padding-left:max(var(--royale-gutter),clamp(26px,6vw,108px));
  padding-right:max(var(--royale-gutter),clamp(26px,6vw,108px));
}

/* Slightly stronger top/left readability because the image now reaches under the nav. */
.public-shell.is-platform-home .royale-commercial-hero .royale-home-hero-shade{
  background:
    linear-gradient(180deg,color-mix(in srgb,var(--theme-bg) 42%,transparent) 0%,transparent 25%,transparent 72%,color-mix(in srgb,var(--theme-bg) 34%,transparent) 100%),
    linear-gradient(90deg,color-mix(in srgb,var(--theme-bg) 97%,transparent) 0%,color-mix(in srgb,var(--theme-bg) 80%,transparent) 43%,color-mix(in srgb,var(--theme-bg) 24%,transparent) 76%,transparent 100%);
}

@media(max-width:900px){
  .public-shell.is-platform-home .royale-commercial-hero .royale-home-hero-content{
    padding-left:clamp(20px,5vw,34px);
    padding-right:clamp(20px,5vw,34px);
  }
}

@media(max-width:700px){
  .public-shell.is-platform-home{
    --royale-platform-header-height:70px;
  }
  .public-shell.is-platform-home .public-header{
    background:linear-gradient(180deg,
      color-mix(in srgb,var(--theme-bg) 96%,transparent),
      color-mix(in srgb,var(--theme-bg) 72%,transparent));
  }
  .public-shell.is-platform-home .royale-commercial-hero{
    min-height:100svh;
    margin-top:calc(var(--royale-platform-header-height) * -1);
  }
  .public-shell.is-platform-home .royale-commercial-hero .royale-home-hero-content{
    min-height:100svh;
    padding:calc(var(--royale-platform-header-height) + 28px) 18px 38px;
  }
}

@media(prefers-reduced-motion:reduce){
  .public-shell.is-platform-home .royale-commercial-hero{scroll-behavior:auto}
}
