* {
	box-sizing: border-box;
	font-size: 1em;
	font-family: 'dinregular';
	font-weight: 600;
}
/* estilo menu */

body {margin:0;}

@font-face {
    font-family: 'bebas_neuebold';
    src: url('bebasneue_bold-webfont.woff2') format('woff2'),
         url('bebasneue_bold-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

@font-face {
    font-family: 'dinregular';
    src: url('din-webfont.woff2') format('woff2'),
         url('din-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}

body.swal2-shown > [aria-hidden="true"] {
	transition: 1s filter;
	filter: blur(10px);
  }

#mensajeesquina {
	position:fixed;
	left:0px;
	bottom:0px;
	background-color: #323276;
	font-size: 12px;
	padding: 3px;
	padding-top: 8px;
	color: #FFC50A;
}


.blink_me {
	animation: blinker 1s linear infinite;
  }
  
  @keyframes blinker {
	50% {
	  opacity: 0;
	}
  }

#ventasdistancia {
	max-width:100%;
}

ul.topnav {
  list-style-type: none;
  margin: 0;
  padding: 0;
  overflow: hidden;
  background-color: #323276;
	z-index: 1000;
}

ul.topnav li {float: left;}

ul.topnav li a, .dropbtn{
	font-family: 'bebas_neuebold';
  display: inline-block;
  color: #FFC50A;
  text-align: center;
  padding: 14px 10px;
  text-decoration: none;
  transition: 0.3s;
  font-size: 18px;
	z-index: 1000;
}

ul.topnav li.usuario {
  float:right;
	font-family: 'bebas_neuebold';
  display: inline-block;
  color: #ffffff;
  text-align: center;
  padding: 14px 10px;
  text-decoration: none;
  transition: 0.3s;
  font-size: 18px;
  font-weight: bold;
  background-color: #FFC50A;
}

ul.topnav li.salir {
  float:right;
}

ul.topnav li a:hover, .dropdown:hover .dropbtn {
background-color: #fee999;
}

ul.topnav li.dropdown {
    display: inline-block;
}

ul.topnav li.icon {display: none;}

ul.topnav .dropdown-content {
    display: none;
    position: absolute;
    background-color: #7580a5;
    min-width: 160px;
    box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
		z-index: 1000;
}

ul.topnav .dropdown-content a {
    color: black;
    padding: 12px 16px;
    text-decoration: none;
    display: block;
    text-align: left;
}

ul.topnav .dropdown-content a:hover {background-color: #fedd66}

ul.topnav .dropdown:hover .dropdown-content {
    display: block;
}

@media screen and (max-width:680px) {
  ul.topnav li:not(:first-child) {display: none;}
  ul.topnav li.icon {
    float: right;
    display: inline-block;
  }

	ul.topnav li.usuario {
    float: right;
    display: inline-block;
    background-color: #344aa0;
  }
}

@media screen and (max-width:680px) {
  ul.topnav.responsive {position: relative;}
  ul.topnav.responsive li.icon {
    position: absolute;
    right: 0;
    top: 0;
  }

  ul.topnav.responsive li.usuario {
    position: absolute;
    right: 45px;
    top: 0;
  }

  ul.topnav.responsive li {
    float: none;
    display: inline;
  }

  ul.topnav.responsive li a {
    display: block;
    text-align: left;
  }
}

/* fin estilo menu */

/* estilo productos.php */

.wrapper {
  margin: 0 auto;
  padding: 40px;
}

.logof {
	float: right;
	padding-right: 40px;
	padding-top: 20px;
}

.logof2 {
	float: left;
	padding-left: 40px;
	padding-top: 10px;
	padding-bottom: 10px;
	transition: 3s;
}

.logof2:hover {
	filter: blur(15px);
}

#carrito {
	text-align: center;
}

.carritoagrega {
	font-size:22px;
	text-align: center;
	cursor: pointer;
}

.carritoagrega:hover {
	font-size:32px;
	color:red;
}

.carritodentro {
	font-size: 14px;
}

.alider {
	text-align: right;
}

table {
    border-collapse: collapse;
		margin-top: 60px;
		text-align: left;
	font-family:Arial, Helvetica, sans-serif;
	font-size: 0.875em;
	color: #3b3b3b;
	background: #323276;
	-webkit-font-smoothing: antialiased;
  	font-smoothing: antialiased;
	overflow-x:auto;
}

table, th, td {
		font-family: 'dinregular';
		border: 0px solid #b1b1b1;
	padding: 4px;
}

th {
    height: 30px;
	text-align: center;
	font-family: 'bebas_neuebold';
	font-size: 1.2em;
	background-color: #323276;
	color: #FFC50A;
}

tr:nth-child(odd) {
    background-color: #f6f6f6 !important;
}

tr:nth-child(even) {
    background-color: #e9e9e9 !important;
}

tr:hover td {
	background-color: #fedd66 !important;
}

#preview{
	position:absolute;
	border:1px solid #ccc;
	background:#333;
	padding:5px;
	display:none;
	color:#fff;
	}

/* fin estilo productos.php */

.active {
    background-color: #2ba4cf;}
.login {
	width: 35%;
	height: 100%;
	vertical-align: middle;
	float: left;
	padding: 25px;
	line-height: 1.8;
}

.etiqueta {
	color: #323276;
		font-family: 'bebas_neuebold';
		font-size: 16px;
		line-height: 20px;
    display: block;
    max-width: 635px;
    padding-top: .8em;
	padding-bottom: .0em;
}

.logo {
	padding-top: 1em;
	padding-bottom: 1em;
	text-align: center;
}

@media only screen and (max-width: 800px) {
	.login {
		width: 60%;
	}
}

@media only screen and (max-width: 600px) {
	.foto {
		display: none;
	}

	.login {
		width: 100%;
	}
}

@media print {
	.no-imprimir {
		display:none !important;
		}
  body {
    background-image: none;
  }
	table, th, td {
		font-size: 16px !important;
		padding: 10px;
	  }
	table {
		width: 100% !important;
	}
	tr:nth-child(even) {
    background-color: #ffffff !important;
}
	tr:nth-child(odd) {
	background-color: #ffffff !important;
}
	#firma {
		display: block !important;
		text-align: right;
		margin-right: 90px;
		margin-top: 100px;
	}

}


input[type=text], input[type=password], input[type=number], input[type=email], input[type=date], input[type=time], select {
		font-family: 'dinregular';
		width: 100%;
    padding: 12px 20px;
    margin: 2px 0px 8px 0px;
    display: inline-block;
    border: 0px solid #323276;
    border-radius: 4px;
    box-sizing: border-box;
		height: 45px;
	background-color: #FFC50A;
	font-size: 1.2em;
}


.tituloform {
	display: inline-block;
	width: 60px;
	margin: 0px 0px 0px 10px;
  }

#formpequeno select {
	width: 200px;
}

