/**/.dmNewParagraph[data-version] .text-align-left{text-align:left!important}.dmNewParagraph[data-version] .text-align-center{text-align:center!important}.dmNewParagraph[data-version] .text-align-right{text-align:right!important}
.dmNewParagraph[data-version] .text-align-justify{text-align:justify!important}.dmNewParagraph[data-version] .ql-indent-1{padding:0 1em;padding-inline-end:0;padding-inline-start:3em}.dmNewParagraph[data-version] .ql-indent-2{padding:0 2em;padding-inline-end:0;padding-inline-start:6em}
.dmNewParagraph[data-version] .ql-indent-3{padding:0 3em;padding-inline-end:0;padding-inline-start:9em}.dmNewParagraph[data-version] .ql-indent-4{padding:0 4em;padding-inline-end:0;padding-inline-start:12em}
.dmNewParagraph[data-version] .ql-indent-5{padding:0 5em;padding-inline-end:0;padding-inline-start:15em}.dmNewParagraph[data-version] .ql-indent-6{padding:0 6em;padding-inline-end:0;padding-inline-start:18em}
.dmNewParagraph[data-version] .ql-indent-7{padding:0 7em;padding-inline-end:0;padding-inline-start:21em}.dmNewParagraph[data-version] .ql-indent-8{padding:0 8em;padding-inline-end:0;padding-inline-start:24em}
.dmNewParagraph[data-version] .ql-indent-9{padding:0 9em;padding-inline-end:0;padding-inline-start:27em}.dmNewParagraph[data-version]{line-height:initial}.dmNewParagraph[data-version] [class*=size-]{width:auto!important;height:auto!important}
.dmNewParagraph[data-version] h1,.dmNewParagraph[data-version] h2,.dmNewParagraph[data-version] h3,.dmNewParagraph[data-version] h4,.dmNewParagraph[data-version] h5,.dmNewParagraph[data-version] h6,.dmNewParagraph[data-version] ol,.dmNewParagraph[data-version] p,.dmNewParagraph[data-version] ul{margin-top:0;margin-bottom:0}
.dmNewParagraph[data-version] ol,.dmNewParagraph[data-version] ul{padding:0;counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.dmNewParagraph[data-version] ol>li,.dmNewParagraph[data-version] ul>li{list-style-type:none;text-indent:-1.5em;margin:0 1em;margin-inline-end:0;margin-inline-start:2em}
.dmNewParagraph[data-version] ol>li:before,.dmNewParagraph[data-version] ul>li:before{min-width:1em;display:inline-block;margin-right:.5em;margin-inline-start:0;margin-inline-end:.5em;text-align:right;text-align:end}
.dmNewParagraph[data-version] ul .ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-1}.dmNewParagraph[data-version] ul .ql-indent-1:before{font-weight:700;content:"○"}
.dmNewParagraph[data-version] ul .ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-2}.dmNewParagraph[data-version] ul .ql-indent-2:before,.dmNewParagraph[data-version] ul .ql-indent-3:before,.dmNewParagraph[data-version] ul .ql-indent-4:before,.dmNewParagraph[data-version] ul .ql-indent-5:before,.dmNewParagraph[data-version] ul .ql-indent-6:before,.dmNewParagraph[data-version] ul .ql-indent-7:before,.dmNewParagraph[data-version] ul .ql-indent-8:before,.dmNewParagraph[data-version] ul .ql-indent-9:before{font-weight:700;content:"■"}
.dmNewParagraph[data-version] ul .ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-3}.dmNewParagraph[data-version] ul .ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9;counter-increment:list-4}
.dmNewParagraph[data-version] ul .ql-indent-5{counter-reset:list-6 list-7 list-8 list-9;counter-increment:list-5}.dmNewParagraph[data-version] ul .ql-indent-6{counter-reset:list-7 list-8 list-9;counter-increment:list-6}
.dmNewParagraph[data-version] ul .ql-indent-7{counter-reset:list-8 list-9;counter-increment:list-7}.dmNewParagraph[data-version] ul .ql-indent-8{counter-reset:list-9;counter-increment:list-8}.dmNewParagraph[data-version] ul .ql-indent-9{counter-reset:list-10 list-9;counter-increment:list-9}
.dmNewParagraph[data-version] ul>li:before{font-weight:700;content:"•";font-family:Arial}.dmNewParagraph[data-version] ul.custom-list-1>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"○";transform:scale(1);transform-origin:center right}
.dmNewParagraph[data-version] ul.custom-list-2>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"★";transform:scale(.7);transform-origin:center right}
.dmNewParagraph[data-version] ul.custom-list-3>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"➞";transform:scale(.8);transform-origin:center right}
.dmNewParagraph[data-version] ul.custom-list-4>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"＋";transform:scale(.7);transform-origin:center right}
.dmNewParagraph[data-version] ul.custom-list-5>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"－";transform:scale(.7);transform-origin:center right}
.dmNewParagraph[data-version] ul.custom-list-6>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"✓";transform:scale(.8);transform-origin:center right}
.dmNewParagraph[data-version] ul.custom-list-7>li:not([class^=ql-indent-]):not([class*=" ql-indent-"]):before{content:"✗";transform:scale(.8);transform-origin:center right}
.dmNewParagraph[data-version] ol .ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-1}.dmNewParagraph[data-version] ol .ql-indent-1:before{content:counter(list-1,lower-alpha) ". "}
.dmNewParagraph[data-version] ol .ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-2}.dmNewParagraph[data-version] ol .ql-indent-2:before{content:counter(list-2,lower-roman) ". "}
.dmNewParagraph[data-version] ol .ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-3}.dmNewParagraph[data-version] ol .ql-indent-3:before{content:counter(list-3,decimal) ". "}
.dmNewParagraph[data-version] ol .ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9;counter-increment:list-4}.dmNewParagraph[data-version] ol .ql-indent-4:before{content:counter(list-4,lower-alpha) ". "}
.dmNewParagraph[data-version] ol .ql-indent-5{counter-reset:list-6 list-7 list-8 list-9;counter-increment:list-5}.dmNewParagraph[data-version] ol .ql-indent-5:before{content:counter(list-5,lower-roman) ". "}
.dmNewParagraph[data-version] ol .ql-indent-6{counter-reset:list-7 list-8 list-9;counter-increment:list-6}.dmNewParagraph[data-version] ol .ql-indent-6:before{content:counter(list-6,decimal) ". "}
.dmNewParagraph[data-version] ol .ql-indent-7{counter-reset:list-8 list-9;counter-increment:list-7}.dmNewParagraph[data-version] ol .ql-indent-7:before{content:counter(list-7,lower-alpha) ". "}
.dmNewParagraph[data-version] ol .ql-indent-8{counter-reset:list-9;counter-increment:list-8}.dmNewParagraph[data-version] ol .ql-indent-8:before{content:counter(list-8,lower-roman) ". "}
.dmNewParagraph[data-version] ol .ql-indent-9{counter-reset:list-10 list-9;counter-increment:list-9}.dmNewParagraph[data-version] ol .ql-indent-9:before{content:counter(list-9,decimal) ". "}
.dmNewParagraph[data-version] ol li{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-0}.dmNewParagraph[data-version] ol li:before{content:counter(list-0,decimal) ". "}
.dmNewParagraph[data-version] a{vertical-align:initial}@media(min-width:768px) and (max-width:1024px){.dmNewParagraph[data-version] .t-text-align-left{text-align:left!important}.dmNewParagraph[data-version] .t-text-align-center{text-align:center!important}
.dmNewParagraph[data-version] .t-text-align-right{text-align:right!important}.dmNewParagraph[data-version] .t-text-align-justify{text-align:justify!important}}@media(max-width:767px){.dmRoot .dmNewParagraph[data-version] .m-text-align-left{text-align:left!important}
.dmRoot .dmNewParagraph[data-version] .m-text-align-center{text-align:center!important}.dmRoot .dmNewParagraph[data-version] .m-text-align-right{text-align:right!important}.dmRoot .dmNewParagraph[data-version] .m-text-align-justify{text-align:justify!important}
}.inlineBindingLink{color:inherit!important;text-decoration:inherit!important}/**/.imageWidget{position:relative}.imageWidget a,.imageWidget span.image-caption{font-style:italic;text-align:center}.imageWidget a[data-caption]::after,.imageWidget span[data-caption]::after{content:attr(data-caption);display:block;line-height:100%}
.imageWidget.with-caption a::after,.imageWidget.with-caption span.image-caption::after{margin-top:12px}.imageWidget img[width][height]{height:auto}[data-flex-site] #fcontainer .imageWidget:after,[data-flex-site] #flex-footer .imageWidget:after,[data-flex-site] #flex-header .imageWidget:after{content:none}
[data-flex-site] #fcontainer .imageWidget:before,[data-flex-site] #flex-footer .imageWidget:before,[data-flex-site] #flex-header .imageWidget:before{font-size:80px;transform:none}.imageWidget.hover img.hover-image,.imageWidget:hover img.hover-image{display:initial}
.imageWidget.hover.hasHover img:not(.hover-image),.imageWidget:hover.hasHover img:not(.hover-image){display:none!important}.imageWidget img.hover-image,.imageWidget img.logo-on-scroll{display:none}/**/#dm .dmDivider{display:block;min-height:2px;margin:0;border:0;color:gray;background:0}#dm .dmDividerWrapper{display:block;margin:10px 0}/**/.graphicWidget{width:200px;height:200px;margin:10px auto;text-align:center}.graphicWidget svg.svg{width:100%;height:100%;color:#000;fill:#000}.graphicWidget img.svg{object-fit:contain;width:100%;height:100%}
.graphicWidget .svg[data-icon-mask]{display:block;aspect-ratio:1;width:100%;height:100%;color:#000;background-color:currentColor;mask-repeat:no-repeat;mask-position:center;mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain}
.graphicWidgetV2{width:60px;height:60px}.graphicWidgetV3{font-size:0}/**/.hamburgerButton{display:block;background-color:transparent;border:0;padding:0;margin:0}.hamburgerButton,.hamburgerButton svg{width:100%;height:100%}
/* Custom Widgets Styles */
.clscartmain {
  display: flex;
  align-items: center;
}

.clsCartIcon {
  width: 30px;
}

.clsCarttxt {
  padding-top: 2px;
}

.fa-shopping-cart {
  display: none !important;
}

.clsCartBtn {
  margin-top: -5px !important;
}

@charset "UTF-8";
/* ============================================================================
   RESMARK LIST VIEW WIDGET - STYLES
   ============================================================================ */
/* ---------- Base / Reset ---------- */
.rm-list-widget {
  font-family: Lato, sans-serif;
  font-size: 16px;
  font-weight: 400;
  color: #333;
  text-align: left;
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
  box-sizing: border-box;
}

.rm-list-widget *, .rm-list-widget *::before, .rm-list-widget *::after {
  box-sizing: border-box;
}

/* ---------- Filter Bar ---------- */
.rm-filter-bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0;
  border: 1px solid #ddd;
  border-radius: 8px;
  padding: 12px 16px;
  margin-bottom: 16px;
  /* background-color controlled by design editor */
}

