/*
 * Arokya Hospital typography system
 * A single, responsive Poppins scale shared by every public-facing page.
 */

:root {
  --font-primary: "Poppins", sans-serif;
  --type-h1: 45px;
  --type-h2: 44px;
  --type-h3: 30px;
  --type-h4: 23px;
  --type-h5: 19px;
  --type-h6: 16px;
  --type-body: 17px;
  --type-nav: 13px;
  --type-button: 15px;
  --type-small: 13px;
}

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  font-family: var(--font-primary) !important;
  font-size: var(--type-body) !important;
  font-weight: 400 !important;
  line-height: 1.7 !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  overflow-wrap: anywhere;
}

/* Keep all textual UI in the same family while preserving icon-font glyphs. */
body :where(a, abbr, address, blockquote, button, caption, dd, details, div, dl,
dt, figcaption, fieldset, form, label, legend, li, main, nav, ol, option, p,
small, span, summary, table, td, textarea, th, time, ul, input, select) {
  font-family: var(--font-primary) !important;
}

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  color: inherit;
  font-family: var(--font-primary) !important;
  font-style: normal;
  letter-spacing: -0.018em;
  overflow-wrap: anywhere;
  text-wrap: balance;
}

h1 { font-size: var(--type-h1) !important; font-weight: 500 !important; line-height: 1.15 !important; margin-bottom: 0.45em; }
h2 { font-size: var(--type-h2) !important; font-weight: 700 !important; line-height: 1.2 !important; margin-bottom: 0.5em; }
h3 { font-size: var(--type-h3) !important; font-weight: 600 !important; line-height: 1.3 !important; margin-bottom: 0.55em; }
h4 { font-size: var(--type-h4) !important; font-weight: 600 !important; line-height: 1.35 !important; margin-bottom: 0.6em; }
h5 { font-size: var(--type-h5) !important; font-weight: 600 !important; line-height: 1.4 !important; margin-bottom: 0.65em; }
h6 { font-size: var(--type-h6) !important; font-weight: 600 !important; line-height: 1.5 !important; margin-bottom: 0.7em; }

p, li, td, th, dd, address, blockquote {
  font-size: var(--type-body) !important;
  font-weight: 400 !important;
  line-height: 1.7 !important;
  overflow-wrap: anywhere;
}

p { margin-top: 0; margin-bottom: 1.25em; }

small, .small, .footer-container small {
  font-size: var(--type-small) !important;
  line-height: 1.55;
}

nav a, .mediic_menu a, .mobile-side-links a, .nav_scroll > li > a {
  font-size: var(--type-nav) !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
  letter-spacing: 0.005em;
  overflow-wrap: anywhere;
}

button, [type="button"], [type="submit"], [type="reset"], .header-button a,
.mediic-button a, .submit-button a, .submit-btn {
  font-family: var(--font-primary) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
  letter-spacing: 0.01em;
}

input, select, textarea, label, .form-control {
  font-family: var(--font-primary) !important;
  font-size: var(--type-body) !important;
  line-height: 1.5 !important;
}

label { font-weight: 500 !important; }

.card, .card p, .blog-card, .blog-card p, .footer-container,
.footer-container p, .footer-container a, .breadcrumb, .breadcrumb a {
  font-family: var(--font-primary) !important;
  overflow-wrap: anywhere;
}

/* Feature cards use compact, card-level headings instead of the page H2 scale. */
.feature-head {
  align-items: center;
  gap: 16px;
}

.feature-head .head-title {
  min-width: 0;
}

.feature-head .head-title h2 {
    margin: 0 !important;
    color: #002570;
    font-size: 25px !important;
    font-weight: 550 !important;
    line-height: 1.3 !important;
    letter-spacing: -0.012em;
    text-wrap: wrap;
}

.feature-content h3 {
  font-size: 30px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
}

.feature-content h4 {
  font-size: 22px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
}

.feature-content p {
  font-size: 15px !important;
  line-height: 1.65 !important;
  overflow-wrap: anywhere;
}

/* Shared treatment for compact, all-caps or section-level H1 titles. */
h1.section-heading {
  font-size: 27px !important;
  font-weight: 500 !important;
  line-height: 35px !important;
  letter-spacing: -0.012em;
  margin-bottom: 0.5em;
}

@media (max-width: 1439px) {
  :root { --type-h1: 50px; --type-h2: 40px; --type-h3: 28px; --type-h4: 22px; --type-body: 16px; }
}

@media (max-width: 1199px) {
  :root { --type-h1: 46px; --type-h2: 36px; --type-h3: 26px; --type-h4: 21px; --type-h5: 18px; --type-h6: 15px; --type-body: 16px; --type-nav: 14px; --type-button: 14px; }
  .feature-head .head-title h2 { font-size: 23px !important; }
}

@media (max-width: 991px) {
  :root { --type-h1: 40px; --type-h2: 34px; --type-h3: 25px; --type-h4: 20px; --type-h5: 18px; --type-h6: 15px; --type-body: 15px; --type-nav: 14px; --type-button: 14px; }
  h1 { line-height: 1.2 !important; }
  h2 { line-height: 1.25 !important; }
  p { margin-bottom: 1.15em; }
  .feature-head .head-title h2 { font-size: 22px !important; }
  .feature-content h3 { font-size: 28px !important; }
}

@media (max-width: 767px) {
  :root { --type-h1: 36px; --type-h2: 30px; --type-h3: 23px; --type-h4: 19px; --type-h5: 17px; --type-h6: 15px; --type-body: 15px; --type-nav: 14px; --type-button: 14px; }
  h1, h2, h3, h4, h5, h6 { text-wrap: pretty; }
  .feature-head .head-title h2 { font-size: 21px !important; }
  .feature-content h3 { font-size: 26px !important; }
}

@media (max-width: 575px) {
  :root { --type-h1: 32px; --type-h2: 27px; --type-h3: 22px; --type-h4: 19px; --type-h5: 17px; --type-h6: 15px; --type-body: 14px; --type-nav: 14px; --type-button: 13px; --type-small: 12px; }
  h1 { line-height: 1.22 !important; }
  h2 { line-height: 1.28 !important; }
  p, li, td, th, dd, address, blockquote { line-height: 1.65 !important; }
  .feature-single-box { padding: 28px 24px 26px; }
  .bx-2.feature-single-box { padding: 28px 24px 26px; }
  .bx-3.feature-single-box { padding: 28px 24px 32px; }
  .feature-head { gap: 12px; padding-bottom: 24px; }
  .feature-head .head-title h2 { font-size: 19px !important; }
  .feature-content h3 { font-size: 24px !important; }
  .feature-content h4 { font-size: 19px !important; }
  h1.section-heading { font-size: 25px !important; line-height: 1.35 !important; }
}

@media (max-width: 375px) {
  :root { --type-h1: 28px; --type-h2: 24px; --type-h3: 20px; --type-h4: 18px; --type-h5: 16px; --type-h6: 14px; --type-body: 14px; --type-button: 13px; }
  .feature-head .head-title h2 { font-size: 18px !important; }
  .feature-content h3 { font-size: 22px !important; }
  h1.section-heading { font-size: 23px !important; }
}
