@import url('https://fonts.googleapis.com/css2?family=Lato:wght@400;600;700&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,400&display=swap');

.menu-booking-button {
    box-sizing: border-box !important;
    vertical-align: middle;
    line-height: 1 !important;
    height: 50px !important;
}

/* Header nav bar */
.mphb-calendar .mphb-datepicker-grayscale .datepick-nav,
.datepick-popup .mphb-datepicker-grayscale .datepick-nav {
  background: #3A2438 !important;
  background-color: #3A2438 !important;
  background-image: none !important;
}
.mphb-calendar .mphb-datepicker-grayscale .datepick-nav a:hover,
.datepick-popup .mphb-datepicker-grayscale .datepick-nav a:hover {
  background-color: #B8862E !important;
  color: #fff !important;
}
/* "Today" label */
.datepick-popup a.datepick-cmd.datepick-cmd-today,
.mphb-calendar a.datepick-cmd.datepick-cmd-today {
  color: #B8862E !important;
}
/* Available dates — explicitly excludes check-in/check-out split cells */
.mphb-calendar .mphb-datepicker-grayscale .mphb-date-cell.mphb-available-date:not(.mphb-mark-as-unavailable--check-out):not(.mphb-mark-as-unavailable--check-in) {
  background-color: #C9D4BC !important;
  color: #3A2438 !important;
}
/* Check-in/check-out split cells (first available date) */
.mphb-calendar td .mphb-mark-as-unavailable--check-out,
.mphb-calendar td .mphb-mark-as-unavailable--check-in {
  background: linear-gradient(to top left, #C9D4BC 0, #C9D4BC 50%, #f0c0c0 50%, #f0c0c0 100%) !important;
}
.datepick-ctrl {
  background-color: #E5E0D5 !important;
}

/* Fixed-height gallery to match intro text, regardless of source photo size */
.stay-gallery-col .wpb_gallery .isotope-container {
  max-height: 480px;
  overflow: hidden;
}

/* Legacy equal-height room cards (old hand-built cards — likely dead CSS now, harmless to keep) */
.room-cards-row {
  display: flex !important;
  flex-wrap: wrap;
}
.room-card-col .wpb_wrapper {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.room-card-col .wpb_wrapper > *:last-child {
  margin-top: auto !important;
}
.room-cards-row.content-padding {
  padding-top: 1rem !important;
  padding-bottom: 2rem !important;
}

/* Choose Your Stay section spacing */
.choose-stay-row.content-padding {
  padding-top: 1rem !important;
  padding-bottom: 4rem !important;
}
.choose-stay-row p.lead {
  margin-bottom: 2.5rem !important;
}

/* MotoPress room grid — auto-scaling equal-width columns */
.mphb_sc_rooms-wrapper.mphb-room-types {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)) !important;
  gap: 2rem !important;
  align-items: start !important;
}
.mphb-room-type {
  display: flex !important;
  flex-direction: column !important;
  margin-top: 0 !important;
  max-width: 100% !important;
  width: 100% !important;
  height: 100%;
  background-color: #F5EFE3;
  border-radius: 6px;
  padding: 1.5rem;
  box-shadow: 0 2px 8px rgba(58,36,56,0.1);
}
.mphb-view-details-button-wrapper {
  margin-top: auto !important;
}
.mphb-room-type .mphb-loop-room-thumbnail img {
  height: 320px;
  width: 100%;
  object-fit: cover;
  display: block;
  border-radius: 4px;
}
.mphb-room-type-title + p {
  min-height: 3.2em;
}
.mphb-room-type-title {
  font-family: 'Playfair Display', serif !important;
  color: #3A2438 !important;
  margin-top: 1rem !important;
}
.mphb-regular-price {
  color: #241820;
}
.mphb-view-details-button {
  display: inline-block !important;
  background-color: #A6552E !important;
  color: #F5EFE3 !important;
  padding: 10px 28px !important;
  border-radius: 4px !important;
  text-decoration: none !important;
  font-weight: 600 !important;
  margin-top: 0.5rem;
}

body:not(.single-post) .ct-social-box {
  display: none !important;
}

.mphb-single-room-type-thumbnails img {
  width: 100% !important;
  height: 500px !important;
  object-fit: cover !important;
}

.datepick-cmd-clear {
  white-space: nowrap;
}

body.single-mphb_room_type {
  background-color: #F5EFE3; /* Warm Cream */
}
#site {
  background-color: #F5EFE3;
  background-image: none;
}

.wp-block-post-navigation-link a {
  font-weight: 700;
  color: #B8862E;
}
.wp-block-post-navigation-link a:hover {
  color: #A6552E;
}
.post-navigation-link-next {
  text-align: right;
}

.wp-block-group h2.wp-block-heading {
  font-family: 'Playfair Display', serif;
  font-weight: 600;
  color: #3A2438; /* Deep Aubergine, brändin ohjeen mukainen otsikkoväri */
}

.sidebar-widget .widget-title {
  font-family: 'Playfair Display', serif;
  font-weight: 600;
  color: #3A2438;
}
.mphb_sc_search_results-wrapper > h2,
.mphb_sc_search_results-wrapper h3 {
  font-family: 'Playfair Display', serif;
  font-weight: 600;
  color: #3A2438;
}

@media (min-width: 992px) {
  .page-template-page-right .col-lg-3.col-lg-offset-1 {
    position: sticky;
    top: 20px;
    align-self: flex-start;
  }
}

.post-26411 .col-lg-3.col-lg-offset-1 {
  padding-top: 56px !important;
}

.mphb-room-type {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  grid-auto-flow: row dense;
  column-gap: 15px;
  margin-bottom: 20px !important;
}
.mphb-room-type > * {
  grid-column: 1 / -1;
}
.mphb-room-type .mphb-regular-price {
  grid-column: 1;
}
.mphb-room-type .mphb-view-details-button-wrapper {
  grid-column: 1;
}
.mphb-room-type .mphb-reserve-room-section {
  grid-column: 2;
  grid-row: span 2;
  align-self: end;
  justify-self: end;
  display: flex;
  align-items: center;
  gap: 10px;
}
.mphb-room-type .mphb-rooms-quantity-wrapper {
  margin: 0;
}
.mphb-room-type .mphb-rooms-quantity {
  width: auto;
  min-width: 60px;
}

.mphb-book-button {
  background-color: #A6552E !important;
  color: #F5EFE3 !important;
  border: none !important;
  border-radius: 4px !important;
  padding: 10px 28px !important;
  font-family: 'Roboto', sans-serif !important;
  font-weight: 600 !important;
  font-size: 16.8px !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  cursor: pointer;
}
.mphb-book-button:hover {
  background-color: #8a4526 !important;
}

.mphb-book-button,
.mphb-recommendation-reserve-button {
  background-color: #A6552E !important;
  color: #F5EFE3 !important;
  border: none !important;
  border-radius: 4px !important;
  padding: 10px 28px !important;
  font-family: 'Roboto', sans-serif !important;
  font-weight: 600 !important;
  font-size: 16.8px !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  cursor: pointer;
}
.mphb-book-button:hover,
.mphb-recommendation-reserve-button:hover {
  background-color: #8a4526 !important;
}

