/**
 * AutoTaktas visual refinement layer.
 * A deliberately restrained hierarchy shared by editorial, directory and
 * vehicle-specification templates.
 */

:root {
  --at-weight-display: 700;
  --at-weight-heading: 700;
  --at-weight-card: 600;
  --at-weight-label: 600;
  --at-copy: #343a40;
  --at-copy-muted: #626970;
  --at-reading-width: 72ch;
}

body.autotaktas-prototype {
  color: #1c2024;
  font-weight: 400;
  letter-spacing: 0;
}

body.autotaktas-prototype main :where(h1, h2, h3) {
  overflow-wrap: normal;
  word-break: normal;
  hyphens: auto;
}

body.autotaktas-prototype main h1 {
  font-weight: var(--at-weight-display) !important;
  letter-spacing: -.032em !important;
}

body.autotaktas-prototype main h2 {
  font-weight: var(--at-weight-heading) !important;
  letter-spacing: -.018em;
}

body.autotaktas-prototype main h3 {
  font-weight: var(--at-weight-card) !important;
  letter-spacing: -.01em;
}

body.autotaktas-prototype main :where(p, li) {
  text-wrap: pretty;
}

body.autotaktas-prototype main :where(.at-article-lead, .at-directory-lead, .category-hero p, .author-hero p, .hero-content > p) {
  max-width: var(--at-reading-width);
}

/* Header and breadcrumbs should guide, not compete with page content. */
.at-desktop-nav > a,
.at-company-nav-trigger {
  font-weight: 650;
  letter-spacing: .025em;
}

.at-breadcrumbs :where(strong, b),
.breadcrumbs :where(strong, b) {
  font-weight: 600;
}

.at-mega-heading h2,
.at-mega-category-title,
.at-spec-make-card strong {
  font-weight: 650;
}

.at-global-footer :where(h2, h3, strong) {
  font-weight: 650;
}

/* Page titles: authoritative without oversized or black-weight text. */
body.home main .hero h1,
body.blog main .category-hero h1,
body.category main .category-hero h1,
body.author main .author-hero h1,
body.single-post main .at-article-header h1,
body.single-autotaktas_company main .hero h1,
body.page-template-template-contact-php main .hero h1,
body.page-template-template-about-php main .hero h1,
body.page-template-template-advertising-php main .hero h1,
body.autotaktas-prototype main .at-directory h1,
body.autotaktas-prototype main.at-directory h1 {
  font-size: clamp(40px, 3.65vw, 50px) !important;
  font-weight: 700 !important;
  line-height: 1.09 !important;
}

/* Editorial pages. */
body.home main .section-heading h2,
body.blog main .section-title,
body.category main .section-title,
body.author main .section-title {
  font-weight: 700 !important;
}

body.home main .article-card h3,
body.blog main .article-copy h2,
body.category main .article-copy h2,
body.author main .article-copy h3,
body.autotaktas-prototype main .at-related-grid h3 {
  font-weight: 600 !important;
}

body.blog main :where(.topic-tab, .article-meta),
body.category main :where(.topic-tab, .article-meta),
body.author main :where(.topic-tab, .article-meta) {
  font-weight: 550;
}

body.autotaktas-prototype main :where(.side-card, .at-article-toc, .at-sidebar-related) h2 {
  font-weight: 650 !important;
}

body.single-post main .at-article-content {
  color: #30353a;
}

body.single-post main .at-article-content h2 {
  font-size: clamp(24px, 2vw, 27px) !important;
  font-weight: 700 !important;
  line-height: 1.28 !important;
}

body.single-post main .at-article-content h3 {
  font-weight: 650 !important;
}

body.single-post main :where(.at-article-author-mini strong, .at-related-section a, .comment-form .submit) {
  font-weight: 600;
}

/* Company directory and profiles. */
.at-directory .at-subcategory-heading strong,
.at-directory .at-city-slider-heading strong,
.at-directory .at-filter-section h2 {
  font-weight: 650 !important;
}

.at-directory .at-subcategory-link,
.at-directory :where(.at-filter-submit, .at-filter-reset),
.at-directory .at-company-main h2,
.at-directory .at-company-actions a {
  font-weight: 600 !important;
}

