/* ============================================================
   NOVERIS PROPIEDADES — hoja de estilos compartida
   Paleta de marca: #000000 #FFFFFF #273A61 #8BC4F7
   ============================================================ */
/* ---------- TIPOGRAFÍAS LOCALES (SIL Open Font License, ver tipografias/) ---------- */
@font-face{font-family:'Bebas Neue'; src:url('tipografias/bebas-neue-400.woff') format('woff'); font-weight:400; font-style:normal; font-display:swap;}
@font-face{font-family:'Open Sans'; src:url('tipografias/open-sans-400.woff') format('woff'); font-weight:400; font-style:normal; font-display:swap;}
@font-face{font-family:'Open Sans'; src:url('tipografias/open-sans-600.woff') format('woff'); font-weight:600; font-style:normal; font-display:swap;}
@font-face{font-family:'Open Sans'; src:url('tipografias/open-sans-700.woff') format('woff'); font-weight:700; font-style:normal; font-display:swap;}
@font-face{font-family:'Open Sans'; src:url('tipografias/open-sans-800.woff') format('woff'); font-weight:800; font-style:normal; font-display:swap;}
#noveris-app{
  /* --- Paleta de marca (exacta) --- */
  --negro:#000000;
  --blanco:#FFFFFF;
  --azul:#273A61;
  --celeste:#8BC4F7;

  /* --- Neutrales derivados --- */
  --azul-900:#1B2A4A;
  --azul-700:#32497A;
  --celeste-050:#EAF4FE;
  --celeste-700:#5B93C9;
  --gris-fondo:#F4F7FC;
  --gris-texto:#4B5563;
  --borde:#E3E9F3;

  /* --- Radios (botones redondeados) --- */
  --r-lg:14px;
  --r-md:12px;
  --r-sm:8px;
  --r-xs:6px;

  --sombra:0 18px 40px rgba(15,25,50,.12);
  --sombra-sm:0 6px 18px rgba(15,25,50,.08);
  --wrap:1180px;
}

#noveris-app *{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
#noveris-app{
  font-family:'Open Sans', sans-serif;
  color:var(--negro);
  background:var(--blanco);
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
}
#noveris-app img{display:block; width:100%; height:100%; object-fit:cover;}
#noveris-app .display{font-family:'Bebas Neue', sans-serif; letter-spacing:0.5px; line-height:0.95;}
#noveris-app a{text-decoration:none; color:inherit;}
#noveris-app .wrap{max-width:var(--wrap); margin:0 auto; padding:0 40px;}

#noveris-app :focus-visible{outline:3px solid var(--celeste); outline-offset:2px; border-radius:2px;}

/* ---------- BOTONES (redondeados) ---------- */
#noveris-app .btn{
  display:inline-flex; align-items:center; justify-content:center; gap:9px;
  font-family:'Open Sans', sans-serif; font-weight:700; font-size:14px;
  padding:14px 30px; border-radius:var(--r-sm);
  cursor:pointer; border:2px solid transparent;
  transition:transform .15s ease, box-shadow .2s ease, background .2s ease, color .2s ease;
}
#noveris-app .btn svg{width:17px; height:17px;}

/* Botón principal — celeste sólido con relieve */
#noveris-app .btn-celeste{
  background:var(--celeste); color:var(--azul-900);
  box-shadow:0 8px 20px rgba(139,196,247,.45);
}
#noveris-app .btn-celeste:hover{
  background:#9ecdf8; transform:translateY(-2px);
  box-shadow:0 12px 26px rgba(139,196,247,.55);
}
#noveris-app .btn-azul{background:var(--azul); color:#fff;}
#noveris-app .btn-azul:hover{background:var(--azul-700); transform:translateY(-2px); box-shadow:var(--sombra-sm);}
#noveris-app .btn-outline-white{background:transparent; color:#fff; border-color:rgba(255,255,255,.7);}
#noveris-app .btn-outline-white:hover{background:#fff; color:var(--azul); transform:translateY(-2px);}
#noveris-app .btn-outline{background:transparent; color:var(--azul); border-color:var(--borde);}
#noveris-app .btn-outline:hover{border-color:var(--celeste); background:var(--celeste-050); transform:translateY(-2px);}
#noveris-app .btn-block{width:100%;}