.rm-filter-item {
  position: relative;
  padding: 0 16px;
  border-right: 1px solid #ddd;
  cursor: pointer;
}

.rm-filter-item:last-child {
  border-right: none;
}

.rm-filter-trigger {
  white-space: nowrap;
  font-size: 14px;
  padding: 4px 0;
  user-select: none;
}

.rm-filter-trigger strong {
  /* color controlled by design editor */
}

/* ---------- Filter Dropdowns ---------- */
.rm-filter-dropdown {
  display: none;
  position: absolute;
  top: calc(100% + 12px);
  left: 0;
  z-index: 100;
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 8px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
  padding: 16px;
  min-width: 200px;
}

.rm-filter-dropdown.open {
  display: block;
}

.rm-filter-row {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
}

.rm-filter-label {
  font-size: 13px;
  font-weight: 600;
  min-width: 40px;
  padding: 6px 10px;
  background: #eee;
  border-radius: 4px;
  text-align: center;
}

.rm-filter-input {
  flex: 1;
  padding: 8px 10px;
  border: 1px solid #ccc;
  border-radius: 4px;
  font-size: 14px;
  font-family: inherit;
}

.rm-filter-actions {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-top: 12px;
  border-top: 1px solid #eee;
  padding-top: 12px;
}

.rm-filter-clear, .rm-filter-update {
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 4px 8px;
}

