/* Category-only presentation. Loaded only for the explicit category registry.
   Existing service-detail, header, form and global framework styles stay independent. */
body.enb-category-page {
  --enb-category-shell: var(--enb-category-header-width, var(--enb-global-shell-max, var(--enb-header-shell, 1552px)));
  --enb-category-gutter: 12px;
  --enb-category-shell-width: min(100%, var(--enb-category-header-width, min(calc(100% - (var(--enb-category-gutter) * 2)), var(--enb-category-shell))));
  --enb-category-section-gap: clamp(28px, 3vw, 48px);
  --enb-category-card-gap: 18px;
}
@media (min-width: 640px) and (max-width: 767.98px) {
  body.enb-category-page { --enb-category-gutter: 20px; }
}
@media (min-width: 768px) and (max-width: 1279.98px) {
  body.enb-category-page { --enb-category-gutter: 14px; }
}
@media (min-width: 1280px) {
  body.enb-category-page { --enb-category-gutter: var(--enb-global-shell-gutter, 24px); }
}

/* One content width; section backgrounds may continue to span the viewport. */
html body.enb-body.enb-category-page main[class]:is(.max-w-7xl.mx-auto, .max-w-6xl.mx-auto, .enb-transport-main),
html body.enb-body.enb-category-page main#mainContent:is(.max-w-7xl, .max-w-6xl),
html body.enb-body.enb-category-page main.kids-experience-main > .max-w-7xl.mx-auto,
html body.enb-body.enb-category-page main.enb-music-shell .enb-wrap,
html body.enb-body.enb-category-page main .tour-container,
html body.enb-body.enb-category-page main.enb-equipment-media-main .enb-equipment-container,
html body.enb-body.enb-category-page main.hub-page .hub-shell,
html body.enb-body.enb-category-page main.sx-page .sx-shell,
html body.enb-body.enb-category-page #categorySection > .max-w-7xl.mx-auto,
html body.enb-body.enb-category-page .enb-sales-hero .enb-sales-wrap,
html body.enb-body.enb-category-page .et-category :is(.et-shell, .enb-electronic-shell, .et-category-shell) {
  box-sizing: border-box;
  width: var(--enb-category-shell-width) !important;
  max-width: var(--enb-category-shell) !important;
  min-width: 0;
  margin-inline: auto !important;
  padding-inline: 0 !important;
}
html body.enb-body.enb-category-page main#mainContent:is(.enb-music-shell, .enb-equipment-media-main, .hub-page, .et-category) {
  width: 100% !important;
  max-width: 100% !important;
  margin-inline: 0 !important;
}
/* The service width guard reads these inherited tokens and otherwise pulls
   category sections back out to the viewport. Keep each section in its parent. */
body.enb-category-page main > :is(section, article) {
  --enb-service-contract-shell-width: 100%;
  --enb-service-content-gutter: calc(50vw - 50%);
}

/* The shared service guards also serve detail pages. Category sections fit
   their own parent instead of opening a second viewport-wide shell inside it. */
