/* Jesus.army 1.1.0: editorial modules. Smaller type scale, prominent hero brand mark, media feature,
   concept collection lookbook, piece detail, events directory with filters, badges. */

/* ---------- Type scale (the 1.0.2 display ceiling was too large) ---------- */
body{--ja-step-4:clamp(2rem,3.5vw,3.25rem);--ja-step-3:clamp(1.5rem,2.5vw,2.25rem);--ja-step-2:clamp(1.25rem,1.7vw,1.6rem);--ja-step-0:clamp(1rem,.98rem + .2vw,1.125rem)}
h1,.jat-hero__title,.jat-page__title{font-size:var(--ja-step-4);line-height:1.15;letter-spacing:-.02em;max-width:22ch}
h2,.jat-section__title,.jat-closing__title{font-size:var(--ja-step-3);line-height:1.2}
h3{font-size:var(--ja-step-1)}
.jat-hero__text{font-size:clamp(1rem,1.2vw,1.125rem);line-height:1.7;max-width:36rem}
.jat-page__intro{font-size:var(--ja-step-1);max-width:40rem}

/* ---------- Hero: brand mark, concise mission, one CTA, optional media ---------- */
.jat-hero--editorial{padding-block:clamp(40px,6vw,88px)}
.jat-hero--editorial .jat-hero__inner{display:grid;gap:40px;align-items:center}
.jat-hero__brand{margin:0 0 28px}
.jat-hero__brand img,.ja-hero-logo{display:block;width:min(100%,320px);height:auto}
.jat-hero--logo-compact .jat-hero__brand img{width:min(100%,200px)}
.jat-hero--editorial .jat-eyebrow{margin-bottom:14px}
.jat-hero--editorial .jat-hero__title{margin-bottom:.45em}
.jat-hero__media{margin:0;border:1px solid #393D33;background:var(--jat-olive)}
.jat-hero__media img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;filter:saturate(.75)}
.jat-hero__media .ja-embed{margin:0;border-radius:0}
.jat-hero__media .ja-embed__inner{border-radius:0}
@media(min-width:768px){.jat-hero__brand img{width:min(100%,400px)}.jat-hero--logo-compact .jat-hero__brand img{width:min(100%,240px)}}
@media(min-width:960px){.jat-hero__brand img{width:min(100%,480px)}.jat-hero--with-media .jat-hero__inner{grid-template-columns:1.05fr .95fr;gap:64px}.jat-hero--editorial:not(.jat-hero--with-media) .jat-hero__inner{grid-template-columns:minmax(0,52rem)}}
@media(min-width:1280px){.jat-hero__brand img{width:min(100%,520px)}}

