﻿
/* Core Page Setup */
body { font-family: 'Open Sans', sans-serif; font-size: 18px; line-height: 1.8em; margin: 0 auto; background-color: #fff; color: #444; -webkit-font-smoothing: antialiased; }

/* Typography - Lora for Clinical Authority, Raleway for Modern Accents */
h1, h2, h3, .h2 { margin: 0 auto; text-align: center; color: #1a1a1a; font-weight: 400; line-height: 1.3em; letter-spacing: -0.5px; }
h1 { font-family: 'Lora', serif; font-size: 36px; padding: 0 0 15px 0; }
h2, .h2 { font-family: 'Lora', serif; font-size: 28px; padding: 10px 0 5px 0; border-left: none; }
h3 { font-family: 'Raleway', sans-serif; font-size: 22px; padding: 5px 0 5px 0; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; }

/* Paragraph & Text Handling */
p { margin: 0 0 1.2em 0; text-rendering: optimizeLegibility; font-family: 'Open Sans', sans-serif; }
p strong { font-weight: 700; color: #1a1a1a; }
blockquote { margin: 40px 0; padding: 30px; background-color: #f9f9f9; text-align: center; border: none; }
blockquote p { font-family: 'Lora', serif; font-size: 1.3rem; font-style: italic; color: #1a1a1a; }

/* Common Components */
.article { margin: 40px auto; max-width: 850px; padding: 0 20px; text-align: left; }
.divider { border-top: 2px solid #edbb5f; width: 60px; margin: 0 auto; margin-bottom: 20px; }
.author { font-family: 'Raleway', sans-serif; font-size: 18px; font-weight: 600; color: #5a7d9a; }

/* Global Link Style */
a { color: #3d5a80; text-decoration: none; transition: color 0.3s ease; }
a:hover { color: #1a1a1a; }

/* Specialty & Resource Lists */
.specialty-list { list-style: none; padding: 0; margin: 20px 0; }
.specialty-list li { padding-left: 25px; position: relative; margin-bottom: 12px; line-height: 1.6; }
.specialty-list li::before { content: "•"; color: #edbb5f; font-weight: bold; position: absolute; left: 0; font-size: 1.2em; }
.resource-library { margin-top: 40px; padding-top: 20px; border-top: 1px solid #eee; }
.links { list-style: none; padding: 0; margin: 20px 0; }
.links li { display: flex; align-items: flex-start; margin-bottom: 1.2em; }
.links li::before { content: "◉"; color: #edbb5f; font-size: 0.8em; margin-right: 12px; line-height: 1.6; flex-shrink: 0; }
.links a { color: #336B9E; text-decoration: none; line-height: 1.5; font-size: 1.05em; transition: all 0.3s ease; }
.links a strong { color: #1a1a1a; }
.links a:hover { color: #edbb5f; text-decoration: none; padding-left: 5px; }

/* Featured Link Styling */
.featured-resource { margin-top: 35px; }
.featured-resource { margin-right: 15px; }
.featured-resource { margin-left: 15px; }
.featured-resource { padding: 30px 20px; }
.featured-resource { background-color: #fcfcfc; }
.featured-resource { border: 1px solid #eee; }
.featured-resource { border-left: 6px solid #edbb5f; }
.featured-resource { text-align: center; }
.featured-resource { box-sizing: border-box; }

.featured-resource a { font-family: 'Lora', serif; }
.featured-resource a { font-size: 1.15rem; }
.featured-resource a { font-weight: 600; }
.featured-resource a { color: #1a1a1a; }
.featured-resource a { text-decoration: none; }
.featured-resource a { display: block; }
.featured-resource a { line-height: 1.4; }
.featured-resource a { transition: color 0.3s ease; }
.featured-resource a:hover { color: #edbb5f; }


.article-links-container h3 { margin-top: 30px; }
.article-links-container h3 { color: #003366; }
.article-links-container h3 { font-size: 1.2rem; }
.article-links-container h3 { border-bottom: 1px solid #eeeeee; }
.article-links-container h3 { padding-bottom: 8px; }


/* Form Field Styling */
.form_field_label { font-size: 16px; font-weight: 700; display: block; padding-bottom: 4px; color: #444; }
.form_field_data { font-family: 'Open Sans', sans-serif; font-size: 15px; padding: 8px 12px; box-sizing: border-box; border: 1px solid #d1d9e0; border-radius: 3px; background-color: #fafafa; }
.passphrase { width: 80px; }

/* Form Error & Validation */
.form_field_required_error_msg { color: red; font-weight: normal; }
.form_asterisk { color: red; font-weight: bold; }
.form_field_error { border: 2px solid red; }
img.edible { margin-top: -5px; margin-left: -3px; }

/* Responsive Adjustments */
@media (max-width: 768px) {
  h1 { font-size: 30px; }
  .article { margin: 20px auto; }
}

/* Global Button Style (Moved from Footer) */
.btn-outline { display: inline-block; padding: 15px 40px; border: 1px solid #1a1a1a; color: #1a1a1a !important; text-decoration: none; font-family: 'Raleway', sans-serif; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; font-size: 0.8rem; transition: all 0.3s ease; background: transparent; cursor: pointer; }
.btn-outline:hover { background-color: #1a1a1a; color: #fff !important; }

/* The Call to action Container */
/* Master CSS - Clean Page-End CTA */
.cta-box { text-align: center; margin: 80px auto; padding: 60px 0; border-top: 1px solid #eee; max-width: 800px; }
.cta-box p { font-family: 'Lora', serif; font-size: 1.4rem; color: #1a1a1a; margin-bottom: 30px; font-style: italic; }
.btn-outline { display: inline-block; padding: 15px 40px; border: 1px solid #1a1a1a; color: #1a1a1a !important; text-decoration: none; font-family: 'Raleway', sans-serif; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; font-size: 0.8rem; transition: all 0.3s ease; }
.btn-outline:hover { background-color: #1a1a1a; color: #fff !important; }
