html.lezi-detail-open{overflow:hidden!important}
#lezi-activity-dialog{--lezi-detail-accent:#77B1DE;color:#181818;background:#fff;border:0;border-radius:22px;padding:0;width:min(1120px,calc(100% - 64px));max-width:none;max-height:calc(100dvh - 64px);overflow:auto;overscroll-behavior:contain;box-shadow:0 24px 90px #0004;font:16px/1.55 Arial,Helvetica,sans-serif;scrollbar-gutter:stable}
#lezi-activity-dialog::backdrop{background:#18181880}
#lezi-activity-dialog *{box-sizing:border-box}#lezi-activity-dialog [hidden]{display:none!important}
#lezi-activity-dialog a{color:#181818}#lezi-activity-dialog button,#lezi-activity-dialog input,#lezi-activity-dialog select,#lezi-activity-dialog textarea{font:inherit}
#lezi-activity-dialog h1,#lezi-activity-dialog h2,#lezi-activity-dialog h3{color:#181818;line-height:1.25;letter-spacing:-.025em}#lezi-activity-dialog p{margin:10px 0 18px}
.lezi-detail-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 26px;border-bottom:1px solid #D6D1CB;position:sticky;top:0;z-index:20;background:#fff}
.lezi-detail-label{background:var(--lezi-detail-accent);border-radius:30px;padding:5px 12px;font-size:13px}
.lezi-detail-bar [data-detail-close]{display:inline-flex;gap:12px;align-items:center;text-decoration:none;padding:5px 0;font-size:13px;min-height:36px}.lezi-detail-bar [data-detail-close] span{font-size:25px;line-height:1}
.lezi-detail-head{display:grid;grid-template-columns:minmax(0,1fr) 300px;align-items:center;gap:30px;padding:30px}
.lezi-detail-head h1{font-size:clamp(28px,3.7vw,40px);margin:0 0 14px}.lezi-detail-head>div>p{color:#555;max-width:600px}
.lezi-detail-accent{display:block;width:48px;height:4px;border-radius:10px;background:var(--lezi-detail-accent);margin-bottom:16px}
.lezi-detail-head img{display:block;width:300px;height:170px;max-width:100%;object-fit:contain;margin:0}
.lezi-detail-facts{display:flex;gap:8px;flex-wrap:wrap}.lezi-detail-facts span{font-size:12px;padding:5px 10px;border-radius:8px;background:#D6D1CB}.lezi-detail-fragment[data-detail-world=adult] .lezi-detail-facts span{background:#B2AAA0}
.lezi-detail-body{display:grid;grid-template-columns:minmax(270px,.85fr) minmax(0,1.15fr);border-top:1px solid #D6D1CB}
.lezi-detail-info{padding:30px;font-size:15px}.lezi-detail-info h2{font-size:22px;margin:0 0 12px}.lezi-detail-info details{border-top:1px solid #D6D1CB;padding:15px 0}.lezi-detail-info summary{font-weight:700;cursor:pointer}.lezi-detail-info details p{color:#555}
.lezi-detail-timetable{margin:15px 0}.lezi-detail-timetable>div{display:grid;grid-template-columns:105px 1fr;gap:12px;padding:9px 0;border-bottom:1px solid #D6D1CB}.lezi-detail-timetable dt{font-weight:700}.lezi-detail-timetable dd{margin:0}
.lezi-detail-booking{padding:28px;min-width:0;border-left:1px solid #D6D1CB;background:#FAF9F7}.lezi-detail-booking>h2{font-size:23px;margin:0 0 22px}
#lezi-activity-dialog .lezi-detail-booking .lezi{margin:0;padding:0;background:transparent!important}
#lezi-activity-dialog .lezi-detail-booking .lezi-navigation,#lezi-activity-dialog .lezi-detail-booking .lezi-test-label,#lezi-activity-dialog .lezi-detail-booking .lezi-cart-link,#lezi-activity-dialog .lezi-detail-booking .lezi-camp-choices{display:none!important}
#lezi-activity-dialog .lezi-detail-booking .lezi-lesson-frame,#lezi-activity-dialog .lezi-detail-booking .lezi-camp-catalog,#lezi-activity-dialog .lezi-detail-booking .lfp{padding:0!important;margin:0!important;border:0!important;border-radius:0;background:transparent!important}
#lezi-activity-dialog .lezi-detail-booking .lezi-lesson-frame>h3,#lezi-activity-dialog .lezi-detail-booking .lezi-lesson-frame>.lezi-camp-accent,#lezi-activity-dialog .lezi-detail-booking .lezi-lesson-top,#lezi-activity-dialog .lezi-detail-booking .lezi-camp-panel-head img,#lezi-activity-dialog .lezi-detail-booking .lezi-camp-catalog>h3,#lezi-activity-dialog .lezi-detail-booking .lezi-camp-catalog>.lezi-camp-accent{display:none!important}
#lezi-activity-dialog .lezi-detail-booking .lezi-grid{grid-template-columns:1fr!important}#lezi-activity-dialog .lezi-detail-booking article.lezi-lesson-card{padding:16px 0!important;border:0!important;background:transparent!important}
#lezi-activity-dialog .lezi-detail-booking .lezi-series-period{margin:0 0 22px;padding:0!important}#lezi-activity-dialog .lezi-detail-booking .lezi-series-period>h3{font-size:19px!important}
#lezi-activity-dialog .lezi-detail-booking .lezi-camp-panel{padding:0!important;margin:0!important}#lezi-activity-dialog .lezi-detail-booking .lezi-camp-panel-head{display:block}
#lezi-activity-dialog .lezi-detail-booking .lezi-lesson-choice{border-top:1px solid #D6D1CB}#lezi-activity-dialog .lezi-detail-booking .lezi-lesson-choice>summary{background:var(--lezi-detail-accent);color:#181818;border-radius:10px;padding:12px;cursor:pointer}
#lezi-activity-dialog .lezi-detail-booking .lezi-lesson-card .lezi-mobile-lesson-days input:checked+span{background:var(--lezi-detail-accent)}
#lezi-activity-dialog .lezi-detail-booking .lp-hero,#lezi-activity-dialog .lezi-detail-booking .lp-frame-title,#lezi-activity-dialog .lezi-detail-booking .lp-frame-accent{display:none!important}
#lezi-activity-dialog .lezi-detail-booking .lezi-pt-ui{border:0!important;padding:0!important;margin:0!important;border-radius:0!important;background:transparent!important}
.lezi-detail-body.lezi-detail-wide{grid-template-columns:1fr}.lezi-detail-wide>.lezi-detail-info{display:grid;grid-template-columns:1fr 1fr;gap:0 30px}.lezi-detail-wide>.lezi-detail-info>h2,.lezi-detail-wide>.lezi-detail-info>p{grid-column:1/-1}.lezi-detail-wide>.lezi-detail-booking{border-left:0;border-top:1px solid #D6D1CB}
#lezi-activity-dialog .lfp h2,#lezi-activity-dialog .lfp .lfp-intro,#lezi-activity-dialog .lfp .lfp-family-note,#lezi-activity-dialog .lfp .lfp-price-layout,#lezi-activity-dialog .lfp .lfp-test-note,#lezi-activity-dialog .lfp .lfp-mascot-head{display:none!important}
#lezi-activity-dialog .lfp .lfp-calendar{margin:0 0 22px}#lezi-activity-dialog .lfp .lfp-calendar>h3{font-size:18px}#lezi-activity-dialog .lfp input,#lezi-activity-dialog .lfp select{background:#fff;color:#181818}
.lezi-detail-loading{padding:36px}.lezi-detail-loading button{display:block;border:1px solid #D6D1CB;background:#fff;border-radius:8px;padding:10px 14px;margin-top:20px;cursor:pointer}
@media(max-width:850px){#lezi-activity-dialog{width:calc(100% - 32px);max-height:calc(100dvh - 32px)}.lezi-detail-head{grid-template-columns:minmax(0,1fr) 220px;padding:24px}.lezi-detail-head img{width:220px;height:140px}.lezi-detail-info,.lezi-detail-booking{padding:24px}.lezi-detail-body{grid-template-columns:minmax(0,1fr)}}
@media(max-width:600px){#lezi-activity-dialog{width:100%;height:100dvh;max-height:100dvh;margin:0;border-radius:0}.lezi-detail-bar{padding:12px 18px}.lezi-detail-head{grid-template-columns:1fr;gap:16px;padding:22px}.lezi-detail-head img{width:280px;height:140px;justify-self:center;order:-1}.lezi-detail-head h1{font-size:28px}.lezi-detail-info,.lezi-detail-booking{padding:22px}.lezi-detail-booking{border-left:0;border-top:1px solid #D6D1CB}.lezi-detail-wide>.lezi-detail-info{display:block}#lezi-activity-dialog input,#lezi-activity-dialog select,#lezi-activity-dialog textarea{font-size:16px!important}.lezi-detail-timetable>div{grid-template-columns:98px minmax(0,1fr);gap:8px}}

/* Compact product-specific controls without repeating the full catalogue headings. */
.lezi-detail-label{color:var(--lezi-detail-accent-ink,#181818)}
#lezi-activity-dialog .lezi-detail-head{grid-template-columns:minmax(0,1fr) 270px;padding:24px 28px}
#lezi-activity-dialog .lezi-detail-head h1{font-size:clamp(28px,3vw,34px)}
#lezi-activity-dialog .lezi-detail-head img{width:270px;height:150px}
#lezi-activity-dialog .lezi-detail-booking .lezi-series-period>h3{font-size:15px!important;letter-spacing:0!important;margin:0 0 15px!important}
#lezi-activity-dialog .lezi-detail-booking .lezi-timing-label{display:none!important}
#lezi-activity-dialog .lezi-detail-booking .lezi-lesson-option-group .lezi-lesson-day{display:none!important}
#lezi-activity-dialog .lezi-detail-booking .lezi-mobile-lesson-days input:checked+span{background:var(--lezi-detail-accent)!important;border-color:var(--lezi-detail-accent)!important;color:var(--lezi-detail-accent-ink,#181818)!important}
#lezi-activity-dialog .lezi-detail-booking .lezi-lesson-choice>summary{color:var(--lezi-detail-accent-ink,#181818)}
#lezi-activity-dialog .lezi-detail-booking .lezi-day:has(input[data-lezi-unavailable="0"]) .lezi-camp-availability{display:none}
@media(max-width:600px){#lezi-activity-dialog .lezi-detail-head{grid-template-columns:1fr;padding:22px}#lezi-activity-dialog .lezi-detail-head img{width:270px;height:140px}}

/* 0.3.30: explicit states override inherited WooCommerce summary colours. */
#lezi-activity-dialog .lezi-detail-booking .lezi .lezi-lesson-choice>summary,
#lezi-activity-dialog .lezi-detail-booking .lezi .lezi-lesson-choice>summary:hover,
#lezi-activity-dialog .lezi-detail-booking .lezi .lezi-lesson-choice>summary:focus{background:var(--lezi-detail-accent)!important;color:#181818!important}
#lezi-activity-dialog .lezi-detail-booking .lezi .lezi-lesson-choice[open]>summary{background:#D6D1CB!important;color:#181818!important}
#lezi-activity-dialog .lezi-detail-fragment[data-detail-world=adult] .lezi-lesson-choice>summary,
#lezi-activity-dialog .lezi-detail-fragment[data-detail-world=adult] .lezi-detail-label{background:#B2AAA0!important;color:#181818!important}
#lezi-activity-dialog .lezi-detail-booking .lezi .lezi-mobile-lesson-days label:has(input:checked){background:#D6D1CB!important;border-color:#181818!important;color:#181818!important}
#lezi-activity-dialog .lezi-detail-fragment[data-detail-world=adult] .lezi-mobile-lesson-days label:has(input:checked){background:#B2AAA0!important}
#lezi-activity-dialog .lezi-detail-booking .lezi .lezi-mobile-lesson-days input:checked+span{background:transparent!important;color:#181818!important}
.lezi-detail-variants{display:flex;flex-wrap:wrap;gap:10px;padding:0 30px 24px}
#lezi-activity-dialog .lezi-detail-variants a{display:flex;align-items:center;min-height:46px;padding:10px 16px;border:1px solid #D6D1CB;border-radius:10px;color:#181818!important;text-decoration:none;font-size:14px;font-weight:600}
#lezi-activity-dialog .lezi-detail-variants a[aria-current=page]{background:#D6D1CB;border-color:#181818}
#lezi-activity-dialog [data-detail-world=adult] .lezi-detail-variants a[aria-current=page]{background:#B2AAA0}
#lezi-activity-dialog .lezi-detail-variants a:focus-visible{outline:3px solid #181818;outline-offset:3px}
@media(max-width:600px){.lezi-detail-variants{padding:0 20px 20px;gap:8px}.lezi-detail-variants a{flex:1 1 150px}}

/* PT starts with rates and booking; supporting explanations follow below. */
.lezi-detail-wide>.lezi-detail-booking{grid-row:1;border-top:0}
.lezi-detail-wide>.lezi-detail-info{grid-row:2;border-top:1px solid #B2AAA0}

/* 0.3.32: the category badge follows this activity's brand colour. */
#lezi-activity-dialog .lezi-detail-fragment[data-detail-key] .lezi-detail-label{background:var(--lezi-detail-accent)!important;color:#181818!important;font-weight:750}
#lezi-activity-dialog .lezi-detail-fragment[data-detail-key=mom] .lezi-detail-label{color:#fff!important}

#lezi-activity-dialog .lfp .lfp-heading{display:none!important}

/* Scoped feedback: one activity, readable actions and no inherited Woo floats. */
#lezi-activity-dialog .lezi-detail-feedback{display:block!important;position:static!important;float:none!important;background:#F0EDE8;border:1px solid #D6D1CB;border-left:4px solid #B2AAA0;border-radius:12px;margin:0 0 20px;padding:16px;color:#181818!important;overflow-wrap:anywhere}
#lezi-activity-dialog .lezi-detail-feedback-error{background:#FFF3F0;border-left-color:#B34C38}
#lezi-activity-dialog .lezi-detail-feedback>p{margin:0!important;line-height:1.5!important;color:#181818!important}
#lezi-activity-dialog .lezi-detail-feedback-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:14px}
#lezi-activity-dialog .lezi-detail-feedback-actions a{position:static!important;float:none!important;display:inline-flex!important;align-items:center;justify-content:center;width:auto!important;max-width:100%;height:auto!important;min-height:44px;padding:11px 16px!important;margin:0!important;border-radius:10px;background:#fff!important;border:1px solid #B2AAA0!important;color:#181818!important;font:600 14px/1.4 Arial,sans-serif!important;text-decoration:none!important;white-space:normal!important}
#lezi-activity-dialog .lezi-detail-feedback-actions a.lezi-quick-checkout,#lezi-activity-dialog .lezi-detail-feedback-actions a.lezi-quick-checkout:visited,#lezi-activity-dialog .lezi-detail-feedback-actions a.lezi-quick-checkout:hover{background:#181818!important;border-color:#181818!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
#lezi-activity-dialog .lezi-detail-feedback-actions a:focus-visible{outline:2px solid #181818;outline-offset:3px}
#lezi-activity-dialog .lezi-detail-variant-label{margin:0!important;padding:0 30px 10px;font-size:14px;font-weight:600}
#lezi-activity-dialog .lezi-detail-loading a,#lezi-activity-dialog .lezi-detail-loading button{display:inline-flex;align-items:center;min-height:44px;padding:10px 14px;margin:10px 10px 0 0;border:1px solid #B2AAA0;border-radius:10px;background:white;color:#181818}
@media(max-width:600px){#lezi-activity-dialog .lezi-detail-variant-label{padding-inline:22px}#lezi-activity-dialog .lezi-detail-feedback-actions a{flex:1 1 150px}}

/* 0.3.39: match the party calendar on the booking page, including disabled days. */
#lezi-activity-dialog .lfp .lfp-days button{background:#D6D1CB!important;border:1px solid #D6D1CB!important;color:#181818!important;-webkit-text-fill-color:#181818;box-shadow:none!important;text-align:left!important;min-height:78px!important;padding:16px!important;border-radius:12px!important;opacity:1!important}
#lezi-activity-dialog .lfp .lfp-days button.full,#lezi-activity-dialog .lfp .lfp-days button.unavailable,#lezi-activity-dialog .lfp .lfp-days button.held{background:#D282B4!important;border-color:#D282B4!important;color:#181818!important}
#lezi-activity-dialog .lfp .lfp-days button.available[aria-pressed=true]{background:#D6D1CB!important;border-color:#D6D1CB!important}
#lezi-activity-dialog .lfp .lfp-days button.available:hover{border-color:#B2AAA0!important}
#lezi-activity-dialog .lfp .lfp-days button:disabled{cursor:default!important}
#lezi-activity-dialog .lfp .lfp-days button:focus-visible{outline:2px solid #181818!important;outline-offset:3px}
