/**
 * Global Next.js rebuild theme tokens + GeneratePress overrides.
 */
:root {
  --hg-cyan: #00adee;
  --hg-cyan-dark: #0099d4;
  --hg-navy: #002d5a;
  --hg-navy-deep: #001d3d;
  --hg-navy-footer: #001133;
  --hg-yellow: #ffd800;
  --hg-text: #001d3d;
  --hg-text-muted: #475569;
  --hg-text-body: #333333;
  --hg-border: #dddddd;
  --hg-surface-alt: #f0f6fa;
  --hg-accent-green: #678e61;
}

body.hg-nextjs-chrome {
  font-family: 'Segoe UI', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  background: #ffffff;
  color: var(--hg-text);
}

body.hg-nextjs-chrome,
body.hg-nextjs-chrome input,
body.hg-nextjs-chrome textarea,
body.hg-nextjs-chrome select,
body.hg-nextjs-chrome button {
  font-family: 'Segoe UI', 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
}

body.hg-nextjs-chrome .site-content a,
body.hg-nextjs-chrome .hg-archive a,
body.hg-nextjs-chrome .hg-entertainment a,
body.hg-nextjs-chrome .content-area a {
  color: var(--hg-navy);
}

body.hg-nextjs-chrome .site-content a:hover,
body.hg-nextjs-chrome .hg-archive a:hover,
body.hg-nextjs-chrome .hg-entertainment a:hover,
body.hg-nextjs-chrome .content-area a:hover {
  color: var(--hg-cyan-dark);
}

body.hg-nextjs-chrome .hg-footer a {
  color: #fff !important;
}

body.hg-nextjs-chrome .hg-footer a:hover {
  color: #fff !important;
  opacity: 0.86;
}

body.hg-nextjs-chrome .hg-article-next a {
  color: #fff !important;
}

/* Main content shell */
body.hg-nextjs-chrome .site.grid-container,
body.hg-nextjs-chrome .site-content,
body.hg-nextjs-chrome .content-area,
body.hg-nextjs-chrome .inside-article,
body.hg-nextjs-chrome #primary,
body.hg-nextjs-chrome #main {
  max-width: 100%;
}

body.hg-nextjs-chrome .site-content {
  padding-top: 0;
  margin-top: 0;
}

body.hg-nextjs-chrome .site-main {
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
  padding: 32px 20px 48px;
  min-height: 50vh;
}

body.hg-nextjs-chrome.hg-home-page .site-main,
body.hg-nextjs-chrome.page-template-cxtemplateshome-template-php .site-main,
body.hg-nextjs-chrome.hg-news-archive-page .site-main,
body.hg-nextjs-chrome.hg-entertainment-page .site-main {
  max-width: none;
  padding: 0 !important;
}

body.hg-news-archive-page {
  background: #ffffff;
}

body.hg-nextjs-chrome .hg-archive__hero--gradient h1 {
  color: #fff !important;
  text-align: center !important;
}

body.hg-nextjs-chrome .hg-entertainment__hero-inner h1 {
  color: #fff !important;
  text-align: center !important;
}

body.hg-nextjs-chrome.single .site-main {
  max-width: 800px;
}

/* Page headings */
body.hg-nextjs-chrome .page-header,
body.hg-nextjs-chrome .archive-description,
body.hg-nextjs-chrome .entry-header .entry-title {
  color: var(--hg-navy-deep) !important;
}

body.hg-nextjs-chrome .page-header h1,
body.hg-nextjs-chrome .archive .page-header h1 {
  font-size: clamp(28px, 4vw, 36px);
  font-weight: 800;
  line-height: 1.15;
  border-bottom: 3px solid var(--hg-navy-deep);
  padding-bottom: 16px;
  margin-bottom: 28px;
}

/* Archive cards — Next.js palette */
body.hg-nextjs-chrome .blog .inside-article,
body.hg-nextjs-chrome .archive .inside-article,
body.hg-nextjs-chrome .search-results .inside-article {
  border-color: var(--hg-border) !important;
  border-radius: 6px;
  box-shadow: 0 1px 4px rgba(0, 29, 61, 0.06);
}

body.hg-nextjs-chrome .blog .entry-title a,
body.hg-nextjs-chrome .archive .entry-title a,
body.hg-nextjs-chrome .search-results .entry-title a {
  color: var(--hg-navy-deep) !important;
}

body.hg-nextjs-chrome .blog .entry-title a:hover,
body.hg-nextjs-chrome .archive .entry-title a:hover,
body.hg-nextjs-chrome .search-results .entry-title a:hover {
  color: var(--hg-cyan-dark) !important;
}

body.hg-nextjs-chrome .gp-custom-category-section a {
  background: var(--hg-navy-deep);
}

body.hg-nextjs-chrome .custom-readmore-button {
  background: var(--hg-cyan);
  color: var(--hg-navy-deep) !important;
  font-weight: 700;
}

