@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');

html,
body {
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

body {
  font-family: 'Inter', sans-serif !important;
  color: #334155 !important;
  background-color: #636363;
  background-image: url('../images/page_t.jpg');
  background-repeat: repeat;
  background-attachment: scroll;
  background-position: top left;
  display: flex !important;
  flex-direction: column !important;
  line-height: 1.8 !important;
}

#art-main {
  flex: 1 0 auto !important;
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
}

.art-sheet {
  flex: 1 0 auto !important;
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
}

.art-sheet-body {
  flex: 1 0 auto !important;
  display: flex !important;
  flex-direction: column !important;
  padding: 0 !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a h1 a:hover,
h2 a:hover,
h3 a:hover,
h4 a:hover,
h5 a:hover,
h6 a:hover h1 a:visited,
h2 a:visited,
h3 a:visited,
h4 a:visited,
h5 a:visited,
h6 a:visited,
.art-postheader,
.art-postheader a,
.art-postheader a:link,
.art-postheader a:visited,
.art-postheader a:hover,
.art-blockheader .t,
.art-vmenublockheader .t,
.art-logo-text,
.art-logo-text a,
h1.art-logo-name,
h1.art-logo-name a,
h1.art-logo-name a:link,
h1.art-logo-name a:visited,
h1.art-logo-name a:hover {
  text-decoration: none;
  font-family: 'Inter', sans-serif;
  font-style: normal;
  font-weight: 700;
  font-size: 28px;
  text-align: left;
}

a,
.art-post li a {
  text-decoration: underline;
  color: #0ea5e9;
}

a:link,
.art-post li a:link {
  text-decoration: underline;
  color: #0ea5e9;
}

a:visited,
a.visited,
.art-post li a:visited,
.art-post li a.visited {

  color: #0ea5e9;
}

a:hover,
a.hover,
.art-post li a:hover,
.art-post li a.hover {

  text-decoration: none;
  color: #1C1C1C;
}

h1,
h1 a,
h1 a:link,
h1 a:visited,
h1 a:hover {
  margin: 0.67em 0;
  font-size: 16px;
  color: #0ea5e9;
}

h2,
h2 a,
h2 a:link,
h2 a:visited,
h2 a:hover {
  margin: 0.8em 0;
  font-size: 16px;
  color: #0ea5e9;
}

h3,
h3 a,
h3 a:link,
h3 a:visited,
h3 a:hover {
  margin: 1em 0;
  font-size: 16px;
  color: #707070;
}

h4,
h4 a,
h4 a:link,
h4 a:visited,
h4 a:hover {
  margin: 1.25em 0;
  font-size: 16px;
  color: #0f172a;
}

h5,
h5 a,
h5 a:link,
h5 a:visited,
h5 a:hover {
  margin: 1.67em 0;
  font-size: 14px;
  color: #0f172a;
}

h6,
h6 a,
h6 a:link,
h6 a:visited,
h6 a:hover {
  margin: 2.33em 0;
  font-size: 14px;
  color: #0f172a;
}

h1 a,
h1 a:link,
h1 a:visited,
h1 a:hover,
h2 a,
h2 a:link,
h2 a:visited,
h2 a:hover,
h3 a,
h3 a:link,
h3 a:visited,
h3 a:hover,
h4 a,
h4 a:link,
h4 a:visited,
h4 a:hover,
h5 a,
h5 a:link,
h5 a:visited,
h5 a:hover,
h6 a,
h6 a:link,
h6 a:visited,
h6 a:hover {
  margin: 0;
}

#art-main {
  position: relative;
  width: 100%;
  left: 0;
  top: 0;
  cursor: default;
}


#art-page-background-gradient {
  position: absolute;
  background-image: url('../images/page_g.jpg');
  background-repeat: repeat-x;
  top: 0;
  width: 100%;
  height: 900px;

}

#art-page-background-gradient {
  background-position: top left;
}


.cleared {
  float: none;
  clear: both;
  margin: 0;
  padding: 0;
  border: none;
  font-size: 1px;
}

form {
  padding: 0 !important;
  margin: 0 !important;
}

table.position {
  position: relative;
  width: 100%;
  table-layout: fixed;
}

/* end Page */

/* begin Box, Sheet */
.art-sheet {
  position: relative;
  z-index: 0;
  margin: 0 auto;
  width: 900px;
  min-width: 1px;
  min-height: 1px;
}

.art-sheet-body {
  position: relative;
  z-index: 1;
  padding: 0;
}

.art-sheet-cc {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #F5F5F5;
}

.art-sheet {
  margin-top: 20px !important;
  cursor: auto;
}

#art-page-background-simple-gradient,
#art-page-background-gradient,
#art-page-background-glare {
  min-width: 900px;
}

/* end Box, Sheet */

/* begin Header */
div.art-header {
  margin: 0 auto;
  position: relative;
  z-index: 0;
  width: 900px;
  height: 100px;
  overflow: hidden;
}


div.art-header-jpeg {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 900px;
  height: 100px;
  background-image: url('../images/header.jpg');
  background-repeat: no-repeat;
  background-position: center center;
}

/* end Header */

.company-logo {
  position: absolute;
  top: 20px;
  left: 20px;
  height: 120px;
  z-index: 1;
}


/* begin Menu */
/* menu structure */

.art-menu a,
.art-menu a:link,
.art-menu a:visited,
.art-menu a:hover {
  text-align: left;
  text-decoration: none;
  outline: none;
  letter-spacing: normal;
  word-spacing: normal;
}

.art-menu,
.art-menu ul {
  margin: 0;
  padding: 0;
  border: 0;
  list-style-type: none;
  display: block;
}

.art-menu li {
  white-space: nowrap;
  margin: 0;
  padding: 0;
  border: 0;
  display: block;
  float: left;
  position: relative;
  z-index: 5;
  background: none;
}

.art-menu li:hover {
  z-index: 10000;
  white-space: normal;
}

.art-menu li li {
  float: none;
}

.art-menu ul {
  visibility: hidden;
  position: absolute;
  z-index: 10;
  left: 0;
  top: 0;
  background: none;
}

.art-menu li:hover>ul {
  visibility: visible;
  top: 100%;
}

.art-menu li li:hover>ul {
  top: 0;
  left: 100%;
}

.art-menu:after,
.art-menu ul:after {
  content: ".";
  height: 0;
  display: block;
  visibility: hidden;
  overflow: hidden;
  clear: both;
}

.art-menu,
.art-menu ul {
  min-height: 0;
}