.btn-brand-terracotta a {
  background-color: #A6552E !important;
  color: #F5EFE3 !important;
  border: none !important;
  border-radius: 4px !important;
  padding: 10px 28px !important;
}
.btn-brand-terracotta a:hover {
  background-color: #8a4526 !important;
}

.mphb_sc_account a {
  color: #A6552E;
  text-decoration: underline;
}

/* Accommodation: Adults + Guest Name side by side */
.mphb-adults-chooser {
  float: left;
  width: 160px;
  margin-right: 20px;
  box-sizing: border-box;
}
.mphb-adults-chooser select {
  width: 100%;
}
.mphb-guest-name-wrapper {
  overflow: hidden;
}
.mphb-rate-chooser {
  clear: both;
}

/* Additional Services: 2-column grid, compound rows (guest-count/quantity) stay full width */
.mphb_sc_checkout-services-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px 24px;
}
.mphb_sc_checkout-services-list li:has(.mphb_sc_checkout-service-quantity) {
  grid-column: 1 / -1;
}
.mphb_sc_checkout-services-list li {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 8px;
}
.mphb_sc_checkout-services-list li label {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin: 0;
}

/* Coupon code: don't stretch full width */
.mphb-coupon-code-wrapper input[type="text"] {
  max-width: 240px;
}

.mphb-customer-details {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 24px;
}
.mphb-customer-details-title,
.mphb-required-fields-tip,
.mphb-customer-note {
  grid-column: 1 / -1;
}

.mphb-room-type-title {
  margin-bottom: 20px;
}
.mphb-adults-chooser,
.mphb-guest-name-wrapper {
  margin-top: 0 !important;
}

.mphb_sc_checkout-services-list input[type="number"],
.mphb_sc_checkout-services-list select {
  padding: 6px 12px;
  height: auto;
  line-height: 1.2;
}

.mphb_sc_checkout-services-list select {
  min-width: 70px;
}

.mphb_sc_booking_confirmation .label {
  background-color: #9CAA8C; /* Sage Mist */
  color: #241820;            /* Charcoal Plum */
}

.page-id-26416 #side {
  padding-top: 0 !important;
}

.page-id-26413 .mphb-booking-details-title,
.page-id-26413 .mphb-room-number,
.page-id-26413 .mphb-room-rate-chooser-title,
.page-id-26413 .mphb-services-details-title,
.page-id-26413 .mphb-price-breakdown-title,
.page-id-26413 .mphb-customer-details-title,
.page-id-26413 .mphb-gateway-chooser-title {
  color: #3A2438 !important; /* Deep Aubergine */
}

.page-id-26413 strong {
  color: #241820; /* Charcoal Plum */
}

.page-id-26413 tr.mphb-price-breakdown-total,
.page-id-26413 .mphb-total-price-field {
  color: #B8862E !important; /* Sunbaked Ochre */
  font-weight: 700;
}

.page-id-26413 .mphb-apply-coupon-code-button {
  background-color: transparent !important;
  color: #A6552E !important;
  border: 1.5px solid #A6552E !important;
  font-weight: 600 !important;
  border-radius: 4px;
}
.page-id-26413 .mphb-apply-coupon-code-button:hover {
  background-color: #A6552E !important;
  color: #F5EFE3 !important;
}

.page-id-26413 .mphb_sc_checkout-submit-wrapper input.button {
  background-color: #A6552E !important;
  color: #F5EFE3 !important;
  border: none !important;
  border-radius: 4px;
  padding: 10px 28px;
  font-weight: 600;
}
.page-id-26413 .mphb_sc_checkout-submit-wrapper input.button:hover {
  background-color: #8a4526 !important;
}

.page-id-26413 .mphb-coupon-code-wrapper {
  display: flex;
  align-items: flex-end;
  flex-wrap: wrap;
  gap: 10px;
}
.page-id-26413 .mphb-coupon-code-wrapper > p {
  margin: 0;
}
.page-id-26413 .mphb-coupon-code-wrapper .mphb-coupon-message {
  flex-basis: 100%;
}

.menu-booking-button a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 38px !important;
  margin: 21px 0 !important;
  line-height: normal !important;
  padding: 0 24px !important;
  box-sizing: border-box !important;
  background-color: #A6552E !important;
  color: #F5EFE3 !important;
  border-radius: 4px !important;
  font-weight: 700 !important;
  transition: background-color 0.2s ease;
}

.menu-booking-button a:hover {
  background-color: #8a4526 !important;
  color: #F5EFE3 !important;
}

