/**
 * Font Size Fixes for Better Readability
 * Adjusting font sizes to more appropriate, readable values
 */

/* Featured article titles - increase from 16px to 18px */
.news_lists_per_cateogory article:first-child h3 a {
  font-size: 18px !important;
  line-height: 1.4 !important;
}

/* Compact article titles - increase from 13px to 15px */
.news_lists_per_cateogory .tw-flex.tw-gap-3 h3 a {
  font-size: 15px !important;
  line-height: 1.4 !important;
}

/* Article descriptions - increase from 12px to 14px */
.news_lists_per_cateogory article p {
  font-size: 14px !important;
  line-height: 1.5 !important;
  margin-bottom: 6px !important;
}

/* Date/time text - increase from 11px to 12px */
.news_lists_per_cateogory .tw-text-gray-400 {
  font-size: 12px !important;
}

/* Main navigation menu - ensure good readability */
.main-navigation a {
  font-size: 16px !important;
}

/* Category section headings - ensure consistent size */
.news_lists_per_cateogory h2,
section h2.tw-text-xl {
  font-size: 1.375rem !important; /* 22px - increased from 20px */
  line-height: 1.5 !important;
  font-weight: 600 !important;
}

/* Site title/logo text */
.site-name,
.site-title {
  font-size: 1.5rem !important; /* 24px */
}

/* General body text improvements */
body {
  font-size: 16px !important;
  line-height: 1.6 !important;
}

/* Teaser content improvements */
.teaser-content h3 {
  font-size: 16px !important;
  line-height: 1.4 !important;
}

.teaser-content p {
  font-size: 14px !important;
  line-height: 1.5 !important;
}

.article-content .field-body-debug .field__items .field__item p {
    font-family: "GFS Didot", Georgia, serif !important;
    font-size: 20px;
    margin-top: 1rem;
    line-height: 1.3;
}

.article-content .field__items .field__item > p:first-child::first-letter {
    font-family: "GFS Didot", Georgia, serif;
    float: left;
    margin-right: 0.12em;
    color: #003366;
    font-size: 460%;
    line-height: 0.84em;
}

/* Node/Article Page Font Improvements */

/* Article title on node pages */
.node--type-article h1,
.page-node-type-article h1 {
  font-size: 3rem !important; /* 32px */
  line-height: 1.1 !important;
  font-weight: 800 !important;
}

/* Article body text - more specific selectors */
.node--type-article .field--name-body p,
.page-node-type-article .field--name-body p,
.node .field--name-body p,
.node--type-article .field--name-body,
.page-node-type-article .field--name-body,
.node .field--name-body,
.field--name-body .field__item,
.field--name-body .field__item p {
  font-size: 16px !important;
  line-height: 1.7 !important;
  margin-bottom: 1rem !important;
}

/* Ensure all article content paragraphs are properly sized */
.node--type-article .node__content p,
.page-node-type-article .node__content p {
  font-size: 16px !important;
  line-height: 1.7 !important;
}

/* Article lead/summary text */
.node--type-article .field--name-field-summary,
.page-node-type-article .field--name-field-summary {
  font-size: 18px !important;
  line-height: 1.6 !important;
  font-weight: 500 !important;
}

/* Author and date information */
.node--type-article .node__meta,
.page-node-type-article .node__meta,
.node .node__meta {
  font-size: 14px !important;
}

/* Category tags on article pages */
.node--type-article .field--name-field-categories a,
.page-node-type-article .field--name-field-categories a {
  font-size: 13px !important;
  padding: 4px 8px !important;
}

/* Sidebar content improvements */
.region-sidebar-second h2, 
.region-sidebar-second h3 {
    font-weight: 600 !important;
    margin-bottom: .5em !important;
}

.region-sidebar-second p,
.region-sidebar-second li {
  font-size: 14px !important;
  line-height: 1.5 !important;
}


/* Related articles/content in sidebar */
.block--views .views-row h3 a {
  font-size: 14px !important;
  line-height: 1.4 !important;
}