.art-menu ul {
  background-image: url(../images/spacer.gif);
  padding: 10px 30px 30px 30px;
  margin: -10px 0 0 -30px;
}

.art-menu ul ul {
  padding: 30px 30px 30px 10px;
  margin: -30px 0 0 -10px;
}




div.art-nav-center {
  display: flex;
  justify-content: center;
  width: 100%;
}

ul.art-menu {
  display: flex;
  flex-wrap: wrap;
  /* Allows safe wrapping if screen is incredibly small, but items won't break internally */
  justify-content: center;
}

.firefox2 ul.art-menu {
  float: none;
}


/* menu structure */

.art-menu {
  padding: 0 0 0 0;
}

.art-nav {
  position: relative;
  height: 25px;
  z-index: 100;
}

.art-nav .l,
.art-nav .r {
  position: absolute;
  z-index: -1;
  top: 0;
  height: 25px;
  background-image: url('../images/nav.png');
}

.art-nav .l {
  left: 0;
  right: 0;
}

.art-nav .r {
  right: 0;
  width: 900px;
  clip: rect(auto, auto, auto, 900px);
}


/* end Menu */

/* begin MenuItem */
.art-menu a {
  position: relative;
  display: block;
  overflow: hidden;
  height: 25px;
  cursor: pointer;
  text-decoration: none;
}

.art-menu ul li {
  margin: 0;
  clear: both;
}


.art-menu a .r,
.art-menu a .l {
  position: absolute;
  display: block;
  top: 0;
  z-index: -1;
  height: 75px;
  background-image: url('../images/menuitem.png');
}

.art-menu a .l {
  left: 0;
  right: 0;
}

.art-menu a .r {
  width: 400px;
  right: 0;
  clip: rect(auto, auto, auto, 400px);
}

.art-menu a .t {
  white-space: nowrap;
  margin-right: 10px;
  margin-left: 10px;
  color: #FFFFFF;
  padding: 0 12px;
  margin: 0 0;
  line-height: 25px;
  text-align: center;
}

.art-menu a:hover .l,
.art-menu a:hover .r {
  top: -25px;
}

.art-menu li:hover>a .l,
.art-menu li:hover>a .r {
  top: -25px;
}

.art-menu li:hover a .l,
.art-menu li:hover a .r {
  top: -25px;
}

.art-menu a:hover .t {
  color: #FCFCFC;
}

.art-menu li:hover a .t {
  color: #FCFCFC;
}

.art-menu li:hover>a .t {
  color: #FCFCFC;
}


.art-menu a.active .l,
.art-menu a.active .r {
  top: -50px;
}

.art-menu a.active .t {
  color: #FFFFFF;
}

/* end MenuItem */

/* begin MenuSeparator */


.art-menu .art-menu-li-separator {
  display: block;
  width: 0;
  height: 25px;
}

/* end MenuSeparator */

/* begin MenuSubItem */
.art-menu ul a {
  display: block;
  text-align: center;
  white-space: nowrap;
  height: 20px;
  width: 180px;
  overflow: hidden;
  line-height: 20px;
  background-image: url('../images/subitem.png');
  background-position: left top;
  background-repeat: repeat-x;
  border-width: 1px;
  border-style: solid;
  border-color: #F5F5F5;
}

.art-nav ul.art-menu ul span,
.art-nav ul.art-menu ul span span {
  display: inline;
  float: none;
  margin: inherit;
  padding: inherit;
  background-image: none;
  text-align: inherit;
  text-decoration: inherit;
}

.art-menu ul a,
.art-menu ul a:link,
.art-menu ul a:visited,
.art-menu ul a:hover,
.art-menu ul a:active,
.art-nav ul.art-menu ul span,
.art-nav ul.art-menu ul span span {
  text-align: left;
  text-indent: 12px;
  text-decoration: none;
  line-height: 20px;
  color: #424242;
  margin-right: 10px;
  margin-left: 10px;
  margin: 0;
  padding: 0;
}

.art-menu ul li a:hover {
  color: #FCFCFC;
  border-color: #F5F5F5;
  background-position: 0 -20px;
}

.art-menu ul li:hover>a {
  color: #FCFCFC;
  border-color: #F5F5F5;
  background-position: 0 -20px;
}

.art-nav .art-menu ul li a:hover span,
.art-nav .art-menu ul li a:hover span span {
  color: #FCFCFC;
}

.art-nav .art-menu ul li:hover>a span,
.art-nav .art-menu ul li:hover>a span span {
  color: #FCFCFC;
}


/* end MenuSubItem */

/* begin Layout */
.art-content-layout {
  display: flex !important;
  flex-direction: column !important;
  padding: 0;
  border: none;
  width: 100% !important;
}

.art-content-layout .art-content-layout {
  width: auto;
  margin: 0;
}

div.art-content-layout div.art-layout-cell,
div.art-content-layout div.art-layout-cell div.art-content-layout div.art-layout-cell {
  display: block;
}

div.art-layout-cell div.art-layout-cell {
  display: block;
}

div.art-content-layout-row {
  display: flex !important;
  width: 100% !important;
}

.art-content-layout {
  border-collapse: collapse;
  background-color: Transparent;
  border: none !important;
  padding: 0 !important;
}