.rm-filter-clear {
  color: #888;
}

.rm-filter-clear:hover {
  color: #333;
}

.rm-filter-update {
  /* color controlled by design editor */
  color: #333;
  font-weight: 700;
}

.rm-filter-update:hover {
  opacity: 0.8;
}

/* Quantity controls */
.rm-filter-qty-label {
  font-size: 14px;
  margin-bottom: 10px;
}

.rm-filter-qty-controls {
  display: flex;
  align-items: center;
  gap: 0;
  margin-bottom: 4px;
}

.rm-qty-btn {
  width: 36px;
  height: 36px;
  font-size: 18px;
  font-weight: 600;
  border: 1px solid #ccc;
  background: #f5f5f5;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}

.rm-qty-btn:hover {
  background: #e8e8e8;
}

.rm-qty-value {
  width: 48px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  font-size: 16px;
  font-weight: 600;
  background: #fff;
}

/* Checklist (Locations, Types, Products) */
.rm-filter-checklist {
  max-height: 260px;
  overflow-y: auto;
}

.rm-filter-check-item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 8px 4px;
  cursor: pointer;
  font-size: 14px;
}

.rm-filter-check-item:hover {
  background: #f8f8f8;
}

.rm-filter-check-item input[type=checkbox] {
  width: 18px;
  height: 18px;
  min-width: 18px;
  min-height: 18px;
  flex-shrink: 0;
  margin-top: 2px;
  cursor: pointer;
  accent-color: #333;
}

/* ---------- Search / Reset ---------- */
.rm-search-actions {
  display: flex;
  gap: 8px;
  margin-bottom: 16px;
}

.rm-btn-search, .rm-btn-reset {
  padding: 10px 24px;
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  border: none;
  border-radius: 4px;
  cursor: pointer;
}

.rm-btn-search {
  /* background controlled by design editor */
  background: #262626;
  color: #fff;
}

.rm-btn-search:hover {
  opacity: 0.85;
}

.rm-btn-reset {
  background: #262626;
  color: #fff;
}