.block--views .views-row p {
  font-size: 13px !important;
  line-height: 1.4 !important;
}

/* Debug field font size fix */
.field-body-debug,
.field--name-field-body-debug {
  /* font-size: 1.3em !important; */
  /* line-height: 1.5 !important; */
  /* font-family: cf_asty_st !important; */
}

/* Premium content notice and special elements */

/* Premium content notice box */
.premium-content-notice,
.field--name-field-premium-notice,
.alert,
.alert-warning {
  font-size: 14px !important;
  line-height: 1.5 !important;
}

/* Email subscription text */
.premium-content-notice p,
.alert p {
  font-size: 14px !important;
  line-height: 1.5 !important;
  margin-bottom: 8px !important;
}

/* Contact email links */
.premium-content-notice a,
.alert a {
  font-size: 14px !important;
}

/* Article Supertitle, Title, and Subtitle improvements */

/* Supertitle (field-supertitle) - make smaller and more readable */
.node--type-article .field--name-field-supertitle,
.page-node-type-article .field--name-field-supertitle,
.field--name-field-supertitle {
/*  font-size: 13px !important;
  line-height: 1.3 !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  margin-bottom: 8px !important;*/
}

/* Main article title - make it prominent but balanced */
.node--type-article .node__title,
.page-node-type-article .node__title,
.node--type-article h1.page-title,
.page-node-type-article h1.page-title {
}

/* Subtitle (field-subtitle) - make readable but secondary */
.node--type-article .field--name-field-subtitle,
.page-node-type-article .field--name-field-subtitle,
.field--name-field-subtitle {
  font-size: 16px !important;
  line-height: 1.5 !important;
  font-weight: 400 !important;
  margin-bottom: 16px !important;
}

/* User Orders Page Font Fixes - Reduced Sizes */
.page-user .region-content h2,
.page-user-orders h2,
.commerce-order-receipt h2 {
  font-size: 16px !important;
  font-weight: 500 !important;
  margin-bottom: 8px !important;
  line-height: 1.3 !important;
}

/* Order customer information */
.page-user .field--name-mail,
.page-user-orders .field--name-mail,
.commerce-order-receipt .field--name-mail {
  font-size: 13px !important;
  line-height: 1.4 !important;
}

/* Order details and labels */
.page-user .field__label,
.page-user-orders .field__label,
.commerce-order-receipt .field__label {
  font-size: 12px !important;
  font-weight: 500 !important;
  margin-bottom: 3px !important;
}

/* Order field items */
.page-user .field__item,
.page-user-orders .field__item,
.commerce-order-receipt .field__item {
  font-size: 13px !important;
  line-height: 1.4 !important;
}

/* Order status and dates */
.page-user .order-status,
.page-user-orders .order-status,
.commerce-order-receipt .order-status,
.page-user .field--name-placed,
.page-user-orders .field--name-placed,
.commerce-order-receipt .field--name-placed {
  font-size: 13px !important;
  line-height: 1.4 !important;
}

/* Order comments section */
.page-user .field--name-field-comments h3,
.page-user-orders .field--name-field-comments h3,
.commerce-order-receipt .field--name-field-comments h3 {
  font-size: 15px !important;
  font-weight: 500 !important;
  margin-bottom: 6px !important;
}

/* Order table content */
.page-user table,
.page-user-orders table,
.commerce-order-receipt table {
  font-size: 13px !important;
}

.page-user table th,
.page-user-orders table th,
.commerce-order-receipt table th {
  font-size: 13px !important;
  font-weight: 500 !important;
}

.page-user table td,
.page-user-orders table td,
.commerce-order-receipt table td {
  font-size: 13px !important;
  line-height: 1.4 !important;
}