#formpequeno {
	clear: both;
}

#carrito input[type=number] {
	width: 200px;
}

#carrito tbody {
	font-size: 1.2em;
}



input[type=text].cbarra {
	 width: 100%;
    padding: 5px 10px;
    margin: 8px 0;
    display: inline-block;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-sizing: border-box;
	background-color: #ffffff;
	font-size: 1.0em;
}

input[type=submit] {
    width: 100%;
    background-color: #323276;
    color: white;
    padding: 14px 20px;
    margin: 32px 0;
    border: none;
    border-radius: 4px;
    cursor: pointer;
}

input[type=submit].flotante {
    width: 130px;
		position: fixed;
    background-color: #323276;
    color: white;
    right: 30px;
		bottom: 30px;
    border: none;
    border-radius: 4px;
    cursor: pointer;
}

textarea {
  width: 100%;
    padding: 12px 20px;
    margin: 8px 0;
    display: inline-block;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-sizing: border-box;
	background-color: #faffbd;
	font-size: 0.8em;
}

input[type=submit]:hover {
    background-color: #475587;
}

.error
{
	color:red;
	font-family:Consolas, "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", Monaco, "Courier New", monospace;
	font-size:16px;
}

.realizado
{
	color:green;
	font-family:Consolas, "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", Monaco, "Courier New", monospace;
	font-size:16px;
}


