/* =====================================================================
   BOOST ON STEROIDS — shared effect system for patrikhaenggi.ch
   Dark cinematic · neon cyan #00d2ff · brand blue #0e53e8 · Inter
   ===================================================================== */
:root{
  --bg:#04060f; --bg-2:#020308; --card:#080c1b; --border:#111827;
  --brand:#0e53e8; --cyan:#00d2ff; --muted:#8b98ac; --text:#f8fafc;
  --glass:rgba(255,255,255,.03); --glass-brd:rgba(255,255,255,.08);
}
*{ -webkit-tap-highlight-color:transparent; }
html{ scroll-behavior:smooth; overflow-x:clip; max-width:100%; }
body{ font-family:'Inter',sans-serif; color:var(--text);
  overflow-x:clip; max-width:100%; position:relative; -webkit-font-smoothing:antialiased;
  background:#04060f; }
/* Android-safe fixed backdrop: a real fixed layer instead of background-attachment:fixed
   (which Chrome/Android renders wrong -> the cyan bloom blows up and washes the page light-blue).
   Kept subtle and identical across desktop + mobile. */
body::before{
  content:""; position:fixed; inset:0; z-index:-1; pointer-events:none;
  background:
    radial-gradient(60rem 60rem at var(--pbx,20%) var(--pby,0%), rgba(0,170,225,.06), transparent 60%),
    radial-gradient(70rem 70rem at 85% 100%, rgba(14,83,232,.06), transparent 65%),
    #04060f;
}
h1,h2,h3,h4,.font-heading{ font-family:'Inter',sans-serif; letter-spacing:-0.04em; }

header{ background-color:transparent!important; backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  transition:background-color .3s ease,backdrop-filter .3s ease,border-color .3s ease!important; }
header.scrolled{ background-color:rgba(4,6,15,.72)!important;
  backdrop-filter:blur(14px) saturate(140%)!important;
  -webkit-backdrop-filter:blur(14px) saturate(140%)!important;
  border-bottom-color:rgba(0,210,255,.12)!important; }

.scrollbar-none::-webkit-scrollbar{ display:none; }
.scrollbar-none{ -ms-overflow-style:none; scrollbar-width:none; }

#boost-orb{ position:fixed; top:0; left:0; width:520px; height:520px; border-radius:50%;
  background:radial-gradient(circle at center,rgba(0,210,255,.16),rgba(14,83,232,.05) 45%,transparent 70%);
  pointer-events:none; z-index:0; transform:translate(-50%,-50%);
  transition:transform .55s cubic-bezier(.16,1,.3,1); will-change:transform; mix-blend-mode:screen; }
@media (max-width:767px){ #boost-orb{ display:none; } }

.reveal-on-scroll{ opacity:0; transform:translateY(46px) scale(.985);
  transition:opacity 1.1s cubic-bezier(.16,1,.3,1),transform 1.1s cubic-bezier(.16,1,.3,1);
  will-change:opacity,transform; }
.reveal-on-scroll.active{ opacity:1; transform:translateY(0) scale(1); }
.reveal-up{ opacity:0; transform:translateY(34px);
  transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1); }
.reveal-up.active{ opacity:1; transform:translateY(0); }

.btn-glass{ position:relative; display:inline-flex; align-items:center; justify-content:center;
  background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.01) 70%,rgba(0,0,0,.06));
  border:1px solid var(--glass-brd); border-radius:0;
  backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
  color:#fff; font-weight:900; letter-spacing:.2em; text-transform:uppercase;
  /* near-flat: just a faint top light edge + a whisper of lift */
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 1px 4px -3px rgba(0,0,0,.5);
  transform:translateZ(0);
  transition:transform .18s cubic-bezier(.16,1,.3,1),border-color .3s,box-shadow .3s,background .3s; overflow:hidden; }
.btn-glass::before{ content:""; position:absolute; inset:0; border-radius:inherit;
  background:linear-gradient(120deg,transparent 30%,rgba(0,210,255,.18),transparent 70%);
  transform:translateX(-120%); transition:transform .6s ease; }
.btn-glass:hover{ border-color:rgba(0,210,255,.5); transform:translateY(-1px);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.10),
    0 0 0 1px rgba(0,210,255,.20),
    0 6px 16px -8px rgba(0,210,255,.4);
  background:linear-gradient(180deg,rgba(0,210,255,.06),rgba(255,255,255,.012) 65%,rgba(0,0,0,.06)); }
.btn-glass:hover::before{ transform:translateX(120%); }
.btn-glass:active{ transform:translateY(1px) scale(.995);
  box-shadow:
    inset 0 2px 5px rgba(0,0,0,.45),
    inset 0 1px 0 rgba(255,255,255,.08),
    0 1px 5px -3px rgba(0,0,0,.6); }

.btn-brand{ position:relative; display:inline-flex; align-items:center; justify-content:center;
  /* near-flat blue: very faint gloss, almost no depth (sharp corners) */
  background:linear-gradient(180deg,#1a5cee 0%,var(--brand) 70%,#0d4ac6 100%);
  color:#fff; font-weight:900; letter-spacing:.2em; text-transform:uppercase;
  border:1px solid rgba(255,255,255,.08); border-radius:0; overflow:hidden;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.16),
    0 2px 6px -4px rgba(14,83,232,.45);
  transform:translateZ(0);
  transition:transform .18s cubic-bezier(.16,1,.3,1),box-shadow .3s,background .3s,color .3s; }
.btn-brand::before{ content:""; position:absolute; inset:0; border-radius:inherit;
  background:linear-gradient(120deg,transparent 30%,rgba(255,255,255,.3),transparent 70%);
  transform:translateX(-120%); transition:transform .6s ease; }
