/* =====================================================================
   Global Reset & Base Styles Morangup.com.au
   ===================================================================== */
*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  overflow-x: hidden;
  display: block;
}

/* HTML5 elements */
article, aside, details, figcaption, figure, footer, header, main, menu, nav, section {
  display: block;
}
summary {
  display: list-item;
}
[hidden], template {
  display: none;
}

body {
  /* Primary font: Lato with fall-backs */
  font-family: "Lato", Arial, sans-serif;
  font-size: 15px;
  line-height: 1.5;
  color: #777;
  padding: 6px;
}

/* Remove default list styles */
ul, li {
  list-style: none;
}

/* =====================================================================
   Anchor Styles
   ===================================================================== */
a {
  color: #6a83a2;                     /* Set link text colour */
  text-decoration: none;              /* Remove default underline */
  background-color: transparent;
  display: inline-block;              /* Limit border width to text length */
  border-bottom: none;                /* Remove default underline */
  transition: border-bottom 0.3s ease; /* Smooth underline transition */
}

a:hover {
  border-bottom: 1px solid #6a83a2;    /* Thin blue underline on hover */
}

/* =====================================================================
   Typography & Headings
   ===================================================================== */
/* Heading Styles with Colour: #6a83a2 */
h1 {
  font-size: clamp(1.0rem, 5vw, 2.5rem);
  color: #666666;
  font-family: 'Montserrat', sans-serif;
  font-weight: 400;
  margin: 10px 0;
  text-align: center;
  line-height: 1.8;
  text-decoration: underline; /* Adds a default underline */
  text-underline-offset: 4px; /* Adjusts spacing of the underline */
  text-decoration-thickness: 2px; /* Adjusts underline thickness */
  
}
h2 {
  font-size: clamp(0.9rem, 4vw, 1.4rem);
  color: #6a83a2;
  font-family: Lato, Arial, sans-serif;
  margin: 10px 8px;
}
h3 {
  font-size: 28px;
  color: #6a83a2;
  font-family: "Segoe UI", Arial, sans-serif;
  margin: 10px 0;
}
h4 {
  font-size: clamp(0.85rem, 3vw, 1.3rem);
  color: #777777;
  font-family: Lato, Arial, sans-serif;
  margin: 1px 0;
}
h5 {
  font-size: clamp(0.6rem, 3vw, 1.2rem);
  font-weight: 400;
  color: #6a83a2;
  font-family: Montserrat, sans-serif;
  margin: 5px 0;
  text-align: left;
}
h6 {
  font-size: 16px;
  color: #6a83a2;
  font-family: "Segoe UI", Arial, sans-serif;
  margin: 10px 0;
}

/* Additional typographic elements */
abbr[title] {
  border-bottom: none;
  text-decoration: underline dotted;
}
b, strong {
  font-weight: bolder;
}
dfn {
  font-style: italic;
}
mark {
  background: #ff0;
  color: #000;
}
small {
  font-size: 80%;
}
.sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub { bottom: -0.25em; }
sup { top: -0.5em; }
figure {
  margin: 1em 10px;
}

/* A helper class for smaller, bold paragraphs */
.small-text {
  font-size: 0.7rem;
  font-weight: bold;
}

/* Prevent long URLs pushing layout sideways */
.reference-list li,
.reference-list a,
.section-content li,
.section-content p {
  overflow-wrap: anywhere;      /* modern, best */
  word-break: break-word;       /* fallback */
}

/* Safety net if any container still overflows */
.section-content { overflow-x: hidden; }

/* ── Morangup “call-out” blockquote  – FA 5.15.4 compatible ─────────── */
blockquote.callout {
  position: relative;
  padding: 1.2rem 1.2rem 1.2rem 3.2rem;   /* room for icon */
  margin: 0 0 2rem;
  font-size: 1.125rem;                   /* 18 px on 16 px base */
  line-height: 1.6;
  color: var(--fbc-primary-text, #15141A);
  /*background: var(--fbc-light-gray, #F0F0F4);*/
  border-left: 6px solid #4caf50;        /* Morangup accent green */
  border-radius: 0 6px 6px 0;
  transition: var(--fbc-transition, all .15s ease);
}

blockquote.callout:hover {
  box-shadow: 0 0 6px rgba(0,0,0,.12);
}

blockquote.callout::before {
  content: "\f10d";                      /* fa-quote-left (solid) */
  font-family: "Font Awesome 5 Free";    /* v5.15.4 family name */
  font-weight: 900;                      /* solid style */
  position: absolute;
  left: 12px;
  top: 12px;
  font-size: 1.5rem;
  color: #4caf50;
}

blockquote.callout cite {
  display: block;
  margin-top: .75rem;
  font-size: .875rem;                    /* 14 px */
  font-style: normal;
  color: var(--fbc-secondary-text, #5B5B66);
  text-align: right;
}

/* Dark-mode tweak */
@media (prefers-color-scheme: dark) {
  blockquote.callout {
    background: #232323;
    border-left-color: #8bc34a;
    color: #E4E4E4;
  }
  blockquote.callout::before { color: #8bc34a; }
}




/* =====================================================================
   Responsive Images & Custom Elements
   ===================================================================== */
img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}
img-dave {
  max-width: 400px;
}
.img-inline {
  display: inline-block;
  max-width: 100%;
  height: auto;
  vertical-align: middle;
  padding: 6px 12px;
  border-radius: 4px;
}
.img-text-wrap {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  flex-wrap: wrap;
  margin-bottom: 20px;
}

.img-text-wrap img {
  max-width: 160px;
  height: auto;
  flex-shrink: 0;
  border-radius: 4px;
}

.img-text-wrap p {
  flex: 1 1 240px;
  margin: 0;
}
.img-text-wrap.right {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  flex-wrap: wrap;
  flex-direction: row-reverse;
  margin-bottom: 20px;
}

.img-text-wrap.right img {
  max-width: 160px;
  height: auto;
  flex-shrink: 0;
  border-radius: 4px;
}

.img-text-wrap.right p {
  flex: 1 1 240px;
  margin: 0;
}



/* === Morangup Site Search Styles === */

/* Container */
.search-container {
  position: relative;
  max-width: 700px;
  margin: 1.2rem auto;
  padding: 0.5rem;
}

/* Row holding input + buttons */
.search-row {
  display: flex;
  align-items: center;
  gap: 0.4rem;
}

/* Input */
.search-input {
  flex: 1;
  padding: 0.55rem 0.8rem;
  font-size: 1rem;
  border: 1px solid #ccc;
  border-radius: 6px;
  font-family: 'Montserrat', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}

/* Buttons */
.search-icon {
  background: #4d6b8f;
  color: #fff;
  border: none;
  border-radius: 6px;
  padding: 0.55rem 0.8rem;
  cursor: pointer;
  font-size: 0.95rem;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.2s ease-in-out;
}

.search-icon:hover {
  background: #2f4f6e;
}

.search-icon i {
  font-size: 1rem;
}

/* Help text under input */
.search-help {
  color: #666;
  font-size: 0.85rem;
}

/* Results panel */
.search-results {
  display: none;
  margin-top: 0.75rem;
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 6px;
  max-height: 400px;
  overflow-y: auto;
  box-shadow: 0 6px 20px rgba(0,0,0,0.15);
  padding: 0.75rem 1rem;
  z-index: 10;
}

.search-results ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.search-results li {
  padding: 0.5rem 0;
  border-bottom: 1px solid #eee;
  cursor: pointer;
}

.search-results li:last-child {
  border-bottom: none;
}

.search-results li:hover {
  background: #f5f7fa;
}

/* Link & snippet inside results */
.search-results a {
  text-decoration: none;
  color: #2f4f6e;
}

.search-results a:hover {
  text-decoration: underline;
}

.search-results p {
  margin: 0.25rem 0 0;
  font-size: 0.9rem;
  color: #333;
}

.search-results .small-text {
  font-size: 0.8rem;
  color: #777;
}

/* Highlight inside snippets (during search) */
.highlight {
  background: yellow;
  padding: 0 0.1em;
  border-radius: 0.15em;
}

/* === Fluoro flash + fade for landing highlights === */
@keyframes alixFlashFade {
  0%   { background-color: rgba(255, 255, 0, 0.55); }
  70%  { background-color: rgba(255, 255, 0, 0.25); }
  100% { background-color: rgba(255, 255, 0, 0.0); }
}

.alix-flash {
  animation: alixFlashFade 5s ease-out forwards;
}

.alix-mark {
  background: rgba(255, 255, 0, 0.6);
  padding: 0 .08em;
  border-radius: .15em;
}

/* Accessibility: respect reduced motion */
@media (prefers-reduced-motion: reduce) {
  .alix-flash {
    animation: none;
    background-color: rgba(255, 255, 0, 0.25);
    transition: background-color 2s ease;
  }
}



/* =====================================================================
   Utility Classes
   ===================================================================== */
.alignleft { float: left; }
.alignright { float: right; }
.dm-wide { letter-spacing: 10px; }
.dm-hover-opacity { cursor: pointer; }

/* =====================================================================
   Search & Table Classes
   ===================================================================== */
.search-container {
  margin-top: 20px;
  text-align: center;
}
.search-input {
  width: 300px;
  padding: 10px;
  border: 1px solid #ccc;
  border-radius: 5px;
  font-size: 16px;
}
.search-icon {
  background-color: transparent;
  border: none;
  cursor: pointer;
}
.search-icon i {
  color: #555;
  font-size: 20px;
}
.table {
  width: 100%;
  border-collapse: collapse;
}
.table th, .table td {
  padding: 10px;
  border: 1px solid #ccc;
  text-align: left;
}
@media (max-width: 600px) {
  .table th, .table td {
    display: block;
    width: 100%;
  }
}
.search-results {
  max-height: 200px;
  overflow-y: scroll;
  margin-top: 10px;
  border: 1px solid #ccc;
  padding: 5px;
  display: none;
}
.search-results ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
}
.search-results li {
  padding: 5px;
  cursor: pointer;
}
.search-results li:hover {
  background-color: #f0f0f0;
}
.highlight {
  background-color: yellow;
  transition: background-color 2s ease-in-out;
}

/* Ordered List Styling */
ol {
  padding-left: 10px;
  margin: 10px 10px 20px 10px;
  background-color: #fff;
  border-radius: 8px;
  box-shadow: 0 4px 8px rgba(0,0,0,0.1);
  max-width: 800px;
  list-style-position: inside;
}
ol li {
  padding: 10px 15px;
  border-bottom: 1px solid #ddd;
  font-size: 16px;
  transition: background-color 0.3s ease, transform 0.3s ease;
}
ol li:hover {
  background-color: #e8f4f8;
  transform: translateX(5px);
}
ol li:last-child {
  border-bottom: none;
}
ol li::before {
  content: counter(list-item) ". ";
  color: #2f4f4f;
  font-weight: bold;
  font-size: 18px;
}
ol li:hover::before {
  color: #0077b6;
}

/* Responsive container like Bootstrap's .table-responsive */
.table-responsive-morangup {
  width: 100%;
  margin-bottom: 1rem;
}

/* Base table styling for large screens */
.morangup-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.95rem;
  background-color: #fff;
}