.ingreso {
	background-color: #FFC50A;
}

.logitos {
	position: relative;
    width: 30px;
    height: auto;
    margin-left: 10px;
    top: 8px;
}



.envoltio_home {
	margin: 1.0em;
	padding: 20px ;
	background-color: #7580a5;
	height:87vh;
	background-size: cover;
}

.logoh {
	float: right;
	padding-right: 5px;
	padding-top: 5px;
}

h1 {
	font-size: 2em;
}
h3 {
	font-family: 'dinregular';
	font-size: 1.5em;
}

h4 {
	font-size: 1.0em;
}

.saludo {
	color: #FFC50A;
	font-family: 'dinregular';
}

.cajita {
	font-family: 'dinregular';
	background-color: #FFC50A;
	float: left;
	overflow: auto;
	padding: 0.1em 1.0em;
	margin: 0.1em 1.0em;
	color: #323276;
	z-index: 1;
}

.cajita2 {
	font-family: 'dinregular';
	background-color: #FFC50A;
	float: right;
	overflow: auto;
	padding: 0.1em 1.0em;
	margin: 0.1em 1.0em;
	color: #323276;
}


.firma {
	text-align: right;
}

.cerrar a, .cerrar {
	text-decoration: none;
	color: #000000;
	font-weight: bold;
	position: relative;
	text-align: right;
	margin-right: -3px;
	margin-top: 5px;
  	transition: 0.3s;
	z-index: 2;
}



#filtromarcas {
	width: 25%;
	padding: 8px 4px;
	margin: 18px 10px;
	font-size: 1.0em;
}

#filtroactivo {
	width: 8%;
	padding: 8px 4px;
	margin: 18px 10px 18px 0px;
	font-size: 1.0em;
}

#botonfiltrar {
	width: 25%;
	padding: 10px 4px;
	margin: 15px 0px;
}

#tablastock {
	margin-top: 0px;
}

#wrapperstock {
	padding: 10px 40px;
}

#botoneditar {
	background-color: #FFC50A;
	border: none;
    	color: white;
    	padding: 3px 15px;
    	text-align: center;
    	text-decoration: none;
    	display: inline-block;
	border-radius: 4px;
}

#botoneditar2 {
	float: right;
	background-color: #FFC50A;
	border: none;
    	color: white;
    	padding: 3px 15px;
    	text-align: center;
    	text-decoration: none;
    	display: inline-block;
		font-size: 22px;
	border-radius: 4px;
}

.editcodigo {
	background-color: #FFC50A;
	border: none;
    	color: white;
    	padding: 3px 5px;
    	text-align: center;
    	text-decoration: none;
    	display: inline-block;
	border-radius: 4px;
	cursor:pointer;
}

.editarstock {
	line-height: 1.4;
}

.botonhistorial {
	color: #FFC50A;
	background-color: #323276;
	padding: 12px 15px;
	margin-left: 15px;
	cursor: pointer;
	transition: 0.3s;
}

.botonhistorial:hover {
	color: #323276;
	background-color: #FFC50A;
}

.botonproducto {
	display:inline-block;
	color: #FFC50A;
	background-color: #323276;
	margin-top:10px;
	padding: 12px 15px;
	cursor: pointer;
	transition: 0.3s;
	text-decoration: none;
}

.botonproducto:hover {
	color: #323276;
	background-color: #FFC50A;
}

.apretable {
		cursor: pointer;
		transition: 0.3s;
		text-decoration: none;
	}
	
.apretable:hover {
	font-weight: bold;
}

.tablapop {
	width: 100%;
	margin-top: 0px;
	text-align: center;
}

#textodestacado {
	color: #0b6180;
	font-weight: bold;
	font-size: 1.2em;
}

input[type=radio] {
	cursor: pointer;
	position: relative;
	top: 10px;
	left: 0px;
	width: 30px;
	margin-right: 5px;
	height: 30px;
	border-radius: 4px;
}

