.button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs);min-height:44px;min-width:44px;border-radius:var(--radius-md);font-family:var(--font-body);font-weight:700;font-size:var(--font-size-body);line-height:var(--line-height-snug);white-space:nowrap;transition:background-color var(--duration-base) var(--ease-standard),border-color var(--duration-base) var(--ease-standard),box-shadow var(--duration-base) var(--ease-standard),transform var(--duration-fast) var(--ease-standard),filter var(--duration-base) var(--ease-standard)}.button--md{padding:var(--space-sm) var(--space-lg)}.button--lg{min-height:52px;padding:var(--space-md) var(--space-xl);font-size:var(--font-size-lg)}.button--primary{background:var(--color-accent-primary);color:var(--color-on-accent-primary)}.button--primary:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.06);box-shadow:var(--shadow-glow-accent)}.button--primary:active:not(:disabled){transform:translateY(0) scale(.98);filter:brightness(.97)}.button--secondary{background:var(--color-surface-raised);color:var(--color-text-heading);border:1px solid var(--color-border)}.button--secondary:hover:not(:disabled){border-color:var(--color-border-strong);transform:translateY(-1px);box-shadow:var(--shadow-md)}.button--secondary:active:not(:disabled){transform:translateY(0) scale(.98)}.button--ghost{background:transparent;color:var(--color-text-body)}.button--ghost:hover:not(:disabled){background:var(--color-surface-alt);color:var(--color-text-heading)}.button:disabled{opacity:.7;cursor:default;transform:none;box-shadow:none;filter:none}.button__label{display:inline-flex;align-items:center;gap:var(--space-xs);transition:opacity var(--duration-fast) var(--ease-standard)}.button[data-loading=true] .button__label{opacity:0}.button__spinner{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.button__spinner-icon{width:20px;height:20px;animation:spin .8s linear infinite}.site-header{position:sticky;top:0;z-index:50;width:100%;background:var(--color-backdrop);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid transparent;transition:border-color var(--duration-base) var(--ease-standard),background-color var(--duration-base) var(--ease-standard)}.site-header[data-scrolled=true]{border-bottom-color:var(--color-border)}.site-header__inner{display:flex;align-items:center;gap:var(--space-lg);width:100%;max-width:var(--layout-max);min-height:var(--header-height);margin:0 auto;padding:var(--space-xs) var(--layout-gutter)}.site-header__brand{display:inline-flex;align-items:center;flex-shrink:0}.site-header__logo{height:32px;width:auto;object-fit:contain}.site-header__nav{display:none;align-items:center;gap:var(--space-lg);margin-right:auto;margin-left:var(--space-md)}@media(min-width:768px){.site-header__nav{display:flex}}@media(max-width:767px){.site-header__brand{margin-right:auto}}.site-header__link{font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-muted);transition:color var(--duration-fast) var(--ease-standard)}.site-header__link:hover{color:var(--color-text-heading)}.badge{display:inline-flex;align-items:center;gap:var(--space-2xs);padding:var(--space-2xs) var(--space-sm);border-radius:var(--radius-full);border:1px solid var(--color-border);font-family:var(--font-body);font-weight:600;font-size:var(--font-size-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;white-space:nowrap}.badge--accent{background:color-mix(in srgb,var(--color-accent-primary) 10%,var(--color-surface-alt));border-color:color-mix(in srgb,var(--color-accent-primary) 30%,transparent);color:var(--color-accent-text)}.badge--neutral{background:var(--color-surface-alt);color:var(--color-text-muted)}.badge--success{background:color-mix(in srgb,var(--color-success) 12%,var(--color-surface-alt));border-color:color-mix(in srgb,var(--color-success) 35%,transparent);color:var(--color-success)}.badge__icon{width:14px;height:14px}.device-mockup{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);margin:0}.device-mockup__stage{position:relative;display:flex;justify-content:center;width:100%}.device-mockup__glow{position:absolute;top:12%;width:min(360px,90%);height:70%;border-radius:var(--radius-full);background:radial-gradient(circle,color-mix(in srgb,var(--color-accent-primary) 26%,transparent) 0%,transparent 70%);filter:blur(48px);z-index:0}.device-mockup__frame{position:relative;z-index:1;width:100%;max-width:288px;aspect-ratio:9 / 19;padding:10px;border-radius:var(--radius-2xl);background:linear-gradient(160deg,var(--color-border-strong),var(--color-accent-secondary));box-shadow:var(--shadow-lg)}.device-mockup__screen{position:relative;display:flex;flex-direction:column;gap:var(--space-sm);height:100%;padding:var(--space-lg) var(--space-sm) var(--space-md);border-radius:calc(var(--radius-2xl) - 8px);background:var(--color-background);overflow:hidden}.device-mockup__notch{position:absolute;top:var(--space-xs);left:50%;transform:translate(-50%);width:72px;height:5px;border-radius:var(--radius-full);background:var(--color-border-strong)}.device-mockup__app-bar{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-xs);padding:0 var(--space-2xs)}.device-mockup__app-title{font-family:var(--font-heading);font-weight:700;font-size:var(--font-size-sm);color:var(--color-text-heading)}.device-mockup__app-status{font-family:var(--font-body);font-size:10px;font-weight:600;color:var(--color-accent-text)}.device-mockup__map{position:relative;flex:1;min-height:0;border-radius:var(--radius-md);background:var(--color-surface);border:1px solid var(--color-border);overflow:hidden}.device-mockup__map-svg{width:100%;height:100%}.device-mockup__map-grid path{stroke:var(--color-border);stroke-width:1;fill:none}.device-mockup__map-route{fill:none;stroke:var(--color-accent-primary);stroke-width:2.5;stroke-linecap:round;stroke-dasharray:6 8;opacity:.75}.device-mockup__map-pin-halo{fill:color-mix(in srgb,var(--color-accent-primary) 20%,transparent)}.device-mockup__map-pin{fill:var(--color-accent-primary);stroke:var(--color-background);stroke-width:3}.device-mockup__members{display:flex;gap:var(--space-2xs);padding:0 var(--space-2xs)}.device-mockup__avatar{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:var(--radius-full);background:var(--color-surface-alt);border:1px solid var(--color-border);font-family:var(--font-body);font-size:10px;font-weight:700;color:var(--color-text-body)}.device-mockup__avatar--add{background:transparent;border-style:dashed;color:var(--color-text-muted)}.device-mockup__sos{position:relative;display:flex;align-items:center;justify-content:center;padding:var(--space-xs) 0}.device-mockup__sos-button{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;width:76px;height:76px;border-radius:var(--radius-full);background:var(--color-accent-primary);color:var(--color-on-accent-primary);font-family:var(--font-heading);font-weight:800;font-size:var(--font-size-lg);letter-spacing:var(--tracking-wide);box-shadow:var(--shadow-glow-accent)}.device-mockup__sos-ring{position:absolute;width:76px;height:76px;border-radius:var(--radius-full);border:2px solid var(--color-accent-primary);animation:sosPulse 2.8s var(--ease-out) infinite}@keyframes sosPulse{0%{transform:scale(1);opacity:.7}70%{transform:scale(1.55);opacity:0}to{transform:scale(1.55);opacity:0}}.device-mockup__hint{text-align:center;font-family:var(--font-body);font-size:10px;color:var(--color-text-muted)}.device-mockup__caption{font-family:var(--font-body);font-size:var(--font-size-xs);color:var(--color-text-muted);text-align:center}.hero{display:grid;grid-template-columns:1fr;align-items:center;gap:var(--space-2xl);padding:var(--space-2xl) 0 var(--space-3xl);animation:fadeInUp var(--duration-slow) var(--ease-out) both}@media(min-width:1024px){.hero{grid-template-columns:1.15fr 1fr;gap:var(--space-3xl);padding:var(--space-3xl) 0 var(--space-4xl)}}.hero__content{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-lg)}.hero__headline{font-size:var(--font-size-display);font-weight:800;line-height:var(--line-height-tight);letter-spacing:var(--tracking-tighter);max-width:16ch}.hero__subtext{font-family:var(--font-body);font-size:var(--font-size-lg);line-height:var(--line-height-relaxed);color:var(--color-text-muted);max-width:52ch;text-wrap:pretty}.hero__actions{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-top:var(--space-2xs)}.hero__trust{display:flex;flex-direction:column;gap:var(--space-xs);margin:var(--space-sm) 0 0;padding:0;list-style:none}.hero__trust-item{display:flex;align-items:center;gap:var(--space-xs);font-family:var(--font-body);font-size:var(--font-size-sm);color:var(--color-text-muted)}.hero__trust-icon{flex-shrink:0;width:16px;height:16px;color:var(--color-accent-text)}.hero__visual{display:flex;justify-content:center;width:100%}@media(min-width:1024px){.hero__visual{justify-content:flex-end}}.card{display:flex;flex-direction:column;gap:var(--space-md);padding:var(--space-lg);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}@media(min-width:768px){.card{padding:var(--space-xl)}}.card--interactive{transition:border-color var(--duration-base) var(--ease-standard),box-shadow var(--duration-base) var(--ease-standard),transform var(--duration-base) var(--ease-out)}.card--interactive:hover{transform:translateY(-2px);border-color:var(--color-border-strong);box-shadow:var(--shadow-md)}.reveal{transition:opacity var(--duration-slow) var(--ease-out),transform var(--duration-slow) var(--ease-out)}.reveal[data-revealed=false]{opacity:0;transform:translateY(16px)}@media(prefers-reduced-motion:reduce){.reveal[data-revealed=false]{opacity:1;transform:none}}.section{display:flex;flex-direction:column;gap:var(--space-xl);padding:var(--space-2xl) 0}@media(min-width:768px){.section{padding:var(--space-3xl) 0}}.section__header{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);text-align:center}.section__title{font-size:var(--font-size-h2);font-weight:800;line-height:var(--line-height-snug);max-width:22ch}.section__lead{font-family:var(--font-body);font-size:var(--font-size-lg);line-height:var(--line-height-relaxed);color:var(--color-text-muted);max-width:58ch;text-wrap:pretty}.features__grid{display:grid;grid-template-columns:1fr;gap:var(--space-lg)}@media(min-width:768px){.features__grid{grid-template-columns:repeat(3,1fr)}}.features__item{display:flex}.features__card{flex:1}.features__icon-wrap{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-accent-primary) 12%,transparent);border:1px solid color-mix(in srgb,var(--color-accent-primary) 25%,transparent)}.features__icon{width:22px;height:22px;color:var(--color-accent-text)}.features__title{font-size:var(--font-size-h3);font-weight:700;line-height:var(--line-height-snug)}.features__description{font-family:var(--font-body);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);color:var(--color-text-muted);text-wrap:pretty}.how-it-works__list{display:grid;grid-template-columns:1fr;gap:var(--space-lg);margin:0;padding:0;list-style:none;counter-reset:none}@media(min-width:768px){.how-it-works__list{grid-template-columns:repeat(3,1fr);gap:var(--space-xl)}}.how-it-works__item{display:flex}.how-it-works__item>.reveal{flex:1;display:flex}.how-it-works__body{display:flex;flex:1;flex-direction:column;gap:var(--space-xs);padding-top:var(--space-md);border-top:2px solid var(--color-border)}.how-it-works__number{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-full);background:color-mix(in srgb,var(--color-accent-primary) 14%,transparent);color:var(--color-accent-text);font-family:var(--font-heading);font-weight:800;font-size:var(--font-size-sm)}.how-it-works__title{margin-top:var(--space-2xs);font-size:var(--font-size-h3);font-weight:700;line-height:var(--line-height-snug)}.how-it-works__description{font-family:var(--font-body);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);color:var(--color-text-muted);text-wrap:pretty}.transparency__grid{display:grid;grid-template-columns:1fr;gap:var(--space-lg)}@media(min-width:900px){.transparency__grid{grid-template-columns:1fr 1.25fr;gap:var(--space-xl)}}.transparency__panel{display:flex;flex-direction:column;gap:var(--space-md);padding:var(--space-lg);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}@media(min-width:768px){.transparency__panel{padding:var(--space-xl)}}.transparency__panel-title{font-size:var(--font-size-h3);font-weight:700}.transparency__roadmap{display:flex;flex-direction:column;gap:var(--space-md);margin:0;padding:0;list-style:none}.transparency__step{position:relative;display:flex;align-items:center;gap:var(--space-sm);padding-left:var(--space-lg)}.transparency__step:not(:last-child):before{content:"";position:absolute;left:5px;top:16px;bottom:calc(-1 * var(--space-md));width:2px;background:var(--color-border)}.transparency__marker{position:absolute;left:0;top:5px;width:12px;height:12px;border-radius:var(--radius-full);border:2px solid var(--color-border-strong);background:var(--color-surface)}.transparency__step[data-done=true] .transparency__marker{border-color:var(--color-success);background:var(--color-success)}.transparency__step-title{flex:1;font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-heading)}.transparency__promises{display:flex;flex-direction:column;gap:var(--space-md);margin:0;padding:0;list-style:none}.transparency__promise{display:flex;gap:var(--space-sm)}.transparency__promise-icon{flex-shrink:0;width:20px;height:20px;margin-top:2px;color:var(--color-accent-text)}.transparency__promise-title{margin:0 0 var(--space-2xs);font-family:var(--font-heading);font-size:var(--font-size-body);font-weight:700;color:var(--color-text-heading)}.transparency__promise-text{font-family:var(--font-body);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);color:var(--color-text-muted);text-wrap:pretty}.transparency__disclosure{padding:var(--space-md) var(--space-lg);border-left:3px solid var(--color-accent-primary);border-radius:var(--radius-xs);background:var(--color-surface-alt);font-family:var(--font-body);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);color:var(--color-text-body);text-wrap:pretty}.transparency__disclosure strong{color:var(--color-text-heading)}.radio-group{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);width:100%}.radio-group__legend{font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-body)}.radio-group__hint{font-family:var(--font-body);font-size:var(--font-size-xs);color:var(--color-text-muted)}.radio-group__options{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-xs)}.radio-group__option{position:relative}.radio-group__input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.radio-group__label{display:inline-flex;align-items:center;gap:var(--space-xs);min-height:44px;padding:var(--space-xs) var(--space-lg);border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-surface-alt);color:var(--color-text-body);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:border-color var(--duration-base) var(--ease-standard),background-color var(--duration-base) var(--ease-standard),color var(--duration-base) var(--ease-standard)}.radio-group__input:hover:not(:disabled)+.radio-group__label{border-color:var(--color-border-strong);color:var(--color-text-heading)}.radio-group__input:checked+.radio-group__label{border-color:var(--color-accent-primary);background:color-mix(in srgb,var(--color-accent-primary) 14%,var(--color-surface-alt));color:var(--color-text-heading)}.radio-group__input:focus-visible+.radio-group__label{outline:2px solid var(--color-accent-primary);outline-offset:3px}.radio-group__input:disabled+.radio-group__label{opacity:.6;cursor:default}.radio-group__icon{width:16px;height:16px}.text-field{display:flex;flex-direction:column;gap:var(--space-2xs);width:100%}.text-field__label{font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-body);text-align:left}.text-field__control{position:relative;display:flex;align-items:center;width:100%}.text-field__icon{position:absolute;left:var(--space-md);width:18px;height:18px;color:var(--color-text-muted);pointer-events:none;transition:color var(--duration-base) var(--ease-standard)}.text-field__input{width:100%;min-height:44px;padding:var(--space-sm) var(--space-md);font-size:var(--font-size-body);font-family:var(--font-body);color:var(--color-text-heading);background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:box-shadow var(--duration-base) var(--ease-standard),border-color var(--duration-base) var(--ease-standard)}.text-field__input--with-icon{padding-left:44px}.text-field__input::placeholder{color:var(--color-text-muted)}.text-field__input:focus{outline:none;border-color:var(--color-accent-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--color-accent-primary) 22%,transparent)}.text-field__control:focus-within .text-field__icon{color:var(--color-accent-text)}.text-field__input:disabled{opacity:.6;cursor:default}.text-field__input[aria-invalid=true]{border-color:var(--color-error);animation:shake var(--duration-slow) var(--ease-standard)}.text-field__input[aria-invalid=true]:focus{border-color:var(--color-error);box-shadow:0 0 0 4px color-mix(in srgb,var(--color-error) 22%,transparent)}@keyframes shake{20%,80%{transform:translate(-1px)}30%,70%{transform:translate(2px)}40%,60%{transform:translate(-4px)}50%{transform:translate(4px)}}.newsletter{display:flex;flex-direction:column;align-items:center;gap:var(--space-lg);padding:var(--space-2xl) var(--space-lg);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);text-align:center;background-image:radial-gradient(ellipse at 50% 0%,color-mix(in srgb,var(--color-accent-primary) 8%,transparent) 0%,transparent 60%)}@media(min-width:768px){.newsletter{padding:var(--space-3xl) var(--space-2xl)}}.newsletter__intro{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm)}.newsletter__heading{font-size:var(--font-size-h2);font-weight:800;line-height:var(--line-height-snug);max-width:20ch}.newsletter__subtext{font-family:var(--font-body);font-size:var(--font-size-body);line-height:var(--line-height-relaxed);color:var(--color-text-muted);max-width:52ch;text-wrap:pretty}.newsletter__form{display:flex;flex-direction:column;align-items:center;gap:var(--space-lg);width:100%;max-width:520px}.newsletter__row{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-sm);width:100%}.newsletter__email{flex:1 1 260px;min-width:0}.newsletter__consent{display:flex;align-items:flex-start;justify-content:center;gap:var(--space-xs);text-align:left}.newsletter__consent-checkbox{flex-shrink:0;width:18px;height:18px;margin-top:2px;accent-color:var(--color-accent-primary);cursor:pointer}.newsletter__consent-label{font-family:var(--font-body);font-size:var(--font-size-sm);line-height:var(--line-height-normal);color:var(--color-text-muted);cursor:pointer}.newsletter__consent-label a{color:var(--color-accent-text);text-decoration:underline;text-underline-offset:2px}.newsletter__error{font-family:var(--font-body);font-size:var(--font-size-sm);color:var(--color-error)}.newsletter__honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.newsletter__success{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);width:100%;max-width:520px;padding:var(--space-xl) var(--space-lg);background:color-mix(in srgb,var(--color-success) 8%,var(--color-surface-alt));border:1px solid color-mix(in srgb,var(--color-success) 35%,transparent);border-radius:var(--radius-lg);animation:fadeInUp var(--duration-slow) var(--ease-out) both}.newsletter__success-icon{width:32px;height:32px;color:var(--color-success)}.newsletter__success-heading{font-size:var(--font-size-h3);font-weight:700;line-height:var(--line-height-snug)}.newsletter__success-text{font-family:var(--font-body);font-size:var(--font-size-body);line-height:var(--line-height-relaxed);color:var(--color-text-body);max-width:44ch}.newsletter__success-hint{margin-top:var(--space-2xs);font-family:var(--font-body);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);color:var(--color-text-body);opacity:.85;max-width:46ch}.newsletter__doi-hint{font-family:var(--font-body);font-size:var(--font-size-sm);line-height:var(--line-height-normal);color:var(--color-text-muted);max-width:46ch}.newsletter__slow-hint{font-family:var(--font-body);font-size:var(--font-size-sm);line-height:var(--line-height-normal);color:var(--color-text-muted)}.footer{display:flex;flex-direction:column;align-items:center;gap:var(--space-md);padding:var(--space-xl) var(--layout-gutter);border-top:1px solid var(--color-border);text-align:center}.footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-lg)}.footer-links a{font-family:var(--font-body);font-size:var(--font-size-sm);color:var(--color-text-muted);transition:color var(--duration-fast) var(--ease-standard)}.footer-links a:hover{color:var(--color-text-heading)}.footer-copyright{display:flex;align-items:center;justify-content:center;gap:var(--space-xs);font-family:var(--font-body);font-size:var(--font-size-xs);color:var(--color-text-muted)}.footer-logo{max-height:24px;width:auto;filter:grayscale(1) opacity(.7)}.landing-page{display:flex;flex-direction:column;min-height:100vh}.landing-main{flex:1}.landing-container{width:100%;max-width:var(--layout-max);margin:0 auto;padding:0 var(--layout-gutter)}@media(max-width:480px){.landing-container{padding:0 var(--space-md)}}.landing-container>.section+.section{border-top:1px solid var(--color-border)}.landing-container>.newsletter{margin-bottom:var(--space-3xl)}
