/* Style and service pages extend the existing studio layout. */
.style-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  align-items: baseline;
  color: #fcf7eb;
  font-size: 0.95rem;
  line-height: 1.5;
}
.style-breadcrumb a,
.style-article a:not(.cta-btn-hero):not(.cta-link-hero) {
  color: inherit;
  text-underline-offset: 0.2em;
}
.style-main .about-intro-wrapper { width: 100%; max-width: none; }
.style-main p, .style-article p, .style-article li { line-height: 1.6; }
.style-gallery {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 19rem), 1fr));
  gap: 1.5rem;
  margin-top: 3rem;
}
.style-gallery figure { margin: 0; min-width: 0; }
.style-gallery img {
  display: block;
  width: 100%;
  height: clamp(20rem, 38vw, 36rem);
  object-fit: contain;
  background: #171917;
}
.style-gallery figcaption {
  color: #d6d3c9;
  font-size: 1rem;
  line-height: 1.5;
  padding: 1rem 0;
  max-width: 100%;
}
.style-article { color: #fcf7eb; }
.style-article .article-wrapper { width: 100%; max-width: none; }
.style-article .article-cta { border-top: 1px solid #fff3; margin-top: 4rem; padding-top: 2rem; }
.style-article .hero-buttons { flex-wrap: wrap; row-gap: 1.5rem; }
.style-main h1 { overflow-wrap: break-word; }
.services-grid { margin-top: 3rem; }
@media (max-width: 600px) {
  .style-main h1 { font-size: clamp(2.25rem, 9vw, 3.5rem); }
  .style-gallery img { height: auto; max-height: 36rem; }
  .style-article .cta-btn-hero { max-width: 100%; text-align: center; }
}