.art-layout-cell,
.art-content-layout-row {
  background-color: Transparent;
  vertical-align: top;
  text-align: left;
  border: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* end Layout */

/* begin Box, Block, VMenuBlock */
.art-vmenublock {
  position: relative;
  z-index: 0;
  margin: 0 auto;
  min-width: 1px;
  min-height: 1px;
}

.art-vmenublock-body {
  position: relative;
  z-index: 1;
  padding: 0;
}

.art-vmenublock-cc {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #FFFFFF;
}

.art-vmenublock {
  margin: 7px;
}

/* end Box, Block, VMenuBlock */

/* begin Box, Box, VMenuBlockContent */
.art-vmenublockcontent {
  position: relative;
  z-index: 0;
  margin: 0 auto;
  min-width: 1px;
  min-height: 1px;
}

.art-vmenublockcontent-body {
  position: relative;
  z-index: 1;
  padding: 5px;
}

.art-vmenublockcontent-cc {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #FFFFFF;
}

.art-vmenublockcontent {
  position: relative;
  z-index: 0;
  margin: 0 auto;
  min-width: 1px;
  min-height: 1px;
}

.art-vmenublockcontent-body {
  position: relative;
  z-index: 1;
  padding: 5px;
}

.art-vmenublockcontent-cc {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #FFFFFF;
}

/* end Box, Box, VMenuBlockContent */

/* begin Box, Block */
.art-block {
  position: relative;
  z-index: 0;
  margin: 0 auto;
  min-width: 1px;
  min-height: 1px;
}

.art-block-body {
  position: relative;
  z-index: 1;
  padding: 0;
}


.art-block {
  margin: 7px;
}

/* end Box, Block */

/* begin BlockHeader */
.art-blockheader {
  position: relative;
  z-index: 0;
  height: 31px;
  margin-bottom: 0;
}

.art-blockheader .t {
  height: 31px;
  color: #000000;
  margin-right: 10px;
  margin-left: 10px;
  font-family: Tahoma, Arial, Helvetica, Sans-Serif;
  font-size: 11px;
  margin: 0;
  padding: 0 10px 0 10px;
  white-space: nowrap;
  line-height: 31px;
}

/* end BlockHeader */

/* begin Box, BlockContent */
.art-blockcontent {
  position: relative;
  z-index: 0;
  margin: 0 auto;
  min-width: 1px;
  min-height: 1px;
}

.art-blockcontent-body {
  position: relative;
  z-index: 1;
  padding: 10px;
}


.art-blockcontent-body,
.art-blockcontent-body a,
.art-blockcontent-body li a {
  color: #3B3B3B;

}

.art-blockcontent-body a,
.art-blockcontent-body li a {
  color: #0ea5e9;
  text-decoration: none;
}

.art-blockcontent-body a:link,
.art-blockcontent-body li a:link {
  color: #0ea5e9;
  text-decoration: none;
}

.art-blockcontent-body a:visited,
.art-blockcontent-body a.visited,
.art-blockcontent-body li a:visited,
.art-blockcontent-body li a.visited {
  color: #0ea5e9;

}

.art-blockcontent-body a:hover,
.art-blockcontent-body a.hover,
.art-blockcontent-body li a:hover,
.art-blockcontent-body li a.hover {
  color: #1C1C1C;


}

.art-blockcontent-body ul {
  list-style-type: none;
  color: #4C2601;
  margin: 0;
  padding: 0;
}

.art-blockcontent-body ul li {
  font-size: 12px;
  text-decoration: none;
  line-height: 1.25em;
  padding: 0 0 0 11px;
  background-image: url('../images/blockcontentbullets.png');
  background-repeat: no-repeat;
}


/* end Box, BlockContent */

/* begin Button */
.art-button-wrapper .art-button {
  font-family: Tahoma, Arial, Helvetica, Sans-Serif;
  font-style: normal;
  font-weight: normal;
  font-size: 11px;
  display: inline-block;
  vertical-align: middle;
  white-space: nowrap;
  text-align: left;
  text-decoration: none !important;
  color: #000000 !important;
  width: auto;
  outline: none;
  border: none;
  background: none;
  line-height: 25px;
  height: 25px;
  margin: 0 !important;
  padding: 0 9px !important;
  overflow: visible;
  cursor: default;
  z-index: 0;
}

.art-button img,
.art-button-wrapper img {
  margin: 0;
  vertical-align: middle;
}

.art-button-wrapper {
  vertical-align: middle;
  display: inline-block;
  position: relative;
  height: 25px;
  overflow: hidden;
  white-space: nowrap;
  width: auto;
  margin: 0;
  padding: 0;
  z-index: 0;
}

.firefox2 .art-button-wrapper {
  display: block;
  float: left;
}

input,
select,
textarea,
select {
  vertical-align: middle;
  font-family: Tahoma, Arial, Helvetica, Sans-Serif;
  font-style: normal;
  font-weight: normal;
  font-size: 11px;
}

.art-block select {
  width: 96%;
}

.art-button-wrapper.hover .art-button,
.art-button:hover {
  color: #FFFFFF !important;
  text-decoration: none !important;
}

.art-button-wrapper.active .art-button {
  color: #F0F0F0 !important;
}

.art-button-wrapper .l,
.art-button-wrapper .r {
  display: block;
  position: absolute;
  z-index: -1;
  height: 75px;
  margin: 0;
  padding: 0;
  background-image: url('../images/button.png');
}

.art-button-wrapper .l {
  left: 0;
  right: 5px;
}

.art-button-wrapper .r {
  width: 401px;
  right: 0;
  clip: rect(auto, auto, auto, 396px);
}

.art-button-wrapper.hover .l,
.art-button-wrapper.hover .r {
  top: -25px;
}

.art-button-wrapper.active .l,
.art-button-wrapper.active .r {
  top: -50px;
}

.art-button-wrapper input {
  float: none !important;
}

/* end Button */

/* begin Box, Post */
.art-post {
  position: relative;
  z-index: 0;
  margin: 0 auto;
  min-width: 1px;
  min-height: 1px;
}

.art-post-body {
  position: relative;
  z-index: 1;
  padding: 10px;
}


.art-post {
  margin: 7px;
}

a img {
  border: 0;
}

.art-article img,
img.art-article {
  border: solid 1px #A6A6A6;
  margin: 1px;
}

.art-metadata-icons img {
  border: none;
  vertical-align: middle;
  margin: 2px;
}

.art-article table,
table.art-article {
  border-collapse: collapse;
  margin: 1px;
  width: auto;
}

.art-article th,
.art-article td {
  padding: 2px;
  border: solid 1px #B5B5B5;
  vertical-align: top;
  text-align: left;
}

.art-article th {
  text-align: center;
  vertical-align: middle;
  padding: 7px;
}

pre {
  overflow: auto;
  padding: 0.1em;
}

/* end Box, Post */

/* begin PostHeaderIcon */
.art-post h2.art-postheader,
.art-post h2.art-postheader a,
.art-post h2.art-postheader a:link,
.art-post h2.art-postheader a:visited,
.art-post h2.art-postheader a.visited,
.art-post h2.art-postheader a:hover,
.art-post h2.art-postheader a.hovered {
  margin: 0.2em 0;
  padding: 0;
  font-size: 16px;
  color: #0f172a;
}

.art-post h2.art-postheader a,
.art-post h2.art-postheader a:link,
.art-post h2.art-postheader a:visited,
.art-post h2.art-postheader a.visited,
.art-post h2.art-postheader a:hover,
.art-post h2.art-postheader a.hovered {
  margin: 0;
  text-decoration: none;
  color: #474747;
}

.art-post h2.art-postheader a:visited,
.art-post h2.art-postheader a.visited {

  color: #474747;
}


.art-post h2.art-postheader a:hover,
.art-post h2.art-postheader a.hovered {


  color: #38bdf8;
}

/* end PostHeaderIcon */

/* begin PostIcons, PostHeaderIcons */
.art-postheadericons {
  color: #743B01;
  padding: 1px;
}



.art-postheadericons a,
.art-postheadericons a:link,
.art-postheadericons a:visited,
.art-postheadericons a:hover {
  margin: 0;
  text-decoration: underline;
  color: #545454;
}

.art-postheadericons a:visited,
.art-postheadericons a.visited {

  color: #A75402;
}

.art-postheadericons a:hover,
.art-postheadericons a.hover {

  text-decoration: none;
  color: #707070;
}

/* end PostIcons, PostHeaderIcons */

/* begin PostBullets */
.art-post ol,
.art-post ul {
  color: #3B3B3B;
  margin: 1em 0 1em 2em;
  padding: 0;

}

.art-post li ol,
.art-post li ul {
  margin: 0.5em 0 0.5em 2em;
  padding: 0;
}

.art-post li {
  margin: 0.2em 0;
  padding: 0;
}

.art-post ul {
  list-style-type: none;
}

.art-post ol {
  list-style-position: inside;

}



.art-post li {
  padding: 0 0 0 13px;
  line-height: 1em;
}

.art-post ol li,
.art-post ul ol li {
  background: none;
  padding-left: 0;
  /* overrides overflow for "ul li" and sets the default value */
  overflow: visible;
}

.art-post ul li,
.art-post ol ul li {
  background-image: url('../images/postbullets.png');
  background-repeat: no-repeat;
  padding-left: 13px;
  /* makes "ul li" not to align behind the image if they are in the same line */
  overflow: visible;
}


/* end PostBullets */

/* begin PostQuote */
blockquote,
blockquote p,
.art-postcontent blockquote p {
  color: #1E0F00;
  font-style: italic;
  text-align: left;
}

blockquote,
.art-postcontent blockquote {
  border: solid 1px #C7C7C7;
  margin: 10px 10px 10px 50px;
  padding: 5px 5px 5px 41px;
  background-color: #E0E0E0;
  background-image: url('../images/postquote.png');
  background-position: left top;
  background-repeat: no-repeat;
  /* makes blockquote not to align behind the image if they are in the same line */
  overflow: auto;
}

/* end PostQuote */

/* begin Footer */
.art-footer {
  position: relative;
  overflow: hidden;
  width: 100%;
}


.art-footer-t {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #333333;
}

.art-footer-body {
  position: relative;
  padding: 5px !important;
}


.art-footer-text,
.art-footer-text p {
  margin: 0;
  padding: 0;
  text-align: center;
}

.art-footer,
.art-footer p,
.art-footer a,
.art-footer a:link,
.art-footer a:visited,
.art-footer a:hover {
  color: #C4C4C4;
  font-size: 10px;
}

.art-footer-text {
  margin: 0 10px 0 10px;
}

.art-footer a,
.art-footer a:link {
  color: #A8A8A8;
  text-decoration: underline;
}

.art-footer a:visited {
  color: #E87502;

}

.art-footer a:hover {
  color: #A8A8A8;

  text-decoration: none;
}

/* end Footer */

/* begin PageFooter */
.art-page-footer,
.art-page-footer a,
.art-page-footer a:link,
.art-page-footer a:visited,
.art-page-footer a:hover {
  font-family: Arial;
  font-size: 10px;
  letter-spacing: normal;
  word-spacing: normal;
  font-style: normal;
  font-weight: normal;
  text-decoration: underline;
  color: #8F8F8F;
}

.art-page-footer {
  margin: 1em;
  text-align: center;
  text-decoration: none;
  color: #8F8F8F;
}

/* end PageFooter */

/* begin LayoutCell, sidebar1 */
.art-content-layout .art-sidebar1 {
  background-color: #F5F5F5;
  width: 25%;
}

/* end LayoutCell, sidebar1 */

/* begin LayoutCell, content */
.art-content-layout .art-content {
  width: 75%;
}

.art-content-layout .art-content .art-block {
  background-color: #F5F5F5;
}

.art-content-layout .art-content-wide {
  width: 100%;
}

/* end LayoutCell, content */



table.moduletable th {
  font-size: 140%;
  padding: .5em 0;
}

.firefox2 table.poll tr td div {
  font-size: 0;
}

#footer {
  text-align: center;
}