body.hg-nextjs-chrome .custom-readmore-button:hover {
  background: var(--hg-cyan-dark);
  color: #ffffff !important;
}

/* Single article — match rebuild article typography */
body.hg-nextjs-chrome.single .entry-title {
  font-size: clamp(30px, 4.8vw, 38px) !important;
  font-weight: 700 !important;
  line-height: 1.15 !important;
  color: var(--hg-navy) !important;
}

body.hg-nextjs-chrome.single .entry-content {
  font-size: 16px;
  line-height: 1.85;
  color: var(--hg-text-body);
}

body.hg-nextjs-chrome.single .entry-content h2 {
  margin-top: 2rem;
  margin-bottom: 0.75rem;
  padding-left: 12px;
  border-left: 4px solid var(--hg-accent-green);
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--hg-navy-deep);
}

body.hg-nextjs-chrome.single .entry-content a {
  color: var(--hg-cyan-dark);
  text-decoration: underline;
  text-underline-offset: 2px;
}

body.hg-nextjs-chrome.single .entry-content a:hover {
  color: var(--hg-navy);
}

/* Breadcrumbs */
body.hg-nextjs-chrome .hg-breadcrumb,
body.hg-nextjs-chrome .hg-page-header__crumbs {
  font-size: 13px;
  color: var(--hg-text-muted);
}

body.hg-nextjs-chrome .hg-breadcrumb a,
body.hg-nextjs-chrome .hg-page-header__crumbs a {
  color: var(--hg-text-muted);
  text-decoration: none;
}

body.hg-nextjs-chrome .hg-breadcrumb a:hover,
body.hg-nextjs-chrome .hg-page-header__crumbs a:hover {
  color: var(--hg-cyan-dark);
  text-decoration: underline;
}

/* Search page + forms */
body.hg-nextjs-chrome .hg-search-page-form__input,
body.hg-nextjs-chrome input[type='search'],
body.hg-nextjs-chrome input[type='text'],
body.hg-nextjs-chrome textarea,
body.hg-nextjs-chrome select {
  border: 1px solid #d1d5db;
  border-radius: 4px;
  color: var(--hg-navy-deep);
}

body.hg-nextjs-chrome .hg-search-page-form__submit,
body.hg-nextjs-chrome button[type='submit'],
body.hg-nextjs-chrome .button,
body.hg-nextjs-chrome .wp-block-button__link {
  background: var(--hg-navy-deep);
  color: #ffffff;
  border-radius: 4px;
  font-weight: 700;
}

body.hg-nextjs-chrome .hg-search-page-form__submit:hover,
body.hg-nextjs-chrome button[type='submit']:hover,
body.hg-nextjs-chrome .button:hover,
body.hg-nextjs-chrome .wp-block-button__link:hover {
  background: var(--hg-cyan-dark);
  color: #ffffff;
}

body.hg-nextjs-chrome .hg-article__share-copy,
body.hg-nextjs-chrome .hg-article__share-more-toggle {
  background: #ffffff !important;
  color: #002d5a !important;
}

body.hg-nextjs-chrome .hg-article__share-copy:hover,
body.hg-nextjs-chrome .hg-article__share-more-toggle:hover {
  background: #f0f6fa !important;
  color: #002d5a !important;
}

/* Pagination */
body.hg-nextjs-chrome .nav-links .page-numbers {
  border: 1px solid var(--hg-border);
  color: var(--hg-navy-deep);
}

body.hg-nextjs-chrome .nav-links .page-numbers.current,
body.hg-nextjs-chrome .nav-links .page-numbers:hover {
  background: var(--hg-cyan);
  border-color: var(--hg-cyan);
  color: var(--hg-navy-deep);
}

body.hg-nextjs-chrome.hg-jobs-page .hg-pagination .page-numbers,
body.hg-nextjs-chrome.hg-jobs-page .hg-pagination a.page-numbers {
  color: #0077b3 !important;
  text-decoration: none !important;
}

body.hg-nextjs-chrome.hg-jobs-page .hg-pagination a.page-numbers:hover,
body.hg-nextjs-chrome.hg-jobs-page .hg-pagination a.page-numbers:focus-visible {
  background: rgba(0, 173, 238, 0.14) !important;
  border-color: #00adee !important;
  color: #005a87 !important;
}

body.hg-nextjs-chrome.hg-jobs-page .hg-pagination span.page-numbers.current {
  background: #00adee !important;
  border-color: #00adee !important;
  color: #fff !important;
}

/* Comments */
body.hg-nextjs-chrome .comment-respond,
body.hg-nextjs-chrome .comments-area {
  border-top: 1px solid var(--hg-border);
  padding-top: 24px;
  margin-top: 32px;
}

/* Smooth page feel */
body.hg-nextjs-chrome {
  text-rendering: optimizeLegibility;
}

@media (max-width: 768px) {
  body.hg-nextjs-chrome .site-main {
    padding: 24px 16px 40px;
  }
}
