.ct-studio-directory { margin: 2.5rem 0; }
.ct-studio-directory__list { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 19rem), 1fr)); gap: 1rem; }
.ct-studio-directory__card { border: 1px solid #d7d7d7; border-radius: .5rem; padding: 1.25rem; background: #fff; min-width: 0; }
.ct-studio-directory__card h3 { margin: 0 0 1rem; font-size: 1.25rem; }
.ct-studio-directory__card dl { display: grid; grid-template-columns: minmax(5.5rem, 34%) minmax(0, 1fr); gap: .5rem .75rem; margin: 0 0 1rem; }
.ct-studio-directory__card dt { font-weight: 700; }
.ct-studio-directory__card dd { margin: 0; overflow-wrap: anywhere; }
.ct-studio-directory__card p { margin: .75rem 0 0; }
.ct-studio-directory__cta { display: inline-block; padding: .6rem .9rem; border-radius: .35rem; background: #1967a5; color: #fff !important; text-decoration: none; }
.ct-studio-directory__cta:focus-visible { outline: 3px solid #222; outline-offset: 3px; }

body.page-id-1303 :is(.ct-studio-search,.ct-studio-areas,.ct-studio-area-intro) { box-sizing: border-box; width: min(100%, 1080px); margin-inline: auto; }
body.page-id-1303 .ct-studio-search { margin-top: 24px; padding: 18px; background: #fff; border: 1px solid #dce8dc; border-radius: 6px; box-shadow: 0 2px 12px rgb(0 0 0 / 5%); }
body.page-id-1303 .ct-studio-search__row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr) minmax(120px, .42fr); gap: 12px; align-items: end; }
body.page-id-1303 .ct-studio-search__field { min-width: 0; }
body.page-id-1303 .ct-studio-search label, body.page-id-1303 .ct-studio-areas__filter label { display: block; margin: 0 0 6px; font-size: 14px; font-weight: 700; line-height: 1.4; color: #263b28; }
body.page-id-1303 .ct-studio-search :is(input,select,button), body.page-id-1303 .ct-studio-areas__filter input { box-sizing: border-box; width: 100%; min-width: 0; min-height: 44px; padding: 8px 12px; font: inherit; border-radius: 4px; }
body.page-id-1303 .ct-studio-search :is(input,select), body.page-id-1303 .ct-studio-areas__filter input { border: 1px solid #a7b9a7; background: #fff; color: #222; }
body.page-id-1303 .ct-studio-search button { border: 1px solid #0a9c11; background: #0a9c11; color: #fff; font-weight: 700; cursor: pointer; }
body.page-id-1303 .ct-studio-search button:hover { background: #087e0e; }
body.page-id-1303 .ct-studio-search__meta { display: flex; align-items: center; justify-content: space-between; gap: 8px 16px; margin-top: 10px; }
body.page-id-1303 .ct-studio-search__reset { display: inline-flex; align-items: center; min-height: 44px; padding: 6px 8px; color: #246b2b; text-decoration: underline; }
body.page-id-1303 #ct-studio-search-count { margin: 0; padding: 0; font-size: 13px; }
body.page-id-1303 #ct-studio-search-empty { margin: 8px 0 0; padding: 0; font-size: 14px; }
body.page-id-1303 .ct-studio-areas { margin-top: 12px; background: #fff; border: 1px solid #dce8dc; border-radius: 6px; }
body.page-id-1303 .ct-studio-areas summary { box-sizing: border-box; min-height: 44px; padding: 11px 16px; color: #246b2b; font-weight: 700; cursor: pointer; }
body.page-id-1303 .ct-studio-areas__content { padding: 0 16px 16px; }
body.page-id-1303 .ct-studio-areas__filter { max-width: 360px; margin: 4px 0 14px; }
body.page-id-1303 .ct-studio-areas__grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; margin: 0; padding: 0; list-style: none; }
body.page-id-1303 .ct-studio-areas__grid li { min-width: 0; margin: 0; padding: 0; }
body.page-id-1303 .ct-studio-areas__grid li[hidden], body.page-id-1303 .ct-studio-areas__empty[hidden], body.page-id-1303 .ct-studio-areas__filter[hidden] { display: none; }
body.page-id-1303 .ct-studio-areas__grid a { box-sizing: border-box; display: flex; align-items: center; justify-content: space-between; gap: 6px; min-width: 0; min-height: 44px; padding: 7px 10px; border: 1px solid #dce8dc; border-radius: 4px; color: #246b2b; text-decoration: none; overflow-wrap: anywhere; }
body.page-id-1303 .ct-studio-areas__grid a:hover { background: #f0f8f0; }
body.page-id-1303 .ct-studio-areas__grid a[aria-current="page"] { border-color: #0a9c11; background: #e9f7e9; font-weight: 700; }
body.page-id-1303 .ct-studio-areas__empty { margin: 0 0 12px; padding: 0; }
body.page-id-1303 .ct-studio-area-intro { margin-top: 16px; line-height: 1.75; }
body.page-id-1303 .ct-studio-search :is(input,select,button,a):focus-visible,
body.page-id-1303 .ct-studio-areas :is(summary,input,a):focus-visible { outline: 3px solid #236b2b; outline-offset: 2px; }
body.page-id-1303 .ct-studio-pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; max-width: 1080px; margin: 20px auto 32px; padding: 0 12px; }
body.page-id-1303 .ct-studio-pagination a { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 8px 12px; border: 1px solid #458c48; border-radius: 4px; background: #fff; color: #246b2b; text-decoration: none; }
body.page-id-1303 .ct-studio-pagination a[aria-current="page"] { background: #0a9c11; color: #fff; font-weight: 700; }
body.page-id-1303 .ct-studio-pagination a:focus-visible { outline: 3px solid #236b2b; outline-offset: 2px; }
body.page-id-1303 .ct-studio-prelaunch-card .elementor-widget { margin-bottom: 0; }
body.page-id-1303 .ct-studio-prelaunch-card :is(h3,p.elementor-heading-title,.elementor-icon-list-text) { color: #7a6e71; }
body.page-id-1303 .ct-studio-prelaunch-card .elementor-widget-button .elementor-button { display: block; width: 100%; text-align: center; background: #0a9c11; color: #fff; text-decoration: none; }
body.page-id-1303 .ct-studio-prelaunch-card .elementor-widget-button .elementor-button:hover { background: #087e0e; }
.ct-studio-ad-label { display: inline-block; margin: 2px 0 0; padding: 1px 5px; border: 1px solid #888; border-radius: 2px; color: #555; font-size: 11px; font-weight: 400; line-height: 1.3; }
.ct-studio-related { box-sizing: border-box; width: min(100%, 900px); min-width: 0; margin: 32px auto 56px; padding: 20px; background: #f7faf7; border: 1px solid #dce8dc; overflow-wrap: anywhere; }
.ct-studio-related h2 { margin: 0 0 12px; font-size: 1.35rem; }
.ct-studio-related ul { margin: 0; padding-left: 1.5em; line-height: 1.9; }
.ct-studio-related a:focus-visible { outline: 3px solid #236b2b; outline-offset: 2px; }

.ct-studio-detail { width: min(100%, 900px); margin: 24px auto 60px; color: #222; }
.ct-studio-detail__back { margin: 0 0 18px; }
.ct-studio-detail__hero { display: block; width: 100%; aspect-ratio: 1420 / 865; object-fit: cover; border-radius: 4px; }
.ct-studio-detail__summary { font-size: 17px; line-height: 1.8; }
.ct-studio-detail__description { margin: 20px 0; line-height: 1.8; }
.ct-studio-detail__facts { display: grid; grid-template-columns: minmax(7em, 24%) minmax(0, 1fr); margin: 28px 0; border-top: 1px solid #ddd; }
.ct-studio-detail__facts :is(dt,dd) { margin: 0; padding: 12px; border-bottom: 1px solid #ddd; line-height: 1.6; overflow-wrap: anywhere; }
.ct-studio-detail__facts dt { font-weight: 700; background: #f7faf7; }
/* The child theme forces one scrolling line; studio breadcrumbs wrap naturally. */
body.ct-studio-prelaunch .breadcrumb-area { height: auto; max-height: none; overflow: visible; border: 0; }
body.ct-studio-prelaunch .breadcrumb-area ul.breadcrumb {
  display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 0;
  width: 100%; min-width: 0; max-height: none; height: auto;
  margin: 0; padding: 0; border: 0; border-radius: 0; box-shadow: none; background: transparent;
  overflow: visible; white-space: normal; list-style: none;
}
body.ct-studio-prelaunch .breadcrumb-area ul.breadcrumb li {
  display: inline-flex; align-items: baseline; flex: 0 1 auto; min-width: 0; max-width: 100%;
  margin: 0; padding: 0; white-space: normal; overflow-wrap: anywhere;
}
body.ct-studio-prelaunch .breadcrumb-area ul.breadcrumb li::before { content: none; }
body.ct-studio-prelaunch .breadcrumb-area .breadcrumb :is(a, span[itemprop="name"]) { min-width: 0; max-width: 100%; white-space: normal; overflow-wrap: anywhere; }
@media (max-width: 767px) { body.page-id-1303 .ct-studio-areas__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 599px) {
  body.page-id-1303 .ct-studio-pagination { gap: 4px; padding: 0; }
  body.page-id-1303 .ct-studio-pagination a { padding: 8px 6px; font-size: 14px; }
  body.page-id-1303 .ct-studio-search { padding: 14px; }
  body.page-id-1303 .ct-studio-search__row { grid-template-columns: minmax(0, 1fr); }
  body.page-id-1303 .ct-studio-areas__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ct-studio-detail__facts { grid-template-columns: minmax(6em, 32%) minmax(0, 1fr); }
}