.rm-btn-reset:hover {
  opacity: 0.85;
}

/* ---------- Filter Reset Button ---------- */
.rm-filter-reset-wrap {
  display: flex;
  align-items: center;
  padding: 0 16px;
  margin-left: auto;
}

.rm-btn-filter-reset {
  padding: 8px 20px;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  /* background/color controlled by design editor */
  background: #262626;
  color: #fff;
  white-space: nowrap;
}

.rm-btn-filter-reset:hover {
  opacity: 0.85;
}

/* ---------- Loading ---------- */
.rm-list-loading {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 48px 0;
  font-size: 15px;
  color: #666;
}

.rm-spinner {
  width: 24px;
  height: 24px;
  border: 3px solid #ddd;
  border-top-color: #333;
  border-radius: 50%;
  animation: rm-spin 0.7s linear infinite;
}

@keyframes rm-spin {
  to {
    transform: rotate(360deg);
  }
}
/* ---------- Results Table (Classic) ---------- */
.rm-list-table-wrapper {
  width: 100%;
  overflow-x: auto;
}

.rm-list-table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

.rm-list-table thead th {
  text-align: left;
  font-size: 14px;
  font-weight: 700;
  padding: 8px 12px;
  border-bottom: 2px solid #ddd;
  white-space: nowrap;
  /* color controlled by design editor */
}

.rm-list-table tbody tr {
  border-bottom: 1px solid #eee;
  transition: background 0.15s;
}

.rm-list-table tbody tr:nth-child(even) {
  background: #faf8f5;
}

.rm-list-table tbody tr:hover {
  background: #f0ede8;
}

.rm-list-table tbody td {
  padding: 8px 12px;
  font-size: 14px;
  vertical-align: middle;
}

.rm-col-name {
  min-width: 200px;
}

.rm-col-start {
  min-width: 180px;
}

/* "Ends" column — Phase 2 step 3. Hidden by default; the widget JS adds
   .rm-mode-separate to the widget root when dateDisplayMode='separate'.
   Both the th and the td share visibility off the same root class. */
.rm-col-end,
.rm-row-end {
  display: none;
}

.rm-list-widget.rm-mode-separate .rm-col-end {
  display: table-cell;
  min-width: 180px;
}

.rm-list-widget.rm-mode-separate .rm-row-end {
  display: table-cell;
}

.rm-col-duration {
  min-width: 120px;
  white-space: nowrap;
}

.rm-col-price {
  min-width: 100px;
  white-space: nowrap;
}

.rm-col-available {
  min-width: 80px;
  text-align: center;
  white-space: nowrap;
}

.rm-row-available {
  text-align: left;
}

/* Hide columns when toggled off via content editor */
/* Use th/td selectors to avoid hiding <tr> rows that share the same class name */
.rm-hide-name th.rm-col-name,
.rm-hide-name td.rm-row-name {
  display: none;
}

.rm-hide-start th.rm-col-start,
.rm-hide-start td.rm-row-start {
  display: none;
}

.rm-hide-duration th.rm-col-duration,
.rm-hide-duration td.rm-row-duration {
  display: none;
}

.rm-hide-price th.rm-col-price,
.rm-hide-price td.rm-row-price {
  display: none;
}

.rm-hide-available th.rm-col-available,
.rm-hide-available td.rm-row-available {
  display: none;
}

.rm-hide-action th.rm-col-action,
.rm-hide-action td.rm-row-action {
  display: none;
}

.rm-col-action {
  min-width: 170px;
  text-align: right;
}

.rm-row-name {
  font-weight: 400;
  /* color controlled by design editor */
}

.rm-row-action {
  text-align: right;
  overflow: visible;
}

.rm-row-soldout .rm-row-name,
.rm-row-soldout .rm-row-start,
.rm-row-soldout .rm-row-end,
.rm-row-soldout .rm-row-duration,
.rm-row-soldout .rm-row-price,
.rm-row-soldout .rm-row-available {
  color: #aaa;
}

.rm-row-insufficient .rm-row-name,
.rm-row-insufficient .rm-row-start,
.rm-row-insufficient .rm-row-end,
.rm-row-insufficient .rm-row-duration,
.rm-row-insufficient .rm-row-price,
.rm-row-insufficient .rm-row-available {
  color: #aaa;
}

/* ---------- Tier price list (Phase 2 step 3) ---------- */
/* Replaces the single From price in the price cell when showPriceByTier
   is on AND the row has tier data. Tier label and amount sit on one line
   each so a row can show 2-3 tiers without ballooning the row height. */
.rm-tier-list {
  display: flex;
  flex-direction: column;
  gap: 2px;
  line-height: 1.3;
}

.rm-tier-row {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  white-space: nowrap;
}

.rm-tier-label {
  font-weight: 400;
  color: inherit;
}

.rm-tier-amount {
  font-weight: 600;
}

