/* Fit Korean Medicine Clinic — official logo-led visual system. */
:root,
body {
  --bg-body: #fbfaf7 !important;
  --bg-surface: #ffffff !important;
  --surface-elevated: #f5f2ea !important;
  --text-main: #20201e !important;
  --text-muted: #68645d !important;
  --text-subtle: #918b80 !important;
  --accent: #887548 !important;
  --accent-soft: #f1eadb !important;
  --accent-strong: #665631 !important;
  --border-subtle: #ddd7cb !important;
  --accent-gradient-start: #887548 !important;
  --accent-gradient-end: #665631 !important;
  --theme-primary: #887548 !important;
  --brd-primary: #887548 !important;
  --brd-secondary: #665631 !important;
}

/* Keep interaction quiet and editorial instead of glossy. */
.btn--primary,
.button--primary {
  background-image: none !important;
  background-color: var(--accent) !important;
  color: #fff !important;
  box-shadow: none !important;
}

/* Homepage location/info: remove the remaining dashboard-card treatment. */
.fit-home [data-location-navigation] .section-header {
  max-width: 72rem;
  margin-right: auto;
  margin-left: auto;
  text-align: left !important;
}

.fit-home [data-location-navigation] .section-description {
  margin-left: 0 !important;
}

.fit-home .card--radius-lg,
.fit-home .card--radius-xl {
  border-radius: 0 !important;
  box-shadow: none !important;
}

.fit-home .card--radius-lg {
  border-top-color: #887548 !important;
}

.fit-home .card--radius-xl h3 > span:first-child {
  display: none;
}

.fit-home .card--radius-xl .rounded-full {
  border-radius: 0.25rem !important;
  box-shadow: none !important;
}

/* Shared public-page language: editorial headings, rules and quiet surfaces. */
.page-header {
  padding: 5.5rem 1.5rem 4.5rem !important;
  background: #fbfaf7 !important;
  border-bottom: 1px solid var(--border-subtle);
}

.page-header > .absolute,
.page-header .rounded-full {
  display: none !important;
}

.page-header > div:last-child {
  max-width: 72rem !important;
  padding: 0 !important;
  text-align: left !important;
}

.page-header h1 {
  max-width: 14ch;
  margin-bottom: 1rem !important;
  font-family: 'Noto Serif KR', serif !important;
  font-weight: 700 !important;
  letter-spacing: -.045em !important;
}

.page-header p {
  margin-left: 0 !important;
  font-size: 1rem !important;
}

[data-skin-page-template="programList"] > section:first-child,
[data-fit-page="doctors"] > section:first-child {
  padding: 6rem 1.5rem 5rem !important;
  background: #fbfaf7 !important;
  border-bottom: 1px solid var(--border-subtle);
}

[data-skin-page-template="programList"] > section:first-child > div > div,
[data-fit-page="doctors"] > section:first-child > div > div {
  max-width: 72rem !important;
  margin: 0 auto !important;
  text-align: left !important;
}

[data-skin-page-template="programList"] > section:first-child h1,
[data-fit-page="doctors"] > section:first-child h1 {
  max-width: 14ch;
  font-family: 'Noto Serif KR', serif !important;
  font-weight: 700 !important;
  letter-spacing: -.045em !important;
}

/* Program index: one deliberate editorial list instead of a template card grid. */
section[data-skin-page-template="programList"] {
  padding: 4rem 1.5rem 7rem !important;
  background: #fff !important;
}

section[data-skin-page-template="programList"] > div {
  max-width: 72rem !important;
}

section[data-skin-page-template="programList"] .grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0 !important;
  border-top: 1px solid var(--text-main);
}

section[data-skin-page-template="programList"] .grid > a {
  display: grid !important;
  grid-template-columns: minmax(15rem, .8fr) minmax(0, 1.2fr) !important;
  gap: clamp(1.5rem, 5vw, 5rem) !important;
  align-items: center;
  padding: 2rem 0 !important;
  border: 0 !important;
  border-bottom: 1px solid var(--border-subtle) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  transform: none !important;
}

