/* Polish layer for the inner pages (About, Paintings, Art Chiasma, Events, Blog).
   Loaded after each page's own styles, so it only refines what is there. */

/* ── FOOTER AT THE BOTTOM ── short pages no longer leave the footer floating */
body { min-height:100vh; min-height:100svh; display:flex; flex-direction:column; }
body > .site-footer { margin-top:auto; }

/* ── PAGE HERO ── taller, bigger title */
.page-hero {
  min-height:clamp(420px, 62vh, 680px);
  padding:160px 48px 72px;
  align-items:end;
}
.page-hero h1 {
  font-size:clamp(4rem,10vw,9.5rem);
  letter-spacing:-0.04em; line-height:0.9;
}
.page-hero-desc {
  font-size:1.05rem; line-height:1.75; color:#333; font-weight:400; max-width:440px;
}

/* ── READABLE TEXT ── the very light grey body text was hard to read */
.offer-item p, .style-desc, .bio-text p, .cv-what p, .ev-main p, .post-row p,
.faq-item p, .ask p {
  color:#444; font-weight:400;
}

/* ── QUIET ACCENTS ── red is kept for the active menu item only */
.otag { color:#555 !important; border-color:var(--grey-2) !important; }
.offer-item .book-link { color:var(--black) !important; }
.offer-num { font-family:'Manrope',sans-serif; font-size:0.8rem; font-weight:500; letter-spacing:0.08em; color:#777; font-variant-numeric:tabular-nums; }

/* ── CARDS ── soft lift on hover */
.offer-item { transition:background 0.4s, transform 0.5s cubic-bezier(0.16,1,0.3,1); }
.offer-item:hover { background:var(--grey-1); }

/* ── SERIES I-III ── quiet dark tiles while the paintings are in progress */
.series-item { background:#141414; }
.series-item .work-item-bg { display:none; }
.series-item .work-item-overlay { background:none; justify-content:space-between; padding:28px; }
.series-item .lbl {
  font-family:'Manrope',sans-serif; font-size:0.8rem; font-style:normal;
  letter-spacing:0.08em; text-transform:uppercase; font-weight:500; color:rgba(255,255,255,0.5); line-height:1;
}
.series-item .ttl { font-size:1.5rem; }

/* ── PAINTINGS ── each work shown whole, with its caption underneath */
.gallery { grid-template-columns:repeat(2,1fr); gap:56px 40px; align-items:start; }
.g-item { aspect-ratio:auto; overflow:visible; }
.g-item img { height:auto; object-fit:contain; background:none; }
.g-item:hover img { transform:none; }
.g-info { position:static; opacity:1 !important; background:none !important; padding:14px 0 0; }
.g-title { color:var(--black); font-size:1.05rem; }
.g-meta { color:#666; }
.g-meta:empty { display:none; }

/* ── EVENTS ── a calmer empty state */
.ev-empty { font-size:1.15rem; line-height:1.6; color:#333; font-weight:400; padding:56px 0; }

@media (max-width:900px) {
  .page-hero { min-height:auto; padding:130px 24px 56px; }
  .page-hero h1 { font-size:clamp(3.4rem,16vw,5.5rem); }
  .gallery { grid-template-columns:1fr; gap:20px; }
  .series-item { aspect-ratio:16/10; }
}

/* ── NEWSLETTER ── subscribers pick which courses they hear about */
.nl-topics { width:100%; border:none; display:flex; flex-wrap:wrap; gap:10px; margin:12px 0 8px; }
.nl-topics legend { font-size:0.65rem; letter-spacing:2px; text-transform:uppercase; font-weight:600; color:rgba(255,255,255,0.5); margin-bottom:12px; }
.nl-topics label { cursor:pointer; }
.nl-topics input { position:absolute; opacity:0; width:1px; height:1px; min-width:0; padding:0; border:0; }
.nl-topics span { display:inline-block; padding:8px 14px; border:1px solid rgba(255,255,255,0.3); border-radius:999px; font-size:0.78rem; color:rgba(255,255,255,0.75); transition:background 0.2s, color 0.2s, border-color 0.2s; }
.nl-topics label:hover span { border-color:white; }
.nl-topics input:checked + span { background:white; color:var(--black); border-color:white; }
.nl-topics input:focus-visible + span { outline:2px solid white; outline-offset:2px; }
