.cbb-wrap{overflow:hidden}.cbb-section{max-width:1200px;margin:auto;padding:90px 24px}.cbb-kicker{color:#f8ca0e;font-size:.78rem;font-weight:1000;letter-spacing:.18em}.cbb-hero{min-height:710px;background:#111;color:#fff;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);align-items:center;padding:70px max(24px,calc((100vw - 1200px)/2));position:relative}.cbb-hero:after{content:"";position:absolute;width:500px;height:500px;border-radius:50%;background:#f8ca0e;right:-170px;top:-220px;opacity:.9}.cbb-hero-content{position:relative;z-index:2;max-width:710px}.cbb-hero h1,.cbb-section h2{font-size:clamp(2.6rem,7vw,6.8rem);line-height:.9;letter-spacing:-.065em;margin:.2em 0}.cbb-hero h1 em{color:#f4b83f;font-style:normal}.cbb-hero-content>p:not(.cbb-kicker){font-size:1.2rem;max-width:650px;color:#d0d0d0;margin:28px 0}.cbb-hero-art{width:420px;height:420px;border:5px solid #f4b83f;border-radius:50%;position:relative;transform:rotate(-7deg);display:grid;place-items:center;background:repeating-linear-gradient(45deg,#171717,#171717 12px,#202020 12px,#202020 24px);z-index:2}.cbb-hero-art span,.cbb-hero-art b,.cbb-hero-art i{position:absolute;font-size:4rem;font-weight:1000;font-style:normal}.cbb-hero-art span{top:80px;color:#fff}.cbb-hero-art b{font-size:6rem;color:#f8ca0e}.cbb-hero-art i{bottom:75px;color:#f4b83f}.cbb-strip{background:#f8ca0e;color:#fff;display:flex;justify-content:space-around;gap:30px;padding:18px;font-weight:1000;letter-spacing:.12em;transform:rotate(-1deg);width:102%;margin-left:-1%}.cbb-section h2{font-size:clamp(2.4rem,5vw,5rem);max-width:900px}.cbb-three{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:45px}.cbb-three article{background:#fff;padding:32px;border-radius:22px;box-shadow:0 12px 40px rgba(0,0,0,.08)}.cbb-three article>b{font-size:2rem;color:#f8ca0e}.cbb-three h3{font-size:1.35rem}.cbb-calendar-section{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.cbb-calendar{background:#fff;border-radius:22px;padding:28px;box-shadow:0 20px 60px rgba(0,0,0,.12)}.cbb-cal-head{display:flex;justify-content:space-between;align-items:center;font-size:1.2rem}.cbb-cal-head button{border:0;background:#111;color:#fff;border-radius:50%;width:38px;height:38px;cursor:pointer}.cbb-week,.cbb-days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.cbb-week{margin:18px 0 8px;color:#777;font-size:.7rem;text-align:center;font-weight:bold}.cbb-day{aspect-ratio:1;border-radius:50%;display:grid;place-items:center;font-size:.85rem}.cbb-day.available{background:#33271d}.cbb-day.busy{background:#f8ca0e;color:#fff;text-decoration:line-through}.cbb-day.past{color:#bbb;background:#f1f1f1}.cbb-legend{display:flex;gap:20px;margin-top:18px;font-size:.8rem}.cbb-legend i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:5px}.cbb-legend .free{background:#612b18}.cbb-legend .busy{background:#f8ca0e}.cbb-quote{background:#191919;color:#fff}.cbb-booking-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:32px;align-items:start}.cbb-form fieldset{border:1px solid #3b3b3b;border-radius:22px;margin:20px 0;padding:28px;background:#222}.cbb-form legend{font-size:1.25rem;font-weight:1000;padding:0 10px}.cbb-menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.cbb-menu-item{display:flex;justify-content:space-between;gap:12px;align-items:center;background:#303030;padding:15px;border-radius:12px}.cbb-menu-item small{display:block;color:#bbb}.cbb-menu-item input{width:65px;padding:10px;background:#fff;border:0;border-radius:7px}.cbb-check{display:flex;align-items:center;gap:9px;font-weight:bold;color:#f4b83f}.cbb-help{font-size:.85rem;color:#bbb}.cbb-field{display:grid;gap:6px}.cbb-field input,.cbb-fields input,.cbb-fields textarea{width:100%;border:1px solid #555;border-radius:9px;padding:12px;background:#fff;color:#111;font:inherit}.cbb-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}.cbb-fields label{display:grid;gap:5px}.cbb-fields .wide{grid-column:1/-1}.cbb-fields textarea{min-height:90px;resize:vertical}.cbb-availability{padding:12px;border-radius:9px;background:#343434}.cbb-availability.ok{background:#612b18;color:#ffffff}.cbb-availability.no{background:#612b18;color:#ffffff}.cbb-consent{display:flex;gap:10px;margin-top:18px}.cbb-hp{position:absolute!important;left:-9999px!important}.cbb-summary{position:sticky;top:100px;background:#fff;color:#111;border-radius:22px;padding:28px}.cbb-summary dl>div{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid #ddd}.cbb-summary dl>div:first-child{font-size:1.3rem;font-weight:900}.cbb-line{display:flex;justify-content:space-between;font-size:.9rem;margin:7px 0}.cbb-promise{background:#f4b83f;padding:18px;border-radius:12px;margin:20px 0}.cbb-promise p{margin:4px 0}.cbb-message{padding:14px;border-radius:9px}.cbb-message.success{background:#612b18}.cbb-message.error{background:#612b18}.cbb-faq{display:grid;grid-template-columns:1fr 1fr;gap:14px}.cbb-faq details{background:#fff;padding:22px;border-radius:14px}.cbb-faq summary{cursor:pointer;font-weight:900}.cbb-submit[disabled]{opacity:.5;cursor:wait}
@media(max-width:900px){.cbb-hero{grid-template-columns:1fr;min-height:auto;padding-top:100px}.cbb-hero-art{width:300px;height:300px;margin:50px auto}.cbb-hero-art span{font-size:2.7rem;top:55px}.cbb-hero-art b{font-size:4.3rem}.cbb-hero-art i{font-size:3rem;bottom:55px}.cbb-booking-layout{grid-template-columns:1fr}.cbb-summary{position:static}.cbb-calendar-section{grid-template-columns:1fr}.cbb-three{grid-template-columns:1fr}}
@media(max-width:620px){.cbb-section{padding:65px 18px}.cbb-strip{overflow:hidden;justify-content:flex-start;font-size:.72rem}.cbb-menu-grid,.cbb-fields,.cbb-faq{grid-template-columns:1fr}.cbb-fields .wide{grid-column:auto}.cbb-form fieldset{padding:20px 14px}.cbb-menu-item{font-size:.9rem}}

/* Version 1.1 brand refresh: logo colours only */
.cbb-wrap{--cbb-black:#090909;--cbb-charcoal:#15120f;--cbb-yellow:#f8ca0e;--cbb-brown:#612b18;--cbb-white:#fff;--cbb-tan:#d9c4a8;background:var(--cbb-black);color:var(--cbb-white);font-family:"Trebuchet MS","Avenir Next",Avenir,sans-serif}.cbb-wrap h1,.cbb-wrap h2,.cbb-wrap h3,.cbb-wrap legend,.cbb-wrap summary{font-family:Georgia,"Times New Roman",serif;font-weight:900}.cbb-kicker{color:var(--cbb-yellow)}.cbb-hero{min-height:760px;grid-template-columns:1fr;background:linear-gradient(90deg,rgba(0,0,0,.94) 0%,rgba(0,0,0,.74) 46%,rgba(0,0,0,.18) 100%),url("images/trailer-festival.jpg") center/cover no-repeat}.cbb-hero:after{background:var(--cbb-yellow);opacity:.13}.cbb-hero-content{max-width:730px}.cbb-hero-logo{width:230px;height:180px;object-fit:contain;margin-bottom:10px;filter:drop-shadow(0 8px 18px rgba(0,0,0,.5))}.cbb-hero h1 em{color:var(--cbb-yellow)}.cbb-hero-art{display:none}.cbb-strip{background:var(--cbb-yellow);color:var(--cbb-black)}.cbb-intro{background:var(--cbb-black)}.cbb-three article{background:var(--cbb-charcoal);color:var(--cbb-white);border:1px solid var(--cbb-brown);box-shadow:0 12px 40px rgba(0,0,0,.35)}.cbb-three article>b{color:var(--cbb-yellow)}.cbb-gallery{max-width:1400px;margin:0 auto 80px;padding:0 24px;display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:280px;gap:12px}.cbb-gallery figure{margin:0;overflow:hidden;border-radius:16px;background:var(--cbb-brown)}.cbb-gallery figure.wide{grid-column:span 2;grid-row:span 2}.cbb-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.cbb-gallery figure:hover img{transform:scale(1.035)}.cbb-calendar-section{background:var(--cbb-black)}.cbb-calendar{background:var(--cbb-charcoal);color:var(--cbb-white);border:1px solid var(--cbb-brown)}.cbb-cal-head button{background:var(--cbb-yellow);color:var(--cbb-black)}.cbb-day.available{background:#33271d;color:var(--cbb-white)}.cbb-day.busy{background:var(--cbb-yellow);color:var(--cbb-black);font-weight:bold}.cbb-day.past{color:#887b70;background:#211d19}.cbb-legend .free{background:var(--cbb-brown)}.cbb-legend .busy{background:var(--cbb-yellow)}.cbb-quote{background:linear-gradient(145deg,#090909,#1b120d);border-top:2px solid var(--cbb-yellow);border-bottom:2px solid var(--cbb-yellow)}.cbb-minimum{display:grid;grid-template-columns:240px 1fr;gap:30px;align-items:center;background:var(--cbb-yellow);color:var(--cbb-black);padding:24px 28px;border-radius:18px;margin:30px 0}.cbb-minimum strong{font-family:Georgia,"Times New Roman",serif;font-size:1.7rem}.cbb-minimum p{margin:0}.cbb-form fieldset{border-color:#52351f;background:#17130f}.cbb-menu-item{background:#2a211a;border:1px solid #4b3422}.cbb-check{color:var(--cbb-yellow)}.cbb-availability.ok{background:var(--cbb-brown);color:var(--cbb-white)}.cbb-availability.no{background:var(--cbb-yellow);color:var(--cbb-black)}.cbb-summary{background:var(--cbb-white);color:var(--cbb-black);border:3px solid var(--cbb-yellow)}.cbb-summary-logo{display:block;width:145px;height:105px;object-fit:contain;margin:-12px auto 5px}.cbb-summary .cbb-kicker{color:var(--cbb-brown)}.cbb-minimum-note{background:#f3e8d7;color:var(--cbb-brown);font-weight:bold;padding:11px 13px;border-radius:10px}.cbb-promise{background:var(--cbb-yellow)}.cbb-message.success{background:var(--cbb-brown);color:var(--cbb-white)}.cbb-message.error{background:var(--cbb-yellow);color:var(--cbb-black)}.cbb-action-photo{min-height:610px;background:linear-gradient(90deg,rgba(0,0,0,.92),rgba(0,0,0,.25)),url("images/trailer-team.jpg") center/cover no-repeat;display:flex;align-items:center}.cbb-action-photo>div{width:min(1200px,100%);margin:auto;padding:80px 24px}.cbb-action-photo h2{font-size:clamp(2.5rem,5vw,5.5rem);line-height:.95;max-width:760px;margin:.2em 0}.cbb-action-photo p:last-child{max-width:620px;font-size:1.1rem}.cbb-faq details{background:var(--cbb-charcoal);border:1px solid var(--cbb-brown);color:var(--cbb-white)}
@media(max-width:900px){.cbb-gallery{grid-template-columns:1fr 1fr;grid-auto-rows:240px}.cbb-gallery figure.wide{grid-column:1/-1;grid-row:auto}.cbb-minimum{grid-template-columns:1fr;gap:5px}.cbb-hero{background-position:62% center}.cbb-hero-logo{width:180px;height:140px}}
@media(max-width:620px){.cbb-gallery{grid-template-columns:1fr;grid-auto-rows:300px}.cbb-gallery figure.wide{grid-column:auto}.cbb-hero{background-position:66% center}.cbb-hero:before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.24)}.cbb-hero-content{position:relative;z-index:3}.cbb-action-photo{min-height:520px;background-position:62% center}}
.cbb-wrap h1,.cbb-wrap h2,.cbb-wrap h3,.cbb-wrap legend,.cbb-wrap summary,.cbb-kicker,.cbb-menu-item strong,.cbb-cal-head strong,.cbb-submit,.cbb-minimum strong,.cbb-promise strong{text-transform:uppercase}.cbb-menu-item small{text-transform:none}
.cbb-hero{min-height:590px;background-image:linear-gradient(90deg,rgba(0,0,0,.92) 0%,rgba(0,0,0,.64) 37%,rgba(0,0,0,.12) 66%,rgba(0,0,0,.05) 100%),url("images/trailer-crowd.jpg");background-position:center 34%;background-size:cover}.cbb-hero-content{max-width:650px}.cbb-hero h1{font-size:clamp(2.8rem,5vw,5.2rem);line-height:.9}.cbb-hero-logo{width:160px;height:115px;margin-bottom:0}.cbb-hero-content>p:not(.cbb-kicker){font-size:1.05rem;max-width:570px;margin:20px 0}.cbb-hero:after{width:320px;height:320px;right:-125px;top:-160px}
@media(max-width:900px){.cbb-hero{min-height:610px;background-position:56% center}.cbb-hero h1{font-size:clamp(2.7rem,10vw,4.8rem)}.cbb-hero-logo{width:145px;height:105px}}
@media(max-width:620px){.cbb-hero{min-height:570px;background-position:58% center;padding-top:65px}.cbb-hero h1{font-size:clamp(2.5rem,15vw,4rem)}.cbb-hero-content>p:not(.cbb-kicker){font-size:.98rem}}
.cbb-section{padding-top:58px;padding-bottom:58px}.cbb-three{margin-top:30px}.cbb-gallery{grid-auto-rows:230px;margin-bottom:48px}.cbb-minimum{margin:22px 0}.cbb-action-photo{min-height:480px}.cbb-action-photo>div{padding-top:58px;padding-bottom:58px}
@media(max-width:900px){.cbb-section{padding-top:50px;padding-bottom:50px}.cbb-gallery{grid-auto-rows:210px;margin-bottom:38px}.cbb-action-photo{min-height:430px}}
@media(max-width:620px){.cbb-section{padding-top:42px;padding-bottom:42px}.cbb-gallery{grid-auto-rows:250px;margin-bottom:30px}.cbb-action-photo{min-height:400px}.cbb-action-photo>div{padding-top:42px;padding-bottom:42px}}
