/* Basic styling for iBooking Offerings */
.iboff-offerings { display: flex; flex-direction: column; gap: 1.5rem; margin: 1rem 0; }
.iboff-offerings.iboff-layout-grid { display: grid; gap: 1rem; }
.iboff-offerings.iboff-layout-grid.iboff-cols-1 { grid-template-columns: repeat(1, minmax(0, 1fr)); }
.iboff-offerings.iboff-layout-grid.iboff-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.iboff-offerings.iboff-layout-grid.iboff-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.iboff-offerings.iboff-layout-grid.iboff-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.iboff-offerings.iboff-layout-grid.iboff-cols-5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.iboff-offerings.iboff-layout-grid.iboff-cols-6 { grid-template-columns: repeat(6, minmax(0, 1fr)); }

.iboff-offering { background:#fff; border:1px solid #e2e5e9; border-radius:8px; padding:1rem 1.25rem; box-shadow:0 1px 2px rgba(0,0,0,.04); position:relative; display:flex; flex-direction:column; gap:.5rem; transform:scale(1); transform-origin:center center; transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease; z-index:0; }
.iboff-offering:hover { transform:scale(1.018); box-shadow:0 10px 24px rgba(0,0,0,.10); z-index:2; }
.iboff-offering:focus-within { transform:scale(1.018); box-shadow:0 10px 24px rgba(0,0,0,.10); z-index:2; }

/* Make cards feel clickable when they have a navigation target. */
.iboff-offering[data-enroll-url] { cursor: pointer; }

.iboff-offering-media { margin: 0 0 .5rem; }
.iboff-offering-image { width: 100%; height: auto; display: block; border-radius: 8px; aspect-ratio: 16 / 9; object-fit: cover; }

/* List layout: 3-column card grid */
.iboff-offerings.iboff-layout-list .iboff-offering-link {
  display: grid;
  grid-template-columns: minmax(180px, 240px) minmax(160px, 200px) 1fr;
  grid-template-rows: auto 1fr;
  column-gap: 1.25rem;
  row-gap: .5rem;
  align-items: start;
}

.iboff-offerings.iboff-layout-list .iboff-offering-header { grid-column: 1; grid-row: 1; }
.iboff-offerings.iboff-layout-list .iboff-offering-media { grid-column: 1; grid-row: 2; margin: 0; }
.iboff-offerings.iboff-layout-list .iboff-offering-price { grid-column: 2; grid-row: 1 / span 2; }
.iboff-offerings.iboff-layout-list .iboff-offering-extra-info { grid-column: 3; grid-row: 1 / span 2; margin-top: 0; }
.iboff-offerings.iboff-layout-list .iboff-offering-description { display: none; }

.iboff-offering-price-main { display: flex; gap: .35rem; flex-wrap: wrap; align-items: baseline; }
.iboff-offering-price-tag { opacity: .85; }

.iboff-offering-title { margin:0; font-size:1.1rem; line-height:1.3; }
.iboff-offering-price { font-weight:600; color:#0a6d2a; }
.iboff-offering-price-amount { color: inherit; }
.iboff-offering-price-tag { color: inherit; }
.iboff-offering-startup { font-size:.85em; font-weight:400; opacity:.75; margin-left:.35rem; color: inherit; }
.iboff-offerings.iboff-layout-grid .iboff-offering-startup { display:block; margin-left:0; margin-top:.15rem; }
.iboff-offering-description { font-size:.875rem; line-height:1.4; color:#444; }

/* Grid layout: keep startup compact */
.iboff-offerings.iboff-layout-grid .iboff-offering-startup { display: inline; }

/* Offering extraInfo bullet list */
.iboff-offerings .iboff-offering-extra-info,
.iboff-offerings-group .iboff-offering-extra-info{margin:.5rem 0 0;padding:.15rem 0 .15rem 1.4rem;font-size:.875rem;line-height:1.35;color:#444}
.iboff-offerings .iboff-offering-extra-info li,
.iboff-offerings-group .iboff-offering-extra-info li{margin:.3rem 0}

/* Classic bullets */
.iboff-offering-extra-info.iboff-bullets-disc,
.iboff-extra-bullets-disc .iboff-offering-extra-info{list-style:disc}

/* Custom glyph bullets */
.iboff-offering-extra-info.iboff-bullets-arrow,
.iboff-offering-extra-info.iboff-bullets-chevron,
.iboff-offering-extra-info.iboff-bullets-check,
.iboff-offering-extra-info.iboff-bullets-dash,
.iboff-offering-extra-info.iboff-bullets-none{list-style:none;padding-left:0}

.iboff-extra-bullets-arrow .iboff-offering-extra-info,
.iboff-extra-bullets-chevron .iboff-offering-extra-info,
.iboff-extra-bullets-check .iboff-offering-extra-info,
.iboff-extra-bullets-dash .iboff-offering-extra-info,
.iboff-extra-bullets-none .iboff-offering-extra-info{list-style:none;padding-left:0}

.iboff-offering-extra-info.iboff-bullets-arrow li,
.iboff-offering-extra-info.iboff-bullets-chevron li,
.iboff-offering-extra-info.iboff-bullets-check li,
.iboff-offering-extra-info.iboff-bullets-dash li{position:relative;padding-left:1.2rem}

.iboff-extra-bullets-arrow .iboff-offering-extra-info li,
.iboff-extra-bullets-chevron .iboff-offering-extra-info li,
.iboff-extra-bullets-check .iboff-offering-extra-info li,
.iboff-extra-bullets-dash .iboff-offering-extra-info li{position:relative;padding-left:1.2rem}

.iboff-offering-extra-info.iboff-bullets-arrow li:before{content:"→";position:absolute;left:0;top:0;opacity:.8}
.iboff-offering-extra-info.iboff-bullets-chevron li:before{content:"›";position:absolute;left:0;top:0;opacity:.85}
.iboff-offering-extra-info.iboff-bullets-check li:before{content:"✓";position:absolute;left:0;top:0;opacity:.85}
.iboff-offering-extra-info.iboff-bullets-dash li:before{content:"–";position:absolute;left:0;top:0;opacity:.8}

.iboff-extra-bullets-arrow .iboff-offering-extra-info li:before{content:"→";position:absolute;left:0;top:0;opacity:.8}
.iboff-extra-bullets-chevron .iboff-offering-extra-info li:before{content:"›";position:absolute;left:0;top:0;opacity:.85}
.iboff-extra-bullets-check .iboff-offering-extra-info li:before{content:"✓";position:absolute;left:0;top:0;opacity:.85}
.iboff-extra-bullets-dash .iboff-offering-extra-info li:before{content:"–";position:absolute;left:0;top:0;opacity:.8}

.iboff-empty { font-style:italic; opacity:.7; }

@media (prefers-reduced-motion: reduce) {
  .iboff-offering {
    transition: box-shadow .18s ease, border-color .18s ease;
  }

  .iboff-offering:hover,
  .iboff-offering:focus-within {
    transform:none;
  }
}

/* Responsive */
@media (max-width: 900px) {
  .iboff-offerings.iboff-layout-grid.iboff-cols-3,
  .iboff-offerings.iboff-layout-grid.iboff-cols-4,
  .iboff-offerings.iboff-layout-grid.iboff-cols-5,
  .iboff-offerings.iboff-layout-grid.iboff-cols-6 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
  .iboff-offerings.iboff-layout-grid { grid-template-columns: repeat(1, minmax(0, 1fr)); }

  .iboff-offerings.iboff-layout-grid.iboff-cols-2,
  .iboff-offerings.iboff-layout-grid.iboff-cols-3,
  .iboff-offerings.iboff-layout-grid.iboff-cols-4,
  .iboff-offerings.iboff-layout-grid.iboff-cols-5,
  .iboff-offerings.iboff-layout-grid.iboff-cols-6 { grid-template-columns: repeat(1, minmax(0, 1fr)); }

  .iboff-offerings.iboff-layout-list .iboff-offering-link { grid-template-columns: 1fr; grid-template-rows: auto; row-gap: .5rem; }
  .iboff-offerings.iboff-layout-list .iboff-offering-header,
  .iboff-offerings.iboff-layout-list .iboff-offering-media,
  .iboff-offerings.iboff-layout-list .iboff-offering-price,
  .iboff-offerings.iboff-layout-list .iboff-offering-extra-info { grid-column: 1; grid-row: auto; }
  .iboff-offerings.iboff-layout-list .iboff-offering-description { display: block; }
}
