:root {
  --awqaf-radius: 0px;
}

/**
 * Site-wide section rhythm, directional borders, and desktop symmetry.
 *
 * Keep true two-sided content panels visually balanced, but let repeated
 * heading/text splits align from their content instead of stretching.
 */

.home-eyebrow,
.about-eyebrow,
.team-eyebrow,
.places-tag,
.archive-hero__eyebrow,
.archive-card__label,
.projects-page .places-tag,
.blog-page .places-tag,
.article-page .places-tag,
.contact-page .places-tag {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  min-height: 32px;
  margin: 0 0 16px;
  padding: 4px 12px;
  border: 0;
  border-radius: 0;
  background: var(--color-gold);
  color: var(--color-deep);
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0;
}

:is(
  .home-title,
  .about-title,
  .team-title,
  .places-heading h2,
  .projects-section-heading h2,
  .blog-archive__heading h2,
  .contact-map__heading h2
) {
  font-size: clamp(1.55rem, 2.1vw, 1.95rem);
  font-weight: 300;
  line-height: 1.4;
  letter-spacing: 0;
}

:is(
  .places-hero h1,
  .projects-hero h1,
  .blog-hero__copy h1,
  .contact-hero h1
) {
  font-size: clamp(2.125rem, 3.2vw, 2.75rem);
  line-height: 1.35;
  letter-spacing: 0;
}

.blog-feature-card,
.contact-form-panel {
  border-inline-end: 0;
  border-inline-start: 4px solid var(--color-gold);
}

@media (min-width: 901px) {
  :where(
    .awqaf-split--symmetric,
    .home-about__grid,
    .media-text__grid,
    .home-villages__grid,
    .home-updates__grid,
    .home-reports__layout,
    .about-intro__grid,
    .about-identity__grid,
    .about-governance__grid,
    .about-faq__grid,
    .team-hero__grid,
    .team-statement__grid,
    .profile-hero__grid,
    .profile-biography__grid,
    .projects-hero__inner,
    .projects-hero__grid,
    .projects-vision__grid,
    .projects-local__grid,
    .projects-process__grid,
    .blog-hero__inner,
    .blog-feature-card,
    .contact-hero__inner,
    .contact-main__grid,
    .contact-faq__grid,
    .places-hero__grid,
    .village-overview__grid,
    .village-schools__grid,
    .village-faq__grid,
    .village-property-summary,
    .legal-layout,
    .error-hero__grid
  ) {
    align-items: stretch;
  }

  :where(
    .awqaf-split--symmetric,
    .home-about__grid,
    .media-text__grid,
    .home-villages__grid,
    .home-updates__grid,
    .home-reports__layout,
    .about-intro__grid,
    .about-identity__grid,
    .about-governance__grid,
    .about-faq__grid,
    .team-hero__grid,
    .team-statement__grid,
    .profile-hero__grid,
    .profile-biography__grid,
    .projects-hero__inner,
    .projects-hero__grid,
    .projects-vision__grid,
    .projects-local__grid,
    .projects-process__grid,
    .blog-hero__inner,
    .blog-feature-card,
    .contact-hero__inner,
    .contact-main__grid,
    .contact-faq__grid,
    .places-hero__grid,
    .village-overview__grid,
    .village-schools__grid,
    .village-faq__grid,
    .village-property-summary,
    .legal-layout,
    .error-hero__grid
  ) > * {
    align-self: stretch;
    box-sizing: border-box;
  }

  :is(
    .home-heading--split,
    .about-heading--split,
    .team-heading--split,
    .places-heading--split,
    .projects-section-heading--split,
    .blog-archive__heading,
    .contact-map__heading
  ) {
    align-items: center;
    gap: clamp(28px, 5vw, 64px);
  }

  :is(
    .home-heading--split,
    .about-heading--split,
    .team-heading--split,
    .places-heading--split,
    .projects-section-heading--split,
    .blog-archive__heading,
    .contact-map__heading
  ) > * {
    align-self: center;
    box-sizing: border-box;
  }

  .home-heading--split > div:first-child,
  .about-heading--split > div:first-child,
  .team-heading--split > div:first-child,
  [dir] .places-heading--split > :first-child,
  .about-principles .about-heading--split > div:first-child,
  .home-systems .home-heading--split-light > div {
    margin-inline-end: 0;
    padding-inline-end: 0;
    border-inline-end: 0;
  }

  .home-heading--split > p,
  .about-heading--split > p,
  .team-heading--split > p,
  .places-heading--split > p,
  .places-heading--split > .places-heading__text,
  .projects-section-heading--split > p,
  .blog-archive__heading > p,
  .contact-map__heading > p,
  .about-principles .about-heading--split > p {
    margin: 0;
    padding-inline-start: clamp(22px, 3.2vw, 42px);
    border-inline-start: 3px solid var(--color-gold);
    color: var(--color-muted);
    font-size: 0.95rem;
    line-height: 2;
  }

  :is(
    .home-heading--split-light,
    .projects-section-heading--light
  ) > p {
    border-inline-start-color: var(--color-gold);
  }

  .blog-feature-card__media,
  .contact-form-panel,
  .contact-info,
  .projects-vision__art,
  .property-hero-stats,
  .directory-finder {
    block-size: 100%;
  }

  .village-faq__grid > .places-heading {
    margin-block-end: 0;
  }
}

