@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:ital,wght@0,700;0,800;1,800&family=DM+Sans:wght@400;500;600;700;800&display=swap');
/* Presentation only: the existing party journey, availability and deposit contract remain authoritative. */
.fec-party-booking,.fec-pb-modal-launcher,.fec-pb-modal-head{--blue:#18244d;--navy:#18244d;--purple:#18244d;--cyan:#48cae4;--orange:#fff000;--ink:#18244d;--soft:#e7f9fc;font-family:'DM Sans',sans-serif;color:#18244d}
.fec-party-booking{background:#fffef2}.fec-party-booking button,.fec-party-booking input,.fec-party-booking select,.fec-party-booking textarea,.fec-pb-modal button{font-family:'DM Sans',sans-serif}
.fec-party-booking :is(h1,h2,h3,legend),.fec-pb-modal-head strong{font-family:'Barlow Condensed',Impact,sans-serif;font-weight:800;text-transform:uppercase;color:#18244d;-webkit-text-stroke:0;text-shadow:none;letter-spacing:0}
.fec-party-booking h1{font-size:clamp(32px,5vw,50px)}.fec-party-booking h2,.fec-party-booking legend{font-size:27px}
.fec-pb-modal{padding:16px}.fec-pb-modal-backdrop{background:rgba(24,36,77,.48);backdrop-filter:blur(3px)}
.fec-pb-modal-dialog{width:min(660px,100%);border:2px solid #18244d;border-radius:2px;background:#fffef2;box-shadow:6px 6px 0 #48cae4;max-height:calc(100dvh - 32px)}
.fec-pb-modal-scroll{max-height:calc(100dvh - 36px)}
.fec-pb-modal-head{background:#fff000;border-bottom:2px solid #18244d;min-height:56px;padding:8px 14px}.fec-pb-modal-head>strong{font-size:22px;color:#18244d}
.fec-pb-modal-close{background:#fffef2;color:#18244d;border:2px solid #18244d;border-radius:0;width:40px;height:40px;flex-basis:40px;box-shadow:3px 3px 0 #18244d}
.fec-party-booking .fec-pb-modal-hero{display:grid;grid-template-columns:minmax(130px,.9fr) minmax(0,1.1fr);align-items:center;gap:10px;margin:16px 0 20px;padding:12px 18px;border:2px solid #18244d;box-shadow:4px 4px 0 #48cae4;overflow:visible;background:radial-gradient(circle at 1px 1px,#ffffff20 1px,transparent 1.5px) 0 0/9px 9px,repeating-conic-gradient(from -12deg at 12% 100%,#ffffff09 0deg 12deg,transparent 12deg 26deg),#18244d}
.fec-party-booking .fec-pb-modal-hero>img{width:100%;height:auto;max-height:none;margin:-22px 0 -8px;object-fit:contain;filter:drop-shadow(3px 4px 0 #0003)}
.fec-party-booking .fec-pb-modal-hero>strong{position:static;font:italic 800 clamp(30px,5vw,46px)/.98 'Barlow Condensed',sans-serif;text-transform:uppercase;color:#fff000;-webkit-text-stroke:0;text-shadow:2px 2px 0 #ff4baf;text-align:left;transform:none}
.fec-party-booking .fec-pb-modal-hero>strong span{display:block;color:inherit}
.fec-pb-brand{justify-content:center}.fec-pb-brand img{width:220px;max-height:none}.fec-pb-brand span{font-size:12px}
.fec-pb-progress span{border-radius:0;background:#dce7eb}.fec-pb-progress span.is-current{background:#ff4baf}.fec-pb-progress em{font-family:'DM Sans',sans-serif}
.fec-party-booking :is(.fec-pb-choice,.fec-pb-times button,.fec-pb-days button,.fec-pb-date-rail button,.fec-pb-modal-locations button,.fec-pb-modal-packages button,.fec-pb-journey-extras button){border:2px solid #18244d;border-radius:0;background:#fff;color:#18244d;box-shadow:3px 3px 0 #18244d;transform:none}
.fec-party-booking :is(.fec-pb-choice,.fec-pb-times button,.fec-pb-days button,.fec-pb-date-rail button,.fec-pb-modal-locations button,.fec-pb-modal-packages button,.fec-pb-journey-extras button).is-selected{background:#fff000;color:#18244d;border-color:#18244d;box-shadow:3px 3px 0 #ff4baf}
.fec-party-booking :is(.fec-pb-choice,.fec-pb-times button,.fec-pb-days button):hover:not(:disabled){background:#e7f9fc;border-color:#18244d;transform:none}
.fec-party-booking button:focus-visible,.fec-party-booking :is(input,textarea,select):focus-visible{outline:3px solid #ff4baf;outline-offset:3px}
.fec-party-booking .fec-pb-primary,.fec-pb-modal-open,.fec-party-booking .fec-pb-mobile-bar button{border:2px solid #18244d;border-radius:0;background:#fff000;color:#18244d;box-shadow:4px 4px 0 #18244d;font-weight:800;text-transform:uppercase;font-size:13px;min-height:46px}
.fec-party-booking .fec-pb-primary:hover:not(:disabled),.fec-pb-modal-open:hover{background:#48cae4;color:#18244d;border-color:#18244d;transform:none;box-shadow:4px 4px 0 #18244d}
.fec-party-booking :is(.fec-pb-summary,.fec-pb-review,.fec-pb-form fieldset,.fec-pb-journey-panel,.fec-pb-journey-review){background:#fff;border:2px solid #18244d;border-radius:0;color:#18244d;box-shadow:4px 4px 0 #48cae4}
.fec-party-booking .fec-pb-summary :is(h2,dt,dd,button){color:#18244d}.fec-pb-summary dl div{border-bottom:1px solid #d3d7df}
.fec-party-booking .fec-pb-calendar-head{background:#18244d;border-radius:0;color:white}.fec-party-booking .fec-pb-calendar{border-radius:0}.fec-party-booking .fec-pb-calendar-head button{background:#fff000;color:#18244d;border:2px solid #18244d;border-radius:0}
.fec-party-booking .fec-pb-journey-toggle{background:#e7f9fc!important;border:2px solid #18244d;border-radius:0;color:#18244d!important;box-shadow:3px 3px 0 #48cae4;min-height:54px}.fec-party-booking .fec-pb-journey-toggle :is(strong,span,small){color:#18244d}
.fec-party-booking .fec-pb-journey-summary,.fec-party-booking .fec-pb-modal-selection{background:#e7f9fc;border-radius:0;border-left:4px solid #48cae4;color:#18244d}
.fec-party-booking :is(input[type=text],input[type=number],input[type=email],input[type=tel],textarea,select){background:#fffef2;border:2px solid #18244d!important;border-radius:0!important;color:#18244d;min-height:44px;font-size:16px!important;padding:10px}
.fec-party-booking :is(input,textarea){scroll-margin-block:100px}.fec-party-booking input[type=checkbox]{accent-color:#18244d}.fec-party-booking .fec-pb-form label{color:#18244d}
.fec-pb-modal-checkout-frame{border:2px solid #18244d;border-radius:0;background:#fffef2}.fec-pb-affirm label{background:#e7f9fc;border-radius:0}.fec-pb-price-box{background:#e7f9fc;border-radius:0}
.fec-pb-modal-scroll{scroll-padding-top:86px}.fec-party-booking h1{scroll-margin-top:86px}
.fec-pb-modal-head{position:sticky;top:0;z-index:10}
.fec-party-booking .fec-pb-stage :is(h1,h2,h3,legend){font-family:'Barlow Condensed',Impact,sans-serif!important;font-weight:800!important;-webkit-text-stroke:0!important;text-shadow:none!important}
.fec-party-booking .fec-pb-journey-step{border:2px solid #18244d;border-radius:0;background:#fff}.fec-party-booking .fec-pb-journey-step.is-open{border-color:#18244d;box-shadow:3px 3px 0 #48cae4}
.fec-party-booking .fec-pb-journey-toggle>b{border-radius:0;background:#fff000;color:#18244d;border:1px solid #18244d}.fec-party-booking .fec-pb-journey-step.is-open .fec-pb-journey-toggle>b{background:#ff4baf;color:#18244d}
.fec-party-booking .fec-pb-journey-toggle strong{font-size:14px}.fec-party-booking .fec-pb-journey-toggle small{font-size:11px}
.fec-party-booking .fec-pb-child{border-radius:0;border:0;padding:10px;background:transparent}.fec-party-booking .fec-pb-form .fec-pb-children{display:block}
.fec-party-booking .fec-pb-add-child{border:2px solid #18244d;border-radius:0;background:#e7f9fc;min-height:44px;margin:8px 0 0;font-size:12px;text-transform:uppercase}
.fec-party-booking input:not([type]){border:2px solid #18244d!important;border-radius:0!important;background:#fffef2;font:16px 'DM Sans',sans-serif;min-height:44px;color:#18244d}
.fec-party-booking .fec-pb-journey-panel .fec-pb-form label{font-size:11px;text-transform:uppercase;letter-spacing:.03em}.fec-party-booking .fec-pb-info small{text-transform:none;letter-spacing:0}
/* Keep the active form open and airy; only completed steps remain as edit links. */
.fec-party-booking .fec-pb-journey-summary{display:flex;align-items:center;flex-wrap:nowrap;gap:14px;background:transparent;border:0;padding:0;margin:10px 0 22px}
.fec-pb-journey-seal{display:block;width:100px;height:auto;flex:0 0 100px;object-fit:contain}
.fec-pb-journey-labels{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0}
.fec-party-booking .fec-pb-journey-labels span{padding:10px 13px;background:#ff4baf;color:#18244d;border-radius:0;font-size:14px;line-height:1.2;font-weight:800}
.fec-party-booking .fec-pb-journey-step,.fec-party-booking .fec-pb-journey-step.is-open{border:0;background:transparent;box-shadow:none;overflow:visible}
.fec-party-booking .fec-pb-journey-step .fec-pb-journey-panel{border:0;background:transparent;box-shadow:none;padding:4px 8px 16px}
.fec-party-booking .fec-pb-journey-step.is-open>.fec-pb-journey-toggle{display:none!important}
.fec-party-booking .fec-pb-journey-step:not(.is-open)>.fec-pb-journey-toggle{background:transparent!important;border:0!important;border-bottom:1px solid #18244d22!important;padding:10px 0!important;box-shadow:none;grid-template-columns:1fr 18px;min-height:40px}
.fec-party-booking .fec-pb-journey-step:not(.is-open)>.fec-pb-journey-toggle>b,.fec-party-booking .fec-pb-journey-step:not(.is-open)>.fec-pb-journey-toggle small{display:none}
.fec-party-booking .fec-pb-journey-panel .fec-pb-form fieldset.fec-pb-children,.fec-party-booking .fec-pb-journey-panel .fec-pb-child{border:0;background:transparent;box-shadow:none;border-radius:0;padding:0;margin:16px 0}
.fec-party-booking .fec-pb-journey-panel .fec-pb-child:first-child .fec-pb-child-head{display:none}
.fec-party-booking .fec-pb-journey-panel .fec-pb-child+.fec-pb-child{border-top:1px solid #18244d22;padding-top:14px}
.fec-party-booking .fec-pb-journey-panel .fec-pb-info{border:0;box-shadow:none;background:transparent;padding:0;margin:6px 0 16px}
.fec-party-booking .fec-pb-journey-panel>h1{font-size:32px!important;margin:0 0 5px}.fec-party-booking .fec-pb-journey-panel>p{font-size:13px;margin-bottom:20px}
.fec-party-booking .fec-pb-add-child{border:0;background:transparent;padding:4px 0;color:#18244d;text-decoration:underline;text-underline-offset:3px;min-height:36px;box-shadow:none}
@media(max-width:520px){.fec-pb-modal{padding:6px}.fec-pb-modal-dialog{max-height:calc(100dvh - 12px)}.fec-pb-modal-scroll{max-height:calc(100dvh - 16px)}.fec-party-booking .fec-pb-modal-hero{padding:10px;grid-template-columns:42% 1fr}.fec-party-booking .fec-pb-modal-hero>strong{font-size:30px}.fec-pb-brand img{width:180px}.fec-party-booking .fec-pb-days button{padding:4px 2px;min-height:46px}.fec-party-booking .fec-pb-days{gap:5px}.fec-pb-journey-seal{width:76px;flex-basis:76px}.fec-party-booking .fec-pb-journey-summary{gap:10px}.fec-party-booking .fec-pb-journey-labels span{font-size:12px;padding:8px 10px}.fec-pb-journey-labels{gap:6px}.fec-party-booking .fec-pb-journey-panel>h1{font-size:28px!important}}
