/* ======================================================================
  ROOT - NUR WERTE ANPASSEN!
====================================================================== */
/* #region ROOT ====================================================== */

/* ----------------------------------------------------------------------------------*/
/* VORSICHT !!! ROOT IST AN CORE GEBUNDEN DAHER BITTE KEINE ÄNDERUNGEN AN VARIABLEN! */
/* BEI BEDARF EIGENE NEUE ERSTELLEN !!!! */
/* ----------------------------------------------------------------------------------*/
:root{
  /* Color */
  --bg:#f5f5f7;
  --bg-dark:#111827;
  --surface:#fff;
  --ink:#111827;
  --ink-inverse:#fff;
  --muted:#667085;
  --akzent:#0079E1;
  --akzent-2:#c0af82;
  --highlighted-color:var(--akzent-2);
  --eyebrow-color:var(--akzent-2);
  --door:#c4c0bd;
  --grey:#444;
  --brand:#00376c;
  --brand-2:#0a66c2;
  --line:rgba(17,24,39,.10);
  --line-2:rgba(17,24,39,.20);
  
  /* Sizes */
  --max:1280px;
  --max-small:920px;
  --max-extra-small:700px;
  --radius:1rem;

  --bleed:.25;
  
  /* Shadows */
  --shadow:0 24px 70px rgba(16,24,40,.08);
  --shadow-2:-7px 7px 10px rgba(16, 24, 40, .08);
  
  /* Fonts */
  --font-title:"Poppins",-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",Roboto,Arial,sans-serif;
  --font-family:"Open Sans",-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",Roboto,Arial,sans-serif;
  --font-serife:"Cormorant Garamond", serif;
  --font-size:16px;
  --font-size-mobile:18px;
  --font-size-h1:clamp(2.3rem, 3.5vw, 3rem);
  --font-size-h2:clamp(1.8rem, 2.5vw, 3rem);
  --font-size-h3:clamp(1.3rem, 1.6vw, 1.45rem);
  --font-size-h4:inherit;
  --font-size-h5:inherit;
  --font-size-h6:inherit;
  --font-size-eyebrow:clamp(1.3rem, 2.5vw, 1.6rem);
  
  /* Gap */
  --section-gap:6rem;
  --gap-xs:1rem;
  --gap-s:2rem;
  --gap-m:3rem;
  --gap-l:4rem;
  --gap-xl:5rem;
  --gap-xxl:6rem;
  --gap-xxxl:7rem;
  --gap:var(--gap-xxxl);
  --green1:#0079E1;

  /* Nav Tree */
  --nav-gap:2rem;
  --nav-font-size:.95rem;
  --nav-color:#344054;
  --nav-active-color:#344054;
  --nav-active-font-weight:700;
  --nav-icon-size:1.25rem;
  --nav-icon-color:var(--ink);

  /* Nav Tree - Hamburger Icon */
  --nav-toggle-size:44px;
  --nav-toggle-bg:var(--surface);
  --nav-toggle-color:var(--ink);
  --nav-toggle-radius:999px;
  --nav-toggle-border-color:transparent;
  --nav-toggle-bg-active:rgba(255,255,255,.96);
  --nav-toggle-color-active:var(--bg-dark);
  --nav-toggle-shadow:0 10px 26px rgba(17,24,39,.06);
  --nav-toggle-shadow-active:0 16px 34px rgba(17,24,39,.12);
  --nav-toggle-border-color-active:transparent;

  /* Nav Tree - mobiles Menu */
  --nav-mobile-offset-x:20px;
  --nav-mobile-top:72px;
  --nav-mobile-gap:4px;
  --nav-mobile-padding:18px;
  --nav-mobile-radius:22px;

  /* Nav Tree - Submenu */
  --nav-tree-gap:2rem;
  --nav-tree-toggle-gap:5px;
  --nav-tree-submenu-min-width:220px;
  --nav-tree-submenu-offset-y:.5rem;
  --nav-tree-submenu-padding:.65rem;
  --nav-tree-submenu-link-padding:.75rem .9rem;
  --nav-tree-submenu-branch-offset:.45rem;
  --nav-submenu-hover-bg:rgba(17,24,39,.04);
  --nav-submenu-active-color:var(--nav-active-color);
  --nav-submenu-active-bg:rgba(10,102,194,.09);
  --nav-submenu-mobile-hover-bg:#f5f8fc;
  --nav-submenu-mobile-active-color:var(--nav-active-color);
  --nav-submenu-mobile-active-bg:#f5f8fc;

  /* Header */
  --header-padding-y:18px;
  --header-padding-x:32px;
  --header-padding-y-sticky:10px;
  --header-gap:24px;
  --header-mobile-padding-y:8px;
  --header-mobile-padding-x:20px;
  --header-logo-height:44px;
  --header-logo-height-sticky:30px;
  --header-logo-height-mobile:35px;
  --header-nav-font-size-sticky:.88rem;
  --header-sticky-threshold:24;
  --header-z-index:88;
  --header-bg:rgba(245,245,247,.78);
  --header-backdrop-filter:saturate(180%) blur(20px);
  --header-border-bottom:.5px solid var(--line);
  --header-brand-gap:12px;
  --header-brand-font-weight:700;
  --header-brand-letter-spacing:-.03em;

  /* Mobile Bars */
  --mobile-bars-z-index:88;
  --mobile-bars-columns:3;
  --mobile-bars-padding-x:20px;
  --mobile-bars-bg:rgba(245,245,247,.78);
  --mobile-bars-blur:20px;
  --mobile-bars-border-color:var(--line);
  --mobile-bars-font-size:inherit;
  --mobile-bars-link-padding:12px 6px;
  --mobile-bars-link-font-weight:500;
  --mobile-bars-label-gap:.45rem;
  --mobile-bars-label-line-height:1;
  --mobile-bars-icon-size:1em;
  --mobile-bars-active-bg:var(--bg-dark);
  --mobile-bars-active-color:var(--ink-inverse);
  --mobile-bars-active-font-weight:600;
  --mobile-bars-hidden-offset:8px;

  /* Buttons */
  --button-radius:999px;
  --button-padding-y:6px;
  --button-padding-x:22px;
  --button-min-height:auto;
  --button-font-weight:600;
  --button-font-size:1rem;
  --button-border-width:1px;
  --button-border-style:solid;
  --button-shadow:none;

  --button-primary-bg:var(--akzent);
  --button-primary-color:var(--ink-inverse);
  --button-primary-border-color:transparent;
  --button-primary-hover-bg:var(--akzent-2);
  --button-primary-hover-color:var(--ink);
  --button-primary-icon-color:var(--akzent-2);
  --button-primary-hover-icon-color:var(--ink);

  --button-primary-2-bg:var(--bg-dark);
  --button-primary-2-color:var(--ink-inverse);
  --button-primary-2-border-color:transparent;

  --button-ghost-bg:var(--surface);
  --button-ghost-color:var(--akzent-2);
  --button-ghost-border-color:var(--akzent-2);
  --button-ghost-icon-color:var(--akzent);

  --button-light-bg:var(--surface);
  --button-light-color:var(--ink);
  --button-light-border-color:transparent;

  /* Form Elemente */
  --form-shell-padding:3rem;
  --form-gap:1rem;
  --form-control-padding:8px 16px;
  --form-control-radius:var(--radius);
  --form-card-radius:var(--radius);
  --form-panel-radius:var(--radius);
  --form-surface:#f9fafb;
  --form-accent:var(--brand);
  --form-accent-soft:rgba(0,55,108,.08);
  --form-accent-strong:rgba(0,55,108,.14);
  --form-text:var(--ink);
  --form-text-muted:var(--muted);
  --form-placeholder-text:var(--form-text-muted);
  --form-placeholder-font-size:.75rem;

  --form-switch-option-min-height:4rem;

  --form-datetime-plus-side-width:72px;
  --form-datetime-plus-date-columns:5;
  --form-datetime-plus-month-gap:1rem;
  --form-datetime-plus-day-gap:.5rem;
  --form-datetime-plus-day-min-height:58px;
  --form-datetime-plus-time-gap:.45rem;
  --form-datetime-plus-time-min-height:42px;
  --form-datetime-plus-panel-height:360px;

  /* Accordion */
  --accordion-border:rgba(0, 0, 0, 0.08);
  --accordion-shadow:0 10px 30px rgba(0, 0, 0, 0.04);
  --accordion-gap:1rem;
  --accordion-padding:1.4rem 1.5rem;

  --accordion-plus-duration:.55s;
  --accordion-plus-fade-duration:.35s;
  --accordion-plus-easing:cubic-bezier(.22,.61,.36,1);
}

/* #endregion */

