.elementor-kit-6{--e-global-color-primary:#FFC629;--e-global-color-secondary:#0E0D0B;--e-global-color-text:#EDE7DA;--e-global-color-accent:#8B5CF6;--e-global-color-gst_wood:#1C1712;--e-global-color-gst_cream:#F6F1E7;--e-global-color-gst_muted:#A39A8B;--e-global-typography-primary-font-family:"Anton";--e-global-typography-primary-font-size:72px;--e-global-typography-primary-font-weight:400;--e-global-typography-primary-text-transform:uppercase;--e-global-typography-primary-line-height:0.95em;--e-global-typography-secondary-font-family:"Inter";--e-global-typography-secondary-font-size:22px;--e-global-typography-secondary-font-weight:700;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-size:17px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.65em;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-size:13px;--e-global-typography-accent-font-weight:800;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-letter-spacing:3px;background-color:#0E0D0B;color:#EDE7DA;font-family:"Inter", Sans-serif;font-size:17px;}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{background-color:#FFC629;font-family:"Inter", Sans-serif;font-weight:800;color:#0E0D0B;border-radius:999px 999px 999px 999px;}.elementor-kit-6 button:hover,.elementor-kit-6 button:focus,.elementor-kit-6 input[type="button"]:hover,.elementor-kit-6 input[type="button"]:focus,.elementor-kit-6 input[type="submit"]:hover,.elementor-kit-6 input[type="submit"]:focus,.elementor-kit-6 .elementor-button:hover,.elementor-kit-6 .elementor-button:focus{background-color:#FFD45C;color:#0E0D0B;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 a{color:#FFC629;}.elementor-kit-6 a:hover{color:#F6F1E7;}.elementor-kit-6 h1{color:#EDE7DA;font-family:"Anton", Sans-serif;}.elementor-kit-6 h2{color:#EDE7DA;font-family:"Anton", Sans-serif;}.elementor-kit-6 h3{color:#EDE7DA;font-family:"Inter", Sans-serif;font-weight:800;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1240px;}.e-con{--container-max-width:1240px;}.elementor-widget:not(:last-child){--kit-widget-spacing:16px;}.elementor-element{--widgets-spacing:16px 16px;--widgets-spacing-row:16px;--widgets-spacing-column:16px;}{}h1.entry-title{display:var(--page-title-display);}.elementor-lightbox{background-color:rgba(14,13,11,0.96);--lightbox-ui-color:#EDE7DA;--lightbox-ui-color-hover:#FFC629;}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS */.elementor-kit-6, body { -webkit-font-smoothing: antialiased; }
html { scroll-behavior: smooth; }
/* Nothing may widen the page on phones (tilted ticker, closed mobile menu): clip instead of scroll */
html, body { overflow-x: clip; max-width: 100%; }
.elementor-location-header, .elementor-location-footer, .elementor[data-elementor-type="wp-page"] { overflow-x: clip; }
.e-con[id] { scroll-margin-top: 90px; }
::selection { background: #FFC629; color: #0E0D0B; }
.gst-y { color: #FFC629; }
.gst-label .elementor-heading-title { display: inline-flex; align-items: center; gap: 10px; }
.gst-label .elementor-heading-title::before { content: ""; width: 28px; height: 2px; background: currentColor; }
.elementor-widget-heading.gst-label[style*="center"] .elementor-heading-title::before, .gst-label.elementor-align-center .elementor-heading-title::before { display: none; }

/* Header: transparent over hero, glass on scroll */
.gst-header { transition: background .35s ease, backdrop-filter .35s ease, padding .35s ease; }
.gst-header.elementor-sticky--effects { background: rgba(14,13,11,.78) !important; backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); padding-top: 10px !important; padding-bottom: 10px !important; box-shadow: 0 1px 0 rgba(255,198,41,.12); }
.elementor-nav-menu--dropdown.elementor-nav-menu__container { padding: 18px 0 28px; border-top: 1px solid rgba(255,198,41,.2); box-shadow: 0 40px 80px -20px rgba(0,0,0,.8); }

/* Buttons */
.gst-btn .elementor-button { border-radius: 999px; padding: 17px 30px; font-family: Inter, sans-serif; font-weight: 800; font-size: 14px; letter-spacing: 1.5px; text-transform: uppercase; transition: transform .25s ease, box-shadow .25s ease, background .25s ease, color .25s ease; }
.gst-btn-primary .elementor-button { background: #FFC629; color: #0E0D0B; box-shadow: 0 10px 40px -10px rgba(255,198,41,.6); }
.gst-btn-primary .elementor-button:hover { transform: translateY(-2px); box-shadow: 0 16px 50px -10px rgba(255,198,41,.85); background: #FFD45C; color: #0E0D0B; }
.gst-btn-dark .elementor-button { background: #0E0D0B; color: #FFC629; }
.gst-btn-dark .elementor-button:hover { transform: translateY(-2px); background: #000; color: #FFC629; }
.gst-btn-ghost .elementor-button:hover { transform: translateY(-2px); }
.elementor-button-sm.elementor-button, .elementor-size-sm.elementor-button { padding: 12px 22px !important; }

/* Hero */
.gst-hero { overflow: hidden; }
.gst-hero::after { content: ""; position: absolute; inset: auto -20% -40% -20%; height: 70%; background: radial-gradient(ellipse at center, rgba(139,92,246,.35), transparent 60%); pointer-events: none; z-index: 0; }
.gst-hero > .e-con-inner { position: relative; z-index: 1; }
.gst-hero-title .elementor-heading-title { text-shadow: 0 10px 60px rgba(0,0,0,.45); }
/* short laptop screens: keep the countdown above the fold */
@media (min-width: 1025px) and (max-height: 820px) { .gst-hero-title .elementor-heading-title { font-size: 88px !important; } }
.gst-countdown .elementor-countdown-item { backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); }
.gst-page-hero .elementor-heading-title { text-wrap: balance; }
.gst-lead { max-width: 720px; }

/* Marquee */
.gst-marquee { overflow: hidden; background: #FFC629; color: #0E0D0B; padding: 18px 0; transform: rotate(-1.2deg); margin: -14px -10px; box-shadow: 0 20px 60px -20px rgba(255,198,41,.5); position: relative; z-index: 3; }
.gst-marquee__track { display: inline-flex; gap: 34px; white-space: nowrap; animation: gst-marquee 38s linear infinite; font-family: Anton, sans-serif; font-size: 30px; text-transform: uppercase; letter-spacing: 1px; }
.gst-marquee__track i { font-style: normal; opacity: .55; }
.gst-marquee--secondary { background: #0E0D0B; color: #FFC629; transform: rotate(1.2deg); box-shadow: 0 0 0 1px rgba(255,198,41,.25); }
.gst-marquee--secondary .gst-marquee__track { animation-direction: reverse; }
@keyframes gst-marquee { to { transform: translateX(-50%); } }
/* "Reduce motion" on the device: keep the ticker moving, just much slower */
@media (prefers-reduced-motion: reduce) { .gst-marquee__track { animation-duration: 110s; } }

/* Floating trailer button (home page): desktop right edge, vertically centred; phones bottom centre once the hero buttons are out of view */
.gst-fab { position: fixed; z-index: 98; display: inline-flex; align-items: center; gap: 9px;
  padding: 7px 16px 7px 7px; border-radius: 999px; background: #FFC629; color: #0E0D0B !important; font: 800 12.5px/1 Inter, sans-serif;
  letter-spacing: 0.8px; text-transform: uppercase; text-decoration: none; box-shadow: 0 14px 40px -10px rgba(255,198,41,.7), 0 0 0 1px rgba(0,0,0,.2);
  transition: transform .35s cubic-bezier(.2,.7,.2,1), opacity .35s ease, box-shadow .25s ease; }
.gst-fab__txt { white-space: nowrap; }
.gst-fab__play { position: relative; display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: #0E0D0B; color: #FFC629; }
.gst-fab__play::after { content: ""; position: absolute; inset: -4px; border-radius: 50%; border: 2px solid rgba(14,13,11,.55); animation: gst-pulse 1.8s ease-out infinite; }
@keyframes gst-pulse { from { transform: scale(.85); opacity: 1; } to { transform: scale(1.35); opacity: 0; } }
@media (min-width: 768px) {
  .gst-fab { right: 24px; top: 50%; transform: translateY(-50%); }
  .gst-fab:hover { transform: translateY(-50%) translateX(-4px); box-shadow: 0 20px 50px -10px rgba(255,198,41,.9); }
}
@media (max-width: 767px) {
  .gst-fab { left: 50%; bottom: calc(18px + env(safe-area-inset-bottom)); font-size: 12px; transform: translate(-50%, 24px); opacity: 0; pointer-events: none; }
  .gst-fab.is-visible { transform: translate(-50%, 0); opacity: 1; pointer-events: auto; }
}
/* trailer is vertical (9:16): size the lightbox player accordingly instead of Elementor's 16:9 box */
.elementor-lightbox .elementor-video-container { width: min(92vw, calc(84vh * 9 / 16)) !important; }
.elementor-lightbox .elementor-video-wrapper { --video-aspect-ratio: 0.5625 !important; aspect-ratio: 9 / 16; width: 100% !important; height: auto !important; }
.elementor-lightbox .elementor-video-wrapper video { width: 100%; height: 100%; object-fit: cover; border-radius: 14px; }

/* Notice that the shown programme is last year's */
.gst-note p { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; margin: 0; padding: 12px 18px; border: 1px solid rgba(255,198,41,.35);
  border-radius: 14px; background: rgba(255,198,41,.06); color: #EDE7DA; font-size: 15px; line-height: 1.5; }
.gst-note__tag { padding: 4px 10px; border-radius: 999px; background: #FFC629; color: #0E0D0B; font-weight: 800; font-size: 11px; letter-spacing: 1.5px; text-transform: uppercase; white-space: nowrap; }

/* Cards & tiles */
.gst-card, .gst-tile, .gst-year { transition: transform .45s cubic-bezier(.2,.7,.2,1), box-shadow .45s ease, border-color .45s ease; }
.gst-card:hover, .gst-tile:hover { transform: translateY(-8px); box-shadow: 0 30px 70px -30px rgba(255,198,41,.35); border-color: rgba(255,198,41,.4) !important; }
.gst-card__img { overflow: hidden; }
.gst-year { overflow: hidden; color: inherit; }
.gst-year:hover { transform: translateY(-6px) scale(1.01); box-shadow: 0 30px 70px -30px rgba(255,198,41,.45); }
.gst-year .gst-label .elementor-heading-title::before { display: none; }
.gst-year:hover .elementor-heading-title { color: #FFC629 !important; }
.gst-tilt { transition: transform .8s cubic-bezier(.2,.7,.2,1); }
.gst-tilt:hover { transform: rotate(-1deg) scale(1.01); }

/* Timeline */
.gst-timeline { position: relative; }
.gst-tl-item { position: relative; border-left: 2px solid rgba(255,198,41,.22); }
.gst-tl-item::before { content: ""; position: absolute; left: -9px; top: 6px; width: 16px; height: 16px; border-radius: 50%; background: #FFC629; box-shadow: 0 0 0 6px rgba(255,198,41,.15), 0 0 30px rgba(255,198,41,.6); }
@media (min-width: 1025px) { .gst-sticky-col { position: sticky; top: 110px; align-self: flex-start; } }
.gst-daynav .elementor-button { padding: 12px 24px !important; }
.gst-polaroid img { transform: rotate(-3deg); border: 10px solid #F6F1E7; box-shadow: 0 30px 60px -20px rgba(0,0,0,.6); }

/* Stats */
.gst-stats .elementor-counter { align-items: flex-start; }
.gst-stats .elementor-counter-title { opacity: .7; }

/* Gallery */
.elementor-gallery-item { border-radius: 10px; overflow: hidden; }

/* CTA */
.gst-cta { background-image: radial-gradient(circle at 20% 20%, rgba(255,255,255,.35), transparent 40%), radial-gradient(circle at 80% 90%, rgba(255,140,0,.35), transparent 45%); }

@media (max-width: 767px) {
  .gst-marquee__track { font-size: 22px; gap: 22px; }
  .gst-tl-item { padding-left: 26px !important; }
}/* End custom CSS */