input[type=radio].maschico {
	cursor: pointer;
	position: relative;
	top: 5px;
	left: 0px;
	width: 25px;
	margin-right: 5px;
	height: 25px;
	border-radius: 4px;
}



input[type=checkbox] {
	cursor: pointer;
	position: relative;
	top: 10px;
	left: 0px;
	width: 30px;
	margin-right: 5px;
	height: 30px;
	border-radius: 4px;
}

input[type=checkbox].maschico {
	cursor: pointer;
	position: relative;
	top: 5px;
	left: 0px;
	width: 25px;
	margin-right: 5px;
	height: 25px;
	border-radius: 4px;
}


.cajasprecios {
	float: left;
	width: 50%;
}

.cajasprecios2 {
	float: left;
	width: 37%;
}

.cajas200 {
	width: 33%;
	float: left;
	padding-right: 10px;
	padding-left: 10px;
}

.cajaetiquetas {
	float: right;
	width: 22%;
}


#botoncito {
	position: absolute;
	margin: 0px 0px;
	margin-top: 3px;
	margin-left: 3px;
	padding: 0px 0px;
}



.barra {
	height: 10px;
    width: 100%;
    border: 1px solid #323276;
    border-radius: 5px;
    background-color: #323276;
    margin-bottom: 15px;
}

.relleno {
	height: 100%;
	width: 1px;
    background: #FFC50A;
    display: flex;
    align-items: center;
    animation: prog 2s linear;
    border-radius: 5px;
}

@keyframes prog {
	0% {width: 0%}
  }


/* For mobile phones: */

[class*="col-"] {
    width: 100%;
}

@media only screen and (min-width: 768px) {

	.columnas {
		display: flex;
	}

    /* For desktop: */
    .col-1 {width: 8.33%;}
    .col-2 {width: 16.66%;}
    .col-3 {width: 25%;}
    .col-4 {width: 33.33%;}
    .col-5 {width: 41.66%;}
    .col-6 {width: 50%;}
    .col-7 {width: 58.33%;}
    .col-8 {width: 66.66%;}
    .col-9 {width: 75%;}
    .col-10 {width: 83.33%;}
    .col-11 {width: 91.66%;}
    .col-12 {width: 100%;}
}


@media only screen and (max-width: 767px) {
	.saludo {float:left; clear: right;}

}





.cajita.oculta {
	display: none;
}

.titulo {
	font-size: 15px;
	color: #323276;
	padding: 10px;
	float: left;
}

.titulo2 {
	font-size: 1.5em;
	color: #323276;
}

div.dataTables_wrapper div.dataTables_filter label {
	font-family: 'bebas_neuebold';
	color: #323276;
}

div.dataTables_wrapper div.dataTables_filter input {
	font-family: 'dinregular';
	border-radius: 4px;
	background-color: #FFC50A;
	font-size: 1.0em;
	box-sizing: border-box;
	border: 0px;
	line-height: 15px;
}

dataTables_info {
	color: #ffffff;
}


#pmanager {
	margin-top: 10px;
}

/* Renovación visual 2026 -------------------------------------------------- */
:root {
	--apertura-blue: #078bc3;
	--apertura-blue-dark: #056d99;
	--apertura-blue-soft: #e8f5fb;
	--apertura-ink: #173042;
	--apertura-muted: #687985;
	--apertura-surface: #ffffff;
	--apertura-bg: #f2f7f9;
	--apertura-line: #d9e5ea;
	--apertura-accent: #ffc928;
	--apertura-shadow: 0 12px 34px rgba(23, 48, 66, .09);
}

html { background: var(--apertura-bg); }
body {
	background: var(--apertura-bg);
	color: var(--apertura-ink);
	min-height: 100vh;
}

.site-nav {
	position: sticky;
	top: 0;
	z-index: 1000;
	display: flex;
	align-items: stretch;
	min-height: 64px;
	background: rgba(255,255,255,.97);
	border-bottom: 1px solid var(--apertura-line);
	box-shadow: 0 5px 22px rgba(23,48,66,.08);
	backdrop-filter: blur(12px);
}