/* ---------- LOGO (marca vectorial recoloreable) ---------- */
#noveris-app .logo-block{display:flex; align-items:center; gap:12px;}
#noveris-app .logo-mark{width:auto; height:44px; display:block;}
#noveris-app .logo-mark .mark-outline{fill:currentColor;}
#noveris-app .logo-mark .mark-fill{fill:var(--celeste);}
#noveris-app .logo-text .nombre{font-weight:700; font-size:15px; letter-spacing:0.5px; color:var(--azul); line-height:1.12;}
#noveris-app .logo-text .tag{font-weight:700; font-size:9.5px; letter-spacing:0.6px; color:var(--azul); text-transform:uppercase; opacity:.85;}

/* ---------- HEADER ---------- */
#noveris-app header{position:sticky; top:0; z-index:60; background:#fff; border-bottom:1px solid var(--borde);}
#noveris-app .nav-row{display:flex; align-items:center; justify-content:space-between; padding:14px 0; gap:20px;}
#noveris-app .logo-block .logo-mark{color:var(--azul);} /* marca navy sobre blanco */
#noveris-app nav.menu{display:flex; gap:32px; align-items:center;}
#noveris-app nav.menu a{font-size:13.5px; font-weight:600; color:var(--azul); letter-spacing:0.4px; padding:6px 0; border-bottom:2px solid transparent; transition:border-color .15s;}
#noveris-app nav.menu a:hover, #noveris-app nav.menu a.active{border-bottom:2px solid var(--celeste);}
#noveris-app .nav-cta{display:flex; align-items:center; gap:14px;}
#noveris-app .menu-toggle{display:none; background:none; border:none; cursor:pointer; padding:6px;}
#noveris-app .menu-toggle svg{width:26px; height:26px; stroke:var(--azul); display:block;}

/* ---------- HERO (home) ---------- */
#noveris-app .hero{
  position:relative; min-height:640px; display:flex; align-items:center; color:#fff; padding-bottom:70px;
  background-image:linear-gradient(100deg, rgba(20,28,48,0.86) 0%, rgba(20,28,48,0.5) 48%, rgba(20,28,48,0.28) 100%),
    url('imagenes/hero-inicio.jpg');
  background-size:cover; background-position:center;
}
#noveris-app .hero-inner{max-width:640px; padding:120px 0 40px;}
#noveris-app .hero h1{font-size:64px; color:#fff; margin-bottom:22px;}
#noveris-app .hero p.sub{font-size:16px; color:#E4ECFB; max-width:460px; margin-bottom:32px; font-weight:400;}

/* Franja hero para páginas internas */
#noveris-app .page-hero{
  position:relative; color:#fff; padding:112px 0 84px;
  background-image:linear-gradient(90deg, rgba(20,28,48,0.90) 0%, rgba(20,28,48,0.62) 100%),
    url('imagenes/hero-interno.jpg');
  background-size:cover; background-position:center;
}
#noveris-app .page-hero .eyebrow{color:var(--celeste);}
#noveris-app .page-hero h1{font-size:52px; color:#fff; margin:8px 0 12px;}
#noveris-app .page-hero p{color:#D9E4F7; max-width:560px; font-size:16px;}
#noveris-app .crumbs{font-size:12.5px; color:#B9C7E0; margin-top:18px; letter-spacing:.3px;}
#noveris-app .crumbs a:hover{color:#fff;}

/* Banner distinto por página (mismo overlay, imagen propia) */
#noveris-app .page-hero.hero-propiedades{
  background-image:linear-gradient(90deg, rgba(20,28,48,0.90) 0%, rgba(20,28,48,0.62) 100%),
    url('imagenes/hero-propiedades.jpg');
}
#noveris-app .page-hero.hero-nosotros{
  background-image:linear-gradient(90deg, rgba(20,28,48,0.90) 0%, rgba(20,28,48,0.62) 100%),
    url('imagenes/hero-nosotros.jpg');
}
#noveris-app .page-hero.hero-contacto{
  background-image:linear-gradient(90deg, rgba(20,28,48,0.90) 0%, rgba(20,28,48,0.62) 100%),
    url('imagenes/hero-contacto.jpg');
}
#noveris-app .page-hero.hero-servicios{
  background-image:linear-gradient(90deg, rgba(20,28,48,0.90) 0%, rgba(20,28,48,0.62) 100%),
    url('imagenes/hero-servicios.jpg');
}