/* Detail-cards layout puts the tier list inside .rm-dc-price-value, which
   has its own typography. Override the stacked layout there to keep the
   look tight + center-aligned. */
.rm-dc-price-value .rm-tier-list {
  align-items: center;
}

.rm-dc-price-value .rm-tier-row {
  font-size: 14px;
}

/* ---------- Action Buttons ---------- */
.rm-btn-add-to-cart,
.rm-btn-call-to-book,
.rm-btn-sold-out,
.rm-btn-insufficient {
  display: inline-block;
  padding: 6px 16px;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  text-align: center;
  min-width: 150px;
  white-space: nowrap;
  overflow: visible;
}

.rm-btn-add-to-cart {
  /* background/color controlled by design editor */
  background: #8a8a6c;
  color: #fff;
}

.rm-btn-add-to-cart:hover {
  opacity: 0.85;
}

.rm-btn-call-to-book {
  /* background/color controlled by design editor */
  background: #d4760a;
  color: #fff;
}

.rm-btn-call-to-book:hover {
  opacity: 0.85;
}

.rm-btn-sold-out {
  /* background/color controlled by design editor */
  background: #c9a89a;
  color: #fff;
  cursor: default;
  opacity: 0.75;
}

.rm-btn-insufficient {
  background: #d5d5d5;
  color: #999;
  cursor: default;
}

/* ---------- Load More ---------- */
.rm-load-more-wrapper {
  padding: 16px 0;
}

.rm-btn-load-more {
  padding: 12px 28px;
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  /* background/color controlled by design editor */
  background: #8a8a6c;
  color: #fff;
}

.rm-btn-load-more:hover {
  opacity: 0.85;
}

/* ============================================================================
   CARDS LAYOUT (tableLayout = "cards")
   ============================================================================ */
/* --- Add padding so card shadows aren't clipped --- */
.rm-layout-cards .rm-list-table-wrapper {
  padding: 4px 6px;
}

.rm-layout-cards .rm-filter-bar {
  margin-left: 6px;
  margin-right: 6px;
}

/* --- Table --- */
.rm-layout-cards .rm-list-table {
  border-collapse: separate;
  border-spacing: 0 10px;
}

.rm-layout-cards .rm-list-table thead th {
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #888;
  padding: 0 16px 8px;
  border-bottom: none;
}

.rm-layout-cards .rm-list-table tbody tr {
  background: #fff;
  border-bottom: none;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06), 0 0 0 1px rgba(0, 0, 0, 0.04);
  border-radius: 10px;
  transition: box-shadow 0.2s, transform 0.2s;
}

.rm-layout-cards .rm-list-table tbody tr:nth-child(even) {
  background: #fff;
}

.rm-layout-cards .rm-list-table tbody tr:hover {
  background: #fff;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08), 0 0 0 1px rgba(0, 0, 0, 0.06);
  transform: translateY(-1px);
}

.rm-layout-cards .rm-list-table tbody td {
  padding: 16px;
  border: none;
}

.rm-layout-cards .rm-list-table tbody td:first-child {
  border-radius: 10px 0 0 10px;
}

.rm-layout-cards .rm-list-table tbody td:last-child {
  border-radius: 0 10px 10px 0;
}

/* --- Cell typography --- */
.rm-layout-cards .rm-row-name {
  font-weight: 500;
  color: #1a1a1a;
}

.rm-layout-cards .rm-row-start {
  color: #555;
}

.rm-layout-cards .rm-row-duration {
  color: #777;
  font-size: 13px;
}

.rm-layout-cards .rm-row-price {
  font-weight: 600;
  color: #1a1a1a;
}

/* --- Sold out / insufficient: fade the whole card --- */
.rm-layout-cards .rm-row-soldout {
  opacity: 0.55;
}

.rm-layout-cards .rm-row-soldout .rm-row-name,
.rm-layout-cards .rm-row-soldout .rm-row-start,
.rm-layout-cards .rm-row-soldout .rm-row-duration,
.rm-layout-cards .rm-row-soldout .rm-row-price,
.rm-layout-cards .rm-row-soldout .rm-row-available {
  color: inherit;
}

.rm-layout-cards .rm-row-insufficient {
  opacity: 0.55;
}

.rm-layout-cards .rm-row-insufficient .rm-row-name,
.rm-layout-cards .rm-row-insufficient .rm-row-start,
.rm-layout-cards .rm-row-insufficient .rm-row-duration,
.rm-layout-cards .rm-row-insufficient .rm-row-price {
  color: inherit;
}

/* --- Buttons --- */
.rm-layout-cards .rm-btn-add-to-cart,
.rm-layout-cards .rm-btn-call-to-book,
.rm-layout-cards .rm-btn-sold-out,
.rm-layout-cards .rm-btn-insufficient {
  padding: 8px 20px;
  font-weight: 600;
  letter-spacing: 0.06em;
  border-radius: 6px;
  box-shadow: none;
  transition: background 0.2s, transform 0.15s;
}