/* ======================================================================
  GENERAL
====================================================================== */
/* #region GENERAL =================================================== */

  /* #region Header */
  /* HEADER BRAND - NAVIGATION */
  .btn-small{font-weight:600!important;padding:2px 15px;font-size:var(--header-nav-font-size-sticky, inherit)}
  @media (max-width:900px){
    .btn-small{width:100%;border-radius:0}
    .site-nav.is-open .btn-small{min-height:35px}
  }
  /* #endregion */

  /* #region Footer */
  /* FOOTER BACK TO TOP */
  .BackToTopNav{display:block;align-items:center;padding:1.5em 2em;width:100%;background:var(--bg-dark);color:var(--ink-inverse);font:inherit;font-weight:600;font-size:.75rem;line-height:1;cursor:pointer;transition:transform .2s ease, box-shadow .2s ease, filter .2s ease;border:none}
  .BackToTopNav:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(0,55,108,.34);filter:saturate(1.08)}
  .BackToTopNav:focus-visible{outline:3px solid rgba(10,102,194,.28);outline-offset:4px}
  .BackToTopNav:before{content:"↑";font-size:1rem;line-height:1;margin-right:.3em}

  /* FOOTER BASIS */
  .site-footer{padding:70px 0 28px;background:var(--surface);border-top:0px solid var(--bg-dark);color:var(--ink);font-size:.75rem}
  .footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr 1fr .7fr;gap:2rem}
  .site-footer a{display:block;color:var(--ink);margin:8px 0}
  .footer-subhead{margin-top:24px}
  .footer-tags{font-size:.75rem;text-align:right;margin-bottom:0}
  .footer-tags-hashtag{font-size:1rem;text-transform:uppercase;text-align:right}
  .footer-bottom{margin-top:40px;padding-top:24px;border-top:.5px solid var(--bg-dark)}
  .footer-bottom.split-2{gap:var(--gap-s)}
  .footer-bottom.split-2 a{display:inline-flex;margin:0}
  .footer-bottom-finish{display:flex;justify-content:center;align-items:center;margin:24px auto 44px;padding-top:24px;border-top:.5px solid var(--bg-dark);font-weight:600}

  /* FOOTER COOKIE MENÜ */
  .footer-cookie-menu{position:relative;display:inline-flex;align-items:center}
  .footer-cookie-menu__toggle{display:inline-flex;align-items:center;gap:.25rem;padding:0;border:0;background:transparent;color:var(--ink);font:inherit;font-weight:600;cursor:pointer}
  .footer-cookie-menu__toggle:after{content:"▸";font-size:1rem;line-height:1;transition:transform .2s ease}
  .footer-cookie-menu.is-open .footer-cookie-menu__toggle:after{transform:rotate(-90deg)}
  .footer-cookie-menu__panel{position:absolute;right:0;bottom:calc(100% + var(--gap-xs));min-width:260px;display:grid;gap:6px;padding:var(--gap-xs);background:rgba(255,255,255,.98);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);z-index:5}
  .footer-cookie-menu__panel[hidden]{display:none!important}
  .footer-cookie-menu__action{display:block;width:100%;padding:10px 12px;border:0;border-radius:var(--radius);background:transparent;color:var(--ink);font:inherit;font-weight:600;text-align:left;cursor:pointer}
  .footer-cookie-menu__action:hover{background:#f5f8fc}
  .footer-cookie-menu__action:focus-visible,.footer-cookie-menu__toggle:focus-visible{outline:2px solid var(--akzent-2);outline-offset:3px}
  @media (max-width:900px){
    .footer-cookie-menu{justify-content:flex-start}
    .footer-cookie-menu__panel{left:0;right:auto;min-width:min(280px,calc(100vw - 40px))}
  }

  /* FOOTER PROJEKT SPEZIFISCH */
  .footer-contact-wrap{display:grid;gap:1rem}
  .footer-contact-wrap a{margin:0;line-height:1}
  .footer-contact{display:inline-flex;align-items:center;width:100%}
  .footer-contact .service-icon{width:15px;height:15px;color:var(--bg-dark);margin:0 .5rem 0 0}
  .site-footer h4{margin:0}
  .fotter__col_one{display:flex;flex-direction:column;height:100%;justify-content:space-between}
  .social-media-icons{display:inline-flex;gap:1rem;align-items:center;width:fit-content;margin:0 auto}
  .split-footer-3{display:grid;grid-template-columns:1fr 1fr 2fr;gap:var(--gap-s);align-items:center}
  @media (max-width:900px){
    .footer-grid{grid-template-columns:1fr}
    .footer-tags{text-align:left}
    .footer-tags-hashtag{text-align:left}
    .footer-bottom-finish{display:block}
    .split-footer-3{grid-template-columns:1fr}
    .social-media-icons{margin:0 auto 0 0}
  }

  .madeinger{width:100%;max-width:133px}
  .madeinge__line{width:100%;display:grid;grid-template-columns:1fr 1fr 1fr;gap:5px}
  .madeinge__line .line{width:100%;height:8px}
  .madeinge__line .line.schwarz{background:#1A1A1A}
  .madeinge__line .line.rot{background:#C1121F}
  .madeinge__line .line.gold{background:#E9B949}
  .madeinger__text{font-size:10px;font-weight:600;width:100%;text-align:center;margin:.3em 0;letter-spacing:2px;text-transform:uppercase}

  @media (prefers-reduced-motion:reduce){
    .footer-cookie-menu__toggle:after{transition:none}
  }
  /* #endregion */

  /* #region 404 Seite */
  .not-found-page{position:relative;min-height:calc(100vh - var(--gap-xxl));overflow:hidden;padding:0 0;background:
    radial-gradient(circle at 15% 20%, rgba(59,165,212,.16), transparent 30%),
    radial-gradient(circle at 85% 18%, rgba(59,165,212,.36), transparent 24%),
    linear-gradient(180deg, #ffffff 0%, #eef3f7 100%)}
  .not-found-page__grid{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center}
  .not-found-page__grid img{position:relative;z-index:2}
  .not-found-page__astronaut{position:relative;justify-self:center;width:min(100%, 520px);transform-origin:65% 0%;animation:not-found-astronaut-sway 7.5s ease-in-out infinite;will-change:transform}
  .not-found-page__astronaut::before{content:"";position:absolute;top:0;left:65%;width:12px;height:12px;border-radius:999px;/*background:rgba(17,24,39,.18);border:2px solid rgba(255,255,255,.8);box-shadow:0 6px 18px rgba(17,24,39,.12);*/transform:translate(-50%,-35%)}
  .not-found-page__astronaut img{display:block;width:100%;height:auto;filter:drop-shadow(0 22px 32px rgba(17,24,39,.12));margin-top:-10px}
  .not-found-page__copy{position:relative;z-index:2}
  .not-found-page__copy h1{margin-bottom:1rem;font-size:clamp(1.8rem, 2.8vw, 3rem)}
  .not-found-page__copy .lead{max-width:38rem}
  .not-found-page__actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}
  .not-found-page__links{display:flex;flex-wrap:wrap;gap:18px;margin-top:28px}
  .not-found-page__links a{font-weight:700;color:var(--brand)}
  .not-found-page__visual{position:relative;min-height:420px;display:grid;place-items:center}
  .not-found-orbit{position:absolute;border-radius:999px;border:1px solid rgba(17,24,39,.08);background:rgba(255,255,255,.34);backdrop-filter:blur(10px)}
  .not-found-orbit--one{width:360px;height:360px}
  .not-found-orbit--two{width:250px;height:250px;top:12%;right:8%}
  .not-found-card{position:relative;z-index:2;max-width:340px;padding:30px;border-radius:28px;background:rgba(255,255,255,.78);border:1px solid rgba(255,255,255,.9);box-shadow:0 28px 80px rgba(16,24,40,.14);backdrop-filter:blur(14px)}
  .not-found-card__eyebrow{display:inline-flex;margin-bottom:14px;padding:8px 12px;border-radius:999px;background:rgba(59,165,212,.12);color:var(--brand);font-weight:800;font-size:.85rem}
  .not-found-card strong{display:block;font-family:var(--font-title);font-size:clamp(1.5rem,2vw,1.8rem);line-height:1.1}
  .not-found-card p{margin:14px 0 0;color:#526071}
  .not-found-card__chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
  .not-found-card__chips span{padding:8px 12px;border-radius:999px;background:var(--surface);border:1px solid rgba(17,24,39,.08);font-size:.92rem;font-weight:700}
  .not-found-badge{position:absolute;left:3%;bottom:10%;z-index:1;display:grid;place-items:center;width:92px;height:92px;border-radius:24px;background:var(--ink);color:var(--ink-inverse);font-family:var(--font-title);font-size:3rem;font-weight:800;box-shadow:0 22px 45px rgba(17,24,39,.24);transform:rotate(-12deg)}
  #net-bg{position:absolute;inset:0;width:100%;height:100%;z-index:0;opacity:.75}
  @keyframes not-found-astronaut-sway{
    0%,100%{transform:rotate(-1.5deg) translateY(0)}
    50%{transform:rotate(1.8deg) translateY(10px)}
  }
  @media (prefers-reduced-motion:reduce){
    .not-found-page__astronaut{animation:none}
  }

  @media (max-width:900px){
    .not-found-page__grid{grid-template-columns:1fr;gap:36px}
    .not-found-page__astronaut{width:min(100%, 440px);transform-origin:60% 0%;order:1}
    .not-found-page__astronaut::before{left:45%}
    .not-found-page__copy{order:2;margin-top:-10%}
    .not-found-page__visual{min-height:320px;order:-1}
    .not-found-orbit--one{width:280px;height:280px}
    .not-found-orbit--two{width:190px;height:190px;top:6%;right:4%}
    .not-found-badge{left:auto;right:4%;bottom:0;width:72px;height:72px;font-size:2.4rem}
  }
  @media (max-width:700px){.not-found-page__copy{margin-top:-15%}}
  @media (max-width:500px){.not-found-page__copy{margin-top:-25%}}
  /* #endregion */

  .form-grid label{font-weight:700}
/* #endregion */

/* ======================================================================
  PROJEKT SPEZIFISCH
====================================================================== */
/* #region PROJEKT =================================================== */

  /* =========================
    Home
  ========================= */
  /* #region HOME */

  /* #region HOME - Hero */
  .hero{position:relative;overflow:hidden;min-height:90vh;padding:2rem 0;display:flex;align-items:center;background:linear-gradient(180deg,#fff 0%,var(--bg) 100%)}
  .hero__grid{position:relative;z-index:1}
  .hero__actions,.trust-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
  .hero__content .eyebrow{margin:0}
  .hero__image{position:relative;margin-right:-20%}
  .hero__image-inner{position:relative;width:min(100%, 520px);margin-inline:auto}
  .hero__image-inner > img{width:100%;height:auto;display:block}
  .hero__image-door,.hero__image-door-overlay{position:absolute;inset:0;width:100%}
  .hero-word-wrap{display:none}
  .hero__image-door{z-index:-1}

  @media (max-width:1700px){
    .hero__image{margin-right:-5%}
  }

  @media (max-width:900px){
    .hero{overflow:visible;align-items:flex-start;padding:0 0}
    .hero .container.hero__grid{display:flex;flex-direction:column;width:100%}
    .hero .hero__image{order:1;margin:0;width:100%;min-height:95vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(180deg,#fff 0%,var(--bg) 100%)}
    .hero .hero__image-inner{width:min(90vw, 440px);margin-inline:auto}
    .hero .hero__content{order:2;position:relative;z-index:2;width:100%;padding:2rem 1rem;background:var(--bg)}
    .hero-word-wrap{position:absolute;inset:auto 0 -10% 0;display:block;pointer-events:none;text-align:left;overflow:hidden;white-space:nowrap}
    .hero-word{font-family:var(--font-title);font-size:clamp(3rem, 13vw, 10rem);font-weight:900;letter-spacing:-0.02em;line-height:1;color:var(--surface);-webkit-text-stroke:2px var(--bg-dark);opacity:.7}
    .hero-word span{color:var(--door);-webkit-text-stroke:0}
    .hero-word.one{inset:auto 0 16% 0}
    .hero-word.two{inset:auto 0 3% 0}
    .hero-word.three{inset:auto 0 -10% 0}
  }
  /* #endregion */
  /* #region Home - Tür Animations */
  .hero__image-door-overlay{transform:perspective(3000px) rotateY(0deg);transform-origin:right;animation:openDoor ease-out forwards;animation-delay:.25s;animation-duration:.3s}
  .fadeIn{transform:scaleX(0);animation:fadeIn ease-out forwards;animation-delay:.55s;animation-duration:.35s}
  .fadeInTextOne{transform:scaleX(0);animation:fadeInTextOne ease-out forwards;animation-delay:1s;animation-duration:.3s}
  .fadeInTextTwo{transform:scaleX(0);animation:fadeInTextTwo ease-out forwards;animation-delay:1.25s;animation-duration:.3s}
  .fadeInTextThree{transform:scaleX(0);animation:fadeInTextThree ease-out forwards;animation-delay:1.5s;animation-duration:.3s}

  @keyframes openDoor{
    from{transform:perspective(3000px) rotateY(0deg)}
    to{transform:perspective(3000px) rotateY(50deg)}
  }

  @keyframes fadeIn{
    from{transform:translateX(20%) scale(0.8)}
    to{transform:translateX(0) scale(1)}
  }

  @keyframes fadeInTextOne{
    from{opacity:0;transform:translateX(100%)scale(0.9)}
    to{opacity:1;transform:translateX(0%) scale(1)}
  }

  @keyframes fadeInTextTwo{
    from{opacity:0;transform:translateX(100%)scale(0.9)}
    to{opacity:1;transform:translateX(0%) scale(1)}
  }

  @keyframes fadeInTextThree{
    from{opacity:0;transform:translateX(100%)scale(0.9)}
    to{opacity:1;transform:translateX(0%) scale(1)}
  }
  /* #endregion */
  /* #region Home - References */
  .referenzen{position:relative;z-index:2;width:100vw;margin:0 calc(50% - 50vw);margin-top:-54px;padding:0 0 24px;overflow:hidden}
  @media (max-width:900px){.referenzen{margin-top:0}}
  /* #endregion */
  /* #region Home - Promise */
  .promise-section{padding-top:250px;background-image:linear-gradient(180deg, transparent 25%, #fff 25%)}
  .promise-card{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:center;background:none;border:0px solid var(--line);border-radius:var(--radius);padding:46px 0;box-shadow:none}
  .promise__actions{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin-top:2rem}
  .promise-image{margin-top:-250px}
  .promise-image img{width:100%;aspect-ratio:4/5;object-fit:contain;filter:grayscale(1)}

  @media (max-width:900px){
    .promise-section{padding-top:64px;background-image:linear-gradient(180deg, #fff 0%, #fff 100%)}
    .promise-card{display:grid;grid-template-columns:1fr;padding:0}
    .promise-image{margin:0 auto;max-width:70%}
    .promise-copy{position:relative;z-index:2;background:var(--surface);padding:2rem 0}
  }
  /* #endregion */
  /* #region Home - Performance Promise*/
  .performance-promise{background:var(--bg)}
  .performance-promise h2{text-align:center;margin-bottom:var(--gap-s)}
  .card-perf-prom{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);padding:3rem 2rem;height:100%}
  .perf-prom-count{display:flex;width:4.5rem;height:4.5rem;align-items:center;justify-content:center;text-align:center;background:var(--akzent-2);color:var(--surface);font-family:var(--font-title);font-size:clamp(1.8rem, 4vw, 2.4rem);font-weight:800;line-height:1;padding:1rem;border-radius:999px;margin-bottom:1.5rem}
  .ref-card.card-perf-prom h3{font-size:var(--font-size-eyebrow)}
  /* #endregion */
  /* #region Home - Services */
  .services-card{display:grid;grid-template-columns:1.1fr .9fr;gap:var(--gap);align-items:center;background:none}
  .services{background:var(--bg-dark);color:var(--ink-inverse)}
  .services h2{color:var(--surface)}
  .services h3{color:var(--brand)}
  .cards.three{margin-bottom:1em}
  .services a{color:var(--akzent)}
  .services .card{padding:3rem 2rem}

  @media (max-width:900px){
    .services-card{gap:2rem}
  }
  /* #endregion */
  /* #region Home - Quote Band --- PRÜFEN !!!! */
  /*
  .quote-band{background:#111827;color:#fff;text-align:center}
  .quote-band h2{font-size:clamp(2.4rem,6vw,5.6rem);line-height:.96;margin:0 0 18px}
  .quote-band p{color:rgba(255,255,255,.72);font-size:1.2rem}
  */
  /* #endregion */
  /* #region Home - References */
  .ref-layout{display:grid;grid-template-columns:1fr 3fr;gap:64px;align-items:center}
  .ref-intro .copy{max-width:420px;margin-bottom:20px}
  .refs{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
 
  /* Reference Cards */
  .ref-card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);transition:transform .2s ease}
  .ref-card:hover{transform:translateY(-6px)}
  .ref-card__image{display:block;overflow:hidden}
  .ref-card__image img{width:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .35s ease}
  .ref-card:hover .ref-card__image img{transform:scale(1.04)}
  .ref-card__body{padding:1rem 1rem 4rem}
  .ref-card__body span{color:var(--muted);font-size:.85rem}
  .ref-card__body p{color:var(--muted);font-size:.96rem;margin:0 0 14px}
  .ref-card h3{margin:6px 0 12px;font-size:1.1rem}
  .ref-more{position:absolute;bottom:1rem;right:1rem}
  
  /* References Mobile Stack */
  .references-sticky-title{display:none}

  @media (max-width:900px){
    .section.references{overflow:visible}
    .ref-layout{grid-template-columns:1fr;gap:40px}
    .refs{grid-template-columns:1fr}
    .references .ref-stack{padding-bottom:7vh;overflow:visible}
    .references-sticky-title.is-sticky{display:inline-block;position:sticky;top:60px;z-index:1;width:max-content;padding:.2rem .75rem;background:var(--bg);border-radius:999px;animation:slideDownRefTitle .25s ease-out both}

    @keyframes slideDownRefTitle{
      from{opacity:0;transform:translateY(-12px)}
      to{opacity:1;transform:translateY(0)}
    }

    .references .refs{display:block;position:relative;overflow:visible}
    .references .ref-stack-card{position:sticky !important;margin-bottom:1.5rem;transform-origin:top center;will-change:transform, opacity, filter;transition:filter .2s ease;backface-visibility:hidden;transform:translate3d(0,0,0)}
    .references .ref-stack-card:nth-of-type(1){top:100px;z-index:2}
    .references .ref-stack-card:nth-of-type(2){top:124px;z-index:3}
    .references .ref-stack-card:nth-of-type(3){top:148px;z-index:4}
  }
  /* #endregion */
  /* #region Home - Customers */
  .customers-section{position:relative;background:var(--surface);z-index:5;background:var(--bg)}
  .customers-title{color:var(--akzent);font-weight:800}
  .customers{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin-top:2rem}
  .customers-image{margin:0;position:relative}
  .customers-image img.customers-image__img{width:100%;aspect-ratio:4/5;object-fit:contain;filter:grayscale(1)}
  .customers-list{list-style:none;margin:1rem 0;padding:0;min-height:3.2em}
  .customers-item{display:none}
  .customers-item:first-child{display:block;min-height:1.5em;font-style:italic}
  .customers-thank{position:absolute;top:37%;right:-80px;font-family:var(--font-title);font-size:calc(var(--font-size-h2) * .75);color:var(--bg-dark);font-weight:800;line-height:1.1}

  /* GOOGLE BEWERTUNG */
  .review-google__head{margin:-5rem auto 0 50%;width:135px}
  .review-google__first{display:flex;align-items:center;gap:10px;justify-content:space-between;margin-bottom:.3em}
  .review-google__star{color:#fb3;font-size:.93em;line-height:1}
  .review-google__info{font-size:.6em}
  .review-google__rating{font-size:1.9em;font-weight:800;line-height:1}
  @media (max-width:900px){
    .review-google__head{margin:-3rem auto 0 50%;width:165px}
  }
  /* #endregion */
  /* #region Home - Facts */
  .facts-section{color:rgb(255, 255, 255);background:rgb(17, 24, 39)}
  .facts-section .social-proof__stats .stat-card{padding:18px 16px;text-align:center;border-bottom:1px solid rgba(255,255,255,.25);border-right:1px solid rgba(255,255,255,.25)}
  .facts-section .social-proof__stats .stat-card:nth-child(2n){border-right:0}
  .facts-section .social-proof__stats .stat-card:nth-child(5), .facts-section .social-proof__stats .stat-card:nth-child(6){border-bottom:0}
  .facts-section .modul-count-value{margin:0;font-family:var(--font-title);font-size:clamp(1.9rem,3.6vw,3rem);line-height:1;letter-spacing:-.04em;font-weight:600;color:var(--akzent-2)}
  .facts-section .stat-label{margin:10px 0 0;font-size:.93rem}

  .facts-section .modul-reviewsslider__track{grid-auto-columns:minmax(100%,1fr)}
  .facts-section .modul-reviewsslider__slide{background:transparent;border:none;border-radius:none;box-shadow:none}
  .facts-section .modul-reviewsslider__text, .facts-section-modul .modul-reviewsslider__details{font-size:.88em;line-height:1.3}
  .facts-section .modul-reviewsslider__link-label{color:var(--muted);font-size:.88em}
  .facts-section .modul-reviewsslider__details summary{color:var(--muted);font-size:.88rem}

  @media (max-width:900px){
    .facts-section .modul-reviewsslider__track{grid-auto-columns:minmax(90vw,1fr)}
    .facts-section .social-proof__stats .split-2{grid-template-columns:1fr 1fr}
  }
  /* #endregion */
  /* #region Home - Logo Slider */
  .logo-slider-section {background:var(--surface);padding:50px 0px;}
  .logo-slider-section .modul-logoslider__item img{max-height:80px}
  /* #endregion */
  /* #region Home - Rain */
  .rain-section{background:var(--surface);padding-bottom:0;overflow:hidden}
  .services-section{overflow:visible}
  .rain-image img{width:100%;aspect-ratio:4/5;object-fit:contain;filter:grayscale(1)}
  .rain__actions{margin-top:2rem}

  @media (max-width:900px){
    .section.rain-section{padding-bottom:0}
    .rain-section .split-2{gap:.5rem}
    .rain-image img{width:100%;aspect-ratio:auto}
  }
  /* #endregion */
  /* #region Home - Differences */
  .difference-section{background:var(--bg-dark);color:var(--surface);text-align:center}
  .difference-section h2{color:var(--akzent-2)}
  .difference-section .container{width:min(var(--max-small),calc(100% - 40px))}
  .difference-section p{padding-top:2rem}
  .difference-card{background:none;margin-top:4rem}
  .difference-card .checklist{margin:0}
  .difference-card .checklist li{font-weight:600;margin-bottom:0.75rem;padding-left:2.5rem;min-height:3em}
  .difference-card .difference-first .checklist li:before{font-weight:600}
  .difference-card .difference-second .checklist li:before, .difference-second .checklist li:before{color:var(--akzent-2);font-weight:600}
  .difference-first{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius) 0 0 var(--radius);padding:3rem 3rem;box-shadow:var(--shadow);color:var(--brand)}
  .difference-second{background:var(--surface);border:1px solid var(--akzent-2);border-radius:var(--radius);padding:3rem 3rem;box-shadow:var(--shadow);color:var(--brand)}
  .float-1{--f-amp:8px;--f-dur:3000ms;--a-delay:200ms;--scroll-fade-x:0px;animation:float var(--f-dur) ease-in-out var(--a-delay) infinite;will-change:transform}
  .float-2{--f-amp:15px;--f-dur:3500ms;--a-delay:400ms;--scroll-fade-x:0px;animation:float var(--f-dur) ease-in-out var(--a-delay) infinite;will-change:transform}
  .difference-first.scroll-fade{--scroll-fade-from:120px}
  .difference-second.scroll-fade{--scroll-fade-from:-120px}

  @keyframes float{
    0%, 100%{transform:translate3d(var(--scroll-fade-x, 0px),0,0)}
    50%{transform:translate3d(var(--scroll-fade-x, 0px),var(--f-amp),0)}
  }

  @media (max-width:900px){
    .difference-first{border-radius:var(--radius) var(--radius) 0 0;padding:1.5rem 1.2rem;margin:0 1.5rem}
    .difference-second{padding:1.5rem 1.2rem;margin:0 .5rem}
    .float-2{--f-amp:10px}

    @keyframes float{
      0%, 100%{transform:translate3d(var(--scroll-fade-x, 0px),0,0)}
      50%{transform:translate3d(calc(var(--scroll-fade-x, 0px) + var(--f-amp)),0,0)}
    }
  }
  /* #endregion */
  /* #region Home - Final CTA */
  .section.final-cta{position:relative;background:var(--surface);padding:0 0 92px}
  .final-cta-wrap{position:relative;width:min(var(--max), calc(100% - 40px));margin-inline:auto;padding-top:350px}
  .final-cta .container.card-soft{width:min(var(--max), calc(100% - 40px));background:var(--bg-dark);color:var(--surface);position:relative;bottom:0;z-index:1}
  .final-cta .final-cta-image{position:absolute;z-index:2;inset:auto 0% 0% 0%;top:-300px}
  .final-cta .final-cta-image img{max-width:550px;filter:grayscale(1);margin:auto auto 30%}
  .final-cta .final-cta-image-overlay{position:absolute;inset:0;border-radius:var(--radius);background:linear-gradient(0deg, var(--bg-dark) 35%, transparent 100%);z-index:3}
  .final-cta .final-cta-content{position:relative;z-index:4;color:var(--surface);text-align:center;padding:4rem 12rem}
  .final-cta .final-cta-content p{color:var(--surface);margin:0 0 2rem}
  .final-cta .final-cta-content h2{margin:0}

  .final-cta .split-2 .final-cta-contact{display:grid;align-items:center}
  .final-cta .service-icon{width:44px;height:44px;color:var(--surface);margin:3rem auto 1rem}

  @media (max-width:900px){
    .section.final-cta{width:min(var(--max), 100%)}
    .final-cta .final-cta-image img{max-width:550px;margin:auto auto 50%}
    .final-cta .final-cta-content{padding:1rem 1rem}
    .final-cta .container.split-2{grid-template-columns:1fr;gap:1rem}
    .final-cta .service-icon{margin:1.5rem auto 1rem}
  }
  @media (max-width:700px){
    .final-cta .container.card-soft{width:100%}
    .final-cta .final-cta-image img{max-width:100%;margin:auto auto 60%}
    .final-cta .final-cta-content{padding:1rem 0}
  }
  @media (max-width:500px){
    .final-cta .final-cta-image img{max-width:100%}
    .final-cta .final-cta-image-overlay{background:linear-gradient(0deg, var(--bg-dark) 70%, transparent 100%)}
    .final-cta .final-cta-content{padding:1rem 0}
  }
  /* #endregion */
  /* #region Responsive - Home */
  @media (max-width:900px){
    .hero__grid,.services-card,.rain-card,.difference-card{grid-template-columns:1fr}
    .hero .hero__image{min-height:calc(100vh - 80px)}
    .promise-image-wrap{display:flex;align-items:flex-start;justify-content:center}
    .promise-image{margin:0 auto;max-width:70%}
    .hero-ref-band{margin-top:-28px;padding-bottom:12px}
    .hero-ref-slider{--hero-ref-gap:1rem;padding:18px 1rem 75px}
    .hero-ref-card{flex-basis:min(85vw,350px)}
    .customers-card{gap:2rem}
    .customers-copy{order:2}
    .customers-image{order:1}
    .customers-image img.customers-image__img{max-width:80%;margin:0 auto}
    .customers-list{min-height:6.4em}
  }
  /* #endregion */

  /* #endregion */

  /* =========================
    Empfehlungs Seiten
  ========================= */
  /* #region Empfehlung */

  /* #region Empfehlungsseite */
  .section-empf-hero .hero__image{margin:0}
  .section-empf-hero .hero__image img{border-radius:var(--radius)}
  .section-empf-ideal{text-align:center}
  .section-empf-ideal img{max-width:50px;margin:0 auto 1rem}
  .section-empf-ideal .split-4{margin:2rem auto 0}
  .section-empf-schritte{text-align:center;background:var(--bg-dark);color:var(--surface)}
  .schritte-wraper{display:grid;grid-template-columns:.5fr auto;gap:10px;align-items:center}
  .schritte-wraper-final{border:1px solid var(--akzent-2);text-align:center;display:block;padding:2rem;border-radius:var(--radius)}
  .schritte-step{display:block;font-family:var(--font-title);font-size:2.5rem;line-height:1em;border:2px solid var(--akzent-2);color:var(--akzent-2);padding:1rem;text-align:center;font-weight:400;border-radius:999px;min-width:1.5em}
  .schritte-lead{text-align:left;padding:.5rem;font-size:.9em}
  .schritte-lead:nth-last-child{text-align:center;padding:.5rem}
  .schritte-wraper-final img{max-width:70px;margin:0 auto 2rem}
  .schritte-lead-final h3{margin:0;font-weight:600;line-height:1.25}
  .akzent-text-small{color:var(--akzent-2);font-size:.75em;margin-top:1rem}
  .kundenzufriedenheit .score{font-size:3rem;font-weight:600}
  .kundenzufriedenheit .text{font-weight:600}
  .section-empf-faq{padding-top:0}
  .section-empf-faq .faq-wraper img{width:1.2rem;display:block;margin:auto;transform:translateY(-2px)}
  .section-empf-faq .split-2{margin-bottom:7rem;margin-top:3rem}

  .section-empf-faq{text-align:center}
  .section-empf-faq .faq-wraper{display:grid;grid-template-columns:auto 1fr;gap:1rem;align-items:flex-start}
  .section-empf-faq .faq-step{display:block;font-family:var(--font-title);font-size:var(--font-size-h3);line-height:1;border:none;background:var(--bg-dark);color:var(--surface);padding:.5em;text-align:center;align-items:center;font-weight:400;border-radius:999px;width:2em;height:2em}
  .section-empf-faq .faq-lead{text-align:left;padding:.5rem;align-items:flex-start}
  /* #endregion */
  /* #region Empfehlung - Status */
  .referral-status-shell{display:grid;gap:22px}
  .referral-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
  .referral-status-card{padding:22px;border-radius:20px;background:#f9fafb;border:1px solid var(--line);text-align:center}
  .referral-status-card strong{display:block;font-family:var(--font-title);font-size:2rem;line-height:1;color:var(--brand);margin-bottom:8px}
  .referral-status-card span{color:var(--muted);font-weight:700}

  @media (max-width:900px){
    .section-empf-schritte .split-7{max-width:400px}
    .referral-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .schritte-wraper{grid-template-columns:20% auto;gap:1rem}
    .schritte-step{max-width:3em;margin:0 auto}
    .schritte-step-pfeil{margin:0 auto}
    .schritte-step-pfeil img{transform:rotate(90deg);max-width:4rem;height:auto}
  }
  @media (max-width:680px){
    .referral-status-grid{grid-template-columns:1fr}
  }

  .section-empf-hero i.name{color:var(--akzent-2)}
  .section-warum-ich{text-align:center;background:var(--bg-dark);color:var(--surface)}
  .section-warum-ich h2{margin:0;color:var(--akzent-2)}
  .empfehlung__reviews{min-width:0}
  .empfehlung-form{padding-top:0}
  .empfehlung-form .form-grid{gap:2rem}
  .empfehlung-form .form-grid .checkbox-label{align-items:center}
  .form-grid .gift-select{padding:2rem 16px}
  .gift-split{display:grid;grid-template-columns:40px minmax(0,1fr);gap:.5rem;align-items:center;min-width:0}
  .gift-select span{font-weight:700!important;line-height:1.2;min-width:0;overflow-wrap:anywhere;word-break:break-word}
  .gift-select svg{width:40px;color:var(--akzent-2)}
  .vorteile-list{display:flex;flex-direction:column;gap:.5rem;min-width:0}
  .vorteile-list .vorteile{width:100%}
  .vorteile{display:flex;width:100%;padding:3px 0}
  .vorteile svg{height:1.75rem;margin-right:.5rem}
  /* #endregion */
  /* #region Empfehlung - Modal PopUp */
  .referral-modal{width:min(860px,calc(100vw - 32px));max-width:860px;padding:0;border:0;background:transparent}
  .referral-modal::backdrop{background:rgba(15,23,42,.62);backdrop-filter:blur(8px)}
  .referral-modal__backdrop{display:none}
  .referral-modal__dialog{position:relative;background:#fff;border-radius:28px;padding:34px;border:1px solid var(--line);box-shadow:0 30px 90px rgba(2,8,23,.32)}
  .referral-modal__close{position:absolute;top:18px;right:18px;width:46px;height:46px;border-radius:999px;border:1px solid var(--line);background:#fff;font-size:1.8rem;line-height:1;cursor:pointer}
  .referral-modal__header{display:grid;gap:12px;padding-right:56px}
  .referral-modal__body{display:grid;gap:18px;margin-top:24px}
  .referral-consent-note{display:grid;gap:12px;padding:18px 20px;border-radius:20px;background:rgba(59,165,212,.08);border:1px solid rgba(34,119,168,.16)}
  .referral-consent-note p{margin:0;color:var(--ink)}
  .referral-consent-note__actions{display:flex;gap:12px;flex-wrap:wrap}
  .referral-steps{display:flex;gap:10px}
  .referral-steps span{display:grid;place-items:center;width:42px;height:42px;border-radius:999px;border:1px solid var(--line);font-weight:800;color:var(--muted);background:#f9fafb}
  .referral-steps span.is-active{background:var(--brand);border-color:var(--brand);color:#fff}
  .referral-steps span.is-complete{background:rgba(59,165,212,.12);border-color:rgba(59,165,212,.3);color:var(--brand)}
  .referral-panel{display:none}
  .referral-panel.is-active{display:grid;gap:18px}
  .referral-form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}

  .choice-group{margin:0;padding:0;border:0;display:grid;gap:10px}
  .choice-group legend{padding:0;font-weight:800;margin-bottom:4px}
  .choice-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .choice-button{display:block;cursor:pointer}
  .choice-button input,.choice-card input{position:absolute;opacity:0;pointer-events:none}
  .choice-button span{display:flex;align-items:center;justify-content:center;min-height:58px;padding:12px 16px;border:1px solid var(--line);border-radius:18px;background:#f9fafb;font-weight:800;transition:.2s ease}
  .choice-button input:checked + span{border-color:var(--brand);background:rgba(0,55,108,.08);color:var(--brand);box-shadow:inset 0 0 0 1px rgba(0,55,108,.14)}

  .choice-list{display:grid;gap:12px}
  .choice-card{position:relative;display:block;cursor:pointer}
  .choice-card__content{display:grid;gap:6px;padding:18px 18px;border-radius:20px;background:#f9fafb;border:1px solid var(--line);transition:.2s ease}
  .choice-card__content strong{font-size:1.05rem}
  .choice-card__content small{color:var(--muted)}
  .choice-card input:checked + .choice-card__content{border-color:var(--brand);background:rgba(0,55,108,.06);box-shadow:inset 0 0 0 1px rgba(0,55,108,.16)}

  .referral-output{display:grid;gap:12px;padding:18px;border-radius:22px;background:#f9fafb;border:1px solid var(--line)}
  .referral-output input,.referral-output textarea{width:100%;border:1px solid var(--line);border-radius:16px;padding:14px 16px;font:inherit;background:#fff}
  .referral-output textarea{min-height:220px;resize:vertical;margin-top:.5rem}
  .referral-output .btn{width:max-content}
  .referral-output__actions{display:flex;gap:12px;flex-wrap:wrap}
  .referral-output--message{margin-top:6px}
  .referral-qr-layout{display:grid;grid-template-columns:1.4fr .8fr;gap:18px;align-items:center;margin-top:6px;padding-top:18px;border-top:1px solid var(--line)}
  .referral-qr-copy h3{margin:0 0 10px;font-size:1.2rem}
  .referral-qr-copy p{margin:0;color:var(--muted)}
  .referral-qr-box{display:grid;place-items:center;padding:18px;border-radius:20px;background:#fff;border:1px solid var(--line)}
  .referral-qr-box__canvas{display:grid;place-items:center;min-width:164px;min-height:164px}
  .referral-qr-box__canvas img,.referral-qr-box__canvas canvas{display:block;max-width:100%;height:auto}

  .referral-landing .page-hero{min-height:auto}

  @media (max-width:900px){
    .referral-modal{width:calc(100vw - 20px)}
    .referral-modal__dialog{padding:24px 18px}
    .referral-consent-note__actions{flex-direction:column}
    .referral-form-grid-2,.choice-buttons{grid-template-columns:1fr}
    .referral-output__actions{flex-direction:column}
    .referral-output__actions .btn{width:100%}
    .referral-qr-layout{grid-template-columns:1fr}
  }
  /* #endregion */

  /* #endregion */

  /* =========================
    Über mich Seite
  ========================= */
  /* #region Über mich */

  /* #region Über mich Seite */
  .page-hero.hero--about{background:var(--surface)}
  .hero--about .container--wide{background:var(--bg)}
  .hero--about img{margin-top:3rem;margin-bottom:-3rem}
  .section-about-me{text-align:center;background:var(--surface)}
  .section-about-me .container{align-items:baseline;width:min(var(--max-small), calc(100% - 40px))}
  .about-lead{text-align:left}
  .section-about-zitat{background:var(--surface)}
  .section-about-zitat .container{border-top:1px solid var(--bg-dark);border-bottom:1px solid var(--bg-dark)}
  .section-about-zitat .container-zitat{width:min(var(--max-extra-small),calc(100% - 40px));margin-inline:auto;padding:2rem 0;font-style:italic;font-family:var(--font-serife);font-size:1.55em;line-height:1.4}
  .about__content{padding:3rem 0;align-items:center}
  .section-about-me .split-2{gap:var(--gap-s) var(--gap)}

  .social-proof{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center}
  .social-proof__reviews,
  .social-proof__stats{min-width:0}
  
  @media (max-width:900px){
    .about__content{background:var(--bg);z-index:2}
  }
  @media (max-width:600px){
    .hero--about img{margin-top:2rem;margin-bottom:0}
    .hero--about .split-2{gap:0}
    .section-about-zitat .container-zitat{margin-inline:auto;padding:1rem 0;font-size:1.1rem;line-height:1.3}
  }
  /* #endregion */

  /* #endregion */

  /* =========================
    Leistungen Seite
  ========================= */
  /* #region Leistungen */

  /* #region Leistungen */
  .services-layout{display:grid;grid-template-columns:220px 1fr;gap:3rem;align-items:start}
  .services-layout .split-3{gap:var(--gap-s);align-items:baseline}
  .services-nav{
    --services-nav-sticky-top:60px;
    --services-nav-sticky-top-hidden:0px;
  }
  .services-nav{position:sticky;top:120px;display:flex;flex-direction:column;gap:.25rem;margin:5rem 0 1rem/*;background:var(--surface);padding:1rem;border-radius:var(--radius)*/}
  .services-nav a{display:inline-flex;align-items:center;font-size:.95rem;text-decoration:none;/*color:var(--akzent);*/padding:.6rem .8rem;border-left:2px solid transparent;transition:.2s ease}
  .services-nav-image{max-width:100px;margin-top:2rem;filter:grayscale(1)/*;margin-inline:auto*/}
  /*.services-nav-text{font-size:.75em;line-height:1.2}*/
  .nav-services-icon{display:inline-flex}
  .nav-services-icon .service-icon{width:25px;height:25px;color:var(--bg-dark);margin-right:.5em}
  .services-nav a:hover .nav-services-icon .service-icon,
  .services-nav a.is-active .nav-services-icon .service-icon,
  .services-nav a[aria-current="location"] .nav-services-icon .service-icon{color:var(--akzent)}
  .services-nav a img{display:inline-block;width:35px}
  .services-nav a:hover,
  .services-nav a.is-active,
  .services-nav a[aria-current="location"]{color:var(--akzent);border-left-color:var(--akzent);background:rgba(255,255,255,.2)}
  .section-services{padding:5rem 0;border-bottom:1px solid var(--bg-dark)}
  .section-services:last-child{border-bottom:none}
  /*.section-kicker{display:inline-block;margin-bottom:.75rem;font-size:.85rem;letter-spacing:.08em;color:var(--akzent);font-weight:600}*/
  .section-services h2{margin-bottom:1rem}
  .section-lead{max-width:100%;margin-bottom:2.5rem;line-height:1.7}
  .card-services{position:relative;padding:1.6rem;border:1px solid var(--bg-dark);border-radius:1rem;background:rgba(255,255,255,.03);height:100%}
  .card-services.highlight{border-color:var(--akzent-2);background:rgba(192, 175, 130, .2)}
  .card-services::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(135deg, rgba(255,255,255,.08), transparent 35%)}

  @media (max-width:900px){
    .services-layout{display:block}
    .section-services{scroll-margin-top:var(--services-section-scroll-margin,150px)}
    .section-services .container{width:100%}
    /* .services-nav{position:sticky;top:80px;display:grid;grid-template-columns:1fr 1fr 1fr;overflow-x:auto;margin-bottom:2rem;padding:0 0 1rem;z-index:10;background:var(--bg);margin:1rem 0 0} */
    .services-nav{position:sticky;top:var(--services-nav-sticky-top,60px);display:flex;flex-direction:row;flex-wrap:wrap;gap:0 .45rem;align-items:stretch;margin-bottom:2rem;padding:0 0 1rem;z-index:10;background:var(--bg);margin:1rem 0 0;transition:top .28s ease}
    body.mobile-bars-hidden .services-nav{top:var(--services-nav-sticky-top-hidden, 8px)}
    /* .services-nav a{display:inline-flex;flex:1 1 calc(33.333% - .45rem);min-width:max-content;white-space:nowrap;border-left:0;border-bottom:none;padding:.45rem .8rem} */
    .services-nav a{display:inline-flex;flex:0 1 auto;white-space:nowrap;border-left:0;border-bottom:none;padding:.25em .15em}
    .nav-services-icon .service-icon{margin-right:.25em}
    .services-nav-image{display:none}
  }
  @media (max-width:700px){
    .section-services{scroll-margin-top:var(--services-section-scroll-margin,150px)}
    /* .services-nav{grid-template-columns:1fr 1fr;padding:0} */
    .services-nav{padding:0}
    /* .services-nav a{flex-basis:calc(50% - .45rem);padding:.35rem .7rem} */
    .services-nav a{padding:.25em .15em}
  }
  @media (max-width:450px){
    .section-services{scroll-margin-top:var(--services-section-scroll-margin,120px)}
    /* .services-nav a{flex-basis:100%;font-size:.75rem} */
    .services-nav a{font-size:.75rem}
  }
  /* #endregion */

  /* #endregion */

  /* =========================
    Subpages - Shared
  ========================= */
  /* #region Subpages */

  /* #region Subpages */
  .page-hero{padding:84px 0 58px;background:linear-gradient(180deg,#fff 0%,var(--bg) 100%);position:relative;overflow:hidden}
  .page-hero h1{line-height:.94;margin:0 0 22px}
  /*.page-hero .lead{max-width:850px}*/
  .kicker{display:inline-flex;gap:8px;align-items:center;padding:0 12px;border-radius:999px;background:#fff;border:1px solid var(--line);color:var(--brand);font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;margin-bottom:12px}

  .feature-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}
  .feature-list li{padding:14px 16px;border-radius:18px;background:#fff;border:1px solid var(--line)}

  @media (max-width:900px){
    .page-hero{padding:56px 0 36px}
  }
  /* #endregion */

  /* #endregion */

  /* =========================
    Lösungen für Vereine
  ========================= */
  /* #region Vereine */

  /* #region Vereine Seite */
  .section-title{font-size:var(--font-size-h2);margin:0}

  .feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:stretch}
  .feature-block{background:#fff;border:1px solid var(--line);border-radius:24px;padding:32px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:18px;min-height:320px;text-align:left}
  .feature-block h3{margin:0;font-size:1.7rem}
  .feature-block p{color:var(--muted)}

  .process-list{display:grid;gap:24px}
  .process-step{background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:var(--shadow);display:grid;gap:18px}
  .process-step h3{margin:0;font-size:1.55rem}

  .section-verein-faq .faq-list{display:grid;gap:16px}
  .section-verein-faq .faq-item{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;box-shadow:var(--shadow)}
  .section-verein-faq .faq-item h3{margin:0 0 12px;font-size:1.3rem}
  .section-verein-faq .faq-item p{margin:0;color:var(--muted)}

  .bullet-list{list-style:disc inside;margin:0 0 1.5rem;padding-left:1rem;color:var(--muted);text-align:left}
  .bullet-list li{margin-bottom:.75rem}

  .image-card{border-radius:22px;overflow:hidden;background:#f3f3f3;border:1px dashed var(--line);min-height:240px;display:grid;place-items:center;color:var(--muted);text-align:center;padding:24px}

  @media (max-width:900px){
    .feature-grid{grid-template-columns:1fr}
  }
  /* #endregion */

  /* #endregion */

  /* =========================
    Kontakt & Formulare
  ========================= */
  /* #region Kontakt & Formulare */

  /* #region Kontakt Seite */
  .section-contact-hero{text-align:center}
  .switch-button{padding:0 0 2rem;margin:0 0 2rem;border-bottom:1px solid var(--line)}
  .section-contact{padding:0 0 var(--section-gap)}
  .section-contact .container.split-2{width:min(var(--max), calc(100% - 40px));grid-template-columns:.8fr 1.2fr;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:0;box-shadow:var(--shadow);gap:0}
  .section-contact .split-2 .contact-1{display:grid;grid-template-columns:1fr;gap:0;background:var(--bg);padding:3rem;height:100%;border-radius:var(--radius) 0 0 var(--radius);align-items:start}
  .section-contact .split-2 .contact-1 .contact-items{display:grid;grid-template-columns:1fr;gap:2rem;text-align:center}
  .contact-user{display:grid;grid-template-columns:1fr;gap:.5rem;align-items:center;text-align:center}
  .contact-image{border-radius:999px;border:1px solid var(--line);filter:grayscale(.5);max-width:120px;margin-inline:auto}
  .contact-cards{grid-template-columns:repeat(3,1fr)}
  .contact-card strong{display:block;font-size:1.2rem;margin-bottom:8px}

  .contact-content{display:flex;flex-direction:column;align-items:center;text-align:center;width:100%;gap:.5rem}
  .icon-fill{display:flex;background:var(--bg-dark);width:2rem;height:2rem;border-radius:50%;align-items:center}
  .icon-fill .service-icon{width:1rem;height:1rem;color:var(--surface);margin-inline:auto}

  @media (max-width:900px){
    .section-contact .container.split-2{grid-template-columns:1fr}
    .section-contact .split-2 .contact-1{border-radius:0 0 var(--radius) var(--radius);padding:2rem 1rem;order:2}
    .contact-cards{grid-template-columns:1fr}
  }
  /* #endregion */
  /* #region Formular */
  /*
  .form-shell{background:#fff;border-radius:var(--radius);padding:3rem;min-width:0}
  .form-grid{display:grid;gap:14px}
  .form-grid .form-legend{margin:0 0 6px;color:var(--muted);font-size:.95rem}
  .form-grid label{font-weight:800}
  .form-grid label span.required,
  .form-grid legend span.required{color:var(--brand);margin-left:0.25rem}
  .form-grid .checkbox-label{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:flex-start;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:#f9fafb}
  .form-grid .checkbox-label input{margin-top:0.2rem}
  .form-grid .checkbox-label span{font-weight:400;color:#111827}
  .form-grid .checkbox-label a{color:var(--brand);text-decoration:underline}
  .form-grid input:not([type="checkbox"]),.form-grid textarea,.form-grid select{width:100%;border:1px solid var(--line);border-radius:var(--radius);padding:8px 16px;font:inherit;background:#f9fafb}
  .form-grid input[type="checkbox"]{width:20px;height:20px;accent-color:var(--color-primary);cursor:pointer}
  .form-grid textarea{min-height:150px}
  .form-grid .split-2{gap:1rem}
  .form-grid .btn.btn--primary{width:max-content;margin:auto}
  .form-grid textarea{resize:vertical}
  .topic-fields{display:grid;gap:18px}
  .topic-group.hidden{display:none}
  .field-row{display:grid;gap:14px}
  .form-note{margin:0;color:var(--muted);font-size:.93rem;line-height:1.5}
  .required{color:var(--brand)}
  .form-grid label span.optional,
  .form-grid legend span.optional{color:var(--muted);font-weight:400;font-size:.95rem;margin-left:0.3rem}
  .form-alert{padding:14px 16px;border-radius:16px;font-weight:700;min-width:0;overflow-wrap:anywhere;word-break:break-word}
  .form-alert--ok{background:rgba(34,197,94,.12);border:1px solid rgba(34,197,94,.2);color:#166534}
  .form-alert--error{background:rgba(239,68,68,.10);border:1px solid rgba(239,68,68,.18);color:#991b1b}
  .appointment-picker{display:grid;gap:28px}
  .appointment-slot{border:1px solid var(--line);border-radius:20px;padding:20px;background:#fff}
  .appointment-slot h4{margin:0 0 16px;font-size:1rem;color:#111827}
  .appointment-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:flex-start}
  .date-picker{display:grid;gap:8px;overflow-x:auto;padding:0 0 8px}
  .date-picker__days{display:flex;gap:8px;flex-wrap:nowrap;min-width:min-content}
  .date-picker__day{padding:10px 6px;text-align:center;border:1px solid var(--line);border-radius:12px;background:#f9fafb;cursor:pointer;font-weight:700;font-size:.75rem;transition:all .2s ease;user-select:none;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:65px;min-width:60px;flex-shrink:0}
  .date-picker__day-date{font-size:.65rem;font-weight:500;color:var(--muted);margin-top:2px;display:block}
  .date-picker__day:disabled{opacity:.35;cursor:not-allowed;background:#e5e7eb}
  .date-picker__day:not(:disabled):hover{border-color:var(--brand);color:var(--brand)}
  .date-picker__day.active{background:var(--brand);color:#fff;border-color:var(--brand)}
  .time-picker{display:grid;gap:8px;overflow-x:auto;padding:0 0 8px}
  .date-picker__times{display:flex;gap:6px;flex-wrap:nowrap;min-width:min-content}
  .date-picker__time{padding:8px 10px;text-align:center;border:1px solid var(--line);border-radius:8px;background:#f9fafb;cursor:pointer;font-weight:600;font-size:.8rem;transition:all .2s ease;user-select:none;min-height:50px;min-width:55px;flex-shrink:0}
  .date-picker__time:hover{border-color:var(--brand);color:var(--brand)}
  .date-picker__time.active{background:var(--brand);color:#fff;border-color:var(--brand)}
  .date-picker__label{display:block;margin-bottom:4px;font-size:.85rem;color:var(--muted);font-weight:700;letter-spacing:.04em;text-transform:uppercase}

  @media (max-width:900px){
    .form-shell{padding:2rem 1rem;order:1}
  }
  @media (min-width:720px){
    .section-contact-hero{text-align:center}
    .field-row{grid-template-columns:1.8fr 1fr}
  }*/
  /* #endregion */

  /* #endregion */

  /* =========================
    Support / Ticket
  ========================= */
  /* #region Kontakt & Formulare */
  .suport-hero{padding-bottom:2rem;text-align:center}
  .support-form{padding:0 0 7rem}
  .support-form a{text-decoration:underline;font-weight:600}
  .support-form a.btn.btn--primary-2{text-decoration:none;font-weight:600}
  /* #endregion */

  /* =========================
    Leistungsseiten & Shared Visuals
  ========================= */
  /* #region Leistungen */
  .service-nav{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
  .service-nav a{padding:10px 14px;border-radius:999px;background:#fff;border:1px solid var(--line);font-weight:700}
  .image-band{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);border:1px solid var(--line);background:#fff}
  .image-band img{width:100%;height:420px;object-fit:cover}
  .placeholder-box{border:1px dashed rgba(0,55,108,.3);background:rgba(0,55,108,.04);border-radius:22px;padding:22px;color:#344054}

  @media (max-width:900px){
    .image-band img{height:auto}
  }
  /* #endregion */

  /* =========================
    Projektseiten
  ========================= */
  /* #region Referenzen */
  /* #region Projektseiten */
  .project-hero{padding:3rem 0 1rem;background:var(--surface) /*linear-gradient(180deg,#fff 0%,var(--bg) 100%)*/}
  .project-hero__topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:14px}
  .project-hero__topbar__mobil{display:none}
  .project-hero__pager{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
  .project-hero__pager-link{display:inline-flex;align-items:center;gap:10px;padding:8px 12px;border-radius:999px;border:1px solid var(--line);background:#fff;box-shadow:0 6px 16px rgba(2,8,23,.06);max-width:min(320px,42vw)}
  .project-hero__pager-link img{width:46px;height:28px;object-fit:cover;border-radius:8px;flex:none}
  .project-hero__pager-link span{display:grid;gap:2px;min-width:0}
  .project-hero__pager-link small{color:var(--muted);font-size:.72rem;line-height:1}
  .project-hero__pager-link strong{font-size:.84rem;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .project-hero__pager-link:hover{border-color:rgba(10,102,194,.25);color:var(--brand)}
  .project-hero__labels{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
  .project-hero__labels .kicker{margin-bottom:0}
  .project-hero__thumb-badge{display:inline-flex;align-items:center;justify-content:center;width:62px;height:40px;padding:3px;border-radius:12px;background:#fff;border:1px solid var(--line);box-shadow:0 6px 16px rgba(2,8,23,.08);overflow:hidden}
  .project-hero__thumb-badge img{width:100%;height:100%;object-fit:cover;border-radius:9px}
  .project-hero h1{margin:14px 0 16px;max-width:none}
  .project-hero__meta{margin:0 0 18px;color:var(--muted);font-weight:700}
  .project-hero .lead{max-width:980px;margin-bottom:0}
  .back-link{display:inline-flex;color:var(--muted);font-weight:800}
  .back-link:hover{color:var(--brand)}

  .project-media{padding:0;margin:0;background:transparent}
  .project-media__frame{width:min(380px,100%);aspect-ratio:16/10;margin-left:auto;border-radius:var(--radius);overflow:hidden;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}
  .project-media__frame img{width:100%;height:100%;object-fit:cover}

  .project-detail-section{padding-top:54px;overflow:visible;background:var(--surface)}
  .project-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(380px,.85fr);gap:72px;align-items:start;overflow:visible}
  .project-main h2{font-size:clamp(2.2rem,4vw,4.7rem);line-height:1;margin:0 0 26px}
  .project-main p{font-size:1.14rem;color:#344054;max-width:760px}
  .project-content-block{margin:0 0 30px}
  .project-content-block:last-child{margin-bottom:0}

  .project-rich-text{max-width:100%}
  .project-rich-text b,.project-rich-text strong{color:#111827}
  .project-rich-text ul,.project-rich-text ol{margin:14px 0 0;padding-left:24px;display:grid;gap:8px}
  .project-rich-text li{padding-left:2px}

  .project-rich-list{list-style:none;margin:0;padding:0;display:grid;gap:10px;max-width:760px}
  .project-rich-list li{position:relative;padding-left:26px;font-size:1.02rem;color:#344054}
  .project-rich-list li:before{content:'✔';position:absolute;left:0;top:0;color:var(--brand);font-weight:900}

  .project-content-block--image figcaption,.project-gallery-item figcaption,.project-scroll-shot figcaption{margin:10px 0 0;font-size:.9rem;color:var(--muted)}
  .project-content-image,.project-gallery-item__media{border-radius:var(--radius);overflow:hidden;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}
  .project-content-image.has-ratio img,.project-gallery-item__media.has-ratio img{width:100%;height:100%;object-fit:contain}
  .project-content-image:not(.has-ratio) img,.project-gallery-item__media:not(.has-ratio) img{width:100%;height:auto}
  .project-content-image.ratio-1-1,.project-gallery-item__media.ratio-1-1{aspect-ratio:1/1}
  .project-content-image.ratio-4-5,.project-gallery-item__media.ratio-4-5{aspect-ratio:4/5}
  .project-content-image.ratio-4-6,.project-gallery-item__media.ratio-4-6{aspect-ratio:4/6}
  .project-content-image.ratio-9-5,.project-gallery-item__media.ratio-9-5{aspect-ratio:9/5}
  .project-content-image.ratio-9-16,.project-gallery-item__media.ratio-9-16{aspect-ratio:9/16}
  .project-content-image.ratio-16-9,.project-gallery-item__media.ratio-16-9{aspect-ratio:16/9}
  .project-content-image.ratio-16-10,.project-gallery-item__media.ratio-16-10{aspect-ratio:16/10}

  .project-scroll-gallery{display:grid;gap:16px}
  .project-scroll-gallery.is-duo{grid-template-columns:repeat(1,minmax(0,1fr))}
  .project-scroll-switch{display:inline-flex;gap:8px;margin:0 0 14px;padding:6px;background:#eef2f7;border:1px solid var(--line);border-radius:999px}
  .project-scroll-switch__btn{padding:8px 14px;border:0;border-radius:999px;background:transparent;color:#475467;font:inherit;font-weight:700;cursor:pointer}
  .project-scroll-switch__btn.is-active{background:#fff;color:var(--ink);box-shadow:0 4px 14px rgba(2,8,23,.12)}

  .project-scroll-gallery.is-switchable .project-scroll-shot:not(.is-active){display:none}
  .project-scroll-shot{margin:0}
  .project-scroll-shot--desktop{padding-bottom:34px}
  .project-scroll-shot figcaption{margin-bottom:8px;font-size:.83rem;font-weight:700;letter-spacing:.03em;color:#98a2b3;text-transform:uppercase}
  .project-scroll-shot__frame{position:relative;padding:10px;border-radius:26px;background:linear-gradient(160deg,#1f2937,#111827);box-shadow:0 18px 32px rgba(2,8,23,.26)}
  .project-scroll-shot--desktop .project-scroll-shot__frame:before{content:'';position:absolute;left:50%;bottom:-16px;transform:translateX(-50%);width:42%;height:10px;border-radius:999px;background:#9aa4b2}
  .project-scroll-shot--desktop .project-scroll-shot__frame:after{content:'';position:absolute;left:50%;bottom:-30px;transform:translateX(-50%);width:120px;height:14px;border-radius:999px;background:#c3ccd7}
  .project-scroll-shot--mobile .project-scroll-shot__frame{max-width:360px;margin-inline:auto;padding:12px 12px 14px;border-radius:32px}
  .project-scroll-shot--mobile .project-scroll-shot__frame:before{content:'';position:absolute;left:50%;top:6px;transform:translateX(-50%);width:92px;height:8px;border-radius:999px;background:#0b1220}
  .project-scroll-shot--mobile figcaption{text-align:center}

  .project-scroll-shot__ratio-box{position:relative;overflow:hidden;border-radius:18px}
  .project-scroll-shot__ratio-box.has-ratio{height:0}
  .project-scroll-shot__ratio-box.ratio-1-1{padding-top:100%}
  .project-scroll-shot__ratio-box.ratio-4-5{padding-top:125%}
  .project-scroll-shot__ratio-box.ratio-4-6{padding-top:150%}
  .project-scroll-shot__ratio-box.ratio-9-5{padding-top:55.55556%}
  .project-scroll-shot__ratio-box.ratio-9-16{padding-top:177.77778%}
  .project-scroll-shot__ratio-box.ratio-16-9{padding-top:56.25%}
  .project-scroll-shot__ratio-box.ratio-16-10{padding-top:62.5%}
  /*.project-scroll-shot__viewport{position:relative;z-index:0;isolation:isolate;max-height:560px;overflow:auto;border-radius:18px;background:#fff;border:1px solid rgba(255,255,255,.15);box-shadow:inset 0 0 0 1px rgba(17,24,39,.08);clip-path:inset(0 round 18px);-webkit-mask-image:-webkit-radial-gradient(white,black)}*/
  .project-scroll-shot__viewport{position:relative;z-index:0;isolation:isolate;max-height:560px;overflow:auto;border-radius:18px;background:#fff;border:1px solid rgba(255,255,255,.15);box-shadow:inset 0 0 0 1px rgba(17,24,39,.08);overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
  .project-scroll-shot__ratio-box.has-ratio .project-scroll-shot__viewport{position:absolute;inset:0;max-height:none}
  .project-scroll-shot__viewport.ratio-1-1{aspect-ratio:1/1}
  .project-scroll-shot__viewport.ratio-4-5{aspect-ratio:4/5}
  .project-scroll-shot__viewport.ratio-4-6{aspect-ratio:4/6}
  .project-scroll-shot__viewport.ratio-9-5{aspect-ratio:9/5}
  .project-scroll-shot__viewport.ratio-9-16{aspect-ratio:9/16}
  .project-scroll-shot__viewport.ratio-16-9{aspect-ratio:16/9}
  .project-scroll-shot__viewport.ratio-16-10{aspect-ratio:16/10}
  .project-scroll-shot__viewport img{width:100%;height:auto;display:block;transform:translateZ(0)}

  .project-gallery-grid{--gallery-cols:3;display:grid;grid-template-columns:repeat(var(--gallery-cols),minmax(0,1fr));grid-auto-flow:row dense;gap:14px}
  .project-gallery-grid--cols-1{--gallery-cols:1}
  .project-gallery-grid--cols-2{--gallery-cols:2}
  .project-gallery-grid--cols-3{--gallery-cols:3}
  .project-gallery-grid--cols-4{--gallery-cols:4}
  .project-gallery-grid--cols-5{--gallery-cols:5}
  .project-gallery-item{margin:0}
  .project-gallery-item.is-wide{grid-column:span 2}
  .project-gallery-item.is-tall{grid-row:span 2}
  .project-gallery-item.is-large{grid-column:span 2;grid-row:span 2}
  .project-gallery-item__open{display:block;width:100%;margin:0;padding:0;border:0;background:none;color:inherit;cursor:pointer}
  .project-gallery-item__media{position:relative;overflow:hidden;border-radius:18px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}
  .project-gallery-item__media.has-ratio img{width:100%;height:100%;object-fit:cover}
  .project-gallery-item__media:not(.has-ratio) img{width:100%;height:auto}
  .project-gallery-item__zoom{position:absolute;right:10px;bottom:10px;padding:8px 11px;border-radius:999px;background:rgba(17,24,39,.76);backdrop-filter:blur(6px);color:#fff;font-size:.74rem;font-weight:700;opacity:0;transform:translateY(4px);transition:opacity .2s ease,transform .2s ease}
  .project-gallery-item__open:hover .project-gallery-item__zoom,.project-gallery-item__open:focus-visible .project-gallery-item__zoom{opacity:1;transform:translateY(0)}

  .project-lightbox{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:20px}
  .project-lightbox[hidden]{display:none}
  .project-lightbox__backdrop{position:absolute;inset:0;border:0;background:rgba(2,8,23,.72);backdrop-filter:blur(4px);cursor:pointer}
  .project-lightbox__dialog{position:relative;z-index:1;max-width:min(1100px,calc(100vw - 40px));max-height:calc(100vh - 40px);margin:0;padding:16px;border-radius:20px;background:#0b1220;box-shadow:0 24px 70px rgba(2,8,23,.45)}
  .project-lightbox__dialog img{display:block;max-width:100%;max-height:calc(100vh - 120px);width:auto;height:auto;margin:0 auto;border-radius:12px}
  .project-lightbox__dialog figcaption{margin:12px 0 0;color:#cbd5e1;text-align:center}
  .project-lightbox__close{position:absolute;top:10px;right:10px;width:38px;height:38px;border:1px solid rgba(148,163,184,.4);border-radius:999px;background:rgba(15,23,42,.8);color:#fff;font-size:1.3rem;line-height:1;cursor:pointer}

  .project-inline-cta{display:grid;gap:14px;padding:26px;border-radius:24px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-2);margin:3rem 0 0}
  .project-inline-cta__kicker{margin:0;color:var(--brand);font-size:.74rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
  .project-inline-cta h3{margin:0;font-size:clamp(1.3rem,2.2vw,1.8rem);line-height:1.14}
  .project-inline-cta p{margin:0;color:#475467;font-size:1rem;line-height:1.5;max-width:62ch}
  .project-inline-cta .btn{justify-self:start}

  .project-service-block{display:flex;flex-direction:column;width:fit-content;margin:0 auto 44px;padding:3rem;border-radius:var(--radius);background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}
  .project-service-block h3{font-size:1.65rem;margin:0 0 18px}
  .check-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}
  .check-list li{position:relative;padding-left:30px;color:#344054}
  .check-list li:before{content:'✔';position:absolute;left:0;top:0;color:var(--brand);font-weight:900}

  .check-list-small{list-style:none;margin:0;padding:0;display:grid;gap:0}
  .check-list-small li{position:relative;padding-left:.7rem;color:#344054}
  .check-list-small li:before{content:'✔';position:absolute;left:0;top:0;color:var(--brand);font-weight:900}

  .project-sidebar{position:sticky;top:104px;align-self:start;height:max-content;overflow:visible}
  .project-sidebar__sticky{position:relative;top:auto;max-height:calc(100vh - 124px);overflow:auto;background:rgba(255,255,255,.86);backdrop-filter:saturate(180%) blur(18px);border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow);z-index:2}
  .project-sidebar__sticky p{margin:0}
  .project-sidebar__label{margin:0 0 5px;color:var(--brand);font-size:.72rem;font-weight:900;letter-spacing:.22em}
  .project-sidebar h3{margin:0 0 5px}

  .project-summary{padding:18px 0;border-top:1px solid var(--line);margin-top:13px;font-size:.7rem}
  .project-summary strong,.project-facts dt{display:block;color:var(--ink);font-size:.7rem;line-height:1.2;text-transform:uppercase;letter-spacing:.08em;font-weight:900;word-break:normal;hyphens:auto}
  .project-summary p{margin:7px 0 0;color:#344054}
  .project-facts{margin:0 0}
  .project-facts div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:16px;padding:10px 0;border-top:1px solid var(--line)}
  .project-facts dd{margin:0;color:#344054;font-size:.7rem;line-height:1.2;min-width:0}
  .project-facts ul{margin:0;padding-left:18px}
  .project-facts ul.check-list-small{margin:0;padding-left:0}
  .project-facts li+li{margin-top:6px}

  .link-list{display:grid;gap:6px}
  .link-list a{color:var(--brand);font-weight:800}
  .project-live-btn{width:100%;margin-top:22px}

  @media (max-width:900px){
    .project-hero{padding:52px 0 36px}
    .project-hero h1{font-size:var(--font-size-h2);line-height:1.1}
    .project-hero__topbar{display:none}
    .project-hero__topbar__mobil{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:1.5rem}
    .project-hero__pager{width:100%;justify-content:flex-start}
    .project-hero__pager-link{max-width:none;flex:1 1 100%}
    .project-hero__pager-link__mobil{display:inline-flex;align-items:center;gap:10px;padding:8px 12px;border-radius:999px;border:1px solid var(--line);background:#fff;box-shadow:0 6px 16px rgba(2,8,23,.06);max-width:min(320px,60vw)}
    .project-hero__pager-link strong{white-space:normal}
    .project-layout{grid-template-columns:1fr;gap:34px}
    .project-detail-section {padding-top:1rem}
    .project-sidebar{position:relative;top:auto;height:auto}
    .project-sidebar__sticky{position:relative;top:auto;max-height:none;overflow:visible}
    .project-facts div{grid-template-columns:1fr;gap:6px}
    .project-scroll-gallery.is-duo{grid-template-columns:1fr}
    .project-scroll-switch{display:flex;width:100%;justify-content:space-between}
    .project-scroll-switch__btn{flex:1}
    .project-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .project-gallery-item.is-wide,.project-gallery-item.is-tall,.project-gallery-item.is-large{grid-column:auto;grid-row:auto}
    .project-lightbox{padding:12px}
    .project-lightbox__dialog{max-width:calc(100vw - 24px);max-height:calc(100vh - 24px);padding:12px}
    .project-lightbox__dialog img{max-height:calc(100vh - 88px)}
    .project-service-block{padding:1.5rem}
  }

  @media (max-width:620px){
    .project-gallery-grid{grid-template-columns:1fr}
  }
  /* #endregion */
  /* #region Referenzen */
  .top-referenzes{padding-top:0}
  .more-refs .refs-list{display:grid;grid-template-columns:repeat(5, 1fr);gap:1.5rem}
  .refs-more-card{display:block;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);transition:transform .2s ease}
  .refs-more-image{width:100%;aspect-ratio:4 / 5;object-fit:cover;overflow:hidden}
  .refs-more-card .refs-more-image img{width:100%;aspect-ratio:4 / 5;object-fit:cover;transition:transform .35s ease}
  .refs-title{color:var(--muted);font-size:.85rem;padding:1rem}
  .link-more{display:block;width:100%;text-align:right;margin-top:1rem}
  .more-refs img:hover {transform:scale(1.04);}
  @media (max-width:900px){
    .more-refs .refs-list{grid-template-columns:repeat(3, 1fr);gap:1rem}
    .refs-title{padding:.5rem}
  }
  @media (max-width:600px){
    .more-refs .refs-list{grid-template-columns:repeat(2, 1fr)}
  }
  /* #endregion */
  /* #endregion */

  /* =========================
    Preistabellen
  ========================= */
  /* #region Preistabellen */
  .pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:22px;align-items:stretch;justify-items:center}
  .pricing-card{width:100%;max-width:360px;text-align:center;padding:42px 28px 28px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:none;display:flex;flex-direction:column;position:relative;min-height:420px}
  .pricing-card.is-featured{transform:translateY(-8px);box-shadow:var(--shadow);border-color:rgba(10,102,194,.08);background:#f7fafc}
  .pricing-badge{display:inline-block;background:var(--akzent);color:#fff;padding:8px 14px;border-radius:999px;font-weight:800;font-size:.9rem;margin-bottom:12px;position:absolute;left:50%;top:-16px;transform:translateX(-50%);box-shadow:0 10px 30px rgba(2,8,23,.12)}
  .pricing-label{display:block;font-size:.95rem;color:var(--muted);font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:6px}
  .pricing-title{font-weight:900;color:var(--ink);margin-bottom:6px}
  .pricing-price{font-family:var(--font-title);font-size:3.6rem;line-height:1;margin:6px 0 12px;color:var(--brand)}
  .pricing-sub{color:var(--muted);margin-bottom:14px}
  .pricing-hr{height:1px;background:var(--line);margin:18px 0;border:none;opacity:.95}
  .pricing-features{list-style:none;padding:0;margin:0 0 18px;color:var(--muted);display:block;text-align:left}
  .pricing-features li{position:relative;padding-left:28px;margin-bottom:10px}
  .pricing-features li:before{content:'✓';position:absolute;left:0;top:0;color:var(--brand);font-weight:900;font-size:0.9rem;line-height:1}
  .pricing-cta{margin-top:auto;display:flex;flex-direction:column;gap:10px;align-items:center}
  .pricing-cta .btn{width:100%;max-width:240px}
  .pricing-cta .text-link{font-weight:800;color:var(--brand);display:inline-flex;align-items:center;gap:8px;padding:6px 0}
  .pricing-cta .text-link:after{content:'→';margin-left:8px;opacity:.9}

  @media (max-width:900px){
    .pricing-grid{grid-template-columns:1fr;gap:18px}
    .pricing-card{max-width:720px;min-height:auto}
  }
  /* #endregion */

  /* =========================
    FAQ
  ========================= */
  /* #region FAQ */
  .faq-section{max-width:var(--max-small);margin-inline:auto}
  .section-question{text-align:center;background:var(--surface)}
  .section-question .container{align-items:baseline;width:min(var(--max-small), calc(100% - 40px))}
  p.absatz{margin-bottom:3rem}
  .modul-accordion-plus__item .modul-accordion-plus__trigger{font-size:1.15rem}

  @media (max-width:900px){
    .faq-section .modul-accordion__panel p{font-size:var(--font-size)}
    .section-question .split-2.gap-xxxl{gap:0!important}
    p.absatz{margin-top:0}
  }
  /* #endregion */

  /* =========================
    Impressum & Datenschutz & AGB
  ========================= */
  /* #region Impressum & Datenschutz & AGB */

  /* #region Legal */
  .page-hero.hero-legal{padding:84px 0 0}
  .legal{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:38px;box-shadow:var(--shadow)}
  .legal h2{margin-top:34px;font-size:clamp(1.25rem,2.5vw,1.8rem)}
  .legal h3{margin-top:22px}
  @media (max-width:900px){
    .legal{padding:24px}
  }
  /* #endregion */

  /* #region Impressum */
  .section.impressum-section{padding:1rem 0 92px}
  .section.impressum-section h3{margin-top:1rem;margin-bottom:.25rem;font-size:clamp(1rem,1.5vw,1rem);font-weight:600}
  .section.impressum-section .split-3{align-items:flex-start}
  .section.impressum-section a{text-decoration:underline}
  /* #endregion */

  /* #region AGB */
  .section.agb-section{padding:1rem 0}
  .section.agb-section-2{padding:1rem 0 92px}
  .section.agb-section a{text-decoration:underline}
  .legal.agb{font-size:clamp(.65rem,.65rem,.85rem)}
  .legal.agb h3{margin-top:1rem;margin-bottom:.25rem;font-size:clamp(1rem,1.5vw,1rem)}
  .legal-sublist{margin:0 0 1rem;padding:0;list-style:none}
  .legal-sublist--alpha{counter-reset:legal-alpha}
  .legal-sublist--alpha li{counter-increment:legal-alpha;position:relative;padding-left:1.75em;margin-bottom:.25rem;word-break:break-word}
  .legal-sublist--alpha li::before{content:counter(legal-alpha, lower-alpha) ")";position:absolute;left:0;top:0;font-weight:600}
  .legal-sublist--dot li{list-style-type:disc;position:relative;margin-left:2.5em;margin-bottom:.25rem}
  .legal.agb p{margin:0 0 .75rem 1.5em}
  /* #endregion */

  /* #region Datenschutz */
  .section.datenschutz-section{padding:1rem 0 92px}
  /* #endregion */

/* VEREINE */
  .hero.hero--page{min-height:40vh;padding:4rem 0}

  /* #endregion */

/* #endregion */

/* ------------------------------------------ IN PRÜFUNG CORE / PROJEKT ---------------------------------------- */

/* =========================
   BASE
========================= */
/* #region BASE */

  /* =========================
    MODULE
  ========================= */
  /* #region MODULE */

  /* #endregion */

/* #endregion */
