/* Inter is self-hosted (no requests to Google). */
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url('../fonts/inter-latin.woff2') format('woff2')}

/* Design tokens. Blur values hide demo photos, names and credits on the profile cards. */
:root{
--accent:#C7E522;
--bg:#1A1A1A;--card:#262626;--inset:#2E2E2E;--divider:#383838;
--text:#F9F9F9;--text-2:#CCCCCC;--text-3:#8A8A8A;
--on-accent:#181818;--dot:#4A4A4A;--text-rgb:249,249,249;--bg-rgb:26,26,26;
--shadow:rgba(0,0,0,0.35);--shadow-strong:rgba(0,0,0,0.45);
--blur-photo:blur(18px);--photo-scale:scale(1.2);--blur-name:blur(8px);--blur-avatar:blur(3px);
}
/* Light mode, values from the DORA Circles design system. Toggled via data-theme on <html>. */
:root[data-theme="light"]{
--bg:#F5F5F5;--card:#FFFFFF;--inset:#F0F0F0;--divider:#ECECEC;
--text:#050505;--text-2:#666666;--text-3:#999999;
--dot:#CCCCCC;--text-rgb:5,5,5;--bg-rgb:245,245,245;
--shadow:rgba(0,0,0,0.08);--shadow-strong:rgba(0,0,0,0.14);
}