body.autotaktas-prototype main.at-directory .at-company-main h2,
body.autotaktas-prototype main .at-directory .at-company-main h2 {
  font-weight: 600 !important;
}

.at-directory .at-subcategory-heading > div > span {
  font-weight: 700;
}

.at-directory .at-directory-summary strong {
  font-weight: 650;
}

.at-directory .at-company-description {
  color: var(--at-copy);
}

body.single-autotaktas_company main .hero :where(h1, .hero-address) {
  font-weight: 700 !important;
}

body.single-autotaktas_company main .card h2,
body.single-autotaktas_company main .activity-card h2,
body.single-autotaktas_company main .description-card h2 {
  font-weight: 650 !important;
}

body.single-autotaktas_company main :where(.contact-list a, .info-table strong, .activity-card .check-list a, .activity-card .check-list span) {
  font-weight: 600 !important;
}

body.single-autotaktas_company main .at-company-update-action span,
body.single-autotaktas_company main .at-company-video-item > a {
  font-weight: 650;
}

/* Vehicle catalogue: reduce display scale and make dense cards readable. */
.at-spec-archive-hero h1 {
  max-width: 980px;
  font-size: clamp(40px, 4.2vw, 56px) !important;
  font-weight: 700 !important;
  line-height: 1.08 !important;
  letter-spacing: -.032em !important;
}

.at-spec-summary h1 {
  font-weight: 700 !important;
  line-height: 1.1 !important;
  letter-spacing: -.026em !important;
}

.at-spec-section-heading h2,
.at-spec-results > h2,
.at-spec-generation-list > h2 {
  font-weight: 700 !important;
}

.at-spec-card h2,
.at-spec-variant h3,
body.autotaktas-prototype main .at-spec-card h2,
body.autotaktas-prototype main .at-spec-variant h3 {
  font-weight: 600 !important;
}

.at-spec-card p,
.at-spec-variant p {
  font-size: 13px;
  line-height: 1.55;
}

.at-spec-card-link,
.at-spec-model-nav a,
.at-spec-make-grid strong,
.at-spec-search button {
  font-weight: 600;
}

.at-spec-model-nav a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  font-size: 13px;
}

.at-spec-fact strong,
.at-spec-section dd,
.at-spec-variant dd {
  font-weight: 600;
}

/* Forms and controls use medium emphasis only for actions. */
body.autotaktas-prototype main :where(label, legend) {
  font-weight: 600;
}

body.autotaktas-prototype main :where(button, .btn, .yellow-button, input[type="submit"]) {
  font-weight: 650;
}

body.autotaktas-prototype :where(a, button, input, select, textarea):focus-visible {
  outline: 3px solid #d49f00;
  outline-offset: 3px;
  box-shadow: none !important;
}

@media (max-width: 900px) {
  body.home main .hero h1,
  body.blog main .category-hero h1,
  body.category main .category-hero h1,
  body.author main .author-hero h1,
  body.single-post main .at-article-header h1,
  body.single-autotaktas_company main .hero h1,
  body.autotaktas-prototype main .at-directory h1,
  body.autotaktas-prototype main.at-directory h1,
  .at-spec-archive-hero h1 {
    font-size: clamp(34px, 7vw, 44px) !important;
    line-height: 1.1 !important;
  }
}

@media (max-width: 600px) {
  .at-chrome-shell,
  .at-directory-shell,
  .at-article-shell,
  .at-spec-shell {
    width: min(calc(100% - 32px), 1600px);
  }

  body.home main .hero h1,
  body.blog main .category-hero h1,
  body.category main .category-hero h1,
  body.author main .author-hero h1,
  body.single-post main .at-article-header h1,
  body.single-autotaktas_company main .hero h1,
  body.autotaktas-prototype main .at-directory h1,
  body.autotaktas-prototype main.at-directory h1,
  .at-spec-archive-hero h1 {
    font-size: clamp(32px, 9vw, 38px) !important;
    letter-spacing: -.026em !important;
  }

  body.single-post main .at-article-content {
    font-size: 16px !important;
    line-height: 1.72 !important;
  }

  .at-directory .at-directory-lead,
  .at-spec-archive-hero p {
    font-size: 15px !important;
    line-height: 1.62 !important;
  }

  .at-spec-card p,
  .at-spec-variant p {
    font-size: 13px;
  }
}