.nav-brand {
	display: flex;
	align-items: center;
	padding: 11px 18px;
	background: var(--apertura-blue);
}

.nav-brand img { display: block; width: 145px; height: auto; }

ul.topnav {
	display: flex;
	align-items: stretch;
	flex: 1;
	margin: 0;
	padding: 0 10px;
	overflow: visible;
	background: transparent;
}

ul.topnav li { float: none; display: flex; align-items: stretch; }
ul.topnav li.nav-spacer { flex: 1; }

ul.topnav li a,
ul.topnav .dropbtn {
	display: flex;
	align-items: center;
	padding: 0 10px;
	color: var(--apertura-ink);
	font-family: 'dinregular', Arial, sans-serif;
	font-size: 14px;
	font-weight: 700;
	text-transform: none;
	white-space: nowrap;
	border-bottom: 3px solid transparent;
}

ul.topnav li a:hover,
ul.topnav .dropdown:hover .dropbtn,
ul.topnav li a.current {
	color: var(--apertura-blue-dark);
	background: var(--apertura-blue-soft);
	border-bottom-color: var(--apertura-blue);
}

ul.topnav li.dropdown { display: flex; position: relative; }
ul.topnav .dropdown-content {
	top: calc(100% - 1px);
	left: 0;
	min-width: 225px;
	padding: 8px;
	background: var(--apertura-surface);
	border: 1px solid var(--apertura-line);
	border-radius: 0 0 12px 12px;
	box-shadow: var(--apertura-shadow);
}

ul.topnav .dropdown-content a {
	padding: 10px 12px;
	color: var(--apertura-ink);
	border: 0;
	border-radius: 7px;
}

ul.topnav .dropdown-content a:hover {
	color: var(--apertura-blue-dark);
	background: var(--apertura-blue-soft);
}

ul.topnav li.usuario {
	float: none;
	display: flex;
	align-items: center;
	margin: 11px 4px 11px 10px;
	padding: 0 12px;
	color: var(--apertura-blue-dark);
	background: var(--apertura-blue-soft);
	border-radius: 99px;
	font-family: 'dinregular', Arial, sans-serif;
	font-size: 14px;
}

ul.topnav li.salir { float: none; }
ul.topnav li.salir a { color: #a33d3d; }
.nav-toggle { display: none; border: 0; background: transparent; color: var(--apertura-blue-dark); padding: 0 18px; font-size: 23px; cursor: pointer; }
.nav-toggle span { margin-left: 7px; font-size: 14px; }

#version {
	position: fixed;
	right: 8px;
	bottom: 5px;
	z-index: 1100;
	color: var(--apertura-muted);
	font-size: 9px;
}

.wrapper {
	width: min(1500px, calc(100% - 32px));
	margin: 24px auto;
	padding: clamp(18px, 3vw, 36px);
	background: var(--apertura-surface);
	border: 1px solid var(--apertura-line);
	border-radius: 16px;
	box-shadow: var(--apertura-shadow);
}

h1, h2, h3, h4 { color: var(--apertura-ink); }
h1 { letter-spacing: -.02em; }

table {
	margin-top: 24px;
	color: var(--apertura-ink);
	background: var(--apertura-surface);
	border-radius: 10px;
	overflow: hidden;
}