@media (max-width: 767px) {
  .menu-booking-button a {
    height: auto !important;
    margin: 10px 0 !important;
    padding: 12px 20px !important;
  }
}

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@600;700&family=Lato:wght@400;600&display=swap');
/* ===== MotoPress Service single pages (/services/...) — B&B visual identity (2026-10-12) ===== */
/* Remove the broken "Room Booking" sidebar and give the content the full, centred width */
.single-mphb_room_service .col-sm-4.col-lg-3 { display: none !important; }
.single-mphb_room_service .col-sm-8 {
  width: 100% !important;
  max-width: 820px;
  float: none !important;
  margin: 0 auto !important;
}
/* Remove the duplicate title, the post date/category line and the prev/next links to unrelated services */
.single-mphb_room_service article .post-title,
.single-mphb_room_service article .entry-meta,
.single-mphb_room_service .post-navigation { display: none !important; }
/* Featured image: 3:2 crop, rounded, like the cards */
.single-mphb_room_service article .featured-image {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  border-radius: 8px;
  margin: 0 0 28px 0 !important;
}
/* Body text */
.single-mphb_room_service .entry-content p {
  font-family: 'Lato', sans-serif !important;
  color: #241820 !important;
  font-size: 17px;
  line-height: 1.7;
  margin-bottom: 18px;
}
.single-mphb_room_service .entry-content > p:first-of-type {
  font-family: 'Playfair Display', serif !important;
  font-size: 22px;
  line-height: 1.5;
  color: #3A2438 !important;
}
.single-mphb_room_service .entry-content p strong {
  font-family: 'Playfair Display', serif;
  font-weight: 600;
  color: #3A2438;
  font-size: 19px;
}
.single-mphb_room_service .entry-content em { color: #A6552E; font-style: italic; }
/* Price block: a light card with the price in Ochre */
.single-mphb_room_service .mphb-price-title {
  font-family: 'Playfair Display', serif !important;
  color: #3A2438 !important;
  font-size: 22px !important;
  margin: 32px 0 8px 0 !important;
  padding-top: 24px;
  border-top: 1px solid #D8D2C2;
}
.single-mphb_room_service .mphb-price-wrapper {
  font-family: 'Lato', sans-serif !important;
  color: #241820 !important;
  background: #FBF8F1;
  border-left: 4px solid #B8862E;
  padding: 14px 18px;
  border-radius: 4px;
}
.single-mphb_room_service .mphb-price-wrapper .mphb-price {
  color: #B8862E;
  font-weight: 700;
  font-size: 24px;
  margin-right: 6px;
}
/* Closing links: back to all extras / book */
.single-mphb_room_service .entry-content p.bb-svc-links {
  margin-top: 28px;
  font-family: 'Lato', sans-serif !important;
}
.single-mphb_room_service .bb-svc-links a {
  display: inline-block;
  margin: 0 10px 10px 0;
  padding: 10px 24px;
  border-radius: 6px;
  font-weight: 600;
  text-decoration: none !important;
  border: 2px solid #A6552E;
  color: #A6552E !important;
}
.single-mphb_room_service .bb-svc-links a.bb-svc-book {
  background: #A6552E;
  color: #F5EFE3 !important;
}
.single-mphb_room_service .bb-svc-links a:hover { background: #8a4526; border-color: #8a4526; color: #F5EFE3 !important; }
@media (max-width: 767px) {
  .single-mphb_room_service .entry-content > p:first-of-type { font-size: 19px; }
  .single-mphb_room_service .entry-content p { font-size: 16px; }
}

/* ===== Room pages: attribute list with icons (2026-10-12) ===== */
/* Layout: each detail as a row with a boxed icon; amenities as chips */
.mphb-single-room-type-attributes {
  list-style: none !important;
  margin: 0 0 8px 0 !important;
  padding: 0 !important;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px 28px;
  font-family: 'Lato', sans-serif;
}
.mphb-single-room-type-attributes > li {
  position: relative;
  list-style: none !important;
  margin: 0 !important;
  padding: 2px 0 0 50px !important;
  min-height: 38px;
  color: #241820;
  line-height: 1.5;
}
.mphb-single-room-type-attributes > li::before {
  font-family: 'Font Awesome 6 Pro', 'Font Awesome 6 Free';
  font-weight: 900;
  position: absolute;
  left: 0;
  top: 0;
  width: 36px;
  height: 36px;
  line-height: 36px;
  text-align: center;
  border-radius: 6px;
  background: #3A2438;
  color: #B8862E;
  font-size: 16px;
}
.mphb-single-room-type-attributes .mphb-attribute-title {
  display: block;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #A6552E;
}
.mphb-single-room-type-attributes .mphb-attribute-value { font-size: 16px; }
.mphb-room-type-adults-capacity::before   { content: "\f500"; } /* user-group */
.mphb-room-type-children-capacity::before { content: "\f1ae"; } /* child */
.mphb-room-type-total-capacity::before    { content: "\f0c0"; } /* users */
.mphb-room-type-view::before              { content: "\f06e"; } /* eye */
.mphb-room-type-size::before              { content: "\f546"; } /* ruler-combined */
.mphb-room-type-bed-type::before          { content: "\f236"; } /* bed */
.mphb-room-type-categories::before        { content: "\f02b"; } /* tag */
.mphb-room-type-facilities::before        { content: "\f058"; } /* circle-check */
/* Amenities and categories: full row; links switched off (their archive pages are not used) */
.mphb-room-type-facilities,
.mphb-room-type-categories { grid-column: 1 / -1; }
/* Short facts first (adults, view, size, bed), then amenities, then categories */
.mphb-room-type-facilities { order: 10; }
.mphb-room-type-categories { order: 11; }
.mphb-single-room-type-attributes a {
  pointer-events: none;
  cursor: default;
  color: inherit !important;
  text-decoration: none !important;
}
/* Amenity chips with their own icon (commas hidden) */
.mphb-room-type-facilities .mphb-attribute-value {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 6px;
  font-size: 0; /* hides the ", " separators */
}
.mphb-room-type-facilities .mphb-attribute-value > span {
  font-size: 14px;
  background: #FBF8F1;
  border: 1px solid #D8D2C2;
  border-radius: 20px;
  padding: 5px 12px;
  color: #241820;
  white-space: nowrap;
}
.mphb-room-type-facilities .mphb-attribute-value > span::before {
  font-family: 'Font Awesome 6 Pro', 'Font Awesome 6 Free';
  font-weight: 900;
  content: "\f00c"; /* check — default for any amenity without its own icon */
  margin-right: 7px;
  color: #5C6B47;
}
.facility-ensuite-shower::before      { content: "\f2cc" !important; } /* shower */
.facility-tea-kettle::before          { content: "\f7b6" !important; } /* mug-hot */
.facility-parking::before             { content: "\f540" !important; } /* square-parking */
.facility-daily-housekeeping::before  { content: "\f51a" !important; } /* broom */
.facility-refrigerator::before        { content: "\f2dc" !important; } /* snowflake */
.facility-terrace-patio::before       { content: "\f6c0" !important; } /* chair */
.facility-private-garden::before      { content: "\f4d8" !important; } /* seedling */
.facility-television::before          { content: "\f26c" !important; } /* tv */
.facility-kitchen::before             { content: "\f2e7" !important; } /* utensils */
.facility-mosquito-net::before        { content: "\f3ed" !important; } /* shield-halved */
.facility-wi-fi::before               { content: "\f1eb" !important; } /* wifi */
.facility-swimming-pool::before       { content: "\f5c4" !important; } /* person-swimming */
.facility-mini-bar::before            { content: "\f4e3" !important; } /* wine-glass */
.facility-air-conditioning::before    { content: "\f72e" !important; } /* wind */
@media (max-width: 767px) {
  .mphb-single-room-type-attributes { grid-template-columns: 1fr; }
}

/* ===== Availability search: keep the Search button level with the fields (2026-10-15) ===== */
@media (min-width: 768px) {
  .mphb_sc_search-wrapper.is-style-horizontal-form .mphb_sc_search-form { align-items: flex-end !important; }
  .mphb_sc_search-wrapper.is-style-horizontal-form .mphb_sc_search-form > p { margin-bottom: 0 !important; }
  .mphb_sc_search-wrapper.is-style-horizontal-form .mphb_sc_search-submit-button-wrapper input { min-height: 42px; }
}

/* =========================================================
   BB – WooCommerce  (Birds & Butterflies sitewide shop styling)
   Scope: single product, cart, checkout, order received.
   Generic for activities AND future physical products;
   activity-only rules are scoped to .bookacti-activity.
   Palette: VISUAL_IDENTITY.md §2  |  Booking boxes: §3.8
   Fonts: the @import line sits at line 1 of Additional CSS.
   ========================================================= */

/* ---------- 1. SINGLE PRODUCT ---------- */

/* 1a. No sidebar, full content width */
.single-product .with-sidebar #side{display:none !important;}
.single-product .with-sidebar > .row > .col-lg-8{width:100% !important;float:none !important;}

/* 1b. Theme page-title band says "Shop" – the product title is the real H1 */
.single-product h1.page-title{display:none !important;}

/* 1c. Gallery + summary side by side (desktop) */
.single-product div.product{color:#241820;font-family:'Lato',sans-serif;}
.single-product div.product > .row:first-child{display:flex;align-items:flex-start;gap:48px;margin:0 0 40px;}
.single-product div.product > .row:first-child::before,
.single-product div.product > .row:first-child::after{display:none;}
.single-product div.product .images.gallery_container{flex:0 0 56%;max-width:56%;width:auto;float:none;padding:0;margin:0;}
.single-product div.product .summary{flex:1 1 auto;width:auto;float:none;margin:0 !important;padding:0;}
.single-product .product_gallery img{border-radius:8px;}
/* a3 Dynamic Gallery: no frame, no slideshow bar, thumbnails only when 2+ images */
.single-product .a3dg-image-wrapper{border:none !important;background:transparent !important;border-radius:8px;overflow:hidden;}
.single-product .a3dg-navbar-control{display:none !important;}
.single-product .a3dg-nav:has(.a3dg-thumb-list li:only-child){display:none !important;}
.single-product .a3dg-thumb-list a{border:1px solid #E6DECB !important;border-radius:4px;}
.single-product .a3dg-thumb-list a.a3dg-active{border-color:#B8862E !important;}

/* 1d. Summary typography */
.single-product.woocommerce div.product .product_title{font-family:'Playfair Display',serif;font-weight:600;font-size:38px;line-height:1.2;color:#3A2438;margin:0 0 12px;}
.single-product .summary .price{font-family:'Playfair Display',serif;font-weight:600;font-size:26px;color:#B8862E;margin:0 0 18px;}
.single-product .summary .price,.single-product .summary .price *{color:#B8862E !important;}
.single-product .summary .price .amount{font-size:30px !important;}
.single-product .summary .price .woocommerce-Price-currencySymbol{font-size:20px !important;margin-right:4px;}
.single-product .woocommerce-product-details__short-description,
.single-product .woocommerce-product-details__short-description p{font-size:17px;line-height:1.65;color:#241820;}
.single-product .product_meta{font-size:14px;color:#5C6B47;margin-top:18px;}
.single-product .product_meta a{color:#A6552E;}
.single-product .sharedaddy{margin-top:18px;}
.single-product .sharedaddy .sd-title{font-family:'Lato',sans-serif;font-size:12px;letter-spacing:1.5px;text-transform:uppercase;color:#5C6B47;}
.single-product .sd-social-icon .sd-content ul li a.sd-button{background:#3A2438 !important;color:#F5EFE3 !important;}
.single-product .sd-social-icon .sd-content ul li a.sd-button:hover{background:#A6552E !important;}

/* Activities: price unit, no "Continue Shopping" / category link */
.single-product .bookacti-activity .summary .price::after{content:" per person";font-family:'Lato',sans-serif;font-size:15px;font-weight:400;color:#5C6B47;}
.single-product .bookacti-activity .wcz-continue,
.single-product .bookacti-activity .product_meta .posted_in{display:none !important;}

/* 1e. Booking card (Booking Activities form + quantity + Book) */
.single-product .bookacti-wc-fullwidth-cart-form{background:#FBF8F1;border:1px solid #E6DECB;border-top:3px solid #B8862E;border-radius:8px;padding:28px 32px;margin:0 0 48px;}
.single-product .bookacti-wc-fullwidth-cart-form form.cart{margin:0;width:100%;}
.single-product .bookacti-calendar-title{font-family:'Playfair Display',serif;font-weight:600;font-size:24px;color:#3A2438;margin:0 0 16px;}

/* Calendar theme – FullCalendar variables, brand palette */
.single-product .bookacti-calendar{
  --fc-classic-button:#3A2438; --fc-classic-button-border:#3A2438;
  --fc-classic-button-strong:#A6552E; --fc-classic-button-strong-border:#A6552E;
  --fc-classic-button-foreground:#F5EFE3; --fc-classic-primary:#A6552E;
  --fc-classic-background:#FFFDF8; --fc-classic-foreground:#241820;
  --fc-classic-border:#E6DECB; --fc-classic-strong-border:#D8D2C2;
  --fc-classic-today:rgba(184,134,46,.10); --fc-classic-highlight:rgba(156,170,140,.25);
  --fc-classic-muted-foreground:#5C6B47;
  font-family:'Lato',sans-serif;font-size:15px;background:#FFFDF8;border-radius:6px;
}
.single-product .bookacti-calendar .fc-toolbar-title{font-family:'Playfair Display',serif;font-weight:600;font-size:20px;color:#3A2438;}
.single-product .bookacti-calendar .fc-button{font-family:'Lato',sans-serif;font-weight:600;font-size:13px;letter-spacing:.5px;text-transform:uppercase;}
.single-product .bookacti-calendar .fc-col-header-cell-cushion{font-weight:600;color:#3A2438;}
.single-product .bookacti-calendar .fc-event,
.single-product .bookacti-calendar .fc-event *{color:#F5EFE3 !important;}
.single-product .bookacti-calendar .fc-event{border-radius:4px;box-shadow:0 1px 2px rgba(36,24,32,.15);cursor:pointer;}
.single-product .bookacti-calendar .fc-event-title{font-weight:700;}
.single-product .bookacti-calendar .bookacti-availability-container{font-size:12px;opacity:.9;}
.single-product .bookacti-calendar .fc-event.bookacti-picked-event{outline:3px solid #B8862E;outline-offset:1px;}

/* Picked-event summary + notices under the calendar */
.single-product .bookacti-picked-events{margin-top:16px;padding:14px 18px;background:#FFFDF8;border-left:4px solid #B8862E;border-radius:4px;}
.single-product .bookacti-picked-events-list-title{font-weight:600;color:#3A2438;}
.single-product .bookacti-picked-events-list{list-style:none;margin:6px 0 0;padding:0;max-height:none;}
.single-product .bookacti-picked-events-list li{font-size:15px;color:#241820;}
.single-product .bookacti-booking-event-title{font-weight:600;}
.single-product .bookacti-notices ul{margin:12px 0 0;padding:12px 16px;background:#FFFDF8;border-left:4px solid #A6552E;list-style:none;}

/* Quantity + Book button row */
.single-product form.cart .quantity{display:inline-flex;align-items:center;gap:10px;margin:20px 16px 0 0;vertical-align:middle;}
.single-product .bookacti-activity form.cart .quantity::before{content:"Guests";font-weight:600;font-size:14px;letter-spacing:.5px;text-transform:uppercase;color:#3A2438;}
.single-product form.cart .quantity input.qty{width:84px;height:46px;padding:0 10px;font-size:17px;text-align:center;background:#FFFDF8;border:1px solid #D8D2C2;border-radius:4px;color:#241820;}
.single-product form.cart .quantity input.qty:focus{outline:none;border-color:#B8862E;box-shadow:0 0 0 3px rgba(184,134,46,.25);}

/* Shared Terracotta button (VISUAL_IDENTITY §3.5) – product, cart, checkout */
.woocommerce .single_add_to_cart_button.button,
.woocommerce a.button.alt, .woocommerce button.button.alt,
.woocommerce .wc-proceed-to-checkout a.checkout-button,
.woocommerce #place_order{
  background:#A6552E !important;color:#F5EFE3 !important;border:none !important;border-radius:4px !important;
  padding:13px 34px !important;font-family:'Lato',sans-serif !important;font-weight:600 !important;
  font-size:14px !important;letter-spacing:1px;text-transform:uppercase;box-shadow:none !important;text-shadow:none !important;
  transition:background .2s ease;
}
.woocommerce .single_add_to_cart_button.button:hover,
.woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover,
.woocommerce .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce #place_order:hover{background:#8a4526 !important;}
.single-product form.cart .single_add_to_cart_button{margin-top:20px;height:46px;vertical-align:middle;}
.woocommerce button.button.alt.disabled,
.woocommerce button.button.alt:disabled{background:#C9A592 !important;cursor:not-allowed;}

/* 1f. Description tabs → one clean content block */
.single-product .woocommerce-tabs{display:block;margin:0;}
.single-product .woocommerce-tabs::before,.single-product .woocommerce-tabs::after{display:none;}
.single-product .woocommerce-tabs ul.tabs{width:100%;float:none;display:flex;gap:28px;margin:0 0 24px;padding:0;border-bottom:1px solid #E6DECB;list-style:none;}
.single-product .woocommerce-tabs ul.tabs li{margin:0;padding:0 0 10px;background:none;border:none;}
.single-product .woocommerce-tabs ul.tabs li a{font-family:'Lato',sans-serif;font-weight:600;font-size:13px;letter-spacing:2px;text-transform:uppercase;color:#5C6B47;}
.single-product .woocommerce-tabs ul.tabs li.active{border-bottom:2px solid #B8862E;margin-bottom:-1px;}
.single-product .woocommerce-tabs ul.tabs li.active a{color:#3A2438;}
.single-product .woocommerce-tabs .panel{width:100%;max-width:780px;float:none;margin:0;padding:0;background:transparent !important;border:none !important;box-shadow:none !important;}
.single-product .woocommerce-tabs .panel > h2:first-child{display:none;}
.single-product .woocommerce-tabs .panel h3{font-family:'Playfair Display',serif;font-weight:600;font-size:22px;color:#3A2438;margin:28px 0 10px;}
.single-product .woocommerce-tabs .panel p,
.single-product .woocommerce-tabs .panel li{font-size:16px;line-height:1.65;color:#241820;}
.single-product .woocommerce-tabs .panel ul{padding-left:20px;}
.single-product .woocommerce-tabs .panel ul li::marker{color:#B8862E;}

/* Related / cross-sell products (future Shop) */
.single-product .related > h2,.single-product .upsells > h2{font-family:'Playfair Display',serif;font-weight:600;color:#3A2438;}

/* 1g. Tablet / mobile */
@media (max-width:991px){
  .single-product div.product > .row:first-child{gap:28px;}
  .single-product div.product .images.gallery_container{flex-basis:50%;max-width:50%;}
  .single-product.woocommerce div.product .product_title{font-size:32px;}
}
@media (max-width:767px){
  .single-product div.product > .row:first-child{display:block;margin-bottom:28px;}
  .single-product div.product .images.gallery_container{max-width:100%;margin-bottom:22px;}
  .single-product.woocommerce div.product .product_title{font-size:28px;}
  .single-product .summary .price .amount{font-size:26px !important;}
  .single-product .bookacti-wc-fullwidth-cart-form{padding:20px 14px;margin:0 -6px 36px;}
  .single-product .bookacti-calendar-title{font-size:20px;}
  .single-product form.cart .quantity{display:flex;margin:18px 0 0;}
  .single-product form.cart .single_add_to_cart_button{display:block;width:100%;margin-top:14px;}
  .single-product .woocommerce-tabs .panel h3{font-size:20px;}
}

/* ---------- 2. SHARED: CART / CHECKOUT / ORDER RECEIVED ---------- */

/* Theme hides WooCommerce's own Proceed button – bring it back */
.woocommerce-cart .wc-proceed-to-checkout .checkout-button{display:block !important;}

/* Page base */
.woocommerce-cart .bb-wc-page, .woocommerce-checkout .bb-wc-page{font-family:'Lato',sans-serif;color:#241820;max-width:1100px;margin:0 auto;}
.woocommerce-cart .woocommerce, .woocommerce-checkout .woocommerce{font-family:'Lato',sans-serif;color:#241820;font-size:16px;}
.woocommerce-cart .woocommerce h2, .woocommerce-checkout .woocommerce h2,
.woocommerce-checkout .woocommerce h3{font-family:'Playfair Display',serif;font-weight:600;color:#3A2438;font-size:24px;letter-spacing:0;text-transform:none;margin:0 0 16px;}
.woocommerce-cart .woocommerce a:not(.button), .woocommerce-checkout .woocommerce a:not(.button){color:#A6552E;}

/* Intro box (VISUAL_IDENTITY §3.8) */
.bb-wc-intro{background:#FBF8F1;border-left:4px solid #B8862E;padding:22px 26px;font-size:16px;line-height:1.6;color:#241820;border-radius:0 4px 4px 0;margin:0 0 28px;}
.bb-wc-intro a{color:#A6552E;}

/* Notices: info / success / error */
.woocommerce .woocommerce-message, .woocommerce .woocommerce-info, .woocommerce .woocommerce-error,
.woocommerce-notices-wrapper .woocommerce-message{
  background:#FBF8F1 !important;color:#241820 !important;border:none !important;border-left:4px solid #9CAA8C !important;
  border-radius:0 4px 4px 0;padding:16px 22px !important;margin:0 0 20px !important;font-size:15px;line-height:1.55;list-style:none;box-shadow:none !important;
}
.woocommerce .woocommerce-info{border-left-color:#B8862E !important;}
.woocommerce .woocommerce-error{border-left-color:#A6552E !important;}
.woocommerce .woocommerce-message::before, .woocommerce .woocommerce-info::before, .woocommerce .woocommerce-error::before{display:none !important;}
.woocommerce .woocommerce-message .button, .woocommerce .woocommerce-info .button{
  float:right;background:transparent !important;color:#A6552E !important;border:1.5px solid #A6552E !important;border-radius:4px;
  padding:6px 16px !important;font-size:12px !important;font-weight:600;letter-spacing:1px;text-transform:uppercase;margin-left:12px;}
.woocommerce .woocommerce-message br{display:none;}
.bookacti-cart-expiration-container{font-weight:600;}
.bookacti-countdown{color:#A6552E;}

/* Secondary (outline) buttons: Apply coupon, Update cart, Return to shop */
.woocommerce-cart .woocommerce button.button:not(.alt),
.woocommerce-checkout .woocommerce button.button:not(.alt),
.woocommerce-cart .return-to-shop .button{
  background:transparent !important;color:#A6552E !important;border:1.5px solid #A6552E !important;border-radius:4px !important;
  padding:10px 22px !important;font-family:'Lato',sans-serif !important;font-weight:600 !important;font-size:13px !important;
  letter-spacing:1px;text-transform:uppercase;box-shadow:none !important;text-shadow:none !important;line-height:1.2;}
.woocommerce-cart .woocommerce button.button:not(.alt):hover,
.woocommerce-checkout .woocommerce button.button:not(.alt):hover,
.woocommerce-cart .return-to-shop .button:hover{background:#A6552E !important;color:#F5EFE3 !important;}
.woocommerce button.button:disabled, .woocommerce button.button:disabled[disabled]{opacity:.45;}

/* Form inputs (cart qty, coupon, checkout fields) */
.woocommerce-cart .woocommerce input.input-text, .woocommerce-cart .woocommerce input.qty,
.woocommerce-checkout .woocommerce input.input-text, .woocommerce-checkout .woocommerce textarea,
.woocommerce-checkout .woocommerce select{
  background:#FFFDF8 !important;border:1px solid #D8D2C2 !important;border-radius:4px !important;color:#241820 !important;
  font-family:'Lato',sans-serif;font-size:16px;padding:10px 12px !important;min-height:44px;box-shadow:none !important;}
.woocommerce-cart .woocommerce input:focus, .woocommerce-checkout .woocommerce input:focus,
.woocommerce-checkout .woocommerce textarea:focus{outline:none;border-color:#B8862E !important;box-shadow:0 0 0 3px rgba(184,134,46,.25) !important;}

/* ---------- 3. CART ---------- */
.woocommerce-cart form.woocommerce-cart-form{width:100% !important;float:none !important;}
.woocommerce-cart table.shop_table.cart{width:100% !important;background:#FFFDF8;border:1px solid #E6DECB !important;border-radius:8px;border-collapse:separate !important;border-spacing:0;overflow:hidden;margin:0 0 32px;}
.woocommerce-cart table.shop_table th{font-family:'Lato',sans-serif;font-size:12px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:#5C6B47;background:#FBF8F1;border-bottom:1px solid #E6DECB;padding:14px 16px;}
.woocommerce-cart table.shop_table td{padding:18px 16px;border-top:1px solid #E6DECB;vertical-align:middle;color:#241820;}
.woocommerce-cart table.shop_table tr:first-child td{border-top:none;}
.woocommerce-cart td.product-name{font-family:'Playfair Display',serif;font-weight:600;font-size:19px;color:#3A2438;}
.woocommerce-cart td.product-name a{color:#3A2438 !important;}
.woocommerce-cart td.product-name dl.variation{font-family:'Lato',sans-serif;font-weight:400;font-size:14px;color:#5C6B47;margin:6px 0 0;}
.woocommerce-cart td.product-name dl.variation dt{font-weight:600;color:#5C6B47;}
.woocommerce-cart td.product-name dl.variation p{margin:0;}
.woocommerce-cart .bookacti-cart-item-activity .wcz-cart-cats{display:none;}
.woocommerce-cart td.product-thumbnail img{width:84px;height:84px;object-fit:cover;border-radius:6px;}
.woocommerce-cart td.product-price, .woocommerce-cart td.product-subtotal{font-weight:600;white-space:nowrap;}
.woocommerce-cart td.product-subtotal{color:#3A2438;}
.woocommerce-cart td.product-quantity input.qty{width:72px;text-align:center;}

/* Remove "×": visible round button */
.woocommerce-cart td.product-remove{width:56px;text-align:center;}
.woocommerce a.remove{
  display:inline-flex !important;align-items:center;justify-content:center;width:30px !important;height:30px !important;
  border:1.5px solid #A6552E !important;border-radius:50% !important;color:#A6552E !important;background:transparent !important;
  font-size:20px !important;line-height:1 !important;font-weight:400;text-decoration:none;transition:all .2s ease;}
.woocommerce a.remove:hover{background:#A6552E !important;color:#F5EFE3 !important;}

/* Coupon + update row */
.woocommerce-cart td.actions{background:#FBF8F1;padding:16px !important;}
.woocommerce-cart td.actions .coupon{display:flex;gap:10px;align-items:center;float:left;}
.woocommerce-cart td.actions .coupon input.input-text{width:180px !important;}
.woocommerce-cart td.actions > .button{float:right;}

/* Cart totals card */
.woocommerce-cart .cart-collaterals{display:flex;justify-content:flex-end;}
.woocommerce-cart .cart_totals{width:100% !important;max-width:440px;float:none !important;background:#FBF8F1;border:1px solid #E6DECB;border-top:3px solid #B8862E;border-radius:8px;padding:24px 28px;color:#241820 !important;}
.woocommerce-cart .cart_totals h2{font-size:22px !important;}
.woocommerce-cart .cart_totals table{background:transparent !important;border:none !important;margin:0 0 18px;width:100%;}
.woocommerce-cart .cart_totals table th, .woocommerce-cart .cart_totals table td{background:transparent !important;border:none !important;border-top:1px solid #E6DECB !important;padding:12px 0 !important;color:#241820 !important;font-size:15px;text-transform:none;letter-spacing:0;}
.woocommerce-cart .cart_totals table td{text-align:right;}
.woocommerce-cart .cart_totals tr.order-total th, .woocommerce-cart .cart_totals tr.order-total td{font-weight:700;font-size:18px;color:#3A2438 !important;}
.woocommerce-cart .cart_totals small.includes_tax{display:block;font-size:12px;font-weight:400;color:#5C6B47;}
.woocommerce-cart .wc-proceed-to-checkout{padding:0 !important;}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{width:100%;text-align:center;font-size:15px !important;padding:15px 20px !important;}

/* Cross-sells (cart) */
.woocommerce-cart .cross-sells{margin-top:40px;}
.woocommerce-cart .cross-sells h2{font-size:22px !important;}

/* Empty cart */
.woocommerce-cart .cart-empty{font-size:17px;}
.woocommerce-cart .return-to-shop{margin-top:16px;}

@media (max-width:767px){
  .bb-wc-intro{padding:18px 18px;}
  .woocommerce-cart table.shop_table_responsive.cart tr td{display:flex !important;justify-content:space-between;align-items:center;text-align:right !important;padding:10px 14px;border-top:none;}
  .woocommerce-cart table.shop_table_responsive.cart tr.cart_item{display:block;border-top:1px solid #E6DECB;padding:8px 0;}
  .woocommerce-cart table.shop_table_responsive.cart tr.cart_item:first-child{border-top:none;}
  .woocommerce-cart table.shop_table_responsive.cart tr td::before{font-family:'Lato',sans-serif;font-size:12px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:#5C6B47;}
  .woocommerce-cart table.shop_table_responsive.cart tr td.product-remove{justify-content:flex-end;padding-bottom:0;}
  .woocommerce-cart table.shop_table_responsive.cart tr td.product-remove::before{display:none;}
  .woocommerce-cart table.shop_table_responsive.cart tr td.product-thumbnail{display:none !important;}
  .woocommerce-cart table.shop_table_responsive.cart tr td.product-name{display:block !important;text-align:left !important;padding-top:0;}
  .woocommerce-cart table.shop_table_responsive.cart tr td.product-name::before{display:none;}
  .woocommerce-cart table.shop_table_responsive.cart tr td.actions{display:block !important;}
  .woocommerce-cart td.actions .coupon{float:none;width:100%;margin-bottom:12px;}
  .woocommerce-cart td.actions .coupon input.input-text{flex:1;width:auto !important;}
  .woocommerce-cart td.actions > .button{float:none;width:100%;}
  .woocommerce-cart .cart_totals{max-width:none;padding:20px 18px;}
  .woocommerce .woocommerce-message .button{float:none;display:inline-block;margin:10px 0 0;}
}

/* ---------- 4. CHECKOUT ---------- */
.woocommerce-checkout .wcz-checkout-secureimg{display:none !important;}
.woocommerce-checkout .woocommerce-form-login-toggle .woocommerce-info,
.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info{padding:12px 18px !important;margin:0 0 12px !important;font-size:14px;}
.woocommerce-checkout form.checkout_coupon, .woocommerce-checkout form.woocommerce-form-login{background:#FBF8F1;border:1px solid #E6DECB !important;border-radius:8px;padding:20px 22px !important;margin:0 0 20px !important;}

/* Two columns: your details | order summary */
@media (min-width:992px){
  .woocommerce-checkout form.checkout.woocommerce-checkout{display:grid;grid-template-columns:minmax(0,1fr) 420px;grid-template-rows:auto 1fr;column-gap:40px;align-items:start;margin-top:12px;}
  .woocommerce-checkout form.checkout > .woocommerce-NoticeGroup{grid-column:1 / -1;}
  .woocommerce-checkout #customer_details{grid-column:1;grid-row:1 / span 2;}
  .woocommerce-checkout #order_review_heading{grid-column:2;grid-row:1;}
  .woocommerce-checkout #order_review{grid-column:2;grid-row:2;position:sticky;top:100px;}
}
.woocommerce-checkout #customer_details.col2-set{width:100% !important;margin:0 !important;float:none !important;}
.woocommerce-checkout #customer_details.col2-set::before,.woocommerce-checkout #customer_details.col2-set::after{display:none;}
.woocommerce-checkout #customer_details .col-1,.woocommerce-checkout #customer_details .col-2{width:100% !important;float:none !important;padding:0 !important;max-width:none;}
.woocommerce-checkout #customer_details .col-2{margin-top:8px;}

/* Field cards */
.woocommerce-checkout .woocommerce-billing-fields,
.woocommerce-checkout .woocommerce-additional-fields,
.woocommerce-checkout .woocommerce-shipping-fields{background:#FFFDF8;border:1px solid #E6DECB;border-radius:8px;padding:24px 28px 10px;margin:0 0 20px;}
.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout .woocommerce-additional-fields h3,
.woocommerce-checkout .woocommerce-shipping-fields h3{font-size:22px !important;}
.woocommerce-checkout .form-row{margin:0 0 16px !important;padding:0 !important;}
.woocommerce-checkout .form-row label{font-family:'Lato',sans-serif;font-weight:600;font-size:14px;color:#3A2438;margin-bottom:6px;display:block;}
.woocommerce-checkout .form-row label .required{color:#A6552E;text-decoration:none;}
.woocommerce-checkout .form-row label .optional{font-weight:400;color:#5C6B47;}
.woocommerce-checkout .form-row-first,.woocommerce-checkout .form-row-last{width:calc(50% - 8px) !important;}
.woocommerce-checkout .form-row-first{float:left;margin-right:16px !important;}
.woocommerce-checkout .form-row-last{float:right;}
.woocommerce-checkout .form-row-wide{clear:both;}
.woocommerce-checkout textarea#order_comments{min-height:110px;}
.woocommerce-checkout .select2-container .select2-selection--single{height:44px;background:#FFFDF8;border:1px solid #D8D2C2;border-radius:4px;}
.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered{line-height:42px;padding-left:12px;color:#241820;}
.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow{height:42px;}
.woocommerce-checkout .woocommerce-invalid input.input-text{border-color:#A6552E !important;}
.woocommerce-checkout .form-row input[type=checkbox]{accent-color:#A6552E;width:18px;height:18px;vertical-align:middle;margin-right:8px;}
.woocommerce-checkout #ce4wp_checkout_consent_checkbox_field label{font-weight:400;font-size:14px;color:#241820;}

/* Order summary card */
.woocommerce-checkout #order_review_heading{font-size:22px !important;margin:0 0 12px !important;}
.woocommerce-checkout #order_review{background:#FBF8F1;border:1px solid #E6DECB;border-top:3px solid #B8862E;border-radius:8px;padding:22px 24px;}
.woocommerce-checkout #order_review .bookacti-cart-expiration-container{background:transparent !important;border:none !important;padding:0 !important;margin:0 0 12px !important;font-size:14px;}
.woocommerce-checkout table.woocommerce-checkout-review-order-table{width:100%;background:transparent !important;border:none !important;margin:0 0 18px;}
.woocommerce-checkout table.woocommerce-checkout-review-order-table th,
.woocommerce-checkout table.woocommerce-checkout-review-order-table td{background:transparent !important;border:none !important;border-top:1px solid #E6DECB !important;padding:12px 0 !important;font-size:15px;color:#241820;vertical-align:top;}
.woocommerce-checkout table.woocommerce-checkout-review-order-table thead th{border-top:none !important;font-size:12px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:#5C6B47;}
.woocommerce-checkout table.woocommerce-checkout-review-order-table td:last-child,
.woocommerce-checkout table.woocommerce-checkout-review-order-table th:last-child{text-align:right;}
.woocommerce-checkout table.woocommerce-checkout-review-order-table td.product-name{font-weight:600;color:#3A2438;padding-right:12px !important;}
.woocommerce-checkout table.woocommerce-checkout-review-order-table dl.variation{font-weight:400;font-size:13px;color:#5C6B47;margin:4px 0 0;}
.woocommerce-checkout table.woocommerce-checkout-review-order-table dl.variation p{margin:0;}
.woocommerce-checkout table.woocommerce-checkout-review-order-table tr.order-total th,
.woocommerce-checkout table.woocommerce-checkout-review-order-table tr.order-total td{font-weight:700;font-size:18px;color:#3A2438;}
.woocommerce-checkout .bookacti-cart-item-activity .wcz-cart-cats,
.woocommerce-checkout .wcz-cart-cats{display:none;}

/* Item meta (Event: …) same size in all tables */
.woocommerce dl.variation dd, .woocommerce dl.variation dd p, .woocommerce dl.variation dt{font-size:13px !important;line-height:1.5;margin:0;}
.woocommerce-cart td.product-name dl.variation dd, .woocommerce-cart td.product-name dl.variation dd p{font-size:14px !important;}

/* Payment */
.woocommerce-checkout #payment{background:transparent !important;border-radius:0;padding:0;}
.woocommerce-checkout #payment ul.payment_methods{padding:0 0 12px !important;margin:0 !important;border-bottom:1px solid #E6DECB !important;list-style:none;}
.woocommerce-checkout #payment ul.payment_methods li{font-weight:600;color:#3A2438;font-size:15px;}
.woocommerce-checkout #payment ul.payment_methods li input[type=radio]{accent-color:#A6552E;margin-right:6px;}
.woocommerce-checkout #payment div.payment_box{background:#FFFDF8 !important;color:#241820 !important;border:1px solid #E6DECB;border-radius:4px;font-weight:400;font-size:14px;padding:12px 14px !important;margin:10px 0 0 !important;}
.woocommerce-checkout #payment div.payment_box::before{display:none !important;}
.woocommerce-checkout #payment div.payment_box p{margin:0;}
.woocommerce-checkout #payment .place-order{padding:14px 0 0 !important;margin:0 !important;}
.woocommerce-checkout .woocommerce-privacy-policy-text p{font-size:13px;line-height:1.5;color:#5C6B47;}
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .form-row{margin:10px 0 16px !important;}
.woocommerce-checkout .woocommerce-terms-and-conditions-checkbox-text{font-size:14px;font-weight:400;color:#241820;}
.woocommerce-checkout .form-row label.checkbox{display:flex !important;align-items:flex-start;gap:8px;font-weight:400;}
.woocommerce-checkout .form-row label.checkbox input[type=checkbox]{position:static !important;margin:2px 0 0 !important;flex:0 0 auto;}
.woocommerce-checkout #place_order{width:100%;float:none !important;font-size:15px !important;padding:15px 20px !important;}

@media (max-width:991px){
  .woocommerce-checkout #order_review_heading{margin-top:12px !important;}
}
@media (max-width:767px){
  .woocommerce-checkout .woocommerce-billing-fields,
  .woocommerce-checkout .woocommerce-additional-fields{padding:18px 16px 4px;}
  .woocommerce-checkout .form-row-first,.woocommerce-checkout .form-row-last{width:100% !important;float:none;margin-right:0 !important;}
  .woocommerce-checkout #order_review{padding:18px 16px;}
}

/* ---------- 5. ORDER RECEIVED (thank-you) ---------- */
.woocommerce-order-received .woocommerce-order{max-width:820px;}
.woocommerce-order-received p.woocommerce-thankyou-order-received{
  background:#FBF8F1;border-left:4px solid #B8862E;padding:22px 26px;border-radius:0 4px 4px 0;
  font-family:'Playfair Display',serif;font-size:21px;line-height:1.45;color:#3A2438;margin:0 0 28px;}
.woocommerce-order-received ul.woocommerce-order-overview{display:flex;flex-wrap:wrap;gap:0;list-style:none;margin:0 0 32px;padding:0;background:#FFFDF8;border:1px solid #E6DECB;border-radius:8px;}
.woocommerce-order-received ul.woocommerce-order-overview li{flex:1 1 150px;margin:0;padding:14px 18px;border:none;border-right:1px solid #E6DECB;font-size:12px;letter-spacing:1px;text-transform:uppercase;color:#5C6B47;}
.woocommerce-order-received ul.woocommerce-order-overview li:last-child{border-right:none;}
.woocommerce-order-received ul.woocommerce-order-overview li strong{display:block;margin-top:4px;font-size:15px;letter-spacing:0;text-transform:none;color:#241820;}
.woocommerce-order-received .woocommerce-order > p{font-size:15px;}
.woocommerce-order-received .woocommerce-order-details,
.woocommerce-order-received .woocommerce-customer-details{background:#FFFDF8;border:1px solid #E6DECB;border-radius:8px;padding:24px 28px;margin:0 0 24px;}
.woocommerce-order-received .woocommerce-order-details h2,
.woocommerce-order-received .woocommerce-customer-details h2,
.woocommerce-order-received .bookacti-booking-list h2{font-family:'Playfair Display',serif;font-weight:600;font-size:22px;color:#3A2438;text-transform:none;letter-spacing:0;}
.woocommerce-order-received table.order_details{width:100%;background:transparent !important;border:none !important;}
.woocommerce-order-received table.order_details th,
.woocommerce-order-received table.order_details td{background:transparent !important;border:none !important;border-top:1px solid #E6DECB !important;padding:12px 0 !important;font-size:15px;color:#241820;}
.woocommerce-order-received table.order_details thead th{border-top:none !important;font-size:12px;letter-spacing:1.5px;text-transform:uppercase;color:#5C6B47;}
.woocommerce-order-received table.order_details td:last-child,.woocommerce-order-received table.order_details th:last-child{text-align:right;}
.woocommerce-order-received table.order_details tfoot tr:last-child th,
.woocommerce-order-received table.order_details tfoot tr:last-child td{font-weight:700;font-size:17px;color:#3A2438;}
.woocommerce-order-received .woocommerce-customer-details address{border:none !important;padding:0 !important;font-style:normal;line-height:1.7;color:#241820;}
.woocommerce-order-received .wc-item-meta{list-style:none;padding:0;margin:4px 0 0;font-size:13px;color:#5C6B47;}
.woocommerce-order-received .wc-item-meta p{display:inline;margin:0;}
@media (max-width:767px){
  .woocommerce-order-received ul.woocommerce-order-overview li{flex-basis:50%;border-right:none;border-bottom:1px solid #E6DECB;}
  .woocommerce-order-received .woocommerce-order-details,
  .woocommerce-order-received .woocommerce-customer-details{padding:18px 16px;}
}

/* ---------- 6. HEADER CART COUNT BADGE (needs the PHP snippet) ---------- */
.bb-cart-count{
  display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;margin-left:4px;
  border-radius:9px;background:#A6552E;color:#F5EFE3 !important;font-family:'Lato',sans-serif;font-size:11px;font-weight:700;
  line-height:1;vertical-align:top;position:relative;top:-6px;}
.bb-cart-count.is-empty{display:none;}

  a:has(> i.fa-cart-shopping){position:relative;}
  a:has(> i.fa-cart-shopping) .bb-cart-count{position:absolute;top:calc(50% - 20px);right:-10px;margin:0;}

.single-product .a3dg-image-wrapper{border:none !important;background:transparent !important;border-radius:8px;overflow:hidden;height:auto !important;aspect-ratio:3/2;}
/* Every photo fills the same 3:2 frame (cropped, never letterboxed) */
.single-product .a3dg-image{top:0 !important;left:0 !important;width:100% !important;height:100% !important;}
.single-product .a3dg-image img{width:100% !important;height:100% !important;object-fit:cover;}
.single-product .a3dg-image-wrapper .a3dg-image-description{display:none !important;}
.single-product .a3dg-nav{margin-top:12px;}
.single-product .a3dg-back,.single-product .a3dg-forward{background-color:transparent !important;border:none !important;}
.single-product div.product > .row:first-child{margin-bottom:48px !important;}

/* Booking card spacing: calendar → Guests/Book = 16px, same as title → calendar */
.single-product .bookacti-wc-fullwidth-cart-form .bookacti-booking-system,
.single-product .bookacti-wc-fullwidth-cart-form .bookacti-form-field-container{margin-bottom:0 !important;}
.single-product .bookacti-tooltips-container{margin-top:0 !important;}
.single-product form.cart .quantity{margin-top:16px !important;}
.single-product form.cart .single_add_to_cart_button{margin-top:16px !important;}