/*
Theme Name: WritingChex Astra Child
Description: WritingChex Laravel design adapted for native Astra blog templates.
Author: WritingChex
Template: astra
Version: 1.0.0
Text Domain: writingchex-astra-child
License: GPL-2.0-or-later
*/
@font-face {
  font-family: 'WC Montserrat';
  src: url('assets/fonts/montserrat-variable.ttf') format('truetype');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
:root {
  --wc-navy: #002d5f;
  --wc-green: #1ad079;
  --wc-button: #40c671;
  --wc-muted: #8395a9;
  --wc-copy: #42566d;
  --wc-line: #e9eef2;
  --wc-soft: #f5f7f9;
  --ast-global-color-0: #168853;
  --ast-global-color-1: #002d5f;
  --ast-global-color-2: #002d5f;
  --ast-global-color-3: #42566d;
  --ast-global-color-4: #f5f7f9;
  --ast-global-color-5: #ffffff;
}
body, body.ast-separate-container {
  background: #fff;
  color: var(--wc-copy);
  font-family: 'WC Montserrat', Arial, sans-serif;
  font-size: 15px;
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
}
body :is(h1,h2,h3,h4,h5,h6,.entry-title,.site-title,.menu-link,button,input,select,textarea) {
  font-family: 'WC Montserrat', Arial, sans-serif;
}
body :is(h1,h2,h3,h4,h5,h6,.entry-title,.entry-title a) { color: var(--wc-navy); line-height: 1.35; }
body h1 { font-size: 48px; font-weight: 600; }
body h2 { font-size: 38px; font-weight: 500; }
body h3 { font-size: 22px; font-weight: 600; }
body a { color: #168853; }
body a:hover { color: var(--wc-navy); }
body :is(a,button,input,textarea,select):focus-visible { outline: 3px solid #ff7847; outline-offset: 4px; }
body .ast-container { max-width: 1200px; padding-inline: 24px; }
/* Native Astra header builder; retain Astra's mobile menu and dropdown behavior. */
#masthead .main-header-bar, #masthead .ast-primary-header-bar { background: #fff; border-bottom: 0; }
#masthead .ast-container { max-width: 1280px; }
#masthead .site-logo-img img { width: 80px; max-width: 100%; height: auto; }
#masthead .menu-link { color: var(--wc-navy); font-size: 14px; font-weight: 400; }
#masthead .menu-link:hover, #masthead .current-menu-item > .menu-link { color: #168853; }
#masthead .sub-menu { background: #fff; border: 1px solid var(--wc-line); border-radius: 12px; box-shadow: 0 8px 25px #002d5f15; }
@media (min-width: 922px) {
  #masthead .main-header-menu { background: #fff; border: 1px solid #1ad07914; border-radius: 24px; padding: 8px 16px; box-shadow: 0 7px 18px #002b5a08; }
  #masthead .main-header-menu > .menu-item > .menu-link { padding-inline: 14px; line-height: 32px; }
  #masthead .main-header-bar { padding-block: 20px; }
}
body :is(.ast-button,.button,input[type=submit],button[type=submit],.wp-block-button__link),
#masthead .ast-custom-button {
  min-height: 44px; padding: 10px 22px; border: 0; border-radius: 8px;
  background: var(--wc-button); color: var(--wc-navy); font-size: 14px; font-weight: 600; line-height: 24px;
  box-shadow: none;
}
body :is(.ast-button,.button,input[type=submit],button[type=submit],.wp-block-button__link):hover,
#masthead .ast-custom-button:hover { background: #27ae60; color: var(--wc-navy); }
/* Native blog/archive cards: set grid columns in Astra, see APPLY.md. */
body :is(.ast-archive-description,.ast-single-entry-banner) { background: #fff; text-align: center; border: 0; padding: 45px 24px; }
body .ast-archive-title { font-size: 50px; font-weight: 500; color: var(--wc-navy); }
body :is(.ast-archive-description p,.entry-meta,.entry-meta *) { color: #61758c; }
body :is(.blog,.archive) { background: #fff; }
body .ast-article-post { background: transparent; border: 0; padding: 12px; margin-bottom: 0; }
body .ast-article-post .ast-post-format- { height: 100%; padding: 30px; background: #fff; border: 1px solid var(--wc-line); border-radius: 16px; box-shadow: 0 3px 14px #002d5f10; }
body .ast-article-post .post-thumb-img-content img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 8px; }
body .ast-article-post .entry-title { font-size: 24px; font-weight: 600; margin-top: 20px; }
body .ast-article-post .entry-content p { font-size: 15px; line-height: 1.8; }
body .ast-article-post .entry-meta { font-size: 12px; }
body .ast-article-post .read-more a { font-size: 14px; font-weight: 600; }
body .ast-pagination { padding-block: 35px; text-align: center; }
body .ast-pagination .page-numbers { border: 1px solid var(--wc-line); border-radius: 8px; color: var(--wc-navy); }
body .ast-pagination .page-numbers.current { background: var(--wc-navy); color: #fff; }
/* Single articles use a comfortable reading width, independent of archive width. */
body.single-post #primary { max-width: 900px; margin: 45px auto; float: none; }
body.single-post .ast-article-single { background: #fff; padding: 30px 0; }
body.single-post .entry-title { font-size: 42px; font-weight: 600; }
body.single-post .entry-content { font-size: 16px; line-height: 1.9; overflow-wrap: anywhere; }
body.single-post .entry-content h2 { font-size: 32px; margin-top: 1.6em; }
body.single-post .entry-content h3 { font-size: 24px; margin-top: 1.4em; }
body.single-post .entry-content a { text-decoration: underline; text-underline-offset: 3px; }
body.single-post .post-thumb img { border-radius: 16px; }
body.single-post blockquote { border-inline-start: 3px solid var(--wc-green); background: var(--wc-soft); border-radius: 0 12px 12px 0; padding: 24px; color: var(--wc-navy); }
body :is(input[type=text],input[type=email],input[type=url],input[type=search],textarea,select) {
  border: 1px solid #dde4eb; border-radius: 8px; background: #fff; padding: 11px 13px; color: var(--wc-navy); font-size: 15px;
}
body .comments-area { border-top: 1px solid var(--wc-line); margin-top: 40px; padding-top: 30px; }
#colophon { margin-top: 50px; background: #fff; color: #5b617a; }
#colophon :is(.site-primary-footer-wrap,.site-above-footer-wrap,.site-below-footer-wrap) { background: #fff; border-color: var(--wc-line); }
#colophon :is(.widget-title,h2,h3) { font-size: 20px; color: var(--wc-navy); font-weight: 500; }
#colophon :is(p,a) { font-size: 14px; line-height: 2; color: #5b617a; }
#colophon a:hover { color: #168853; }
#colophon .ast-footer-copyright p { font-size: 12px; }
@media (max-width: 921px) {
  #masthead .site-logo-img img { width: 60px; }
  #masthead .ast-primary-header-bar { margin: 10px 16px; border: 1px solid #1ad07914; border-radius: 24px; box-shadow: 0 7px 18px #002b5a08; }
  #masthead .ast-mobile-header-content { border-radius: 16px; background: #fff; }
}
@media (max-width: 767px) {
  body .ast-container { padding-inline: 20px; }
  body h1, body .ast-archive-title, body.single-post .entry-title { font-size: 32px; }
  body h2, body.single-post .entry-content h2 { font-size: 28px; }
  body .ast-article-post { padding: 10px 0; }
  body .ast-article-post .ast-post-format- { padding: 24px; }
  body :is(.ast-archive-description,.ast-single-entry-banner) { padding: 30px 0; }
  body.single-post #primary { margin-block: 24px; }
  body.single-post .ast-article-single { padding-top: 0; }
}
