/* DARK MODE GLOBAL STYLING FOR MINDFUL MAGE COUNSELLING */

/* Apply to entire body of website */
body {
  font-family: Georgia, serif;
  font-size: 18px;
  line-height: 1.7;
  color: #e0e0e0;
  background-color: #111;
  padding: 40px 20px;
}

/* Headings across site */
h1, h2, h3, h4, h5, h6 {
  font-family: Georgia, serif;
  font-weight: bold;
  margin-top: 40px;
  margin-bottom: 20px;
  line-height: 1.3;
  color: #ffffff;               /* Bright white for headings */
}

/* Tighter spacing for H2 after H1 */
h1 + h2 {
  margin-top: 20px;             /* Reduced from 40px to 20px */
}

/* Tighter spacing for H3 after H2 */
h2 + h3 {
  margin-top: 25px;             /* Slightly tighter than default */
}

/* Tighter spacing for H3 after paragraphs */
p + h3 {
  margin-top: 15px;             /* Reduced spacing between paragraphs and H3 */
}

/* Paragraphs */
p {
  margin-bottom: 20px;
}

/* Lists */
ul, ol {
  margin-left: 40px;
  margin-bottom: 20px;
  line-height: 1.6;
}

/* Tighter spacing for lists after headings */
h3 + ul, h3 + ol {
  margin-top: 10px;             /* Reduced spacing between H3 and lists */
}

/* Blockquotes */
blockquote {
  border-left: 4px solid #555;  /* Softer grey than text */
  padding-left: 20px;
  font-style: italic;
  color: #aaa;                  /* Muted grey */
  margin: 30px 0;
}

/* Hyperlinks */
a {
  color: #66ccff;               /* Soft blue */
  text-decoration: underline;
  transition: color 0.2s ease;   /* Smooth color transition */
}

a:hover {
  color: #99ddff;               /* Lighter blue on hover */
}

a:focus {
  outline: 2px solid #66ccff;   /* Focus indicator for accessibility */
  outline-offset: 2px;
}

/* Images */
img {
  max-width: 100%;
  height: auto;
  margin: 20px 0;
  display: block;
  border-radius: 4px;           /* Optional: soften corners */
}

/* Form elements */
input, textarea, select, button {
  font-family: Georgia, serif;
  font-size: 16px;
  padding: 8px 12px;
  border: 1px solid #555;
  border-radius: 4px;
  background-color: #222;
  color: #e0e0e0;
}

input:focus, textarea:focus, select:focus {
  outline: 2px solid #66ccff;
  outline-offset: 2px;
  border-color: #66ccff;
}

/* Code blocks */
code {
  background-color: #222;
  padding: 2px 6px;
  border-radius: 3px;
  font-family: 'Courier New', monospace;
  color: #ffcc66;
}

pre {
  background-color: #222;
  padding: 20px;
  border-radius: 4px;
  overflow-x: auto;
  margin: 20px 0;
}

pre code {
  background: none;
  padding: 0;
}

/* Tables */
table {
  width: 100%;
  border-collapse: collapse;
  margin: 20px 0;
}

th, td {
  padding: 12px;
  text-align: left;
  border-bottom: 1px solid #555;
}

th {
  background-color: #222;
  color: #ffffff;
  font-weight: bold;
}

/* === FOOTER ENHANCEMENTS === */

        /* General footer text and layout */
        footer,
        .subfooter {
            background-color: #111;
            color: #e0e0e0;
            font-size: 12px;
            line-height: 1.6;
            padding-top: 30px;
            padding-bottom: 30px;
        }

        /* Footer quote styling */
        .footer-quote {
            font-style: italic;
            font-size: 14px;
            color: #cccccc;
            margin-top: 20px;
            text-align: center;
        }

        /* Land Acknowledgement & Disclaimer */
        .footer-disclaimer,
        .footer-acknowledgement {
            font-size: 12px;
            color: #bbbbbb;
            margin-top: 20px;
            line-height: 1.5;
        }

        /* Small footer links (e.g., Terms and Privacy) */
        .footer-links a {
            color: #66ccff;
            font-size: 12px;
            margin-right: 15px;
            text-decoration: underline;
        }

.footer-links a:hover {
  color: #99ddff;
}

/* Back to Top button */
#back-to-top {
  position: fixed;
  bottom: 40px;
  right: 30px;
  background-color: #222;
  color: #fff;
  padding: 10px 15px;
  font-size: 14px;
  border-radius: 5px;
  border: none;
  cursor: pointer;
  opacity: 0.8;
  z-index: 1000;
  transition: opacity 0.3s ease, background-color 0.3s ease;
}

#back-to-top:hover {
  opacity: 1;
  background-color: #333;
}

/* Social icons styling */
.social-icons a {
  color: #66ccff;
  font-size: 18px;
  margin-left: 15px;
  transition: color 0.3s ease;
}

.social-icons a:hover {
  color: #99ddff;
}

/* Responsive adjustments */
@media (max-width: 768px) {
  body {
    padding: 20px 15px;
    font-size: 16px;
  }
  
  ul, ol {
    margin-left: 20px;
  }
  
  blockquote {
    padding-left: 15px;
  }

  .subfooter {
    text-align: center;
  }
  
  .col-md-6.text-right {
    text-align: center !important;
    margin-top: 20px;
  }
  
  .social-icons {
    margin-top: 15px;
  }
  
  .social-icons a {
    margin: 0 10px;
  }
  
  .footer-quote {
    font-size: 14px;
  }
  
  .footer-disclaimer,
  .footer-acknowledgement {
    font-size: 12px;
  }
  
  #back-to-top {
    bottom: 20px;
    right: 20px;
    padding: 8px 12px;
    font-size: 12px;
  }
}

.main-content {
  max-width: 800px;
  margin: 0 auto;
  background: transparent;
  padding: 40px 20px;
}

/* Copyright text styling */
.copyright-text {
  color: #d8b4fe; /* Light purple color */
}