/* ---------- Shared editorial bits ---------- */
.jat-prose--on-dark{color:#C6C6BB}
.jat-section--dark .jat-eyebrow{color:var(--jat-champagne)}
.jat-section--dark .jat-link-arrow,.jat-section--dark .jat-link-arrow:hover{color:var(--jat-ivory)}
.jat-feature-media{margin-bottom:28px}
.jat-actions .jat-link-arrow+.jat-link-arrow{margin-left:1.25rem}
.jat-commitments--compact .jat-commitment{padding:20px 0}
.jat-commitments--compact .jat-commitment__number{margin-bottom:14px}
.jat-commitments--compact .jat-commitment h3{font-size:16px;margin-bottom:8px}
.jat-commitments--compact .jat-commitment p{font-size:14px}
@media(min-width:768px){.jat-commitments--compact .jat-commitment{padding:24px 16px}}
.jat-ext{font-size:.85em;margin-left:.15em}

/* ---------- Badges ---------- */
.jat-badge{border-radius:2px;letter-spacing:.06em;text-transform:uppercase;font-size:11px;padding:.3rem .6rem}
.jat-badge--concept{background:transparent;color:var(--jat-champagne);border:1px solid var(--jat-champagne)}
.jat-section--ivory .jat-badge--concept{color:#6F5A2B;border-color:#8E7540;background:transparent}
.jat-badge--ours{background:var(--jat-olive);color:var(--jat-ivory)}
.jat-section--ivory .jat-badge--ours{background:var(--jat-ink);color:var(--jat-ivory)}
.jat-badge--community{background:transparent;color:var(--jat-ivory);border:1px solid #797768}
.jat-section--ivory .jat-badge--community{color:var(--jat-ink);border-color:#52574D}
.jat-badge--status-cancelled{background:#5B2422;color:#FFD9D5}
.jat-badge--status-postponed{background:#4B3F17;color:#F4E6BC}
.jat-card__badges{margin:0 0 .5rem;display:flex;flex-wrap:wrap;gap:.35rem}
.jat-card--event-cancelled .jat-card__title{text-decoration:line-through;text-decoration-thickness:.06em}
.jat-event-status{margin-top:1rem}
.jat-community-note{max-width:48rem;margin:0 0 1.5rem}

/* ---------- Collection panel (home) and lookbook ---------- */
.jat-collection-panel .jat-piece__status{margin:0 0 28px}
.jat-collection-status{margin-top:20px;max-width:40rem}
.jat-collection-status .jat-piece__status{margin:0 0 10px}
.jat-collection-status p{font-size:14px;line-height:1.7}
.jat-collection-stories{display:grid;gap:32px}
.jat-collection-story__title{font-size:var(--ja-step-2);margin-bottom:.5em}
.jat-collection-story p{font-size:15px;line-height:1.8;color:#50574C}
@media(min-width:768px){.jat-collection-stories{grid-template-columns:repeat(3,minmax(0,1fr));gap:48px}}
.jat-lookbook{background:var(--jat-ink)}
.jat-capsule__description{max-width:40rem;color:#C6C6BB;margin:-1rem 0 1.75rem;font-size:15px}
.jat-pieces{display:grid;gap:24px;grid-template-columns:1fr}
@media(min-width:640px){.jat-pieces--3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:960px){.jat-pieces--3{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}}
.jat-piece{display:flex;flex-direction:column;background:var(--jat-olive);border:1px solid #393D33;border-radius:2px;overflow:hidden;color:var(--jat-ivory)}
.jat-piece a{color:inherit}
.jat-piece__media{display:block;aspect-ratio:4/5;background:#171B16;overflow:hidden}
.jat-piece__media img{width:100%;height:100%;object-fit:cover;display:block}
.jat-piece__media--mark{display:flex;align-items:center;justify-content:center;background:#141814;padding:18%}
.jat-piece__media--mark img{width:100%;height:auto;max-width:360px;object-fit:contain}
.jat-piece__body{padding:24px;display:flex;flex-direction:column;gap:.5rem;flex:1}
.jat-piece__number{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--jat-champagne);margin:0}
.jat-piece__title{font-family:Cinzel,Georgia,serif;font-weight:500;font-size:clamp(1.15rem,1.5vw,1.4rem);letter-spacing:0;margin:0}
.jat-piece__title a{text-decoration:none}
.jat-piece__title a:hover{text-decoration:underline}
.jat-piece__type{font-size:13px;color:#BFC0B6;margin:0}
.jat-piece__message{font-size:15px;line-height:1.6;margin:.25rem 0 0;color:var(--jat-ivory)}
.jat-piece__message--mark{color:#BFC0B6;font-style:italic}
.jat-piece__ref{display:inline-block;margin-left:.35rem;font-size:12px;letter-spacing:.08em;color:var(--jat-champagne)}
.jat-piece__excerpt{font-size:14px;line-height:1.7;color:#C6C6BB;margin:0}
.jat-piece__status{margin:auto 0 0;padding-top:.75rem}
.jat-piece--text .jat-piece__body{padding-top:32px;border-top:3px solid var(--jat-champagne)}
.jat-collection-credit{margin-top:8px}
.jat-collection-close .jat-prose{font-size:var(--ja-step-1);margin-bottom:1rem}

/* ---------- Piece detail ---------- */
.jat-single--product .jat-page__header{margin-bottom:1.5rem}
.jat-piece-header .jat-piece__status{margin:0}
.jat-piece-layout{display:grid;gap:32px}
@media(min-width:900px){.jat-piece-layout{grid-template-columns:1.05fr .95fr;gap:56px;align-items:start}}
.jat-piece-gallery__main{margin:0 0 12px;background:var(--ja-surface-2);border-radius:2px;overflow:hidden}
.jat-piece-gallery__main img{width:100%;height:auto;display:block}
.jat-piece-gallery__details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.jat-piece-gallery__details figure{margin:0;background:var(--ja-surface-2);aspect-ratio:1;overflow:hidden;border-radius:2px}
.jat-piece-gallery__details img{width:100%;height:100%;object-fit:cover}
.jat-piece-gallery__mark{display:grid;gap:16px;justify-items:center;padding:clamp(32px,8vw,72px) clamp(24px,8vw,64px);background:var(--jat-ink);color:#C6C6BB;border-radius:2px}
.jat-piece-gallery__mark img{width:min(100%,420px);height:auto}
.jat-piece-gallery__pending{padding:20px 0;border-block:1px solid var(--ja-border);margin:0}
.jat-piece-detail__lead{font-size:var(--ja-step-1);line-height:1.55;margin-bottom:1.25rem}
.jat-details--piece{grid-template-columns:1fr}
.jat-details--piece .jat-details__wide{grid-column:1/-1}
.jat-details--piece dd p:last-child{margin-bottom:0}
@media(min-width:640px){.jat-details--piece{grid-template-columns:1fr 1fr}}

/* ---------- Events: filters and cards ---------- */
.jat-filters{display:grid;gap:12px;grid-template-columns:1fr;padding:20px;border:1px solid var(--ja-border);background:var(--ja-surface);border-radius:2px;margin-bottom:2rem}
.jat-filters__field{display:grid;gap:6px}
.jat-filters__field label{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ja-muted)}
.jat-filters select,.jat-filters input[type=date]{width:100%;min-height:44px;padding:.5rem .7rem;border:1px solid var(--ja-border);border-radius:2px;background:var(--ja-surface);color:var(--ja-text);font:inherit}
.jat-filters__actions{display:flex;flex-wrap:wrap;gap:.6rem;align-items:end}
@media(min-width:640px){.jat-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:960px){.jat-filters{grid-template-columns:repeat(5,minmax(0,1fr)) auto;align-items:end}}
.jat-no-results{text-align:left}
.jat-card--event .jat-card__excerpt{font-size:14px;line-height:1.7}

/* ---------- Motion ---------- */
@media(prefers-reduced-motion:reduce){.jat-piece,.jat-hero__media img{transition:none}}

/* ---------- WooCommerce (only when installed): inherit the theme's palette and controls ---------- */
.jat-woocommerce{color:var(--ja-text)}
.jat-woocommerce .woocommerce-breadcrumb,.jat-woocommerce .woocommerce-result-count,.jat-woocommerce .product_meta{color:var(--ja-muted);font-size:var(--ja-step--1)}
.jat-woocommerce .button,.jat-woocommerce button.button,.jat-woocommerce a.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.65rem 1.4rem;border-radius:2px;background:var(--jat-ivory);color:var(--jat-ink);border:1px solid var(--jat-ivory);font-weight:600;text-decoration:none}
.jat-woocommerce .woocommerce-error,.jat-woocommerce .woocommerce-message,.jat-woocommerce .woocommerce-info{background:var(--ja-surface);color:var(--ja-text);border-top-color:var(--jat-champagne);border-radius:2px}
.jat-woocommerce .ja-concept-price{display:inline-block;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--jat-champagne);border:1px solid var(--jat-champagne);padding:.3rem .6rem;border-radius:2px}
.jat-woocommerce ul.products li.product .woocommerce-loop-product__title,.jat-woocommerce .product_title{font-family:Cinzel,Georgia,serif;font-weight:500}
.jat-woocommerce ul.products li.product a img{border-radius:2px}

/* ---------- Concept boards (1.2.0): the designer's boards shown whole, never cropped, with a readable caption ---------- */
.jat-board{margin:0;display:grid;gap:18px}
.jat-board__media{margin:0;background:var(--ja-surface-2);border-radius:2px;overflow:hidden}
.jat-board__media img,.jat-board__img{display:block;width:100%;height:auto;max-width:100%}
.jat-board__caption{display:grid;gap:.6rem;max-width:62rem;align-content:start}
.jat-board__title{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ja-muted);margin:0}
.jat-board__label{margin:0}
.jat-board__label .jat-badge{font-size:13px;letter-spacing:.05em;padding:.45rem .75rem;white-space:normal;line-height:1.4}
.jat-board__people{font-size:15px;font-weight:600;line-height:1.5;margin:0}
.jat-board__text{font-size:15px;line-height:1.7;color:var(--ja-muted)}
.jat-board__text p:last-child{margin-bottom:0}
.jat-board__meta{font-size:13px;color:var(--ja-muted);margin:0;display:flex;flex-wrap:wrap;gap:.25rem 1rem;align-items:center}
.jat-board__full{color:inherit;text-decoration:underline;text-underline-offset:.15em;min-height:44px;display:inline-flex;align-items:center}
.jat-section--dark .jat-board__full,.jat-single .jat-board__full{color:var(--jat-ivory)}
.jat-section--dark .jat-board__text,.jat-single .jat-board__text{color:#C6C6BB}
.jat-section--dark .jat-board__title,.jat-single .jat-board__title{color:var(--jat-champagne)}
.jat-lookbook-board .jat-container{display:grid;gap:24px}
.jat-capsule__board{margin:0 0 32px}
.jat-collection-panel__board{margin:0 0 36px}
.jat-piece-gallery__board{margin-top:20px}
.jat-piece-gallery__board-intro{font-size:14px;color:var(--ja-muted);margin:0 0 10px}
.jat-board-review{margin:0 0 20px;border-left:4px solid var(--jat-champagne);border-radius:2px}
.jat-section--dark .jat-board-review,.jat-single .jat-board-review{background:#292F27;color:var(--jat-ivory);border-color:var(--jat-champagne)}
.jat-section--ivory .jat-board-review{background:#F6F3EC;color:var(--jat-ink)}
.jat-board-review p{margin:0}
@media(min-width:960px){.jat-board--split{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:start;gap:40px}.jat-board--split .jat-board__caption{padding-top:8px}}