.contentpaneopen span.small,
.contentpaneopen td.createdate,
.contentpaneopen td.modifydate {
  font-size: 75%;
  padding-bottom: 1em;
}

.column_separator {
  padding-left: .4em;
}

.pagination span {
  padding: 2px;
}

.pagination a {
  padding: 2px;
}

div.offline {
  background: #fffebb;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  font-size: 1.2em;
  padding: 5px;
}

/* headers */
table.moduletable th,
legend {
  margin: 0;
  font-weight: bold;
  font-family: Helvetica, Arial, sans-serif;
  font-size: 1.5em;
  padding-left: 0;
  margin-bottom: 10px;
  text-align: left;
}

/* form validation */
.invalid {
  border-color: #ff0000;
}

label.invalid {
  color: #ff0000;
}


/** overlib **/

.ol-foreground {
  background-color: #f6f6f6;
}

.ol-background {
  background-color: #666;
}

.ol-textfont {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 10px;
}

.ol-captionfont {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  color: #f6f6f6;
  font-weight: bold;
}

.ol-captionfont a {
  color: #0B55C4;
  text-decoration: none;
  font-size: 12px;
}

/* spacers */
span.article_separator {
  display: none;
}

.column_separator {
  padding-left: 10px;
}

td.buttonheading img {
  border: none;
}

.clr {
  clear: both;
}

div#maindivider {
  border-top: 1px solid #ddd;
  margin-bottom: 10px;
  overflow: hidden;
  height: 1px;
}

table.blog span.article_separator {
  display: none;
}

/* edit button */
.contentpaneopen_edit {
  float: left;
}

/* table of contents */
table.contenttoc {
  margin: 5px;
  border: 1px solid #ccc;
  padding: 5px;
  float: right;
}

table.contenttoc td {
  padding: 0 5px;
}


/* content tables */
td.sectiontableheader {
  background: #efefef;
  color: #333;
  font-weight: bold;
  padding: 4px;
  border-right: 1px solid #fff;
}

tr.sectiontableentry0 td,
tr.sectiontableentry1 td,
tr.sectiontableentry2 td {
  padding: 4px;
}

td.sectiontableentry0,
td.sectiontableentry1,
td.sectiontableentry2 {
  padding: 3px;
}


/* content styles */
table.contentpaneopen,
table.contentpane {
  margin: 0;
  padding: 0;
  width: auto;
}