/* ---------- BUSCADOR / FILTROS ---------- */
#noveris-app .search-card{
  position:relative; margin-top:-64px; z-index:10; background:#fff;
  border-radius:var(--r-lg); box-shadow:var(--sombra);
  padding:24px 28px; display:flex; gap:0; align-items:end; flex-wrap:wrap;
}
#noveris-app .search-card.static{margin-top:0; box-shadow:var(--sombra-sm);}
#noveris-app .search-field{flex:1; min-width:150px; padding:6px 20px; border-right:1px solid var(--borde);}
#noveris-app .search-field:first-child{padding-left:0;}
#noveris-app .search-field.last{border-right:none;}
#noveris-app .search-field label{display:block; font-size:10.5px; font-weight:700; letter-spacing:0.6px; color:var(--azul); text-transform:uppercase; margin-bottom:8px;}
#noveris-app .search-field select, #noveris-app .search-field input{
  width:100%; border:none; font-family:'Open Sans'; font-size:14.5px; color:var(--negro);
  background:transparent; outline:none; padding:2px 0;
}
#noveris-app .search-card .btn{margin-left:20px; padding:15px 34px; white-space:nowrap;}

/* ---------- SECCIONES ---------- */
#noveris-app section{padding:100px 0;}
#noveris-app .section-head{max-width:660px; margin-bottom:52px;}
#noveris-app .eyebrow{font-size:12px; font-weight:700; color:var(--celeste-700); letter-spacing:1px;}
#noveris-app .section-head h2{font-size:42px; color:var(--azul); margin-top:6px;}
#noveris-app .section-head p{color:var(--gris-texto); font-size:15.5px; margin-top:14px; max-width:580px;}
#noveris-app .bg-suave{background:var(--gris-fondo);}

/* ---------- TARJETAS DE PROPIEDAD ---------- */
#noveris-app .grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:28px;}
#noveris-app .card-prop{background:#fff; border:1px solid var(--borde); border-radius:var(--r-md); overflow:hidden; display:flex; flex-direction:column; transition:transform .18s ease, box-shadow .2s ease;}
#noveris-app .card-prop:hover{transform:translateY(-4px); box-shadow:var(--sombra);}
#noveris-app .card-prop .foto{height:230px; position:relative;}
#noveris-app .badge{position:absolute; top:14px; left:14px; background:var(--azul); color:#fff; font-size:11px; font-weight:700; padding:6px 12px; letter-spacing:0.4px; border-radius:var(--r-xs);}
#noveris-app .badge.alquiler{background:var(--celeste); color:var(--azul-900);}
#noveris-app .precio-tag{position:absolute; bottom:14px; right:14px; background:#fff; color:var(--azul); font-weight:800; font-size:15px; padding:7px 14px; border-radius:var(--r-xs); box-shadow:var(--sombra-sm);}
#noveris-app .card-body{padding:20px 22px 22px; display:flex; flex-direction:column; gap:8px; flex:1;}
#noveris-app .card-body .zona{display:flex; align-items:center; gap:6px; font-size:12.5px; color:var(--gris-texto); font-weight:600; text-transform:uppercase; letter-spacing:0.3px;}
#noveris-app .card-body .zona svg{width:14px; height:14px; stroke:var(--celeste-700);}
#noveris-app .card-body h3{font-family:'Bebas Neue'; font-size:24px; color:var(--negro); letter-spacing:0.4px; line-height:1.05;}

/* Meta simétrica con iconos */
#noveris-app .meta-row{display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--borde); margin-top:6px;}
#noveris-app .meta-row .meta{display:flex; flex-direction:column; align-items:center; justify-content:center; gap:5px; padding:14px 6px; text-align:center;}
#noveris-app .meta-row .meta + .meta{border-left:1px solid var(--borde);}
#noveris-app .meta-row .meta svg{width:20px; height:20px; stroke:var(--azul); fill:none;}
#noveris-app .meta-row .meta b{font-size:15px; color:var(--negro); font-weight:700; line-height:1;}
#noveris-app .meta-row .meta span{font-size:10.5px; color:var(--gris-texto); text-transform:uppercase; letter-spacing:0.4px;}
#noveris-app .card-body .btn{margin-top:auto;}