.btn-brand:hover{ transform:translateY(-1px);
  background:linear-gradient(180deg,#1ec3f2 0%,var(--cyan) 65%,#019ed3 100%); color:#04121f;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.22),
    0 6px 18px -10px rgba(0,210,255,.5); }
.btn-brand:hover::before{ transform:translateX(120%); }
.btn-brand:active{ transform:translateY(1px) scale(.995);
  box-shadow:
    inset 0 1px 4px rgba(0,16,60,.4),
    0 1px 4px -3px rgba(14,83,232,.4); }

.tilt{ transform-style:preserve-3d; transition:transform .35s cubic-bezier(.16,1,.3,1),box-shadow .35s; will-change:transform; }
.tilt .tilt-inner{ transform:translateZ(40px); transition:transform .35s; }
.tilt-glow{ position:absolute; inset:0; opacity:0; transition:opacity .35s; pointer-events:none;
  background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(0,210,255,.22),transparent 55%); }
.tilt:hover .tilt-glow{ opacity:1; }

.masonry{ column-gap:1rem; }
.masonry > *{ break-inside:avoid; margin-bottom:1rem; }
@media (min-width:640px){ .masonry{ column-gap:1.25rem; } .masonry > *{ margin-bottom:1.25rem; } }

.media-card{ position:relative; overflow:hidden; display:block; border:1px solid rgba(255,255,255,.08);
  background:#0a0e1c; box-shadow:0 18px 50px -20px rgba(0,0,0,.8); }
.media-card img{ width:100%; height:100%; object-fit:cover; display:block;
  transition:transform .9s cubic-bezier(.16,1,.3,1),filter .6s; }
.media-card:hover img{ transform:scale(1.07); filter:saturate(1.12) brightness(1.04); }
.media-card .cap{ position:absolute; inset:auto 0 0 0; padding:1rem;
  background:linear-gradient(to top,rgba(2,4,12,.86),rgba(2,4,12,.15) 60%,transparent);
  transform:translateY(8px); opacity:.92; transition:transform .45s,opacity .45s; }
.media-card:hover .cap{ transform:translateY(0); opacity:1; }
.media-card::after{ content:""; position:absolute; inset:0; border:1px solid transparent; pointer-events:none;
  transition:border-color .4s,box-shadow .4s; }
.media-card:hover::after{ border-color:rgba(0,210,255,.5); box-shadow:inset 0 0 30px -8px rgba(0,210,255,.4); }

#knockout-text-wrapper{ transform-origin:center center; will-change:transform; }

.marquee{ overflow:hidden; white-space:nowrap; }
.marquee__track{ display:inline-block; animation:marquee 28s linear infinite; }
.marquee:hover .marquee__track{ animation-play-state:paused; }
@keyframes marquee{ from{transform:translateX(0)} to{transform:translateX(-50%)} }

#boost-progress{ position:fixed; top:0; left:0; height:2px; width:0;
  background:linear-gradient(90deg,var(--brand),var(--cyan)); z-index:60; box-shadow:0 0 12px rgba(0,210,255,.8); }
.hairline{ height:1px; background:linear-gradient(90deg,transparent,rgba(0,210,255,.35),transparent); }
.price-card{ transition:transform .4s cubic-bezier(.16,1,.3,1),border-color .4s,box-shadow .4s; }
.price-card:hover{ transform:translateY(-8px); border-color:rgba(0,210,255,.45);
  box-shadow:0 30px 70px -25px rgba(0,210,255,.4); }

.scroll-container{ width:100%; padding:6px 0; }
.scroll-content{ display:flex; flex-wrap:wrap; gap:10px; }
.scroll-btn{ flex:0 0 auto; white-space:nowrap; }
@media (max-width:767px){
  .scroll-container{ overflow-x:auto!important; scrollbar-width:none!important; -webkit-overflow-scrolling:touch!important; }
  .scroll-container::-webkit-scrollbar{ display:none!important; }
  .scroll-content{ flex-wrap:nowrap!important; padding:0 4px!important; }
}
@media (prefers-reduced-motion:reduce){
  .reveal-on-scroll,.reveal-up{ opacity:1!important; transform:none!important; }
  .marquee__track{ animation:none; }
  #boost-orb{ display:none; }
}


/* ===== Knockout: video only inside letters, fully transparent around (no box) ===== */
#knockout-container{ background:transparent!important; }
.boost-knockout{
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20800%20260'%3E%3Ctext%20x='400'%20y='112'%20text-anchor='middle'%20textLength='720'%20lengthAdjust='spacingAndGlyphs'%20font-family='Arial%2CHelvetica%2Csans-serif'%20font-weight='900'%20font-size='118'%20fill='%23ffffff'%3EBOOST%20YOUR%3C/text%3E%3Ctext%20x='400'%20y='236'%20text-anchor='middle'%20textLength='720'%20lengthAdjust='spacingAndGlyphs'%20font-family='Arial%2CHelvetica%2Csans-serif'%20font-weight='900'%20font-size='118'%20fill='%23ffffff'%3EVISIBILITY%3C/text%3E%3C/svg%3E"); mask-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20800%20260'%3E%3Ctext%20x='400'%20y='112'%20text-anchor='middle'%20textLength='720'%20lengthAdjust='spacingAndGlyphs'%20font-family='Arial%2CHelvetica%2Csans-serif'%20font-weight='900'%20font-size='118'%20fill='%23ffffff'%3EBOOST%20YOUR%3C/text%3E%3Ctext%20x='400'%20y='236'%20text-anchor='middle'%20textLength='720'%20lengthAdjust='spacingAndGlyphs'%20font-family='Arial%2CHelvetica%2Csans-serif'%20font-weight='900'%20font-size='118'%20fill='%23ffffff'%3EVISIBILITY%3C/text%3E%3C/svg%3E");
  -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat;
  -webkit-mask-position:center center; mask-position:center center;
  -webkit-mask-size:contain; mask-size:contain;
}
.knockout-fallback{ display:none; }
@supports not ((-webkit-mask-image:url('')) or (mask-image:url(''))){
  .boost-knockout{ display:none; }
  .knockout-fallback{ display:flex; }
}