.rm-layout-cards .rm-btn-add-to-cart:hover,
.rm-layout-cards .rm-btn-call-to-book:hover {
  opacity: 0.85;
  transform: translateY(-1px);
}

.rm-layout-cards .rm-btn-sold-out {
  background: transparent;
  color: #aaa;
  border: 1px solid #ddd;
  opacity: 1;
}

.rm-layout-cards .rm-btn-insufficient {
  background: transparent;
  color: #aaa;
  border: 1px solid #ddd;
}

/* --- Load More --- */
.rm-layout-cards .rm-load-more-wrapper {
  text-align: center;
}

.rm-layout-cards .rm-btn-load-more {
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.06em;
  border: 1px solid #ddd;
  border-radius: 8px;
  background: #fff;
  color: #333;
  transition: background 0.2s, box-shadow 0.2s;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
}

.rm-layout-cards .rm-btn-load-more:hover {
  opacity: 1;
  background: #f9f9f9;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

/* ============================================================================
   DETAIL CARDS LAYOUT (tableLayout = "detail-cards")
   All selectors scoped under .rm-list-widget for Duda specificity.
   Critical layout properties use !important to override Duda base styles.
   ============================================================================ */
/* Hide the table when detail-cards is active */
.rm-list-widget.rm-layout-detail-cards .rm-list-table-wrapper {
  display: none !important;
}

.rm-list-widget .rm-detail-cards-wrapper {
  width: 100% !important;
}

.rm-list-widget .rm-detail-cards-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  padding: 0;
  margin: 0;
  list-style: none;
}

/* --- Individual Card --- */
.rm-list-widget .rm-dc-card {
  display: flex !important;
  flex-direction: row !important;
  align-items: stretch !important;
  border: 1px solid #e0e0e0;
  border-radius: 10px;
  background: #fff;
  overflow: hidden;
  transition: box-shadow 0.2s, transform 0.2s;
  margin: 0;
  padding: 0;
}

.rm-list-widget .rm-dc-card:hover {
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
  transform: translateY(-1px);
}

/* Card left: product info + details grid */
.rm-list-widget .rm-dc-card-body {
  flex: 1 1 0% !important;
  padding: 20px 24px !important;
  min-width: 0 !important;
}

.rm-list-widget .rm-dc-product-name {
  font-size: 20px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  color: #1a1a1a;
  margin: 0 0 12px 0 !important;
  padding: 0 !important;
  letter-spacing: 0.02em;
  line-height: 1.2;
}

/* Two-column details grid */
.rm-list-widget .rm-dc-details {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 8px 40px !important;
  margin: 0;
  padding: 0;
}

.rm-list-widget .rm-dc-details-col {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
}

.rm-list-widget .rm-dc-field {
  margin: 0;
  padding: 0;
}

.rm-list-widget .rm-dc-field-label {
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #999;
  margin: 0 0 2px 0;
  padding: 0;
  line-height: 1.4;
}

.rm-list-widget .rm-dc-field-label i {
  margin-right: 4px;
  font-size: 11px;
  color: #bbb;
}

.rm-list-widget .rm-dc-field-value {
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #333;
  line-height: 1.3;
  margin: 0;
  padding: 0;
}

/* Availability dot indicators */
.rm-list-widget .rm-dc-avail-dot {
  display: inline-block !important;
  width: 8px !important;
  height: 8px !important;
  border-radius: 50% !important;
  margin-right: 4px;
  vertical-align: middle;
}

.rm-list-widget .rm-dc-avail-dot--ok {
  background: #2ecc40 !important;
}

.rm-list-widget .rm-dc-avail-dot--low {
  background: #ff851b !important;
}

.rm-list-widget .rm-dc-avail-dot--sold {
  background: #d0021b !important;
}

/* Card right: price + button */
.rm-list-widget .rm-dc-card-action {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 20px 28px !important;
  min-width: 180px !important;
  border-left: 1px solid #f0f0f0;
  background: #fcfcfc;
  gap: 12px !important;
  text-align: center;
  flex-shrink: 0;
}

.rm-list-widget .rm-dc-price-block {
  text-align: center;
  margin: 0;
  padding: 0;
}

.rm-list-widget .rm-dc-price-label {
  font-size: 10px !important;
  font-weight: 700 !important;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #999;
  margin: 0 0 4px 0;
  padding: 0;
}

.rm-list-widget .rm-dc-price-value {
  font-size: 32px !important;
  font-weight: 800 !important;
  color: #2ecc40;
  line-height: 1 !important;
  margin: 0 0 2px 0;
  padding: 0;
}

.rm-list-widget .rm-dc-price-note {
  font-size: 11px !important;
  color: #aaa;
  margin: 0;
  padding: 0;
}

/* Button styles within detail cards */
.rm-list-widget .rm-dc-btn-wrap {
  margin: 0;
  padding: 0;
}

