/* ==========================================================================
   Theme landing — /themes/<slug> — and the themes index
   ========================================================================== */

.acur-tpage { padding-top: clamp(20px, 3vw, 44px); }

/* Listing page head (also used by the filtered listings) */
.acur-lhead { margin-bottom: clamp(24px, 3vw, 44px); }
.acur-lhead__title { font-size: clamp(1.875rem, 1.4rem + 2vw, 3rem); }
.acur-lhead__intro { margin-top: 14px; max-width: 72ch; color: var(--acur-ink-2); font-size: var(--acur-fs-lg); }

/* Page head: plain type on the page background, like the article head */
.acur-thead { position: relative; display: flex; flex-direction: column; align-items: flex-start; padding-block: clamp(4px, 1vw, 12px) clamp(22px, 2.6vw, 36px); border-bottom: 1px solid var(--acur-line-navy); }
.acur-thead__bg { display: none; }
.acur-thead__body { display: flex; flex-direction: column; align-items: flex-start; min-width: 0; }
/* With a theme image: text on the left, the photograph in a rounded panel on the right */
.acur-thead--media { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 440px); align-items: center; gap: clamp(20px, 4vw, 64px); }
.acur-thead__media { position: relative; overflow: hidden; margin: 0; aspect-ratio: 16 / 10.5; border-radius: 16px; background: var(--acur-navy); box-shadow: 0 30px 60px -30px rgba(0, 0, 0, .7); }
.acur-thead__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 899px) { .acur-thead--media { grid-template-columns: minmax(0, 1fr); } .acur-thead__media { max-width: 560px; } }
.acur-thead__kicker { display: flex; align-items: center; gap: 12px; color: var(--acur-ink-2); font-size: .75rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; }
.acur-thead__orb { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 13px; background: var(--acur-navy); color: #fff; }
.acur-thead__orb .acur-icon { width: 22px; height: 22px; }
.acur-thead__of { color: var(--acur-ink-3); }
.acur-thead__name { max-width: 22ch; margin-top: 16px; font-size: clamp(1.875rem, 1.4rem + 2vw, 3rem); }
.acur-thead__stand { max-width: 70ch; margin-top: 12px; color: var(--acur-ink-2); font-size: var(--acur-fs-lg); line-height: 1.55; }
.acur-thead__foot { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 32px; margin-top: clamp(18px, 2vw, 26px); }
.acur-thead__facts { display: flex; gap: 24px; margin: 0; padding: 0; list-style: none; }
.acur-thead__fact { display: flex; align-items: baseline; gap: 7px; line-height: 1.1; }
.acur-thead__fact + .acur-thead__fact { padding-left: 24px; border-left: 1px solid var(--acur-line-navy); }
.acur-thead__fact-n { color: var(--acur-navy); font-family: var(--acur-font-heading); font-size: 1.5rem; font-weight: 800; font-variant-numeric: tabular-nums; }
.acur-thead__fact-l { color: var(--acur-ink-2); font-size: var(--acur-fs-sm); }
.acur-thead__lead { display: inline-flex; align-items: center; gap: 10px; padding: 5px 16px 5px 5px; border-radius: 999px; background: #fff; box-shadow: 0 0 0 1px rgba(0, 55, 123, .12); color: var(--acur-navy); text-decoration: none; }
.acur-thead__lead:hover { background: var(--acur-mist); color: var(--acur-navy); }
.acur-thead__lead .acur-avatar { width: 38px !important; height: 38px !important; font-size: 13px !important; box-shadow: none; }
.acur-thead__lead-text { display: grid; line-height: 1.25; }
.acur-thead__lead-label { color: var(--acur-orange-d); font-size: .625rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.acur-thead__lead-name { font-size: var(--acur-fs-sm); font-weight: 600; }

.acur-tintro { margin-top: var(--acur-gap); padding: clamp(24px, 3.2vw, 43px); border-radius: 22px; }
.acur-tintro__text { color: var(--acur-ink); font-size: var(--acur-fs-lg); line-height: 1.7; }
.acur-tintro__text > * + * { margin-top: 1em; }

/* Card grids */
.acur-tgrid { display: grid; gap: clamp(12px, 1.4vw, 20px); margin: 0; padding: 0; list-style: none; }
.acur-tgrid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.acur-tgrid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.acur-tgrid__item { display: flex; min-width: 0; }
.acur-tgrid__item > * { width: 100%; }
.acur-tpeople { gap: 10px; padding: clamp(12px, 1.6vw, 22px); border-radius: 22px; }
.acur-tpage .acur-gcard { display: flex; flex-direction: column; padding: 18px; }
.acur-tpage .acur-gcard__pi { margin-top: auto; padding-top: 10px; }
.acur-capacity--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.acur-capacity--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }

/* Theme tiles outside the home page */
.acur-themes--detail { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.acur-themes--detail .acur-theme__name { font-size: var(--acur-fs-h3); }

@media (max-width: 1279px) {
	.acur-themes--5, .acur-themes--detail { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.acur-tgrid--4 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.acur-capacity--4, .acur-capacity--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 899px) {
	.acur-tgrid--3, .acur-tgrid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.acur-themes--detail { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
	.acur-tgrid--3, .acur-tgrid--4, .acur-themes--detail { grid-template-columns: minmax(0, 1fr); }
	.acur-themes--5 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.acur-capacity--4, .acur-capacity--3 { grid-template-columns: minmax(0, 1fr); }
	.acur-tintro { border-radius: 18px; }
	}

/* Theme landing: content column + pinned side column (shares the profile grid) */
.acur-tpage .acur-profile__grid { margin-top: clamp(20px, 2.6vw, 36px); }
.acur-tpage .acur-psec { scroll-margin-top: 150px; }
.acur-tpage .acur-psec__head { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.acur-tpage .acur-psec__head .acur-more { margin: 0; }
.acur-tintro { margin-top: 0; }
.acur-tintro__text { max-width: none; }
.acur-tpage .acur-tgrid--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 18px; }
.acur-tpage .acur-tgrid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 18px; }
.acur-tpage .acur-cards--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 18px; }
.acur-tpage .acur-capacity--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 18px; }
.acur-tpeople { padding: 0; border-radius: 0; background: none; box-shadow: none; }
.acur-tpeople::before { display: none; }
.acur-tlead { display: grid; grid-template-columns: 56px minmax(0, 1fr); gap: 14px; align-items: center; margin-top: 12px; }
.acur-tlead__label { color: var(--acur-orange-d); font-size: .6875rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.acur-tlead__name { display: block; margin-top: 2px; color: var(--acur-navy); font-weight: 700; text-decoration: none; line-height: 1.25; }
.acur-tlead__name:hover { color: var(--acur-orange-d); }
.acur-tlead__role { display: block; margin-top: 3px; color: var(--acur-ink-2); font-size: var(--acur-fs-xs); line-height: 1.4; }
.acur-tothers { margin-top: clamp(28px, 4vw, 56px); }
@media (max-width: 1099px) {
	.acur-tpage .acur-tgrid--4, .acur-tpage .acur-cards--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 899px) {
	.acur-tpage .acur-tgrid--3, .acur-tpage .acur-tgrid--4, .acur-tpage .acur-cards--3, .acur-tpage .acur-capacity--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
	.acur-tpage .acur-tgrid--3, .acur-tpage .acur-tgrid--4, .acur-tpage .acur-cards--3, .acur-tpage .acur-capacity--4 { grid-template-columns: minmax(0, 1fr); }
}

/* Facility cards in the theme content column: two wide cards, so a flatter image */
.acur-tpage .acur-fac__media { aspect-ratio: 16 / 9; }