table.contentpaneopen li {
  margin-bottom: 5px;
}

table.contentpaneopen fieldset {
  border: 0;
  border-top: 1px solid #ddd;
}

table.contentpaneopen h3 {
  margin-top: 25px;
}

table.contentpaneopen h4 {
  font-family: Arial, Helvetica, sans-serif;
  color: #333;
}

.highlight {
  background-color: #fffebb;
}

/* module control elements */
table.user1user2 div.moduletable {
  margin-bottom: 0;
}

div.moduletable,
div.module {
  margin-bottom: 25px;
}

div.module_menu h3 {
  font-family: Helvetica, Arial, sans-serif;
  font-size: 12px;
  font-weight: bold;
  color: #eee;
  margin: -23px -4px 5px -5px;
  padding-left: 10px;
  padding-bottom: 2px;
}

div.module_menu {
  margin: 0;
  padding: 0;
  margin-bottom: 15px;
}

div.module_menu div div div {
  padding: 10px;
  padding-top: 30px;
  padding-bottom: 15px;
  width: auto;
}

div.module_menu div div div div {
  background: none;
  padding: 0;
}

div.module_menu ul {
  margin: 10px 0;
  padding-left: 20px;
}

div.module_menu ul li a:link,
div.module_menu ul li a:visited {
  font-weight: bold;
}

#leftcolumn div.module {
  padding: 0 10px;
}

#leftcolumn div.module table {
  width: auto;
}

/* forms */
table.adminform textarea {
  width: 540px;
  height: 400px;
  font-size: 1em;
  color: #000099;
}

div.search input {
  width: 95%;
  border: 1px solid #ccc;
  margin: 15px 0 10px 0;
}

form#form-login {
  text-align: left;
}

form#form-login fieldset {
  border: 0 none;
  margin: 0;
  padding: 0.2em;
}

form#form-login ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

form#form-login ul li {
  background-image: none;
  padding: 0;
}

#modlgn_username,
#modlgn_passwd {
  width: 90%;
}

#form-login-username,
#form-login-password,
#form-login-remember {
  display: block;
  margin: 0;
}

form#com-form-login {
  text-align: left;
}

form#com-form-login fieldset {
  border: 0 none;
  margin: 0;
  padding: 0.2em;
}

form#com-form-login ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

form#com-form-login ul li {
  background-image: none;
  padding: 0;
}

/* thumbnails */
div.mosimage {
  margin: 5px;
}

div.mosimage_caption {
  font-size: .90em;
  color: #666;
}

div.caption {
  padding: 0 10px 0 10px;
}

div.caption img {
  border: 1px solid #CCC;
}

div.caption p {
  font-size: .90em;
  color: #666;
  text-align: center;
}

/* Parameter Table */
table.paramlist {
  margin-top: 5px;
}

table.paramlist td.paramlist_key {
  width: 128px;
  text-align: left;
  height: 30px;
}

div.message {
  font-weight: bold;
  font-size: 14px;
  color: #c30;
  text-align: center;
  width: auto;
  background-color: #f9f9f9;
  border: solid 1px #d5d5d5;
  margin: 3px 0 10px;
  padding: 3px 20px;
}

/* Banners module */

/* Default skyscraper style */
.banneritem img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/* Text advert style */

.banneritem_text {
  padding: 4px;
  font-size: 11px;
}

.bannerfooter_text {
  padding: 4px;
  font-size: 11px;
  background-color: #f7f7f7;
  text-align: right;
}

/* System Messages */
/* see system general.css */

.pagination span {
  padding: 2px;
}

.pagination a {
  padding: 2px;
}

/* Polls */
.pollstableborder {
  margin-top: 8px;
}


.pollstableborder td {
  text-align: left;

}

/* WebLinks */
span.description {
  display: block;
  padding-left: 30px;
}

/* Frontend Editing*/
fieldset {
  border: 1px solid #ccc;
  margin-top: 15px;
  padding: 15px;
}

legend {
  margin: 0;
  padding: 0 10px;
}

td.key {
  border-bottom: 1px solid #eee;
  color: #666;
}

/* Tooltips */

.tool-tip {
  float: left;
  background: #ffc;
  border: 1px solid #d4d5aa;
  padding: 5px;
  max-width: 200px;
}

.tool-title {
  padding: 0;
  margin: 0;
  font-size: 100%;
  font-weight: bold;
  margin-top: -15px;
  padding-top: 15px;
  padding-bottom: 5px;
  background: url(../../system/images/selector-arrow.png) no-repeat;
}

.tool-text {
  font-size: 100%;
  margin: 0;
}

/* System Standard Messages */
#system-message {
  margin-bottom: 20px;
}

#system-message dd.message ul {
  background: #c3d2e5 url(../../system/images/notice-info.png) 4px center no-repeat;
  border-top: 3px solid #0ea5e9;
  border-bottom: 3px solid #0ea5e9;
  margin: 0;
  padding-left: 40px;
  text-indent: 0;
}

/* System Error Messages */
#system-message dd.error ul {
  color: #c00;
  background: #e6c0c0 url(../../system/images/notice-alert.png) 4px center no-repeat;
  border-top: 3px solid #0ea5e9;
  border-bottom: 3px solid #0ea5e9;
  margin: 0;
  padding-left: 40px;
  text-indent: 0;
}

/* System Notice Messages */
#system-message dd.notice ul {
  color: #c00;
  background: #efe7b8 url(../../system/images/notice-note.png) 4px center no-repeat;
  border-top: 3px solid #cbd5e1;
  border-bottom: 3px solid #cbd5e1;
  margin: 0;
  padding-left: 40px;
  text-indent: 0;
}

#syndicate {
  float: left;
  padding-left: 25px;
}

/* Component Specific Fixes */

#component-contact table td {
  padding: 2px 0;
}

.breadcrumbs img {
  margin: 0;
  padding: 0;
  border: 0;
}

.mceToolbarTop {
  white-space: normal;
}

.mceEditor {
  background: none;
}

#archive-list {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

#archive-list li {
  list-style-type: none;
  background-image: none;
  margin-left: 0;
  padding-left: 0;
}

#navigation {
  text-align: center;
}

.article h3 img {
  border: none;
  display: inline;
  margin: 0;
  padding: 0;
}

.art-footer-text .moduletable {
  border: none;
  margin: 0;
  padding: 0;
}

.pollstableborder td {
  vertical-align: middle;
}

.img_caption.left {
  float: left;
  margin-right: 1em;
}

.img_caption.right {
  float: right;
  margin-left: 1em;
}

.img_caption.left p {
  clear: left;
  text-align: center;
}

