/* Shared public shell: identical ticker, navigation and footer on every public page. */
html{scrollbar-gutter:stable}
.top-trust-bar.announcement-ticker,body.ticket-home .top-trust-bar.announcement-ticker{display:block!important;position:relative!important;z-index:1080;height:var(--ticker-height,45px)!important;min-height:var(--ticker-height,45px)!important;padding:0!important;overflow:hidden;border:0!important;outline:0!important;background:#102e50!important;box-shadow:none!important;isolation:isolate}
.announcement-ticker-viewport,.announcement-ticker-track,.announcement-ticker-group,body.ticket-home .announcement-ticker-viewport,body.ticket-home .announcement-ticker-track,body.ticket-home .announcement-ticker-group{height:100%!important}
.announcement-ticker-track,body.ticket-home .announcement-ticker-track{animation-timing-function:linear!important;will-change:transform;backface-visibility:hidden;transform:translate3d(0,0,0)}
.announcement-ticker-item,body.ticket-home .announcement-ticker-item{min-height:100%!important;padding:0 24px!important;color:var(--announcement-color,#fff)!important;background:var(--announcement-bg,#102e50)!important;font-size:var(--ticker-font-size,12px)!important}
.announcement-ticker-item strong{font-weight:750}.announcement-ticker-icon,body.ticket-home .announcement-ticker-icon{color:inherit!important}.announcement-ticker-separator{height:14px!important;background:rgba(255,255,255,.32)!important}

/* Keep the moving ticker free from dark focus/compositing edge flashes. */
.announcement-ticker-viewport,.announcement-ticker-track,.announcement-ticker-group,.announcement-ticker-item{border:0!important;outline:0!important}
.announcement-ticker-track,.announcement-ticker-group{gap:0;backface-visibility:hidden;-webkit-backface-visibility:hidden}
.announcement-ticker-item{gap:8px;margin-right:-1px;box-shadow:none!important}
.announcement-ticker-item a,.announcement-ticker-item a:hover,.announcement-ticker-item a:focus,.announcement-ticker-item a:focus-visible{border-color:rgba(255,255,255,.48)!important;color:inherit!important;outline:0!important;box-shadow:none!important}

.navbar-wrapper,.navbar-wrapper.is-scrolled{position:sticky!important;top:0!important;z-index:1070;padding:0!important;border:0!important;border-bottom:1px solid #e7ebf1!important;background:rgba(255,255,255,.98)!important;box-shadow:none!important;transition:box-shadow .2s ease,border-color .2s ease}
.navbar-wrapper.is-scrolled{border-bottom-color:transparent!important;box-shadow:0 10px 28px rgba(12,35,69,.1)!important}
.navbar-wrapper>.container{width:100%;max-width:1320px!important;padding-inline:22px!important;pointer-events:auto}
.navbar-main,.navbar-main.navbar-scrolled,.navbar-main[style]{position:relative;width:100%!important;max-width:none!important;min-height:72px!important;margin:0 auto;padding:7px 0!important;border:0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important;backdrop-filter:none!important;transition:color .2s ease,background-color .2s ease,border-color .2s ease,box-shadow .2s ease!important}
.navbar-brand{margin-left:0!important;gap:11px!important}.navbar-main .navbar-brand .brand-icon{width:44px!important;height:44px!important;flex:0 0 44px!important;border-radius:13px;background:linear-gradient(145deg,#ec0754,#ff5b82)!important;box-shadow:0 10px 24px rgba(245,6,87,.22)!important}.navbar-main .navbar-brand .brand-icon svg{width:22px!important;height:22px!important;flex:0 0 22px!important;color:#fff!important}.brand-name{font-size:1.2rem!important;line-height:1!important}.brand-tagline{font-size:.59rem!important;line-height:1.5!important}
.site-header-logo-box{display:flex;width:var(--site-header-logo-width,180px);min-width:var(--site-header-logo-width,180px);height:var(--site-header-logo-height,48px);flex:0 0 var(--site-header-logo-width,180px);align-items:center;justify-content:flex-start;overflow:hidden}.site-header-logo{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:left center}
.nav-link-custom,.nav-link-custom.active-link{font-size:.92rem!important;font-weight:700!important;line-height:1.35}.nav-link-custom.active-link{color:#f50657!important}.nav-link-custom.active-link:after{background:#f50657!important}.nav-phone-btn{width:42px;height:42px}.navbar-main .btn-nav-bookings,.ticket-home .navbar-main .btn-nav-bookings{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:9px!important;width:148px!important;min-width:148px!important;height:46px!important;min-height:46px!important;padding:0 18px!important;border:0!important;border-radius:13px!important;box-sizing:border-box!important;flex:0 0 148px!important;font-size:.82rem!important;font-weight:700!important;line-height:1!important;white-space:nowrap!important;background:var(--brand-gradient)!important;color:#fff!important;box-shadow:0 10px 24px color-mix(in srgb,var(--brand-primary) 24%,transparent)!important}.navbar-main .btn-nav-bookings svg,.ticket-home .navbar-main .btn-nav-bookings svg{width:16px!important;height:16px!important;flex:0 0 16px!important}

@media(min-width:992px){
    .navbar-main .navbar-collapse{position:static;display:flex!important;min-width:0}
    .navbar-main .navbar-nav{position:absolute;left:50%;margin:0!important;transform:translateX(-50%);gap:34px!important}
    .navbar-main .nav-link-custom{padding:13px 2px!important}
    .navbar-main .navbar-collapse>div:last-child{margin-left:auto!important;margin-right:0!important;gap:11px!important}
}

.site-footer-v2,body.ticket-home .site-footer-v2{padding-top:38px!important;color:var(--footer-text,#fff)!important;background:radial-gradient(circle at 88% 8%,color-mix(in srgb,var(--footer-accent,#f50657) 20%,transparent),transparent 31%),linear-gradient(118deg,var(--footer-bg-start,#07284d) 0%,color-mix(in srgb,var(--footer-bg-start,#07284d) 70%,var(--footer-bg-end,#2a1438)) 62%,var(--footer-bg-end,#2a1438) 100%)!important}
.footer-grid-v2{max-width:1320px;margin:0 auto 30px;grid-template-columns:1.55fr 1fr .8fr 1.1fr 1.2fr;gap:34px}.footer-brand-icon{background:linear-gradient(145deg,#ec0754,#ff4d79)!important;box-shadow:0 10px 22px rgba(245,6,87,.2)}
@media(min-width:768px){.footer-grid-v2.footer-columns-0{grid-template-columns:1fr!important}.footer-grid-v2.footer-columns-1{grid-template-columns:1.55fr 1fr!important}.footer-grid-v2.footer-columns-2{grid-template-columns:1.55fr repeat(2,minmax(0,1fr))!important}.footer-grid-v2.footer-columns-3{grid-template-columns:1.55fr repeat(3,minmax(0,1fr))!important}.footer-grid-v2.footer-columns-4{grid-template-columns:1.55fr 1fr .8fr 1.1fr 1.2fr!important}}
.site-footer-logo-box{display:flex;width:var(--site-footer-logo-width,180px);height:var(--site-footer-logo-height,54px);flex:0 0 auto;align-items:center;justify-content:flex-start;overflow:hidden}.site-footer-logo{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:left center}
.site-footer-v2 .footer-brand-name,.site-footer-v2 .footer-heading-v2,.site-footer-v2 .footer-copyright,.site-footer-v2 .footer-payments{color:var(--footer-text,#fff)!important}.site-footer-v2 .footer-brand-tagline,.site-footer-v2 .footer-brand-desc,.site-footer-v2 .footer-links-v2 a,.site-footer-v2 .footer-contact-v2,.site-footer-v2 .footer-contact-v2 a{color:color-mix(in srgb,var(--footer-text,#fff) 76%,transparent)!important}.site-footer-v2 .footer-heading-v2:after,body.ticket-home .site-footer-v2 .footer-heading-v2:after{background:var(--footer-accent,#f50657)!important}.site-footer-v2 .footer-links-v2 a:hover,.site-footer-v2 .footer-contact-v2 a:hover,body.ticket-home .site-footer-v2 .footer-links-v2 a:hover,body.ticket-home .site-footer-v2 .footer-contact-v2 a:hover{color:var(--footer-accent,#ff6b96)!important}.site-footer-v2 .footer-social-icon,body.ticket-home .site-footer-v2 .footer-social-icon{color:var(--footer-text,#fff)!important;background:color-mix(in srgb,var(--footer-accent,#f50657) 20%,transparent)!important}.site-footer-v2 .footer-social-icon:hover{background:var(--footer-accent,#f50657)!important}
.site-footer-v2 .footer-disclaimer{color:color-mix(in srgb,var(--footer-text,#fff) 68%,transparent)!important}.site-footer-v2 .footer-disclaimer strong{color:var(--footer-text,#fff)!important}
.footer-brand-desc{font-size:.7rem;line-height:1.65}.footer-heading-v2{font-size:.82rem}.footer-links-v2,.footer-contact-v2{gap:8px}.footer-links-v2 a,.footer-contact-v2{font-size:.68rem}.footer-bottom-v2{padding:16px 0}
main>.booking-page{padding-top:28px!important}

@media(max-width:991.98px){
    .top-trust-bar.announcement-ticker,body.ticket-home .top-trust-bar.announcement-ticker{position:fixed!important;top:0;right:0;left:0;z-index:1100;height:var(--announcement-ticker-height,var(--ticker-height,45px))!important;min-height:var(--announcement-ticker-height,var(--ticker-height,45px))!important}
    .announcement-ticker-viewport,.announcement-ticker-track,.announcement-ticker-group,body.ticket-home .announcement-ticker-viewport,body.ticket-home .announcement-ticker-track,body.ticket-home .announcement-ticker-group{height:100%!important}
    .announcement-ticker-track,body.ticket-home .announcement-ticker-track{display:flex!important;width:max-content!important;animation:announcementTicker var(--ticker-duration,24000ms) linear infinite!important}
    .announcement-ticker-group,body.ticket-home .announcement-ticker-group,.announcement-ticker-group:first-child,body.ticket-home .announcement-ticker-group:first-child{display:flex!important;width:auto!important;min-width:0!important}
    .announcement-ticker-group .announcement-ticker-item,body.ticket-home .announcement-ticker-group .announcement-ticker-item,.announcement-ticker-group:first-child .announcement-ticker-item,body.ticket-home .announcement-ticker-group:first-child .announcement-ticker-item{display:inline-flex!important;min-height:100%!important;padding-inline:14px!important;font-size:var(--ticker-font-size,12px)!important}
    .navbar-wrapper,.navbar-wrapper.is-scrolled,body.ticket-home .navbar-wrapper,body.ticket-home .navbar-wrapper.is-scrolled{position:fixed!important;top:var(--announcement-ticker-height,45px)!important;right:0;left:0;z-index:1090}.navbar-wrapper.no-announcement,.navbar-wrapper.no-announcement.is-scrolled,body.ticket-home .navbar-wrapper.no-announcement,body.ticket-home .navbar-wrapper.no-announcement.is-scrolled{top:0!important}
    body main,body.ticket-home main{padding-top:calc(var(--announcement-ticker-height,45px) + 66px)}body:has(.navbar-wrapper.no-announcement) main,body.ticket-home:has(.navbar-wrapper.no-announcement) main{padding-top:66px}
    main>.booking-page{padding-top:20px!important}
    .navbar-wrapper>.container{max-width:100%!important;padding-inline:16px!important}
    .navbar-main,.navbar-main.navbar-scrolled,.navbar-main[style]{min-height:66px!important;padding:7px 0!important}
    .navbar-brand{gap:10px!important}.navbar-main .navbar-brand .brand-icon{width:42px!important;height:42px!important;flex-basis:42px!important}.navbar-main .navbar-brand .brand-icon svg{width:21px!important;height:21px!important;flex-basis:21px!important}.site-header-logo-box{width:min(var(--site-header-logo-width,180px),190px);min-width:min(var(--site-header-logo-width,180px),190px);height:min(var(--site-header-logo-height,48px),44px);flex-basis:min(var(--site-header-logo-width,180px),190px)}.brand-name{font-size:1.12rem!important}.brand-tagline{display:block;max-width:190px;font-size:.53rem!important}.navbar-toggler{margin-right:0!important}
    .navbar-collapse{margin-inline:-16px;padding:12px 16px 18px;border-top:1px solid #edf0f4;background:#fff}.navbar-main .navbar-collapse>div:last-child{margin-right:0!important}
    .hero-section-v2{padding-top:38px!important}
}
.announcement-ticker.pauses-on-hover .announcement-ticker-track:hover,.announcement-ticker.pauses-on-hover .announcement-ticker-track:focus-within,.announcement-ticker.is-interacting .announcement-ticker-track,.announcement-ticker.is-page-hidden .announcement-ticker-track{animation-play-state:paused!important}
@media(prefers-reduced-motion:reduce){.announcement-ticker-track,body.ticket-home .announcement-ticker-track{animation-play-state:paused!important}}

@media(max-width:767.98px){
    .site-footer-v2{padding:38px 0 0!important}.site-footer-v2>.container,.footer-bottom-v2>.container{padding-inline:22px!important}
    .footer-grid-v2{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:28px 22px!important;margin-bottom:32px!important;text-align:left!important;justify-items:stretch!important}
    .footer-brand-col{grid-column:1/-1!important;text-align:left!important;justify-items:start!important}.footer-col:nth-child(4),.footer-col:nth-child(5){grid-column:1/-1}
    .footer-brand-link{justify-content:flex-start!important}.footer-brand-desc{max-width:360px;margin:15px 0 0;font-size:.8rem;line-height:1.65;text-align:left!important}
    .footer-heading-v2{justify-content:flex-start!important;align-items:flex-start!important;margin-bottom:15px;font-size:.9rem;text-align:left!important}.footer-heading-v2:after{margin:8px 0 0!important}
    .footer-links-v2,.footer-contact-v2{align-items:flex-start!important;justify-content:flex-start!important;gap:10px!important;text-align:left!important}.footer-links-v2 a,.footer-contact-v2,.footer-contact-v2 a{font-size:.78rem!important}.footer-contact-v2 li{justify-content:flex-start!important;text-align:left!important}
    .footer-bottom-inner-v2{align-items:center!important;justify-content:center!important;gap:16px!important;text-align:center!important}.footer-copyright{width:100%;margin:0;text-align:center!important;font-size:.74rem!important}.footer-payments{width:100%;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:12px!important;text-align:center!important}.footer-payments-label{width:100%;order:1;text-align:center}.footer-payment-methods-img{order:2!important;display:block!important;width:142px!important;max-width:142px!important;flex:0 0 auto!important;margin:0 auto!important}.footer-secure{order:3!important;margin:0 auto!important}

    .ticket-home .ty-service-card{display:block!important;padding:0!important;overflow:hidden;border:2px dashed #cfe5fb!important;border-radius:18px!important;background:#fff;box-shadow:0 12px 30px rgba(24,55,91,.06)!important}
    .ticket-home .ty-service-image{display:flex!important;height:205px!important;min-height:0!important;margin:10px 10px 0!important;border-radius:15px!important;background:linear-gradient(145deg,#f7fbff,#fff6fa)!important}
    .ticket-home .ty-service-image img{object-fit:contain!important;padding:4px!important}
    .ticket-home .ty-service-body{padding:11px 15px 15px!important}.ticket-home .ty-service-body h3{font-size:1rem!important}.ticket-home .ty-service-body>p{min-height:0!important;font-size:.71rem!important;line-height:1.5!important}.ticket-home .ty-service-footer>a{min-width:108px!important;padding:10px 13px!important;font-size:.68rem!important}
}

@media(max-width:420px){
    .navbar-wrapper>.container{padding-inline:12px!important}.navbar-collapse{margin-inline:-12px;padding-inline:12px}.brand-info{min-width:0}.brand-tagline{max-width:170px}
    .site-footer-v2>.container,.footer-bottom-v2>.container{padding-inline:18px!important}
}

@media(max-width:480px){
    .announcement-ticker.mode-single .announcement-ticker-item,.announcement-ticker.mode-multiple .announcement-ticker-item,body.ticket-home .announcement-ticker.mode-single .announcement-ticker-item,body.ticket-home .announcement-ticker.mode-multiple .announcement-ticker-item{width:max-content!important;min-width:100vw!important;flex:0 0 auto!important;padding-inline:22px!important}
    .announcement-ticker-item strong,.announcement-ticker-item:has(a) strong,body.ticket-home .announcement-ticker-item strong{max-width:none!important;overflow:visible!important;text-overflow:clip!important}
}

/* One stable public header geometry across home, service and account pages. */
.navbar-wrapper>.container,body.ticket-home .navbar-wrapper>.container{width:100%!important;max-width:1320px!important;padding-inline:22px!important}
.navbar-main,.navbar-main.navbar-scrolled,.navbar-main[style],body.ticket-home .navbar-main,body.ticket-home .navbar-main.navbar-scrolled{width:100%!important;max-width:none!important;min-height:72px!important;margin:0!important;padding:7px 0!important;border:0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important}
.navbar-main .navbar-brand,body.ticket-home .navbar-main .navbar-brand{margin-left:0!important;gap:11px!important;flex:0 0 auto}
.navbar-main .navbar-collapse>div:last-child,body.ticket-home .navbar-main .navbar-collapse>div:last-child{margin-right:0!important;margin-left:auto!important;gap:11px!important;flex-wrap:nowrap!important}
@media(min-width:992px){
 .navbar-main .navbar-collapse,body.ticket-home .navbar-main .navbar-collapse{position:static!important;display:flex!important;min-width:0!important}
 .navbar-main .navbar-nav,body.ticket-home .navbar-main .navbar-nav{position:absolute!important;left:50%!important;margin:0!important;transform:translateX(-50%)!important;gap:34px!important}
}
@media(max-width:991.98px){
 .navbar-wrapper>.container,body.ticket-home .navbar-wrapper>.container{max-width:100%!important;padding-inline:16px!important}
 .navbar-main,.navbar-main.navbar-scrolled,.navbar-main[style],body.ticket-home .navbar-main,body.ticket-home .navbar-main.navbar-scrolled{min-height:66px!important;padding:7px 0!important}
 .navbar-main .navbar-collapse>div:last-child,body.ticket-home .navbar-main .navbar-collapse>div:last-child{width:100%;flex-wrap:wrap!important}
}
@media(max-width:420px){.navbar-wrapper>.container,body.ticket-home .navbar-wrapper>.container{padding-inline:12px!important}}