section[data-skin-page-template="programList"] .grid > a > div:first-child {
  height: auto !important;
  aspect-ratio: 16 / 9;
  margin: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

section[data-skin-page-template="programList"] .grid > a > div:last-child {
  padding: 0 !important;
}

section[data-skin-page-template="programList"] .grid > a h3 {
  font-family: 'Noto Serif KR', serif;
  font-size: clamp(1.5rem, 3vw, 2.35rem) !important;
  letter-spacing: -.035em;
}

section[data-skin-page-template="programList"] img,
[data-fit-page="doctors"] img,
[data-fit-page="blog"] img {
  transform: none !important;
}

/* Program detail: remove the generated-app visual vocabulary. */
[data-skin-page-template="programDetail"] {
  background: #fbfaf7 !important;
}

[data-skin-page-template="programDetail"] > section:first-of-type {
  min-height: auto !important;
  padding: 7rem 1.5rem 6rem !important;
  background-color: #fbfaf7 !important;
  background-image: none !important;
}

[data-skin-page-template="programDetail"] > section:first-of-type .page-container {
  max-width: 72rem !important;
}

[data-skin-page-template="programDetail"] > section:first-of-type .grid {
  gap: clamp(2.5rem, 7vw, 7rem) !important;
}

[data-skin-page-template="programDetail"] > section:first-of-type h1 {
  font-family: 'Noto Serif KR', serif !important;
  font-size: clamp(2.75rem, 5.2vw, 5.25rem) !important;
  font-weight: 700 !important;
  letter-spacing: -.055em !important;
}

[data-skin-page-template="programDetail"] > section:first-of-type .inline-block {
  padding: 0 0 .8rem !important;
  border-bottom: 1px solid var(--accent) !important;
  border-radius: 0 !important;
  background: transparent !important;
}

[data-skin-page-template="programDetail"] > section:first-of-type .shadow-2xl,
[data-skin-page-template="programDetail"] > section:first-of-type .shadow-xl,
[data-skin-page-template="programDetail"] > section:first-of-type .shadow-lg {
  box-shadow: none !important;
}

[data-skin-page-template="programDetail"] > section:first-of-type img,
[data-skin-page-template="programDetail"] > section:first-of-type .overflow-hidden {
  border-radius: 0 !important;
}

[data-skin-page-template="programDetail"] > section:first-of-type .absolute.-bottom-6 {
  display: none !important;
}

[data-skin-page-template="programDetail"] .btn {
  border-radius: .2rem !important;
  box-shadow: none !important;
  transform: none !important;
}

[data-skin-page-template="programDetail"] .btn span:first-child {
  display: none;
}

[data-skin-page-template="programDetail"] .section-header {
  max-width: 72rem !important;
  margin-right: auto !important;
  margin-left: auto !important;
  text-align: left !important;
}

[data-skin-page-template="programDetail"] .section-description {
  margin-left: 0 !important;
}

[data-skin-page-template="programDetail"] .card,
[data-skin-page-template="programDetail"] [class*="rounded-3xl"],
[data-skin-page-template="programDetail"] [class*="rounded-2xl"] {
  border-radius: 0 !important;
  box-shadow: none !important;
  transform: none !important;
}

[data-skin-page-template="programDetail"] [class*="blur-3xl"],
[data-skin-page-template="programDetail"] [class*="blur-\[80px\]"] {
  display: none !important;
}

[data-skin-page-template="programDetail"] .text-accent,
[data-skin-page-template="programDetail"] .text-accent-strong,
[data-skin-page-template="programDetail"] .text-teal-500 {
  color: var(--accent) !important;
}

[data-skin-page-template="programDetail"] .bg-accent,
[data-skin-page-template="programDetail"] .bg-teal-500 {
  background-color: var(--accent) !important;
}

[data-skin-page-template="programDetail"] .bg-accent-soft,
[data-skin-page-template="programDetail"] .bg-accent\/10 {
  background-color: var(--accent-soft) !important;
}

/* Doctor index: portrait-led profile, no floating tags or boxed CTA. */
[data-fit-page="doctors"] > section:last-child {
  padding: 5rem 1.5rem 7rem !important;
  background: #fff !important;
}

[data-fit-page="doctors"] > section:last-child .grid {
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 5rem !important;
  max-width: 72rem;
}

[data-fit-page="doctors"] > section:last-child .card {
  display: grid !important;
  grid-template-columns: minmax(15rem, .9fr) minmax(0, 1.1fr);
  gap: 2.5rem;
  padding: 0 0 2.5rem !important;
  border: 0 !important;
  border-bottom: 1px solid var(--text-main) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  max-width: 58rem;
}

/* Doctor profile detail. */
[data-fit-page="doctor-detail"] {
  padding: 6rem 1.5rem 7rem !important;
  background: #fbfaf7 !important;
}

[data-fit-page="doctor-detail"] > div {
  max-width: 72rem !important;
}

[data-fit-page="doctor-detail"] > div > div:first-child {
  padding: 0 0 4rem !important;
  border-width: 0 0 1px !important;
  border-color: var(--text-main) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  gap: clamp(2.5rem, 7vw, 7rem) !important;
}

[data-fit-page="doctor-detail"] img,
[data-fit-page="doctor-detail"] .rounded-2xl,
[data-fit-page="doctor-detail"] .rounded-\[2\.5rem\],
[data-fit-page="doctor-detail"] .rounded-xl,
[data-fit-page="doctor-detail"] .rounded-full {
  border-radius: 0 !important;
  box-shadow: none !important;
}

[data-fit-page="doctor-detail"] h1 {
  font-family: 'Noto Serif KR', serif !important;
  font-size: clamp(2.75rem, 5vw, 4.75rem) !important;
  letter-spacing: -.05em;
}

[data-fit-page="doctor-detail"] .bg-white {
  box-shadow: none !important;
}

[data-fit-page="doctor-detail"] .mt-16 a {
  padding: 1.5rem 0 !important;
  border-width: 1px 0 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

[data-fit-page="doctors"] > section:last-child .card > div:first-child {
  margin: 0 !important;
  border-radius: 0 !important;
}

[data-fit-page="doctors"] .rounded-lg,
[data-fit-page="doctors"] .rounded,
[data-fit-page="doctors"] .rounded-xl {
  border-radius: 0 !important;
}

[data-fit-page="doctors"] a.rounded-xl {
  justify-content: flex-start !important;
  padding: .8rem 0 !important;
  border-width: 1px 0 0 !important;
  background: transparent !important;
}

/* Column index/detail: make it read like a publication, not a dashboard. */
[data-fit-page="blog"] {
  background-image: none !important;
  padding: 4rem 1.5rem 7rem !important;
}

[data-fit-page="blog"] > div {
  max-width: 72rem !important;
}

[data-fit-page="blog"] #blog-search {
  border-width: 0 0 1px !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

[data-fit-page="blog"] #blog-search + div {
  font-size: 0 !important;
}

[data-fit-page="blog"] #blog-search + div::after {
  content: "Search";
  font-size: .7rem;
  font-weight: 800;
  letter-spacing: .12em;
  color: var(--accent);
}

