/* =========================================================
   UniSST V198 — Home pública cinematográfica
   Referência estrutural: serviços premium de streaming.
   Implementação original com identidade, cursos e mídia UniSST.
   Escopo deliberado: somente body.public-home-v198.
   ========================================================= */

body.public-home-v198{
  --uv198-bg:#050505;
  --uv198-panel:#171717;
  --uv198-panel-2:#1E1E1E;
  --uv198-text:#ffffff;
  --uv198-muted:#C1C1C1;
  --uv198-blue:#D4AF37;
  --uv198-header-h:64px;
  --uv198-gutter:clamp(28px,4.25vw,66px);
  background:var(--uv198-bg)!important;
  color:var(--uv198-text)!important;
  overflow-x:hidden!important;
  font-family:Arial,"Helvetica Neue",sans-serif!important;
}

body.public-home-v198 .public-main{
  padding:0!important;
  margin:0!important;
  min-height:100vh;
  overflow:visible!important;
  background:var(--uv198-bg)!important;
}

/* ---------- Header ---------- */
body.public-home-v198 .uv198-header{
  position:fixed!important;
  inset:0 0 auto 0!important;
  width:100%!important;
  height:var(--uv198-header-h)!important;
  z-index:5000!important;
  background:#050505!important;
  border:0!important;
  box-shadow:0 1px 0 rgba(255,255,255,.03)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  contain:none!important;
}

body.public-home-v198 .uv198-header-inner{
  width:100%!important;
  max-width:none!important;
  height:var(--uv198-header-h)!important;
  min-height:var(--uv198-header-h)!important;
  margin:0!important;
  padding:0 clamp(26px,2.8vw,40px)!important;
  display:flex!important;
  align-items:center!important;
  gap:27px!important;
  border:0!important;
  border-radius:0!important;
  background:#050505!important;
  box-shadow:none!important;
  overflow:visible!important;
}