/* ---------- NOSOTROS (bloque split) ---------- */
#noveris-app .nosotros{display:grid; grid-template-columns:1fr 1fr; gap:0; align-items:stretch;}
#noveris-app .nosotros .foto-box{min-height:520px; position:relative;}
#noveris-app .nosotros .foto-box::after{content:""; position:absolute; inset:0; background:linear-gradient(0deg, rgba(39,58,97,0.30), transparent 45%);}
#noveris-app .nosotros .texto-box{background:var(--azul); color:#fff; padding:80px 64px; display:flex; flex-direction:column; justify-content:center;}
#noveris-app .nosotros .texto-box .eyebrow{color:var(--celeste);}
#noveris-app .nosotros .texto-box h2{color:#fff; font-size:40px; margin:8px 0 22px;}
#noveris-app .nosotros .texto-box p{color:#DCE6F7; font-size:15.5px; margin-bottom:16px; max-width:460px;}
#noveris-app .nosotros .texto-box .btn{align-self:flex-start; margin-top:10px;}

/* ---------- SERVICIOS / VALORES (grid tarjetas) ---------- */
#noveris-app .grid-4{display:grid; grid-template-columns:repeat(4,1fr); gap:24px;}
#noveris-app .serv-card{padding:32px 26px; border:1px solid var(--borde); border-radius:var(--r-md); background:#fff; border-top:3px solid var(--celeste); transition:transform .18s ease, box-shadow .2s ease;}
#noveris-app .serv-card:hover{transform:translateY(-4px); box-shadow:var(--sombra-sm);}
#noveris-app .serv-icon{width:48px; height:48px; border-radius:50%; background:var(--celeste-050); display:flex; align-items:center; justify-content:center; margin-bottom:20px;}
#noveris-app .serv-icon svg{stroke:var(--azul);}
#noveris-app .serv-card h3{font-family:'Bebas Neue'; font-size:21px; color:var(--azul); letter-spacing:0.4px; margin-bottom:10px;}
#noveris-app .serv-card p{font-size:14px; color:var(--gris-texto);}

/* ---------- STATS ---------- */
#noveris-app .stats{display:grid; grid-template-columns:repeat(4,1fr); gap:24px; text-align:center;}
#noveris-app .stat b{display:block; font-family:'Bebas Neue'; font-size:52px; color:var(--azul); line-height:1;}
#noveris-app .stat span{font-size:13px; color:var(--gris-texto); text-transform:uppercase; letter-spacing:.5px;}

/* ---------- CTA ---------- */
#noveris-app .cta{background:linear-gradient(120deg, var(--azul) 0%, var(--azul-700) 100%); color:#fff; padding:90px 0; position:relative; overflow:hidden;}
#noveris-app .cta::before{content:""; position:absolute; right:-60px; top:-60px; width:320px; height:320px; border-radius:50%; background:rgba(139,196,247,0.14);}
#noveris-app .cta::after{content:""; position:absolute; left:8%; bottom:-120px; width:220px; height:220px; border-radius:50%; background:rgba(139,196,247,0.10);}
#noveris-app .cta-inner{position:relative; max-width:580px;}
#noveris-app .cta h2{font-size:46px; color:#fff; margin-bottom:14px;}
#noveris-app .cta p{font-size:16px; color:#CFE0FA; margin-bottom:30px;}

/* ---------- CONTACTO ---------- */
#noveris-app .contacto-grid{display:grid; grid-template-columns:1fr 1.15fr; gap:64px;}
#noveris-app .info-item{display:flex; gap:16px; margin-bottom:26px;}
#noveris-app .info-item .icon{width:44px; height:44px; border-radius:50%; background:var(--celeste-050); flex:none; display:flex; align-items:center; justify-content:center;}
#noveris-app .info-item .icon svg{stroke:var(--azul);}
#noveris-app .info-item h4{font-size:13px; text-transform:uppercase; letter-spacing:0.4px; color:var(--azul); margin-bottom:3px;}
#noveris-app .info-item p{font-size:14.5px; color:var(--gris-texto);}

/* Iconos de redes */
#noveris-app .redes{display:flex; gap:12px; margin-top:12px;}
#noveris-app .redes a{width:40px; height:40px; border-radius:50%; background:var(--azul); display:flex; align-items:center; justify-content:center; transition:background .18s ease, transform .18s ease;}
#noveris-app .redes a svg{width:18px; height:18px; fill:#fff;}
#noveris-app .redes a:hover{background:var(--celeste); transform:translateY(-2px);}
#noveris-app .redes a:hover svg{fill:var(--azul-900);}

