
@font-face { font-family: Manrope; src: url("../fonts/manrope-latin.woff2") format("woff2"); font-weight: 200 800; font-style: normal; font-display: swap; }
@font-face { font-family: "IBM Plex Mono"; src: url("../fonts/ibm-plex-mono-latin.woff2") format("woff2"); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: "IBM Plex Mono"; src: url("../fonts/ibm-plex-mono-medium-latin.woff2") format("woff2"); font-weight: 500; font-style: normal; font-display: swap; }
:root { --spacing: 4px; --section-spacing: calc(var(--spacing) * 20); --background: #10130e; --foreground: #f1f1e9; --primary: #b8ec52; --card: #272d23; --muted: #1d221b; --muted-foreground: #aeb3a5; --border: #3a4134; --ivory: #f2f1eb; --ink: #10130e; --ink-muted: #535b4d; }
html { scroll-behavior: smooth; scroll-padding-top: 88px; }
body { margin: 0; font: 400 16px / 1.55 Manrope, sans-serif; color: var(--foreground); background: var(--background); }
img { max-width: 100%; }
a { color: inherit; text-underline-offset: 3px; }
button,
input { font: inherit; }
button,
a,
input { -webkit-tap-highlight-color: transparent; }
:focus-visible { outline: 2px solid var(--primary); outline-offset: 5px; }
.container { max-width: 1280px; padding-inline: 24px; }
.py-24 { padding-block: var(--section-spacing); }
.section--light { background: var(--ivory); color: var(--ink); }
.section__title { margin: 0 0 28px; font-size: clamp(30px, 3vw, 48px); font-weight: 800; line-height: 1.07; letter-spacing: -1.6px; }
.section__title--narrow,
.security-faq .section__title,
.about-roles__title { max-width: 780px; }
.section__intro { max-width: 660px; margin: -8px 0 32px; color: var(--muted-foreground); }
.icon { flex: 0 0 auto; width: 24px; height: 24px; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 16px; min-height: 48px; padding: 12px 24px; border: 1px solid transparent; border-radius: 8px; font-size: 15px; font-weight: 700; line-height: 1.4; text-align: center; text-decoration: none; transition: background-color .2s, opacity .2s; }
.button--primary { background: var(--primary); color: var(--ink); }
.button--primary:hover { background: rgb(205, 248, 131); color: var(--ink); }
.button--outline { border-color: var(--primary); color: var(--primary); }
.button--outline:hover { background: var(--primary); color: var(--ink); }
.button:disabled { opacity: .4; cursor: not-allowed; }
.button__icon { flex-shrink: 0; width: 16px; height: 16px; }
.site-header { position: sticky; top: 0; z-index: 100; border-bottom: 1px solid #ffffff0d; background: #10130ef2; backdrop-filter: blur(16px); }
.site-header__nav { min-height: 64px; gap: 24px; padding-block: 10px; }
.site-header__brand { display: inline-flex; margin-right: auto; }
.site-header__brand img { display: block; width: 110px; height: 32px; object-fit: contain; object-position: left center; }
.site-header__menu { flex-grow: 0; order: 1; }
.site-header__links { gap: 24px; }
.site-header__link { padding: 8px 0; font-size: 14px; text-decoration: none; color: var(--muted-foreground); white-space: nowrap; }
.site-header__link:hover,
.site-header__link--active { color: var(--primary); }
.site-header__link--active { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 6px; }
.site-header__cta { order: 2; min-height: 40px; padding: 9px 18px; font-size: 14px; }
.site-header__toggle { order: 3; width: 40px; height: 40px; padding: 8px; border-color: var(--border); }
.site-header__toggle span { display: block; height: 2px; margin: 4px 0; background: var(--foreground); }
.site-header__toggle:focus { box-shadow: 0 0 0 2px var(--primary); }
.hero { position: relative; isolation: isolate; background: linear-gradient(#10130ed9, #10130ee8), url("../img/hero.jpg") center center / cover no-repeat; }
.hero__title { margin: 0; padding-bottom: 8px; max-width: 600px; font-size: 54px; font-weight: 800; line-height: 1.08; letter-spacing: -1.9px; color: transparent; background-image: linear-gradient(to bottom, var(--primary), var(--primary) 50%, var(--foreground)); background-clip: text; -webkit-background-clip: text; }
.hero__description { max-width: 570px; margin: 24px 0 28px; color: var(--muted-foreground); font-size: 18px; }
.hero__points { display: grid; gap: 12px; max-width: 580px; padding: 0; margin: 0; list-style: none; }
.hero__point { display: flex; gap: 12px; align-items: flex-start; padding: 16px; border: 1px solid #3a4134b2; border-radius: 12px; background: #10130e66; font-size: 14px; }
.hero__point .icon { width: 20px; height: 20px; margin-top: 2px; color: var(--primary); }
.hero__form-column { display: flex; justify-content: flex-end; }
.access-form { width: 100%; max-width: 448px; padding: 32px; border: 1px solid var(--border); border-radius: 16px; background: #272d23d9; backdrop-filter: blur(12px); text-align: left; }
.access-form__field + .access-form__field { margin-top: 14px; }
.access-form__field { position: relative; }
.access-form__label { display: block; margin-bottom: 6px; color: var(--muted-foreground); font: 400 11px / 1.5 "IBM Plex Mono", monospace; text-transform: uppercase; letter-spacing: 1.1px; }
.access-form__input { height: 48px; padding: 10px 14px; border: 1px solid var(--border); border-radius: 8px; color: var(--foreground); background: var(--muted); }
.access-form__input:focus { color: var(--foreground); background: var(--muted); border-color: var(--primary); box-shadow: #b8ec5226 0 0 0 2px; }
.access-form__input:-webkit-autofill { -webkit-text-fill-color: var(--foreground); box-shadow: inset 0 0 0 100px var(--muted); }
.access-form__consent { display: flex; align-items: flex-start; gap: 10px; margin-top: 20px; color: var(--muted-foreground); font-size: 12px; line-height: 1.6; cursor: pointer; }
.access-form__checkbox { flex: 0 0 16px; width: 16px; height: 16px; margin-top: 2px; accent-color: var(--primary); cursor: pointer; }
.access-form__consent a { text-decoration: none; }
.access-form__consent a:hover { text-decoration: underline; }
.access-form__submit { position: relative; width: 100%; margin-top: 16px; }
.access-form__submit.form__btn--disabled { cursor: wait; }
.access-form__input.input-error { border-color: #ff0000; }
.access-form .iti__country-list { max-width: min(320px, calc(100vw - 48px)); background: var(--card); color: var(--foreground); border-color: var(--border); }
.access-form .iti__country.iti__highlight, .access-form .iti__selected-flag:hover { background-color: #ffffff14; }
.access-form .iti__divider { border-color: var(--border); }
.access-form .iti__arrow { border-top-color: var(--muted-foreground); }
.access-form .iti__arrow--up { border-top-color: transparent; border-bottom-color: var(--muted-foreground); }
.iti--container .iti__country-list { max-width: min(320px, calc(100vw - 48px)); background: var(--ivory); color: var(--ink); border-color: #10130e26; }
.iti--container .iti__country.iti__highlight { background: #10130e0d; }
.iti--container .iti__divider { border-color: #10130e26; }
.access-form__submit .loader, .access-form__submit .loader::before, .access-form__submit .loader::after { width: 6px; height: 6px; border-radius: 50%; background: var(--ink); animation: form-loading 1.2s infinite ease-in-out; }
.access-form__submit .loader { position: absolute; top: 50%; left: 50%; margin: -3px 0 0 -3px; animation-delay: -.16s; }
.access-form__submit .loader::before, .access-form__submit .loader::after { content: ''; position: absolute; top: 0; }
.access-form__submit .loader::before { left: -14px; animation-delay: -.32s; }
.access-form__submit .loader::after { left: 14px; }
@keyframes form-loading { 0%, 80%, 100% { transform: scale(.5); opacity: .4; } 40% { transform: scale(1); opacity: 1; } }
.access-form__note { margin: 16px 0 0; color: var(--muted-foreground); font-size: 13px; line-height: 1.5; }
.access-form:has(.access-form__checkbox:not(:checked)) .access-form__submit { opacity: .4; cursor: not-allowed; }
.benefits__grid,
.audience-card { overflow: hidden; border: 1px solid #10130e26; border-radius: 18px; }
.benefits__grid > div { border-right: 1px solid #10130e26; border-bottom: 1px solid #10130e26; }
.benefits__grid > div:nth-child(3n) { border-right: 0; }
.benefits__grid > div:nth-last-child(-n+3) { border-bottom: 0; }
.benefit-card,
.contact-process-card { height: 100%; padding: 32px; }
.benefit-card__top { display: flex; align-items: center; justify-content: space-between; }
.benefit-card__icon,
.security-card__icon { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 12px; background: var(--background); color: var(--primary); }
.benefit-card__icon .icon { width: 20px; height: 20px; }
.benefit-card__title,
.security-card__title { margin: 24px 0 12px; font-size: 21px; font-weight: 700; line-height: 1.3; }
.benefit-card__text { margin: 0; color: var(--ink-muted); font-size: 15px; }
.benefits__image { display: block; width: 100%; height: 100%; min-height: 340px; object-fit: cover; }
.benefits__cta { margin-top: 40px; text-align: center; }
.benefits__summary { max-width: 960px; margin: 0 auto 24px; font-size: 22px; font-weight: 500; line-height: 1.4; }
.calculator__note { max-width: 900px; margin: 24px 0 20px; color: var(--muted-foreground); font-size: 13px; }
.trust__intro { margin: -8px 0 28px; color: var(--ink-muted); font-size: 15px; }
.trust__link { color: var(--ink); font-weight: 600; text-decoration: underline; text-underline-offset: 4px; }
.trust__image { display: block; width: 100%; aspect-ratio: 1 / 1; height: auto; max-height: 448px; object-fit: cover; border-radius: 18px; }
.trust__cards { height: 100%; }
.trust-card { height: 100%; padding: 28px; background: var(--background); color: var(--foreground); border: 1px solid var(--border); border-radius: 18px; }
.trust-card__icon { display: inline-flex; color: var(--primary); }
.trust-card__title { margin: 18px 0 12px; font-size: 19px; font-weight: 700; line-height: 1.3; }
.trust-card__text { margin: 0; color: var(--muted-foreground); font-size: 14px; }
.steps { background: linear-gradient(#10130ed9, #10130ee6), url("../img/steps.jpg") center center / cover no-repeat; }
.step-card { height: 100%; padding: 32px; border: 1px solid var(--border); border-radius: 18px; background: #272d23cc; backdrop-filter: blur(8px); }
.step-card__icon { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 56px; height: 56px; border: 1px solid #b8ec5233; border-radius: 16px; color: var(--primary); background: #10130eb2; box-shadow: #b8ec5220 0 0 24px; }
.step-card__icon .icon { width: 28px; height: 28px; }
.step-card__image { transition: opacity .3s; }
.step-card__image--hover { position: absolute; inset: 0; margin: auto; opacity: 0; }
.step-card__title { margin: 24px 0 12px; font-size: 20px; line-height: 1.4; font-weight: 700; }
.step-card__text { margin: 0; font-size: 15px; color: var(--muted-foreground); }
.faq__container { max-width: 1024px; }
.faq__accordion { --bs-accordion-bg: transparent; --bs-accordion-color: var(--ink); --bs-accordion-border-color: #10130e26; --bs-accordion-border-radius: 0; --bs-accordion-inner-border-radius: 0; }
.faq__item { border-inline: 0; }
.faq__button { gap: 24px; padding: 22px 0; font-size: 18px; font-weight: 600; color: var(--ink); }
.faq__button:not(.collapsed) { color: var(--ink); background: transparent; box-shadow: none; }
.faq__button:focus { box-shadow: none; outline: 2px solid var(--ink-muted); outline-offset: 3px; }
.faq__button::after { display: none; }
.faq__icon { flex-shrink: 0; width: 20px; height: 20px; margin-left: auto; transition: transform .15s; }
.faq__button:not(.collapsed) .faq__icon { transform: rotate(45deg); }
.faq__answer { max-width: 850px; padding: 0 32px 24px 0; color: var(--ink-muted); }
.request { background: linear-gradient(#10130ef2, #10130ed9, #10130ef2), url("../img/city.jpg") center center / cover no-repeat; }
.request__title { max-width: 750px; margin-inline: auto; text-align: center; }
.request__intro { max-width: 530px; margin-inline: auto; text-align: center; }
.request__form { display: flex; justify-content: center; }
.site-footer { border-top: 1px solid #ffffff14; }
.site-footer__top { display: flex; align-items: flex-start; justify-content: space-between; gap: 32px; }
.site-footer__logo { display: block; width: 110px; height: 34px; object-fit: contain; object-position: left center; }
.site-footer__tagline { margin: 6px 0 0; color: var(--muted-foreground); font: 12px / 16px "IBM Plex Mono", monospace; text-transform: uppercase; letter-spacing: .05em; }
.site-footer__navigation { display: flex; flex-direction: column; gap: 16px; }
.site-footer__nav,
.site-footer__documents { display: flex; flex-wrap: wrap; gap: 24px; }
.site-footer__link { color: var(--muted-foreground); font-size: 14px; line-height: 20px; text-decoration: none; }
.site-footer__link:hover { color: var(--primary); }
.site-footer__legal { gap: 40px; margin: 56px 0 0; padding-top: 40px; border-top: 1px solid #ffffff14; color: var(--muted-foreground); font-size: 14px; line-height: 20px; }
.site-footer__legal > * { margin-top: 0; padding-inline: 0; }
.site-footer__heading { color: var(--foreground); margin-bottom: 12px; font-size: 14px; line-height: 20px; font-weight: 600; }
.site-footer__legal p { margin-bottom: 8px; }
.legal-modal { --bs-modal-bg: var(--ivory); --bs-modal-color: var(--ink); --bs-modal-border-color: #10130e26; --bs-modal-header-border-color: #10130e26; --bs-modal-footer-border-color: #10130e26; }
.legal-modal__content { border-radius: 16px; }
.legal-modal__header,
.legal-modal__footer { padding: 20px 24px; }
.legal-modal__title { font-size: 24px; font-weight: 800; line-height: 1.2; }
.legal-modal__body { padding: 24px; font-size: 15px; line-height: 1.65; }
.legal-modal__body h3 { margin: 28px 0 12px; font-size: 19px; font-weight: 700; }
.legal-modal__body h4 { margin: 20px 0 10px; font-size: 16px; font-weight: 700; }
.legal-modal__body p:last-child { margin-bottom: 0; }
.legal-modal__close:focus-visible { outline-color: var(--ink); }
.markets-hero { background: linear-gradient(#10130ed9, #10130ef5), url("../img/markets-hero.jpg") center center / cover no-repeat; }
.markets-hero__title,
.security-hero__title,
.about-hero__title { max-width: 920px; margin: 0 0 24px; font-size: 54px; font-weight: 800; line-height: 1.08; letter-spacing: -1.9px; }
.markets-hero__description,
.about-hero__description { max-width: 760px; margin: 0; font-size: 18px; color: var(--muted-foreground); }
.market-catalog__intro { max-width: 660px; margin: -8px 0 48px; color: var(--ink-muted); }
.market-catalog--digital { background: linear-gradient(90deg, #10130ef5, #10130ed9 50%, #10130e80), url("../img/digital-assets.jpg") center center / cover no-repeat; }
.market-catalog--digital .market-catalog__intro { color: var(--muted-foreground); }
.exchange-grid,
.security-funds__grid,
.about-roles__grid { overflow: hidden; border: 1px solid #10130e26; border-radius: 20px; }
.exchange-grid > div { border-right: 1px solid #10130e14; border-bottom: 1px solid #10130e14; }
.exchange-grid > div:nth-child(4n) { border-right: 0; }
.exchange-grid > div:nth-last-child(-n+4) { border-bottom: 0; }
.exchange-card { height: 100%; padding: 28px; background: var(--ivory); color: var(--ink); }
.exchange-card__top { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 48px; }
.exchange-card__logo,
.infrastructure-card__logo { display: block; width: auto; height: 44px; max-width: 100%; object-fit: contain; object-position: left center; }
.exchange-card__text { margin: 24px 0 0; color: var(--ink-muted); font-size: 16px; line-height: 1.55; }
.exchange-card__text strong { color: var(--ink); font-weight: 700; }
.exchange-card--digital { border-radius: 18px; }
.exchange-card--digital .exchange-card__logo { height: 36px; }
.market-workflow { --workflow-top-padding: 80px; --workflow-bottom-padding: 48px; overflow: hidden; background: var(--background); }
.market-workflow__visual { position: relative; isolation: isolate; }
.market-workflow__background { position: absolute; z-index: -1; top: calc(-1 * var(--workflow-top-padding)); bottom: calc(-1 * var(--workflow-bottom-padding)); left: 50%; width: 100vw; overflow: hidden; transform: translateX(-50%); background: var(--background); pointer-events: none; }
.market-workflow__background img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .3; }
.market-workflow__background::before, .market-workflow__background::after { content: ''; position: absolute; inset: 0; }
.market-workflow__background::before { z-index: 1; background: linear-gradient(to right, var(--background), #10130ed9 50%, #10130e8c); }
.market-workflow__background::after { z-index: 2; background: #10130e59; }
.market-workflow__glow { position: absolute; z-index: 3; top: -128px; left: 50%; width: 768px; height: 384px; border-radius: 50%; transform: translateX(-50%); background: #b8ec521a; filter: blur(64px); }
.market-workflow__cards,
.about-principles__cards { margin-top: 24px; }
.market-workflow-card { position: relative; overflow: hidden; height: 100%; min-height: 236px; padding: 32px 32px 52px; border: 1px solid #ffffff0d; border-radius: 18px; background: #303829e6; }
.market-workflow-card__icon { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 10px; background: var(--primary); color: var(--ink); }
.market-workflow-card__icon .icon { width: 20px; height: 20px; }
.market-workflow-card__text { position: relative; z-index: 1; margin: 24px 0 0; color: var(--muted-foreground); }
.market-workflow-card__text strong { color: var(--foreground); font-weight: 700; }
.market-workflow-card__number { position: absolute; right: 16px; bottom: -24px; color: transparent; font: 700 96px / 1 "IBM Plex Mono", monospace; -webkit-text-stroke: 1px var(--primary); opacity: .4; pointer-events: none; }
.market-notice { margin-top: 48px; padding: 36px 40px; border: 1px solid #b8ec5266; border-radius: 18px; background: #303829e6; }
.market-notice__title { margin: 0 0 16px; color: var(--primary); font: 12px / 1.5 "IBM Plex Mono", monospace; text-transform: uppercase; letter-spacing: 1px; }
.market-notice__text { max-width: 900px; margin: 0; color: var(--muted-foreground); }
.security-hero { background: linear-gradient(#10130ed9, #10130ef5), url("../img/security-hero.jpg") center center / cover no-repeat; }
.security-hero__description { max-width: 800px; margin: 0; font-size: 18px; color: var(--muted-foreground); }
.security-funds__grid > div { border-right: 1px solid #10130e14; border-bottom: 1px solid #10130e14; }
.security-funds__grid > div:nth-child(2n) { border-right: 0; }
.security-funds__grid > div:nth-last-child(-n+2) { border-bottom: 0; }
.security-card,
.about-role-card { height: 100%; padding: 40px; }
.security-card__icon .icon { width: 20px; height: 20px; }
.security-card__text,
.about-role-card__text,
.contact-process-card__text { margin: 0; color: var(--ink-muted); font-size: 16px; line-height: 1.55; }
.security-infrastructure__cards { margin-top: 32px; }
.infrastructure-card { height: 100%; padding: 28px; border: 1px solid #ffffff14; border-radius: 18px; background: var(--ivory); color: var(--ink); }
.infrastructure-card__title { margin: 24px 0 12px; font-size: 18px; font-weight: 700; line-height: 1.3; }
.infrastructure-card__text { margin: 0; color: var(--ink-muted); font-size: 14px; line-height: 1.55; }
.infrastructure-card__logo[src$="cloudflare-logo.png"] { width: 84px; }
.security-request { background: linear-gradient(#10130ee6, #10130ed9, #10130ef2), url("../img/request-security.jpg") center center / cover no-repeat; }
.security-request .request__title { max-width: 720px; }
.about-hero { position: relative; isolation: isolate; overflow: hidden; --about-hero-padding: 80px; background: var(--background); }
.about-hero__heading { position: relative; }
.about-hero__heading::before { content: ""; position: absolute; z-index: -1; top: calc(-1 * (var(--about-hero-padding) + 64px)); bottom: -16px; left: 50%; width: 100vw; transform: translateX(-50%); background: linear-gradient(to bottom, #10130edb, #10130eed 50%, var(--background)), url('../img/about-hero.jpg') center/cover no-repeat; pointer-events: none; }
.about-hero__text { color: var(--muted-foreground); font-size: 18px; }
.about-hero__text p { margin: 0 0 24px; }
.about-hero__text p:last-child { margin-bottom: 0; }
.about-hero__image-wrap { position: relative; isolation: isolate; }
.about-hero__image-wrap::before { content: ""; position: absolute; z-index: -1; inset: -24px; border-radius: 32px; background: #b8ec521a; filter: blur(64px); pointer-events: none; }
.about-hero__image { display: block; width: 100%; height: auto; border: 1px solid var(--border); border-radius: 18px; }
.about-roles__intro { max-width: 760px; margin: -8px 0 24px; color: var(--ink-muted); }
.about-roles__grid > div + div { border-left: 1px solid #10130e14; }
.about-role-card__title { width: fit-content; max-width: 100%; margin: 0 0 12px; font-size: 21px; font-weight: 700; line-height: 1.3; }
.principle-card { display: flex; align-items: flex-start; gap: 28px; padding: 32px; border: 1px solid var(--border); border-radius: 18px; background: var(--card); }
.principle-card__icon { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 44px; width: 44px; height: 44px; border-radius: 10px; color: var(--ink); background: var(--primary); }
.principle-card__icon .icon,
.audience-card__icon .icon { width: 20px; height: 20px; }
.principle-card__title { margin: 0 0 8px; font-size: 18px; font-weight: 700; line-height: 1.4; }
.principle-card__text { margin: 0; font-size: 16px; color: var(--muted-foreground); }
.about-audience__intro { max-width: 780px; margin: -8px 0 48px; color: var(--ink-muted); }
.audience-card__image-column { position: relative; min-height: 192px; }
.audience-card__image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.audience-card__content { padding: 40px; }
.audience-card__icon,
.contact-process-card__icon { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 12px; color: var(--primary); background: var(--background); }
.audience-card__title { margin: 24px 0 12px; font-size: 18px; line-height: 1.4; font-weight: 700; }
.audience-card__text { max-width: 780px; margin: 0; color: var(--ink-muted); font-size: 16px; }
.about-request { background: linear-gradient(#10130ed9, #10130ed9, #10130ef2), url("../img/request-about.jpg") center center / cover no-repeat; }
.about-request .request__title { max-width: 800px; margin-bottom: 40px; }
.contact-hero { background: linear-gradient(to bottom, #10130ec2, #10130ee0 50%, var(--background)), url('../img/contact-hero.jpg') center/cover no-repeat; }
.contact-hero__title { margin: 0; font-size: 54px; font-weight: 800; line-height: 1.08; letter-spacing: -1.9px; }
.contact-hero__description,
.contact-admin__description { margin: 24px 0 0; font-size: 18px; color: var(--muted-foreground); }
.contact-hero__notice { margin-top: 32px; padding: 24px; border: 1px solid var(--border); border-radius: 18px; background: #272d2399; backdrop-filter: blur(4px); }
.contact-hero__notice p { margin: 0; color: var(--muted-foreground); font-size: 14px; line-height: 1.5; }
.contact-hero__form-column { display: flex; justify-content: flex-start; }
.contact-process__grid { overflow: hidden; margin-top: 48px; border: 1px solid #10130e26; border-radius: 20px; }
.contact-process__grid > div + div { border-left: 1px solid #10130e14; }
.contact-process-card__icon .icon { width: 20px; height: 20px; }
.contact-process-card__title { width: fit-content; max-width: 100%; margin: 24px 0 12px; font-size: 18px; font-weight: 700; line-height: 1.4; }
.contact-admin__container { max-width: 768px; }
.contact-admin__description strong { font-weight: 600; color: var(--foreground); }
.contact-admin__email { font-family: "IBM Plex Mono", monospace; color: var(--primary); text-decoration: none; overflow-wrap: anywhere; }
.contact-admin__email:hover { color: var(--primary); text-decoration: underline; }
.contact-admin__notice { margin: 32px 0 0; padding: 24px; border: 1px solid var(--border); border-radius: 18px; background: #272d2399; font-size: 14px; font-style: italic; color: var(--muted-foreground); }

@media (min-width: 576px) {
  .audience-card__image-column { flex: 0 0 180px; width: 180px; }
}

@media (min-width: 768px) {
  .site-footer__legal > .col-md-6 { width: calc(50% - 20px); }
}

@media (min-width: 992px) {
  .site-header__cta { margin-left: 30px; }
  .audience-card__image-column { flex-basis: 260px; width: 260px; }
}

@media (max-width: 1199.98px) {
  .market-workflow { --workflow-top-padding: 60px; }
  .py-24 { padding-block: calc(var(--spacing) * 15); }
  .site-header__links,
    .site-header__nav { gap: 16px; }
  .benefit-card,
    .step-card,
    .trust-card,
    .exchange-card,
    .infrastructure-card,
    .contact-process-card { padding: 24px; }
  .exchange-card__top { gap: 12px; }
  .exchange-card__text { font-size: 15px; }
  .market-workflow-card { padding: 24px 24px 48px; }
  .security-card,
    .about-role-card,
    .audience-card__content { padding: 32px; }
  .about-hero { --about-hero-padding: 60px; }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
  .site-header__cta { margin-left: 38px; }
}

@media (max-width: 991.98px) {
  .site-header__menu { order: 4; flex-basis: 100%; }
  .site-header__links { gap: 0; padding-block: 8px; }
  .site-header__link { padding: 12px 0; border-top: 1px solid #ffffff14; }
  .site-header__cta { margin-left: auto; }
  .hero__title,
    .hero__description,
    .hero__points { max-width: 640px; margin-inline: auto; }
  .hero__title,
    .hero__description,
    .contact-hero__title,
    .contact-hero__description { text-align: center; }
  .hero__form-column,
    .contact-hero__form-column { justify-content: center; }
  .benefits__grid > div:nth-child(n) { border-right: 1px solid #10130e26; border-bottom: 1px solid #10130e26; }
  .benefits__grid > div:nth-child(2n) { border-right: 0; }
  .benefits__grid > div:nth-last-child(-n+2) { border-bottom: 0; }
  .trust__image { max-height: 400px; aspect-ratio: 1.6 / 1; }
  .site-footer__top { flex-wrap: wrap; }
  .site-footer__navigation { display: grid; grid-template-columns: repeat(2, max-content); gap: 32px; max-width: 100%; }
  .site-footer__nav,
    .site-footer__documents { flex-direction: column; align-items: flex-start; gap: 16px; }
  .exchange-grid > div:nth-child(n) { border-right: 1px solid #10130e14; border-bottom: 1px solid #10130e14; }
  .exchange-grid > div:nth-child(2n) { border-right: 0; }
  .exchange-grid > div:nth-last-child(-n+2) { border-bottom: 0; }
  .market-workflow-card__text { font-size: 15px; }
  .contact-hero__description,
    .contact-hero__notice { max-width: 640px; margin-inline: auto; }
}

@media (max-width: 767.98px) {
  .market-workflow { --workflow-bottom-padding: 32px; }
  .container { padding-inline: 20px; }
  html[lang="de"] .security-card,
  html[lang="de"] .legal-modal {
    -webkit-hyphens: auto;
    hyphens: auto;
    overflow-wrap: anywhere;
  }
  html[lang="de"] .legal-modal__title { min-width: 0; }
  .site-footer__navigation {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
    width: 100%;
    min-width: 0;
  }
  .site-footer__nav,
    .site-footer__documents { min-width: 0; }
  .site-footer__link {
    max-width: 100%;
    overflow-wrap: anywhere;
    hyphens: auto;
  }
  .section__title { font-size: 32px; letter-spacing: -1px; }
  .hero__title,
    .markets-hero__title,
    .security-hero__title,
    .about-hero__title,
    .contact-hero__title { letter-spacing: -1.3px; }
  .hero__description,
    .faq__button,
    .markets-hero__description,
    .security-hero__description,
    .about-hero__description,
    .about-hero__text,
    .contact-hero__description,
    .contact-admin__description { font-size: 16px; }
  .access-form,
    .security-card,
    .about-role-card,
    .audience-card__content { padding: 24px; }
  .benefits__grid > div:nth-child(n) { border-right: 0; border-bottom: 1px solid #10130e26; }
  .benefits__grid > div:last-child { border-bottom: 0; }
  .benefits__image { min-height: 0; max-height: 450px; aspect-ratio: 1.2 / 1; }
  .benefits__summary { font-size: 19px; }
  .faq__answer,
    .market-notice__text { font-size: 14px; }
  .market-catalog__intro,
    .about-audience__intro { margin-bottom: 32px; }
  .market-workflow__cards,
    .security-infrastructure__cards,
    .about-principles__cards { margin-top: 8px; }
  .market-workflow-card { min-height: 0; padding-bottom: 48px; }
  .market-notice { margin-top: 32px; padding: 24px; }
  .security-funds__grid > div:nth-child(n) { border-right: 0; border-bottom: 1px solid #10130e14; }
  .security-funds__grid > div:last-child { border-bottom: 0; }
  .security-card__text,
    .principle-card__text,
    .about-role-card__text,
    .audience-card__text,
    .contact-process-card__text { font-size: 15px; }
  .about-hero__image-wrap::before { inset: 0; }
  .about-roles__intro { margin-bottom: 16px; }
  .about-roles__grid > div + div { border-left: 0; border-top: 1px solid #10130e14; }
  .principle-card { gap: 20px; padding: 24px; }
  .contact-process__grid { margin-top: 32px; }
  .contact-process__grid > div + div { border-left: 0; border-top: 1px solid #10130e14; }
}

@media (max-width: 575.98px) {
  .exchange-grid > div:nth-child(n) { border-right: 0; border-bottom: 1px solid #10130e14; }
  .exchange-grid > div:last-child { border-bottom: 0; }
  .audience-card__image-column { min-height: 220px; }
}

@media (max-width: 374.98px) {
  .site-header__nav { gap: 10px; }
  .site-header__brand img { width: 90px; }
  .site-header__cta { padding-inline: 12px; font-size: 12px; }
  .access-form { padding: 20px; }
  .principle-card { gap: 16px; padding: 20px; }
}

@media (hover: hover) {
  .benefit-card,
    .security-card,
    .about-role-card,
    .contact-process-card { position: relative; isolation: isolate; overflow: hidden; }
  .benefit-card::before { content: ""; position: absolute; z-index: -1; inset: 0; background: radial-gradient(144px at calc(100% + 16px) -16px, #b8ec5240, transparent 80%), #b8ec520f; opacity: 0; transition: opacity .5s; pointer-events: none; }
  .benefit-card::after { content: ""; position: absolute; inset: 0 auto 0 0; width: 3px; background: linear-gradient(to top, var(--primary), #b8ec5266); transform: scaleY(0); transform-origin: center bottom; transition: transform .5s; pointer-events: none; }
  .benefit-card__icon,
    .security-card__icon,
    .contact-process-card__icon { transition: transform .3s; }
  .benefit-card__title,
    .security-card__title { position: relative; width: fit-content; max-width: 100%; }
  .benefit-card__title::after { content: ""; position: absolute; right: 0; bottom: -4px; left: 0; height: 2px; background: var(--primary); transform: scaleX(0); transform-origin: left center; transition: transform .5s; pointer-events: none; }
  .benefit-card:hover::before { opacity: 1; }
  .benefit-card:hover::after { transform: scaleY(1); }
  .benefit-card:hover .benefit-card__icon { transform: translateY(-4px) rotate(6deg); }
  .benefit-card:hover .benefit-card__title::after { transform: scaleX(1); }
  .step-card { transition: transform .3s, border-color .3s, box-shadow .3s; }
  .step-card__icon { transition: background-color .3s, color .3s; }
  .step-card:hover { transform: translateY(-4px); border-color: #b8ec5299; box-shadow: 0 20px 60px -20px var(--primary); }
  .step-card:hover .step-card__icon { color: var(--ink); background: var(--primary); }
  .step-card:hover .step-card__image { opacity: 0; }
  .step-card:hover .step-card__image--hover { opacity: 1; }
  .market-workflow-card { transition: transform .3s, border-color .3s; }
  .market-workflow-card::before { content: ""; position: absolute; top: -64px; right: -64px; width: 160px; height: 160px; border-radius: 50%; background: #b8ec5226; filter: blur(40px); opacity: .6; transition: opacity .3s; pointer-events: none; }
  .market-workflow-card__icon { position: relative; transition: box-shadow .3s; }
  .market-workflow-card:hover { transform: translateY(-4px); border-color: var(--primary); }
  .market-workflow-card:hover::before { opacity: 1; }
  .market-workflow-card:hover .market-workflow-card__icon { box-shadow: 0 0 24px var(--primary); }
  .security-card::before { content: ""; position: absolute; z-index: -1; inset: 0; background: radial-gradient(160px at calc(100% + 16px) -16px, #b8ec5240, transparent 80%), #b8ec520d; opacity: 0; transition: opacity .5s; pointer-events: none; }
  .security-card__title::after { content: ""; position: absolute; right: 0; bottom: -4px; left: 0; height: 2px; border-radius: 2px; background: var(--primary); transform: scaleX(0); transform-origin: left center; transition: transform .5s; pointer-events: none; }
  .security-card:hover::before { opacity: 1; }
  .security-card:hover .security-card__icon { transform: translateY(-4px) rotate(6deg); }
  .security-card:hover .security-card__title::after { transform: scaleX(1); }
  .about-role-card::before { content: ""; position: absolute; z-index: -1; inset: 0; background: radial-gradient(144px at calc(100% + 16px) -16px, #b8ec5240, transparent 80%), #b8ec520f; opacity: 0; transition: opacity .5s; pointer-events: none; }
  .about-role-card::after { content: ""; position: absolute; inset: 0 auto 0 0; width: 3px; background: linear-gradient(to top, var(--primary), #b8ec5266); transform: scaleY(0); transform-origin: center bottom; transition: transform .5s; pointer-events: none; }
  .about-role-card__title,
    .contact-process-card__title { position: relative; }
  .about-role-card__title::after { content: ""; position: absolute; right: 0; bottom: -4px; left: 0; height: 2px; background: var(--primary); transform: scaleX(0); transform-origin: left center; transition: transform .5s; pointer-events: none; }
  .about-role-card:hover::before { opacity: 1; }
  .about-role-card:hover::after { transform: scaleY(1); }
  .about-role-card:hover .about-role-card__title::after { transform: scaleX(1); }
  .contact-process-card::before { content: ""; position: absolute; z-index: -1; inset: 0; background: radial-gradient(144px at calc(100% + 16px) -16px, #b8ec5240, transparent 80%), #b8ec520f; opacity: 0; transition: opacity .5s; pointer-events: none; }
  .contact-process-card::after { content: ""; position: absolute; inset: 0 auto 0 0; width: 3px; background: linear-gradient(to top, var(--primary), #b8ec5266); transform: scaleY(0); transform-origin: center bottom; transition: transform .5s; pointer-events: none; }
  .contact-process-card__title::after { content: ""; position: absolute; right: 0; bottom: -4px; left: 0; height: 2px; background: var(--primary); transform: scaleX(0); transform-origin: left center; transition: transform .5s; pointer-events: none; }
  .contact-process-card:hover::before { opacity: 1; }
  .contact-process-card:hover::after { transform: scaleY(1); }
  .contact-process-card:hover .contact-process-card__icon { transform: translateY(-4px) rotate(6deg); }
  .contact-process-card:hover .contact-process-card__title::after { transform: scaleX(1); }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *,
    ::before,
    ::after { transition-duration: .01ms !important; animation-duration: .01ms !important; }
  .benefit-card:hover .benefit-card__icon,
    .step-card:hover,
    .market-workflow-card:hover,
    .security-card:hover .security-card__icon,
    .contact-process-card:hover .contact-process-card__icon { transform: none; }
}

.pricing-plans { position: relative; isolation: isolate; overflow: hidden; }
.pricing-plans::before { content: ""; position: absolute; z-index: -1; inset: -64px 0 0; background: linear-gradient(to bottom, #10130edb, #10130eed 50%, var(--background)), url("../img/pricing.jpg") center center / cover no-repeat; pointer-events: none; }
.pricing-plans__title { max-width: 896px; margin: 0; font-size: 54px; font-weight: 800; line-height: 1.08; letter-spacing: -1.9px; }
.pricing-plans__intro { max-width: 768px; margin: 24px 0 0; color: var(--muted-foreground); font-size: 18px; }
.pricing-plans__grid { margin-top: 40px; }
.pricing-card { position: relative; display: flex; flex-direction: column; height: 100%; padding: 32px; border: 1px solid var(--border); border-radius: 16px; background: var(--card); }
.pricing-card--featured { border-color: #b8ec52b3; box-shadow: 0 28px 90px -34px var(--primary), 0 0 0 1px #b8ec5240; }
.pricing-card__name { margin: 0; color: var(--primary); font: 500 12px / 1.5 "IBM Plex Mono", monospace; letter-spacing: 1.2px; text-transform: uppercase; }
.pricing-card__price { margin: 20px 0 0; font-size: 30px; font-weight: 800; line-height: 1.2; letter-spacing: -.8px; }
.pricing-card__note { margin: 12px 0 0; font-size: 14px; font-weight: 600; }
.pricing-card__points { flex: 1; margin: 24px 0 0; padding: 0; list-style: none; }
.pricing-card__point { display: flex; gap: 12px; color: var(--muted-foreground); font-size: 14px; }
.pricing-card__point + .pricing-card__point { margin-top: 12px; }
.pricing-card__point::before { content: ""; flex: 0 0 12px; height: 7px; margin-top: 6px; border-bottom: 2px solid var(--primary); border-left: 2px solid var(--primary); transform: rotate(-45deg); }
.pricing-card__button { width: 100%; margin-top: 32px; }
.pricing-card--featured .pricing-card__button { box-shadow: 0 0 34px -8px var(--primary); }
.pricing-plans__notice { max-width: 1024px; margin: 48px 0 0; color: var(--muted-foreground); font-size: 14px; }
.pricing-plans__notice strong { color: var(--foreground); font-weight: 600; }
.pricing-fees__container { max-width: 1024px; }
.pricing-fees__list { margin: 48px 0 0; padding: 0; border-top: 1px solid #10130e26; list-style: none; }
.pricing-fees__item { display: flex; align-items: flex-start; gap: 20px; padding: 24px 0; border-bottom: 1px solid #10130e26; }
.pricing-fees__icon { display: inline-flex; flex: 0 0 44px; align-items: center; justify-content: center; height: 44px; border-radius: 8px; background: var(--ink); }
.pricing-fees__text { padding-top: 6px; font-size: 18px; }
.pricing-fees__text span { color: var(--ink-muted); }
.pricing-fees__text--stacked strong { display: block; }
.pricing-fees__text--stacked span { display: block; margin-top: 8px; font-size: 16px; }
.pricing-faq__title { max-width: 768px; margin-bottom: 48px; }
.pricing-faq .faq__accordion { --bs-accordion-color: var(--foreground); --bs-accordion-border-color: var(--border); }
.pricing-faq .faq__item:first-child { border-top: 1px solid var(--border); }
.pricing-faq .faq__button,
.pricing-faq .faq__button:not(.collapsed) { color: var(--foreground); }
.pricing-faq .faq__answer { color: var(--muted-foreground); }
.pricing-faq__icon { display: inline-flex; align-items: center; justify-content: center; font: 400 26px / 1 Manrope, sans-serif; }
.pricing-request { background: linear-gradient(to right, #f2f1ebf2, #f2f1ebcc, #f2f1eb99), url("../img/request-pricing.jpg") center center / cover no-repeat; }
.pricing-request__container { max-width: 768px; }
.pricing-request__intro { max-width: 512px; margin: -8px auto 40px; text-align: center; color: var(--ink-muted); }
.access-form--light { background: var(--ivory); color: var(--ink); border-color: #10130e1a; box-shadow: 0 25px 50px -12px #00000040; backdrop-filter: none; }
.access-form--light .access-form__label,
.access-form--light .access-form__consent,
.access-form--light .access-form__note { color: var(--ink-muted); }
.access-form--light .access-form__input { background: transparent; color: var(--ink); border-color: #10130e26; }
.access-form--light .access-form__input:focus { background: transparent; color: var(--ink); border-color: var(--ink-muted); }
.access-form--light .access-form__input:-webkit-autofill { -webkit-text-fill-color: var(--ink); box-shadow: inset 0 0 0 100px var(--ivory); }
.access-form--light .iti__country-list { background: var(--ivory); color: var(--ink); border-color: #10130e26; }
.access-form--light .iti__arrow { border-top-color: var(--ink-muted); }
.access-form--light .iti__arrow--up { border-top-color: transparent; border-bottom-color: var(--ink-muted); }
@media (min-width: 992px) {
  .pricing-card--featured { height: calc(100% + 40px); margin-block: -20px; padding-block: 48px; }
  .pricing-card--featured .pricing-card__name { font-size: 14px; }
}
@media (max-width: 1199.98px) {
  .hero__title,
  .markets-hero__title,
  .security-hero__title,
  .about-hero__title,
  .contact-hero__title,
  .pricing-plans__title { font-size: 36px; }
  .pricing-card { padding-inline: 24px; }
  .pricing-card__price { font-size: 27px; }
}
@media (min-width: 768px) and (max-width: 991.98px) {
  .pricing-card { max-width: 640px; margin-inline: auto; padding: 24px; }
}
@media (max-width: 767.98px) {
  .pricing-plans__title { letter-spacing: -1.3px; }
  .pricing-plans__intro { font-size: 16px; }
  .pricing-plans__grid { margin-top: 16px; }
  .pricing-card { padding: 24px; }
  .pricing-plans__notice,
  .pricing-fees__list { margin-top: 32px; }
  .pricing-fees__item { gap: 16px; }
  .pricing-fees__text { font-size: 16px; }
  .pricing-fees__text--stacked span { font-size: 14px; }
  .pricing-faq__title { margin-bottom: 32px; }
}