/* ===== Floating glassmorphic content card ===== */
.glass-card{
  position:relative;
  background:linear-gradient(160deg,rgba(255,255,255,.07),rgba(255,255,255,.02) 45%,rgba(0,210,255,.03));
  backdrop-filter:blur(18px) saturate(150%); -webkit-backdrop-filter:blur(18px) saturate(150%);
  border:1px solid rgba(255,255,255,.12);
  border-radius:6px;
  box-shadow:0 34px 70px -28px rgba(0,0,0,.9), 0 2px 0 0 rgba(255,255,255,.04) inset, 0 0 0 1px rgba(255,255,255,.03);
  transition:transform .4s cubic-bezier(.16,1,.3,1),border-color .4s,box-shadow .4s,background .4s;
}
.glass-card::before{
  content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.10),transparent 30%);
  opacity:.6;
}
.glass-card:hover{
  transform:translateY(-6px);
  border-color:rgba(0,210,255,.5);
  box-shadow:0 50px 100px -30px rgba(0,210,255,.45), 0 0 0 1px rgba(0,210,255,.22);
  background:linear-gradient(160deg,rgba(0,210,255,.10),rgba(255,255,255,.02) 50%,rgba(0,210,255,.05));
}


/* ===== Interactive dark cyan-blue section backdrop (a notch darker than the hero top) =====
   Replaces the flat near-black lower sections. Top hero stays #04060f; these read slightly
   deeper with a living cyan/blue wash that subtly follows the cursor via --bx/--by. ===== */
.boost-deep{
  position:relative;
  background:
    radial-gradient(120% 90% at var(--bx,30%) var(--by,0%), rgba(0,170,225,.12), transparent 55%),
    radial-gradient(100% 80% at 85% 100%, rgba(14,83,232,.13), transparent 60%),
    #04060f;
}
.boost-deep::before{
  content:""; position:absolute; inset:0; pointer-events:none; opacity:.5;
  background:radial-gradient(40rem 40rem at var(--bx,50%) var(--by,40%), rgba(0,210,255,.06), transparent 60%);
  transition:background-position .4s ease;
}
.boost-deep > *{ position:relative; z-index:1; }

/* footer divider hairline (brighter cyan-blue) */
.footer-edge{ height:2px; background:linear-gradient(90deg,transparent,rgba(0,210,255,.7) 20%,rgba(80,160,255,.85) 50%,rgba(0,210,255,.7) 80%,transparent);
  box-shadow:0 0 16px rgba(0,210,255,.55); }


/* ===== Mobile horizontal scroll-nav (replaces hamburger where it fits) =====
   Shown only < lg. A single horizontally swipeable strip of nav buttons,
   marked with a cyan filet/hairline above it (mirrors the footer-edge look).
   Falls back to the hamburger only if JS/space requires it. ===== */
#mobile-scrollnav{
  display:none;
  position:relative;
  width:100%;
  background:rgba(4,6,15,.72);
  backdrop-filter:blur(14px) saturate(140%);
  -webkit-backdrop-filter:blur(14px) saturate(140%);
}
@media (max-width:1023px){
  #mobile-scrollnav{ display:block; }
}
/* cyan filet line above the scroll strip */
#mobile-scrollnav .filet{
  height:2px; width:100%;
  background:linear-gradient(90deg,transparent,rgba(0,210,255,.7) 18%,rgba(80,160,255,.9) 50%,rgba(0,210,255,.7) 82%,transparent);
  box-shadow:0 0 14px rgba(0,210,255,.55);
}
#mobile-scrollnav .nav-scroll{
  display:flex; flex-wrap:nowrap; gap:8px; align-items:center;
  width:100%; max-width:100%;
  overflow-x:auto; overflow-y:hidden;
  padding:10px 16px;
  scrollbar-width:none; -ms-overflow-style:none;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-x:contain;
  scroll-snap-type:x proximity;
}
#mobile-scrollnav .nav-scroll::-webkit-scrollbar{ display:none; }
@media (hover:hover){ #mobile-scrollnav .nav-scroll{ cursor:grab; } }
#mobile-scrollnav .nav-link{
  flex:0 0 auto; white-space:nowrap; scroll-snap-align:start;
  font-size:11px; letter-spacing:.16em; text-transform:uppercase; font-weight:700;
  color:#fff; padding:9px 15px; border-radius:0;
  border:1px solid rgba(255,255,255,.10);
  background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(0,0,0,.16));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 3px 8px -4px rgba(0,0,0,.6);
  transition:color .25s,border-color .25s,background .25s,box-shadow .25s;
}
#mobile-scrollnav .nav-link:hover,
#mobile-scrollnav .nav-link:focus-visible{
  color:#04121f; border-color:rgba(0,210,255,.5);
  background:linear-gradient(180deg,#37d8ff,var(--cyan) 60%,#0093c9);
}
#mobile-scrollnav .nav-link.is-active{
  color:#04121f; border-color:rgba(0,210,255,.6);
  background:linear-gradient(180deg,#37d8ff,var(--cyan) 60%,#0093c9);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 6px 18px -8px rgba(0,210,255,.6);
}
/* faded edge hint that the strip scrolls horizontally */
#mobile-scrollnav .nav-wrap{ position:relative; }
#mobile-scrollnav .nav-wrap::after{
  content:""; position:absolute; top:0; right:0; bottom:0; width:34px; pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(4,6,15,.85));
}
/* when scroll-nav is active, hide the old hamburger + dropdown < lg */
@media (max-width:1023px){
  body.has-scrollnav #mobile-menu-btn{ display:none!important; }
  body.has-scrollnav #mobile-menu{ display:none!important; }
}


/* ===== Overflow hard-guard (cross-platform): nothing may widen the page ===== */
main, header, footer, section { max-width:100%; }
[data-parallax]{ will-change:transform; }
.marquee{ max-width:100%; }


/* ===== Cross-platform (Android/iOS) legibility guard =====
   Touch devices have no cursor -> the --pbx/--bx sheen vars never update. Pin the
   backdrop to a calm, deep-dark default and dial the cyan/blue washes right down so
   text stays razor-sharp and the page never turns light-blue on mobile. ===== */