html body.enb-body.enb-category-page section:is(#sss, #sik-sorulan-sorular, #sikca-sorulan-sorular, [id$="-sss"], [class*="faq"], [class*="sss"]),
html body.enb-body.enb-category-page .enb-service-auto-review,
html body.enb-body.enb-category-page [data-enb-service-guarantee-host] {
  box-sizing: border-box !important;
  width: var(--enb-category-shell-width) !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-inline: auto !important;
}
html body.enb-body.enb-category-page .enb-service-auto-review {
  margin-block: var(--enb-category-section-gap) !important;
  padding-inline: 0 !important;
}
html body.enb-body.enb-category-page [data-enb-service-guarantee-host] {
  position: relative !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  margin-block: var(--enb-category-section-gap) !important;
}
html body.enb-body.enb-service-page.enb-category-sales-page.enb-category-page .enb-service-guarantee-shell[data-enb-service-guarantee-host] {
  position: relative !important;
  left: auto !important;
  right: auto !important;
  width: var(--enb-category-shell-width) !important;
  max-width: 100% !important;
  margin-inline: auto !important;
  transform: none !important;
}
html body.enb-body.enb-category-page .enb-review-display-shell.enb-rvw-shell.enb-rvw-v2,
html body.enb-body.enb-category-page :is(#yorumlar, #yorumlar-alani) .enb-review-display-shell.enb-rvw-shell.enb-rvw-v2,
html body.enb-body.enb-service-page.enb-category-page .enb-review-display-shell.enb-rvw-shell.enb-rvw-v2,
html body.enb-body.enb-service-page.enb-category-page :is(#yorumlar, #yorumlar-alani) .enb-review-display-shell.enb-rvw-shell.enb-rvw-v2,
html body.enb-body.enb-category-page .enb-auto-review-zone > .enb-auto-review-wrap {
  position: relative !important;
  left: 0 !important;
  right: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  margin-inline: 0 !important;
  transform: none !important;
  /* Layout measurements must settle synchronously; transition:all creates
     a feedback loop in the shared header-alignment observer. */
  transition: none !important;
}
html body.enb-body.enb-category-page .enb-motion-story__shell {
  left: auto;
  width: 100%;
  max-width: 100%;
  margin-inline: 0;
  transform: none;
}
body.enb-category-page [data-enb-service-motion] {
  --enb-service-contract-shell-width: var(--enb-category-shell-width);
  --enb-service-content-gutter: calc(50vw - 50% + (100% - var(--enb-category-shell-width)) / 2);
  width: var(--enb-category-shell-width);
  max-width: 100%;
  margin-inline: auto;
}
body.enb-category-page main:is(.max-w-7xl, .max-w-6xl, .enb-transport-main) > :is([data-enb-service-motion], .enb-service-auto-review, [class*="faq"], [class*="sss"]),
body.enb-category-page .hub-shell > .enb-category-overview {
  --enb-category-shell-width: 100%;
}

/* Kategori fotoğrafları: yüklenemeyen görsel yerine hizmetin kendi simgesi. */
body.enb-category-page [data-enb-card-media] {
  position: relative;
  isolation: isolate;
}
body.enb-category-page [data-enb-card-media] > [data-enb-card-fallback] {
  position: absolute;
  inset: 0;
  z-index: 0;
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  color: var(--enb-catalog-accent, #4338ca);
  background: linear-gradient(135deg, var(--enb-catalog-soft, #eef2ff), #f8fafc);
  font-size: 48px;
  line-height: 1;
  pointer-events: none;
}
body.enb-category-page [data-enb-card-media] > :is(img, video, picture) {
  position: relative;
  z-index: 1;
}
/* Reserve one image proportion before load, including deliberately empty media. */
html body.enb-category-page main :is(.tour-card-media, .party-service-card__media, .enb-kids-card__media, .enb-catalog-card__media, .enb-equipment-card__media, .enb-flavor-card__visual, .et-category-assigned-media)[data-enb-card-media] {
  display: block;
  flex: 0 0 auto;
  width: 100%;
  height: auto;
  min-height: 0;
  aspect-ratio: 16 / 10;
}
html body.enb-category-page main :is(.tour-card-media, .party-service-card__media, .enb-kids-card__media, .enb-catalog-card__media, .enb-equipment-card__media, .enb-flavor-card__visual, .et-category-assigned-media)[data-enb-card-media] > img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 0;
  object-fit: cover;
}
html body.enb-body.enb-category-page .enb-flavor-card__visual[data-enb-card-media] {
  margin-inline: 0;
}
html body.enb-body.enb-category-page main.hub-page .hub-card .hub-card-visual[data-enb-card-media] {
  display: block;
  flex: 0 0 auto;
  width: 100%;
  min-height: 0;
  height: auto;
  aspect-ratio: 16 / 10;
}
html body.enb-body.enb-category-page main.hub-page .hub-card .hub-card-visual img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 0;
  object-fit: cover;
}
html body.enb-body.enb-category-page main.hub-page .hub-card {
  display: flex;
  flex-direction: column;
  grid-template-columns: minmax(0, 1fr);
}
html body.enb-body.enb-category-page main.hub-page .hub-card > * {
  grid-row: auto;
  grid-column: auto;
}
html body.enb-body.enb-category-page main.hub-page .hub-block:has(> .hub-service-layout) {
  padding-inline: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}
html body.enb-body.enb-category-page main .et-card[data-event-tech-card] {
  overflow: hidden;
  padding: 0;
  border-radius: 24px;
}
html body.enb-body.enb-category-page .et-category-card-main {
  display: flex;
  flex-direction: column;
}
html body.enb-body.enb-category-page .et-card[data-event-tech-card] .et-card__media {
  flex: 0 0 auto;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 10;
  margin: 0 0 18px;
  border: 0;
  border-radius: 0;
}
html body.enb-body.enb-category-page .et-category-card-main > :is(h4, p, .et-card__link) {
  margin-inline: 20px;
}
html body.enb-body.enb-category-page .et-card[data-event-tech-card] .et-card__emoji {
  display: grid;
  place-items: center;
  width: 100%;
  aspect-ratio: 16 / 10;
  margin: 0 0 18px;
  background: var(--et-category-soft);
  font-size: 48px;
}
html body.enb-body.enb-category-page .enb-electronic-card__visual {
  flex: 0 0 auto;
  width: 100%;
  height: auto;
  min-height: 0;
  aspect-ratio: 16 / 10;
}
html body.enb-body.enb-category-page .et-card[data-event-tech-card] h4 {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: normal;
}
html body.enb-body.enb-category-page .et-card[data-event-tech-card] p {
  font-size: 14px;
  line-height: 1.7;
}
html body.enb-body.enb-category-page .et-category-card-tools {
  padding: 18px 20px 20px;
}

/* Çocuk eğlence kartlarının fotoğraf/gövde düzeni; yalnız açıkça seçilen
   müzik, personel, hostes ve ulaşım kartları kullanır. Filtre ve ray davranışı korunur. */
body.enb-category-page main .enb-catalog-card {
  --enb-catalog-accent: #4338ca;
  --enb-catalog-soft: #eef2ff;
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  gap: 0;
  padding: 0 !important;
  overflow: hidden;
  border: 1px solid #dbe3ee;
  border-radius: 24px;
  background: #fff;
  color: #172033;
  text-align: left;
  box-shadow: 0 10px 30px rgba(15, 23, 42, .07);
}
body.enb-category-page main .enb-catalog-card::before,
body.enb-category-page main .enb-catalog-card::after {
  content: none;
}
body.enb-category-page main .enb-catalog-card:is([hidden], .is-hidden) {
  display: none !important;
}
body.enb-category-page main .enb-catalog-card:is([data-tone="pink"], [data-category="keman"]) {
  --enb-catalog-accent: #be185d;
  --enb-catalog-soft: #fdf2f8;
}
body.enb-category-page main .enb-catalog-card:is([data-tone="teal"], [data-tone="emerald"], [data-category="darbuka"]) {
  --enb-catalog-accent: #0f766e;
  --enb-catalog-soft: #f0fdfa;
}
body.enb-category-page main .enb-catalog-card:is([data-tone="amber"], [data-category="bando"], [data-category="fasil"]) {
  --enb-catalog-accent: #9a3412;
  --enb-catalog-soft: #fff7ed;
}
body.enb-category-page main .enb-catalog-card:is([data-tone="sky"], [data-category="trio"]) {
  --enb-catalog-accent: #1d4ed8;
  --enb-catalog-soft: #eff6ff;
}
body.enb-category-page main .enb-catalog-card .enb-catalog-card__media {
  position: relative;
  display: block;
  flex: 0 0 auto;
  width: 100%;
  aspect-ratio: 16 / 10;
  margin: 0;
  overflow: hidden;
  background: var(--enb-catalog-soft);
  text-decoration: none;
}
body.enb-category-page main .enb-catalog-card .enb-catalog-card__media > img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
body.enb-category-page .enb-catalog-card .enb-catalog-card__badge {
  position: absolute;
  z-index: 3;
  top: 14px;
  right: 14px;
  max-width: calc(100% - 28px);
  padding: 7px 11px;
  border: 1px solid rgba(255, 255, 255, .7);
  border-radius: 999px;
  color: #fff;
  background: var(--enb-catalog-accent);
  font-size: 12px;
  font-weight: 700;
  line-height: 1.4;
}
body.enb-category-page .enb-catalog-card__body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 14px;
  min-width: 0;
  padding: 20px;
}
body.enb-category-page .enb-catalog-card__title-row {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
}
body.enb-category-page .enb-catalog-card__icon {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 14px;
  color: var(--enb-catalog-accent);
  background: var(--enb-catalog-soft);
  font-size: 22px;
}
body.enb-category-page .enb-catalog-card__eyebrow {
  display: block;
  margin-bottom: 4px;
  color: var(--enb-catalog-accent);
  font-size: 12px;
  line-height: 1.5;
  font-weight: 600;
}
body.enb-category-page main .enb-catalog-card h3 {
  margin: 0;
  color: #172033;
  font-size: 20px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  letter-spacing: normal !important;
  text-wrap: pretty;
}
body.enb-category-page .enb-catalog-card__desc,
body.enb-category-page .enb-catalog-card__subtitle {
  margin: 0;
  color: #475569;
  font-size: 14px;
  line-height: 1.7;
  font-weight: 400;
}
body.enb-category-page .enb-catalog-card__subtitle {
  color: #334155;
  font-weight: 600;
}
body.enb-category-page .enb-catalog-card__copy { display: grid; gap: 6px; }
body.enb-category-page .enb-catalog-card__meta {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin: 0;
  padding: 13px 0;
  border-block: 1px solid #e2e8f0;
}
body.enb-category-page .enb-catalog-card__meta dt {
  margin: 0 0 4px;
  color: #475569;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
}
body.enb-category-page .enb-catalog-card__meta dd {
  margin: 0;
  color: #172033;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.5;
}
body.enb-category-page main .enb-catalog-card .enb-catalog-card__details {
  margin: 0;
  padding: 0;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.enb-category-page .enb-catalog-card__details > summary {
  display: list-item;
  list-style-position: inside;
  list-style-type: disclosure-closed;
  padding: 2px 0;
  color: var(--enb-catalog-accent);
  cursor: pointer;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.6;
}
body.enb-category-page .enb-catalog-card__details[open] > summary {
  list-style-type: disclosure-open;
}
body.enb-category-page .enb-catalog-card__details p,
body.enb-category-page .enb-catalog-card__features {
  margin: 12px 0 0;
  color: #475569;
  font-size: 14px;
  line-height: 1.6;
}
body.enb-category-page .enb-catalog-card__features { padding-left: 20px; }
body.enb-category-page .enb-catalog-card__features li + li { margin-top: 5px; }
body.enb-category-page .enb-catalog-card__tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 12px; }
body.enb-category-page .enb-catalog-card__tags span {
  padding: 4px 8px;
  border: 1px solid #e2e8f0;
  border-radius: 999px;
  color: #334155;
  background: #f8fafc;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
}
body.enb-category-page .enb-catalog-card__price {
  display: grid;
  gap: 8px;
  padding: 15px;
  border: 1px solid #dbe3ee;
  border-radius: 16px;
  background: var(--enb-catalog-soft);
}
body.enb-category-page .enb-catalog-card__price > div { display: grid; gap: 6px; }
body.enb-category-page .enb-catalog-card__price :is(small, span) {
  color: #475569;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
}
body.enb-category-page .enb-catalog-card__price strong {
  display: block;
  color: #172033;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
  overflow-wrap: anywhere;
}
body.enb-category-page .enb-catalog-card__price--quote strong { font-size: 15px; font-weight: 600; }
body.enb-category-page .enb-catalog-card__price p {
  margin: 0;
  color: #475569;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.6;
}
body.enb-category-page .enb-catalog-card__actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
  width: 100%;
  margin-top: auto;
  padding-top: 2px;
}
body.enb-category-page main .enb-catalog-card .enb-category-action {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 48px !important;
  padding: 11px 12px !important;
  border: 1px solid transparent;
  border-radius: 14px;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  text-align: center;
  text-decoration: none;
  white-space: normal;
  box-shadow: none !important;
}
body.enb-category-page main .enb-catalog-card .enb-category-action--primary {
  color: #fff !important;
  background: #1e293b !important;
  border-color: #1e293b !important;
}
body.enb-category-page main .enb-catalog-card .enb-category-action--secondary {
  color: #1e293b !important;
  background: #fff !important;
  border-color: #cbd5e1 !important;
}
body.enb-category-page .enb-catalog-card :is(a, summary):focus-visible {
  outline: 3px solid #2563eb !important;
  outline-offset: -3px;
}
@media (max-width: 639.98px) {
  body.enb-category-page .enb-catalog-card__body { padding: 18px; gap: 14px; }
  body.enb-category-page main .enb-catalog-card h3 { font-size: 19px !important; }
}
@media (prefers-reduced-motion: reduce) {
  body.enb-category-page main .enb-catalog-card,
  body.enb-category-page main .enb-catalog-card :is(img, a) {
    transition: none !important;
    transform: none !important;
  }
}

/* Compact catalogs retain the existing filters, tracks and native card links. */
body.enb-category-page .fh-solutions-carousel {
  width: 100%;
  max-width: 100%;
  margin-inline: 0;
}
body.enb-category-page .fh-solutions-track {
  align-items: stretch;
}
body.enb-category-page main .enb-catalog-card {
  align-self: stretch;
  height: auto;
  min-height: 0;
}
body.enb-category-page .fh-human-card .enb-catalog-card__media > img {
  object-position: center 30%;
}
body.enb-category-page .enb-music-card .enb-catalog-card__price strong {
  font-size: 18px;
  line-height: 1.45;
}
body.enb-category-page .enb-music-card .enb-catalog-card__price--quote strong {
  font-size: 15px;
}
body.enb-category-page .enb-catalog-card__details > summary::marker {
  color: var(--enb-catalog-accent);
  font-size: 12px;
}
body.enb-category-page .enb-catalog-card__details > summary::-webkit-details-marker {
  display: inline;
}

/* Service catalog rows share their columns, image scale and bottom baseline.
   Content remains intrinsic: opening a details element grows the whole row. */
html body.enb-body.enb-category-page main :is(.enb-category-card-rail, .enb-music-grid, .enb-transport-track, .enb-flavor-track, .fh-solutions-track, .et-card-grid[data-et-category-track], .enb-electronic-cards, .hub-card-grid),
html body.enb-body.enb-category-page #categoryGrid {
  align-items: stretch !important;
  gap: var(--enb-category-card-gap) !important;
}
html body.enb-body.enb-category-page main :is(.enb-catalog-card, .party-service-card, .enb-kids-card, .enb-flavor-card, .enb-equipment-card, .tour-service-card, .tour-package-card, .hub-card, .et-card, .enb-electronic-card),
html body.enb-body.enb-category-page #categoryGrid > .category-card {
  align-self: stretch !important;
  height: auto !important;
  min-height: 0;
  min-width: 0;
}
html body.enb-body.enb-category-page main :is(.enb-catalog-card__body, .party-service-card__body, .enb-kids-card__body, .enb-equipment-card__body, .enb-flavor-card__body, .tour-service-body, .tour-package-body, .hub-card-body, .enb-electronic-card__body) {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-width: 0;
}
html body.enb-body.enb-category-page main :is(.enb-catalog-card, .party-service-card, .enb-kids-card, .enb-equipment-card, .enb-flavor-card, .tour-service-card, .tour-package-card, .hub-card, .et-card, .enb-electronic-card) h3 {
  font-size: 20px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  letter-spacing: normal !important;
  overflow-wrap: anywhere;
}
html body.enb-body.enb-category-page main :is(.enb-catalog-card__desc, .party-service-card__desc, .enb-kids-card__desc, .enb-flavor-card__description, .tour-service-desc) {
  display: block;
  min-height: 0;
  max-height: none;
  overflow: visible;
  -webkit-line-clamp: unset;
  font-size: 14px;
  line-height: 1.7;
}
html body.enb-body.enb-category-page main :is(.enb-equipment-card__body, .hub-card-body, .tour-package-body) > p,
html body.enb-body.enb-category-page main .enb-electronic-card__body > p:not(.et-category-price-note) {
  font-size: 14px;
  line-height: 1.7;
}
html body.enb-body.enb-category-page main :is(.enb-catalog-card__actions, .party-service-card__actions, .enb-kids-card__actions, .enb-equipment-card__actions, .enb-flavor-card__actions, .tour-service-cta, .tour-package-button, .hub-card-bottom, .enb-electronic-card__actions),
html body.enb-body.enb-category-page .category-card__cta {
  margin-top: auto !important;
}
html body.enb-body.enb-category-page .party-service-card__actions {
  padding-top: 14px;
}
html body.enb-body.enb-category-page :is(.tour-service-desc, .tour-package-features, .category-card__copy) {
  margin-bottom: 18px;
}
html body.enb-body.enb-category-page .enb-electronic-card__actions {
  padding-top: 16px;
}
html body.enb-body.enb-category-page main :is(.enb-catalog-card, .party-service-card, .enb-kids-card, .tour-service-card, .tour-package-card) .enb-category-action {
  min-height: 48px !important;
  white-space: normal;
  line-height: 1.4 !important;
}
@media (min-width: 1024px) {
  html body.enb-body.enb-category-page main :is(.enb-category-card-rail, .enb-music-grid, .enb-transport-track, .enb-flavor-track, .fh-solutions-track, .et-card-grid[data-et-category-track], .enb-electronic-cards, .hub-card-grid),
  html body.enb-body.enb-category-page #categoryGrid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-auto-flow: row;
    margin-inline: 0;
    padding-inline: 0;
  }
  html body.enb-body.enb-category-page main :is(.enb-category-card-rail, .enb-music-grid, .enb-transport-track, .enb-flavor-track, .fh-solutions-track, .et-card-grid[data-et-category-track], .enb-electronic-cards, .hub-card-grid) > *,
  html body.enb-body.enb-category-page #categoryGrid > .category-card {
    width: auto !important;
    max-width: none !important;
    min-width: 0;
  }
}
@media (min-width: 1280px) {
  html body.enb-body.enb-category-page main :is(.enb-category-card-rail, .enb-music-grid, .enb-transport-track, .enb-flavor-track, .fh-solutions-track, .et-card-grid[data-et-category-track], .enb-electronic-cards, .hub-card-grid),
  html body.enb-body.enb-category-page #categoryGrid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}
@media (min-width: 1101px) {
  html body.enb-body.enb-category-page main .hub-service-layout:not(.hub-service-layout--full) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--enb-category-card-gap);
  }
  html body.enb-body.enb-category-page main .hub-service-layout:not(.hub-service-layout--full) > .hub-card-grid {
    grid-column: span 2;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (min-width: 1280px) {
  html body.enb-body.enb-category-page main .hub-service-layout:not(.hub-service-layout--full) {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  html body.enb-body.enb-category-page main .hub-service-layout:not(.hub-service-layout--full) > .hub-card-grid {
    grid-column: span 3;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 1023.98px) {
  body.enb-category-page.page-ulasim-hizmeti .enb-transport-track {
    margin-inline: 0;
    padding-inline: 0;
    scroll-padding-inline: 0;
  }
  body.enb-category-page .enb-category-card-rail:not(.enb-category-card-rail--kids):not(.enb-category-card-rail--equipment) {
    margin-inline: 0;
    padding-inline: 0;
    scroll-padding-inline: 0;
  }
  body.enb-category-page .enb-category-card-rail:not(.enb-category-card-rail--kids):not(.enb-category-card-rail--equipment) > *,
  body.enb-category-page .fh-solutions-track > .fh-human-card {
    flex: 0 0 min(44vw, 340px) !important;
    width: min(44vw, 340px) !important;
    max-width: min(44vw, 340px) !important;
    min-width: 0;
  }
  body.enb-category-page .fh-solutions-track {
    padding-inline: 0;
    scroll-padding-inline: 0;
  }
  html body.enb-body.enb-category-page :is(.enb-category-card-rail--kids, .enb-flavor-track, .enb-music-grid, .enb-transport-track) > :is(.enb-kids-card, .enb-flavor-card, .enb-music-card, .enb-transport-card) {
    flex: 0 0 min(44vw, 340px) !important;
    width: min(44vw, 340px) !important;
    max-width: min(44vw, 340px) !important;
  }
}
@media (max-width: 767.98px) {
  html body.enb-body.enb-category-page :is(.enb-category-card-rail, .enb-flavor-track, .enb-music-grid, .enb-transport-track, .fh-solutions-track) > :is(.enb-kids-card, .enb-flavor-card, .enb-catalog-card, .party-service-card, .tour-service-card, .tour-package-card) {
    flex: 0 0 min(84vw, 320px) !important;
    width: min(84vw, 320px) !important;
    max-width: min(84vw, 320px) !important;
  }
  html body.enb-body.enb-category-page .et-category [data-et-category-track] {
    grid-auto-columns: min(84vw, 320px);
  }
  body.enb-category-page .et-category .et-group {
    padding-inline: 0;
  }
  body.enb-category-page .enb-music-grid > .enb-music-card {
    flex-basis: min(84vw, 320px) !important;
    width: min(84vw, 320px) !important;
    max-width: min(84vw, 320px) !important;
  }
}
@media (max-width: 639.98px) {
  body.enb-category-page .enb-category-card-rail:not(.enb-category-card-rail--kids):not(.enb-category-card-rail--equipment) > *,
  body.enb-category-page .fh-solutions-track > .fh-human-card {
    flex-basis: min(84vw, 320px) !important;
    width: min(84vw, 320px) !important;
    max-width: min(84vw, 320px) !important;
  }
  body.enb-category-page .enb-music-card .enb-catalog-card__price {
    padding-inline: 12px;
  }
  body.enb-category-page .enb-music-card .enb-catalog-card__price strong {
    font-size: 17px;
  }
  body.enb-category-page .enb-music-card .enb-catalog-card__price--quote strong {
    font-size: 15px;
  }
}

/* The equipment catalog uses the same photo-above-copy card at every width.
   Its legacy two-column card squeezed headings inside the four-column catalog. */
body.enb-category-page main.enb-equipment-media-main .enb-equipment-card {
  display: flex;
  flex-direction: column;
}
body.enb-category-page main.enb-equipment-media-main .enb-equipment-card__body h3 {
  padding-right: 0;
}
body.enb-category-page main.enb-equipment-media-main .enb-equipment-card__placeholder {
  min-height: 0;
}
body.enb-category-page main.enb-equipment-media-main .enb-equipment-card__placeholder strong {
  color: inherit;
}
body.enb-category-page main.enb-equipment-media-main .enb-equipment-card__actions {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
}
body.enb-category-page main.enb-equipment-media-main .enb-equipment-card__actions > a {
  min-height: 44px;
}

/* These controls also work when the optional equipment experience is disabled. */
body.enb-category-page .enb-equipment-catalog-tools {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 20px;
  padding: 12px;
  border: 1px solid #dbe3ee;
  border-radius: 16px;
  background: #fff;
}
body.enb-category-page .enb-equipment-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
body.enb-category-page .enb-equipment-filter {
  min-height: 40px;
  padding: 8px 13px;
  border: 1px solid #cbd5e1;
  border-radius: 999px;
  color: #334155;
  background: #fff;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.5;
  cursor: pointer;
}
body.enb-category-page .enb-equipment-filter[aria-pressed="true"] {
  border-color: #1e293b;
  color: #fff;
  background: #1e293b;
}
body.enb-category-page .enb-equipment-filter:focus-visible {
  outline: 3px solid #2563eb;
  outline-offset: 2px;
}
body.enb-category-page .enb-equipment-catalog-count {
  margin-left: auto;
  color: #475569;
  font-size: 13px;
  line-height: 1.5;
}
body.enb-category-page [data-equipment-catalog] [data-equipment-service][hidden] {
  display: none !important;
}

/* Additional corporate and tour services use the same readable card system. */
body.enb-category-page .enb-category-completion-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
  gap: 18px;
}
body.enb-category-page main .tour-service-collection {
  margin-top: 30px;
  padding: 0;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.enb-category-page .tour-service-collection__summary {
  margin: 0 0 18px;
  padding: 0;
  color: #172033;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.5;
}
body.enb-category-page summary.tour-service-collection__summary {
  display: list-item;
  padding: 14px 16px;
  border: 1px solid #dbe3ee;
  border-radius: 14px;
  background: #f8fafc;
  list-style: disclosure-closed inside;
  cursor: pointer;
}
body.enb-category-page details[open] > summary.tour-service-collection__summary {
  list-style-type: disclosure-open;
}
body.enb-category-page .tour-service-collection__summary span {
  color: #64748b;
  font-size: 15px;
  font-weight: 500;
}
body.enb-category-page summary.tour-service-collection__summary:focus-visible {
  outline: 3px solid #2563eb;
  outline-offset: 2px;
}
@media (min-width: 1024px) {
  body.enb-category-page .enb-category-completion-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 1023.98px) {
  body.enb-category-page .enb-category-completion-grid {
    display: flex;
    overflow-x: auto;
    padding-block: 3px 14px;
    scroll-snap-type: x mandatory;
    overscroll-behavior-x: contain;
  }
  body.enb-category-page .enb-category-completion-grid > .enb-catalog-card {
    scroll-snap-align: start;
  }
}

/* The equipment experience uses grid columns for mobile swiping. A legacy
   flex-card max-width must not leave a blank remainder in each grid column. */
@media (max-width: 760px) {
  body.enb-category-page[data-enb-experience-page="ekipman-medya"] .enb-equipment-grid.emx-swipe-track {
    grid-auto-columns: min(84vw, 320px) !important;
    gap: 14px !important;
    width: 100%;
    max-width: 100%;
    margin-inline: 0;
    padding-inline: 0 !important;
    scroll-padding-inline: 0;
  }
  body.enb-category-page[data-enb-experience-page="ekipman-medya"] .enb-equipment-grid.emx-swipe-track > .enb-equipment-card {
    flex: none !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0;
    min-height: 0;
  }
}

/* Visible category introduction, kept separate from the interactive catalog. */
body.enb-category-page .enb-category-overview {
  --enb-service-contract-shell-width: var(--enb-category-shell-width);
  --enb-service-content-gutter: calc(50vw - 50% + var(--enb-category-gutter));
  box-sizing: border-box;
  width: var(--enb-category-shell-width);
  max-width: var(--enb-category-shell);
  margin: var(--enb-category-section-gap) auto;
  padding: clamp(24px, 3vw, 44px);
  border: 1px solid #dbe3ee;
  border-radius: 22px;
  background: #fff;
  color: #334155;
}
body.enb-category-page main:is(.max-w-7xl, .max-w-6xl, .enb-transport-main) > .enb-category-overview,
body.enb-category-page .hub-shell > .enb-category-overview {
  --enb-service-contract-shell-width: 100%;
  --enb-service-content-gutter: calc(50vw - 50%);
  width: 100%;
}
body.enb-category-page .enb-category-overview__eyebrow {
  display: block;
  margin-bottom: 8px;
  color: #475569;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.5;
}
html body.enb-body.enb-category-page .enb-category-overview h2 {
  max-width: 42ch;
  margin: 0;
  color: #172033;
  font-size: clamp(24px, 2.2vw, 30px) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: normal !important;
  text-wrap: pretty;
}
body.enb-category-page .enb-category-overview p {
  max-width: 85ch;
  margin: 14px 0 0;
  color: #475569;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.75;
  text-wrap: pretty;
}
body.enb-category-page .enb-category-overview :is(ul, ol) {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px 30px;
  margin: 18px 0 0;
  padding-left: 20px;
}
body.enb-category-page .enb-category-overview li {
  min-width: 0;
  padding-left: 2px;
  color: #334155;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.7;
  text-wrap: pretty;
}
body.enb-category-page .enb-category-overview li::marker {
  color: #6366f1;
}
body.enb-category-page .enb-category-overview__article {
  max-width: 85ch;
  margin-inline: 0;
  font-size: 16px;
  overflow-wrap: anywhere;
}
html body.enb-body.enb-category-page .enb-category-overview__article h3 {
  margin: 28px 0 0;
  color: #172033;
  font-size: clamp(19px, 1.7vw, 22px) !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  letter-spacing: normal !important;
  text-wrap: pretty;
}
body.enb-category-page .enb-category-overview .enb-category-overview__article p {
  font-size: inherit;
}
body.enb-category-page .enb-category-overview .enb-category-overview__article :is(ul, ol) {
  grid-template-columns: minmax(0, 1fr);
  gap: 12px;
}
body.enb-category-page .enb-category-overview__article ul {
  list-style-type: disc;
}
body.enb-category-page .enb-category-overview .enb-category-overview__article li {
  font-size: inherit;
  line-height: 1.75;
}
@media (min-width: 900px) {
  body.enb-category-page .enb-category-overview :is(ul, ol) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 639.98px) {
  body.enb-category-page .enb-category-overview {
    margin-block: 22px;
    padding: 20px 18px;
    border-radius: 18px;
  }
  body.enb-category-page .enb-category-overview p {
    font-size: 15px;
  }
}

/* A reserved two-line area keeps the hero stable while its short phrase types. */
body.enb-category-page .enb-category-hero-motion {
  display: grid;
  gap: 5px;
  width: 100%;
  max-width: 52ch;
  margin: 18px 0 0;
  color: inherit;
  text-align: inherit;
}
body.enb-category-page.page-kategoriler .kategoriler-hero .enb-category-hero-motion {
  margin-inline: auto;
  justify-items: center;
  text-align: center;
}
body.enb-category-page.page-kategoriler .kategoriler-conversion__inner {
  margin-top: 0;
}
body.enb-category-page.page-kategoriler .kategoriler-conversion {
  padding-block: var(--enb-category-section-gap);
}
body.enb-category-page.page-kategoriler #suggestions.enb-hero-suggestions.is-desktop-floating {
  box-sizing: border-box !important;
  max-height: var(--enb-category-search-max-height, 360px) !important;
}
body.enb-category-page.page-kategoriler #suggestions.enb-hero-suggestions.is-desktop-floating .enb-search-result-list {
  grid-template-columns: minmax(0, 1fr);
}
@media (max-width: 980px) {
  body.enb-category-page .enb-sales-hero__copy .enb-category-hero-motion {
    margin-inline: auto;
  }
}
body.enb-category-page .enb-category-hero-motion__label {
  display: block;
  color: inherit;
  opacity: .8;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: normal;
}
body.enb-category-page .enb-category-hero-motion__text {
  display: block;
  min-width: 0;
  min-height: 3em;
  color: inherit;
  font-size: clamp(18px, 1.8vw, 22px);
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: normal;
  overflow-wrap: anywhere;
}
body.enb-category-page .enb-category-hero-motion__text::after {
  content: "";
  display: inline-block;
  width: 2px;
  height: 1em;
  margin-left: 3px;
  vertical-align: -.12em;
  background: currentColor;
  animation: enbCategoryCaret 1s steps(1, end) infinite;
}
body.enb-category-page .enb-category-hero-motion__sr {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}
@keyframes enbCategoryCaret {
  0%, 49% { opacity: 1; }
  50%, 100% { opacity: 0; }
}
@media (prefers-reduced-motion: reduce) {
  body.enb-category-page .enb-category-hero-motion__text::after {
    display: none;
    animation: none;
  }
}