#noveris-app .form-box{background:var(--gris-fondo); border-radius:var(--r-md); padding:40px; border:1px solid var(--borde);}
#noveris-app .form-row{display:flex; gap:16px; margin-bottom:16px;}
#noveris-app .form-box label{display:block; font-size:11.5px; font-weight:700; color:var(--azul); text-transform:uppercase; letter-spacing:0.4px; margin-bottom:7px;}
#noveris-app .form-box input, #noveris-app .form-box textarea, #noveris-app .form-box select{
  width:100%; border:1px solid var(--borde); background:#fff; border-radius:var(--r-sm); padding:12px 14px;
  font-family:'Open Sans'; font-size:14px; outline:none; transition:border-color .15s, box-shadow .15s;
}
#noveris-app .form-box input:focus, #noveris-app .form-box textarea:focus, #noveris-app .form-box select:focus{border-color:var(--celeste); box-shadow:0 0 0 3px rgba(139,196,247,.25);}
#noveris-app .form-box textarea{resize:none; height:120px;}
#noveris-app .field-error{border-color:#E1554F !important;}
#noveris-app .form-msg{margin-top:14px; padding:12px 16px; border-radius:var(--r-sm); font-size:14px; display:none;}
#noveris-app .form-msg.ok{display:block; background:#E7F6EC; color:#1E7A3D; border:1px solid #BBE5C6;}
#noveris-app .form-msg.err{display:block; background:#FBEAE9; color:#B4322B; border:1px solid #F1C9C6;}
#noveris-app .placeholder-note{font-size:11.5px; color:#8892A6; margin-top:10px; font-style:italic;}

#noveris-app .map-box{margin-top:28px; height:300px; border-radius:var(--r-md); overflow:hidden; border:1px solid var(--borde);}
#noveris-app .map-box iframe{width:100%; height:100%; border:0; display:block;}

/* ---------- FOOTER ---------- */
#noveris-app footer{background:var(--azul-900); color:#CBD7EC; padding:64px 0 30px;}
#noveris-app .footer-grid{display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:40px; padding-bottom:44px; border-bottom:1px solid rgba(255,255,255,0.12);}
#noveris-app .footer-logo{display:flex; align-items:center; gap:12px; margin-bottom:14px;}
#noveris-app .footer-logo .logo-mark{color:#fff; height:40px;}      /* marca en blanco sobre navy */
#noveris-app .footer-logo .nombre{color:#fff; font-weight:700; font-size:14px; line-height:1.12;}
#noveris-app .footer-tag{font-family:'Bebas Neue'; font-size:19px; color:var(--celeste); letter-spacing:0.5px; margin-top:4px;}
#noveris-app .footer-col h5{color:#fff; font-size:12.5px; text-transform:uppercase; letter-spacing:0.6px; margin-bottom:18px;}
#noveris-app .footer-col ul{list-style:none;}
#noveris-app .footer-col li{margin-bottom:11px; font-size:13.5px;}
#noveris-app .footer-col a:hover{color:#fff;}
#noveris-app .footer-redes{margin-top:18px;}
#noveris-app .footer-redes a{background:rgba(255,255,255,.10);}
#noveris-app .footer-redes a:hover{background:var(--celeste);}
#noveris-app .footer-bottom{display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap; padding-top:26px; font-size:12.5px; color:#8895AF;}

/* ---------- RESPONSIVE ---------- */
@media(max-width:980px){
  #noveris-app .grid-3, #noveris-app .grid-4, #noveris-app .stats{grid-template-columns:1fr 1fr;}
  #noveris-app .nosotros{grid-template-columns:1fr;}
  #noveris-app .contacto-grid{grid-template-columns:1fr;}
  #noveris-app .footer-grid{grid-template-columns:1fr 1fr;}
  #noveris-app .hero h1{font-size:52px;}
}
@media(max-width:760px){
  #noveris-app .wrap{padding:0 22px;}
  #noveris-app nav.menu{
    position:absolute; top:100%; left:0; right:0; background:#fff; flex-direction:column; gap:0;
    align-items:stretch; border-bottom:1px solid var(--borde); box-shadow:var(--sombra-sm);
    max-height:0; overflow:hidden; transition:max-height .28s ease;
  }
  #noveris-app nav.menu.open{max-height:340px;}
  #noveris-app nav.menu a{padding:15px 22px; border-bottom:1px solid var(--borde);}
  #noveris-app nav.menu a:hover, #noveris-app nav.menu a.active{border-bottom:1px solid var(--borde); background:var(--celeste-050);}
  #noveris-app .menu-toggle{display:block;}
  #noveris-app .nav-cta .btn:not(.menu-toggle){display:none;}
  #noveris-app .search-card{flex-direction:column; align-items:stretch; margin-top:-40px;}
  #noveris-app .search-field{border-right:none; border-bottom:1px solid var(--borde); padding:12px 0;}
  #noveris-app .search-field.last{border-bottom:none;}
  #noveris-app .search-card .btn{margin-left:0; margin-top:8px; width:100%;}
  #noveris-app section{padding:64px 0;}
  #noveris-app .hero h1{font-size:44px;}
  #noveris-app .page-hero h1{font-size:38px;}
  #noveris-app .grid-3,