[data-fit-page="blog"] .rounded-full {
  border-radius: 0 !important;
  background: transparent !important;
  border-width: 0 0 1px !important;
  box-shadow: none !important;
}

[data-fit-page="blog"] .flex.min-w-max a.scale-105 {
  color: var(--accent) !important;
  border-bottom-color: var(--accent) !important;
  transform: none !important;
}

[data-fit-page="blog"] #posts-grid {
  gap: 3rem 2rem !important;
}

[data-fit-page="blog"] .blog-card {
  border-width: 1px 0 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

[data-fit-page="blog"] .blog-card > div:first-child,
[data-fit-page="blog"] .blog-card img {
  border-radius: 0 !important;
}

[data-fit-page="blog"] .blog-card > div:last-child {
  padding: 1.5rem 0 0 !important;
}

[data-skin-page-template="blogDetail"] article,
[data-skin-page-template="blogDetail"] aside > div > div,
[data-skin-page-template="blogDetail"] .card--radius-xl {
  border-radius: 0 !important;
  box-shadow: none !important;
}

[data-skin-page-template="blogDetail"] article h1 {
  font-family: 'Noto Serif KR', serif !important;
  letter-spacing: -.035em;
}

[data-skin-page-template="blogDetail"] article .rounded-full,
[data-skin-page-template="blogDetail"] article .rounded-2xl,
[data-skin-page-template="blogDetail"] article .rounded-xl {
  border-radius: 0 !important;
}

/* Location page: same restrained map treatment used on the homepage. */
[data-fit-page="location"] {
  background-image: none !important;
}

[data-fit-page="location"] [data-location-navigation] .section-header {
  max-width: 72rem;
  text-align: left !important;
}

[data-fit-page="location"] [data-location-navigation] .section-description {
  margin-left: 0 !important;
}

[data-fit-page="location"] [data-location-navigation] > div > div:last-child {
  border-top-color: var(--accent) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

[data-fit-page="location"] [data-navigation-provider],
[data-fit-page="location"] button,
[data-fit-page="location"] .card {
  border-radius: 0 !important;
  box-shadow: none !important;
}

@media (max-width: 767px) {
  .page-header,
  [data-skin-page-template="programList"] > section:first-child,
  [data-fit-page="doctors"] > section:first-child {
    padding-top: 4.5rem !important;
    padding-bottom: 3.5rem !important;
  }

  section[data-skin-page-template="programList"] .grid > a {
    grid-template-columns: 1fr !important;
    gap: 1.25rem !important;
  }

  [data-skin-page-template="programDetail"] > section:first-of-type {
    padding-top: 4.5rem !important;
    padding-bottom: 4.5rem !important;
  }

  [data-skin-page-template="programDetail"] > section:first-of-type .grid {
    grid-template-columns: 1fr !important;
  }

  [data-skin-page-template="programDetail"] > section:first-of-type .relative:last-child {
    order: -1;
  }

  [data-fit-page="doctors"] > section:last-child .grid {
    grid-template-columns: 1fr !important;
    gap: 3rem !important;
  }

  [data-fit-page="doctors"] > section:last-child .card {
    grid-template-columns: 1fr !important;
    gap: 1.5rem;
  }

  [data-fit-page="blog"] .flex.min-w-max {
    justify-content: flex-start !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
