.ccm-btt{clear:both;width:100%;margin:16px 0 22px;color:#304437}.ccm-btt *{box-sizing:border-box}.ccm-btt [hidden]{display:none!important}.btt-tabs{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:16px}.ccm-btt .btt-tabs button{min-height:44px;padding:9px 13px;border:1px solid #b9cbbb;border-radius:24px;background:#fff;color:#10543e;font:600 13px/1.3 Arial,sans-serif;margin:0;text-transform:none}.ccm-btt .btt-tabs button[aria-pressed=true]{background:#10543e;color:#fff}.btt-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.btt-tile{display:flex;flex-direction:column;width:100%;min-width:0;background:#fff4e5;border:1px solid #dcd3c0;border-radius:12px;padding:14px}.btt-tile.btt-is-selected{border:2px solid #10543e;padding:13px;background:#e6f1e7}.btt-art{display:flex;justify-content:center;align-items:center;background:#ffffff99;border-radius:8px;min-height:75px;margin:0 0 12px;color:#0b5d3b}.btt-art svg{width:47px;height:47px}.btt-title{display:block;font:700 20px/1.2 Georgia,serif;color:#164b35;margin:0 0 9px}.btt-inclusions{padding:0 0 0 16px!important;margin:0 0 13px!important;font:400 13px/1.5 Arial,sans-serif;color:#4d614f}.btt-inclusions li{margin:3px 0}.btt-native-price{font:700 18px/1.4 Arial,sans-serif;color:#10543e;margin-top:auto;padding-top:10px}.btt-description,.btt-note,.btt-bonus{font:400 13px/1.5 Arial,sans-serif;margin:8px 0}.btt-bonus{background:#f3efd9;padding:8px;border-radius:6px}.btt-stepper{display:flex;border:1px solid #10543e;border-radius:8px;overflow:hidden;margin-top:12px}.ccm-btt .btt-stepper button{flex:0 0 44px;min-width:44px;min-height:44px;border:0;border-radius:0;margin:0;padding:0;background:#10543e;color:#fff;font:400 24px/1 Arial,sans-serif}.ccm-btt .btt-stepper button:disabled{background:#a5beb0;cursor:default}.btt-stepper output{display:grid;place-items:center;flex:1;background:#fff;color:#243e2c;font:600 18px Arial,sans-serif}.btt-selected{min-height:18px;margin-top:6px;color:#10543e;font:400 12px/1.5 Arial,sans-serif}.btt-badge{display:inline-flex;align-items:center;gap:5px;align-self:flex-start;padding:5px 8px;background:#bd551e;color:#fff;font:700 10px/1.3 Arial,sans-serif;border-radius:16px;margin-bottom:8px}.btt-badge svg{width:13px;height:13px}.btt-recommended,.btt-custom{background:#10543e}.btt-best_value{background:#d5ad4e;color:#173c2b}.btt-new{background:#766098}.btt-bundle-link{display:block;background:#10543e;color:#fff!important;padding:12px;border-radius:8px;text-align:center;text-decoration:none!important;margin-top:10px;font:600 14px/1.4 Arial,sans-serif;min-height:44px}.btt-status{padding:10px 0;font:600 14px Arial,sans-serif}.ccm-btt button:focus-visible,.ccm-btt a:focus-visible{outline:3px solid #b95216;outline-offset:3px}@media(max-width:767px){.btt-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.btt-title{font-size:18px}.btt-tile{padding:12px}.btt-tile.btt-is-selected{padding:11px}}@media(max-width:350px){.btt-grid{grid-template-columns:1fr}}

/* Original labels can be plain text nodes; JS wraps all original nodes. */
.ccm-btt .btt-legacy-fields{display:none!important}

/* Isolate native source rows from the presentation grid: other booking scripts may refresh those rows. */
#wc-bookings-booking-form .btt-source-row,.wc-bookings-booking-form .btt-source-row{display:none!important}
.ccm-btt .btt-grid>.btt-tile.btt-filtered-out,.ccm-btt .btt-grid>.btt-tile[hidden]{display:none!important}
.ccm-btt .btt-grid>.btt-tile{height:100%}

/* Dedicated presentation classes must never inherit native person-row hiding rules. */
body p.btt-source-row,body .btt-source-row{display:none!important}
.ccm-btt .btt-grid>.btt-display-row.btt-filtered-out,.ccm-btt .btt-grid>.btt-display-row[hidden]{display:none!important}

html body #wc-bookings-booking-form p.btt-source-row,html body .wc-bookings-booking-form p.btt-source-row,html body form.cart p.btt-source-row{display:none!important}

.btt-visit-summary{box-sizing:border-box;clear:both;margin:18px 0;padding:20px;border:1px solid #cbdacb;border-top:4px solid #10543e;border-radius:12px;background:#f2f6ed;color:#304437;text-align:left}.btt-visit-summary h3{font:700 23px/1.25 Georgia,serif;color:#10543e;margin:0 0 10px}.btt-visit-summary p{margin:6px 0;font:400 14px/1.5 Arial,sans-serif}.btt-summary-session{font-weight:700!important}.btt-summary-ticket{border-top:1px solid #d5dfcf;padding:12px 0}.btt-summary-ticket strong{display:block;font:700 16px/1.4 Arial,sans-serif;color:#164b35}.btt-summary-ticket span{display:block;margin-top:5px;font:400 13px/1.5 Arial,sans-serif;color:#53634e}.btt-summary-total{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:10px;border-top:1px solid #cbd7c5;margin-top:8px;padding-top:14px;font:700 17px/1.4 Arial,sans-serif;color:#10543e}.btt-summary-footnote{font-size:12px!important;color:#65715e}.wc-bookings-booking-cost.btt-cost-summarised{display:none!important}

/* Text-led tickets: no large decorative artwork, consistent bundle sections. */
.ccm-btt .btt-art{display:none!important}.ccm-btt .btt-title{font:700 25px/1.2 Georgia,serif;text-align:left;margin:3px 0 15px;overflow-wrap:normal;word-break:normal}.ccm-btt .btt-bundle-tile{justify-content:flex-start;gap:0;text-align:left}.ccm-btt .btt-bundle-tile .btt-title{min-height:60px;margin-bottom:10px}.ccm-btt .btt-bundle-price{display:flex;flex-direction:column;gap:3px;margin:0 0 15px;padding:0;color:#10543e}.ccm-btt .btt-bundle-price strong{font:700 26px/1.2 Arial,sans-serif}.ccm-btt .btt-bundle-price span{font:400 13px/1.4 Arial,sans-serif}.ccm-btt .btt-bundle-tile .btt-inclusions{margin-bottom:15px!important}.ccm-btt .btt-bundle-tile .btt-bonus{margin-top:auto;margin-bottom:12px;font-size:12px;text-align:left}.ccm-btt .btt-bundle-link{margin-top:10px;padding:12px 9px;font-size:14px;line-height:1.4;white-space:normal;text-align:center}.ccm-btt .btt-tile{padding:16px}.ccm-btt .btt-tile.btt-is-selected{padding:15px}@media(max-width:767px){.ccm-btt .btt-title{font-size:22px}.ccm-btt .btt-tile{padding:13px}.ccm-btt .btt-tile.btt-is-selected{padding:12px}.ccm-btt .btt-bundle-tile .btt-title{min-height:54px}.ccm-btt .btt-bundle-price strong{font-size:24px}}

.ccm-btt .btt-switch-heading{grid-column:1/-1;margin:8px 0 14px;text-align:left}.ccm-btt .btt-switch-heading>strong{font:700 20px/1.3 Georgia,serif;color:#10543e}.ccm-btt .btt-switch-heading .btt-note{margin:7px 0}.ccm-btt .btt-switch-link{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:7px;min-height:130px;height:100%;margin:0;padding:15px!important;text-align:left;background:#edf3e7;color:#10543e!important;border:1px solid #bccfba}.ccm-btt .btt-switch-link strong{font:700 19px/1.25 Georgia,serif}.ccm-btt .btt-switch-link span{font-size:13px;font-weight:400}.ccm-btt .btt-switch-link small{margin-top:auto;padding-top:8px;font-size:12px;font-weight:700;color:#914213}.ccm-btt .btt-bundles{align-items:stretch;grid-auto-rows:auto}

.ccm-btt.btt-switch-section{margin:22px 0 28px}.btt-switch-section .btt-switch-title{font:700 21px/1.3 Georgia,serif;color:#10543e;margin:0 0 14px;text-align:left}

/* 1.3.0: compact one-hour booking list; 30-minute tiles retain their layout. */
.ccm-btt.btt-list-view>.btt-grid:not(.btt-bundles){display:flex;flex-direction:column;gap:10px}
.ccm-btt.btt-list-view .btt-display-row{--btt-accent:#276849;--btt-tint:#e6f2e8;display:grid;grid-template-columns:minmax(0,1fr) 140px;align-items:center;gap:14px;padding:16px;border:1px solid #dce5da;border-left:4px solid var(--btt-accent);border-radius:10px;background:#fbfdf9;height:auto}
.ccm-btt.btt-list-view .btt-display-row[data-duration="90"]{--btt-accent:#22649b;--btt-tint:#e4effc;background:#fafcff}
.ccm-btt.btt-list-view .btt-display-row[data-duration="120"]{--btt-accent:#7851a3;--btt-tint:#f0e6fa;background:#fdfaff}
.ccm-btt.btt-list-view .btt-display-row[data-duration="180"]{--btt-accent:#a75a1f;--btt-tint:#ffecd9;background:#fffaf4}
.ccm-btt.btt-list-view .btt-display-row.btt-is-selected{background:var(--btt-tint);border:2px solid var(--btt-accent);border-left-width:5px;padding:15px}
.btt-ticket-details,.btt-ticket-buy{min-width:0}.ccm-btt.btt-list-view .btt-ticket-heading{display:flex;align-items:center;gap:9px;margin-bottom:9px}
.ccm-btt.btt-list-view .btt-title{font:700 17px/1.3 Arial,sans-serif;margin:0;overflow-wrap:anywhere}
.ccm-btt.btt-list-view .btt-ticket-icon{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:8px;background:var(--btt-tint);color:var(--btt-accent)}
.btt-ticket-icon svg{display:block;width:22px;height:22px}
.ccm-btt.btt-list-view .btt-duration{display:inline-flex;align-items:center;gap:7px;background:var(--btt-tint);border:1px solid var(--btt-accent);color:var(--btt-accent);font:800 13px/1.2 Arial,sans-serif;letter-spacing:.5px;border-radius:7px;padding:7px 10px;margin-bottom:9px}
.btt-duration svg{display:block;width:18px;height:18px}.btt-duration>span{display:inline-flex}
.ccm-btt.btt-list-view .btt-is-selected .btt-duration{background:#fff}
.ccm-btt.btt-list-view .btt-display-row .btt-inclusions{list-style:none;padding:0!important;margin:0!important;font-size:12px;line-height:1.5}
.ccm-btt.btt-list-view .btt-display-row .btt-inclusions li{display:inline;margin:0}.ccm-btt.btt-list-view .btt-display-row .btt-inclusions li+li:before{content:' · ';color:#71816e}
.ccm-btt.btt-list-view .btt-native-price{font-size:20px;padding:0;margin:0 0 8px;text-align:right;line-height:1.35;overflow-wrap:anywhere}
.ccm-btt.btt-list-view .btt-stepper{margin:0 0 0 auto;width:132px}.ccm-btt.btt-list-view .btt-stepper output{min-width:40px;font-size:16px}
.ccm-btt.btt-list-view .btt-selected{display:block;margin:5px 0 0;min-height:0;text-align:right;font-size:11px}
.ccm-btt.btt-list-view .btt-selected:empty{display:none}.ccm-btt.btt-list-view .btt-description{font-size:12px;margin:0}
.ccm-btt.btt-list-view .btt-badge{margin:0 0 8px;font-size:10px}.ccm-btt.btt-list-view .btt-note,.ccm-btt.btt-list-view .btt-bonus{font-size:12px}
.ccm-btt.btt-list-view .btt-tabs button[data-category="treats"]{background:#fff6e7;border-color:#dbb87d;color:#785019}.ccm-btt.btt-list-view .btt-tabs button[data-category="longer"]{background:#f4edfb;border-color:#c6b1de;color:#6d4991}.ccm-btt.btt-list-view .btt-tabs button[data-category="souvenirs"]{background:#fff0ed;border-color:#e6b5ac;color:#91483e}.ccm-btt.btt-list-view .btt-tabs button[data-category="bundles"]{background:#eaf6fa;border-color:#a7cbd5;color:#306577}.ccm-btt.btt-list-view .btt-tabs button[aria-pressed=true]{background:#10543e;color:#fff;border-color:#10543e}
@media(max-width:767px){.ccm-btt.btt-list-view .btt-display-row{grid-template-columns:minmax(0,1fr) 132px;gap:9px;padding:13px 10px}.ccm-btt.btt-list-view .btt-display-row.btt-is-selected{padding:12px 9px}.ccm-btt.btt-list-view .btt-title{font-size:15px}.ccm-btt.btt-list-view .btt-duration{font-size:12px;letter-spacing:.2px;padding:6px 8px}.ccm-btt.btt-list-view .btt-native-price{font-size:18px}.ccm-btt.btt-list-view .btt-ticket-icon{width:25px;height:25px;flex-basis:25px}.btt-ticket-icon svg{width:19px;height:19px}.ccm-btt.btt-list-view .btt-display-row .btt-inclusions{font-size:11px}}
@media(max-width:360px){.ccm-btt.btt-list-view .btt-display-row{grid-template-columns:minmax(0,1fr)}.ccm-btt.btt-list-view .btt-ticket-buy{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.ccm-btt.btt-list-view .btt-native-price{margin:0;text-align:left}.ccm-btt.btt-list-view .btt-selected{width:100%}}

/* 1.3.1: inclusions use the whole row, with stable left-aligned lines. */
.ccm-btt.btt-list-view .btt-display-row{row-gap:10px;text-align:left}
.ccm-btt.btt-list-view .btt-display-row>.btt-inclusions{grid-column:1/-1;display:grid;grid-template-columns:1fr;gap:5px;padding:11px 0 0!important;margin:0!important;border-top:1px solid #dce5da;text-align:left!important;list-style:none!important;width:100%;font:400 13px/1.45 Arial,sans-serif}
.ccm-btt.btt-list-view .btt-display-row>.btt-inclusions li{display:flex;align-items:baseline;gap:8px;margin:0!important;padding:0!important;text-align:left!important;line-height:1.45}
.ccm-btt.btt-list-view .btt-display-row>.btt-inclusions li:before{content:'✓';flex:0 0 13px;color:var(--btt-accent);font-weight:700}
.ccm-btt.btt-list-view .btt-display-row>.btt-note,.ccm-btt.btt-list-view .btt-display-row>.btt-bonus{grid-column:1/-1;text-align:left;margin:0}
.ccm-btt.btt-list-view .btt-display-row .btt-ticket-details{text-align:left}
.ccm-btt.btt-list-view .btt-display-row .btt-duration{margin-bottom:0}
@media(max-width:767px){.ccm-btt.btt-list-view .btt-display-row>.btt-inclusions{font-size:12px;gap:5px}}
.ccm-btt.btt-list-view .btt-display-row>.btt-inclusions li+li:before{content:'✓';color:var(--btt-accent)}

/* 1.3.2: quiet duration above the title; badge above the price. */
.ccm-btt.btt-list-view .btt-display-row{align-items:start}
.ccm-btt.btt-list-view .btt-display-row .btt-duration{font:700 11px/1.3 Arial,sans-serif;letter-spacing:.35px;border:0;padding:4px 7px;margin:0 0 9px;gap:5px;border-radius:5px}
.ccm-btt.btt-list-view .btt-display-row .btt-duration svg{width:14px;height:14px}
.ccm-btt.btt-list-view .btt-display-row .btt-ticket-heading{margin:0}
.ccm-btt.btt-list-view .btt-display-row .btt-ticket-buy{display:flex;flex-direction:column;align-items:flex-end;gap:0}
.ccm-btt.btt-list-view .btt-display-row .btt-ticket-buy .btt-badge{align-self:flex-end;margin:0 0 9px;font-size:10px;padding:4px 7px;max-width:100%;white-space:normal;text-align:right}
.ccm-btt.btt-list-view .btt-display-row>.btt-inclusions{color:#344c3e;font:400 14px/1.5 Arial,sans-serif;gap:6px;padding-top:12px!important}
.ccm-btt.btt-list-view .btt-display-row>.btt-inclusions li{color:#344c3e;font-size:14px;line-height:1.5}
@media(max-width:360px){.ccm-btt.btt-list-view .btt-display-row{grid-template-columns:minmax(0,1fr) 116px}.ccm-btt.btt-list-view .btt-display-row .btt-stepper{width:114px}.ccm-btt.btt-list-view .btt-display-row .btt-stepper button{flex-basis:38px;min-width:38px}.ccm-btt.btt-list-view .btt-display-row .btt-stepper output{min-width:36px}.ccm-btt.btt-list-view .btt-display-row .btt-native-price{font-size:16px;text-align:right}.ccm-btt.btt-list-view .btt-display-row .btt-selected{width:auto}}

/* 1.3.3: 30-minute tickets share the list layout, with a distinct teal duration. */
.ccm-btt.btt-list-view .btt-display-row[data-duration="30"]{--btt-accent:#236f79;--btt-tint:#e1f1f3;background:#f8fcfd}
.ccm-btt.btt-list-view .btt-display-row[data-duration="30"].btt-is-selected{background:var(--btt-tint)}