/* Mobile responsiveness */
@media (max-width: 768px) {
  /* Slightly smaller on mobile but still readable */
  .news_lists_per_cateogory article:first-child h3 a {
    font-size: 17px !important;
  }

  .news_lists_per_cateogory .tw-flex.tw-gap-3 h3 a {
    font-size: 14px !important;
  }

  .news_lists_per_cateogory h2,
  section h2.tw-text-xl {
    font-size: 1.25rem !important; /* 20px on mobile */
  }

  /* Article page mobile adjustments */
  .node--type-article h1,
  .page-node-type-article h1 {
    font-size: 1.75rem !important; /* 28px on mobile */
  }

  .node--type-article .field--name-body p,
  .page-node-type-article .field--name-body p,
  .node .field--name-body p {
    font-size: 15px !important;
  }



  /* Mobile adjustments for supertitle, title, subtitle */
  .node--type-article .field--name-field-supertitle,
  .page-node-type-article .field--name-field-supertitle,
  .field--name-field-supertitle {
    font-size: 12px !important;
  }

  .node--type-article .node__title,
  .page-node-type-article .node__title,
  .node--type-article h1.page-title,
  .page-node-type-article h1.page-title {
    font-size: 1.875rem !important; /* 30px on mobile */
  }

  .node--type-article .field--name-field-subtitle,
  .page-node-type-article .field--name-field-subtitle,
  .field--name-field-subtitle {
    font-size: 15px !important;
  }
}

/* Checkout Review Page Fixes */
.checkout-review-page h1.page-title {
  font-size: 24px !important;
  line-height: 1.3 !important;
  margin-bottom: 20px !important;
}

.checkout-pane-customer-information,
.checkout-pane-order-summary,
.checkout-pane-payment-information,
.checkout-pane-actions {
  margin-bottom: 25px !important;
}

.checkout-pane__title {
  font-size: 18px !important;
  padding-bottom: 8px !important;
  margin-bottom: 15px !important;
  border-bottom: 1px solid #eee !important;
}

.checkout-pane__content p,
.checkout-pane__content div {
  font-size: 14px !important;
  line-height: 1.5 !important;
  margin-bottom: 10px !important;
}

.checkout-review-row {
  padding: 10px 0 !important;
  border-bottom: 1px solid #f5f5f5 !important;
}

.checkout-review-row:last-child {
  border-bottom: none !important;
}

.checkout-review-row .checkout-review-row-header {
  font-weight: 600 !important;
  font-size: 14px !important;
  margin-bottom: 5px !important;
}

.checkout-review-row .checkout-review-row-contents {
  font-size: 13px !important;
  color: #666 !important;
  line-height: 1.4 !important;
}

/* Order Summary Styles */
.checkout-order-summary .order-total-line,
.checkout-order-summary .order-total-line-value {
  font-size: 15px !important;
  font-weight: 600 !important;
  padding: 8px 0 !important;
}

.checkout-order-summary .order-total-line-total .order-total-line-value {
  font-size: 18px !important;
  color: #000 !important;
}

/* Form Elements */
.checkout-form .form-item,
.checkout-form .form-actions {
  margin-bottom: 15px !important;
}

.checkout-form label,
.checkout-form .form-item__label {
  font-size: 13px !important;
  font-weight: 500 !important;
  margin-bottom: 5px !important;
  display: block !important;
}

.checkout-form input[type="text"],
.checkout-form input[type="email"],
.checkout-form input[type="tel"],
.checkout-form select,
.checkout-form textarea {
  font-size: 14px !important;
  padding: 8px 12px !important;
  height: auto !important;
}

/* Buttons */
.checkout-form .form-actions .button {
  font-size: 16px !important;
  padding: 10px 20px !important;
  font-weight: 600 !important;
}

/* Responsive Adjustments */
@media (max-width: 767px) {
  .checkout-review-page h1.page-title {
    font-size: 20px !important;
  }

  .checkout-pane__title {
    font-size: 16px !important;
  }

  .checkout-pane__content p,
  .checkout-pane__content div {
    font-size: 13px !important;
  }

  .checkout-order-summary .order-total-line,
  .checkout-order-summary .order-total-line-value {
    font-size: 14px !important;
  }

  .checkout-order-summary .order-total-line-total .order-total-line-value {
    font-size: 16px !important;
  }
}
