.elementor-kit-6{--e-global-color-primary:#FF3B00;--e-global-color-secondary:#5D29FF;--e-global-color-text:#0A0A0A;--e-global-color-accent:#0A0A0A;--e-global-color-gtsgrey:#F0EEEE;--e-global-color-gtswhite:#FFFFFF;--e-global-color-gtsnight:#0D0D0D;--e-global-color-gtsivory:#EDEBE8;--e-global-color-gtsmuted:#3F3D3A;--e-global-color-gtsmuted2:#A8A39C;--e-global-color-gtsword:#D2CFCC;--e-global-typography-primary-font-family:"Space Grotesk";--e-global-typography-primary-font-size:120px;--e-global-typography-primary-font-weight:700;--e-global-typography-primary-line-height:0.9em;--e-global-typography-primary-letter-spacing:-0.05em;--e-global-typography-secondary-font-family:"Space Grotesk";--e-global-typography-secondary-font-size:40px;--e-global-typography-secondary-font-weight:700;--e-global-typography-secondary-line-height:1em;--e-global-typography-secondary-letter-spacing:-0.04em;--e-global-typography-text-font-family:"Space Grotesk";--e-global-typography-text-font-size:17px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.5em;--e-global-typography-text-letter-spacing:0em;--e-global-typography-accent-font-family:"Space Grotesk";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:600;--e-global-typography-accent-line-height:1.2em;--e-global-typography-accent-letter-spacing:0em;--e-global-typography-gtsdisplay-font-family:"Space Grotesk";--e-global-typography-gtsdisplay-font-size:168px;--e-global-typography-gtsdisplay-font-weight:700;--e-global-typography-gtsdisplay-line-height:0.88em;--e-global-typography-gtsdisplay-letter-spacing:-0.055em;--e-global-typography-gtscta-font-family:"Space Grotesk";--e-global-typography-gtscta-font-size:180px;--e-global-typography-gtscta-font-weight:700;--e-global-typography-gtscta-text-transform:lowercase;--e-global-typography-gtscta-line-height:0.86em;--e-global-typography-gtscta-letter-spacing:-0.06em;--e-global-typography-gtslead-font-family:"Space Grotesk";--e-global-typography-gtslead-font-size:20px;--e-global-typography-gtslead-font-weight:400;--e-global-typography-gtslead-line-height:1.4em;--e-global-typography-gtslead-letter-spacing:0em;--e-global-typography-gtssmall-font-family:"Space Grotesk";--e-global-typography-gtssmall-font-size:14px;--e-global-typography-gtssmall-font-weight:400;--e-global-typography-gtssmall-line-height:1.4em;--e-global-typography-gtssmall-letter-spacing:0em;color:#0A0A0A;font-family:"Space Grotesk", system-ui, sans-serif;font-size:17px;line-height:1.5em;}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{background-color:#0A0A0A;font-family:"Space Grotesk", system-ui, sans-serif;font-size:16px;font-weight:600;color:#FFFFFF;border-radius:999px 999px 999px 999px;padding:16px 28px 16px 28px;}.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:#FF3B00;color:#0A0A0A;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 a{color:#0A0A0A;}.elementor-kit-6 a:hover{color:#FF3B00;}.elementor-kit-6 h1{font-family:"Space Grotesk", system-ui, sans-serif;font-weight:700;}.elementor-kit-6 h2{font-family:"Space Grotesk", system-ui, sans-serif;font-weight:700;}.elementor-kit-6 h3{font-family:"Space Grotesk", system-ui, sans-serif;font-weight:700;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1440px;}.e-con{--container-max-width:1440px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.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-kit-6{--e-global-typography-primary-font-size:80px;--e-global-typography-secondary-font-size:34px;--e-global-typography-text-font-size:17px;--e-global-typography-accent-font-size:16px;--e-global-typography-gtsdisplay-font-size:112px;--e-global-typography-gtscta-font-size:120px;--e-global-typography-gtslead-font-size:19px;--e-global-typography-gtssmall-font-size:14px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-6{--e-global-typography-primary-font-size:52px;--e-global-typography-secondary-font-size:30px;--e-global-typography-text-font-size:16px;--e-global-typography-accent-font-size:15px;--e-global-typography-gtsdisplay-font-size:64px;--e-global-typography-gtscta-font-size:64px;--e-global-typography-gtslead-font-size:18px;--e-global-typography-gtssmall-font-size:14px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ===== Good Times Studio – globale Animationen & Helfer =====
   Klassen im Elementor-Feld "CSS-Klassen" (Erweitert) vergeben.
   gts-spin   = langsam rotierend (Logo-Sticker)
   gts-word   = graues Wort wird beim Hover schwarz
   gts-card   = Leistungskarte, richtet sich beim Hover auf
   gts-tilt-1 … gts-tilt-6 = leichte Schräglage der Karten
   gts-work   = Projekt-Link; darin gts-frame = Bild, s/w -> farbig beim Hover
   gts-reveal = blendet beim Scrollen sanft ein
   gts-nav    = Navigation als Pills
*/
@keyframes gts-spin{to{transform:rotate(360deg)}}
@keyframes gts-fade{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}

.gts-spin{animation:gts-spin 18s linear infinite}

.gts-word .elementor-heading-title{transition:color .35s ease}
.gts-word:hover .elementor-heading-title{color:#0A0A0A !important}

.gts-tilt-1{transform:rotate(-1.5deg)}
.gts-tilt-2{transform:rotate(1deg)}
.gts-tilt-3{transform:rotate(-.5deg)}
.gts-tilt-4{transform:rotate(1.5deg)}
.gts-tilt-5{transform:rotate(-1deg)}
.gts-tilt-6{transform:rotate(.8deg)}
.gts-card{transition:transform .5s cubic-bezier(.3,1.6,.5,1)}
.gts-card:hover{transform:rotate(0deg) scale(1.03)}

.gts-work .gts-frame{overflow:hidden}
.gts-work .gts-frame,.gts-work .gts-frame::before{filter:grayscale(1);transition:filter .7s ease,transform 1s cubic-bezier(.16,1,.3,1)}
.gts-work:hover .gts-frame,.gts-work:hover .gts-frame::before{filter:none}
.gts-work:hover .gts-frame{transform:scale(1.015)}

@supports (animation-timeline: view()){
  .gts-reveal{animation:gts-fade linear both;animation-timeline:view();animation-range:entry 0% entry 100%}
}

.gts-nav .elementor-nav-menu--main .elementor-nav-menu{gap:8px}
.gts-nav .elementor-nav-menu--main .elementor-item{border:1.5px solid #0A0A0A;border-radius:999px;padding:10px 20px !important;margin:0;transition:background .3s,color .3s}
.gts-nav .elementor-nav-menu--main .elementor-item:hover,.gts-nav .elementor-nav-menu--main .elementor-item.elementor-item-active{background:#0A0A0A;color:#fff !important}
.gts-nav .elementor-nav-menu--main .menu-item:last-child .elementor-item{background:#FF3B00;border-color:#FF3B00;color:#0A0A0A}
.gts-nav .elementor-nav-menu--main .menu-item:last-child .elementor-item:hover{background:#0A0A0A;border-color:#0A0A0A;color:#fff !important}

/* gts-inset = farbige Sektion mit Abstand zum Rand (runde Fläche) */
.e-con.gts-inset{--width:auto}


/* gts-swipe = am Handy wischbare Reihe statt untereinander */
@media (max-width: 767px){
  .e-con.gts-swipe{display:flex !important;flex-direction:row !important;flex-wrap:nowrap !important;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:14px !important;margin-left:-20px;margin-right:-20px;padding:12px 28px 20px !important;scroll-padding-inline:28px;scrollbar-width:none;--width:calc(100% + 40px) !important;width:calc(100% + 40px) !important;max-width:none;min-width:0}
  .e-con.gts-swipe::-webkit-scrollbar{display:none}
  .e-con.gts-swipe > .e-con{flex:0 0 78% !important;width:78% !important;max-width:78%;scroll-snap-align:start;margin-top:0 !important}
  .gts-swipe .gts-card{min-height:230px}
}


/* Mobiles Menü: runder Burger-Button + großes Panel */
.gts-nav .elementor-menu-toggle{width:48px;height:48px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:999px}
.gts-nav .elementor-nav-menu--dropdown.elementor-nav-menu__container{background:#FFFFFF;padding:8px 20px 28px;border-bottom:1.5px solid #0A0A0A;box-shadow:0 24px 40px rgba(0,0,0,.08)}
.gts-nav .elementor-nav-menu--dropdown .menu-item{border-bottom:1px solid #E2DFDC}
.gts-nav .elementor-nav-menu--dropdown .elementor-item{display:flex;justify-content:space-between;border-radius:0}
.gts-nav .elementor-nav-menu--dropdown .elementor-item::after{content:"→";font-weight:400;opacity:.35}
.gts-nav .elementor-nav-menu--dropdown .menu-item:last-child{border-bottom:0;margin-top:20px}
.gts-nav .elementor-nav-menu--dropdown .menu-item:last-child .elementor-item{justify-content:center;background:#FF3B00 !important;border-radius:999px;font-size:22px !important}
.gts-nav .elementor-nav-menu--dropdown .menu-item:last-child .elementor-item::after{display:none}


/* Glas-Effekt
   gts-glass  = Pill/Label aus Glas (Klasse am Überschrift-Widget)
   gts-header = Header bleibt oben stehen, Inhalt läuft gläsern darunter durch */
.elementor-widget.gts-glass{background:linear-gradient(135deg,rgba(255,255,255,.75),rgba(240,238,238,.45)) !important;-webkit-backdrop-filter:blur(14px) saturate(170%);backdrop-filter:blur(14px) saturate(170%);border:1px solid rgba(255,255,255,.9);box-shadow:inset 0 1px 0 rgba(255,255,255,.95),inset 0 -1px 0 rgba(10,10,10,.04),0 6px 18px rgba(10,10,10,.08)}
.e-con.gts-header{background:transparent !important;border-bottom:1px solid transparent;transition:background .35s,box-shadow .35s,border-color .35s}
.e-con.gts-header.elementor-sticky--effects{background:rgba(255,255,255,.62) !important;-webkit-backdrop-filter:blur(18px) saturate(180%);backdrop-filter:blur(18px) saturate(180%);border-bottom-color:rgba(255,255,255,.7);box-shadow:0 8px 30px rgba(10,10,10,.06)}


/* Wortmarke im Header: schwarz, Buchstaben laufen nacheinander orange durch */
.gts-wm .gts-wordmark{display:block;width:230px;height:auto}
@media (max-width:767px){.gts-wm .gts-wordmark{width:210px}}
.gts-wm .gts-wm-l{fill:#0A0A0A;animation:gts-wm-wave 5s ease-in-out infinite;animation-delay:calc(var(--i) * .09s)}
@keyframes gts-wm-wave{0%,14%,100%{fill:#0A0A0A}5%,8%{fill:#FF3B00}}
.gts-wm-link:hover .gts-wm-l{animation-duration:1.6s}




/* ===== Animationen 1–7 (Steuerung per JS: Elementor > Custom Code "GTS Animationen") =====
   gts-eyes      = Logo mit beweglichen Pupillen (HTML-Widget)
   gts-cycle     = Container mit den 4 Intro-Wörtern, Wort-Scheinwerfer
   gts-frame     = Projektbild, bekommt Farb-Vorhang beim Reinscrollen
   gts-cta-pop   = Überschrift, Buchstaben springen beim Reinscrollen
   Buttons/Menü  = magnetisch, eigener Cursor + Seitenwechsel laufen automatisch */
.gts-eyes .gts-pupil{transition:transform .18s ease-out}
.gts-eyes .gts-pupil rect{transition:opacity .2s}
.gts-eyes.gts-looking .gts-pupil rect{opacity:0}
.gts-sticker{transition:transform .5s cubic-bezier(.34,1.56,.64,1)}
.gts-sticker:hover{transform:rotate(-8deg) scale(1.06)}

@keyframes gts-cyc{0%,22%{color:#0A0A0A}27%,95%{color:#D2CFCC}100%{color:#0A0A0A}}
.gts-cycle > .elementor-widget .elementor-heading-title{animation:gts-cyc 8s linear infinite}
.gts-cycle > .elementor-widget:nth-child(1) .elementor-heading-title{animation-delay:0s}
.gts-cycle > .elementor-widget:nth-child(2) .elementor-heading-title{animation-delay:2s}
.gts-cycle > .elementor-widget:nth-child(3) .elementor-heading-title{animation-delay:4s}
.gts-cycle > .elementor-widget:nth-child(4) .elementor-heading-title{animation-delay:6s}

html.gts-has-cursor,html.gts-has-cursor *{cursor:none !important}
.gts-cursor{position:fixed;left:0;top:0;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:999px;background:#FF3B00;pointer-events:none;z-index:100000;display:flex;align-items:center;justify-content:center;transition:width .3s,height .3s,margin .3s,background .3s,opacity .2s}
.gts-cursor span{opacity:0;font:700 13px/1 "Space Grotesk",sans-serif;color:#0A0A0A;transition:opacity .2s}
.gts-cursor.is-link{width:44px;height:44px;margin:-22px 0 0 -22px;background:rgba(255,59,0,.35)}
.gts-cursor.is-view{width:96px;height:96px;margin:-48px 0 0 -48px;background:#FF3B00}
.gts-cursor.is-view span{opacity:1}

.gts-cursor.on-orange{background:#0A0A0A}
.gts-cursor.on-orange.is-link{background:rgba(10,10,10,.28)}
.gts-cursor.on-orange.is-view{background:#0A0A0A}
.gts-cursor.on-orange span{color:#FFFFFF}

.gts-curtain{position:relative}
.gts-curtain::after{content:"";position:absolute;inset:0;background:#FF3B00;border-radius:inherit;transform:scaleY(1);transform-origin:top;transition:transform 1.1s cubic-bezier(.77,0,.18,1);z-index:3;pointer-events:none}
.gts-curtain.gts-curtain--alt::after{background:#5D29FF}
.gts-curtain.is-in::after{transform:scaleY(0)}

.gts-magnet{transition:transform .35s cubic-bezier(.34,1.56,.64,1),background-color .3s,color .3s,border-color .3s !important}

.gts-cta-pop .gts-w{display:inline-block;white-space:nowrap}
.gts-cta-pop .gts-ch{display:inline-block;transform:translateY(110%) rotate(12deg);opacity:0}
.gts-cta-pop.is-in .gts-ch{animation:gts-pop .9s cubic-bezier(.34,1.56,.64,1) forwards;animation-delay:calc(var(--i) * .035s)}
@keyframes gts-pop{to{transform:translateY(0) rotate(var(--r));opacity:1}}

.gts-burst{position:fixed;border-radius:50%;background:#FF3B00;z-index:99998;pointer-events:none;transform:scale(1);transition:transform .75s cubic-bezier(.7,0,.2,1)}

html.gts-trans-in::after{content:"";position:fixed;inset:0;background:#FF3B00;z-index:99998}
.gts-transition{position:fixed;inset:0;z-index:99999;background:#FF3B00;display:flex;align-items:center;justify-content:center;transform:translateY(100%);pointer-events:none}
.gts-transition .gts-transition-logo{width:min(56vw,460px)}
.gts-transition.is-covering{transform:translateY(0)}
.gts-transition.is-entering{transform:translateY(0);transition:transform .6s cubic-bezier(.77,0,.18,1)}
.gts-transition.is-leaving{transform:translateY(-100%);transition:transform .75s cubic-bezier(.77,0,.18,1) .2s}


/* Scrollbalken unter den mobilen Slidern (wird per JS angelegt) */
.gts-swipe-bar{display:none}
@media (max-width:767px){
  .gts-swipe-bar{display:block;position:relative;height:4px;margin:6px 8px 0;border-radius:99px;background:rgba(255,255,255,.22);overflow:hidden}
  .gts-swipe-bar span{display:block;height:100%;border-radius:99px;background:#FFFFFF;transition:transform .08s linear}
}


/* Intro-Wörter als Links: Pfeil beim Hovern */
.gts-word .elementor-heading-title a{color:inherit}
.gts-word .elementor-heading-title a::after{content:"→";display:inline-block;color:#FF3B00;font-size:.45em;margin-left:.2em;vertical-align:.35em;opacity:0;transform:translateX(-12px);transition:opacity .3s,transform .4s cubic-bezier(.34,1.56,.64,1)}
.gts-word:hover .elementor-heading-title a::after{opacity:1;transform:none}

/* Browser-Tab-Farbe: Safari nimmt die Seitenfarbe -> Lila als Grund, Inhalt weiß */
html{background-color:#5D29FF}
body{background-color:#FFFFFF}
.gts-transition{visibility:hidden}
.gts-transition.is-entering,.gts-transition.is-covering,.gts-transition.is-leaving{visibility:visible}


/* Kontakt-Karte im mobilen Menü (Container im Header, Klasse gts-menu-contact; per JS ins Menü verschoben) */
body:not(.elementor-editor-active) .gts-header > .gts-menu-contact{display:none !important}
.elementor-nav-menu--dropdown .gts-menu-contact{display:flex !important;margin-top:16px}
.gts-nav .elementor-nav-menu--dropdown.gts-has-contact .menu-item:last-child{display:none}
.elementor-nav-menu--dropdown .gts-menu-contact .elementor-button{background:#0A0A0A !important;color:#FFFFFF !important;border-radius:999px !important;padding:16px 24px !important;font-size:17px !important;font-weight:600 !important;justify-content:center}
.elementor-nav-menu--dropdown .gts-menu-contact .elementor-button:hover{background:#FFFFFF !important;color:#0A0A0A !important}
.elementor-nav-menu--dropdown .gts-menu-contact .elementor-button *{color:inherit !important}


@media (prefers-reduced-motion: reduce){
  .gts-spin,.gts-reveal,.gts-wm .gts-wm-l,.gts-cycle .elementor-heading-title{animation:none !important}
  .gts-cta-pop .gts-ch{transform:none !important;opacity:1 !important;animation:none !important}
  html{scroll-snap-type:none !important}
  .gts-card,.gts-work .gts-frame{transition:none}
}/* End custom CSS */