.morangup-table td {
  padding: 0.75rem;
  border: 1px solid #ddd;
  vertical-align: top;
}

/* Hide header always (we're not using it visually) */
.morangup-table thead {
  display: none;
}

/* Optional hover effect on desktops */
@media (min-width: 769px) {
  .morangup-table tbody tr:hover {
    background-color: #f8f9fa;
  }
}

/* Stacked card-style layout on small devices */
@media (max-width: 768px) {
  .morangup-table {
    display: block;
  }

  .morangup-table tbody {
    display: block;
  }

  .morangup-table tr {
    display: block;
    margin-bottom: 1.5rem;
    border: 1px solid #ccc;
    border-radius: 8px;
    padding: 1rem;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
    background: #fefefe;
  }

  .morangup-table td {
    display: block;
    border: none;
    padding: 0.25rem 0;
    font-size: 0.95rem;
  }
}



/* =====================================================================
   Media Query: Misc. Adjustments (Parallax, Videos, etc.)
   ===================================================================== */
@media only screen and (max-device-width: 1600px) {
  .bgimg-1, .bgimg-2, .bgimg-3 {
    background-attachment: scroll;
    min-height: 400px;
  }
  .video-wrapper {
    position: relative;
    width: 100%;
    max-width: 100%;
    padding-bottom: 56.25%; /* 16:9 ratio */
    height: 0;
    overflow: hidden;
  }
  .video-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: none;
  }
  .container {
    margin: auto;
    height: auto;
    overflow: hidden;
  }
  .img-container {
    width: 100%;
    height: Auto;
    object-fit: cover;
  }
  .img-float-right {
  float: right;
  padding: 5px;
  margin-left: 10px;
  max-width: 200px;
  display: block;
  }

.section-promo {
  overflow: hidden;
  margin-top: 30px;
  padding: 15px;
  border: 1px solid #ccc;
  border-radius: 8px;
  }

  .img-text-container { align-items: center; 
  }
  
  .responsive-img {
    max-height: 30px;
    margin-right: 10px;
    object-fit: contain;
  }
  .img-text-container span {
    font-size: 16px;
    line-height: 1.5;
  }
  hr.dave {
    border: 2px solid #6a83a2;
    border-radius: 2px;
  }
  hr.dave21 {
    border: 1px solid #6a83a2;
    max-width: 480px;
	width: 100%;
  }
  hr.dave2 {
    border: 1px solid #6a83a2;
    margin: 10px auto; /* Centers the line */
    max-width: 480px;
    width: 100%; /* Ensures it adapts responsively */
  }
  hr.dave1 {
	border: none;
    border-top: 1px solid rgba(102, 102, 102, 0.3);
    max-width: 480px;
    width: 100%;
  }
  hr.dave11 {
	border: none;
	margin: 10px auto;
    border-top: 1px solid rgba(102, 102, 102, 0.3);
    max-width: 900px;
    width: 100%;
  }
}
/* =====================================================================
   Print Styles (Consolidated)
   ===================================================================== */
@media print {
  header, footer, .nav-container, .fab {
    display: none;
  }
  body {
    font-family: Arial, sans-serif;
    font-size: 12pt;
    line-height: 1.5;
    margin: 0;
    padding: 20px;
  }
}
/* =====================================================================
   Responsive Hamburger Menu & Styled Dropdown Cells (Final Fix)
   ===================================================================== */

/* Hide hamburger on large screens */
.hamburger {
  display: none;
  font-size: 28px;
  background: none;
  border: none;
  color: #333;
  cursor: pointer;
  padding: 10px;
  margin: 10px auto;
  text-align: center;
}

/* Menu layout (desktop) */
#menu {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  text-align: left;
}

/* Menu container */
nav.dropdown-menu {
  background-color: #f8f8f8;
  border-bottom: 2px solid #ccc;
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
  max-width: 800px;
  margin: 15px auto 8px;
}

/* Reset base styles */
nav.dropdown-menu ul,
nav.dropdown-menu li {
  list-style: none;
  padding: 0;
  margin: 0;
}

nav.dropdown-menu ul {
  display: flex;
  flex-wrap: wrap;
}

/* Top-level items */
nav.dropdown-menu ul li {
  position: relative;
  margin: 2px;
}

/* All links styled as cells */
nav.dropdown-menu ul li a {
  font-size: 16px;
  padding: 10px 15px;
  color: #6a83a2;
  background-color: #ffffff;
  border: 1px solid #ccc;
  border-radius: 5px;
  transition: all 0.3s ease;
  display: block;
  width: 100%;
}

/* Hover reverse styling */
nav.dropdown-menu ul li a:hover {
  background-color: #6a83a2;
  color: #ffffff;
  border-color: #6a83a2;
}

/* ===== DESKTOP DROPDOWNS ===== */
nav.dropdown-menu ul li .submenu,
nav.dropdown-menu ul li .submenu li .sub-submenu {
  display: none;
  position: absolute;
  background-color: #ffffff;
  border: 1px solid #ccc;
  min-width: 200px;
  z-index: 1000;
}

/* First-level submenu on hover */
nav.dropdown-menu ul li:hover > .submenu {
  display: block;
  top: 100%;
  left: 0;
}

/* Sub-submenu on hover */
nav.dropdown-menu ul li .submenu li:hover > .sub-submenu {
  display: block;
  top: 0;
  left: 100%;
}

/* Responsive rules */
@media screen and (max-width: 600px) {
  .hamburger {
    display: block;
    background-color: #6a83a2;
    color: #fff;
    border-radius: 5px;
    width: 100%;
    max-width: 800px;
  }

  #menu {
    display: none;
    flex-direction: column;
    background-color: #f8f8f8;
    border-top: 1px solid #ccc;
    margin-top: 10px;
    padding: 10px;
    width: 100%;
  }

  #menu.show {
    display: flex;
  }

  nav.dropdown-menu ul {
    flex-direction: column;
    align-items: stretch;
  }

  nav.dropdown-menu ul li {
    width: 100%;
    margin: 5px 0;
  }

  /* MOBILE SUBMENUS - hidden until toggled */
  nav.dropdown-menu ul li .submenu,
  nav.dropdown-menu ul li .submenu li .sub-submenu {
    display: none;
    position: static;
    background-color: #f9f9f9;
    box-shadow: none;
    border: none;
    padding-left: 20px;
  }

  nav.dropdown-menu ul li .submenu.show,
  nav.dropdown-menu ul li .submenu li .sub-submenu.show {
    display: block !important;
  }

  nav.dropdown-menu ul li .submenu li,
  nav.dropdown-menu ul li .submenu li .sub-submenu li {
    margin-left: 0;
    padding-left: 10px;
  }
}


/* =====================================================================
   Header, Footer & Main Content
   ===================================================================== */

header {
    display: flex;
    flex-direction: column; /* Stack elements vertically */
    align-items: center; /* Center content horizontally */
    width: 100%;
    padding: 10px 0; /* Add some vertical spacing */
}

