/**
 * Content Styles
 * 
 * Typography and spacing for WordPress content area
 * Uses ACSS variables for consistency
 * Applies to .sermon-content__body and other content wrappers
 * 
 * @package Revival
 */

/* ==========================================================================
   Content Container
   ========================================================================== */

   .sermon-content__body,
   .entry-content {
       font-family: var(--text-font-family);
       font-size: var(--text-m);
       line-height: var(--text-line-height);
       color: var(--text-color);
   }
   
   /* ==========================================================================
      Typography Elements
      ========================================================================== */
   
   /* Headings */
   .sermon-content__body h1,
   .sermon-content__body h2,
   .sermon-content__body h3,
   .sermon-content__body h4,
   .sermon-content__body h5,
   .sermon-content__body h6,
   .entry-content h1,
   .entry-content h2,
   .entry-content h3,
   .entry-content h4,
   .entry-content h5,
   .entry-content h6 {
       font-family: var(--heading-font-family);
       font-weight: var(--heading-font-weight);
       line-height: var(--heading-line-height);
       margin-block-start: var(--heading-spacing);
       margin-block-end: var(--space-m);
       color: var(--text-color);
   }
   
   .sermon-content__body h1,
   .entry-content h1 {
       font-size: var(--h1);
   }
   
   .sermon-content__body h2,
   .entry-content h2 {
       font-size: var(--h2);
   }
   
   .sermon-content__body h3,
   .entry-content h3 {
       font-size: var(--h3);
   }
   
   .sermon-content__body h4,
   .entry-content h4 {
       font-size: var(--h4);
   }
   
   .sermon-content__body h5,
   .entry-content h5 {
       font-size: var(--h5);
   }
   
   .sermon-content__body h6,
   .entry-content h6 {
       font-size: var(--h6);
   }
   
   /* First heading has no top margin */
   .sermon-content__body > h1:first-child,
   .sermon-content__body > h2:first-child,
   .sermon-content__body > h3:first-child,
   .sermon-content__body > h4:first-child,
   .sermon-content__body > h5:first-child,
   .sermon-content__body > h6:first-child,
   .entry-content > h1:first-child,
   .entry-content > h2:first-child,
   .entry-content > h3:first-child,
   .entry-content > h4:first-child,
   .entry-content > h5:first-child,
   .entry-content > h6:first-child {
       margin-block-start: 0;
   }
   
   /* Paragraphs */
   .sermon-content__body p,
   .entry-content p,
   .single-layout__content p {
       margin-block-start: 0;
       margin-block-end: var(--paragraph-spacing);
   }
   
   .sermon-content__body p:last-child,
   .entry-content p:last-child {
       margin-block-end: 0;
   }
   
   /* Links */
   .sermon-content__body a,
   .entry-content a {
       color: var(--link-color);
       text-decoration: var(--link-decoration);
       text-underline-offset: var(--link-underline-offset);
       transition: var(--link-transition);
   }
   
   .sermon-content__body a:hover,
   .entry-content a:hover {
       color: var(--link-color-hover);
       text-decoration: var(--link-decoration-hover);
   }
   
   /* Strong/Bold */
   .sermon-content__body strong,
   .sermon-content__body b,
   .entry-content strong,
   .entry-content b {
       font-weight: 700;
   }
   
   /* Emphasis/Italic */
   .sermon-content__body em,
   .sermon-content__body i,
   .entry-content em,
   .entry-content i {
       font-style: italic;
   }
   
   /* ==========================================================================
      Lists
      ========================================================================== */
   
   .sermon-content__body ul,
   .sermon-content__body ol,
   .entry-content ul,
   .entry-content ol {
       margin-block-start: 0;
       margin-block-end: var(--list-spacing);
       padding-inline-start: var(--list-indent-spacing);
   }
   
   .sermon-content__body ul,
   .entry-content ul {
       list-style-type: disc;
   }
   
   .sermon-content__body ol,
   .entry-content ol {
       list-style-type: decimal;
   }
   
   .sermon-content__body li,
   .entry-content li {
       margin-block-end: var(--list-item-spacing);
   }
   
   .sermon-content__body li:last-child,
   .entry-content li:last-child {
       margin-block-end: 0;
   }
   
   /* Nested lists */
   .sermon-content__body ul ul,
   .sermon-content__body ol ul,
   .entry-content ul ul,
   .entry-content ol ul {
       list-style-type: circle;
       margin-block-start: var(--list-item-spacing);
       padding-inline-start: var(--nested-list-indent-spacing);
   }
   
   .sermon-content__body ul ol,
   .sermon-content__body ol ol,
   .entry-content ul ol,
   .entry-content ol ol {
       margin-block-start: var(--list-item-spacing);
       padding-inline-start: var(--nested-list-indent-spacing);
   }
   
   /* ==========================================================================
      Blockquotes
      ========================================================================== */
   
   .sermon-content__body blockquote,
   .entry-content blockquote {
       margin-block-start: var(--blockquote-spacing);
       margin-block-end: var(--blockquote-spacing);
       margin-inline: 0;
       padding-inline-start: var(--space-l);
       padding-block: var(--space-s);
       border-inline-start: 4px solid var(--link-color);
       background: var(--bg-ultra-light-text);
       font-style: italic;
       color: var(--text-color);
       opacity: 0.9;
   }
   
   .sermon-content__body blockquote p:last-child,
   .entry-content blockquote p:last-child {
       margin-block-end: 0;
   }
   
   .sermon-content__body blockquote cite,
   .entry-content blockquote cite {
       display: block;
       margin-block-start: var(--space-s);
       font-size: var(--text-s);
       font-style: normal;
       opacity: 0.8;
   }
   
   /* ==========================================================================
      Code
      ========================================================================== */
   
   .sermon-content__body code,
   .entry-content code {
       padding: 0.125em 0.25em;
       background: var(--bg-ultra-light-text);
       border-radius: var(--radius-xs);
       font-family: 'Courier New', monospace;
       font-size: 0.9em;
   }
   
   .sermon-content__body pre,
   .entry-content pre {
       margin-block-start: var(--space-l);
       margin-block-end: var(--space-l);
       padding: var(--space-m);
       background: var(--bg-ultra-light-text);
       border-radius: var(--radius);
       overflow-x: auto;
   }
   
   .sermon-content__body pre code,
   .entry-content pre code {
       padding: 0;
       background: none;
       border-radius: 0;
   }
   
   /* ==========================================================================
      Horizontal Rule
      ========================================================================== */
   
   .sermon-content__body hr,
   .entry-content hr {
       margin-block: var(--space-xl);
       border: none;
       border-block-start: var(--divider-light);
   }
   
   /* ==========================================================================
      Images & Figures
      ========================================================================== */
   
   .sermon-content__body img,
   .entry-content img {
       max-width: 100%;
       height: auto;
       display: block;
       margin-block: var(--space-l);
       border-radius: var(--radius);
   }
   
   .sermon-content__body figure,
   .entry-content figure {
       margin-block: var(--figure-spacing);
       margin-inline: 0;
   }
   
   .sermon-content__body figcaption,
   .entry-content figcaption {
       margin-block-start: var(--figcaption-spacing);
       font-size: var(--text-s);
       color: var(--text-color);
       opacity: 0.7;
       text-align: center;
       font-style: italic;
   }
   
   /* WordPress alignment classes */
   .sermon-content__body .alignleft,
   .entry-content .alignleft {
       float: left;
       margin-inline-end: var(--space-m);
       margin-block-end: var(--space-m);
   }
   
   .sermon-content__body .alignright,
   .entry-content .alignright {
       float: right;
       margin-inline-start: var(--space-m);
       margin-block-end: var(--space-m);
   }
   
   .sermon-content__body .aligncenter,
   .entry-content .aligncenter {
       display: block;
       margin-inline: auto;
   }
   
   /* ==========================================================================
      Tables
      ========================================================================== */
   
   .sermon-content__body table,
   .entry-content table {
       width: 100%;
       margin-block: var(--space-l);
       border-collapse: collapse;
   }
   
   .sermon-content__body th,
   .sermon-content__body td,
   .entry-content th,
   .entry-content td {
       padding: var(--space-s);
       border: var(--border-light);
       text-align: left;
   }
   
   .sermon-content__body th,
   .entry-content th {
       background: var(--bg-ultra-light-text);
       font-weight: 700;
   }
   
   /* ==========================================================================
      WordPress Embeds
      ========================================================================== */
   
   .sermon-content__body iframe,
   .sermon-content__body embed,
   .sermon-content__body object,
   .entry-content iframe,
   .entry-content embed,
   .entry-content object {
       max-width: 100%;
       margin-block: var(--space-l);
   }
   
   .sermon-content__body .wp-block-embed,
   .entry-content .wp-block-embed {
       margin-block: var(--space-l);
   }