/* File: assets/css/story.css
   Styles for the Divine Mercy story page */

/* Story Header */
.story-header { padding: 3rem 1rem; background-color: #dd3333; color: white; text-align: center; }
.story-header h1 { color: white; font-size: 2.2rem; margin-bottom: 1rem; }
.story-intro { font-size: 1.1rem; max-width: 800px; margin: 0 auto; line-height: 1.6; }

/* Story Content Sections */
.faustina-section, .image-section, .message-section, .spread-section, .pope-section, .further-learning { padding: 3rem 1rem; }
.faustina-section, .image-section, .pope-section { background-color: #fff; }
.message-section, .spread-section, .further-learning { background-color: #f8f8f8; }

/* Story Content Layout */
.story-content { max-width: 1000px; margin: 0 auto; display: flex; flex-direction: column; }
.story-image { margin-bottom: 2rem; text-align: center; }
.story-image img { max-width: 100%; height: auto; border-radius: 8px; box-shadow: 0 3px 15px rgba(0,0,0,0.1); max-height: 500px; }
.image-caption { font-size: 0.9rem; color: #666; margin-top: 0.5rem; font-style: italic; }
.story-text { line-height: 1.7; }
.story-text p { margin-bottom: 1.2rem; }
.story-text h2 { color: #dd3333; margin-bottom: 1.2rem; }

/* Message Highlights */
.message-highlights { display: flex; flex-direction: column; gap: 1.5rem; margin-top: 2rem; }
.highlight-item { background-color: #fff; padding: 1.5rem; border-radius: 8px; box-shadow: 0 3px 10px rgba(0,0,0,0.05); }
.highlight-item h3 { color: #dd3333; margin-bottom: 0.7rem; }

/* Timeline */
.timeline { position: relative; max-width: 800px; margin: 3rem auto; }
.timeline:before { content: ''; position: absolute; top: 0; bottom: 0; width: 4px; background-color: #dd3333; left: 50%; margin-left: -2px; }
.timeline-item { position: relative; margin-bottom: 2rem; }
.timeline-date { position: absolute; width: 80px; background-color: #dd3333; color: white; text-align: center; padding: 0.5rem; border-radius: 4px; top: 0; left: 50%; transform: translateX(-50%); font-weight: bold; }
.timeline-content { background-color: #fff; padding: 1.5rem; border-radius: 8px; box-shadow: 0 3px 10px rgba(0,0,0,0.05); position: relative; width: calc(50% - 40px); }
.timeline-item:nth-child(odd) .timeline-content { margin-right: auto; }
.timeline-item:nth-child(even) .timeline-content { margin-left: auto; }
.timeline-content h3 { margin-bottom: 0.7rem; color: #dd3333; }

/* Quote Box */
.quote-box { margin: 2rem 0; padding: 1.5rem; background-color: #f8f8f8; border-left: 4px solid #dd3333; border-radius: 0 8px 8px 0; }
.quote-box blockquote { font-family: 'Crimson Text', serif; font-size: 1.2rem; font-style: italic; margin-bottom: 0.5rem; line-height: 1.5; }
.quote-box cite { font-size: 0.9rem; color: #666; }

/* Learn More Resources */
.resources-grid { display: flex; flex-direction: column; gap: 1.5rem; max-width: 1000px; margin: 0 auto; }
.resource-item { background-color: #fff; padding: 1.5rem; border-radius: 8px; box-shadow: 0 3px 10px rgba(0,0,0,0.05); }
.resource-item h3 { color: #dd3333; margin-bottom: 0.7rem; }
.learn-more { display: inline-block; margin-top: 0.5rem; font-weight: bold; color: #dd3333; text-decoration: underline; }

/* Media Queries */
@media (min-width: 768px) {
  .story-header h1 { font-size: 2.5rem; }
  .story-content { flex-direction: row; align-items: flex-start; gap: 2rem; }
  .story-image { flex: 1; margin-bottom: 0; }
  .story-text { flex: 2; }
  .story-content.reverse { flex-direction: row-reverse; }
  
  .message-highlights { flex-direction: row; }
  .highlight-item { flex: 1; }
  
  .resources-grid { flex-direction: row; }
  .resource-item { flex: 1; }
  
  .timeline-content { width: calc(50% - 60px); }
  .timeline-item { padding-top: 2rem; }
  .timeline-date { top: -15px; }
}

@media (max-width: 767px) {
  .timeline:before { left: 30px; }
  .timeline-date { left: 30px; transform: none; width: auto; }
  .timeline-content { width: calc(100% - 80px); margin-left: 80px !important; }
}