@media (min-width: 681px) and (max-width: 900px) {
  :is(
    .home-heading--split,
    .about-heading--split,
    .team-heading--split,
    .places-heading--split,
    .projects-section-heading--split,
    .blog-archive__heading,
    .contact-map__heading
  ) {
    gap: 24px;
  }

  .home-heading--split > div:first-child,
  .about-heading--split > div:first-child,
  .team-heading--split > div:first-child,
  [dir] .places-heading--split > :first-child,
  .about-principles .about-heading--split > div:first-child,
  .home-systems .home-heading--split-light > div {
    padding-inline-end: 0;
    border-inline-end: 0;
  }

  .home-heading--split > p,
  .about-heading--split > p,
  .team-heading--split > p,
  .places-heading--split > p,
  .places-heading--split > .places-heading__text,
  .projects-section-heading--split > p,
  .blog-archive__heading > p,
  .contact-map__heading > p,
  .about-principles .about-heading--split > p {
    margin: 0;
    padding-inline-start: clamp(20px, 4vw, 34px);
    border-inline-start: 3px solid var(--color-gold);
    color: var(--color-muted);
    font-size: 0.95rem;
    line-height: 2;
  }
}

@media (max-width: 680px) {
  :is(
    .places-hero h1,
    .projects-hero h1,
    .blog-hero__copy h1,
    .contact-hero h1
  ) {
    font-size: clamp(1.7rem, 8vw, 2.25rem);
    line-height: 1.38;
  }
}

/* Codex split heading divider height refinement */
@media (min-width: 901px) {
  :is(
    .home-heading--split,
    .about-heading--split,
    .team-heading--split,
    .places-heading--split,
    .projects-section-heading--split,
    .blog-archive__heading,
    .contact-map__heading
  ) {
    align-items: stretch;
  }

  :is(
    .home-heading--split,
    .about-heading--split,
    .team-heading--split,
    .places-heading--split,
    .projects-section-heading--split,
    .blog-archive__heading,
    .contact-map__heading
  ) > * {
    align-self: stretch;
  }


  .home-heading--split > p,
  .about-heading--split > p,
  .team-heading--split > p,
  .places-heading--split > p,
  .places-heading--split > .places-heading__text,
  .projects-section-heading--split > p,
  .blog-archive__heading > p,
  .contact-map__heading > p,
  .about-principles .about-heading--split > p {
    display: grid;
    align-content: center;
  }
}

@media (min-width: 681px) and (max-width: 980px) {
  :is(
    .home-heading--split,
    .about-heading--split,
    .team-heading--split,
    .places-heading--split,
    .projects-section-heading--split,
    .blog-archive__heading,
    .contact-map__heading
  ) {
    align-items: stretch;
    grid-auto-rows: 1fr;
  }

  :is(
    .home-heading--split,
    .about-heading--split,
    .team-heading--split,
    .places-heading--split,
    .projects-section-heading--split,
    .blog-archive__heading,
    .contact-map__heading
  ) > * {
    align-self: stretch;
  }


  .home-heading--split > p,
  .about-heading--split > p,
  .team-heading--split > p,
  .places-heading--split > p,
  .places-heading--split > .places-heading__text,
  .projects-section-heading--split > p,
  .blog-archive__heading > p,
  .contact-map__heading > p,
  .about-principles .about-heading--split > p {
    display: grid;
    align-content: center;
  }
}
/* End Codex split heading divider height refinement */

/* Codex sitewide radius normalization */
:is(
  .home-eyebrow,
  .about-eyebrow,
  .team-eyebrow,
  .places-tag,
  .archive-hero__eyebrow,
  .archive-card__label,
  .button,
  .places-button,
  input,
  textarea,
  select,
  .blog-feature-card,
  .blog-card,
  .contact-form-panel,
  .contact-info,
  .contact-card,
  .project-card,
  .projects-card,
  .property-card,
  .village-card,
  .mosque-card,
  .directory-finder,
  .property-hero-stats,
  .report-download-panel
) {
  border-radius: var(--awqaf-radius, 0px);
}
/* End Codex sitewide radius normalization */


/* Villages directory: keep the divider tied to the tag-and-title block. */
@media (min-width: 901px) {
  .villages-directory .places-heading--split > :first-child {
    align-self: center;
    padding-inline-end: clamp(28px, 4vw, 62px);
    border-inline-end: 3px solid var(--color-gold);
  }

  .villages-directory .places-heading--split > p,
  .villages-directory .places-heading--split > .places-heading__text {
    align-self: center;
    padding-inline-start: 0;
    border-inline-start: 0;
  }
}

@media (min-width: 681px) and (max-width: 900px) {
  .villages-directory .places-heading--split > :first-child {
    align-self: stretch;
    padding-inline-end: 0;
    padding-block-end: 22px;
    border-inline-end: 0;
    border-block-end: 2px solid var(--color-gold);
  }

  .villages-directory .places-heading--split > p,
  .villages-directory .places-heading--split > .places-heading__text {
    padding-inline-start: 0;
    border-inline-start: 0;
  }
}


/* Codex requested-page consistency pass */
:is(
  .blog-section-heading h2,
  .contact-form-panel h2,
  .contact-info h2,
  .project-single .places-heading h2
) {
  color: var(--color-deep);
  font-family: var(--font-display);
  font-size: clamp(1.55rem, 2.1vw, 1.95rem);
  font-weight: 300;
  line-height: 1.4;
  letter-spacing: 0;
}
:is(
  .projects-text-link,
  .blog-page .places-button,
  .project-single .places-button
) {
  width: fit-content;
}
:is(
  .projects-hero__panel,
  .blog-search__control,
  .contact-hero__quick a,
  .contact-map__frame,
  .project-single .village-overview__details
) {
  border-radius: var(--awqaf-radius, 0);
}
/* End Codex requested-page consistency pass */