.img_caption.right p {
  clear: right;
  text-align: center;
}

.img_caption img {
  margin: 0;
}

.contentheading {

  color: #707070;
}

#system-message ul li {
  background-image: none;
  padding-left: 0;
}

/* Plugin compatilibity. */

/* 152316, DOCman */

.dm_taskbar ul {
  background-image: none;
  margin: 0;
  padding: 0;
}

.dm_taskbar ul li {
  background-image: none;
}

p.remove-p {
  display: inline;
}

/* ==========================================================
 * MODERN PREMIUM CONSTRUCTION BRAND OVERRIDES 
 * ========================================================== */

body {
  background-color: #f8fafc !important;
  /* Premium light background */
  background-image: none !important;
  font-family: 'Inter', sans-serif !important;
  color: #334155 !important;
  /* Darker text for readability */
  font-size: 16px !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.8 !important;
  /* Increased line height for whitespace */
}

#art-main {
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  left: 0 !important;
  top: 0 !important;
}

/* Strip structural old background images */
#art-page-background-gradient,
.art-sheet-cc,
.art-nav .l,
.art-nav .r,
.art-menu a .r,
.art-menu a .l,
.art-menu ul a,
.art-post-body,
.art-blockcontent-body {
  background-image: none !important;
  background-color: transparent !important;
}

div.art-nav-center {
  background-image: none !important;
  background-color: transparent !important;
  position: static !important;
  float: none !important;
  right: auto !important;
  width: 100% !important;
  display: flex !important;
  justify-content: center !important;
}

/* Main Container - Light Premium */
.art-sheet {
  background: #ffffff !important;
  border-radius: 0px !important;
  border: none !important;
  box-shadow: none !important;
  /* Flat premium look */
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  max-width: 100% !important;
  width: 100% !important;
}

.art-sheet-body {
  padding: 0 !important;
}

/* Header Re-styling - Slim Full Width Banner */
div.art-header {
  height: 150px !important;
  /* Slimmer height to prevent zoom-in feel */
  background: #ffffff !important;
  border: none !important;
  margin: 0 !important;
  padding: 0 !important;
  position: relative !important;
  width: 100% !important;
  display: block !important;
  overflow: hidden !important;
}

div.art-header-jpeg {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  height: 150px !important;
  width: 100% !important;
  background-size: 100% 100% !important;
  /* Forced aspect to see the "whole" banner */
  background-position: center !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
}

/* Typography refinements */
h1,
h2,
h3,
h4,
h5,
h6,
h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
  font-family: 'Inter', sans-serif !important;
  font-weight: 700 !important;
  color: #0f172a !important;
  letter-spacing: -0.03em !important;
}

h3 {
  font-size: 26px !important;
  color: #0ea5e9 !important;
  margin-bottom: 20px !important;
}

p {
  color: #475569 !important;
  font-weight: 400 !important;
  margin-bottom: 1.5em !important;
}

a,
a:link,
a:visited,
.art-post li a,
.art-post li a:link {
  color: #0ea5e9 !important;
  transition: all 0.3s ease !important;
  text-decoration: none !important;
}

a:hover,
.art-post li a:hover {
  color: #38bdf8 !important;
  text-shadow: 0 0 10px rgba(14, 165, 233, 0.4) !important;
}

/* Navigation - Fixed over white background */
.art-nav {
  background: #ffffff !important;
  border-top: none !important;
  /* Kill legacy orange line */
  border-bottom: none !important;
  /* Remove teal accent line */
  height: auto !important;
  padding: 15px 0 !important;
  position: relative !important;
  z-index: 1000 !important;
  margin: 0 !important;
}

ul.art-menu {
  float: none !important;
  display: flex !important;
  justify-content: center !important;
  gap: 15px !important;
  margin: 0 auto !important;
  left: 0 !important;
}

.art-menu a .t {
  color: #64748b !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
  transition: all 0.2s !important;
  display: inline-block !important;
}

.art-menu a:hover .t,
.art-menu a.active .t {
  color: #38bdf8 !important;
}

/* Dropdowns - Common styles */
.art-menu ul {
  background: #ffffff !important;
  border: 1px solid #f1f5f9 !important;
  border-radius: 8px !important;
  padding: 15px !important;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.05) !important;
}

/* Secondary menus (Vertical dropdowns) */
.art-menu>li>ul {
  margin-top: 10px !important;
  position: absolute !important;
}

.art-menu>li>ul::before {
  content: '' !important;
  position: absolute !important;
  top: -15px !important;
  left: 0 !important;
  right: 0 !important;
  height: 15px !important;
  display: block !important;
}

/* Tertiary menus (Side menus like "Statements") */
.art-menu ul ul {
  margin-top: -15px !important;
  /* Align with parent item padding */
  margin-left: 10px !important;
  position: absolute !important;
  top: 0 !important;
}

.art-menu ul ul::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  bottom: 0 !important;
  left: -15px !important;
  width: 15px !important;
  display: block !important;
}

.art-menu ul a {
  background: transparent !important;
  border: none !important;
  color: #475569 !important;
  /* Legible slate gray */
  font-weight: 500 !important;
  margin: 5px 0 !important;
  border-radius: 0 6px 6px 0 !important;
  transition: none !important;
  /* Instant exit to sync with background */
  border-left: 0px solid transparent !important;
  /* Eliminate laggy fade-out */
  text-transform: none !important;
  font-size: 14px !important;
  width: auto !important;
  min-width: 220px !important;
  height: auto !important;
  overflow: visible !important;
  white-space: nowrap !important;
}

.art-menu ul a:hover {
  background: rgba(14, 165, 233, 0.08) !important;
  color: #0ea5e9 !important;
  padding-left: 15px !important;
  border-left: 3px solid #0ea5e9 !important;
  transition: all 0.2s ease !important;
  /* Smooth entry only */
}

/* ═══ Management Cards — Premium Redesign ═══ */
.mgmt-card {
  display: flex !important;
  flex-direction: row !important;
  gap: 24px !important;
  align-items: center !important;
  margin: 0 auto 28px auto !important;
  padding: 28px !important;
  max-width: 580px !important;
  background: linear-gradient(135deg, #ffffff 0%, #f8fafc 100%) !important;
  border-radius: 16px !important;
  border: 1px solid rgba(226, 232, 240, 0.6) !important;
  border-left: 4px solid #0ea5e9 !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.04) !important;
  transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1) !important;
  position: relative !important;
  overflow: hidden !important;
}

