* {box-sizing:border-box;}
::placeholder {font-size:12px;}
:disabled {cursor:not-allowed; opacity:0.6; background-color:#e3e3e3;}
:where(input, select, textarea) {font-family:Montserrat, sans-serif; font-size:inherit;}
a, a:visited {color:#03f; cursor:pointer; text-decoration:none;}
a:hover {color:#f30;}
body {font-size:14px;}
body {background-color:#eee; display:flex; flex-direction:column;}
body, h1, h2, h3, h4, h5, h6 {font-family:Montserrat, sans-serif;}
body, h1, h2, h3, h4, h5, h6, p, ul, ol {margin:0;}
button {background-color:#7a5da4; border-radius:8px; border:1px solid #8f8f9d; color:#fff; cursor:pointer; margin:0; min-width:6rem; outline:none; padding:8px;}
button:disabled {background-color:#ff4d66;}
button:hover, button:focus {background-color:#9b50e1;}
fieldset {border:1px solid #007e89; margin-bottom:1rem; padding:8px; width:100%;}
footer a {color:#000; cursor:pointer; font-size:16px; padding:.5em 1em; white-space:nowrap;}
footer a:hover{background-color:#a756f3; color:#fff;}
footer {background-color:#fef5e4; bottom:0; display:flex; justify-content:flex-end; position:sticky;}
h2,h3 {text-align:center;}
header nav a {align-items:center; color:#000; cursor:pointer; display:flex; flex:0 1 auto; font-size:14px; padding:12px; white-space:nowrap;}
header nav a:hover{background-color:#a756f3; color:#fff;}
header nav {background-color:#fef5e4; display:flex;}
header {position:sticky; top:0; z-index:1;}
html {scroll-behavior:smooth; scroll-padding-top:110px;}
html, body {height:100%;}
legend {font-weight:700;}
li {margin-top:1em;}
main {background-color:#eee; flex:auto; margin:0 auto; max-width:1000px;}
p {margin:0 0 1rem 0; text-align:justify;}
section {background-color:#fff; border:0; margin:1em auto; padding:1em;}
table {border-collapse:collapse; border-spacing:0;}
textarea {overflow:hidden; resize:none;}
u {opacity:0.3; text-decoration:none;}

#banner {width:100%;}
.hh {display:none;}
.logo img {max-height:40px;}
.hide {display:none !important;}

/* alert2 */
.al0 {background-color:rgb(0,0,0); background-color:rgba(0,0,0,0.8); opacity:0; height:100%; left:0; overflow:auto; position:fixed; top:0; transition:opacity 400ms ease-in; width:100%; z-index:2;}
.al0 section {background-color:#fafafa; border-radius:3px; display:inline-block; left:50%; margin:0 auto; min-width:20vw; max-width:80vw; padding:2rem; position:relative; transform:translateX(-50%); transition:all 500ms ease-in;}
.al0 nav {margin:1rem 0 0; text-align:center;}
.al0.al1 {opacity:1;}
.al0.al1 section {margin:3rem auto;}

/* pretty forms */
.pf0 :where(.select, input, select, textarea) {border-radius:5px; border:1px solid #8f8f9d; padding:6px 8px;}
.pf0 :where(.select, select) {background:#fff no-repeat calc(100% - 10px) 42% url("data:image/gif;base64,R0lGODlhCwALAJEAAAAAAP///xUVFf///yH5BAEAAAMALAAAAAALAAsAAAIPnI+py+0/hJzz0IruwjsVADs="); padding-right:25px; -moz-appearance:none; -webkit-appearance:none;}
.pf0 button {align-self:end;}
.pf0 h4.c {margin-bottom:1rem;}
.pf0 p {width:100%;}
.pf0 i {font-size:80%;}
.pf0 nav:not(.np1) :where(.select, input, select, textarea, .chosen-container) {margin:20px 4px 22px;} /* Lato 20px | Segoe 22px */
.pf0 nav:not(.np1) label {background-color:#eee; font-size:13px; border-radius:5px 4px 0 0; left:8px; padding:2px 8px; position:absolute; transition:.5s; white-space:nowrap;}
.pf0 nav:not(.np1) {margin:0; padding:0; position:relative; vertical-align:top; /* border:1px dotted red; */}
.pf0 nav.np1{flex-basis:100%;} /* KILL */
.pf0 nav.br {flex-basis:100%;}
.pf0 nav.br textarea {width:calc(100% - 8px);}
.pf0 nav span {font-size:13px; color:gray;}
.pf0 label[title]:after, .he0:after {border-radius:50%; border:1px solid #0080ff; color:#0080ff; content:"?"; display:inline-block; font-weight:700; height:16px; line-height:16px; margin-left:4px; text-align:center; width:16px;}
.pf0 label[title]:hover:after, .he0:hover:after {border-color:#f30; color:#f30; cursor:pointer;}

.pf0 :where(.select, input, select, textarea):focus {border:1px solid #007e89; outline:0;}
.pf0 :where(.select, input, select, textarea) :focus ~ label {background-color:#007e89; color:#fff; border-color:#fff;}
.pf0 nav :focus ~ label {background-color:#007e89; color:#fff; border-color:#fff;}
.pf0 nav :focus ~ label[title]:after {border-color:#fff; color:#fff;}
.pf0 nav :focus ~ label[title] .he0:after {border-color:#fff; color:#fff;}

.fx1 {column-gap:10px; display:flex; flex-wrap:wrap;}
.nv1 {border:1px solid #f00;}

input:where([type=checkbox], [type=radio]) {height:1em; width:1em; float:left; margin-right:5px;}
input:where([type=checkbox], [type=radio]):focus {accent-color:#007e89; outline:1px solid #007e89 !important; outline-offset:2px;}

/*
#007e89 label
#7a5da4 boton
*/