/* Scoped to the shared component; inherits Studio Timeless' existing palette. */
.tbc{--tbc-blue:#5f96e8;--tbc-ink:#f5f5f7;--tbc-muted:#b9bac1;--tbc-card:#1d1d1f;color:var(--tbc-ink);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Helvetica Neue",Arial,sans-serif;max-width:1180px;margin:0 auto;padding:64px 24px;line-height:1.5;text-align:left;font-size:16px;scroll-margin-top:100px}
.tbc *{box-sizing:border-box;min-width:0}.tbc [hidden]{display:none!important}.tbc :is(h2,h3,h4,h5,p,ul,ol,dl){margin:0;padding:0;color:inherit;letter-spacing:normal;text-align:left}.tbc :is(h2,h3,h4,h5){font-family:inherit;font-weight:650;text-transform:none;line-height:1.14}.tbc h2{font-size:clamp(30px,3.6vw,46px);letter-spacing:-.035em;max-width:820px}.tbc h3{font-size:22px}.tbc h4{font-size:25px}.tbc h5{font-size:19px}.tbc p{font-size:16px;line-height:1.5}.tbc a{color:var(--tbc-blue)}.tbc-heading{padding:0;background:none}.tbc-heading>p:last-child{color:var(--tbc-muted);margin-top:16px;font-size:18px;max-width:690px}.tbc .tbc-kicker{color:var(--tbc-blue);font-size:13px;font-weight:650;letter-spacing:.055em;margin-bottom:12px}.tbc-kicker span{color:var(--tbc-muted);font-weight:400;margin-left:8px;letter-spacing:0}.tbc-audiences{display:flex;gap:4px;padding:5px;background:var(--tbc-card);border:1px solid #424248;border-radius:14px;width:max-content;max-width:100%;margin:30px 0 24px}.tbc-audiences a{display:flex;align-items:center;justify-content:center;padding:11px 23px;min-height:46px;color:var(--tbc-ink);font-size:15px;font-weight:600;text-decoration:none;border-radius:9px}.tbc-audiences [aria-selected=true]{background:var(--tbc-ink);color:#141416}.tbc-panel{scroll-margin-top:110px}.tbc-panel>h3{font-size:17px;color:var(--tbc-muted);margin:0 0 18px}.tbc-panel+.tbc-panel{margin-top:48px}.tbc.is-enhanced .tbc-panel{margin-top:0}.tbc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.tbc-card{display:flex;flex-direction:column;gap:0;background:var(--tbc-card);border:1px solid #3a3a40;border-radius:24px;padding:26px;overflow-wrap:anywhere}.tbc-card-featured{border-color:var(--tbc-blue)}.tbc-card h4{font-size:32px;letter-spacing:-.025em}.tbc-card .tbc-kicker{margin-bottom:8px}.tbc .tbc-intro{color:var(--tbc-muted);min-height:72px;margin-top:14px}.tbc .tbc-price{margin:20px 0}.tbc-price strong{display:block;font-size:46px;letter-spacing:-.045em;line-height:1.15;font-weight:650;white-space:nowrap}.tbc-price span{display:block;color:var(--tbc-muted);font-size:13px;margin-top:6px}.tbc-select{margin-bottom:14px}.tbc-select label{display:block;font-size:13px;margin-bottom:7px;color:var(--tbc-muted)}.tbc select{width:100%;max-width:100%;min-height:48px;padding:10px 28px 10px 10px;border:1px solid #777780;border-radius:8px;background:#151517;color:var(--tbc-ink);font:inherit;font-size:14px;cursor:pointer;color-scheme:dark}.tbc .tbc-quota{font-size:16px;font-weight:600;margin:0 0 14px;min-height:24px}.tbc .tbc-benefits{padding-left:18px;font-size:14px;line-height:1.55;margin-bottom:20px}.tbc-benefits li+li{margin-top:9px}.tbc .tbc-logistics{font-size:13px;color:var(--tbc-muted);margin-top:auto;padding-top:14px;border-top:1px solid #414147;margin-bottom:18px}.tbc .tbc-cta{display:flex;align-items:center;justify-content:center;min-height:48px;padding:12px 14px;border-radius:999px;background:var(--tbc-blue);color:#091323;text-decoration:none;font-size:14px;font-weight:650;line-height:1.3;text-align:center;border:1px solid transparent;transition:background .14s}.tbc-cta:hover{background:#8bb3ed}.tbc-cta:active{background:#a4c3ef}.tbc :is(a,button,select,summary):focus-visible{outline:3px solid #f5f5f7;outline-offset:4px}.tbc a[aria-disabled=true]{opacity:.55;pointer-events:none}.tbc .tbc-help{margin:22px 0 36px;color:var(--tbc-muted);font-size:14px;max-width:790px}.tbc-included{border-top:1px solid #3a3a40;padding:28px 0}.tbc-included h4{font-size:21px;margin-bottom:16px}.tbc-included ul{display:flex;flex-wrap:wrap;gap:14px 28px;list-style:none;font-size:15px}.tbc-included li:before{content:'✓';color:var(--tbc-blue);margin-right:9px}.tbc-included p{max-width:780px;color:var(--tbc-muted)}.tbc-weekend{padding:30px;background:var(--tbc-card);border-radius:24px;margin:18px 0 30px}.tbc-weekend h4{margin-bottom:25px}.tbc-weekend ol{display:grid;grid-template-columns:repeat(3,1fr);list-style:none;gap:20px;margin-bottom:22px}.tbc-weekend li{border-top:2px solid var(--tbc-blue);padding-top:14px}.tbc-weekend li strong,.tbc-weekend li span{display:block}.tbc-weekend li span{font-size:14px;color:var(--tbc-muted);margin-top:5px}.tbc-weekend p{font-size:13px;color:var(--tbc-muted)}.tbc-delivery{margin:34px 0}.tbc-delivery h4{margin-bottom:22px}.tbc-split{display:grid;grid-template-columns:1fr 1fr;gap:32px}.tbc-split h5{margin-bottom:10px}.tbc-split p{font-size:15px;color:var(--tbc-muted)}.tbc-split p+p{margin-top:10px}.tbc-comparison{border-block:1px solid #414147;margin:30px 0}.tbc-comparison summary{padding:21px 4px;cursor:pointer;font-weight:600;font-size:17px;min-height:48px}.tbc-comparison .tbc-grid{padding:12px 0 25px}.tbc-comparison h4{font-size:21px;margin-bottom:14px}.tbc-comparison dl>div{padding:10px 0;border-bottom:1px solid #36363c}.tbc-comparison dt{font-size:14px;color:var(--tbc-muted)}.tbc-comparison dd{margin:4px 0 0;font-weight:600}.tbc-comparison p{font-size:14px;color:var(--tbc-muted);margin:12px 0 22px}.tbc-secondary{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:28px 0}.tbc-secondary article{padding:22px;border:1px solid #414147;border-radius:18px}.tbc-secondary h4{font-size:21px}.tbc-secondary p{margin:12px 0;color:var(--tbc-muted)}.tbc-secondary .tbc-cta{display:inline-flex;background:none;border-color:var(--tbc-blue);color:var(--tbc-blue)}.tbc-reassurance{margin-top:34px;padding-top:28px;border-top:1px solid #414147}.tbc-reassurance p{max-width:850px;margin:14px 0;color:var(--tbc-muted);font-size:15px}.tbc-phone,.tbc-text-link{display:inline-flex;align-items:center;min-height:44px;margin-right:26px;text-underline-offset:4px}.tbc-fallback{margin-top:20px;font-size:14px}.tbc-fallback ul{padding-left:18px}.tbc-fallback li{margin:10px 0}.tbc.is-enhanced .tbc-fallback{display:none}
@media(max-width:900px){.tbc{padding-inline:20px}.tbc-grid{gap:12px}.tbc-card{padding:20px}.tbc-card h4{font-size:27px}.tbc-price strong{font-size:39px}.tbc .tbc-intro{min-height:96px}}
@media(max-width:700px){.tbc{padding:40px 20px}.tbc-grid{grid-template-columns:1fr;gap:18px}.tbc-audiences{width:100%;margin-top:24px}.tbc-audiences a{flex:1;padding-inline:10px;font-size:14px}.tbc-card{padding:24px}.tbc .tbc-intro{min-height:0}.tbc .tbc-price{margin:18px 0}.tbc-price strong{font-size:44px}.tbc-card h4{font-size:32px}.tbc-kicker span{display:block;margin:4px 0 0}.tbc .tbc-logistics{margin-top:0}.tbc-included ul{display:grid;gap:14px}.tbc-weekend{padding:24px}.tbc-weekend ol{grid-template-columns:1fr;gap:18px}.tbc-weekend li{border-top:0;border-left:2px solid var(--tbc-blue);padding:0 0 0 15px}.tbc-split,.tbc-secondary{grid-template-columns:1fr;gap:24px}.tbc-comparison .tbc-grid{gap:24px}.tbc-reassurance h3{font-size:24px}}
@media(prefers-reduced-motion:reduce){.tbc *{transition:none!important;scroll-behavior:auto!important}}
/* Keep the chosen quota in the select, without repeating the same line below it. */
.tbc.is-enhanced .tbc-card[data-model] .tbc-quota{display:none}.tbc .tbc-intro{min-height:48px}.tbc .tbc-price{margin:16px 0}.tbc .tbc-benefits{margin-bottom:14px}.tbc .tbc-comparison{padding:0;background:transparent;border-radius:0}.tbc .tbc-card p:empty{display:none}
@media(max-width:900px) and (min-width:701px){.tbc .tbc-intro{min-height:96px}}
@media(max-width:700px){.tbc .tbc-intro{min-height:0}}
/* Existing .ap sections reset horizontal padding. Keep this module's own gutters. */
.ap section.tbc{padding-inline:24px!important;box-sizing:border-box!important}
@media(max-width:700px){.ap section.tbc{padding-inline:20px!important}.tbc select{font-size:13px}.tbc-card{padding:20px}}
/* Site-wide !important link colours must not erase labels on filled controls. */
#choisir-photobooth.tbc a.tbc-cta{color:#091323!important}
#choisir-photobooth.tbc .tbc-secondary a.tbc-cta{color:#5f96e8!important}
#choisir-photobooth.tbc .tbc-audiences a{color:#f5f5f7!important}
#choisir-photobooth.tbc .tbc-audiences a[aria-selected=true]{color:#141416!important}

/* Guest guidance uses only the confirmed catalogue thresholds. */
.tbc .tbc-recommendation{padding:24px;margin:24px 0 32px;border:1px solid #45454b;border-radius:20px;background:#141416}
.tbc .tbc-recommendation h4{margin:0 0 12px;font-size:24px}.tbc .tbc-recommendation ul{display:flex;flex-wrap:wrap;gap:12px 28px;padding:0;list-style:none}.tbc .tbc-recommendation label{display:block;margin:18px 0 8px}.tbc .tbc-recommendation input{box-sizing:border-box;width:180px;max-width:100%;min-height:48px;padding:10px 14px;background:#242428;color:#fff;border:1px solid #93939b;border-radius:8px;font:inherit}.tbc .tbc-recommendation input:focus-visible{outline:3px solid #5f96e8;outline-offset:3px}.tbc [data-guest-action]{display:inline-flex;min-height:44px;align-items:center}.tbc [data-guest-action][hidden]{display:none!important}.tbc .tbc-guests,.tbc .tbc-model{color:#b9bac1;font-size:16px}.tbc [data-guest-result]:empty{display:none}

/* Native .ap and Elementor rules use !important resets. Restore only this module. */
html body #choisir-photobooth.tbc{width:100%!important;max-width:1180px!important;margin:0 auto!important;padding:56px 24px!important}
html body #choisir-photobooth.tbc h2{font-size:clamp(30px,3.6vw,46px)!important;line-height:1.14!important;margin:0!important;letter-spacing:-.035em!important}
html body #choisir-photobooth.tbc .tbc-heading{padding:0!important;margin:0!important}
html body #choisir-photobooth.tbc .tbc-heading>p:last-child{margin:16px 0 0!important;font-size:18px!important;line-height:1.5!important}
html body #choisir-photobooth.tbc .tbc-audiences{margin:24px 0!important;padding:5px!important}
html body #choisir-photobooth.tbc .tbc-panel>h3{font-size:17px!important;margin:0 0 18px!important;color:#b9bac1!important}
html body #choisir-photobooth.tbc article.tbc-card{padding:26px!important}
html body #choisir-photobooth.tbc .tbc-card h4{font-size:32px!important;line-height:1.14!important;margin:0!important}
html body #choisir-photobooth.tbc .tbc-card .tbc-intro{font-size:16px!important;line-height:1.5!important;margin:14px 0 0!important}
html body #choisir-photobooth.tbc .tbc-price{margin:16px 0!important}
html body #choisir-photobooth.tbc .tbc-card .tbc-kicker{font-size:13px!important;margin:0 0 8px!important}
html body #choisir-photobooth.tbc .tbc-benefits{padding-left:18px!important;margin:0 0 14px!important}
html body #choisir-photobooth.tbc .tbc-benefits li{font-size:14px!important;line-height:1.55!important}
html body #choisir-photobooth.tbc .tbc-logistics{font-size:13px!important;line-height:1.5!important;padding-top:14px!important;margin:14px 0 18px!important}
html body #choisir-photobooth.tbc .tbc-card>.tbc-cta{margin-top:auto!important}
html body #choisir-photobooth.tbc .tbc-secondary article{padding:22px!important}
html body #choisir-photobooth.tbc .tbc-recommendation{padding:20px 24px!important;margin:20px 0 28px!important}
html body #choisir-photobooth.tbc .tbc-recommendation h4{font-size:23px!important;margin:0 0 8px!important}
html body #choisir-photobooth.tbc .tbc-recommendation p{font-size:15px!important;line-height:1.5!important;margin:8px 0!important}
html body #choisir-photobooth.tbc .tbc-recommendation .tbc-help{font-size:13px!important;margin:12px 0 0!important}
html body #choisir-photobooth.tbc .tbc-recommendation ul{margin:12px 0 0!important}
@media(min-width:701px){html body #choisir-photobooth.tbc [data-guest-controls]{display:flex;align-items:center;gap:12px;flex-wrap:wrap}html body #choisir-photobooth.tbc .tbc-recommendation label{margin:12px 0!important}}
@media(max-width:900px){html body #choisir-photobooth.tbc article.tbc-card{padding:20px!important}}
@media(max-width:700px){html body #choisir-photobooth.tbc{padding:40px 20px!important}html body #choisir-photobooth.tbc .tbc-recommendation{padding:20px!important}}
html body #choisir-photobooth.tbc .tbc-included{padding:28px 0!important}
html body #choisir-photobooth.tbc .tbc-included h4{margin:0 0 16px!important;font-size:21px!important}
html body #choisir-photobooth.tbc .tbc-weekend{padding:30px!important;margin:18px 0 30px!important}
html body #choisir-photobooth.tbc .tbc-weekend h4{margin:0 0 25px!important;font-size:25px!important}
html body #choisir-photobooth.tbc .tbc-weekend li{padding-top:14px!important}
html body #choisir-photobooth.tbc .tbc-weekend p{font-size:13px!important;line-height:1.5!important;margin:22px 0 0!important}
html body #choisir-photobooth.tbc .tbc-delivery{margin:34px 0!important}
html body #choisir-photobooth.tbc .tbc-delivery h4{margin:0 0 22px!important}
html body #choisir-photobooth.tbc .tbc-split p{font-size:15px!important;line-height:1.5!important;margin:10px 0 0!important}
html body #choisir-photobooth.tbc .tbc-comparison{margin:30px 0!important;padding:0!important}
html body #choisir-photobooth.tbc .tbc-reassurance{margin-top:34px!important;padding-top:28px!important}
html body #choisir-photobooth.tbc .tbc-reassurance p{font-size:15px!important;line-height:1.5!important;margin:14px 0!important}
html body #choisir-photobooth.tbc :is(.tbc-phone,.tbc-text-link){margin-right:26px!important}
@media(max-width:700px){html body #choisir-photobooth.tbc .tbc-weekend{padding:24px!important}html body #choisir-photobooth.tbc .tbc-weekend li{padding:0 0 0 15px!important}}