table, th, td { border-color: var(--apertura-line); }
th {
	height: 42px;
	padding: 9px 7px;
	background: var(--apertura-blue-dark);
	color: #fff;
	font-family: 'dinregular', Arial, sans-serif;
	font-size: .9em;
	letter-spacing: .025em;
}
tr:nth-child(odd) { background-color: #fff !important; }
tr:nth-child(even) { background-color: #f4f8fa !important; }
tr:hover td { background-color: #e3f3fa !important; }

input[type=text], input[type=password], input[type=number], input[type=email], input[type=date], input[type=time], select, textarea {
	color: var(--apertura-ink);
	background: #fff;
	border: 1px solid #bfcfd7;
	border-radius: 8px;
	box-shadow: inset 0 1px 2px rgba(23,48,66,.04);
}

input:focus, select:focus, textarea:focus {
	outline: 3px solid rgba(7,139,195,.16);
	border-color: var(--apertura-blue);
}

input[type=submit], #botoneditar, #botoneditar2, .botonproducto, .botonhistorial, .editcodigo {
	background: var(--apertura-blue);
	color: #fff;
	border-radius: 8px;
	box-shadow: 0 4px 12px rgba(7,139,195,.18);
}
input[type=submit]:hover, #botoneditar:hover, #botoneditar2:hover, .botonproducto:hover, .botonhistorial:hover, .editcodigo:hover {
	background: var(--apertura-blue-dark);
	color: #fff;
}

.envoltio_home {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 26px;
	min-height: calc(100vh - 64px);
	margin: 0;
	padding: 32px;
	background: radial-gradient(circle at 75% 20%, #dff3fb 0, transparent 36%), linear-gradient(145deg, #f7fbfd, #e9f3f7);
}

.home-bienvenida {
	width: min(720px, 100%);
	padding: clamp(38px, 8vw, 76px);
	text-align: center;
	background: rgba(255,255,255,.92);
	border: 1px solid rgba(7,139,195,.18);
	border-radius: 26px;
	box-shadow: 0 24px 65px rgba(23,48,66,.12);
}

.home-logo { width: min(390px, 90%); height: auto; }
.home-etiqueta { margin: 30px 0 4px; color: var(--apertura-blue-dark); font-size: 13px; letter-spacing: .16em; text-transform: uppercase; }
.saludo { margin: 4px 0 0; color: var(--apertura-ink); font-size: clamp(30px, 5vw, 48px); font-weight: 600; }

.home-recursos {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(290px, .65fr);
	gap: 22px;
	width: min(1120px, 100%);
}

.home-prioridades,
.home-accesos {
	padding: clamp(22px, 3vw, 32px);
	background: rgba(255,255,255,.94);
	border: 1px solid var(--apertura-line);
	border-radius: 18px;
	box-shadow: var(--apertura-shadow);
}

.home-prioridades h2,
.home-accesos h2 { margin: 0 0 18px; font-size: 23px; }
.home-prioridades ol { margin: 0; padding-left: 27px; columns: 2; column-gap: 42px; }
.home-prioridades li { break-inside: avoid; margin: 0 0 10px; padding-left: 5px; color: #405563; font-weight: 500; }
.home-prioridades li::marker { color: var(--apertura-blue); font-weight: 800; }

.home-acceso {
	display: flex;
	justify-content: space-between;
	gap: 18px;
	margin-bottom: 10px;
	padding: 14px 15px;
	color: var(--apertura-ink);
	text-decoration: none;
	background: var(--apertura-blue-soft);
	border: 1px solid #cce8f4;
	border-radius: 10px;
	transition: transform .16s ease, border-color .16s ease;
}
.home-acceso:hover { transform: translateY(-2px); border-color: var(--apertura-blue); }
.home-acceso span { color: var(--apertura-blue-dark); white-space: nowrap; }
.home-recursos > .home-accesos:only-child {
	grid-column: 1 / -1;
	justify-self: center;
	width: min(620px, 100%);
}
.home-horarios { margin-top: 18px; }
.home-horarios h3 { margin: 0 0 10px; font-size: 18px; }
.home-horarios img { display: block; width: 100%; height: auto; border-radius: 10px; }

div.dataTables_wrapper div.dataTables_filter label { color: var(--apertura-ink); }
div.dataTables_wrapper div.dataTables_filter input { background: #fff; border: 1px solid #bfcfd7; }

@media screen and (max-width: 1100px) {
	.site-nav { flex-wrap: wrap; justify-content: space-between; }
	.nav-toggle { display: block; }
	ul.topnav { display: none; flex: 0 0 100%; padding: 8px; border-top: 1px solid var(--apertura-line); }
	ul.topnav.responsive { display: block; position: static; }
	ul.topnav.responsive li, ul.topnav.responsive li.usuario, ul.topnav.responsive li.salir { display: block; position: static; margin: 0; padding: 0; }
	ul.topnav.responsive li.nav-spacer { display: none; }
	ul.topnav.responsive li a, ul.topnav.responsive .dropbtn { display: block; padding: 11px 12px; text-align: left; border: 0; border-radius: 7px; }
	ul.topnav.responsive .dropdown-content { position: static; display: none; margin: 0 8px 7px; border-radius: 8px; box-shadow: none; }
	ul.topnav.responsive .dropdown:hover .dropdown-content,
	ul.topnav.responsive .dropdown:focus-within .dropdown-content { display: block; }
	ul.topnav.responsive li.usuario span { display: block; padding: 10px 12px; color: var(--apertura-blue-dark); }
	.home-recursos { grid-template-columns: 1fr; }
}

@media screen and (max-width: 600px) {
	.nav-brand img { width: 126px; }
	.wrapper { width: calc(100% - 16px); margin: 10px auto; padding: 14px; border-radius: 11px; }
	.envoltio_home { padding: 16px; }
	.home-bienvenida { padding: 35px 20px; border-radius: 18px; }
	.home-prioridades ol { columns: 1; }
	.home-acceso { flex-direction: column; gap: 3px; }
}

/* Acceso 2026: formulario a la izquierda y video a la derecha. */
body.login-page { overflow: hidden; background: #fff; }
.login-layout { display: flex; width: 100%; min-height: 100vh; }
.login-page .login {
	display: flex;
	flex: 0 0 36%;
	flex-direction: column;
	justify-content: center;
	width: auto;
	height: 100vh;
	padding: clamp(32px, 5vw, 78px);
	line-height: 1.5;
	background: #fff;
	box-shadow: 12px 0 40px rgba(23,48,66,.14);
	z-index: 2;
}
.login-page .logo { padding: 0 0 36px; text-align: left; }
.login-page .logo img { display: block; width: min(330px, 100%); height: auto; }
.login-kicker { margin: 0 0 5px; color: var(--apertura-blue-dark); font-size: 12px; letter-spacing: .15em; text-transform: uppercase; }
.login-page h1 { margin: 0; font-size: clamp(34px, 4vw, 48px); }
.login-intro { margin: 8px 0 25px; color: var(--apertura-muted); font-weight: 500; }
.login-page .etiqueta { margin-bottom: 5px; padding: 0; color: var(--apertura-ink); font-family: 'dinregular', Arial, sans-serif; font-size: 14px; }
.login-page input[type=text],
.login-page input[type=password] { height: 50px; margin-bottom: 16px; background: #f8fbfc; }
.login-page input[type=submit] { height: 50px; margin: 12px 0 0; background: var(--apertura-blue); font-size: 17px; font-weight: 700; box-shadow: 0 8px 22px rgba(7,139,195,.24); }
.login-page input[type=submit]:hover { background: var(--apertura-blue-dark); }
.login-page .error { margin-bottom: 8px; color: #a33d3d; }
.login-page .video { position: relative; flex: 1 1 64%; width: auto; height: 100vh; float: none; overflow: hidden; background: var(--apertura-blue-dark); }
.login-page .video::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(5,109,153,.20), transparent 45%); pointer-events: none; }
.login-page #myVideo { display: block; width: 100%; height: 100%; min-width: 0; min-height: 0; object-fit: cover; }

@media screen and (max-width: 850px) {
	.login-page .login { flex-basis: 48%; padding: 32px; }
	.login-page .video { flex-basis: 52%; }
}

@media screen and (max-width: 620px) {
	body.login-page { overflow: auto; }
	.login-layout { position: relative; display: block; }
	.login-page .login { position: relative; width: calc(100% - 28px); height: auto; min-height: calc(100vh - 28px); margin: 14px; padding: 32px 24px; border-radius: 18px; background: rgba(255,255,255,.95); }
	.login-page .video { position: fixed; inset: 0; width: 100%; height: 100vh; }
	.login-page .video::after { background: rgba(5,109,153,.46); }
	.login-page .logo img { width: min(280px, 100%); }
}