.rm-list-widget .rm-dc-btn-wrap .rm-btn-add-to-cart,
.rm-list-widget .rm-dc-btn-wrap .rm-btn-call-to-book,
.rm-list-widget .rm-dc-btn-wrap .rm-btn-sold-out,
.rm-list-widget .rm-dc-btn-wrap .rm-btn-insufficient {
  padding: 10px 24px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  border-radius: 6px !important;
  min-width: 150px !important;
  white-space: nowrap !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.rm-list-widget .rm-dc-btn-wrap .rm-btn-add-to-cart {
  background: #e8590c !important;
  color: #fff !important;
}

.rm-list-widget .rm-dc-btn-wrap .rm-btn-add-to-cart:hover {
  opacity: 0.85;
}

/* --- Sold out / insufficient card styling --- */
.rm-list-widget .rm-dc-card.rm-row-soldout {
  opacity: 0.6;
}

.rm-list-widget .rm-dc-card.rm-row-soldout .rm-dc-price-value {
  color: #aaa !important;
}

.rm-list-widget .rm-dc-card.rm-row-insufficient {
  opacity: 0.6;
}

.rm-list-widget .rm-dc-card.rm-row-insufficient .rm-dc-price-value {
  color: #aaa !important;
}

/* --- Detail Cards filter bar padding to align --- */
.rm-list-widget.rm-layout-detail-cards .rm-filter-bar {
  margin-left: 0;
  margin-right: 0;
}

/* --- Detail Cards: Load More centering --- */
.rm-list-widget.rm-layout-detail-cards .rm-load-more-wrapper {
  text-align: center;
}

/* --- Detail Cards: Responsive --- */
@media (max-width: 768px) {
  .rm-list-widget .rm-dc-card {
    flex-direction: column !important;
  }
  .rm-list-widget .rm-dc-card-action {
    border-left: none !important;
    border-top: 1px solid #f0f0f0;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 16px 20px !important;
    min-width: unset !important;
    gap: 16px !important;
  }
  .rm-list-widget .rm-dc-price-block {
    text-align: left;
  }
  .rm-list-widget .rm-dc-price-value {
    font-size: 24px !important;
  }
  .rm-list-widget .rm-dc-details {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }
  .rm-list-widget .rm-dc-product-name {
    font-size: 17px !important;
  }
  .rm-list-widget .rm-dc-card-body {
    padding: 16px 18px !important;
  }
  .rm-list-widget .rm-dc-btn-wrap .rm-btn-add-to-cart,
  .rm-list-widget .rm-dc-btn-wrap .rm-btn-call-to-book,
  .rm-list-widget .rm-dc-btn-wrap .rm-btn-sold-out,
  .rm-list-widget .rm-dc-btn-wrap .rm-btn-insufficient {
    min-width: unset !important;
    padding: 10px 18px !important;
  }
}
@media (max-width: 480px) {
  .rm-list-widget .rm-dc-card-action {
    flex-direction: column !important;
    align-items: stretch !important;
    text-align: center;
  }
  .rm-list-widget .rm-dc-price-block {
    text-align: center;
  }
  .rm-list-widget .rm-dc-btn-wrap .rm-btn-add-to-cart,
  .rm-list-widget .rm-dc-btn-wrap .rm-btn-call-to-book,
  .rm-list-widget .rm-dc-btn-wrap .rm-btn-sold-out,
  .rm-list-widget .rm-dc-btn-wrap .rm-btn-insufficient {
    width: 100% !important;
  }
}
/* ---------- Empty State ---------- */
.rm-list-empty {
  text-align: center;
  font-size: 15px;
  color: #276F86;
  background: #F8FFFF;
  border: 1px solid #ddd;
  border-radius: 8px;
  padding: 12px 16px;
  margin-bottom: 16px;
  margin-left: 6px;
  margin-right: 6px;
  font-weight: bold;
}

/* ---------- Modal ---------- */
.rm-modal-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
}

.rm-modal {
  background: #fff;
  border-radius: 10px;
  width: 90%;
  max-width: 520px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);
  overflow: hidden;
}

.rm-modal-header {
  padding: 20px 24px 12px;
}

.rm-modal-title {
  margin: 0;
  font-size: 18px;
  font-weight: 700;
  /* color controlled by design editor */
}

.rm-modal-body {
  padding: 0 24px 16px;
}

.rm-modal-message {
  background: #fdf8ef;
  border: 1px solid #e8dcc8;
  border-radius: 6px;
  padding: 16px 20px;
  font-size: 14px;
  line-height: 1.7;
}

.rm-modal-message .rm-modal-intro {
  margin-bottom: 12px;
}

.rm-modal-message .rm-modal-detail-row {
  display: flex;
  gap: 8px;
  margin-bottom: 2px;
}