@media (max-width:1023px), (hover:none){
  body::before{
    background:
      radial-gradient(50rem 50rem at 15% 0%, rgba(0,170,225,.05), transparent 60%),
      radial-gradient(55rem 55rem at 90% 100%, rgba(14,83,232,.05), transparent 62%),
      #04060f !important;
  }
  .boost-deep{
    background:
      radial-gradient(120% 90% at 20% 0%, rgba(0,170,225,.06), transparent 58%),
      radial-gradient(100% 80% at 88% 100%, rgba(14,83,232,.06), transparent 62%),
      #04060f !important;
  }
  .boost-deep::before{ opacity:.28 !important; }
  #boost-orb{ display:none !important; }
}

/* ===== GALERIE: Masonry, native Seitenverhältnisse (kein Beschnitt) ===== */
.bento{columns:2;column-gap:12px}
@media(min-width:1024px){.bento{columns:3}}
.bento .media-card{position:relative;overflow:hidden;cursor:zoom-in;display:block;break-inside:avoid;margin-bottom:12px}
.bento .media-card img{width:100%;height:auto;display:block}
.b-tall,.b-sq,.b-wide{grid-row:auto;grid-column:auto}
/* Filter-Chips */
.lb-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}
.lb-chip{font-size:10px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:#fff;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(0,0,0,.16));border:1px solid rgba(255,255,255,.12);padding:9px 16px;cursor:pointer;transition:.25s}
.lb-chip:hover{border-color:rgba(0,210,255,.5);color:var(--cyan,#00d2ff)}
.lb-chip.on{background:linear-gradient(180deg,#37d8ff,#00d2ff 60%,#0093c9);color:#04121f;border-color:rgba(0,210,255,.6)}
.bento .media-card.lb-hide{display:none}

/* ===== MORPH LIGHTBOX ===== */
#boost-lb{position:fixed;inset:0;z-index:90;display:none;align-items:center;justify-content:center}
#boost-lb.open{display:flex}
#boost-lb .lb-bg{position:absolute;inset:0;background-size:cover;background-position:center;filter:blur(46px) brightness(.28) saturate(1.15);transform:scale(1.15)}
#boost-lb .lb-veil{position:absolute;inset:0;background:rgba(2,3,8,.45)}
#boost-lb .lb-stage{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;max-width:min(94vw,1500px);max-height:82vh}
#boost-lb .lb-stage img{max-width:100%;max-height:82vh;display:block;border:1px solid rgba(0,210,255,.35);box-shadow:0 40px 120px -30px rgba(0,210,255,.4);cursor:zoom-in;transition:transform .5s cubic-bezier(.16,1,.3,1)}
@media(min-width:1024px){#boost-lb .lb-stage,#boost-lb .lb-stage img{max-height:88vh}}
#boost-lb .lb-stage img.zoom{transform:scale(1.7);cursor:zoom-out}
#boost-lb .lb-cap{position:absolute;z-index:3;left:50%;transform:translateX(-50%);bottom:calc(6vh + 62px);text-align:center;pointer-events:none}
#boost-lb .lb-cap span{font-size:9px;letter-spacing:.3em;color:#00d2ff;font-weight:800;text-transform:uppercase;background:rgba(2,3,8,.6);padding:4px 10px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
#boost-lb .lb-cap h4{font-size:16px;font-weight:900;text-transform:uppercase;color:#fff;margin-top:6px;text-shadow:0 2px 12px rgba(0,0,0,.8)}
#boost-lb .lb-count{position:absolute;z-index:3;top:20px;left:24px;font-size:11px;letter-spacing:.25em;color:#8b98ac;font-weight:700}
#boost-lb .lb-x{position:absolute;z-index:4;top:14px;right:18px;width:44px;height:44px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.15);color:#fff;font-size:20px;cursor:pointer;transition:.25s;display:flex;align-items:center;justify-content:center}
#boost-lb .lb-x:hover{border-color:#00d2ff;color:#00d2ff;transform:rotate(90deg)}
#boost-lb .lb-nav{position:absolute;z-index:4;top:50%;transform:translateY(-50%);width:52px;height:52px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14);color:#fff;font-size:22px;cursor:pointer;transition:.25s;display:flex;align-items:center;justify-content:center}
#boost-lb .lb-nav:hover{border-color:#00d2ff;color:#00d2ff}
#boost-lb .lb-prev{left:16px}#boost-lb .lb-next{right:16px}
#boost-lb .lb-strip{position:absolute;z-index:4;bottom:14px;left:50%;transform:translateX(-50%);display:flex;gap:8px;padding:8px;background:rgba(2,3,8,.55);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);max-width:92vw;overflow-x:auto}
#boost-lb .lb-strip img{width:52px;height:38px;object-fit:cover;cursor:pointer;opacity:.45;border:1px solid transparent;transition:.3s;display:block;flex:0 0 auto}
#boost-lb .lb-strip img:hover{opacity:.85}
#boost-lb .lb-strip img.on{opacity:1;border-color:#00d2ff}
@media(max-width:760px){#boost-lb .lb-strip{display:none}#boost-lb .lb-cap{bottom:8vh}}

/* ===== Kontakt-Kacheln (aus Coming-Soon) ===== */
.cs-tile{ position:relative; display:flex; flex-direction:column; gap:.35rem; padding:1.5rem 1.6rem;
  border:1px solid rgba(255,255,255,.10); background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(0,0,0,.06));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 2px 8px -5px rgba(0,0,0,.6);
  transition:transform .3s cubic-bezier(.16,1,.3,1),border-color .3s,box-shadow .3s,background .3s; }
.cs-tile:hover{ transform:translateY(-4px); border-color:rgba(0,210,255,.5);
  box-shadow:0 24px 60px -25px rgba(0,210,255,.5),inset 0 1px 0 rgba(255,255,255,.12);
  background:linear-gradient(180deg,rgba(0,210,255,.07),rgba(0,0,0,.06)); }

#boost-lb .lb-back{align-self:flex-end;margin-top:12px;font-size:10px;letter-spacing:.25em;font-weight:700;text-transform:uppercase;
  color:#fff;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.18);padding:10px 18px;cursor:pointer;transition:.25s}
#boost-lb .lb-back:hover{border-color:#00d2ff;color:#00d2ff}

/* Bildschutz */
img{-webkit-user-drag:none;user-select:none;-webkit-user-select:none}

/* Hover-Preview Glasrahmen */
#hover-morph{position:fixed;top:0;left:0;z-index:80;pointer-events:none;opacity:0;scale:.85;
  transition:opacity .35s cubic-bezier(.16,1,.3,1),scale .35s cubic-bezier(.16,1,.3,1);
  padding:10px;background:rgba(8,12,27,.35);border:1px solid rgba(0,210,255,.4);
  -webkit-backdrop-filter:blur(14px) saturate(140%);backdrop-filter:blur(14px) saturate(140%);
  box-shadow:0 30px 80px -20px rgba(0,210,255,.45)}
#hover-morph.on{opacity:1;scale:1}
#hover-morph{display:flex;gap:8px;align-items:center}
#hover-morph img{display:block;height:240px;width:auto}
#hover-morph.multi-2 img{height:210px}
#hover-morph.multi-3 img{height:180px}
#hover-morph.multi-4 img{height:150px}
/* Slider-Kachel: absolute Bilder brauchen relative Box */
.bento .media-card[data-nolb]{cursor:default}

/* ===== FAQ Akkordeon ===== */
.faq-item{border:1px solid rgba(255,255,255,.09);background:#080c1b;margin-bottom:10px}
.faq-item summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:14px;
  padding:16px 20px;font-weight:700;color:#fff;font-size:14px;transition:color .25s}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:'+';color:#00d2ff;font-size:20px;font-weight:400;flex-shrink:0;transition:transform .3s}
.faq-item[open] summary{color:#00d2ff}
.faq-item[open] summary::after{transform:rotate(45deg)}
.faq-item .faq-a{padding:0 20px 18px;color:#8b98ac;font-size:13.5px;line-height:1.7;font-weight:300}
.faq-cat{font-size:10px;letter-spacing:.3em;font-weight:800;color:#00d2ff;text-transform:uppercase;display:block;margin:34px 0 14px}

/* ===== Mobile-Cinema v3: Haupttitel im schwarzen Bereich, Film 16:9 darunter, Untertitel slidet ins Bild ===== */
@media(max-width:1023px){
  .cinema-mobile .cinema-wrap{ display:flex; flex-direction:column; justify-content:flex-start }
  .cinema-mobile .cinema-title{ position:static !important; order:1; padding-top:10rem !important }
  .cinema-mobile .cinema-title h1{ font-size:clamp(1.5rem,8vw,2.6rem) !important; overflow-wrap:anywhere;
    transform:none !important; opacity:1 !important }
  .cinema-mobile .cinema-title span[data-cin="kicker"]{ opacity:1 !important }
  .cinema-mobile .cinema-vidbox{ position:relative !important; inset:auto !important; order:2;
    width:100%; aspect-ratio:16/9; margin-top:1.25rem; overflow:hidden }
  .cinema-mobile .cinema-video{ width:100% !important; height:100% !important; object-fit:cover }
  .cinema-mobile .cinema-sub{ position:absolute; right:.9rem; bottom:.7rem; left:auto; margin:0 !important;
    font-size:.95rem !important; max-width:85%; text-align:right; transform:translateX(110%); opacity:0;
    transition:transform 1.1s cubic-bezier(.16,1,.3,1), opacity .9s ease }
  .cinema-mobile .cinema-sub.sub-in{ transform:none !important; opacity:1 !important }
}
/* Hover-Vorschau im Touch-Modus: kompaktes Raster, angetippt */
#hover-morph.touch{ top:50%; left:50%; transform:translate(-50%,-50%) !important;
  display:grid !important; grid-template-columns:1fr; gap:6px; width:auto; max-width:92vw; max-height:78vh; overflow:hidden }
#hover-morph.touch img{ width:78vw; max-width:78vw; height:auto; max-height:34vh; object-fit:cover }
#hover-morph.touch.multi-2{ grid-template-columns:1fr 1fr }
#hover-morph.touch.multi-2 img{ width:44vw; max-height:40vh }
#hover-morph.touch.multi-4{ grid-template-columns:1fr 1fr }
#hover-morph.touch.multi-4 img{ width:44vw; height:30vw; max-height:30vh }
.hover-cta{ display:inline-block; margin-top:5px; font-size:8px; letter-spacing:.15em; text-transform:uppercase;
  font-weight:700; color:#00d2ff; opacity:.85 }

body.has-calcbar a[href^="https://wa.me"]{ bottom:5.5rem !important }


/* ===== Mobile Seitentitel: Cinema-Groesse, gross slidet v. links, klein v. rechts ===== */
@media(max-width:1023px){
  .pt-big{ font-size:clamp(1.5rem,8vw,2.6rem) !important; line-height:1.05 !important;
    transform:translateX(-110%); opacity:0;
    transition:transform 1s cubic-bezier(.16,1,.3,1), opacity .8s ease }
  .pt-small{ transform:translateX(110%); opacity:0;
    transition:transform 1s cubic-bezier(.16,1,.3,1) .12s, opacity .8s ease .12s }
  .pt-big.pt-in,.pt-small.pt-in{ transform:none; opacity:1 }
}

/* ===== Handy-Knockout v3: Film volle Breite, langsamer Ken-Burns-Zoom IM Film
   (Rahmen wird nie verlassen), weisslich-opale Schrift linksbuendig statisch drueber ===== */
@media(max-width:1023px){
  #knockout-container{ height:auto !important; aspect-ratio:16/9; overflow:hidden !important }
  #knockout-text-wrapper{ transform:none !important }
  .boost-knockout{ -webkit-mask-image:none !important; mask-image:none !important;
    width:100% !important; height:100% !important; object-fit:cover;
    animation:koZoom 14s ease-in-out infinite alternate; will-change:transform }
  .knockout-fallback{ display:flex !important; justify-content:flex-start !important;
    align-items:center; text-align:left !important; padding-left:.9rem;
    color:rgba(255,255,255,.82) !important;
    font-size:clamp(2.1rem,11vw,3.2rem) !important; line-height:.9 !important;
    letter-spacing:-.02em;
    text-shadow:0 2px 26px rgba(0,0,0,.6), 0 0 40px rgba(255,255,255,.18) }
}
@keyframes koZoom{ from{ transform:scale(1) } to{ transform:scale(1.16) } }


/* ===== Patrik-Regel: keine mittenbuendigen Texte — alles linksbuendig (alle Geraete) ===== */
h1.text-center,h2.text-center,h3.text-center,h4.text-center,
p.text-center,span.text-center{ text-align:left !important }
div.text-center:has(h1),div.text-center:has(h2),div.text-center:has(h3),
div.text-center:has(p){ text-align:left !important }


/* ===== Schwebender Aktions-Stapel (Lupe / CHF / Tel / WhatsApp) ===== */
.fab-btn{ position:fixed; right:1.5rem; z-index:70; width:3.5rem; height:3.5rem; border-radius:9999px;
  display:flex; align-items:center; justify-content:center; cursor:pointer; border:1px solid rgba(0,210,255,.38);
  background:rgba(8,12,27,.42); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
  color:#fff; font-family:inherit; box-shadow:0 8px 26px rgba(0,0,0,.35); transition:transform .3s, border-color .3s }
.fab-btn:hover{ transform:scale(1.08); border-color:#00d2ff }
#fabChf{ bottom:5.5rem; font-size:12px; font-weight:900; letter-spacing:.05em; color:#00d2ff }
#fabLupe{ display:none !important } /* Lupe: Platzierung oben rechts in Diskussion */
#fabTel{ display:none }
@media(max-width:1023px){
  #fabTel{ display:flex; bottom:5.5rem }
  #fabChf{ bottom:9.5rem }
}
body.has-calcbar #fabChf{ bottom:9.75rem !important }
@media(max-width:1023px){
  body.has-calcbar #fabTel{ bottom:9.75rem !important }
  body.has-calcbar #fabChf{ bottom:13.75rem !important }
}

/* ===== Preis-Hub (schwebende Glas-Ebene) ===== */
#preis-hub{ position:fixed; inset:0; z-index:90; display:none; align-items:flex-end; justify-content:center;
  background:rgba(2,4,12,.72); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px) }
#preis-hub.on{ display:flex }
.hub-sheet{ width:100%; max-width:560px; max-height:88vh; overflow:auto; -webkit-overflow-scrolling:touch;
  background:rgba(8,12,27,.88); backdrop-filter:blur(18px); border:1px solid rgba(0,210,255,.35); border-bottom:0;
  border-radius:18px 18px 0 0; padding:22px 18px 34px; animation:hubHoch .35s cubic-bezier(.16,1,.3,1) }
@keyframes hubHoch{ from{transform:translateY(60px);opacity:0} to{transform:none;opacity:1} }
.hub-kicker{ font-size:10px; letter-spacing:.3em; font-weight:800; text-transform:uppercase; color:#00d2ff; display:block; margin-bottom:6px }
.hub-grid{ display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:12px }
.hub-card{ border:1px solid rgba(255,255,255,.12); background:rgba(255,255,255,.03); padding:16px 14px; cursor:pointer; transition:border .2s; text-align:left }
.hub-card:hover{ border-color:#00d2ff }
.hub-card .t{ font-size:11px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; color:#fff; display:block }
.hub-card .u{ font-size:9.5px; color:#8b98ac; display:block; margin-top:4px; line-height:1.45; font-weight:300 }
.hub-card .ab{ font-size:10px; color:#00d2ff; font-weight:700; display:block; margin-top:8px }
.hub-card .ab.ab2{ margin-top:2px }
.hub-opt{ display:flex; align-items:center; justify-content:space-between; gap:10px; border:1px solid rgba(255,255,255,.12);
  padding:12px; margin-top:8px; cursor:pointer; font-size:13px; color:#dde; font-weight:300 }
.hub-opt.sel{ border-color:#00d2ff; background:rgba(0,210,255,.06) }
.hub-opt .pr{ color:#00d2ff; font-weight:800; white-space:nowrap; font-size:12px }
.hub-total{ display:flex; align-items:center; justify-content:space-between; border-top:1px solid rgba(255,255,255,.12); margin-top:14px; padding-top:12px }
.hub-total .tt{ font-size:1.5rem; font-weight:900; color:#00d2ff }
.hub-back{ background:none; border:0; color:#8b98ac; font-family:inherit; font-size:9px; letter-spacing:.2em; text-transform:uppercase; cursor:pointer; padding:0; margin-bottom:10px; display:block }
.hub-send{ display:block; width:100%; margin-top:12px; background:#0e53e8; color:#fff; border:0; font-family:inherit;
  font-size:10px; font-weight:800; letter-spacing:.18em; text-transform:uppercase; padding:14px; cursor:pointer; text-align:center; text-decoration:none }
.hub-close{ display:block; margin:14px auto 0; background:none; border:0; color:#8b98ac; font-family:inherit; font-size:10px; letter-spacing:.2em; text-transform:uppercase; cursor:pointer }
.hub-note{ font-size:10.5px; color:#8b98ac; font-weight:300; margin-top:8px; line-height:1.5 }

/* ===== Such-Overlay ===== */
#such-ov{ position:fixed; inset:0; z-index:95; display:none; background:rgba(2,4,12,.8);
  backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); padding:10vh 16px 0 }
#such-ov.on{ display:block }
.such-box{ max-width:640px; margin:0 auto }
.such-box input{ width:100%; background:rgba(8,12,27,.92); border:1px solid rgba(0,210,255,.5); color:#fff;
  font-family:inherit; font-size:1.05rem; padding:15px 18px; outline:none; border-radius:0 }
.such-box input::placeholder{ color:#5a6a85 }
.such-res a{ display:block; padding:12px 14px; border:1px solid rgba(255,255,255,.1); border-top:0;
  background:rgba(8,12,27,.88); color:#fff; text-decoration:none; font-size:.85rem; font-weight:300 }
.such-res a:first-child{ border-top:1px solid rgba(255,255,255,.1) }
.such-res a:hover{ border-color:rgba(0,210,255,.5) }
.such-res .cat{ font-size:8px; letter-spacing:.2em; color:#8b98ac; text-transform:uppercase; display:block; margin-bottom:2px }
.such-res b{ color:#00d2ff; font-weight:600 }

/* ===== Wischleiste: kraeftige Abschattung + Chevron ===== */
#mobile-scrollnav .nav-wrap{ position:relative }
#mobile-scrollnav .nav-fade{ position:absolute; top:0; right:0; bottom:0; width:96px; pointer-events:none;
  background:linear-gradient(to right, rgba(4,6,15,0), rgba(4,6,15,.92) 78%); transition:opacity .3s; z-index:2 }
#mobile-scrollnav .nav-chev{ position:absolute; right:22px; top:calc(50% - 3px); transform:translateY(-50%);
  pointer-events:none; color:rgba(255,255,255,.85); font-size:16px; font-weight:300; z-index:3;
  text-shadow:0 0 8px rgba(0,210,255,.6); animation:chevPuls 1.6s ease-in-out infinite; transition:opacity .3s }
@keyframes chevPuls{ 0%,100%{opacity:.35; margin-right:0} 50%{opacity:1; margin-right:-4px} }

/* ===== Weiterlesen-Faltung (nur Handy) ===== */
@media(max-width:1023px){
  p.fold.folded{ display:-webkit-box; -webkit-line-clamp:4; -webkit-box-orient:vertical; overflow:hidden }
}
.fold-btn{ display:none; background:none; border:0; color:#00d2ff; font-family:inherit; font-size:11px;
  font-weight:600; letter-spacing:.08em; cursor:pointer; padding:2px 0 0; margin-bottom:1rem }
@media(max-width:1023px){ .fold-btn{ display:inline-block } }

/* ===== Handy: weniger Schwarzraum bei den Cinemas ===== */
@media(max-width:1023px){
  .cinema-mobile .cinema-title{ padding-top:6.5rem !important }
  .cinema-mobile .cinema-vidbox{ margin-top:.9rem !important }
  #video-cinema + section, #werbe-cinema + section{ padding-top:3.25rem !important }
}


/* ===== Handy-Galerien: kleinere Bildtexte + Slider einspaltig, Rest 2 Spalten ===== */
@media(max-width:1023px){
  .media-card .cap{ padding:.55rem .6rem }
  .media-card .cap h4{ font-size:.62rem !important; letter-spacing:.06em !important; line-height:1.25 }
  .media-card .cap span{ font-size:6.5px !important; letter-spacing:.14em !important; margin-bottom:1px !important }
  /* erstes Element (Slider-Kachel) volle Breite, darunter laeuft die 2-Spalten-Masonry weiter */
  .bento > [data-nolb]:first-child{ column-span:all; -webkit-column-span:all; margin-bottom:12px }
}


/* ===== Seiten-Hintergrundfilme (FAQ, Kontakt) — bereits geblurrt, NICHT abdunkeln ===== */
.page-bg{ position:fixed; inset:0; width:100%; height:100%; object-fit:cover; z-index:0; pointer-events:none;
  filter:brightness(.55) saturate(.9) }
body.has-pagebg .boost-deep{ background:transparent !important }
body.has-pagebg header{ position:sticky }

/* Chips: nie zweizeilig */
#mobile-scrollnav .nav-link{ white-space:nowrap !important }

/* Hub: Hintergrundfilm + Glas-Stil wie Shooting-Rechner */
.hub-sheet{ position:relative; overflow:hidden auto; background:rgba(8,12,27,.55) !important }
.hub-bgvid{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0; pointer-events:none; opacity:.9 }
.hub-sheet>*:not(.hub-bgvid){ position:relative; z-index:1 }
.hub-opt{ background:rgba(8,12,27,.78) !important }
.hub-card{ background:rgba(8,12,27,.78) !important }
.hub-note{ background:rgba(4,6,15,.55); padding:6px 8px }
.hub-input{ width:100%; background:rgba(4,6,15,.85); border:1px solid rgba(255,255,255,.2); color:#fff;
  font-family:inherit; font-size:13px; padding:12px; margin-top:8px; outline:none }
.hub-input:focus{ border-color:#00d2ff }


/* ===== FAQ-Knoepfe leicht glasig (nur auf Seiten mit Hintergrundfilm) ===== */
body.has-pagebg .faq-item{ background:rgba(8,12,27,.68); backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px) }
body.has-pagebg .glass-card{ background:rgba(8,12,27,.6) !important; backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px) }

/* ===== Header-Lupe (schlicht, oben rechts) ===== */
.hdr-lupe{ background:none; border:0; color:#fff; cursor:pointer; padding:8px; margin-left:8px;
  display:flex; align-items:center; flex-shrink:0; transition:color .25s }
.hdr-lupe:hover{ color:#00d2ff }

/* ===== CHF-Knopf: Desktop groesser + Leucht-Puls + Tooltips ===== */
@media(min-width:1024px){
  #fabChf{ width:4rem; height:4rem; font-size:13px }
}
#fabChf{ animation:chfGlow 8s ease-in-out infinite }
@keyframes chfGlow{
  0%,86%,100%{ box-shadow:0 8px 26px rgba(0,0,0,.35) }
  90%,96%{ box-shadow:0 0 0 6px rgba(0,210,255,.12), 0 0 34px 6px rgba(0,210,255,.55); border-color:#00d2ff }
}
#fabChf:hover{ box-shadow:0 0 0 6px rgba(0,210,255,.15), 0 0 40px 8px rgba(0,210,255,.65) !important; border-color:#00d2ff }
@media(hover:hover){
  .fab-btn[data-tip]::after, a[data-tip]::after{ content:attr(data-tip); position:absolute; right:112%; top:50%;
    transform:translateY(-50%); background:rgba(8,12,27,.92); border:1px solid rgba(0,210,255,.4); color:#fff;
    font-size:10px; letter-spacing:.12em; text-transform:uppercase; font-weight:700; padding:6px 10px;
    white-space:nowrap; opacity:0; pointer-events:none; transition:opacity .25s }
  .fab-btn[data-tip]:hover::after, a[data-tip]:hover::after{ opacity:1 }
}

/* ===== Hub: hoeher + offizieller ===== */
.hub-sheet{ max-height:94vh !important; max-width:600px !important }
.hub-head{ border-bottom:1px solid rgba(255,255,255,.14); padding-bottom:12px; margin-bottom:12px }
.hub-head .ht{ font-size:1.15rem; font-weight:900; text-transform:uppercase; letter-spacing:.06em; color:#fff; display:block }
.hub-head .hu{ font-size:10px; letter-spacing:.18em; text-transform:uppercase; color:#8b98ac; display:block; margin-top:3px }
.hub-foot{ border-top:1px solid rgba(255,255,255,.14); margin-top:14px; padding-top:10px;
  font-size:10.5px; color:#8b98ac; font-weight:300; line-height:1.6; background:rgba(4,6,15,.5); padding:10px }
.hub-foot a{ color:#00d2ff; text-decoration:none }


/* ===== Final 22 ===== */
/* Impressionen-Slider + b-full: volle Breite der Galerie (alle Geraete) */
/* Slider: mobil volle Breite ueberall; Desktop nur in der Spezialgalerie (nach Chips) 2/3 breit */
.bento .b-full{ column-span:all; -webkit-column-span:all; margin-bottom:12px }
@media(max-width:1023px){
  .bento > [data-nolb]:first-child{ column-span:all; -webkit-column-span:all; margin-bottom:12px }
}
@media(min-width:1024px){
  .lb-chips + .bento > [data-nolb]:first-child{ column-span:all; -webkit-column-span:all;
    width:66.2%; margin-bottom:12px }
}
/* Direktwahl mobil: kleiner + exakt fluchtend */
@media(max-width:1023px){
  .fab-btn{ width:3rem; height:3rem }
  #fabChf{ font-size:11px }
  a[href^="https://wa.me"]{ width:3rem !important; height:3rem !important; right:1.5rem !important }
  a[href^="https://wa.me"] svg{ width:24px; height:24px }
  #fabTel{ bottom:5.25rem }
  #fabChf{ bottom:9rem }
  body.has-calcbar a[href^="https://wa.me"]{ bottom:5.5rem !important }
  body.has-calcbar #fabTel{ bottom:9.25rem !important }
  body.has-calcbar #fabChf{ bottom:13rem !important }
}
/* Tooltips im Boost-Stil */
.fab-btn[data-tip]::after, a[data-tip]::after{
  background:rgba(8,12,27,.85) !important; backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
  border:1px solid rgba(0,210,255,.5) !important; color:#00d2ff !important;
  font-size:9px !important; letter-spacing:.22em !important; padding:8px 12px !important;
  box-shadow:0 8px 24px rgba(0,0,0,.5) }
/* Hub-Kopf mit Logo */
.hub-head{ display:flex; align-items:center; gap:12px }
.hub-head img{ height:38px; width:auto; display:block }
.hub-head .hu{ margin-top:0 }


/* ===== Final 23 ===== */
/* Hub-Kopf: Logo gross, Zeile lesbar */
.hub-head img{ height:56px !important }
.hub-head .hu{ color:#dbe4f0 !important; font-size:11px !important; letter-spacing:.24em }
.hub-card .u{ color:#aab6c8 !important }
.hub-note{ color:#aab6c8 !important }
/* Desktop: CHF + WhatsApp gleich gross, mehr Abstand */
@media(min-width:1024px){
  #fabChf{ width:3.75rem; height:3.75rem; font-size:12px; bottom:6.5rem }
  a[href^="https://wa.me"]{ width:3.75rem !important; height:3.75rem !important }
}
/* Handy: Labels kurz einblenden (Anruf, Preisrechner, WhatsApp) */
@media(hover:none){
  .fab-btn[data-tip]::after, a[data-tip]::after{
    content:attr(data-tip); position:absolute; right:112%; top:50%; transform:translateY(-50%);
    background:rgba(8,12,27,.9); border:1px solid rgba(0,210,255,.5); color:#00d2ff;
    font-size:9px; letter-spacing:.18em; text-transform:uppercase; font-weight:700;
    padding:7px 10px; white-space:nowrap; opacity:0; pointer-events:none; transition:opacity .4s }
  body.fab-tips .fab-btn[data-tip]::after, body.fab-tips a[data-tip]::after{ opacity:1 }
}


/* ===== Final 27: Telefon-Knopf leuchtet, Knoepfe dimmen beim Scrollen ===== */
#fabTel{ border-color:rgba(0,210,255,.6); color:#00d2ff; animation:chfGlow 8s ease-in-out 4s infinite }
#fabTel svg{ filter:drop-shadow(0 0 6px rgba(0,210,255,.5)) }
body.fab-dim .fab-btn, body.fab-dim a[href^="https://wa.me"]{ opacity:.45; transition:opacity .4s }
.fab-btn, a[href^="https://wa.me"]{ transition:opacity .4s, transform .3s, border-color .3s }


/* ===== Final 28: hellere Texte auf Seiten mit Hintergrundfilm ===== */
body.has-pagebg .text-boost-textMuted{ color:#b9c4d4 !important }


/* ===== Final 29: leuchtende Sprung-Buttons (eckig) + Ort-Toggle ===== */
.btn-puls{ border-color:rgba(0,210,255,.5) !important; animation:chfGlow 8s ease-in-out 2s infinite }
.ort-btn{ background:rgba(4,6,15,.5); cursor:pointer }


/* ===== News-Laufband ===== */
.marquee-news{ border-top:1px solid rgba(0,210,255,.35); border-bottom:1px solid rgba(0,210,255,.35) !important }
.marquee-news .marquee__track{ color:#00d2ff !important; font-weight:800 }

/* Final 44: Handy — Kino-Sektionen ohne Pin: Folgeinhalt schliesst direkt an, normales Scrollen */
@media(max-width:1023px){
  #werbe-cinema, #video-cinema{ height:auto !important }
  #werbe-cinema .cinema-wrap, #video-cinema .cinema-wrap{ position:static !important; height:auto !important; padding-bottom:1.25rem }
  #werbeCinemaHint, #videoCinemaHint{ display:none !important }
}