.mgmt-card::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  background: linear-gradient(135deg, rgba(14, 165, 233, 0.03) 0%, transparent 60%) !important;
  pointer-events: none !important;
  transition: opacity 0.35s ease !important;
  opacity: 0 !important;
}

.mgmt-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 40px rgba(14, 165, 233, 0.12), 0 4px 12px rgba(0, 0, 0, 0.06) !important;
  border-left-color: #0284c7 !important;
}

.mgmt-card:hover::before {
  opacity: 1 !important;
}

.mgmt-img-wrap {
  flex: 0 0 106px !important;
  text-align: center !important;
}

.mgmt-img-wrap img {
  width: 100px !important;
  height: 100px !important;
  border-radius: 50% !important;
  border: 3px solid #e0f2fe !important;
  box-shadow: 0 6px 20px rgba(14, 165, 233, 0.15) !important;
  object-fit: cover !important;
  transition: all 0.35s ease !important;
}

.mgmt-card:hover .mgmt-img-wrap img {
  border-color: #0ea5e9 !important;
  box-shadow: 0 8px 28px rgba(14, 165, 233, 0.25) !important;
  transform: scale(1.05) !important;
}

.mgmt-details {
  flex: 1 !important;
  min-width: 0 !important;
}

.mgmt-details h4 {
  margin: 0 0 4px 0 !important;
  color: #0f172a !important;
  font-size: 1.15rem !important;
  font-weight: 700 !important;
  text-align: center !important;
  max-width: none !important;
  letter-spacing: -0.01em !important;
}

.mgmt-details .role {
  display: inline-block !important;
  font-weight: 600 !important;
  color: #0ea5e9 !important;
  margin-bottom: 12px !important;
  font-size: 0.75rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  text-align: left !important;
  background: #e0f2fe !important;
  padding: 3px 10px !important;
  border-radius: 4px !important;
}

.mgmt-details p {
  margin: 0 !important;
  line-height: 1.65 !important;
  color: #475569 !important;
  text-align: left !important;
  width: auto !important;
  max-width: none !important;
  font-size: 0.9rem !important;
}


/* Layout Blocks */
.art-layout-cell.art-sidebar1 {
  background: #f8fafc;
  border-right: 1px solid #f1f5f9;
  padding: 40px 10px;
  width: 180px;
  min-width: 180px;
  flex: 0 0 180px;
}

.art-layout-cell.art-content {
  padding: 40px 20px;
}

/* Fix sidebar menu items */
.art-blockcontent-body ul.menu li {
  background-image: none !important;
  /* Remove redundant legacy bullet */
  padding: 0 !important;
}

.art-blockcontent-body ul.menu li a {
  color: #334155 !important;
  /* Darker text for readability */
  text-transform: uppercase;
  font-size: 13px !important;
  font-weight: 600 !important;
  display: flex !important;
  /* Flex to align with background image */
  align-items: center !important;
  padding: 12px 0 12px 25px !important;
  /* Provide space for the arrow */
  border-bottom: 1px solid #f1f5f9 !important;
  background: url('../images/blockcontentbullets.png') no-repeat 0 45% !important;
  /* Slightly elevated relative to text center */
  line-height: normal !important;
}

.art-blockcontent-body ul.menu li a span {
  display: inline-block !important;
  line-height: 1 !important;
  vertical-align: middle !important;
}

.art-blockcontent-body ul.menu li a:hover {
  color: #38bdf8 !important;
  padding-left: 5px !important;
}

/* Image Enhancements (Management page etc) */
.art-article img {
  border-radius: 12px;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
  transition: transform 0.3s ease;
  border: 4px solid #fff;
}

.art-article img:hover {
  transform: scale(1.02);
  border-color: #0ea5e9;
}

.art-article .gallery {
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 8px !important;
  padding: 10px !important;
  margin: 10px 0 !important;
  display: block !important;
  clear: both !important;
  box-sizing: border-box !important;
  width: 330px !important;
  /* Force width of container */
  min-width: 330px !important;
}

.art-article .gallery ul {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  width: 310px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.art-article .gallery ul li {
  width: 150px !important;
  flex: 0 0 150px !important;
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
  background: none !important;
}

.art-article .gallery ul li img {
  width: 150px !important;
  height: 100px !important;
  display: block !important;
  object-fit: cover !important;
  margin: 0 !important;
  border: 1px solid #e2e8f0 !important;
}

.art-article table.no-border,
.art-article table.no-border td,
.art-article table.no-border tr {
  border: 0 !important;
  border-collapse: collapse !important;
  table-layout: auto !important;
}

.art-article table.no-border td {
  vertical-align: top;
  padding: 5px;
}


/* Ensure default paragraphs stay centered and readable */
.art-article p {
  width: auto !important;
  max-width: 800px !important;
  margin-left: 10px !important;
  margin-right: 10px !important;
  line-height: 1.6;
  margin-bottom: 1.2em;
}

/* Clean up legacy formatting */
.art-post-inner,
.art-postcontent,
.art-block-body,
.art-blockcontent-body {
  background: none !important;
  padding: 0 !important;
}

.art-post {
  background: none !important;
}

.remove-p img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* Footer */
.art-footer {
  background: rgba(0, 0, 0, 0.4) !important;
  border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
  padding: 15px 0 !important;
  text-align: center !important;
  color: #64748b !important;
  border-radius: 0 !important;
  width: 100% !important;
  display: block !important;
  margin-top: auto !important;
  /* Push to bottom of flex container */
}

.art-footer-text,
.art-footer-text p {
  text-align: center !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.art-footer-t,
.art-footer-l,
.art-footer-r {
  display: none !important;
}

.art-footer-text p {
  color: #64748b !important;
  font-size: 13px !important;
}

/* Modern Carousel */
.modern-carousel {
  position: relative;
  width: 100%;
  max-width: 900px !important;
  /* Boxed width */
  margin: 20px auto !important;
  /* Added gaps */
  border-radius: 12px !important;
  /* Rounded corners */
  overflow: hidden;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.12) !important;
  /* Premium shadow */
  background: #ffffff !important;
  aspect-ratio: 18 / 5 !important;
  /* Match original 900x250 ratio */
}

.carousel-inner {
  position: relative;
  width: 100%;
  height: 100%;
}

.carousel-slide {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.6s ease-in-out, visibility 0.6s;
}

.carousel-slide.active {
  opacity: 1;
  visibility: visible;
  z-index: 10;
}

.carousel-slide img {
  width: 100%;
  height: 100%;
  object-fit: fill !important;
  /* Ensure all text/content is visible */
  display: block;
}

/* Indicators */
.carousel-indicators {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 12px;
  z-index: 20;
  background: rgba(15, 23, 42, 0.5);
  padding: 8px 16px;
  border-radius: 20px;
  backdrop-filter: blur(4px);
}

.dot {
  width: 10px;
  height: 10px;
  background-color: rgba(255, 255, 255, 0.5);
  border-radius: 50%;
  cursor: pointer;
  transition: all 0.3s ease;
}

.dot:hover {
  background-color: rgba(255, 255, 255, 1);
  transform: scale(1.2);
}

.dot.active {
  background-color: #0ea5e9;
  width: 25px;
  border-radius: 5px;
}

/* Navigation Arrows */
.carousel-prev,
.carousel-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(15, 23, 42, 0.4) !important;
  backdrop-filter: blur(8px) !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  color: white !important;
  width: 50px !important;
  height: 50px !important;
  border-radius: 50% !important;
  cursor: pointer !important;
  z-index: 30 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 20px !important;
  transition: all 0.3s ease !important;
  outline: none !important;
  opacity: 0 !important;
  /* Hidden by default */
  visibility: hidden !important;
}