body.public-home-v198 .uv198-brand{
  flex:0 0 auto;
  display:inline-flex!important;
  align-items:center!important;
  gap:9px!important;
  min-width:max-content;
  color:#fff!important;
  text-decoration:none!important;
  font-size:15px!important;
  line-height:1!important;
  font-weight:750!important;
}
body.public-home-v198 .uv198-brand .brand-logo-img{
  width:31px!important;
  height:31px!important;
  max-height:31px!important;
  object-fit:contain!important;
}
body.public-home-v198 .uv198-brand span{display:inline!important;color:#fff!important}

body.public-home-v198 .uv198-primary-nav{
  height:100%;
  display:flex;
  align-items:center;
  gap:3px;
  min-width:0;
  flex:0 1 auto;
}
body.public-home-v198 .uv198-primary-nav>a,
body.public-home-v198 .uv198-nav-categories{
  height:42px;
  min-height:42px;
  padding:0 13px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  border:0;
  border-radius:5px;
  background:transparent;
  color:#fff;
  font:inherit;
  font-size:14px;
  line-height:1;
  font-weight:700;
  white-space:nowrap;
  text-decoration:none;
  cursor:pointer;
  transition:background .14s ease,color .14s ease;
}
body.public-home-v198 .uv198-primary-nav>a:hover,
body.public-home-v198 .uv198-nav-categories:hover,
body.public-home-v198 .uv198-nav-categories[aria-expanded="true"]{
  background:rgba(255,255,255,.11);
  color:#fff;
}
body.public-home-v198 .uv198-primary-nav>a.active{background:transparent;color:#fff}
body.public-home-v198 .uv198-nav-divider{
  width:1px;
  height:34px;
  margin:0 4px 0 3px;
  background:rgba(255,255,255,.42);
  flex:0 0 auto;
}
body.public-home-v198 .uv198-nav-categories svg{
  width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;
}

body.public-home-v198 .uv198-header-actions{
  margin-left:auto!important;
  height:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:4px!important;
  flex:0 0 auto!important;
}
body.public-home-v198 .uv198-icon-action,
body.public-home-v198 .uv198-avatar{
  width:42px;
  min-width:42px;
  height:42px;
  display:inline-grid;
  place-items:center;
  border:0;
  border-radius:50%;
  background:transparent;
  color:#fff;
  text-decoration:none;
  cursor:pointer;
  transition:background .14s ease,transform .14s ease;
}
body.public-home-v198 .uv198-icon-action:hover,
body.public-home-v198 .uv198-avatar:hover{background:rgba(255,255,255,.12)}
body.public-home-v198 .uv198-icon-action svg{
  width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;
}
body.public-home-v198 .uv198-grid-trigger svg{width:24px;height:24px;fill:currentColor;stroke:none}
body.public-home-v198 .uv198-language{
  height:42px;
  padding:0 8px;
  display:inline-flex;
  align-items:center;
  gap:4px;
  color:#fff;
  font-size:14px;
  font-weight:700;
  white-space:nowrap;
}
body.public-home-v198 .uv198-language svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2}
body.public-home-v198 .uv198-avatar{
  background:linear-gradient(180deg,#787878,#434343)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  color:#fff!important;
  box-shadow:inset 0 1px rgba(255,255,255,.16)!important;
}
body.public-home-v198 .uv198-avatar span{font-size:13px;font-weight:800}
body.public-home-v198 .uv198-join{
  height:44px;
  min-height:44px;
  margin-left:6px;
  padding:0 18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:8px;
  background:var(--uv198-blue);
  color:#fff;
  font-size:14px;
  font-weight:750;
  text-decoration:none;
  white-space:nowrap;
  box-shadow:none;
  transition:background .14s ease;
}
body.public-home-v198 .uv198-join:hover{background:#F2C94C;color:#fff}

/* ---------- Mega menu ---------- */
body.public-home-v198 .uv198-mega-menu{
  position:fixed;
  z-index:5100;
  top:76px;
  right:clamp(26px,4.5vw,72px);
  width:min(620px,calc(100vw - 36px));
  min-height:470px;
  padding:22px 34px 26px;
  display:grid;
  grid-template-columns:minmax(0,1.65fr) minmax(210px,1fr);
  gap:34px;
  border:1px solid rgba(255,255,255,.055);
  border-radius:13px;
  background:#1F1F1F;
  color:#fff;
  box-shadow:0 24px 70px rgba(0,0,0,.58);
  transform-origin:top right;
  animation:uv198-menu-in .16s ease-out;
}
body.public-home-v198 .uv198-mega-menu[hidden]{display:none!important}
@keyframes uv198-menu-in{from{opacity:0;transform:translateY(-6px) scale(.99)}to{opacity:1;transform:none}}
body.public-home-v198 .uv198-mega-column{min-width:0;padding:7px 0}
body.public-home-v198 .uv198-mega-featured{padding-left:34px;border-left:1px solid rgba(255,255,255,.36)}
body.public-home-v198 .uv198-mega-column h2{
  margin:0 0 23px;
  color:#959595;
  font-size:14px;
  line-height:1.2;
  font-weight:600;
  letter-spacing:.02em;
  text-transform:uppercase;
}
body.public-home-v198 .uv198-category-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 24px;
}
body.public-home-v198 .uv198-mega-menu a{
  min-height:48px;
  display:flex;
  align-items:center;
  color:#f7f8f9;
  font-size:15px;
  line-height:1.25;
  font-weight:700;
  text-decoration:none;
  border-radius:7px;
  transition:background .12s ease,color .12s ease;
}
body.public-home-v198 .uv198-mega-menu a:hover{color:#fff;background:rgba(255,255,255,.07);padding-left:9px}
body.public-home-v198 .uv198-mega-featured>a{padding-right:6px}

/* ---------- Prime-style marketing hero ---------- */
body.public-home-v198 .uv198-home{width:100%;background:var(--uv198-bg);color:#fff}
body.public-home-v198 .uv198-hero{
  position:relative;
  min-height:700px;
  height:calc(100vh - 0px);
  max-height:900px;
  padding-top:var(--uv198-header-h);
  display:grid;
  grid-template-columns:minmax(460px,48.5%) minmax(0,51.5%);
  background:#000;
  overflow:hidden;
  isolation:isolate;
}
body.public-home-v198 .uv198-hero-copy{
  position:relative;
  z-index:8;
  padding:clamp(58px,8.5vh,92px) 34px 46px var(--uv198-gutter);
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-start;
  background:#000;
}
body.public-home-v198 .uv198-hero-copy:after{
  content:"";
  position:absolute;
  z-index:-1;
  inset:0 -150px 0 auto;
  width:250px;
  pointer-events:none;
  background:linear-gradient(90deg,#000 0%,rgba(0,0,0,.92) 28%,rgba(0,0,0,.42) 68%,transparent 100%);
}
body.public-home-v198 .uv198-hero-copy h1{
  max-width:13.6ch;
  margin:0 0 39px;
  color:#fff;
  font-size:clamp(46px,4.25vw,67px);
  line-height:1.02;
  letter-spacing:-.035em;
  font-weight:800;
  text-wrap:balance;
}
body.public-home-v198 .uv198-hero-lead,
body.public-home-v198 .uv198-hero-note{
  max-width:650px;
  margin:0;
  color:#fff;
  font-size:clamp(18px,1.45vw,22px);
  line-height:1.28;
  font-weight:650;
  letter-spacing:-.012em;
}
body.public-home-v198 .uv198-hero-note{margin-top:31px}
body.public-home-v198 .uv198-hero-cta{
  width:min(295px,100%);
  margin-top:44px;
  display:flex;
  flex-direction:column;
  align-items:stretch;
}
body.public-home-v198 .uv198-hero-button{
  width:100%;
  min-height:62px;
  padding:0 22px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:8px;
  background:#fff;
  color:#111111;
  font-size:18px;
  font-weight:750;
  text-decoration:none;
  box-shadow:none;
  transition:background .14s ease,transform .14s ease;
}
body.public-home-v198 .uv198-hero-button:hover{background:#e8eaed;color:#111111;transform:none}
body.public-home-v198 .uv198-hero-or{
  height:78px;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:14px;
  color:#fff;
  font-size:13px;
  font-weight:700;
}
body.public-home-v198 .uv198-hero-or:before,
body.public-home-v198 .uv198-hero-or:after{content:"";height:1px;background:rgba(255,255,255,.92)}
body.public-home-v198 .uv198-hero-catalog-count{
  margin-top:16px;
  color:#B7B7B7;
  font-size:11px;
  line-height:1.35;
}

body.public-home-v198 .uv198-hero-visual{
  position:relative;
  min-width:0;
  height:100%;
  overflow:hidden;
  background:#090909;
}
body.public-home-v198 .uv198-mosaic{
  position:absolute;
  z-index:2;
  inset:0 auto 0 0;
  width:42%;
  padding:0 8px 0 0;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  grid-template-rows:repeat(4,1fr);
  gap:7px;
  overflow:hidden;
}
body.public-home-v198 .uv198-mosaic-card{
  position:relative;
  display:block;
  min-width:0;
  overflow:hidden;
  background-image:var(--uv198-card-image);
  background-size:cover;
  background-position:center;
  border-radius:5px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.025);
  filter:saturate(.93) brightness(.9);
  text-decoration:none;
}
body.public-home-v198 .uv198-mosaic-card span{
  position:absolute;
  left:8px;right:8px;bottom:7px;
  color:#fff;
  font-size:10px;
  line-height:1.18;
  font-weight:750;
  text-shadow:0 2px 8px #000;
  opacity:0;
  transition:opacity .14s ease;
}
body.public-home-v198 .uv198-mosaic-card:hover span{opacity:1}
body.public-home-v198 .uv198-feature{
  position:absolute;
  z-index:1;
  inset:0 0 0 41.5%;
  display:block;
  overflow:hidden;
  background-image:var(--uv198-feature-image);
  background-size:cover;
  background-position:center 18%;
  text-decoration:none;
}
body.public-home-v198 .uv198-feature:before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(0,0,0,.1),transparent 35%),linear-gradient(0deg,rgba(0,0,0,.75),transparent 40%);
}
body.public-home-v198 .uv198-feature-shade{
  position:absolute;
  inset:0;
  box-shadow:inset 0 0 100px rgba(0,0,0,.20);
}
body.public-home-v198 .uv198-feature-copy{
  position:absolute;
  z-index:2;
  left:clamp(28px,4vw,60px);
  right:34px;
  bottom:11%;
  display:flex;
  flex-direction:column;
  gap:8px;
  color:#fff;
  text-shadow:0 3px 18px rgba(0,0,0,.9);
}
body.public-home-v198 .uv198-feature-copy small{
  color:#CBCBCB;
  font-size:12px;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}
body.public-home-v198 .uv198-feature-copy strong{
  max-width:18ch;
  color:#fff;
  font-size:clamp(30px,3vw,48px);
  line-height:1.03;
  font-weight:850;
}
body.public-home-v198 .uv198-hero-fade{
  position:absolute;
  z-index:6;
  inset:0 auto 0 0;
  width:27%;
  pointer-events:none;
  background:linear-gradient(90deg,#000 0%,rgba(0,0,0,.88) 18%,rgba(0,0,0,.35) 62%,transparent 100%);
}

/* Trilhos existentes permanecem, apenas conectados visualmente ao novo hero. */
body.public-home-v198 .uv198-public-rails{
  margin-top:0!important;
  padding-top:34px!important;
  background:linear-gradient(180deg,#000 0,#050505 100px,#050505 100%)!important;
}
body.public-home-v198 .uv198-public-rails .pv-public-rail-section{margin-bottom:46px}

/* ---------- Responsive ---------- */
@media(max-width:1260px){
  body.public-home-v198 .uv198-header-inner{gap:16px!important;padding-inline:22px!important}
  body.public-home-v198 .uv198-primary-nav>a,body.public-home-v198 .uv198-nav-categories{padding-inline:9px;font-size:13px}
  body.public-home-v198 .uv198-hero{grid-template-columns:49% 51%}
  body.public-home-v198 .uv198-hero-copy h1{font-size:clamp(42px,4.5vw,58px)}
  body.public-home-v198 .uv198-hero-lead,body.public-home-v198 .uv198-hero-note{font-size:18px}
}

@media(max-width:1050px){
  body.public-home-v198 .uv198-primary-nav{display:none}
  body.public-home-v198 .uv198-header-inner{gap:10px!important}
  body.public-home-v198 .uv198-header-actions{margin-left:auto!important}
  body.public-home-v198 .uv198-hero{grid-template-columns:48% 52%;min-height:680px}
  body.public-home-v198 .uv198-hero-copy{padding-left:30px;padding-right:20px}
  body.public-home-v198 .uv198-hero-copy h1{font-size:43px;margin-bottom:28px}
  body.public-home-v198 .uv198-hero-lead,body.public-home-v198 .uv198-hero-note{font-size:17px}
  body.public-home-v198 .uv198-hero-note{margin-top:22px}
  body.public-home-v198 .uv198-hero-cta{margin-top:32px;width:270px}
  body.public-home-v198 .uv198-hero-button{min-height:56px;font-size:16px}
  body.public-home-v198 .uv198-hero-or{height:58px}
  body.public-home-v198 .uv198-mosaic{width:46%}
  body.public-home-v198 .uv198-feature{left:45.5%}
}

@media(max-width:760px){
  body.public-home-v198{--uv198-header-h:58px}
  body.public-home-v198 .uv198-header{height:58px!important}
  body.public-home-v198 .uv198-header-inner{height:58px!important;min-height:58px!important;padding:0 12px!important}
  body.public-home-v198 .uv198-brand{gap:5px!important}
  body.public-home-v198 .uv198-brand .brand-logo-img{width:29px!important;height:29px!important}
  body.public-home-v198 .uv198-brand span{display:none!important}
  body.public-home-v198 .uv198-language{display:none}
  body.public-home-v198 .uv198-grid-trigger{display:grid}
  body.public-home-v198 .uv198-avatar{width:38px;min-width:38px;height:38px}
  body.public-home-v198 .uv198-icon-action{width:38px;min-width:38px;height:38px}
  body.public-home-v198 .uv198-join{height:40px;min-height:40px;padding:0 12px;font-size:12px;margin-left:2px}
  body.public-home-v198 .uv198-mega-menu{top:66px;right:10px;width:calc(100vw - 20px);max-height:calc(100dvh - 80px);min-height:0;overflow:auto;grid-template-columns:1fr;padding:20px 22px;gap:8px}
  body.public-home-v198 .uv198-mega-featured{padding-left:0;border-left:0;border-top:1px solid rgba(255,255,255,.18);margin-top:4px;padding-top:20px}
  body.public-home-v198 .uv198-category-grid{grid-template-columns:1fr 1fr;gap:0 14px}
  body.public-home-v198 .uv198-mega-menu a{min-height:44px;font-size:13px}

  body.public-home-v198 .uv198-hero{
    height:auto;
    max-height:none;
    min-height:0;
    padding-top:58px;
    display:flex;
    flex-direction:column;
  }
  body.public-home-v198 .uv198-hero-copy{
    order:2;
    min-height:520px;
    padding:38px 20px 54px;
    background:linear-gradient(180deg,rgba(0,0,0,.70),#000 22%,#000 100%);
  }
  body.public-home-v198 .uv198-hero-copy:after{display:none}
  body.public-home-v198 .uv198-hero-copy h1{max-width:12ch;margin-bottom:24px;font-size:clamp(38px,11vw,52px)}
  body.public-home-v198 .uv198-hero-lead,body.public-home-v198 .uv198-hero-note{max-width:620px;font-size:16px;line-height:1.35}
  body.public-home-v198 .uv198-hero-note{margin-top:20px}
  body.public-home-v198 .uv198-hero-cta{width:100%;max-width:420px;margin-top:30px}
  body.public-home-v198 .uv198-hero-button{min-height:54px;font-size:16px}
  body.public-home-v198 .uv198-hero-or{height:52px}
  body.public-home-v198 .uv198-hero-visual{order:1;height:360px;min-height:360px}
  body.public-home-v198 .uv198-mosaic{width:48%;gap:4px}
  body.public-home-v198 .uv198-feature{left:47.5%}
  body.public-home-v198 .uv198-feature-copy{left:20px;right:18px;bottom:8%}
  body.public-home-v198 .uv198-feature-copy strong{font-size:28px}
  body.public-home-v198 .uv198-hero-fade{width:18%}
  body.public-home-v198 .uv198-public-rails{padding-top:22px!important}
}

@media(max-width:430px){
  body.public-home-v198 .uv198-header-actions{gap:0!important}
  body.public-home-v198 .uv198-header-actions>.uv198-icon-action:first-child{display:none}
  body.public-home-v198 .uv198-join{padding-inline:10px;font-size:11px}
  body.public-home-v198 .uv198-hero-visual{height:300px;min-height:300px}
  body.public-home-v198 .uv198-mosaic{width:52%}
  body.public-home-v198 .uv198-feature{left:51.5%}
  body.public-home-v198 .uv198-mosaic-card-6,body.public-home-v198 .uv198-mosaic-card-7{display:none}
  body.public-home-v198 .uv198-mosaic{grid-template-rows:repeat(3,1fr)}
  body.public-home-v198 .uv198-hero-copy{min-height:500px;padding-inline:18px}
}

@media(prefers-reduced-motion:reduce){
  body.public-home-v198 *{scroll-behavior:auto!important}
  body.public-home-v198 .uv198-mega-menu{animation:none}
}

/* V198 preserves the course's explicit hero media without allowing it to take
   over navigation. Video/iframe is decorative; the transparent link owns clicks. */
body.public-home-v198 .uv198-feature-media{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border:0;pointer-events:none;z-index:0;
}
body.public-home-v198 .uv198-feature-link{
  position:absolute;inset:0;z-index:3;display:block;text-decoration:none;
}
body.public-home-v198 .uv198-feature-copy{pointer-events:none;z-index:4}