.rm-modal-message .rm-modal-detail-label {
  font-weight: 700;
  min-width: 70px;
}

.rm-modal-message .rm-modal-detail-value a {
  color: #4183C4;
  text-decoration: none;
}

.rm-modal-message .rm-modal-detail-value a:hover {
  text-decoration: underline;
}

.rm-modal-footer {
  padding: 12px 24px 20px;
}

.rm-modal-ok {
  padding: 8px 24px;
  font-size: 14px;
  font-weight: 700;
  border: 1px solid #ccc;
  border-radius: 4px;
  background: #f5f5f5;
  cursor: pointer;
}

.rm-modal-ok:hover {
  background: #e8e8e8;
}

/* ---------- Resmark Logo ---------- */
.rm-list-widget .rm-resmark-logo {
  text-align: center;
  padding: 24px 0 8px;
  opacity: 0.6;
}

/* ---------- Responsive ---------- */
@media (max-width: 768px) {
  .rm-filter-bar {
    flex-direction: column;
    align-items: stretch;
    gap: 8px;
  }
  .rm-filter-item {
    border-right: none;
    border-bottom: 1px solid #eee;
    padding: 8px 0;
  }
  .rm-filter-item:last-child {
    border-bottom: none;
  }
  .rm-filter-dropdown {
    position: relative;
    top: 8px;
    left: 0;
    box-shadow: none;
    border: 1px solid #ddd;
  }
  .rm-list-table thead {
    display: none;
  }
  .rm-list-table tbody tr {
    display: flex;
    flex-wrap: wrap;
    padding: 12px 16px;
    gap: 2px 16px;
    align-items: center;
  }
  .rm-list-table tbody td {
    padding: 2px 0;
  }
  /* Mobile labels via data-label attributes
     Greg 2026-04-29: was font-weight 700, which made the "Duration:" prefix
     (and other labels) heavier than the trip name itself, so duration looked
     like the most prominent line in each row. Softened to 600 so labels read
     as labels, not as headlines, and the trip name stays the visual anchor. */
  .rm-list-table tbody td[data-label]:not([data-label=""])::before {
    content: attr(data-label);
    font-weight: 600;
    margin-right: 6px;
  }
  /* Trip name = primary line on mobile. Bumped a notch (15→17px / 600→700)
     per Greg's "INITIAL FIXES NOW" — the trip name should be slightly
     larger than the metadata rows. */
  .rm-list-table tbody td.rm-row-name {
    width: 100%;
    font-weight: 700;
    font-size: 17px;
    margin-bottom: 4px;
  }
  .rm-list-table tbody td.rm-row-start {
    width: 100%;
  }
  /* Ends row (separate-mode only) sits on its own line below Begins on
     mobile. The desktop visibility gate (.rm-mode-separate root class)
     still applies. Phase 2 step 3. */
  .rm-list-widget.rm-mode-separate .rm-list-table tbody td.rm-row-end {
    display: block;
    width: 100%;
    font-size: 14px;
    font-weight: 400;
  }
  /* Duration / price / available all share the same modest treatment on
     mobile so duration doesn't visually compete with the trip name. */
  .rm-list-table tbody td.rm-row-duration,
  .rm-list-table tbody td.rm-row-price,
  .rm-list-table tbody td.rm-row-available {
    width: 100%;
    font-size: 14px;
    font-weight: 400;
  }
  .rm-list-table tbody td.rm-row-action {
    width: 100%;
    text-align: left;
    margin-top: 4px;
  }
  .rm-btn-add-to-cart,
  .rm-btn-call-to-book,
  .rm-btn-sold-out,
  .rm-btn-insufficient {
    width: 100%;
  }
  /* Cards layout mobile overrides */
  .rm-layout-cards #rm-list-table-body {
    gap: 20px;
    display: grid;
  }
  .rm-layout-cards .rm-list-table {
    border-spacing: 0;
  }
  .rm-layout-cards .rm-list-table tbody tr {
    padding: 16px 18px;
    gap: 2px 16px;
    border-radius: 10px;
  }
  .rm-layout-cards .rm-list-table tbody td {
    padding: 2px 0;
    border-radius: 0;
  }
  .rm-layout-cards .rm-list-table tbody td:first-child {
    border-radius: 0;
  }
  .rm-layout-cards .rm-list-table tbody td:last-child {
    border-radius: 0;
  }
  .rm-layout-cards .rm-row-duration {
    color: inherit;
    font-size: inherit;
  }
  .rm-layout-cards .rm-btn-add-to-cart,
  .rm-layout-cards .rm-btn-call-to-book,
  .rm-layout-cards .rm-btn-sold-out,
  .rm-layout-cards .rm-btn-insufficient {
    padding: 12px 20px;
  }
}

.activities-by-date-container2 {
  min-height: 3px;
}

.widget-1f5975 .copyright {
    font-size: 13px;
    display: flex;
    text-align: left;
    justify-content: flex-start;
}