.modern-carousel:hover .carousel-prev,
.modern-carousel:hover .carousel-next {
  opacity: 1 !important;
  visibility: visible !important;
}

.carousel-prev {
  left: 20px !important;
}

.carousel-next {
  right: 20px !important;
}

.carousel-prev:hover,
.carousel-next:hover {
  background: rgba(14, 165, 233, 0.6) !important;
  transform: translateY(-50%) scale(1.1) !important;
  box-shadow: 0 0 20px rgba(14, 165, 233, 0.4) !important;
}

.dot.active {
  background-color: #0ea5e9;
  transform: scale(1.3);
  box-shadow: 0 0 8px #0ea5e9;
}

/* Restore Global Modern Formatting */
.art-content-layout,
.art-content-layout-row {
  display: flex !important;
  justify-content: center !important;
  width: 100% !important;
  margin: 0 auto !important;
}

.art-layout-cell.art-content {
  padding: 60px 40px !important;
  flex: 1 !important;
  text-align: center !important;
}

/* Global Centering for standard pages (Headings & Non-TD Paragraphs) */
.art-layout-cell.art-content h1,
.art-layout-cell.art-content h2,
.art-layout-cell.art-content h3,
.art-article p,
.art-article h3 {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 800px !important;
  display: block !important;
}

/* Keep lists aligned internally but centered as a block */
.art-layout-cell.art-content ul,
.art-layout-cell.art-content ol,
.art-article ul,
.art-article ol {
  display: inline-block !important;
  text-align: left !important;
  margin: 20px auto !important;
}

.art-article li,
.art-layout-cell.art-content li {
  text-align: left !important;
}

/* Footer Styling */
.art-footer {
  background: rgba(15, 23, 42, 0.9) !important;
  padding: 40px 0 !important;
  text-align: center !important;
  color: #94a3b8 !important;
  width: 100% !important;
  margin-top: auto !important;
}

.art-footer-text,
.art-footer-text p {
  color: #94a3b8 !important;
  font-size: 14px !important;
  text-align: center !important;
  width: 100% !important;
}

/* Refined Gallery & Width Balance - Final Lock */
.art-article .gallery {
  background: none !important;
  border: none !important;
  border-radius: 8px !important;
  padding: 10px !important;
  margin: 10px 0 !important;
  display: block !important;
  clear: both !important;
  box-sizing: border-box !important;
  width: 330px !important;
  min-width: 330px !important;
}

.art-article .gallery ul {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  width: 310px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.art-article .gallery ul li {
  width: 150px !important;
  flex: 0 0 150px !important;
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
  background: none !important;
  clear: none !important;
  /* Force override of Artisteer clear */
}

.art-article .gallery ul li img {
  width: 150px !important;
  height: 100px !important;
  display: block !important;
  object-fit: cover !important;
  margin: 0 !important;
  border: 1px solid #e2e8f0 !important;
}

/* Gallery column sizing */
.art-article table.no-border td:has(.gallery),
.art-article table.no-border td .gallery,
.art-article table.no-border td:nth-child(2) {
  width: 250px !important;
}

/* Restore original table layout */
.art-article table.no-border {
  width: 100% !important;
  border-collapse: collapse !important;
  margin: 20px 0 !important;
}

.art-article table.no-border td {
  vertical-align: top !important;
  padding: 20px !important;
}

/* CSR Page Specific Refinements — matches original */
.csr-label {
  text-align: center !important;
  font-size: 1.15rem !important;
  margin-top: 30px !important;
  margin-bottom: 10px !important;
  color: #1b365d !important;
  padding-left: 0 !important;
  max-width: 800px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.cleared {
  height: 0 !important;
}

/* Push gallery images down to align with text, not heading — original value */
.art-article .no-border td:last-child {
  vertical-align: top !important;
  padding-top: 76px !important;
}

/* Health and Safety Targeted Alignment */
#hs-content {
  text-align: left !important;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 800px !important;
  display: block !important;
}

#hs-content h3 {
  text-align: center !important;
  margin-bottom: 20px !important;
  color: #1b365d !important;
}

#hs-content p {
  text-align: left !important;
  width: auto !important;
  max-width: none !important;
}



#hs-content .item-p {
  padding-left: 25px !important;
  margin-bottom: 8px !important;
  text-align: left !important;
  width: auto !important;
  max-width: none !important;
}
/* Announcement Popup */
.announcement-popup {
    position: fixed;
    bottom: 30px;
    right: 30px;
    background: #ffffff;
    color: #333333;
    padding: 20px 40px 20px 25px;
    border-radius: 12px;
    box-shadow: 0 15px 45px rgba(0,0,0,0.15), 0 0 0 1px rgba(0,0,0,0.05);
    z-index: 10000;
    max-width: 350px;
    font-family: 'Inter', sans-serif;
    border-left: 6px solid #c2a649;
    transform: translateY(100px);
    opacity: 0;
    transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.announcement-popup.show {
    transform: translateY(0);
    opacity: 1;
}

.announcement-popup .close-btn {
    position: absolute;
    top: 10px;
    right: 15px;
    cursor: pointer;
    font-size: 22px;
    line-height: 1;
    color: #999999;
    transition: color 0.3s;
}

.announcement-popup .close-btn:hover {
    color: #333333;
}

.announcement-popup p {
    margin: 0;
    font-size: 14px;
    line-height: 1.6;
    color: #555555;
}

.announcement-popup strong {
    color: #1b365d;
    display: block;
    margin-bottom: 8px;
    font-size: 15px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