header .content {
    display: flex;
    flex-direction: column; /* Stack logo and nav */
    align-items: center; /* Keep everything centered */
    text-align: center; /* Ensure text elements stay centered */
}

header .content a {
    display: block; /* Prevents inline spacing issues */
    padding: 0;
    margin: 0;
}

.logo {
    display: block;
    max-width: 200px; /* Adjust as needed */
    height: auto;
    margin-bottom: 10px; /* Add spacing between logo and nav */
}

/* Ensure the navigation stays centered */
#nav-placeholder {
    width: 100%;
    display: flex;
    justify-content: center;
}
.footer {
  text-align: center;
  font-size: 12px;
  color: #666;
  margin: 20px auto;
  max-width: 1000px;
  margin-bottom: 20px;
}
.main-content {
  max-width: 92%;
  margin: auto;
  padding: 8px;
  border: 0.5px solid #666;
  border-radius: 10px;
  background-color: #ffffff;
  text-align: center;
}

@media (max-width: 768px) {
  .main-content {
    width: 100% !important;
    max-width: 100% !important;
    padding: 8px 18px 8px 8px !important; /* Top Right Bottom Left */
    border: none !important;
    border-radius: 0 !important;
  }
}


/* =====================================================================
   Section Content & Buttons
   ===================================================================== */

.section-content {
  margin-bottom: 10px;
  padding: 10px;
  text-align: left;
}

.section-content1 {
  margin-bottom: 20px;
  text-align: left;
}

.section-content a {
  word-wrap: break-word;
  overflow-wrap: break-word;
  white-space: normal;
  display: inline-block;
  max-width: 100%;
}

.section-content p {
  margin-bottom: 10px;
}

.section-heading {
  font-size: 24px;
  font-weight: bold;
  color: #6a83a2;
  margin-bottom: 10px;
  text-align: left;
}

/* =====================================================================
   News Article Styling (.news-release-style)
   ===================================================================== */

.section-content.news-release-style {
  font-family: 'Merriweather', serif;
  font-weight: 400;
  font-size: 18px;
  line-height: 1.75;
  color: #2c2c2c;
}

.section-content.news-release-style p {
  margin-bottom: 1em;
}

.section-content.news-release-style h2 {
  font-family: 'Montserrat', sans-serif;
  font-weight: 800;
  font-size: 1.6rem;
  color: #444;
  margin-top: 1.8em;
  margin-bottom: 0.6em;
  line-height: 1.4;
}

.section-content.news-release-style h5 {
  font-family: 'Lato', sans-serif;
  font-weight: 400;
  font-size: 1rem;
  color: #777;
  margin-bottom: 1.2em;
}

.section-content.news-release-style ul,
.section-content.news-release-style ol {
  margin-left: 1.5em;
  margin-bottom: 1em;
  padding-left: 1em;
}

.section-content.news-release-style ul li,
.section-content.news-release-style ol li {
  margin-bottom: 0.5em;
}

.section-content.news-release-style em {
  font-style: italic;
}

.section-content.news-release-style strong {
  font-weight: 600;
  color: #111;
}

.section-content.news-release-style a {
  color: #336699;
  border-bottom: 1px dotted #99aabb;
}

.section-content.news-release-style a:hover {
  color: #1d4d80;
  border-bottom: 1px solid #1d4d80;
}

.section-content.news-release-style blockquote.callout {
  font-family: 'Lato', sans-serif;
  font-size: 1.125rem;
  background: #f8f8f8;
  border-left: 6px solid #4CAF50;
  /*padding: 1.2rem 1.5rem;*/
  margin: 1.5em 0;
  color: #333;
  border-radius: 6px;
}

/* Join Button */
.join-button {
  display: inline-block;
  padding: 10px 20px;
  background-color: #556191;
  color: #fff;
  font-size: 16px;
  text-decoration: none;
  border: none;
  border-radius: 5px;
  transition: background-color 0.3s;
  margin-top: 1rem;
}

.join-button:hover {
  background-color: #3a4f6d;
}

/* New Style for Read More */
        .more-content {
            display: none;
        }
        .read-more-btn {
            background-color: #556191;
            color: #fff;
            padding: 10px 20px;
            text-decoration: none;
            border-radius: 5px;
            transition: background-color 0.3s;
        }
        .read-more-btn:hover {
            background-color: #3a4f6d;
        }



.email-button {
            background-color: #4CAF50;
            border: none;
            color: white;
            padding: 10px 20px;
            text-align: center;
            text-decoration: none;
            display: inline-block;
            font-size: 16px;
            margin-top: 10px;
            cursor: pointer;
            border-radius: 5px;
            transition: background-color 0.3s;
        }

        .email-button:hover {
            background-color: #45a049;
        }


.join-button1 {
  display: inline-block;
  padding: 6px 12px;
  margin-top: 8px;
  background-color: #00427a;
  color: white !important;
  border-radius: 4px;
  text-decoration: none;
  font-weight: bold;
  border-bottom: none !important;
}

.join-button1:hover {
  background-color: #0063b1;
}

table.provider-table td,
table.provider-table th {
  border: 1px solid #ddd;
  padding: 10px;
  vertical-align: top;
}


/* =====================================================================
   Weather Block Styling — Morangup 2025 Finalised
   ===================================================================== */

.section-content-weather {
  background: #fefefe;
  padding: 20px;
  border-radius: 12px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.06);
  border: 1px solid #dcdcdc;
  margin-bottom: 30px;
}

.weather-summary {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(290px, 1fr));
  gap: 16px;
  margin-top: 10px;
}

/* Standard block container inside the weather dashboard */
.weather-box {
  background-color: #ffffff;
  border-radius: 10px;
  border: 1px solid #ccc;
  padding: 16px;
  box-shadow: 0 1px 4px rgba(0,0,0,0.06);
}

/* Headings for each weather card/box */
.weather-box h3 {
  margin-top: 0;
  font-size: 1.2rem;
  color: #34495e;
  border-bottom: 1px solid #e0e0e0;
  padding-bottom: 6px;
  margin-bottom: 10px;
}

/* Paragraph formatting inside weather cards */
.weather-box p {
  font-size: 0.95rem;
  line-height: 1.5;
  color: #444;
}

/* Grid layout for pair-style weather stats (label + value) */
.weather-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px 16px;
  font-size: 0.95rem;
}

.weather-grid div {
  padding: 6px 8px;
  background-color: #f9f9fb;
  border-radius: 4px;
  border: 1px solid #e4e4e4;
}

/* Bold label formatting for key-value blocks */
.weather-grid div.label {
  font-weight: bold;
  background-color: #eef1f4;
  color: #333;
}

/* Mobile stacking */
@media (max-width: 600px) {
  .weather-grid {
    grid-template-columns: 1fr;
  }
}

/* Highlight box for fire risk or warnings */
.weather-highlight,
.spray-advice .weather-highlight {
  background-color: #fef5e6;
  border-left: 4px solid #ff9800;
  padding: 12px;
  border-radius: 6px;
  margin-top: 10px;
  font-size: 0.9rem;
  color: #444;
}

section.highlight {
  background: #f9f9f9;
  padding: 2em;
  border: 1px solid #ccc;
  border-radius: 6px;
  margin: 2em 0;
}

section.highlight .button {
  display: inline-block;
  margin-top: 1em;
  padding: 0.6em 1.2em;
  background: #0057A0;
  color: white;
  border-radius: 4px;
  text-decoration: none;
  font-weight: bold;
  transition: background 0.3s ease;
}

section.highlight .button:hover {
  background: #003d70;
}


/* =====================================================================
   Spray Conditions Block Styling
   Used in: weather.js (#spray-conditions)
   Updated: 2025-06-27 by DAve + ALiX
   ===================================================================== */

.spray-summary {
  font-size: 0.95rem;
  color: #444;
  padding: 0;
}

.spray-summary p {
  margin: 6px 0;
}

.spray-summary small {
  display: block;
  margin-top: 4px;
  font-size: 0.8rem;
  color: #666;
}

.spray-details {
  font-size: 0.85rem;
  margin-top: 12px;
  color: #444;
}

.spray-details h6 {
  font-weight: bold;
  font-size: 0.9rem;
  margin-bottom: 6px;
  color: #2a2a2a;
}

.spray-details ul {
  padding-left: 1.2rem;
  margin-bottom: 10px;
}

.spray-details li {
  margin-bottom: 6px;
}

/* =====================================================================
   End Spray Conditions Block
   ===================================================================== */


/* =====================================================================
   Issue & Solution Section
   ===================================================================== */
.issue-solution {
  background-color: #f9f9f9;
  padding: 10px;
  border-radius: 10px;
  margin-top: 10px;
}
.issue-solution h2 {
  font-size: 20px;
  color: #6a83a2;
  margin-bottom: 10px;
}
.issue-solution p { margin-bottom: 10px; }
.issue-solution ul {
  list-style-type: disc;
  margin-left: 8px;
  margin-bottom: 2px;
  text-align: left;
}
.issue-solution li { margin-bottom: 5px; }

/* =====================================================================
   Navigation Container & Disclaimer
   ===================================================================== */
