.trust-page { background: #f6f5f8; color: #171522; }
.trust-page h1,
.trust-page h2,
.trust-page h3,
.trust-page p,
.trust-page li,
.trust-page a,
.trust-page td { overflow-wrap: anywhere; }
.trust-content section > article { margin: 14px 0; padding: 18px; border: 1px solid #e2dee6; border-radius: 16px; background: #f7f6f9; }
.trust-content section > article strong { display: block; margin-bottom: 7px; font-size: 14px; }
.trust-content section > article p { margin: 0; font-size: 13px; }
.trust-hero { padding: var(--page-hero-padding-start) 0 var(--page-hero-padding-end); }
.trust-hero .blog-breadcrumbs { margin-bottom: var(--page-hero-breadcrumb-gap); }
.trust-hero-grid { display: grid; grid-template-columns: 1.08fr .92fr; gap: var(--page-hero-grid-gap); align-items: start; }
.trust-hero-grid > * { min-width: 0; }
.trust-hero h1 { margin: 0 0 var(--heading-copy-gap); font-size: var(--type-page-title); line-height: var(--line-page-title); letter-spacing: var(--tracking-page-title); }
.trust-hero-grid > div > p { max-width: 730px; margin: 0; color: #696777; font-size: 18px; line-height: 1.62; }
.trust-maintainer { margin-top: 20px; display: flex; align-items: center; gap: 10px 20px; color: #85818b; font-size: 11px; flex-wrap: wrap; }
.trust-maintainer a { color: #5a3eb8; font-weight: 750; text-decoration: underline; text-underline-offset: 3px; }
.trust-maintainer strong { color: #5f5b67; font-weight: 750; }
.trust-glance { padding: 27px; border-radius: 26px; background: linear-gradient(135deg,#2a1e50,#5b43a6); color: #fff; box-shadow: 0 28px 65px rgba(45,31,83,.17); }
.trust-glance > strong,
.trust-glance > h2 { display: block; margin: 0 0 12px; color: #fff; font-size: 20px; line-height: 1.25; letter-spacing: -.02em; }
.trust-glance ol { margin: 0; padding: 0; list-style: none; }
.trust-glance li { padding: 12px 0; display: grid; grid-template-columns: auto 1fr; gap: 12px; border-top: 1px solid rgba(255,255,255,.13); }
.trust-glance li > span { width: 31px; height: 31px; display: grid; place-items: center; border-radius: 9px; background: rgba(255,255,255,.12); font-size: 10px; }
.trust-glance b { display: block; font-size: 12px; }
.trust-glance p { margin: 1px 0 0; color: #ddd7ee; font-size: 9px; line-height: 1.45; }

.trust-main { padding: 0 0 var(--footer-adjacent-space); }
.trust-layout { display: grid; grid-template-columns: 255px minmax(0,760px); gap: 38px; justify-content: center; align-items: start; }
.trust-desktop-toc { position: sticky; top: 116px; max-height: calc(100vh - 136px); padding: 22px 18px; overflow-y: auto; scrollbar-gutter: stable; border: 1px solid #e1dde5; border-radius: 19px; background: #fff; }
.trust-desktop-toc > strong { display: block; margin-bottom: 8px; font-size: 13px; }
.trust-desktop-toc nav { display: grid; }
.trust-desktop-toc a { min-height: 38px; padding: 8px 0; display: flex; align-items: center; border-bottom: 1px solid #e6e2e9; color: #6d6975; font-size: 10px; line-height: 1.35; }
.trust-desktop-toc a:hover { color: #5a3eb8; }
.trust-mobile-toc { display: none; }
.trust-content { min-width: 0; padding: 32px 34px; border: 1px solid #e1dde5; border-radius: 24px; background: #fff; }
.trust-content section { scroll-margin-top: 124px; }
.trust-content section + section { margin-top: var(--content-section-gap); }
.trust-content h2 { margin: 0 0 14px; font-size: var(--type-content-title); line-height: var(--line-content-title); letter-spacing: -.035em; }
.trust-content h3 { margin-bottom: 1em; font-size: var(--type-subsection-title); }
.trust-content h3:not(:first-child) { margin-top: 26px; }
.trust-content p { margin: 0 0 16px; color: #56525e; font-size: 16px; line-height: 1.72; }
.trust-content a:not(.button) { color: #5a3eb8; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.trust-content ul:not(.criteria-grid) { margin: 18px 0 0; padding-left: 23px; color: #56525e; }
.trust-content li { margin-bottom: 9px; font-size: 14px; line-height: 1.58; }

.legal-related { margin-top: 38px; padding-top: 26px; border-top: 1px solid #e5e1e8; }
.legal-related h2 { margin-bottom: 8px; }
.legal-related p { margin-bottom: 12px; }
.legal-related nav { display: flex; flex-wrap: wrap; gap: 8px 22px; }
.legal-related a { min-height: 36px; display: inline-flex; align-items: center; font-size: 14px; font-weight: 750; }

.legal-storage-table { width: 100%; margin: 22px 0; border-collapse: separate; border-spacing: 0; border: 1px solid #e1dde5; border-radius: 16px; overflow: hidden; }
.legal-storage-table th,
.legal-storage-table td { padding: 13px 12px; border-bottom: 1px solid #e6e2e9; text-align: left; vertical-align: top; font-size: 12px; line-height: 1.55; }
.legal-storage-table th { background: #f3effc; color: #3d315d; font-size: 10px; text-transform: uppercase; letter-spacing: .04em; }
.legal-storage-table tr:last-child td { border-bottom: 0; }
.legal-storage-table code { color: #4f337f; font-size: 11px; overflow-wrap: anywhere; }
.legal-preferences-button { margin: 4px 0 18px; }

.trust-source-grid { margin-top: 24px; display: grid; grid-template-columns: repeat(3,1fr); gap: 9px; }
.trust-source-grid article { padding: 17px; border: 1px solid #e2dee6; border-radius: 15px; background: #f7f6f9; }
.trust-source-grid span { color: #7356df; font-size: 9px; font-weight: 850; }
.trust-source-grid strong { display: block; margin: 6px 0 3px; font-size: 12px; }
.trust-source-grid p { margin: 0; font-size: 10px; line-height: 1.5; }

.trust-practice-cards { display: grid; grid-template-columns: repeat(3,1fr); gap: 9px; }
.trust-practice-cards article { min-height: 170px; padding: 18px; border-radius: 17px; background: #fff1c9; }
.trust-practice-cards article:nth-child(2) { background: #e1f2ed; }
.trust-practice-cards article:nth-child(3) { background: #ece6ff; }
.trust-practice-cards span { color: #514a58; font-size: 8px; font-weight: 850; text-transform: uppercase; }
.trust-practice-cards strong { display: block; margin: 13px 0 6px; font-size: 13px; line-height: 1.35; }
.trust-practice-cards p { margin: 0; font-size: 10px; line-height: 1.5; }

.trust-contact { margin-top: var(--copy-to-action-gap); padding: 20px; display: grid; grid-template-columns: 1fr auto; column-gap: 25px; row-gap: var(--copy-to-action-gap); align-items: center; border-radius: 18px; background: var(--action-surface); color: #fff; }
.trust-contact strong { font-size: 18px; }
.trust-contact p { margin: 3px 0 0; color: #d8d2e2; font-size: 10px; }
.trust-contact .button { min-width: 190px; }

.about-final-actions { margin-top: 38px; padding: 22px; display: flex; align-items: center; gap: 10px; flex-wrap: wrap; border-radius: 20px; background: var(--action-surface); }
.about-final-actions .button { flex: 1 1 180px; min-width: 0; }

.contacts-main { padding: 0 0 var(--footer-adjacent-space); }
.contacts-layout { display: grid; grid-template-columns: minmax(0,.92fr) minmax(0,1.08fr); gap: 30px; align-items: start; }
.contacts-channel-column { min-width: 0; display: grid; gap: 14px; }
.contact-support-card,
.contact-route-cards article,
.contact-form { border: 1px solid #e1dde5; background: #fff; }
.contact-support-card { min-height: 330px; padding: 31px; display: flex; flex-direction: column; align-items: flex-start; border-radius: 24px; }
.contact-support-card h2 { margin: 13px 0 12px; font-size: var(--type-content-title); line-height: var(--line-content-title); letter-spacing: -.04em; }
.contact-support-card > p { margin: 0; color: #66616d; font-size: 15px; line-height: 1.7; }
.contact-support-actions { width: 100%; margin-top: auto; padding-top: var(--copy-to-action-gap); display: grid; gap: 7px; }
.contact-support-actions .button { width: 100%; }
.contact-support-fallback { min-height: 44px; padding: 7px 3px; display: inline-flex; align-items: center; gap: 8px; color: #5a3eb8; font-size: 11px; font-weight: 800; line-height: 1.35; }
.contact-support-fallback:hover { color: #3f267f; }
.contact-route-cards { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; }
.contact-route-cards article { min-width: 0; min-height: 204px; padding: 20px; border-radius: 18px; }
.contact-route-cards article > span { color: #7356df; font-size: 9px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.contact-route-cards h3 { margin: 17px 0 9px; font-size: 15px; line-height: 1.3; letter-spacing: -.025em; overflow-wrap: anywhere; }
.contact-route-cards p { margin: 0; color: #6e6974; font-size: 11px; line-height: 1.55; }
.contact-route-cards p a { color: #5a3eb8; font-weight: 700; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.contact-route-cards p a:hover { color: #3f267f; }

.contact-form { min-width: 0; padding: 32px; scroll-margin-top: 124px; border-radius: 24px; box-shadow: 0 22px 62px rgba(45,31,83,.08); }
.contact-form-heading { margin-bottom: 25px; }
.contact-form-heading h2 { margin: 10px 0 9px; font-size: var(--type-content-title); line-height: var(--line-content-title); letter-spacing: -.04em; }
.contact-form-heading p { margin: 0; color: #696570; font-size: 14px; line-height: 1.65; }
.contact-field-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 17px 14px; }
.contact-field { min-width: 0; display: grid; align-content: start; gap: 7px; }
.contact-field-grid + .contact-field { margin-top: 17px; }
.contact-field label { color: #35313b; font-size: 11px; font-weight: 800; }
.contact-field label span { margin-left: 4px; color: #918b96; font-size: 9px; font-weight: 650; }
.contact-field input,
.contact-field select,
.contact-field textarea { width: 100%; min-width: 0; min-height: 48px; padding: 12px 14px; border: 1px solid #dcd6e1; border-radius: 13px; outline: 0; background: #fbfafc; color: #29252f; font: inherit; font-size: 13px; line-height: 1.45; transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease; }
.contact-field textarea { min-height: 156px; resize: vertical; }
.contact-field input::placeholder,
.contact-field textarea::placeholder { color: #a39da7; }
.contact-field input:hover,
.contact-field select:hover,
.contact-field textarea:hover { border-color: #c7bbd1; }
.contact-field input:focus,
.contact-field select:focus,
.contact-field textarea:focus { border-color: #8a60bb; background: #fff; box-shadow: 0 0 0 3px rgba(137,86,188,.14); }
.contact-field input[aria-invalid="true"],
.contact-field select[aria-invalid="true"],
.contact-field textarea[aria-invalid="true"] { border-color: #b8495c; background: #fff9fa; }
.contact-field-error { color: #a32d43; font-size: 10px; font-weight: 700; line-height: 1.4; }
.contact-field-hint { margin: 0; color: #6e6974; font-size: 10px; line-height: 1.5; }
.contact-honeypot { width: 1px; height: 1px; padding: 0; position: absolute; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
.contact-privacy-note { margin: 18px 0 14px; color: #77717c; font-size: 10px; line-height: 1.55; }
.contact-privacy-note a { color: #5a3eb8; font-weight: 750; text-decoration: underline; text-underline-offset: 3px; }
.contact-submit { width: 100%; }
.contact-submit:disabled { cursor: wait; opacity: .7; box-shadow: none; }
.contact-form-status { min-height: 22px; margin: 10px 0 0; font-size: 11px; font-weight: 700; line-height: 1.45; }
.contact-form-status.is-success { color: #167454; }
.contact-form-status.is-error { color: #a32d43; }

.contact-social-panel { margin-top: 30px; padding: 28px; display: grid; grid-template-columns: minmax(220px,.34fr) minmax(0,.66fr); gap: 28px; align-items: center; border: 1px solid #ded7ea; border-radius: 24px; background: linear-gradient(135deg,#eee8fa,#faf8fd); }
.contact-social-copy h2 { margin: 0; font-size: var(--type-content-title); line-height: var(--line-content-title); letter-spacing: -.04em; }
.contact-social-copy p { max-width: 360px; margin: 9px 0 0; color: #6e6977; font-size: 13px; line-height: 1.6; }