#noveris-app .grid-4,
#noveris-app .stats,
#noveris-app .footer-grid{grid-template-columns:1fr;}
  #noveris-app .nosotros .texto-box{padding:52px 30px;}
  #noveris-app .form-row{flex-direction:column;}
  #noveris-app .cta h2{font-size:34px;}
}
@media(prefers-reduced-motion:reduce){
  #noveris-app *{transition:none !important; scroll-behavior:auto !important;}
}

/* SPA routing */
#noveris-app .page[hidden]{display:none !important;}



/* ============================================================
   INTEGRACIÓN WORDPRESS
   Todo el diseño vive dentro de #noveris-app para no chocar con el tema.
   ============================================================ */
#noveris-app{display:block; max-width:none; text-align:left; font-size:16px; font-weight:400; letter-spacing:normal; word-spacing:normal; text-transform:none;}
/* Reset de baja especificidad: neutraliza estilos del tema y reproduce los valores por defecto
   del navegador sobre los que se construyó el diseño. Cualquier regla de Noveris lo sobreescribe. */
#noveris-app :where(div,p,span,a,ul,li,label,form,article,section,header,footer,nav,main,b){font-family:inherit; font-size:inherit; line-height:inherit; color:inherit; letter-spacing:inherit; text-transform:inherit; background:none; border:0; box-shadow:none;}
#noveris-app :where(b){font-weight:700;}
#noveris-app :where(h1,h2,h3,h4,h5){font-family:inherit; font-weight:700; color:inherit; line-height:inherit; letter-spacing:inherit; text-transform:none; border:0; background:none;}
#noveris-app :where(h1){font-size:2em;} #noveris-app :where(h2){font-size:1.5em;} #noveris-app :where(h3){font-size:1.17em;}
#noveris-app :where(h4){font-size:1em;} #noveris-app :where(h5){font-size:.83em;}
#noveris-app :where(img){max-width:none; border:0; border-radius:0; box-shadow:none;}
#noveris-app :where(ul){list-style:none;}
#noveris-app :where(a):hover, #noveris-app :where(a):focus{text-decoration:none;}
#noveris-app :where(button){text-transform:none; letter-spacing:normal; min-height:0; width:auto;}
#noveris-app :where(input,select,textarea,option){min-height:0; height:auto; box-shadow:none; margin:0; max-width:none; text-transform:none; letter-spacing:normal; font-weight:400; line-height:normal;}
#noveris-app :where(input,textarea)::placeholder{text-transform:none; letter-spacing:normal;}
/* Ancho completo dentro del contenido del tema ([noveris_web ancho="completo"]) */
#noveris-app.noveris-full{position:relative; width:100vw; max-width:100vw; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw);}
/* Evitar desplazamiento horizontal al insertar Noveris en la plantilla En blanco de WordPress. */
body.noveris-activo.page-template-blank .wp-site-blocks .wp-block-post-content{max-width:none !important; padding-left:0 !important; padding-right:0 !important; margin-left:0 !important; margin-right:0 !important;}
body.noveris-activo.page-template-blank #noveris-app.noveris-full{width:100% !important; max-width:100% !important; margin-left:0 !important; margin-right:0 !important;}
body.noveris-activo{overflow-x:hidden;}
/* Solo para el index.html independiente (en WordPress el <body> lo controla el tema) */
body.noveris-standalone{margin:0; padding:0; background:#FFFFFF;}
/* Header fijo debajo de la barra de administración de WordPress */
.admin-bar #noveris-app header{top:32px;}
@media(max-width:782px){ .admin-bar #noveris-app header{top:46px;} }
@media(max-width:600px){ .admin-bar #noveris-app header{top:0;} }