.nav-container {
  text-align: center;
  margin: 10px 0;
}
.nav-container a {
  margin: 0 10px;
  color: #6a83a2;
  font-weight: bold;
}
.disclaimer {
  font-size: 0.72rem;
  color: #444;
  margin-top: 40px;
  text-align: left;
  margin: 0 auto;
  max-width: 800px;
  padding: 15px;
  border: 1px solid #ccc; 
  background-color: #f0e8df;
}
/* =====================================================================
   Back-to-top Button
   ===================================================================== */
.back-to-top {
  position: fixed;
  bottom: 20px;
  left: 20px;
  background-color: #4d6b8f;
  color: #fff;
  border: none;
  border-radius: 5px;
  padding: 10px 20px;
  cursor: pointer;
  display: none;
  transition: opacity 0.3s ease-in-out;
}
.back-to-top:hover { background-color: #3a4f6d; }/* Additional iframe container (redundant if already defined above) */
.iframe-container {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%;
  height: 0;
}
.iframe-container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* WEATHER SECTION*/

.weather-section {
  background-color: #f5f5f5;
  padding: 20px;
  margin: 20px auto;
  border-radius: 12px;
  box-shadow: 0 0 8px rgba(0,0,0,0.1);
  font-family: 'Lato', sans-serif;
  text-align: center;
  max-width: 600px;
}

.weather-section h3 {
  font-family: 'Montserrat', sans-serif;
  font-weight: 800;
  font-size: 1.5rem;
  margin-bottom: 10px;
}

.weather-section p {
  font-size: 0.8rem;
  margin-bottom: 16px;
  color: #444;
}

/* FIRE BLOCKs SECTION*/

#fire-period-status,
  #weather-message,
  #today-date {
    color: #333;
    font-weight: 500;
  }
  
.fdr-output {
  font-weight: bold;
}

