html, body { margin:0; padding:0; color:#000; background-color:#FFF; font-family:sans-serif; font-size:16px; }
input, button, select { font-family:sans-serif; font-size:1.1rem; }
a { color:#2B750C; text-decoration:none; }
a:hover { color:#000; text-decoration:underline; }
header { background-color:#FFF; }
header h2 { font-size:4rem; margin:1rem 0.5rem; display:flex; flex-wrap:wrap; flex-flow:space-between; align-items:center; }
header h2 img { display;block; height:0.5em; flex-grow:0; }
header h2 a { display:block; text-align:center; flex-grow:3; }
header h2 a:hover { text-decoration:none; }
header nav { display:block; position:relative; clear:both; }
header nav input { display:none; }
header nav h3 { padding:0 1em; margin:0; }
header nav ul { display:block; margin:0; padding:0; }
header nav ul li { display:block; margin:0; padding:0; }
header nav > ul li a, header nav > ul li button { display:block;  margin:0; }
header nav > ul > li > a, header nav > ul > li > button { line-height:3rem; padding:0 1em; border:1px solid #000; border-right:none; border-top:none; border-bottom:none; color:#FFFFFF; background-color:#2B750C; text-transform:uppercase; font-size:1rem; }
header nav > ul > li > button { width:100%; }
header nav > ul > li:first-child > a, header nav > ul > li:first-child > button { border-left:none; }
header nav > ul > li > a:hover, header nav > ul > li > button:hover { color:#FFFFFF; text-decoration:none; }
header nav > ul > li.sel > a, header nav > ul > li:hover > a, header nav > ul > li.sel > button, header nav > ul > li:hover > button { background-color:#1B6500; }
header nav > ul > li.sel > a, header nav > ul > li.sel > button { color:#44D; }
header nav > ul ul { padding:0; margin:0; }
header nav > ul li li a { border-top:1px solid #000; padding:0.5rem 1rem; }
header nav > ul li li a:hover, header nav > ul li li.sel a { background-color:#F8F8F8; }

main a { color:#2B750C; }

article { max-width:95%; margin:0 auto -1px auto; padding:1rem 0; }
article > h1 { margin:0 0 1rem 0; padding:0; font-size:2rem; }
article > h2 { font-size:1.8rem; }
article > h3 { font-size:1.5rem; }
article > h4 { font-size:1rem; }
article > h5 { font-size:0.8rem; }

section.withmenu { display:flex; position:relative; padding-top:4.5rem; }
section.withmenu article > h1 { position:absolute; top:0; left:0; right:0; margin:0; padding:1rem 2rem; border-bottom:1px solid #000; }

footer { margin:0 auto; padding:1rem 2rem 1rem 2rem; background-color:#F8F8F8; border-top:1px solid #000; text-align:center; }

fieldset { margin:2rem 0; border:2px solid #000; }
legend { font-weight:bold; font-size:1.5rem; }
.form-standard > :nth-child(even) { background-color:#EEE; }
fieldset.input { display:block; margin:0; padding:1rem 0.5rem 0.5rem 0.5rem; border:none; }
fieldset.input legend { display:block; position:relative; top:1rem; margin:0; padding:0; font-size:1rem; }
.form-control { margin:0; padding:0.5rem; }
.input-input input[type=text], .input-input input[type=password], .input-input input[type=email], .input-input textarea { width:95%; }
input[type=submit], button,select { padding:0.2rem 0.5rem; }
.subform h3 { margin:1em 0 0.5rem 0; font-size:1.2rem; }
.subform h3:first-of-type { margin-top:0; }
h3.input-label { margin:0 0 0.2rem 0; font-size:1rem; }
.alert-danger, .errore, .error { color:red; }
abbr.help img { width:1em; }

.hidden { display:none !important; }

table { margin:1rem 0; paddig:0; border-spacing:0; border-collapse:collapse; border:2px solid #000; }
th, td { padding:0.5em; border:1px solid #000; text-align:left; }
thead th { text-align:center; }
.number { text-align:right; }
.table-search-results tr.sel { background-color:#EEE; }
.table-search-results tr.sel td { font-weight:bold; }

.single-row { display:flex; gap:1rem; }

.forms-list, .reordering-list { display:block; margin:0; padding:0; border:1px solid #888; }
.forms-list li  { display:block; margin:0; padding:1rem; border-top:1px solid #888; list-style-type:none; }
.forms-list li:nth-child(1) { border-top:none; }
.reordering-list li { display:block; margin:0; padding:1rem 4rem 1rem 1rem; background:#F8F8F8 url('../images/icons/reorder.svg') right 1rem center no-repeat; background-size:2rem; border-top:1px solid #888; list-style-type:none; }
.reordering-list li:nth-child(odd) { background-color:#EEE; }
.reordering-list li:nth-child(1) { border-top:none; }
.references-list { display:block; margin:0 0 1rem 0; padding:0; }
.reference-item { display:block; list-style-type:none; margin:0; padding:0; border-bottom:1px solid #CCC; }
.reference-item p { margin:0; padding:0.5rem 0; }
.ref2cols .references-list { column-count:2; column-gap:2rem; }
.ref3cols .references-list { column-count:3; column-gap:2rem; }
.ref4cols .references-list { column-count:4; column-gap:2rem; }

#customers-list, #users-list { margin:1rem; padding:0; border-spacing:0; border-collapse:collapse; }
#customers-list th, #customers-list td, #users-list th, #users-list td { padding:0.5em; border-top:1px solid #000; }

#record-header { display:flex; gap:1rem; margin:1rem 0; padding:0; flex-wrap:wrap; }
#record-header li { display:block; margin:0; padding:0; }
#record-header li h4, #record-header li p { margin:0; }

#navigation-menu { margin:0; padding:0; }
#navigation-menu li { display:block; margin:0; list-style-type:none; }
#navigation-menu > li > ul { margin:0; background-color:#EEE; border:1px solid #000; }

@media screen and (max-width:575px) {
}

@media screen and (min-width:576px) {
}

@media screen and (max-width:767px) {
 header nav h3 img { display:block; width:1rem; margin:0 0 0 auto; }
 header nav { min-height:2rem; }
 #navigation-menu-handler { display:block; }
}

@media screen and (min-width:768px) {
 header { margin-bottom:0; }
 header nav { border-bottom:none; }
 header nav > h3 { display:none; }
 header nav > ul { display:flex; justify-content:center; margin:1rem auto 0 auto; padding:0; height:3rem; line-height:3rem; }
 header nav > ul > li { margin:-1px 0 0 0; flex-grow:1; }
 header nav > ul > li > a, header nav > ul > li > button { text-align:center; }
 article { padding:2rem 0; }
 footer nav { display:flex; justify-content:left; gap:3rem; flex-wrap:wrap; }
 #navigation-menu-handler { display:none; }
 #navigation-menu { display:flex; gap:0; }
 #navigation-menu li { padding:0; }
 #navigation-menu > li { position:relative; z-index:1; line-height:1.5rem; }
 #navigation-menu > li > ul { position:absolute; top:3rem; left:0; border-top:none; }
 #navigation-menu li li { white-space:nowrap; }
}

@media screen and (min-width:992px) {
 .form-flex { display:flex; gap:1rem; }
 .form-with-nav { display:flex; gap:3%; }
 .form-with-nav .input-form { width:73%; }
 .form-with-nav nav { width:23%; }
}

@media screen and (min-width:1200px) {
 section.withmenu article { width:65%; padding-left:1rem; }
 section.withmenu nav { width:32%; padding:2rem 0 2rem 1rem; margin:0 0 0 1rem; border-left:1px solid #888; }
 section.withmenu nav > h2 { margin-top:0; }
 footer nav { max-width:60rem; flex-wrap:nowrap; }
 .ref2cols .references-list { column-count:3; }
 .ref3cols .references-list { column-count:4; }
 .ref4cols .references-list { column-count:5; }
}

@media screen and (min-width:1400px) {
 .ref2cols .references-list { column-count:4; }
 .ref3cols .references-list { column-count:5; }
 .ref4cols .references-list { column-count:6; }
}

@media print {
 header { display:none; }
 footer { display:none; }
}