.fec-ticket-confirmation,.fec-ticket-location-picker{--ticket-blue:#18aeea;--ticket-navy:#2f4e9c;--ticket-orange:#f5a31a;--ticket-green:#7ad04f;--ticket-red:#ff4747;box-sizing:border-box;color:#173257;font-family:system-ui,sans-serif}
.fec-ticket-confirmation{position:relative;isolation:isolate;max-width:760px;margin:28px auto;padding:38px 32px 24px;border:2px solid #b8e8fb;border-radius:28px;background:linear-gradient(145deg,#e8f7fe,#fff 55%,#fff3df);text-align:center;overflow:hidden}
.fec-ticket-confirmation>*:not(.fec-ticket-confetti){position:relative;z-index:1}
.fec-ticket-kicker{font-size:12px;font-weight:850;letter-spacing:.14em;color:#2f4e9c;margin:0 0 14px}
.fec-ticket-success{display:grid;place-items:center;width:52px;height:52px;margin:0 auto 16px;border-radius:50%;background:#7ad04f;color:#173257;font-size:30px;font-weight:800}
.fec-ticket-confirmation h2{font-size:clamp(27px,4vw,40px);line-height:1.12;margin:0 0 14px;font-weight:850;color:#173257}
.fec-ticket-lead{font-size:17px;margin:0 0 8px;line-height:1.5}.fec-ticket-order{font-size:13px;margin:0;color:#50617b}
.fec-ticket-visits{display:grid;gap:14px;margin:26px 0 20px;text-align:left}.fec-ticket-visit{padding:20px;background:#fff;border:1px solid #d7e0ea;border-radius:16px}.fec-ticket-visit-top{display:flex;justify-content:space-between;gap:16px;align-items:center}.fec-ticket-visit-top strong{color:#2f4e9c}.fec-ticket-visit-top span{padding:5px 10px;border-radius:20px;background:#fff3df;font-size:13px;white-space:nowrap}.fec-ticket-visit h3{font-size:21px;color:#173257;margin:12px 0 8px}.fec-ticket-visit p{margin:4px 0;font-size:16px}.fec-ticket-next{font-size:15px;margin:12px 0 0}
.fec-ticket-confetti{position:absolute;inset:0;pointer-events:none;z-index:2;overflow:hidden}.fec-ticket-confetti span{position:absolute;display:block;width:9px;height:14px;background:var(--piece);opacity:0;animation:fec-ticket-pop 1.5s ease-out var(--delay) both}.fec-ticket-confetti span:nth-child(3n){border-radius:50%;width:10px;height:10px}
@keyframes fec-ticket-pop{0%{opacity:0;transform:translate(0,30px) rotate(0deg)}15%{opacity:1}65%{opacity:1}100%{opacity:0;transform:translate(var(--x),var(--y)) rotate(var(--r))}}

/* Contained seaside confirmation, shared with the party portal artwork. */
.fec-ticket-celebration-page{background:#eef9ff!important}
.fec-ticket-celebration-page #masthead,.fec-ticket-celebration-page #colophon,.fec-ticket-celebration-page .entry-header,.fec-ticket-celebration-page .woocommerce-breadcrumb{display:none!important}
.fec-confirmation-shell__header{background:#18244d;border-bottom:7px solid #48cae4;padding:15px 24px;text-align:center}.fec-confirmation-shell__header img{display:block;width:min(290px,75vw);height:auto;margin:auto}.fec-confirmation-shell__main{width:min(1100px,96vw);margin:28px auto 50px}.fec-confirmation-shell__footer{background:#18244d;border-top:7px solid #48cae4;color:#fff;text-align:center;padding:26px 20px;font:700 14px 'DM Sans',Arial,sans-serif}.fec-confirmation-shell__footer img{display:block;width:78px;height:auto;margin:0 auto 10px}.fec-confirmation-shell__footer p{margin:4px 0 12px}.fec-confirmation-shell__footer a{color:#fff000}.fec-confirmation-shell__header a:focus-visible,.fec-confirmation-shell__footer a:focus-visible{outline:3px solid #fff000;outline-offset:4px}
.fec-ticket-celebration-page .ast-container,.fec-ticket-celebration-page #primary,.fec-ticket-celebration-page .site-content,.fec-ticket-celebration-page article{max-width:none!important;width:100%;margin:0!important;padding:0!important;border:0!important}
.fec-ticket-seascape{position:relative;isolation:isolate;overflow:hidden;width:90vw;max-width:1040px;margin:28px auto 18px;padding:28px clamp(16px,4vw,54px) 32px;box-sizing:border-box;border:1px solid #bce7f5;border-radius:30px;background:linear-gradient(160deg,#f6fdff,#d9f4fc 42%,#40c4e7);box-shadow:0 16px 60px #073b7d15;font-family:Fredoka,system-ui,sans-serif;color:#0b3d70}
.fec-ticket-waves{position:absolute;z-index:-1;inset:240px 0 0;overflow:hidden;pointer-events:none;background:linear-gradient(transparent 5%,#24bae0 65%,#087baa)}
.fec-ticket-wave{position:absolute;left:-20%;width:140%;max-width:none!important;height:100%;object-fit:fill;bottom:-15%;animation:fec-confirmation-wave 25s ease-in-out infinite alternate}
.fec-ticket-wave.wave-2{bottom:20%;opacity:.65;animation-duration:34s}.fec-ticket-wave.wave-3{bottom:13%;animation-direction:alternate-reverse;animation-duration:29s}.fec-ticket-wave.wave-4{bottom:6%;animation-duration:38s}.fec-ticket-wave.wave-5{bottom:-1%;animation-direction:alternate-reverse;animation-duration:31s}.fec-ticket-wave.wave-6{bottom:-8%;animation-duration:43s}.fec-ticket-wave.wave-7{bottom:-15%;animation-direction:alternate-reverse;animation-duration:36s}
@keyframes fec-confirmation-wave{from{transform:translateX(-3%)}to{transform:translateX(3%)}}
.fec-ticket-seascape .fec-ticket-confirmation{max-width:none;margin:0;padding:0;border:0;border-radius:0;background:none;overflow:visible;font-family:inherit;color:inherit}
.fec-ticket-sharky{display:block;width:138px;height:120px;object-fit:contain;margin:0 auto 8px;filter:drop-shadow(0 8px 8px #0b3d911a)}
.fec-ticket-seascape .fec-ticket-kicker{margin:0 0 8px;font:600 11px Fredoka,system-ui,sans-serif;letter-spacing:.15em;color:#247ba4}
.fec-ticket-seascape .fec-ticket-confirmation h2{font-family:'Lilita One',system-ui,sans-serif;font-weight:400;font-size:clamp(36px,5.5vw,64px);line-height:1.02;letter-spacing:0;color:#fff;-webkit-text-stroke:3px #0b3d91;paint-order:stroke fill;text-shadow:0 4px 0 #0b3d9120;margin:0 auto 12px}
.fec-ticket-order{font:500 13px Fredoka,system-ui,sans-serif;color:#226080}.fec-ticket-order span{padding:0 7px}
.fec-ticket-seascape .fec-ticket-visits{margin:26px auto 14px;gap:12px;max-width:740px}
.fec-ticket-seascape .fec-ticket-visit{background:#ffffffdb;backdrop-filter:blur(9px);border:1px solid #ffffffed;border-radius:20px;padding:20px 24px!important;box-shadow:0 8px 28px #0b3d9110}
.fec-ticket-visit-top strong{font-size:14px}.fec-ticket-visit-top span{background:#e1f5fc;font-weight:600;color:#09548a}
.fec-ticket-seascape .fec-ticket-visit h3{font:600 clamp(22px,3vw,28px) Fredoka,system-ui,sans-serif;color:#0b3d91;margin:12px 0}
.fec-ticket-date-time{display:grid;grid-template-columns:1.7fr 1fr;gap:16px}.fec-ticket-date-time p{margin:0;font-size:15px}.fec-ticket-date-time small,.fec-ticket-kids small{display:block;font-size:10px;letter-spacing:.09em;font-weight:600;color:#50738a;margin-bottom:4px}.fec-ticket-date-time strong{font-weight:500}
.fec-ticket-kids{padding-top:12px;border-top:1px solid #cbe6ef;margin-top:14px!important}.fec-ticket-kids span{display:inline-block;padding:5px 11px;margin:3px 5px 0 0;background:#edf8fc;border-radius:20px;font-size:14px}
.fec-ticket-text-alert{display:flex;align-items:center;gap:14px;max-width:740px;box-sizing:border-box;margin:0 auto;padding:16px 20px;text-align:left;border:1px solid #ffce76;border-radius:17px;background:#fff1d7;box-shadow:0 5px 18px #0b3d9112}
.fec-ticket-phone-icon{display:grid;place-items:center;flex:0 0 36px;height:42px;border:2px solid #e78011;border-radius:9px;color:#d1710e;font-size:24px}.fec-ticket-text-alert>div{flex:1}.fec-ticket-text-alert strong{font-size:15px;line-height:1.2;display:block;color:#664311}.fec-ticket-text-alert p{font-size:12px;margin:4px 0 0;color:#735937}
.fec-ticket-text-alert button,.fec-ticket-text-secondary,.fec-ticket-send-form button{border:0;border-radius:12px;background:#0b3d91;color:white;padding:13px 19px;font:600 14px Fredoka,system-ui,sans-serif;cursor:pointer;min-height:46px;white-space:nowrap}
.fec-ticket-text-alert button:hover,.fec-ticket-text-secondary:hover{background:#075fab;color:white}.fec-ticket-seascape button:focus-visible,.fec-ticket-text-modal button:focus-visible{outline:3px solid #ff9900;outline-offset:3px}
.fec-ticket-pass-divider{position:relative;max-width:740px;margin:26px auto 20px;display:flex;align-items:center;gap:15px;color:#fff;font-size:11px;letter-spacing:.13em;font-weight:600}.fec-ticket-pass-divider:before,.fec-ticket-pass-divider:after{content:'';height:1px;background:#ffffff80;flex:1}
.fec-ticket-qr-card{position:relative;max-width:740px;box-sizing:border-box;margin:0 auto;padding:20px;text-align:center;background:#ffffffdf;backdrop-filter:blur(9px);border:1px solid white;border-radius:22px;box-shadow:0 8px 30px #073b7d1a}
.fec-ticket-qr-card .fec-ticket-pass{margin:0!important;padding:0!important;border:0!important;background:transparent!important}
.fec-ticket-qr-card .fec-ticket-pass>p:first-child{display:none}.fec-ticket-qr-card .fec-ticket-pass h2{font:600 24px Fredoka,system-ui,sans-serif;color:#0b3d91}.fec-ticket-qr-card .fec-ticket-pass p{font-size:14px;margin:6px 0 10px}.fec-ticket-qr-card .fec-ticket-pass>p:has(a){display:none}.fec-ticket-qr-card .fec-ticket-pass small{display:block;font-size:12px;color:#527386;margin:8px 0 14px}.fec-ticket-qr-card [data-fec-qr]{border-radius:14px}.fec-ticket-qr-card canvas{max-width:100%;height:auto}.fec-ticket-scan-hint{font-size:12px;color:#517082;margin:10px 0 0}
.fec-ticket-receipt{box-sizing:border-box;max-width:1040px;width:90vw;margin:0 auto 32px;padding:15px 20px;border:1px solid #d6eaf3;border-radius:15px;background:#ffffffb3;font-family:Fredoka,system-ui,sans-serif}.fec-ticket-receipt>summary{cursor:pointer;color:#376079;font-size:14px}.fec-ticket-receipt[open]>summary{margin-bottom:20px}
.fec-ticket-text-modal{box-sizing:border-box;width:min(92vw,490px);max-height:88dvh;overflow:auto;border:1px solid #b8e4f1;border-radius:24px;padding:30px;background:#f8fdff;color:#103f6c;font-family:Fredoka,system-ui,sans-serif;box-shadow:0 20px 90px #061f5660}.fec-ticket-text-modal::backdrop{background:#062f60a8;backdrop-filter:blur(5px)}.fec-ticket-modal-close{position:absolute;right:12px;top:10px;background:transparent;color:#234d73;border:0;font-size:28px;min-width:44px;min-height:44px;padding:0;cursor:pointer}.fec-ticket-text-modal h2{font:400 31px 'Lilita One',system-ui,sans-serif;color:#0b3d91;margin:8px 0 12px}.fec-ticket-text-modal p{font-size:15px;line-height:1.45}.fec-ticket-send-form button{width:100%;margin:5px 0 10px}.fec-ticket-send-form button:disabled{opacity:.5;cursor:default}.fec-ticket-send-form small{display:block;font-size:11px;color:#587085}.fec-ticket-send-status{font-size:13px!important}.fec-ticket-coupon-soon{font-size:12px!important;border-top:1px solid #d6e9ef;padding-top:12px}.fec-ticket-coupon-options summary{cursor:pointer;padding:14px 0}.fec-ticket-coupon-options .fec-preferences{padding:0;border:0;box-shadow:none;background:none}
@media(max-width:600px){.fec-ticket-seascape{margin-top:16px;border-radius:22px;padding:20px 14px 20px}.fec-ticket-sharky{width:112px;height:100px}.fec-ticket-seascape .fec-ticket-confirmation h2{-webkit-text-stroke:2.5px #0b3d91}.fec-ticket-seascape .fec-ticket-visit{padding:16px!important}.fec-ticket-date-time{grid-template-columns:1fr;gap:12px}.fec-ticket-text-alert{flex-wrap:wrap;padding:14px;gap:10px}.fec-ticket-text-alert>div{min-width:140px}.fec-ticket-text-alert button{width:100%}.fec-ticket-qr-card{padding:16px 12px}.fec-ticket-waves{top:215px}.fec-ticket-text-modal{padding:28px 20px}.fec-ticket-order{font-size:11px}.fec-ticket-seascape .fec-ticket-visits{margin-top:20px}}
@media(prefers-reduced-motion:reduce){.fec-ticket-wave{animation:none!important}}
.fec-ticket-location-page{background:#e8f7fe;margin:0}.fec-ticket-location-picker{max-width:620px;margin:10vh auto;padding:32px}.fec-ticket-location-picker h1{font-size:38px;line-height:1.1}.fec-ticket-location-picker a{display:flex;justify-content:space-between;margin:16px 0;padding:24px;background:white;border:2px solid #18aeea;border-radius:18px;font-size:23px;font-weight:750;color:#2f4e9c;text-decoration:none}.fec-ticket-location-picker a:hover{background:#fff3df}.fec-ticket-location-picker a:focus-visible,.fec-ticket-launch:focus-visible{outline:3px solid #2f4e9c;outline-offset:4px}
.fec-ticket-pass-preview,.fec-ticket-preview-note{max-width:680px;margin:24px auto;padding:24px;text-align:center;background:#fff;border:1px dashed #8ccff0;border-radius:18px;box-sizing:border-box}
@media(max-width:520px){.fec-ticket-confirmation{padding:26px 18px 20px;margin:18px auto;border-radius:20px}.fec-ticket-visit{padding:16px}.fec-ticket-location-picker{margin:5vh auto;padding:22px}.fec-ticket-visit-top{flex-wrap:wrap;gap:8px}}
@media(prefers-reduced-motion:reduce){.fec-ticket-confetti span{animation:none!important;display:none}}

/* Compact confirmation. The scan sweep is decorative, scoped to this page only. */
.fec-ticket-seascape{max-width:860px;margin:16px auto 12px;padding:18px 24px 20px;border-radius:24px}
.fec-ticket-heading{display:flex;justify-content:center;align-items:center;gap:14px;margin:0 auto 14px}
.fec-ticket-heading .fec-ticket-sharky{width:96px;height:82px;margin:0;flex-shrink:0}
.fec-ticket-seascape .fec-ticket-heading h2{font-size:clamp(27px,4vw,42px);margin:0;text-align:left;-webkit-text-stroke:2px #0b3d91}
.fec-ticket-details-card{max-width:660px;margin:auto;background:#ffffffdc;backdrop-filter:blur(9px);border:1px solid #fff;border-radius:17px;padding:14px 18px;text-align:left}
.fec-ticket-seascape .fec-ticket-visits{margin:0;gap:10px}
.fec-ticket-seascape .fec-ticket-visit{padding:0!important;background:transparent;border:0;border-radius:0;box-shadow:none;backdrop-filter:none}
.fec-ticket-visit-top strong{font-size:13px}.fec-ticket-visit-top span{padding:2px 8px;font-size:12px}
.fec-ticket-seascape .fec-ticket-visit h3{font-size:21px;margin:3px 0 5px}
.fec-ticket-date-time{display:flex;flex-wrap:wrap;gap:4px 12px}.fec-ticket-date-time p{font-size:14px;line-height:1.35}
.fec-ticket-kids{padding-top:5px;margin-top:5px!important;border:0;line-height:1.3}.fec-ticket-kids span{padding:2px 8px;margin:0 4px 0 0;font-size:13px}
.fec-ticket-text-alert{display:block;max-width:none;margin:10px 0 0;padding:9px 10px;border-radius:10px;box-shadow:none}
.fec-ticket-text-alert button{display:flex;align-items:center;gap:9px;white-space:normal;width:100%;min-height:32px;padding:0;background:transparent;color:#744707;text-align:left;font-size:14px;border-radius:4px}
.fec-ticket-text-alert button:hover{background:transparent;color:#a15806}.fec-ticket-text-alert button>span:nth-child(2){flex:1}
.fec-ticket-cta-phone{font-size:12px;font-weight:400}.fec-ticket-text-alert p{font-size:10px;line-height:1.35;margin:4px 0 0 29px}
.fec-ticket-opt-box{width:19px;height:19px;flex:0 0 19px;border:2px solid #d08b22;border-radius:5px;background:white;animation:fec-opt-pulse 2.4s ease-in-out infinite}
@keyframes fec-opt-pulse{0%,100%{box-shadow:0 0 0 0 #efad4530}50%{box-shadow:0 0 0 5px #efad4520}}
.fec-ticket-qr-card{max-width:660px;margin:28px auto 0;padding:12px 16px;border-radius:17px}
.fec-ticket-qr-card .fec-ticket-pass h2,.fec-ticket-qr-card .fec-ticket-pass>p{display:none}
.fec-ticket-qr-card [data-fec-qr]{position:relative;overflow:hidden;line-height:0;border-radius:8px}
.fec-ticket-qr-card [data-fec-qr]::after{content:'';position:absolute;pointer-events:none;left:12px;right:12px;top:12px;height:2px;background:#00a9e8b0;box-shadow:0 0 7px #00a9e870;animation:fec-ticket-scan 3.8s ease-in-out infinite alternate}
@keyframes fec-ticket-scan{from{top:12px}to{top:calc(100% - 14px)}}
.fec-ticket-qr-card canvas{width:180px!important;height:180px!important;max-width:100%}
.fec-ticket-qr-card .fec-ticket-pass small{font-size:10px;margin:3px 0 7px}
.fec-ticket-text-secondary{min-height:36px;padding:8px 14px;font-size:12px;border-radius:9px}
.fec-ticket-waves{top:80px}.fec-ticket-receipt{max-width:860px;padding:9px 14px;margin-bottom:16px}.fec-ticket-receipt>summary{font-size:12px}
.fec-ticket-text-modal input[type=checkbox]:not(:checked){animation:fec-opt-pulse 2.4s ease-in-out infinite}
@media(max-width:600px){.fec-ticket-seascape{padding:12px;margin-top:10px}.fec-ticket-heading{gap:8px;margin-bottom:12px}.fec-ticket-heading .fec-ticket-sharky{width:68px;height:62px}.fec-ticket-seascape .fec-ticket-heading h2{font-size:27px;-webkit-text-stroke:1.7px #0b3d91}.fec-ticket-details-card{padding:11px 12px}.fec-ticket-qr-card{margin-top:24px;padding:10px}.fec-ticket-text-alert{padding:7px 8px}.fec-ticket-text-alert button{font-size:13px}.fec-ticket-cta-phone{display:block}.fec-ticket-qr-card canvas{width:168px!important;height:168px!important}}
@media(prefers-reduced-motion:reduce){.fec-ticket-opt-box,.fec-ticket-text-modal input[type=checkbox]{animation:none!important}.fec-ticket-qr-card [data-fec-qr]::after{display:none}}
.fec-ticket-seascape .fec-ticket-heading h2{font-size:clamp(32px,4.5vw,49px);-webkit-text-stroke:3.5px #0b3d91}
.fec-ticket-details-card{background:#ffffffa6;backdrop-filter:blur(5px)}
.fec-ticket-visit{text-align:center}.fec-ticket-date-time{justify-content:center;font-size:14px}.fec-ticket-guest-line{font-size:13px!important;margin:7px 0 0!important;line-height:1.4}
.fec-ticket-inline-consent{margin:12px 0 0;padding:11px 13px;background:#fff2d8d9;border:1px solid #edce91;border-radius:12px;text-align:left;font-size:13px;color:#624214}
.fec-ticket-inline-consent>strong{display:block;text-align:center;font-size:15px;margin-bottom:8px}
.fec-ticket-inline-consent fieldset{margin:0;padding:0;border:0}.fec-ticket-inline-consent label{display:flex;align-items:center;gap:7px;margin:5px 0}.fec-ticket-inline-consent small{font-size:10px;line-height:1.4;display:block}
.fec-ticket-inline-consent button,.fec-ticket-subscribed button{display:block;margin:9px auto 5px;border:0;border-radius:9px;background:#0b3d91;color:white;padding:9px 22px;font:600 13px Fredoka,system-ui,sans-serif;cursor:pointer}
.fec-ticket-inline-consent button:disabled{opacity:.5;cursor:default}.fec-ticket-inline-consent input[type=checkbox]:not(:checked){animation:fec-opt-pulse 2.4s ease-in-out infinite}
.fec-ticket-inline-consent .fec-preferences{margin:0;padding:0;border:0;background:transparent;box-shadow:none;color:inherit}
.fec-ticket-inline-consent .fec-preferences>p,.fec-ticket-inline-consent .fec-preferences .fec-preferences-kicker{display:none}
.fec-ticket-seascape .fec-ticket-inline-consent .fec-preferences h2{font:600 15px Fredoka,system-ui,sans-serif;color:#624214;-webkit-text-stroke:0;text-shadow:none;text-align:center;margin:0 0 8px}
.fec-ticket-inline-consent .fec-preferences-choice{padding:0;border:0;background:transparent;font-size:12px;margin:5px 0}.fec-ticket-inline-consent .fec-preferences-choice strong{font-size:12px}.fec-ticket-inline-consent .fec-preferences-detail,.fec-ticket-inline-consent .fec-preferences-terms{font-size:10px;line-height:1.4;margin:5px 0}.fec-ticket-inline-consent .fec-preferences-verification{font-size:11px;margin:4px 0}.fec-ticket-inline-consent .fec-preferences-actions{display:flex;justify-content:center;gap:10px;margin:7px 0 0}.fec-ticket-inline-consent .fec-preferences-actions[hidden]{display:none}.fec-ticket-inline-consent .fec-preferences-actions button{margin:0}
.fec-ticket-qr-card{display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:center;text-align:left;padding:15px 18px}.fec-ticket-qr-left{text-align:center}.fec-ticket-qr-card .fec-ticket-pass small{display:none}.fec-ticket-qr-left .fec-ticket-text-secondary{margin-top:7px}
.fec-ticket-customer{overflow-wrap:anywhere;font-size:13px;line-height:1.45;color:#245576}.fec-ticket-customer>strong{font-size:17px;color:#0b3d70}.fec-ticket-customer p{margin:5px 0 12px}.fec-ticket-customer dl{margin:0}.fec-ticket-customer dl>div{display:grid;grid-template-columns:66px 1fr;gap:8px;margin:7px 0}.fec-ticket-customer dt{font-size:11px;color:#477890}.fec-ticket-customer dd{margin:0;font-weight:500}
.fec-ticket-subscribed{border:1px solid #b8e4f1;border-radius:20px;padding:28px;width:min(88vw,380px);text-align:center;background:#f2fbff;color:#0b3d70;font-family:Fredoka,system-ui,sans-serif}.fec-ticket-subscribed::backdrop{background:#062f6090}.fec-ticket-subscribed h2{font:400 29px 'Lilita One',sans-serif;margin:0 0 12px}.fec-ticket-subscribed p{font-size:14px}
@media(max-width:600px){.fec-ticket-seascape .fec-ticket-heading h2{font-size:31px;-webkit-text-stroke:2.6px #0b3d91}.fec-ticket-heading .fec-ticket-sharky{width:60px}.fec-ticket-qr-card{grid-template-columns:140px minmax(0,1fr);gap:10px;padding:11px}.fec-ticket-qr-card canvas{width:116px!important;height:116px!important}.fec-ticket-qr-left .fec-ticket-text-secondary{font-size:10px;white-space:normal;padding:7px;min-height:36px;width:100%}.fec-ticket-customer{font-size:11px}.fec-ticket-customer>strong{font-size:14px}.fec-ticket-customer dl>div{display:block;margin:5px 0}.fec-ticket-customer dt{font-size:9px}.fec-ticket-customer p{margin-bottom:7px}}
@media(max-width:360px){.fec-ticket-qr-card{grid-template-columns:1fr}.fec-ticket-customer{text-align:center}.fec-ticket-qr-left .fec-ticket-text-secondary{width:auto;margin:7px auto}.fec-ticket-qr-card canvas{width:168px!important;height:168px!important}}
@media(prefers-reduced-motion:reduce){.fec-ticket-inline-consent input[type=checkbox]{animation:none!important}}
.fec-ticket-inline-consent{position:relative;overflow:hidden;padding-left:162px;min-height:180px;box-sizing:border-box}
.fec-ticket-boy{position:absolute;left:0;bottom:0;display:block;width:140px;height:calc(100% - 10px);max-height:210px;object-fit:contain;object-position:left bottom;pointer-events:none;margin:0!important}
@media(max-width:600px){.fec-ticket-inline-consent{padding-left:96px;min-height:150px}.fec-ticket-boy{width:88px;max-height:170px}}

.fec-ticket-addon-summary{font-size:13px;line-height:1.4;text-align:center;margin:8px 0 0;color:#245576;overflow-wrap:anywhere}

.fec-ticket-reward-voucher{grid-column:1/-1;border:1px dashed #2f8fab;border-radius:12px;padding:12px;background:#edfff4;color:#16486c;text-align:center}.fec-ticket-reward-voucher p{margin:4px 0;font-size:13px}.fec-ticket-reward-voucher small{font-size:11px}

.fec-party-confirmation .fec-ticket-heading h2{max-width:580px;font-size:clamp(29px,4.4vw,48px)}.fec-party-next{grid-template-columns:1.2fr 1fr}.fec-party-next h3{font:600 23px Fredoka,sans-serif;color:#0b3d91;margin:0 0 6px}.fec-party-next p{font-size:14px;line-height:1.4;margin:5px 0 12px}.fec-party-next small{display:block;font-size:11px;margin-top:7px;color:#477890}.fec-party-portal-button{display:inline-block;padding:11px 15px;border-radius:10px;background:#0b3d91;color:#fff!important;text-decoration:none;font:600 14px Fredoka,sans-serif}.fec-party-confirmation .fec-ticket-heading{margin-bottom:18px}
@media(max-width:600px){.fec-party-next{grid-template-columns:1fr}.fec-party-confirmation .fec-ticket-heading h2{font-size:30px}.fec-party-next .fec-ticket-customer{border-top:1px solid #b9dce8;padding-top:10px}.fec-party-next .fec-ticket-customer dl>div{display:grid}}

.fec-party-whats-next{grid-column:1/-1;min-width:0;margin:0;padding:0 0 16px;border-bottom:1px solid #12477920;color:#124779}.fec-party-whats-next h3{margin:0 0 8px;text-align:center}.fec-party-whats-next p{margin:0;font-size:15px;line-height:1.55}

/* Shared returning guest recognition; background contains no household data. */
#tickets-app .kiosk-sms-recognition { position:relative; min-height:550px; max-width:1200px; margin:0 auto; }
#tickets-app .kiosk-family-skeleton { padding:30px; opacity:.4; pointer-events:none; }
#tickets-app .skeleton-heading { height:34px; width:45%; background:#c4d2df; margin-bottom:32px; }
#tickets-app .skeleton-cards { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
#tickets-app .skeleton-card { background:#fff; border:2px solid #bfcedc; padding:28px; min-height:150px; }
#tickets-app .skeleton-card i { display:block; height:18px; background:#c4d2df; margin-bottom:22px; width:75%; }
#tickets-app .skeleton-signature { height:180px; background:#fff; margin-top:38px; border:2px solid #bfcedc; }
#tickets-app .kiosk-sms-overlay { position:absolute; inset:0; background:rgba(242,248,252,.65); display:flex; align-items:center; justify-content:center; padding:16px; }
#tickets-app .kiosk-sms-verification { width:min(650px,100%); text-align:center; background:#fffef1; border:3px solid #102d5b; box-shadow:7px 7px #00bddb; padding:28px; }
#tickets-app .kiosk-sms-verification .sms-primary-btn { width:100%; margin-top:24px; }
#tickets-app .kiosk-sms-verification .sms-actions { display:flex; justify-content:center; gap:20px; margin-top:18px; }
@media(max-width:760px){#tickets-app .kiosk-sms-verification{padding:18px;}#tickets-app .skeleton-cards{grid-template-columns:1fr;}#tickets-app .kiosk-sms-recognition{min-height:600px;}}
#tickets-app .kiosk-sms-verification{box-sizing:border-box;max-width:520px;padding:22px;}
#tickets-app .kiosk-sms-verification h2{margin:0 0 14px;}
#tickets-app .kiosk-sms-verification p{margin:10px 0;}
#tickets-app .kiosk-sms-verification .sms-actions{display:flex;gap:10px;}
#tickets-app .kiosk-sms-verification .sms-actions button{width:auto;flex:1;margin:0;padding:10px;}
#tickets-app .kiosk-sms-recognition{min-height:620px;width:100%;}
#tickets-app .kiosk-sms-verification .digit-box{min-width:0;}
@media(max-width:600px){#tickets-app .kiosk-sms-overlay{padding:10px;}#tickets-app .kiosk-sms-verification{padding:14px;}#tickets-app .kiosk-sms-verification .digit-row{gap:5px;}}
/* Paid website receipt: the same navy, cyan and yellow language as the kiosk. */
.fec-ticket-confirmation{background:#092553!important;color:#fff!important;border:2px solid #092553;box-shadow:6px 6px 0 #00b8d8;padding:28px!important}
.fec-ticket-confirmation .fec-ticket-heading{display:block!important;text-align:left!important}
.fec-ticket-confirmation .fec-ticket-sharky{display:none}
.fec-ticket-confirmation #fec-ticket-confirmation-title{color:#fff000!important;font-family:'Barlow Condensed',sans-serif!important;font-size:clamp(36px,5vw,64px)!important;line-height:1.05!important;margin:8px 0!important;-webkit-text-stroke:0!important;text-shadow:none!important}
.fec-ticket-confirmation .fec-ticket-kicker{color:#fff!important;letter-spacing:.12em;font-weight:800}
.fec-ticket-arrival-note{font-size:22px;font-weight:700}
.fec-ticket-confirmation .fec-ticket-details-card{background:#fff!important;color:#092553!important;border:0!important;box-shadow:none!important}
.fec-ticket-inline-consent{background:#fff!important;color:#092553!important;border:2px solid #092553;border-bottom:8px solid #00b8d8;padding:24px!important;display:grid!important;grid-template-columns:minmax(90px,180px) minmax(0,1fr);gap:16px;max-width:100%;box-sizing:border-box}
.fec-ticket-sms-intro{grid-column:1/-1}
.fec-ticket-sms-intro h3{font-size:clamp(28px,4vw,42px)!important;line-height:1.1!important;margin:8px 0!important;color:#092553!important}
.fec-ticket-confirmation .fec-ticket-sms-intro .fec-ticket-kicker{color:#092553!important}
.fec-ticket-confirmation,.fec-ticket-inline-consent,.fec-ticket-inline-consent .fec-preferences-choice,.fec-ticket-inline-consent button{border-radius:0!important}
.fec-ticket-inline-consent .fec-ticket-boy{width:100%!important;max-height:300px;object-fit:contain;position:static!important}
.fec-ticket-inline-consent .fec-preferences{min-width:0;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important}
.fec-ticket-inline-consent .fec-preferences-actions button{background:#fff000!important;color:#092553!important;border:2px solid #092553!important;box-shadow:4px 4px 0 #092553;font-weight:800;min-height:52px}
.fec-ticket-inline-consent .fec-preferences-choice{background:#e1f8fc!important;border:2px solid #092553!important;padding:14px!important}
.fec-ticket-inline-consent .fec-preferences-choice strong{font-size:17px;line-height:1.35}
.fec-ticket-inline-consent .fec-preferences-detail,.fec-ticket-inline-consent .fec-preferences-terms{font-size:12px!important;line-height:1.5!important}
.fec-ticket-inline-consent .fec-preferences-choice input{width:24px;height:24px;flex-shrink:0}
@media(max-width:600px){.fec-ticket-confirmation{padding:16px!important}.fec-ticket-inline-consent{grid-template-columns:minmax(0,1fr);padding:16px!important}.fec-ticket-inline-consent .fec-ticket-boy{display:none}.fec-ticket-qr-card{max-width:100%;box-sizing:border-box}}