.fdr-output.fdr-moderate { color: #2ecc71; }     /* green */
.fdr-output.fdr-high { color: #f39c12; }         /* amber */
.fdr-output.fdr-extreme { color: #e74c3c; }      /* red */
.fdr-output.fdr-catastrophic { color: #c0392b; } /* darker red */

/* 🔥 Fire Danger Ratings Table */
.fire-danger-table-wrapper {
  overflow-x: auto;
  width: 100%;
  margin: 0px 0;
}

.fire-danger-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.9rem;
  min-width: 390px; /* prevents too much squashing on small screens */
}

.fire-danger-table th {
  padding: 5px;
  text-align: center;
  font-weight: bold;
  border: 1px solid #ccc;
  word-break: break-word;
}

.fire-danger-table th:first-child {
  text-align: left;
  background-color: #f9f9f9;
}

/* Colour the danger levels */
.fire-danger-table .no-rating {
  background-color: #ffffff;
  color:#000000;
}

.fire-danger-table .moderate {
  background-color: #64BF30;
  color: #000000;
}

.fire-danger-table .high {
  background-color: #FEDD3A;
  color: #000000;
}

.fire-danger-table .extreme {
  background-color: #F78100;
  color: #000000;
}

.fire-danger-table .catastrophic {
  background-color: #AD0909;
  color: #ffffff;
}
/*FDR TEXT DYNAMIC CHANGE */
.no-rating { color: #fff; background-color: #aaa; }
.moderate { color: #16c60c; background-color: #fff; }
.high { color: #856404; background-color: #fff3cd; }
.extreme { color: #721c24; background-color: #f8d7da; }
.catastrophic { color: #fff; background-color: #c0392b; }


/* Responsive Scroll */
@media (max-width: 605px) {
  .fire-danger-table {
    font-size: 0.5rem;
  }

}

/* =========================
   Weather Today Update Block
   ========================= */

.weather-today {
  text-align: left;
  margin: 20px auto;
  padding: 10px 20px;
  background: #d2d9e3;
  border: 2px solid #ddd;
  border-radius: 8px;
  max-width: 100%;
  box-shadow: 0 2px 5px rgba(0,0,0,0.05);
}

.weather-today strong#today-date {
  display: block;
  font-size: 1.0em;
  color: #2a2a2a;
  margin-bottom: 6px;
}

.weather-today span#weather-message {
  font-size: 0.9em;
  color: #555;
  line-height: 1.2;
}
.weather-history-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  margin-top: 10px;
  justify-content: space-between;
}

.weather-history-card {
  background: #eef2f5;
  border: 1px solid #ccc;
  border-radius: 6px;
  padding: 12px;
  width: 30%;
  font-size: 0.9em;
  line-height: 1.4;
  box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

@media (max-width: 768px) {
  .weather-history-card {
    width: 48%;
  }
}
@media (max-width: 500px) {
  .weather-history-card {
    width: 100%;
  }
}

/* Terms Popup Styling */
.terms-popup {
  display: none;
  position: fixed;
  bottom: 20px;
  left: 20px;
  right: 20px;
  margin: 0 auto;
  max-width: 400px;
  background: #fefefe;
  border: 1px solid #ccc;
  box-shadow: 0 4px 8px rgba(0,0,0,0.2);
  border-radius: 12px;
  padding: 20px;
  font-family: 'Arial', sans-serif;
  z-index: 9999;
}

.terms-popup-content {
  text-align: center;
}

.terms-popup-content p {
  margin-bottom: 15px;
  font-size: 14px;
  color: #333;
}

.terms-popup-content a {
  color: #005c1f;
  text-decoration: underline;
}

.agree-button {
  background-color: #005c1f;
  color: #fff;
  border: none;
  padding: 10px 20px;
  border-radius: 8px;
  font-size: 14px;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.agree-button:hover {
  background-color: #007a2c;
}

/* Mobile friendly */
@media (max-width: 480px) {
  .terms-popup {
    bottom: 10px;
    left: 10px;
    right: 10px;
    padding: 15px;
  }
}

/* === Morangup Climate Data Block Styles === */

.climate-data {
  padding: 2rem;
  font-family: Lato, sans-serif;
}

.chart-container {
  margin-bottom: 2rem;
}

.chart-container figure {
  margin-bottom: 2rem;
}

.chart-container figcaption {
  font-size: 0.9rem;
  margin-top: 0.5rem;
  color: #444;
  text-align: left;
}

.table-container {
  overflow-x: auto;
  margin-bottom: 2rem;
}

.climate-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.95rem;
}

.climate-table th,
.climate-table td {
  border: 1px solid #ddd;
  padding: 0.5rem;
  text-align: center;
}

.climate-table th {
  background-color: #f0f0f0;
  font-weight: 600;
}

.climate-impact ul {
  padding-left: 1rem;
}

.climate-impact li {
  margin-bottom: 0.75rem;
}

.local-action-box {
  margin-top: 2rem;
  background: #f9f9f9;
  border-left: 4px solid #2a9d8f;
  padding: 1rem;
  box-shadow: 0 1px 4px rgba(0,0,0,0.04);
}

.local-action-box h4 {
  margin-top: 0;
  font-weight: 600;
}

.local-action-box ul {
  padding-left: 1.25rem;
  margin-bottom: 0;
}

.local-action-box li {
  margin-bottom: 0.5rem;
}

.info-tooltip {
  display: inline-block;
  margin-left: 0.5rem;
  font-size: 1rem;
  cursor: help;
  color: #555;
  border-bottom: 1px dotted #999;
}


/* === FEATURE PANEL STYLES (formerly .advertorial) === */

.panel-feature > .content {
  font-size: 1em;
  line-height: 1.7;
  padding: 1.5em;
  background: #fff;
  border-left: 4px solid #ffc700;
  box-shadow: 0 2px 6px rgba(0,0,0,0.05);
  margin-bottom: 2em;
}
.panel-feature > .content p { margin-bottom: 1em; }
.panel-feature > .content strong { color:#333; font-weight:600; }
.panel-feature > .content mark { background:#fffdc1; padding:0 .2em; font-weight:600; }
.panel-feature > .content a { color:#0074cc; text-decoration:none; overflow-wrap:anywhere; word-break:break-word; }
.panel-feature > .content a:hover { text-decoration:underline; }

.panel-feature .titlePanel { background:#2c2c2c; color:#fff; padding:1em 1.5em; border-radius:5px; margin-bottom:1em; box-shadow:0 2px 5px rgba(0,0,0,.1); }
.panel-feature .titlePanel .title { font-size:1.4em; font-weight:600; }
.panel-feature .model { font-size:1.2em; font-weight:600; color:#333; display:inline-block; margin-bottom:.5em; }

.panel-feature .tableLenses { width:100%; border-collapse:collapse; margin-top:1em; font-size:.95em; }
.panel-feature .tableLenses thead { background:#ffc700; color:#000; }
.panel-feature .tableLenses th,
.panel-feature .tableLenses td { border:1px solid #ddd; padding:.75em; text-align:left; vertical-align:middle; }
.panel-feature .tableLenses img.list { max-height:60px; border-radius:4px; box-shadow:0 1px 4px rgba(0,0,0,.1); }

.panel-feature .btn-buy { display:inline-block; margin:.2em 0; font-size:.85em; font-weight:600; padding:.4em .6em; border-radius:4px; text-transform:uppercase; text-align:center; }
.panel-feature .btn-buy.btn-danger { background:#d9534f; color:#fff; }
.panel-feature .btn-buy.btn-warning { background:#f0ad4e; color:#fff; }

.panel-feature .product {
  display:grid;
  grid-template-columns:120px 1fr;
  gap:1rem;
  align-items:start;
  padding:1rem;
  margin:0 0 1rem 0;
  border:1px solid #eee;
  border-radius:10px;
  box-shadow:0 1px 4px rgba(0,0,0,.04);
  background:#fafafa;
}
.panel-feature .product img { width:100%; height:auto; border-radius:8px; object-fit:cover; background:#fff; }
.panel-feature .product-info { display:block; }
.panel-feature .product-name { font-weight:700; margin:0 0 .25rem 0; color:#222; }
.panel-feature .price { font-weight:700; color:#2f4f6e; }

.panel-feature .button-link {
  display:inline-block; margin-top:.4rem; padding:.5rem .75rem; border-radius:6px;
  border:1px solid #2f4f6e; font-weight:600; line-height:1; background:#2f4f6e; color:#fff !important;
}
.panel-feature .button-link:hover { filter:brightness(1.05); text-decoration:none; }

.panel-feature .callout {
  margin-top:1.25rem; padding:1rem 1.25rem; border-left:4px solid #4d6b8f;
  background:#f5f9ff; border-radius:8px; color:#1b2a3a;
}

@media (max-width:768px){
  .panel-feature .product { grid-template-columns:1fr; }
}


/* currency widget */
.fx-box{border:1.2px solid #4d6b8f;background:#f7fbff;border-radius:10px;padding:.75rem}
.fx-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.5rem}
.fx-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
.fx-table td{padding:.35rem .25rem;border-bottom:1px dashed #e3e8ef}
.fx-footnote{margin-top:.35rem;color:#5a6776}

/* converter */
/* existing fx styles kept … add/ensure these: */
.fx-conv{margin-top:.75rem;background:#ffffff;border:1px solid #e3e8ef;border-radius:8px;padding:.6rem}
.fx-row{display:flex;gap:.5rem;align-items:center;margin:.35rem 0}
.fx-row label{min-width:140px;font-size:.9rem;color:#333}
.fx-row input[type="number"], .fx-row select{
  flex:1 1 auto; padding:.35rem .45rem; border:1px solid #cbd5e1; border-radius:6px; font-size:.95rem; background:#fff
}
/* layout the action row with result on the right */
.fx-actions {
  display: flex;
  align-items: center;
  gap: .5rem;
  justify-content: flex-start;
}
.fx-btn{padding:.35rem .7rem;font-size:.85rem;border:1px solid #4d6b8f;background:#fff;border-radius:6px;cursor:pointer}
.fx-btn:hover{background:#4d6b8f;color:#fff}
.fx-btn.fx-secondary{border-color:#64748b}
.fx-result {
  margin-left: auto;            /* push to the right */
  font-weight: 800;
  font-size: 1.25rem;           /* larger */
  line-height: 1.2;
  white-space: nowrap;
}
/* smaller screens: stack buttons and result */
@media (max-width: 640px) {
  .fx-actions {
    flex-wrap: wrap;
  }
  .fx-result {
    margin-left: 0;
    flex-basis: 100%;
    margin-top: .35rem;
    font-size: 1.1rem;
    white-space: normal;
  }
}




/* =====================================================================
   OLD Theme Utility Classes
   ===================================================================== */
.d-theme-test-class,
.dtb-theme-id-default { opacity: 0; }
.dtb-var-accent { color: #f35800; }
.dtb-var-base { color: #e9e9e9; }
.dtb-var-background { color: #fff; }
.dtb-var-border-radius { border-radius: 4px; }
.dtb-var-normal-background { color: #fff; }
.dtb-var-normal-gradient {
  background-image: none, linear-gradient(to bottom, rgba(255,255,255,0.25) 0%, rgba(255,255,255,0) 100%);
}
.dtb-var-normal-text-color { color: #2e2e2e; }
.dtb-var-hover-background { color: #bcb4b0; }
.dtb-var-hover-gradient {
  background-image: none, linear-gradient(to bottom, rgba(255,255,255,0.25) 0%, rgba(255,255,255,0) 100%);
}
.dtb-var-hover-text-color { color: #2e2e2e; }
.dtb-var-selected-background { color: #f35800; }
.dtb-var-selected-gradient {
  background-image: none, linear-gradient(to bottom, rgba(255,255,255,0.15) 0%, rgba(255,255,255,0) 100%);
}
.dtb-var-selected-text-color { color: #fff; }
.dtb-var-is-dark-theme { opacity: 0; }
.dtb-var-primary { color: #f35800; }
.dtb-var-secondary { color: #666; }
.dtb-var-tertiary { color: #a0a700; }
.dtb-var-error { color: #db4240; }
.dtb-var-warning { color: #ffc000; }
.dtb-var-success { color: #37b400; }
.dtb-var-info { color: #06c; }
.dtb-var-dark { color: #404040; }
.dtb-var-light { color: #ebebeb; }
.dtb-var-inverse { color: #404040; }
.dtb-var-series-a { color: #ff6800; }
.dtb-var-series-b { color: #a0a700; }
.dtb-var-series-c { color: #ff8d00; }
.dtb-var-series-d { color: #678900; }
.dtb-var-series-e { color: #ffb53c; }
.dtb-var-series-f { color: #396000; }
.d-theme-test-class,
.dtb-theme-id-default { opacity: 0; }
.dtb-var-accent { color: #f35800; }
.dtb-var-base { color: #e9e9e9; }
.dtb-var-background { color: #fff; }
.dtb-var-border-radius { border-radius: 4px; }
.dtb-var-normal-background { color: #fff; }
.dtb-var-normal-gradient {
  background-image: none, linear-gradient(to bottom, rgba(255,255,255,0.25) 0%, rgba(255,255,255,0) 100%);
}
.dtb-var-normal-text-color { color: #2e2e2e; }
.dtb-var-hover-background { color: #bcb4b0; }
.dtb-var-hover-gradient {
  background-image: none, linear-gradient(to bottom, rgba(255,255,255,0.25) 0%, rgba(255,255,255,0) 100%);
}
.dtb-var-hover-text-color { color: #2e2e2e; }
.dtb-var-selected-background { color: #f35800; }
.dtb-var-selected-gradient {
  background-image: none, linear-gradient(to bottom, rgba(255,255,255,0.15) 0%, rgba(255,255,255,0) 100%);
}
.dtb-var-selected-text-color { color: #fff; }
.dtb-var-is-dark-theme { opacity: 0; }
.dtb-var-primary { color: #f35800; }
.dtb-var-secondary { color: #666; }
.dtb-var-tertiary { color: #a0a700; }
.dtb-var-error { color: #db4240; }
.dtb-var-warning { color: #ffc000; }
.dtb-var-success { color: #37b400; }
.dtb-var-info { color: #06c; }
.dtb-var-dark { color: #404040; }
.dtb-var-light { color: #ebebeb; }
.dtb-var-inverse { color: #404040; }
.dtb-var-series-a { color: #ff6800; }
.dtb-var-series-b { color: #a0a700; }
.dtb-var-series-c { color: #ff8d00; }
.dtb-var-series-d { color: #678900; }
.dtb-var-series-e { color: #ffb53c; }
.dtb-var-series-f { color: #396000; }

/* =====================================================================
   DM Utilities & Components (Optional)
   ===================================================================== */
/* These DM classes are namespaced with .dm- and can be omitted if not used */

.dm-serif { font-family: serif; }
.dm-table, .dm-table-all {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
  display: table;
}
.dm-table-all { border: 1px solid #ccc; }
.dm-bordered tr, .dm-table-all tr { border-bottom: 1px solid #ddd; }
.dm-striped tbody tr:nth-child(even) { background-color: #f1f1f1; }
.dm-hoverable tbody tr:hover, .dm-ul.dm-hoverable li:hover { background-color: #ccc; }
.dm-centered tr th, .dm-centered tr td { text-align: center; }
.dm-table td, .dm-table th, .dm-table-all td, .dm-table-all th {
  padding: 8px;
  text-align: left;
  vertical-align: top;
}
.dm-btn, .dm-button {
  border: none;
  display: inline-block;
  padding: 8px 16px;
  vertical-align: middle;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  background-color: inherit;
  text-align: center;
  cursor: pointer;
  white-space: nowrap;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.dm-btn:hover {
  box-shadow: 0 8px 16px 0 rgba(0,0,0,0.2),
              0 6px 20px 0 rgba(0,0,0,0.19);
}
.dm-disabled, .dm-btn:disabled, .dm-button:disabled {
  cursor: not-allowed;
  opacity: 0.3;
}
/* =====================================================================
   DM Utilities & Components
   ===================================================================== */
/* (These are additional helper classes and component styles.)
   Only include if your project uses them; they’re namespaced with .dm- */


.dm-serif { font-family: serif; }
.dm-wide { letter-spacing: 4px; }
hr { border: 0; border-top: 1px solid #eee; margin: 20px 0; }
.dm-image { max-width: 100%; height: auto; }

/* DM Table Classes */
.dm-table, .dm-table-all {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
  display: table;
}
.dm-table-all { border: 1px solid #ccc; }
.dm-bordered tr, .dm-table-all tr { border-bottom: 1px solid #ddd; }
.dm-striped tbody tr:nth-child(even) { background-color: #f1f1f1; }
.dm-table-all tr:nth-child(odd) { background-color: #fff; }
.dm-table-all tr:nth-child(even) { background-color: #f1f1f1; }
.dm-hoverable tbody tr:hover, .dm-ul.dm-hoverable li:hover { background-color: #ccc; }
.dm-centered tr th, .dm-centered tr td { text-align: center; }
.dm-table td, .dm-table th, .dm-table-all td, .dm-table-all th {
  padding: 8px;
  text-align: left;
  vertical-align: top;
}
.dm-table th:first-child, .dm-table td:first-child,
.dm-table-all th:first-child, .dm-table-all td:first-child {
  padding-left: 16px;
}

/* DM Button Classes */
.dm-btn, .dm-button {
  border: none;
  display: inline-block;
  padding: 8px 16px;
  vertical-align: middle;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
  background-color: inherit;
  text-align: center;
  cursor: pointer;
  white-space: nowrap;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.dm-btn:hover {
  box-shadow: 0 8px 16px 0 rgba(0,0,0,0.2),
              0 6px 20px 0 rgba(0,0,0,0.19);
}
.dm-disabled, .dm-btn:disabled, .dm-button:disabled {
  cursor: not-allowed;
  opacity: 0.3;
}
.dm-disabled * , :disabled * { pointer-events: none; }
.dm-btn.dm-disabled:hover, .dm-btn:disabled:hover { box-shadow: none; }

/* DM Badge & Tag */
.dm-badge, .dm-tag {
  background-color: #000;
  color: #fff;
  display: inline-block;
  padding: 0 8px;
  text-align: center;
}
.dm-badge { border-radius: 50%; }

/* DM UL List */
.dm-ul { list-style-type: none; padding: 0; margin: 0; }
.dm-ul li { padding: 8px 16px; border-bottom: 1px solid #ddd; }
.dm-ul li:last-child { border-bottom: none; }

/* DM Tooltip */
.dm-tooltip, .dm-display-container { position: relative; }
.dm-tooltip .dm-text { display: none; }
.dm-tooltip:hover .dm-text { display: inline-block; }

/* DM Ripple */
.dm-ripple { transition: opacity 0s; }
.dm-ripple:active { opacity: 0.5; }

/* DM Input & Select */
.dm-input {
  padding: 8px;
  display: block;
  border: none;
  border-bottom: 1px solid #ccc;
  width: 100%;
}
.dm-select {
  padding: 9px 0;
  width: 100%;
  border: none;
  border-bottom: 1px solid #ccc;
}

/* DM Dropdown */
.dm-dropdown-click, .dm-dropdown-hover {
  position: relative;
  display: inline-block;
  cursor: pointer;
}
.dm-dropdown-hover:hover .dm-dropdown-content { display: block; }
.dm-dropdown-hover:first-child, .dm-dropdown-click:hover {
  background-color: #ccc;
  color: #000;
}
.dm-dropdown-hover:hover > .dm-button:first-child, .dm-dropdown-click:hover > .dm-button:first-child {
  background-color: #ccc;
  color: #000;
}
.dm-dropdown-content {
  cursor: auto;
  color: #000;
  background-color: #fff;
  display: none;
  position: absolute;
  min-width: 160px;
  margin: 0;
  padding: 0;
  z-index: 1;
}

/* DM Sidebar */
.dm-sidebar {
  height: 100%;
  width: 200px;
  background-color: #fff;
  position: fixed !important;
  z-index: 1;
  overflow: auto;
}
.dm-bar-block .dm-dropdown-hover,
.dm-bar-block .dm-dropdown-click { width: 100%; }
.dm-bar-block .dm-dropdown-hover .dm-dropdown-content,
.dm-bar-block .dm-dropdown-click .dm-dropdown-content { min-width: 100%; }
.dm-bar-block .dm-dropdown-hover .dm-button,
.dm-bar-block .dm-dropdown-click .dm-button {
  width: 100%;
  text-align: left;
  padding: 8px 16px;
}

/* DM Main Content */
.dm-main, #main { transition: margin-left 0.4s; }

/* DM Modal */
.dm-modal {
  z-index: 3;
  display: none;
  padding-top: 100px;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0,0,0,0.4);
}
.dm-modal-content {
  margin: auto;
  background-color: #fff;
  position: relative;
  padding: 0;
  outline: 0;
  width: 600px;
}

/* DM Bar */
.dm-bar { width: 100%; overflow: hidden; }
.dm-bar .dm-bar-item {
  padding: 8px 16px;
  float: left;
  width: auto;
  border: none;
  display: block;
  outline: 0;
}
.dm-bar .dm-dropdown-hover,
.dm-bar .dm-dropdown-click { position: static; float: left; }
.dm-bar .dm-button { white-space: normal; }
.dm-bar-block .dm-bar-item {
  width: 100%;
  display: block;
  padding: 8px 16px;
  text-align: left;
  border: none;
  white-space: normal;
  float: none;
  outline: 0;
}
.dm-bar-block.dm-center .dm-bar-item { text-align: center; }
.dm-block { display: block; width: 100%; }

/* DM Responsive & Grid */
.dm-responsive { display: block; overflow-x: auto; }
.dm-container:after,
.dm-container:before,
.dm-panel:after,
.dm-panel:before,
.dm-row:after,
.dm-row:before,
.dm-row-padding:after,
.dm-row-padding:before,
.dm-cell-row:before,
.dm-cell-row:after,
.dm-clear:after,
.dm-clear:before,
.dm-bar:before,
.dm-bar:after {
  content: "";
  display: table;
  clear: both;
}
.dm-col, .dm-half, .dm-third, .dm-twothird, .dm-threequarter, .dm-quarter { float: left; width: 100%; }
.dm-col.s1 { width: 8.33333%; }
.dm-col.s2 { width: 16.66666%; }
.dm-col.s3 { width: 24.99999%; }
.dm-col.s4 { width: 33.33333%; }
.dm-col.s5 { width: 41.66666%; }
.dm-col.s6 { width: 49.99999%; }
.dm-col.s7 { width: 58.33333%; }
.dm-col.s8 { width: 66.66666%; }
.dm-col.s9 { width: 74.99999%; }
.dm-col.s10 { width: 83.33333%; }
.dm-col.s11 { width: 91.66666%; }
.dm-col.s12 { width: 99.99999%; }
@media (min-width: 601px) {
  .dm-col.m1 { width: 8.33333%; }
  .dm-col.m2 { width: 16.66666%; }
  .dm-col.m3, .dm-quarter { width: 24.99999%; }
  .dm-col.m4, .dm-third { width: 33.33333%; }
  .dm-col.m5 { width: 41.66666%; }
  .dm-col.m6, .dm-half { width: 49.99999%; }
  .dm-col.m7 { width: 58.33333%; }
  .dm-col.m8, .dm-twothird { width: 66.66666%; }
  .dm-col.m9, .dm-threequarter { width: 74.99999%; }
  .dm-col.m10 { width: 83.33333%; }
  .dm-col.m11 { width: 91.66666%; }
  .dm-col.m12 { width: 99.99999%; }
}
@media (min-width: 993px) {
  .dm-col.l1 { width: 8.33333%; }
  .dm-col.l2 { width: 16.66666%; }
  .dm-col.l3 { width: 24.99999%; }
  .dm-col.l4 { width: 33.33333%; }
  .dm-col.l5 { width: 41.66666%; }
  .dm-col.l6 { width: 49.99999%; }
  .dm-col.l7 { width: 58.33333%; }
  .dm-col.l8 { width: 66.66666%; }
  .dm-col.l9 { width: 74.99999%; }
  .dm-col.l10 { width: 83.33333%; }
  .dm-col.l11 { width: 91.66666%; }
  .dm-col.l12 { width: 99.99999%; }
}
.dm-rest { overflow: hidden; }
.dm-stretch { margin-left: -16px; margin-right: -16px; }
.dm-content, .dm-auto {
  margin-left: auto;
  margin-right: auto;
}
.dm-content { max-width: 980px; min-width: fit; }
.dm-auto { max-width: 1140px; }
.dm-cell-row { display: table; width: 100%; }
.dm-cell { display: table-cell; }
.dm-cell-top { vertical-align: top; }
.dm-cell-middle { vertical-align: middle; }
.dm-cell-bottom { vertical-align: bottom; }
.dm-hide { display: none !important; }
.dm-show-block, .dm-show { display: block !important; }
.dm-show-inline-block { display: inline-block !important; }
@media (max-width: 1205px) { .dm-auto { max-width: 99%; } }
@media (max-width: 600px) {
  .dm-modal-content { margin: 0 5px; width: auto !important; }
  .dm-modal { padding-top: 30px; }
  .dm-dropdown-hover.dm-mobile .dm-dropdown-content,
  .dm-dropdown-click.dm-mobile .dm-dropdown-content { position: relative; }
  .dm-hide-small { display: none !important; }
  .dm-mobile { display: block; width: 100% !important; }
  .dm-bar-item.dm-mobile,
  .dm-dropdown-hover.dm-mobile,
  .dm-dropdown-click.dm-mobile { text-align: center; }
  .dm-dropdown-hover.dm-mobile,
  .dm-dropdown-hover.dm-mobile .dm-btn,
  .dm-dropdown-hover.dm-mobile .dm-button,
  .dm-dropdown-click.dm-mobile,
  .dm-dropdown-click.dm-mobile .dm-btn,
  .dm-dropdown-click.dm-mobile .dm-button { width: 100%; }
}
@media (max-width: 768px) { .dm-modal-content { width: 500px; } .dm-modal { padding-top: 50px; } }
@media (min-width: 993px) {
  .dm-modal-content { width: 900px; }
  .dm-hide-large { display: none !important; }
  .dm-sidebar.dm-collapse { display: block !important; }
}
@media (max-width: 992px) and (min-width: 601px) { .dm-hide-medium { display: none !important; } }
@media (max-width: 992px) {
  .dm-sidebar.dm-collapse { display: none; }
  .dm-main { margin-left: 0 !important; margin-right: 0 !important; }
  .dm-auto { max-width: 100%; }
}
.dm-top, .dm-bottom {
  position: fixed;
  width: 100%;
  z-index: 1;
}
.dm-top { top: 0; }
.dm-bottom { bottom: 0; }
.dm-overlay {
  position: fixed;
  display: none;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0,0,0,0.5);
  z-index: 2;
}
.dm-display-topleft { position: absolute; left: 0; top: 0; }
.dm-display-topright { position: absolute; right: 0; top: 0; }
.dm-display-bottomleft { position: absolute; left: 0; bottom: 0; }
.dm-display-bottomright { position: absolute; right: 0; bottom: 0; }
.dm-display-middle {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
.dm-display-left {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
}
.dm-display-right {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
}
.dm-display-topmiddle {
  position: absolute;
  left: 50%;
  top: 0;
  transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
}
.dm-display-bottommiddle {
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
}
.dm-display-container:hover .dm-display-hover { display: block; }
.dm-display-container:hover span.dm-display-hover { display: inline-block; }
.dm-display-hover { display: none; }
.dm-display-position { position: absolute; }
.dm-circle { border-radius: 50%; }
.dm-round-small { border-radius: 2px; }
.dm-round, .dm-round-medium { border-radius: 4px; }
.dm-round-large { border-radius: 8px; }
.dm-round-xlarge { border-radius: 16px; }
.dm-round-xxlarge { border-radius: 32px; }
.dm-row-padding,
.dm-row-padding > .dm-half,
.dm-row-padding > .dm-third,
.dm-row-padding > .dm-twothird,
.dm-row-padding > .dm-threequarter,
.dm-row-padding > .dm-quarter,
.dm-row-padding > .dm-col { padding: 0 8px; }
.dm-container, .dm-panel { padding: 3px; }
.dm-panel { margin: 16px 0; }
.dm-code, .dm-codespan {
  font-family: Consolas, "courier new";
  font-size: 16px;
}
.dm-code {
  background-color: #fff;
  padding: 8px 12px;
  border-left: 4px solid #4CAF50;
  word-wrap: break-word;
}
.dm-codespan {
  color: crimson;
  background-color: #f1f1f1;
  padding: 0 4px;
  font-size: 110%;
}
.dm-card, .dm-card-2 {
  box-shadow: 0 2px 5px 0 rgba(0,0,0,0.16),
              0 2px 10px 0 rgba(0,0,0,0.12);
}
.dm-card-4, .dm-hover-shadow:hover {
  box-shadow: 0 4px 10px 0 rgba(0,0,0,0.2),
              0 4px 20px 0 rgba(0,0,0,0.19);
}
.dm-spin { animation: w3-spin 2s infinite linear; }
@keyframes w3-spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(359deg); } }
.dm-animate-fading { animation: fading 10s infinite; }
@keyframes fading { 0% { opacity: 0; } 50% { opacity: 1; } 100% { opacity: 0; } }
.dm-animate-opacity { animation: opac 3s; }
@keyframes opac { from { opacity: 0; } to { opacity: 1; } }
.dm-animate-top { position: relative; animation: animatetop 2.4s; }
@keyframes animatetop { from { top: -300px; opacity: 0; } to { top: 0; opacity: 1; } }
.dm-animate-left { position: relative; animation: animateleft 2.4s; }
@keyframes animateleft { from { left: -300px; opacity: 0; } to { left: 0; opacity: 1; } }
.dm-animate-right { position: relative; animation: animateright 2.4s; }
@keyframes animateright { from { right: -300px; opacity: 0; } to { right: 0; opacity: 1; } }
.dm-animate-bottom { position: relative; animation: animatebottom 2.4s; }
@keyframes animatebottom { from { bottom: -300px; opacity: 0; } to { bottom: 0; opacity: 1; } }
.dm-animate-zoom { animation: animatezoom 2.6s; }
@keyframes animatezoom { from { transform: scale(0); } to { transform: scale(1); } }
.dm-animate-input { transition: width 2.4s ease-in-out; }
.dm-animate-input:focus { width: 100% !important; }
.dm-opacity, .dm-hover-opacity:hover { opacity: 0.6; }
.dm-opacity-off, .dm-hover-opacity-off:hover { opacity: 1; }
.dm-opacity-max { opacity: 0.25; }
.dm-opacity-min { opacity: 0.75; }
.dm-greyscale-max, .dm-grayscale-max, .dm-hover-greyscale:hover, .dm-hover-grayscale:hover { filter: grayscale(100%); }
.dm-greyscale, .dm-grayscale { filter: grayscale(75%); }
.dm-greyscale-min, .dm-grayscale-min { filter: grayscale(50%); }
.dm-sepia { filter: sepia(75%); }
.dm-sepia-max, .dm-hover-sepia:hover { filter: sepia(100%); }
.dm-sepia-min { filter: sepia(50%); }
.dm-tiny { font-size: 10px !important; }
.dm-small { font-size: 12px !important; }
.dm-medium { font-size: 15px !important; }
.dm-large { font-size: 18px !important; }
.dm-xlarge { font-size: 1em; }
.dm-xxlarge { font-size: 2.6em; }
.dm-xxxlarge { font-size: 3.8em; }
.dm-jumbo { font-size: 4.4em; }
.dm-left-align { text-align: left !important; }
.dm-right-align { text-align: right !important; }
.dm-justify { text-align: justify !important; }
.dm-center { text-align: center !important; }
.dm-border-0 { border: 0 !important; }
.dm-border { border: 1px solid #ccc !important; }
.dm-border-top { border-top: 1px solid #ccc !important; }
.dm-border-bottom { border-bottom: 1px solid #ccc !important; }
.dm-border-left { border-left: 1px solid #ccc !important; }
.dm-border-right { border-right: 1px solid #ccc !important; }
.dm-topbar { border-top: 6px solid #ccc !important; }
.dm-bottombar { border-bottom: 6px solid #ccc !important; }
.dm-leftbar { border-left: 6px solid #ccc !important; }
.dm-rightbar { border-right: 6px solid #ccc !important; }
.dm-section, .dm-code { margin: 16px 0 !important; }
.dm-margin { margin: 16px !important; }
.dm-margin-top { margin-top: 16px !important; }
.dm-margin-bottom { margin-bottom: 16px !important; }
.dm-margin-left { margin-left: 16px !important; }
.dm-margin-right { margin-right: 16px !important; }
.dm-padding-small { padding: 4px 8px !important; }
.dm-padding { padding: 8px 16px !important; }
.dm-padding-large { padding: 12px 24px !important; }
.dm-padding-16 { padding-top: 16px !important; padding-bottom: 16px !important; }
.dm-padding-24 { padding-top: 24px !important; padding-bottom: 24px !important; }
.dm-padding-32 { padding-top: 32px !important; padding-bottom: 32px !important; }
.dm-padding-48 { padding-top: 48px !important; padding-bottom: 48px !important; }
.dm-padding-64 { padding-top: 64px !important; padding-bottom: 64px !important; }
.dm-left { float: left !important; }
.dm-right { float: right !important; }
.dm-button:hover { color: #000 !important; background-color: #ccc !important; }
.dm-transparent, .dm-hover-none:hover { background-color: transparent !important; }
.dm-hover-none:hover { box-shadow: none !important; }

/* DM Colour Utilities (examples; extend as needed) */
.dm-amber, .dm-hover-amber:hover { color: #000 !important; background-color: #ffc107 !important; }
.dm-aqua, .dm-hover-aqua:hover { color: #000 !important; background-color: #00ffff !important; }
.dm-blue, .dm-hover-blue:hover { color: #fff !important; background-color: #2196F3 !important; }
.dm-light-blue, .dm-hover-light-blue:hover { color: #000 !important; background-color: #87CEEB !important; }
.dm-brown, .dm-hover-brown:hover { color: #fff !important; background-color: #795548 !important; }
.dm-cyan, .dm-hover-cyan:hover { color: #000 !important; background-color: #00bcd4 !important; }
.dm-blue-grey, .dm-hover-blue-grey:hover,
.dm-blue-gray, .dm-hover-blue-gray:hover { color: #fff !important; background-color: #607d8b !important; }
.dm-green, .dm-hover-green:hover { color: #fff !important; background-color: #4CAF50 !important; }
.dm-light-green, .dm-hover-light-green:hover { color: #000 !important; background-color: #8bc34a !important; }
.dm-indigo, .dm-hover-indigo:hover { color: #fff !important; background-color: #3f51b5 !important; }
.dm-khaki, .dm-hover-khaki:hover { color: #000 !important; background-color: #f0e68c !important; }
.dm-lime, .dm-hover-lime:hover { color: #000 !important; background-color: #cddc39 !important; }
.dm-orange, .dm-hover-orange:hover { color: #000 !important; background-color: #ff9800 !important; }
.dm-deep-orange, .dm-hover-deep-orange:hover { color: #fff !important; background-color: #ff5722 !important; }
.dm-pink, .dm-hover-pink:hover { color: #fff !important; background-color: #e91e63 !important; }
.dm-purple, .dm-hover-purple:hover { color: #fff !important; background-color: #9c27b0 !important; }
.dm-deep-purple, .dm-hover-deep-purple:hover { color: #fff !important; background-color: #673ab7 !important; }
.dm-red, .dm-hover-red:hover { color: #fff !important; background-color: #f44336 !important; }
.dm-sand, .dm-hover-sand:hover { color: #000 !important; background-color: #fdf5e6 !important; }
.dm-teal, .dm-hover-teal:hover { color: #fff !important; background-color: #009688 !important; }
.dm-yellow, .dm-hover-yellow:hover { color: #000 !important; background-color: #ffeb3b !important; }
.dm-white, .dm-hover-white:hover { color: #000 !important; background-color: #fff !important; }
.dm-black, .dm-hover-black:hover { color: #fff !important; background-color: #000 !important; }
.dm-grey, .dm-hover-grey:hover,
.dm-gray, .dm-hover-gray:hover { color: #000 !important; background-color: #9e9e9e !important; }
.dm-light-grey, .dm-hover-light-grey:hover,
.dm-light-gray, .dm-hover-light-gray:hover { color: #000 !important; background-color: #f1f1f1 !important; }
.dm-dark-grey, .dm-hover-dark-grey:hover,
.dm-dark-gray, .dm-hover-dark-gray:hover { color: #fff !important; background-color: #616161 !important; }
.dm-pale-red, .dm-hover-pale-red:hover { color: #000 !important; background-color: #ffdddd !important; }
.dm-pale-green, .dm-hover-pale-green:hover { color: #000 !important; background-color: #ddffdd !important; }
.dm-pale-yellow, .dm-hover-pale-yellow:hover { color: #000 !important; background-color: #ffffcc !important; }
.dm-pale-blue, .dm-hover-pale-blue:hover { color: #000 !important; background-color: #ddffff !important; }
.dm-text-amber, .dm-hover-text-amber:hover { color: #ffc107 !important; }
.dm-text-aqua, .dm-hover-text-aqua:hover { color: #00ffff !important; }
.dm-text-blue, .dm-hover-text-blue:hover { color: #2196F3 !important; }
.dm-text-light-blue, .dm-hover-text-light-blue:hover { color: #87CEEB !important; }
.dm-text-brown, .dm-hover-text-brown:hover { color: #795548 !important; }
.dm-text-cyan, .dm-hover-text-cyan:hover { color: #00bcd4 !important; }
.dm-text-blue-grey, .dm-hover-text-blue-grey:hover,
.dm-text-blue-gray, .dm-hover-text-blue-gray:hover { color: #607d8b !important; }
.dm-text-green, .dm-hover-text-green:hover { color: #4CAF50 !important; }
.dm-text-light-green, .dm-hover-text-light-green:hover { color: #8bc34a !important; }
.dm-text-indigo, .dm-hover-text-indigo:hover { color: #3f51b5 !important; }
.dm-text-khaki, .dm-hover-text-khaki:hover { color: #b4aa50 !important; }
.dm-text-lime, .dm-hover-text-lime:hover { color: #cddc39 !important; }
.dm-text-orange, .dm-hover-text-orange:hover { color: #ff9800 !important; }
.dm-text-deep-orange, .dm-hover-text-deep-orange:hover { color: #ff5722 !important; }
.dm-text-pink, .dm-hover-text-pink:hover { color: #e91e63 !important; }
.dm-text-purple, .dm-hover-text-purple:hover { color: #9c27b0 !important; }
.dm-text-deep-purple, .dm-hover-text-deep-purple:hover { color: #673ab7 !important; }
.dm-text-red, .dm-hover-text-red:hover { color: #f44336 !important; }
.dm-text-sand, .dm-hover-text-sand:hover { color: #fdf5e6 !important; }
.dm-text-teal, .dm-hover-text-teal:hover { color: #009688 !important; }
.dm-text-yellow, .dm-hover-text-yellow:hover { color: #d2be0e !important; }
.dm-text-white, .dm-hover-text-white:hover { color: #fff !important; }
.dm-text-black, .dm-hover-text-black:hover { color: #000 !important; }
.dm-text-grey, .dm-hover-text-grey:hover,
.dm-text-gray, .dm-hover-text-gray:hover { color: #757575 !important; }
.dm-text-light-grey, .dm-hover-text-light-grey:hover,
.dm-text-light-gray, .dm-hover-text-light-gray:hover { color: #f1f1f1 !important; }
.dm-text-dark-grey, .dm-hover-text-dark-grey:hover,
.dm-text-dark-gray, .dm-hover-text-dark-gray:hover { color: #3a3a3a !important; }
.dm-border-amber, .dm-hover-border-amber:hover { border-color: #ffc107 !important; }
.dm-border-aqua, .dm-hover-border-aqua:hover { border-color: #00ffff !important; }
.dm-border-blue, .dm-hover-border-blue:hover { border-color: #2196F3 !important; }
.dm-border-light-blue, .dm-hover-border-light-blue:hover { border-color: #87CEEB !important; }
.dm-border-brown, .dm-hover-border-brown:hover { border-color: #795548 !important; }
.dm-border-cyan, .dm-hover-border-cyan:hover { border-color: #00bcd4 !important; }
.dm-border-blue-grey, .dm-hover-border-blue-grey:hover,
.dm-border-blue-gray, .dm-hover-border-blue-gray:hover { border-color: #607d8b !important; }
.dm-border-green, .dm-hover-border-green:hover { border-color: #4CAF50 !important; }
.dm-border-light-green, .dm-hover-border-light-green:hover { border-color: #8bc34a !important; }
.dm-border-indigo, .dm-hover-border-indigo:hover { border-color: #3f51b5 !important; }
.dm-border-khaki, .dm-hover-border-khaki:hover { border-color: #f0e68c !important; }
.dm-border-lime, .dm-hover-border-lime:hover { border-color: #cddc39 !important; }
.dm-border-orange, .dm-hover-border-orange:hover { border-color: #ff9800 !important; }
.dm-border-deep-orange, .dm-hover-border-deep-orange:hover { border-color: #ff5722 !important; }
.dm-border-pink, .dm-hover-border-pink:hover { border-color: #e91e63 !important; }
.dm-border-purple, .dm-hover-border-purple:hover { border-color: #9c27b0 !important; }
.dm-border-deep-purple, .dm-hover-border-deep-purple:hover { border-color: #673ab7 !important; }
.dm-border-red, .dm-hover-border-red:hover { border-color: #f44336 !important; }
.dm-border-sand, .dm-hover-border-sand:hover { border-color: #fdf5e6 !important; }
.dm-border-teal, .dm-hover-border-teal:hover { border-color: #009688 !important; }
.dm-border-yellow, .dm-hover-border-yellow:hover { border-color: #ffeb3b !important; }
.dm-border-white, .dm-hover-border-white:hover { border-color: #fff !important; }
.dm-border-black, .dm-hover-border-black:hover { border-color: #000 !important; }
.dm-border-grey, .dm-hover-border-grey:hover,
.dm-border-gray, .dm-hover-border-gray:hover { border-color: #9e9e9e !important; }
.dm-border-light-grey, .dm-hover-border-light-grey:hover,
.dm-border-light-gray, .dm-hover-border-light-gray:hover { border-color: #f1f1f1 !important; }
.dm-border-dark-grey, .dm-hover-border-dark-grey:hover,
.dm-border-dark-gray, .dm-hover-border-dark-gray:hover { border-color: #616161 !important; }
.dm-border-pale-red, .dm-hover-border-pale-red:hover { border-color: #ffe7e7 !important; }
.dm-border-pale-green, .dm-hover-border-pale-green:hover { border-color: #e7ffe7 !important; }
.dm-border-pale-yellow, .dm-hover-border-pale-yellow:hover { border-color: #ffffcc !important; }
.dm-border-pale-blue, .dm-hover-border-pale-blue:hover { border-color: #e7ffff !important; }



