/* TT Booking Card Widget */

.ttbc-card{overflow:hidden;border:1px solid var(--tt-border, rgba(196,189,178,.4));box-shadow:var(--tt-shadow-md, 0 4px 12px rgba(26,26,24,.06))}

/* Header */
.ttbc-header{padding:1.25rem 1.375rem 1.125rem}
.ttbc-eyebrow{font-size:var(--tt-fs-xs, 0.8125rem);font-weight:500;letter-spacing:.14em;text-transform:uppercase;margin-bottom:0.375rem}
.ttbc-title{font-family:var(--tt-font-heading, 'Cabin', sans-serif);font-size:var(--tt-fs-lg, 1.25rem);font-weight:600;margin-bottom:0.875rem}
.ttbc-price-row{display:flex;align-items:baseline;gap:0.375rem;margin-bottom:0.25rem}
.ttbc-price-amount{font-family:var(--tt-font-heading, 'Cabin', sans-serif);font-size:var(--tt-fs-xl, 1.5625rem);font-weight:700}
.ttbc-price-label{font-size:var(--tt-fs-xs, 0.8125rem)}
.ttbc-price-note{font-size:var(--tt-fs-xs, 0.8125rem);opacity:0.7}

/* Body */
.ttbc-body{padding:1.25rem 1.375rem}

/* Options */
.ttbc-opt{display:flex;justify-content:space-between;align-items:center;padding:0.75rem 0;border-bottom:1px solid var(--tt-border, rgba(196,189,178,.35));cursor:pointer;transition:background .15s}
.ttbc-opt:last-of-type{border-bottom:none}
.ttbc-opt-left{display:flex;align-items:center}
.ttbc-opt-name{font-size:var(--tt-fs-xs, 0.8125rem);font-weight:400}
.ttbc-opt-price{font-size:var(--tt-fs-sm, 0.875rem);font-weight:600;color:var(--tt-teal, #2a4a52)}

/* Radio */
.ttbc-radio{width:1rem;height:1rem;border-radius:50%;border:1.5px solid #c4bdb2;margin-right:0.625rem;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;transition:border-color .15s,background .15s}
.ttbc-radio.selected{box-shadow:inset 0 0 0 3px #fff}

/* Buttons */
.ttbc-btn-phone{width:100%;display:flex;align-items:center;justify-content:center;gap:0.5625rem;font-size:var(--tt-fs-sm, 0.875rem);font-weight:700;padding:0.875rem;border:none;cursor:pointer;margin-top:1rem;transition:background .2s;text-decoration:none;font-family:inherit;border-radius:var(--tt-radius-md, 8px);background:var(--tt-gold, #b8843a);color:var(--tt-white, #fff);text-transform:uppercase;letter-spacing:0.04em}
.ttbc-btn-phone:hover{background:var(--tt-gold-hover, #d4a55a)}
.ttbc-btn-online{width:100%;display:flex;align-items:center;justify-content:center;gap:0.5625rem;background:transparent;font-size:var(--tt-fs-xs, 0.8125rem);font-weight:600;padding:0.6875rem;border:2px solid var(--tt-gold, #b8843a);color:var(--tt-gold, #b8843a);cursor:pointer;margin-top:0.5rem;transition:all .2s;font-family:inherit;border-radius:var(--tt-radius-md, 8px);text-transform:uppercase;letter-spacing:0.04em}
.ttbc-btn-online:hover{background:var(--tt-gold, #b8843a);color:var(--tt-white, #fff)}

/* Footer note */
.ttbc-note{font-size:var(--tt-fs-xs, 0.8125rem);font-weight:300;text-align:center;margin-top:0.75rem;line-height:1.5;color:var(--tt-text-muted, #7a7265)}

/* Trust block */
.ttbc-trust{border:1px solid var(--tt-border, rgba(196,189,178,.4));border-radius:var(--tt-radius-md, 8px);padding:1rem 1.125rem}
.ttbc-trust-item{display:flex;align-items:flex-start;gap:0.625rem;padding:0.5rem 0;border-bottom:1px solid var(--tt-border, rgba(196,189,178,.3))}
.ttbc-trust-item:last-child{border-bottom:none}
.ttbc-trust-icon{font-size:var(--tt-fs-sm, 0.875rem);margin-top:1px;flex-shrink:0}
.ttbc-trust-text{font-size:var(--tt-fs-xs, 0.8125rem);font-weight:300;line-height:1.5;color:var(--tt-text-muted, #7a7265)}
.ttbc-trust-text strong{font-weight:600;color:var(--tt-text, #1a1a18)}