body{margin:0;background:var(--bg);-webkit-font-smoothing:antialiased}
html{scroll-behavior:smooth}
a{color:var(--text)}a:hover{color:var(--text)}
@keyframes dcRise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes dcFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes dcMarquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.dc-roll{display:inline-flex;flex-direction:column;height:1.25em;line-height:1.25em;overflow:hidden;vertical-align:middle}
.dc-roll>span{display:block;transition:transform 300ms cubic-bezier(.2,.7,.2,1)}
a:hover .dc-roll>span,button:hover .dc-roll>span{transform:translateY(-100%)}
.dc-link:hover{color:var(--text) !important}
.dc-marquee:hover{animation-play-state:paused !important}
a:focus-visible,button:focus-visible{outline:2px solid var(--text);outline-offset:3px}
.dc-flink:hover{color:var(--text) !important;text-decoration:underline !important}
.c-stage{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none}
.fl{position:absolute}
.pc{border-radius:22px;overflow:hidden;background:#262626;color:#F9F9F9;box-shadow:0 30px 60px var(--shadow-strong);aspect-ratio:3 / 4}
.pc-img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}
.pc-scrim{position:absolute;left:0;right:0;bottom:0;height:66%;background:linear-gradient(to top,rgba(10,10,10,0.94) 0%,rgba(10,10,10,0.68) 45%,rgba(10,10,10,0) 100%)}
.pc-badges{position:absolute;top:14px;left:14px;right:14px;display:flex;gap:6px}
.pc-badge{display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 10px;box-sizing:border-box;border-radius:9999px;background:rgba(20,20,20,0.45);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1.5px solid rgba(199,229,34,0.45);font-size:13px;font-weight:500;color:#F9F9F9;white-space:nowrap}
.pc-badge.n{margin-left:auto;border-color:rgba(249,249,249,0.22);font-weight:600}
.pc-dot{width:6px;height:6px;border-radius:9999px;background:#C7E522}
.pc-body{position:absolute;left:16px;right:16px;bottom:16px;display:flex;flex-direction:column;gap:6px}
.pc-name{font-size:26px;font-weight:700;letter-spacing:-0.02em;line-height:1.05}
.pc-role{font-size:11px;letter-spacing:0.04em;line-height:1.35;color:#BDBDBD;margin-bottom:2px}
.pc-line{display:flex;align-items:center;gap:6px;font-size:13px;color:#BDBDBD;white-space:nowrap;overflow:hidden;min-width:0}
.pc-line b{color:#F9F9F9;font-weight:600}
.pc-trunc{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pc svg,.cc svg,.fc svg{flex-shrink:0}
.cc{box-sizing:border-box;padding:16px;display:flex;flex-direction:column;gap:10px;background:var(--card);border-radius:20px;box-shadow:0 24px 48px var(--shadow)}
.cc-top{display:flex;align-items:center;gap:6px}
.cc-chip{display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 10px;border-radius:9999px;background:var(--inset);font-size:12px;color:var(--text-2);white-space:nowrap}
.cc-time{margin-left:auto;display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--text-3);white-space:nowrap}
.cc-title{font-size:18px;font-weight:700;letter-spacing:-0.015em}
.cc-desc{font-size:13px;line-height:1.4;color:var(--text-2)}
.cc-hr{height:1px;background:var(--divider)}
.cc-by{display:flex;align-items:center;gap:10px}
.cc-av{flex:none;width:30px;height:30px;border-radius:9999px;overflow:hidden;background:var(--inset)}
.cc-av img,.nc-av img{display:block;width:100%;height:100%;object-fit:cover}
.cc-role{font-size:13px;font-weight:600}
.cc-meta{font-size:12px;color:var(--text-3)}
.fc{box-sizing:border-box;background:var(--card);border-radius:22px;box-shadow:0 24px 48px var(--shadow)}
.nc{display:flex;gap:14px;align-items:flex-start;padding:16px}
.nc-av{flex:none;width:44px;height:44px;border-radius:9999px;overflow:hidden;background:var(--inset)}
.nc-text{font-size:15px;line-height:1.4;color:var(--text)}
.nc-time{font-size:12px;color:var(--text-3)}
.c-wframe{position:relative;max-width:1440px;height:900px;margin:0 auto}
.c-wtext{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);width:min(760px, calc(100% - 32px));text-align:center}
@supports (animation-timeline: view()){
.c-reveal{animation:dcRise linear both;animation-timeline:view();animation-range:entry 5% cover 30%}
}
@media (max-width:880px){.dc-nav-links{display:none !important}}
@media (max-width:1179px){
.c-frame{height:1000px !important}
.c-text{padding-top:330px !important}
.c-wframe{height:1000px !important}
.pc-name{font-size:22px}
.pc-line{font-size:12px}
.pc-badge{height:26px;font-size:12px}
.cc{padding:14px;gap:8px}
.cc-title{font-size:16px}
.cc-desc{font-size:12px}
.h-d,.w-c,.w-g{display:none !important}
.h-b{left:40px !important;top:690px !important;width:240px !important}
.h-a{left:24px !important;top:40px !important;width:210px !important}
.h-f{right:24px !important;top:130px !important;width:250px !important}
.h-g{right:-60px !important;top:600px !important;width:220px !important}
.h-e{left:auto !important;right:190px !important;top:640px !important;width:250px !important}
.h-c{left:auto !important;right:24px !important;top:250px !important;width:250px !important}
.w-a{left:24px !important;top:40px !important;width:200px !important}
.w-d{right:24px !important;top:60px !important;width:260px !important}
.w-b{left:-20px !important;bottom:120px !important;width:250px !important}
.w-e{right:-50px !important;bottom:80px !important;width:200px !important}
.w-f{left:250px !important;right:auto !important;bottom:30px !important;width:250px !important}
}
@media (max-width:767px){
.c-frame{height:880px !important}
.c-text{padding-top:336px !important}
.c-text h1{font-size:40px !important}
.c-sub{font-size:17px !important}
.c-sub br{display:none}
.c-wframe{height:840px !important}
.c-wtext h2{font-size:40px !important}
.h-f,.w-d,.w-a{display:none !important}
.c-text a.js-apply{display:none !important}
.pc-body{left:10px;right:10px;bottom:10px;gap:3px}
.pc-badges{top:10px;left:10px;right:10px;gap:4px}
.pc-badge{height:22px;font-size:11px;padding:0 7px}
.pc-name{font-size:18px}
.pc-role{font-size:9px}
.pc-line{font-size:11px;white-space:normal;align-items:flex-start;line-height:1.3}
.pc-line svg{margin-top:1px}
.cc{padding:12px 14px;gap:7px}
.cc-chip{height:22px;font-size:11px;padding:0 8px}
.cc-title{font-size:15px}
.cc-desc{font-size:12px}
.cc-av{width:26px;height:26px}
.fc{border-radius:18px}
.nc{padding:12px;gap:10px}
.nc-text{font-size:13px}
.h-a{left:auto !important;right:-38px !important;top:64px !important;width:176px !important}
.h-b{left:auto !important;right:98px !important;top:132px !important;width:196px !important;padding:12px 16px !important;z-index:1}
.h-c{display:none !important}
.h-g{right:-60px !important;top:600px !important;width:176px !important}
.h-e{left:6px !important;right:auto !important;top:590px !important;width:214px !important}
.w-a{left:-30px !important;top:12px !important;width:176px !important}
.w-f{left:auto !important;right:-24px !important;top:84px !important;bottom:auto !important;width:210px !important;padding:12px !important;gap:10px !important}
.w-f > div{padding:10px 12px !important;gap:10px !important}
.w-f > div > span:first-child{width:36px !important;height:36px !important}
.w-f > div > span:last-child span:last-child{white-space:nowrap}
.w-b{left:-16px !important;bottom:96px !important;width:206px !important}
.w-g{display:flex !important;left:auto !important;right:-6px !important;top:auto !important;bottom:8px !important;width:162px !important;padding:12px !important;gap:8px !important}
.w-g > span:first-child{font-size:12px !important}
.w-e{left:-4px !important;right:auto !important;top:12px !important;bottom:auto !important;width:176px !important}
}
.dc-wm{white-space:nowrap}
.br-m{display:none}
/* Like button on the icebreaker cards */
.ib-like{flex:none;width:40px;height:40px;border-radius:9999px;background:var(--divider);color:var(--text);display:inline-flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(0,0,0,0.18)}
@media (max-width:767px){.ib-like{width:36px;height:36px}.ib-like svg{width:18px;height:18px}}
.pc-m-only{display:none !important}
@media (max-width:767px){.pc-m-hide{display:none !important}.pc-m-only{display:flex !important}}
@media (max-width:767px){.br-m{display:inline}}
@media (max-width:767px){
.dc-roles{padding:18px 0 !important;margin-top:40px}
.dc-roles .dc-marquee > div{gap:22px !important;padding-right:22px !important}
.dc-roles .dc-marquee span{font-size:22px !important}
.dc-roles .dc-marquee span[aria-hidden]{width:6px !important;height:6px !important}
}
@media (max-width:767px){.dc-wm{display:none}}
@media (max-width:420px){
.dc-cta{padding:0 15px !important;font-size:14px !important}

}
.ind-card{max-width:1200px;margin:0 auto;box-sizing:border-box;padding:clamp(32px,5vw,64px);background:var(--card);border-radius:32px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:56px}
.ind-copy{flex:1 1 440px;min-width:0;display:flex;flex-direction:column;gap:16px}
.ind-tags{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px;max-width:540px}
.ind-tags li{display:inline-flex;align-items:center;height:32px;padding:0 14px;box-sizing:border-box;border-radius:9999px;border:1px solid rgba(var(--text-rgb),0.14);font-size:14px;color:var(--text-2);white-space:nowrap}
.ind-vis{flex:1 1 380px;max-width:460px;position:relative}
.ir-panel{background:var(--bg);border:1px solid var(--divider);border-radius:24px;padding:20px 20px 18px;box-shadow:0 24px 48px var(--shadow)}
.ir-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:12px}
.ir-title{font-size:17px;font-weight:700;color:var(--text);letter-spacing:-0.01em}
.ir-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--inset)}
.ir-av{flex:none;width:40px;height:40px;border-radius:9999px;overflow:hidden;background:var(--inset)}
.ir-av img{width:100%;height:100%;object-fit:cover;display:block}
.ir-who{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.ir-name{font-size:15px;font-weight:600;color:var(--text)}
.ir-role{font-size:13px;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ir-st{flex:none;display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 10px;box-sizing:border-box;border-radius:9999px;font-size:12px;font-weight:500;white-space:nowrap}
.ir-st svg{flex-shrink:0}
.ir-st.ok{border:1.5px solid rgba(199,229,34,0.45);color:var(--text)}
.ir-st.wait{background:var(--inset);color:var(--text-2)}
.ir-foot{display:flex;align-items:center;gap:12px;padding-top:14px;border-top:1px solid var(--inset)}
.ir-bar{flex:1;height:6px;border-radius:9999px;background:var(--inset);overflow:hidden}
.ir-bar span{display:block;width:75%;height:100%;border-radius:9999px;background:var(--text)}
.ir-prog{font-size:13px;color:var(--text-3);white-space:nowrap}
@media (max-width:1179px){
.ind-vis{max-width:none}
}
@media (max-width:767px){
.ind-card{gap:40px;border-radius:24px}
.ind-vis{flex-basis:100%}
.ir-panel{padding:16px 14px 14px;border-radius:20px}
.ind-tags li{height:30px;font-size:13px;padding:0 12px}
}
.how-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:48px}
.how-card{box-sizing:border-box;background:var(--card);border-radius:24px;padding:32px;display:flex;flex-direction:column;gap:12px;min-height:280px}
@media (hover:hover){
.how-card{transition:translate 400ms cubic-bezier(.2,.7,.2,1),rotate 400ms cubic-bezier(.2,.7,.2,1),box-shadow 400ms ease}
.how-card:hover{translate:0 -8px;rotate:-0.6deg;box-shadow:0 24px 48px var(--shadow)}
.how-card:nth-child(2):hover{rotate:0.6deg}
}
.how-num{flex:none;align-self:flex-start;width:40px;height:40px;box-sizing:border-box;border-radius:9999px;border:1.5px solid rgba(var(--text-rgb),0.24);display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:600;color:var(--text);margin-bottom:auto}
.how-card h3{margin:28px 0 0;font-size:24px;line-height:1.15;font-weight:700;letter-spacing:-0.02em;color:var(--text)}
.how-card p{margin:0;font-size:17px;line-height:1.5;color:var(--text-2)}
@media (max-width:900px){
.how-grid{grid-template-columns:1fr;gap:14px;margin-top:36px}
.how-card{min-height:0;padding:26px}
.how-card h3{margin-top:18px;font-size:22px}
}
@media (prefers-reduced-motion:reduce){
html{scroll-behavior:auto}
*,*::before,*::after{animation:none !important;transition:none !important}
}

/* FAQ accordion */
.faq-btn svg{transition:transform 300ms ease}
.faq-btn[aria-expanded="true"] svg{transform:rotate(45deg)}

/* Theme toggle, floating bottom left */
.dc-theme{position:fixed;left:20px;bottom:20px;z-index:60;width:48px;height:48px;padding:0;border-radius:9999px;border:1px solid rgba(var(--text-rgb),0.12);background:rgba(var(--bg-rgb),0.62);backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);color:var(--text);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 8px 24px var(--shadow);transition:transform 300ms cubic-bezier(.2,.7,.2,1)}
.dc-theme:hover{transform:rotate(-15deg)}
.dc-theme .i-moon{display:none}
:root[data-theme="light"] .dc-theme .i-sun{display:none}
:root[data-theme="light"] .dc-theme .i-moon{display:block}
@media (max-width:767px){.dc-theme{left:16px;bottom:16px;width:44px;height:44px}}

/* Floating cards (hero + statement): each card sets its float timing in --float.
   While hovered, a slow, soft sway runs on scale/rotate, next to the float on transform. */
@keyframes dcWobble{
0%,100%{scale:1 1;rotate:0deg}
25%{scale:1.012 0.996;rotate:-0.7deg}
75%{scale:0.996 1.012;rotate:0.7deg}
}
.c-stage .fl{animation:var(--float)}
@media (hover:hover){
.c-stage .fl{pointer-events:auto}
.c-stage .fl:hover{z-index:3;animation:var(--float),dcWobble 1.8s ease-in-out infinite}
}

/* Legal pages (Impressum, Datenschutz) */
.legal{min-height:100vh;background:var(--bg);color:var(--text);font-family:'SF Pro Text','SF Pro',-apple-system,BlinkMacSystemFont,'Inter',system-ui,sans-serif;padding:32px 24px 80px;box-sizing:border-box}
.legal header,.legal main{max-width:760px;margin:0 auto}
.legal header{margin-bottom:72px}
.legal-home{display:inline-flex;align-items:center;gap:10px;color:var(--text);text-decoration:none;min-height:44px;font-size:17px;font-weight:700;letter-spacing:-0.01em}
.legal-home img{width:32px;height:32px;border-radius:8px}
.legal h1{margin:0 0 12px;font-size:clamp(36px,5vw,56px);line-height:1.05;font-weight:700;letter-spacing:-0.03em}
.legal .stand{margin:0 0 8px;font-size:15px;color:var(--text-3)}
.legal h2{margin:40px 0 10px;font-size:20px;line-height:1.3;font-weight:700;letter-spacing:-0.01em}
.legal p,.legal li{margin:0 0 6px;font-size:17px;line-height:1.6;color:var(--text-2);max-width:62ch}
.legal ul{margin:0 0 10px;padding-left:22px}
.legal main a{color:var(--text)}
.legal .back{margin-top:56px}

/* Apply dialog (waitlist). Opens from every "Apply for membership" button (.js-apply). */
.ap{width:min(520px, calc(100% - 32px));max-height:calc(100dvh - 32px);box-sizing:border-box;margin:auto;padding:32px;border:0;border-radius:24px;background:var(--card);color:var(--text);font-family:'SF Pro Text','SF Pro',-apple-system,BlinkMacSystemFont,'Inter',system-ui,sans-serif;box-shadow:0 30px 80px var(--shadow-strong);overflow-y:auto}
.ap::backdrop{background:rgba(0,0,0,0.55);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.ap[open]{animation:dcRise 350ms cubic-bezier(.2,.7,.2,1)}
.ap-close{position:absolute;top:16px;right:16px;width:40px;height:40px;padding:0;border:0;border-radius:9999px;background:var(--inset);color:var(--text);display:flex;align-items:center;justify-content:center;cursor:pointer}
.ap-title{margin:0 48px 10px 0;font-size:28px;line-height:1.1;font-weight:700;letter-spacing:-0.025em;outline:none}
.ap-lead{margin:0 0 24px;font-size:16px;line-height:1.5;color:var(--text-2)}
.ap-form{display:flex;flex-direction:column;gap:14px}
.ap-field{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:500;color:var(--text-2)}
.ap-field input,.ap-field select{height:48px;box-sizing:border-box;padding:0 16px;border:1px solid transparent;border-radius:16px;background:var(--inset);color:var(--text);font:inherit;font-size:16px;font-weight:400;outline:none;-webkit-appearance:none;appearance:none}
.ap-field select{padding-right:40px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238A8A8A' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center}
.ap-field select:invalid{color:var(--text-3)}
.ap-field input::placeholder{color:var(--text-3)}
.ap-field input:focus,.ap-field select:focus{border-color:rgba(var(--text-rgb),0.35)}
.ap-field [aria-invalid="true"]{border-color:#E5484D}
.ap-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.ap-note{margin-top:4px;padding:16px;border-radius:16px;background:var(--inset)}
.ap-note p{margin:0;font-size:14px;line-height:1.5;color:var(--text-2)}
.ap-note .ap-note-title{margin-bottom:4px;font-weight:600;color:var(--text)}
.ap-check{display:flex;gap:12px;align-items:flex-start;font-size:13px;line-height:1.45;color:var(--text-3);cursor:pointer}
.ap-check input{flex:none;width:20px;height:20px;margin:0;accent-color:var(--accent)}
.ap-check a{color:var(--text-2)}
.ap-error{margin:0;font-size:14px;line-height:1.4;color:#E5484D}
.ap-submit{margin-top:6px;height:52px;padding:0 26px;border:0;border-radius:9999px;background:var(--text);color:var(--bg);font:inherit;font-size:16px;font-weight:600;cursor:pointer}
.ap-submit:disabled{opacity:0.6;cursor:default}
.ap-done-icon{width:56px;height:56px;margin-bottom:20px;border-radius:9999px;background:var(--accent);color:var(--on-accent);display:flex;align-items:center;justify-content:center}
.ap [data-step="done"] .ap-submit{width:100%}
@media (max-width:767px){
.ap{padding:24px 20px;border-radius:20px}
.ap-title{font-size:24px}
}
