@charset "UTF-8";
/*!
 * Bootstrap Icons v1.13.1 (https://icons.getbootstrap.com/)
 * Copyright 2019-2024 The Bootstrap Authors
 * Licensed under MIT (https://github.com/twbs/icons/blob/main/LICENSE)
 */
@font-face {
  font-display: block;
  font-family: "bootstrap-icons";
  src: url(/assets/dist/fonts/vendor/bootstrap-icons/bootstrap-icons.woff2?92ea18a81d737146ff044ddb52010366) format("woff2"), url(/assets/dist/fonts/vendor/bootstrap-icons/bootstrap-icons.woff?1295669cd4e305c97f2cfc16d56614b8) format("woff");
}
.bi::before,
[class^=bi-]::before,
[class*=" bi-"]::before {
  display: inline-block;
  font-family: "bootstrap-icons" !important;
  font-style: normal;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  vertical-align: -0.125em;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.bi-123::before {
  content: "\f67f";
}

.bi-alarm-fill::before {
  content: "\f101";
}

.bi-alarm::before {
  content: "\f102";
}

.bi-align-bottom::before {
  content: "\f103";
}

.bi-align-center::before {
  content: "\f104";
}

.bi-align-end::before {
  content: "\f105";
}

.bi-align-middle::before {
  content: "\f106";
}

.bi-align-start::before {
  content: "\f107";
}

.bi-align-top::before {
  content: "\f108";
}

.bi-alt::before {
  content: "\f109";
}

.bi-app-indicator::before {
  content: "\f10a";
}

.bi-app::before {
  content: "\f10b";
}

.bi-archive-fill::before {
  content: "\f10c";
}

.bi-archive::before {
  content: "\f10d";
}

.bi-arrow-90deg-down::before {
  content: "\f10e";
}

.bi-arrow-90deg-left::before {
  content: "\f10f";
}

.bi-arrow-90deg-right::before {
  content: "\f110";
}

.bi-arrow-90deg-up::before {
  content: "\f111";
}

.bi-arrow-bar-down::before {
  content: "\f112";
}

.bi-arrow-bar-left::before {
  content: "\f113";
}

.bi-arrow-bar-right::before {
  content: "\f114";
}

.bi-arrow-bar-up::before {
  content: "\f115";
}

.bi-arrow-clockwise::before {
  content: "\f116";
}

.bi-arrow-counterclockwise::before {
  content: "\f117";
}

.bi-arrow-down-circle-fill::before {
  content: "\f118";
}

.bi-arrow-down-circle::before {
  content: "\f119";
}

.bi-arrow-down-left-circle-fill::before {
  content: "\f11a";
}

.bi-arrow-down-left-circle::before {
  content: "\f11b";
}

.bi-arrow-down-left-square-fill::before {
  content: "\f11c";
}

.bi-arrow-down-left-square::before {
  content: "\f11d";
}

.bi-arrow-down-left::before {
  content: "\f11e";
}

.bi-arrow-down-right-circle-fill::before {
  content: "\f11f";
}

.bi-arrow-down-right-circle::before {
  content: "\f120";
}

.bi-arrow-down-right-square-fill::before {
  content: "\f121";
}

.bi-arrow-down-right-square::before {
  content: "\f122";
}

.bi-arrow-down-right::before {
  content: "\f123";
}

.bi-arrow-down-short::before {
  content: "\f124";
}

.bi-arrow-down-square-fill::before {
  content: "\f125";
}

.bi-arrow-down-square::before {
  content: "\f126";
}

.bi-arrow-down-up::before {
  content: "\f127";
}

.bi-arrow-down::before {
  content: "\f128";
}

.bi-arrow-left-circle-fill::before {
  content: "\f129";
}

.bi-arrow-left-circle::before {
  content: "\f12a";
}

.bi-arrow-left-right::before {
  content: "\f12b";
}

.bi-arrow-left-short::before {
  content: "\f12c";
}

.bi-arrow-left-square-fill::before {
  content: "\f12d";
}

.bi-arrow-left-square::before {
  content: "\f12e";
}

.bi-arrow-left::before {
  content: "\f12f";
}

.bi-arrow-repeat::before {
  content: "\f130";
}

.bi-arrow-return-left::before {
  content: "\f131";
}

.bi-arrow-return-right::before {
  content: "\f132";
}

.bi-arrow-right-circle-fill::before {
  content: "\f133";
}

.bi-arrow-right-circle::before {
  content: "\f134";
}

.bi-arrow-right-short::before {
  content: "\f135";
}

.bi-arrow-right-square-fill::before {
  content: "\f136";
}

.bi-arrow-right-square::before {
  content: "\f137";
}

.bi-arrow-right::before {
  content: "\f138";
}

.bi-arrow-up-circle-fill::before {
  content: "\f139";
}

.bi-arrow-up-circle::before {
  content: "\f13a";
}

.bi-arrow-up-left-circle-fill::before {
  content: "\f13b";
}

.bi-arrow-up-left-circle::before {
  content: "\f13c";
}

.bi-arrow-up-left-square-fill::before {
  content: "\f13d";
}

.bi-arrow-up-left-square::before {
  content: "\f13e";
}

.bi-arrow-up-left::before {
  content: "\f13f";
}

.bi-arrow-up-right-circle-fill::before {
  content: "\f140";
}

.bi-arrow-up-right-circle::before {
  content: "\f141";
}

.bi-arrow-up-right-square-fill::before {
  content: "\f142";
}

.bi-arrow-up-right-square::before {
  content: "\f143";
}

.bi-arrow-up-right::before {
  content: "\f144";
}

.bi-arrow-up-short::before {
  content: "\f145";
}

.bi-arrow-up-square-fill::before {
  content: "\f146";
}

.bi-arrow-up-square::before {
  content: "\f147";
}

.bi-arrow-up::before {
  content: "\f148";
}

.bi-arrows-angle-contract::before {
  content: "\f149";
}

.bi-arrows-angle-expand::before {
  content: "\f14a";
}

.bi-arrows-collapse::before {
  content: "\f14b";
}

.bi-arrows-expand::before {
  content: "\f14c";
}

.bi-arrows-fullscreen::before {
  content: "\f14d";
}

.bi-arrows-move::before {
  content: "\f14e";
}

.bi-aspect-ratio-fill::before {
  content: "\f14f";
}

.bi-aspect-ratio::before {
  content: "\f150";
}

.bi-asterisk::before {
  content: "\f151";
}

.bi-at::before {
  content: "\f152";
}

.bi-award-fill::before {
  content: "\f153";
}

.bi-award::before {
  content: "\f154";
}

.bi-back::before {
  content: "\f155";
}

.bi-backspace-fill::before {
  content: "\f156";
}

.bi-backspace-reverse-fill::before {
  content: "\f157";
}

.bi-backspace-reverse::before {
  content: "\f158";
}

.bi-backspace::before {
  content: "\f159";
}

.bi-badge-3d-fill::before {
  content: "\f15a";
}

.bi-badge-3d::before {
  content: "\f15b";
}

.bi-badge-4k-fill::before {
  content: "\f15c";
}

.bi-badge-4k::before {
  content: "\f15d";
}

.bi-badge-8k-fill::before {
  content: "\f15e";
}

.bi-badge-8k::before {
  content: "\f15f";
}

.bi-badge-ad-fill::before {
  content: "\f160";
}

.bi-badge-ad::before {
  content: "\f161";
}

.bi-badge-ar-fill::before {
  content: "\f162";
}

.bi-badge-ar::before {
  content: "\f163";
}

.bi-badge-cc-fill::before {
  content: "\f164";
}

.bi-badge-cc::before {
  content: "\f165";
}

.bi-badge-hd-fill::before {
  content: "\f166";
}

.bi-badge-hd::before {
  content: "\f167";
}

.bi-badge-tm-fill::before {
  content: "\f168";
}

.bi-badge-tm::before {
  content: "\f169";
}

.bi-badge-vo-fill::before {
  content: "\f16a";
}

.bi-badge-vo::before {
  content: "\f16b";
}

.bi-badge-vr-fill::before {
  content: "\f16c";
}

.bi-badge-vr::before {
  content: "\f16d";
}

.bi-badge-wc-fill::before {
  content: "\f16e";
}

.bi-badge-wc::before {
  content: "\f16f";
}

.bi-bag-check-fill::before {
  content: "\f170";
}

.bi-bag-check::before {
  content: "\f171";
}

.bi-bag-dash-fill::before {
  content: "\f172";
}

.bi-bag-dash::before {
  content: "\f173";
}

.bi-bag-fill::before {
  content: "\f174";
}

.bi-bag-plus-fill::before {
  content: "\f175";
}

.bi-bag-plus::before {
  content: "\f176";
}

.bi-bag-x-fill::before {
  content: "\f177";
}

.bi-bag-x::before {
  content: "\f178";
}

.bi-bag::before {
  content: "\f179";
}

.bi-bar-chart-fill::before {
  content: "\f17a";
}

.bi-bar-chart-line-fill::before {
  content: "\f17b";
}

.bi-bar-chart-line::before {
  content: "\f17c";
}

.bi-bar-chart-steps::before {
  content: "\f17d";
}

.bi-bar-chart::before {
  content: "\f17e";
}

.bi-basket-fill::before {
  content: "\f17f";
}

.bi-basket::before {
  content: "\f180";
}

.bi-basket2-fill::before {
  content: "\f181";
}

.bi-basket2::before {
  content: "\f182";
}

.bi-basket3-fill::before {
  content: "\f183";
}

.bi-basket3::before {
  content: "\f184";
}

.bi-battery-charging::before {
  content: "\f185";
}

.bi-battery-full::before {
  content: "\f186";
}

.bi-battery-half::before {
  content: "\f187";
}

.bi-battery::before {
  content: "\f188";
}

.bi-bell-fill::before {
  content: "\f189";
}

.bi-bell::before {
  content: "\f18a";
}

.bi-bezier::before {
  content: "\f18b";
}

.bi-bezier2::before {
  content: "\f18c";
}

.bi-bicycle::before {
  content: "\f18d";
}

.bi-binoculars-fill::before {
  content: "\f18e";
}

.bi-binoculars::before {
  content: "\f18f";
}

.bi-blockquote-left::before {
  content: "\f190";
}

.bi-blockquote-right::before {
  content: "\f191";
}

.bi-book-fill::before {
  content: "\f192";
}

.bi-book-half::before {
  content: "\f193";
}

.bi-book::before {
  content: "\f194";
}

.bi-bookmark-check-fill::before {
  content: "\f195";
}

.bi-bookmark-check::before {
  content: "\f196";
}

.bi-bookmark-dash-fill::before {
  content: "\f197";
}

.bi-bookmark-dash::before {
  content: "\f198";
}

.bi-bookmark-fill::before {
  content: "\f199";
}

.bi-bookmark-heart-fill::before {
  content: "\f19a";
}

.bi-bookmark-heart::before {
  content: "\f19b";
}

.bi-bookmark-plus-fill::before {
  content: "\f19c";
}

.bi-bookmark-plus::before {
  content: "\f19d";
}

.bi-bookmark-star-fill::before {
  content: "\f19e";
}

.bi-bookmark-star::before {
  content: "\f19f";
}

.bi-bookmark-x-fill::before {
  content: "\f1a0";
}

.bi-bookmark-x::before {
  content: "\f1a1";
}

.bi-bookmark::before {
  content: "\f1a2";
}

.bi-bookmarks-fill::before {
  content: "\f1a3";
}

.bi-bookmarks::before {
  content: "\f1a4";
}

.bi-bookshelf::before {
  content: "\f1a5";
}

.bi-bootstrap-fill::before {
  content: "\f1a6";
}

.bi-bootstrap-reboot::before {
  content: "\f1a7";
}

.bi-bootstrap::before {
  content: "\f1a8";
}

.bi-border-all::before {
  content: "\f1a9";
}

.bi-border-bottom::before {
  content: "\f1aa";
}

.bi-border-center::before {
  content: "\f1ab";
}

.bi-border-inner::before {
  content: "\f1ac";
}

.bi-border-left::before {
  content: "\f1ad";
}

.bi-border-middle::before {
  content: "\f1ae";
}

.bi-border-outer::before {
  content: "\f1af";
}

.bi-border-right::before {
  content: "\f1b0";
}

.bi-border-style::before {
  content: "\f1b1";
}

.bi-border-top::before {
  content: "\f1b2";
}

.bi-border-width::before {
  content: "\f1b3";
}

.bi-border::before {
  content: "\f1b4";
}

.bi-bounding-box-circles::before {
  content: "\f1b5";
}

.bi-bounding-box::before {
  content: "\f1b6";
}

.bi-box-arrow-down-left::before {
  content: "\f1b7";
}

.bi-box-arrow-down-right::before {
  content: "\f1b8";
}

.bi-box-arrow-down::before {
  content: "\f1b9";
}

.bi-box-arrow-in-down-left::before {
  content: "\f1ba";
}

.bi-box-arrow-in-down-right::before {
  content: "\f1bb";
}

.bi-box-arrow-in-down::before {
  content: "\f1bc";
}

.bi-box-arrow-in-left::before {
  content: "\f1bd";
}

.bi-box-arrow-in-right::before {
  content: "\f1be";
}

.bi-box-arrow-in-up-left::before {
  content: "\f1bf";
}

.bi-box-arrow-in-up-right::before {
  content: "\f1c0";
}

.bi-box-arrow-in-up::before {
  content: "\f1c1";
}

.bi-box-arrow-left::before {
  content: "\f1c2";
}

.bi-box-arrow-right::before {
  content: "\f1c3";
}

.bi-box-arrow-up-left::before {
  content: "\f1c4";
}

.bi-box-arrow-up-right::before {
  content: "\f1c5";
}

.bi-box-arrow-up::before {
  content: "\f1c6";
}

.bi-box-seam::before {
  content: "\f1c7";
}

.bi-box::before {
  content: "\f1c8";
}

.bi-braces::before {
  content: "\f1c9";
}

.bi-bricks::before {
  content: "\f1ca";
}

.bi-briefcase-fill::before {
  content: "\f1cb";
}

.bi-briefcase::before {
  content: "\f1cc";
}

.bi-brightness-alt-high-fill::before {
  content: "\f1cd";
}

.bi-brightness-alt-high::before {
  content: "\f1ce";
}

.bi-brightness-alt-low-fill::before {
  content: "\f1cf";
}

.bi-brightness-alt-low::before {
  content: "\f1d0";
}

.bi-brightness-high-fill::before {
  content: "\f1d1";
}

.bi-brightness-high::before {
  content: "\f1d2";
}

.bi-brightness-low-fill::before {
  content: "\f1d3";
}

.bi-brightness-low::before {
  content: "\f1d4";
}

.bi-broadcast-pin::before {
  content: "\f1d5";
}

.bi-broadcast::before {
  content: "\f1d6";
}

.bi-brush-fill::before {
  content: "\f1d7";
}

.bi-brush::before {
  content: "\f1d8";
}

.bi-bucket-fill::before {
  content: "\f1d9";
}

.bi-bucket::before {
  content: "\f1da";
}

.bi-bug-fill::before {
  content: "\f1db";
}

.bi-bug::before {
  content: "\f1dc";
}

.bi-building::before {
  content: "\f1dd";
}

.bi-bullseye::before {
  content: "\f1de";
}

.bi-calculator-fill::before {
  content: "\f1df";
}

.bi-calculator::before {
  content: "\f1e0";
}

.bi-calendar-check-fill::before {
  content: "\f1e1";
}

.bi-calendar-check::before {
  content: "\f1e2";
}

.bi-calendar-date-fill::before {
  content: "\f1e3";
}

.bi-calendar-date::before {
  content: "\f1e4";
}

.bi-calendar-day-fill::before {
  content: "\f1e5";
}

.bi-calendar-day::before {
  content: "\f1e6";
}

.bi-calendar-event-fill::before {
  content: "\f1e7";
}

.bi-calendar-event::before {
  content: "\f1e8";
}

.bi-calendar-fill::before {
  content: "\f1e9";
}

.bi-calendar-minus-fill::before {
  content: "\f1ea";
}

.bi-calendar-minus::before {
  content: "\f1eb";
}

.bi-calendar-month-fill::before {
  content: "\f1ec";
}

.bi-calendar-month::before {
  content: "\f1ed";
}

.bi-calendar-plus-fill::before {
  content: "\f1ee";
}

.bi-calendar-plus::before {
  content: "\f1ef";
}

.bi-calendar-range-fill::before {
  content: "\f1f0";
}

.bi-calendar-range::before {
  content: "\f1f1";
}

.bi-calendar-week-fill::before {
  content: "\f1f2";
}

.bi-calendar-week::before {
  content: "\f1f3";
}

.bi-calendar-x-fill::before {
  content: "\f1f4";
}

.bi-calendar-x::before {
  content: "\f1f5";
}

.bi-calendar::before {
  content: "\f1f6";
}

.bi-calendar2-check-fill::before {
  content: "\f1f7";
}

.bi-calendar2-check::before {
  content: "\f1f8";
}

.bi-calendar2-date-fill::before {
  content: "\f1f9";
}

.bi-calendar2-date::before {
  content: "\f1fa";
}

.bi-calendar2-day-fill::before {
  content: "\f1fb";
}

.bi-calendar2-day::before {
  content: "\f1fc";
}

.bi-calendar2-event-fill::before {
  content: "\f1fd";
}

.bi-calendar2-event::before {
  content: "\f1fe";
}

.bi-calendar2-fill::before {
  content: "\f1ff";
}

.bi-calendar2-minus-fill::before {
  content: "\f200";
}

.bi-calendar2-minus::before {
  content: "\f201";
}

.bi-calendar2-month-fill::before {
  content: "\f202";
}

.bi-calendar2-month::before {
  content: "\f203";
}

.bi-calendar2-plus-fill::before {
  content: "\f204";
}

.bi-calendar2-plus::before {
  content: "\f205";
}

.bi-calendar2-range-fill::before {
  content: "\f206";
}

.bi-calendar2-range::before {
  content: "\f207";
}

.bi-calendar2-week-fill::before {
  content: "\f208";
}

.bi-calendar2-week::before {
  content: "\f209";
}

.bi-calendar2-x-fill::before {
  content: "\f20a";
}

.bi-calendar2-x::before {
  content: "\f20b";
}

.bi-calendar2::before {
  content: "\f20c";
}

.bi-calendar3-event-fill::before {
  content: "\f20d";
}

.bi-calendar3-event::before {
  content: "\f20e";
}

.bi-calendar3-fill::before {
  content: "\f20f";
}

.bi-calendar3-range-fill::before {
  content: "\f210";
}

.bi-calendar3-range::before {
  content: "\f211";
}

.bi-calendar3-week-fill::before {
  content: "\f212";
}

.bi-calendar3-week::before {
  content: "\f213";
}

.bi-calendar3::before {
  content: "\f214";
}

.bi-calendar4-event::before {
  content: "\f215";
}

.bi-calendar4-range::before {
  content: "\f216";
}

.bi-calendar4-week::before {
  content: "\f217";
}

.bi-calendar4::before {
  content: "\f218";
}

.bi-camera-fill::before {
  content: "\f219";
}

.bi-camera-reels-fill::before {
  content: "\f21a";
}

.bi-camera-reels::before {
  content: "\f21b";
}

.bi-camera-video-fill::before {
  content: "\f21c";
}

.bi-camera-video-off-fill::before {
  content: "\f21d";
}

.bi-camera-video-off::before {
  content: "\f21e";
}

.bi-camera-video::before {
  content: "\f21f";
}

.bi-camera::before {
  content: "\f220";
}

.bi-camera2::before {
  content: "\f221";
}

.bi-capslock-fill::before {
  content: "\f222";
}

.bi-capslock::before {
  content: "\f223";
}

.bi-card-checklist::before {
  content: "\f224";
}

.bi-card-heading::before {
  content: "\f225";
}

.bi-card-image::before {
  content: "\f226";
}

.bi-card-list::before {
  content: "\f227";
}

.bi-card-text::before {
  content: "\f228";
}

.bi-caret-down-fill::before {
  content: "\f229";
}

.bi-caret-down-square-fill::before {
  content: "\f22a";
}

.bi-caret-down-square::before {
  content: "\f22b";
}

.bi-caret-down::before {
  content: "\f22c";
}

.bi-caret-left-fill::before {
  content: "\f22d";
}

.bi-caret-left-square-fill::before {
  content: "\f22e";
}

.bi-caret-left-square::before {
  content: "\f22f";
}

.bi-caret-left::before {
  content: "\f230";
}

.bi-caret-right-fill::before {
  content: "\f231";
}

.bi-caret-right-square-fill::before {
  content: "\f232";
}

.bi-caret-right-square::before {
  content: "\f233";
}

.bi-caret-right::before {
  content: "\f234";
}

.bi-caret-up-fill::before {
  content: "\f235";
}

.bi-caret-up-square-fill::before {
  content: "\f236";
}

.bi-caret-up-square::before {
  content: "\f237";
}

.bi-caret-up::before {
  content: "\f238";
}

.bi-cart-check-fill::before {
  content: "\f239";
}

.bi-cart-check::before {
  content: "\f23a";
}

.bi-cart-dash-fill::before {
  content: "\f23b";
}

.bi-cart-dash::before {
  content: "\f23c";
}

.bi-cart-fill::before {
  content: "\f23d";
}

.bi-cart-plus-fill::before {
  content: "\f23e";
}

.bi-cart-plus::before {
  content: "\f23f";
}

.bi-cart-x-fill::before {
  content: "\f240";
}

.bi-cart-x::before {
  content: "\f241";
}

.bi-cart::before {
  content: "\f242";
}

.bi-cart2::before {
  content: "\f243";
}

.bi-cart3::before {
  content: "\f244";
}

.bi-cart4::before {
  content: "\f245";
}

.bi-cash-stack::before {
  content: "\f246";
}

.bi-cash::before {
  content: "\f247";
}

.bi-cast::before {
  content: "\f248";
}

.bi-chat-dots-fill::before {
  content: "\f249";
}

.bi-chat-dots::before {
  content: "\f24a";
}

.bi-chat-fill::before {
  content: "\f24b";
}

.bi-chat-left-dots-fill::before {
  content: "\f24c";
}

.bi-chat-left-dots::before {
  content: "\f24d";
}

.bi-chat-left-fill::before {
  content: "\f24e";
}

.bi-chat-left-quote-fill::before {
  content: "\f24f";
}

.bi-chat-left-quote::before {
  content: "\f250";
}

.bi-chat-left-text-fill::before {
  content: "\f251";
}

.bi-chat-left-text::before {
  content: "\f252";
}

.bi-chat-left::before {
  content: "\f253";
}

.bi-chat-quote-fill::before {
  content: "\f254";
}

.bi-chat-quote::before {
  content: "\f255";
}

.bi-chat-right-dots-fill::before {
  content: "\f256";
}

.bi-chat-right-dots::before {
  content: "\f257";
}

.bi-chat-right-fill::before {
  content: "\f258";
}

.bi-chat-right-quote-fill::before {
  content: "\f259";
}

.bi-chat-right-quote::before {
  content: "\f25a";
}

.bi-chat-right-text-fill::before {
  content: "\f25b";
}

.bi-chat-right-text::before {
  content: "\f25c";
}

.bi-chat-right::before {
  content: "\f25d";
}

.bi-chat-square-dots-fill::before {
  content: "\f25e";
}

.bi-chat-square-dots::before {
  content: "\f25f";
}

.bi-chat-square-fill::before {
  content: "\f260";
}

.bi-chat-square-quote-fill::before {
  content: "\f261";
}

.bi-chat-square-quote::before {
  content: "\f262";
}

.bi-chat-square-text-fill::before {
  content: "\f263";
}

.bi-chat-square-text::before {
  content: "\f264";
}

.bi-chat-square::before {
  content: "\f265";
}

.bi-chat-text-fill::before {
  content: "\f266";
}

.bi-chat-text::before {
  content: "\f267";
}

.bi-chat::before {
  content: "\f268";
}

.bi-check-all::before {
  content: "\f269";
}

.bi-check-circle-fill::before {
  content: "\f26a";
}

.bi-check-circle::before {
  content: "\f26b";
}

.bi-check-square-fill::before {
  content: "\f26c";
}

.bi-check-square::before {
  content: "\f26d";
}

.bi-check::before {
  content: "\f26e";
}

.bi-check2-all::before {
  content: "\f26f";
}

.bi-check2-circle::before {
  content: "\f270";
}

.bi-check2-square::before {
  content: "\f271";
}

.bi-check2::before {
  content: "\f272";
}

.bi-chevron-bar-contract::before {
  content: "\f273";
}

.bi-chevron-bar-down::before {
  content: "\f274";
}

.bi-chevron-bar-expand::before {
  content: "\f275";
}

.bi-chevron-bar-left::before {
  content: "\f276";
}

.bi-chevron-bar-right::before {
  content: "\f277";
}

.bi-chevron-bar-up::before {
  content: "\f278";
}

.bi-chevron-compact-down::before {
  content: "\f279";
}

.bi-chevron-compact-left::before {
  content: "\f27a";
}

.bi-chevron-compact-right::before {
  content: "\f27b";
}

.bi-chevron-compact-up::before {
  content: "\f27c";
}

.bi-chevron-contract::before {
  content: "\f27d";
}

.bi-chevron-double-down::before {
  content: "\f27e";
}

.bi-chevron-double-left::before {
  content: "\f27f";
}

.bi-chevron-double-right::before {
  content: "\f280";
}

.bi-chevron-double-up::before {
  content: "\f281";
}

.bi-chevron-down::before {
  content: "\f282";
}

.bi-chevron-expand::before {
  content: "\f283";
}

.bi-chevron-left::before {
  content: "\f284";
}

.bi-chevron-right::before {
  content: "\f285";
}

.bi-chevron-up::before {
  content: "\f286";
}

.bi-circle-fill::before {
  content: "\f287";
}

.bi-circle-half::before {
  content: "\f288";
}

.bi-circle-square::before {
  content: "\f289";
}

.bi-circle::before {
  content: "\f28a";
}

.bi-clipboard-check::before {
  content: "\f28b";
}

.bi-clipboard-data::before {
  content: "\f28c";
}

.bi-clipboard-minus::before {
  content: "\f28d";
}

.bi-clipboard-plus::before {
  content: "\f28e";
}

.bi-clipboard-x::before {
  content: "\f28f";
}

.bi-clipboard::before {
  content: "\f290";
}

.bi-clock-fill::before {
  content: "\f291";
}

.bi-clock-history::before {
  content: "\f292";
}

.bi-clock::before {
  content: "\f293";
}

.bi-cloud-arrow-down-fill::before {
  content: "\f294";
}

.bi-cloud-arrow-down::before {
  content: "\f295";
}

.bi-cloud-arrow-up-fill::before {
  content: "\f296";
}

.bi-cloud-arrow-up::before {
  content: "\f297";
}

.bi-cloud-check-fill::before {
  content: "\f298";
}

.bi-cloud-check::before {
  content: "\f299";
}

.bi-cloud-download-fill::before {
  content: "\f29a";
}

.bi-cloud-download::before {
  content: "\f29b";
}

.bi-cloud-drizzle-fill::before {
  content: "\f29c";
}

.bi-cloud-drizzle::before {
  content: "\f29d";
}

.bi-cloud-fill::before {
  content: "\f29e";
}

.bi-cloud-fog-fill::before {
  content: "\f29f";
}

.bi-cloud-fog::before {
  content: "\f2a0";
}

.bi-cloud-fog2-fill::before {
  content: "\f2a1";
}

.bi-cloud-fog2::before {
  content: "\f2a2";
}

.bi-cloud-hail-fill::before {
  content: "\f2a3";
}

.bi-cloud-hail::before {
  content: "\f2a4";
}

.bi-cloud-haze-fill::before {
  content: "\f2a6";
}

.bi-cloud-haze::before {
  content: "\f2a7";
}

.bi-cloud-haze2-fill::before {
  content: "\f2a8";
}

.bi-cloud-lightning-fill::before {
  content: "\f2a9";
}

.bi-cloud-lightning-rain-fill::before {
  content: "\f2aa";
}

.bi-cloud-lightning-rain::before {
  content: "\f2ab";
}

.bi-cloud-lightning::before {
  content: "\f2ac";
}

.bi-cloud-minus-fill::before {
  content: "\f2ad";
}

.bi-cloud-minus::before {
  content: "\f2ae";
}

.bi-cloud-moon-fill::before {
  content: "\f2af";
}

.bi-cloud-moon::before {
  content: "\f2b0";
}

.bi-cloud-plus-fill::before {
  content: "\f2b1";
}

.bi-cloud-plus::before {
  content: "\f2b2";
}

.bi-cloud-rain-fill::before {
  content: "\f2b3";
}

.bi-cloud-rain-heavy-fill::before {
  content: "\f2b4";
}

.bi-cloud-rain-heavy::before {
  content: "\f2b5";
}

.bi-cloud-rain::before {
  content: "\f2b6";
}

.bi-cloud-slash-fill::before {
  content: "\f2b7";
}

.bi-cloud-slash::before {
  content: "\f2b8";
}

.bi-cloud-sleet-fill::before {
  content: "\f2b9";
}

.bi-cloud-sleet::before {
  content: "\f2ba";
}

.bi-cloud-snow-fill::before {
  content: "\f2bb";
}

.bi-cloud-snow::before {
  content: "\f2bc";
}

.bi-cloud-sun-fill::before {
  content: "\f2bd";
}

.bi-cloud-sun::before {
  content: "\f2be";
}

.bi-cloud-upload-fill::before {
  content: "\f2bf";
}

.bi-cloud-upload::before {
  content: "\f2c0";
}

.bi-cloud::before {
  content: "\f2c1";
}

.bi-clouds-fill::before {
  content: "\f2c2";
}

.bi-clouds::before {
  content: "\f2c3";
}

.bi-cloudy-fill::before {
  content: "\f2c4";
}

.bi-cloudy::before {
  content: "\f2c5";
}

.bi-code-slash::before {
  content: "\f2c6";
}

.bi-code-square::before {
  content: "\f2c7";
}

.bi-code::before {
  content: "\f2c8";
}

.bi-collection-fill::before {
  content: "\f2c9";
}

.bi-collection-play-fill::before {
  content: "\f2ca";
}

.bi-collection-play::before {
  content: "\f2cb";
}

.bi-collection::before {
  content: "\f2cc";
}

.bi-columns-gap::before {
  content: "\f2cd";
}

.bi-columns::before {
  content: "\f2ce";
}

.bi-command::before {
  content: "\f2cf";
}

.bi-compass-fill::before {
  content: "\f2d0";
}

.bi-compass::before {
  content: "\f2d1";
}

.bi-cone-striped::before {
  content: "\f2d2";
}

.bi-cone::before {
  content: "\f2d3";
}

.bi-controller::before {
  content: "\f2d4";
}

.bi-cpu-fill::before {
  content: "\f2d5";
}

.bi-cpu::before {
  content: "\f2d6";
}

.bi-credit-card-2-back-fill::before {
  content: "\f2d7";
}

.bi-credit-card-2-back::before {
  content: "\f2d8";
}

.bi-credit-card-2-front-fill::before {
  content: "\f2d9";
}

.bi-credit-card-2-front::before {
  content: "\f2da";
}

.bi-credit-card-fill::before {
  content: "\f2db";
}

.bi-credit-card::before {
  content: "\f2dc";
}

.bi-crop::before {
  content: "\f2dd";
}

.bi-cup-fill::before {
  content: "\f2de";
}

.bi-cup-straw::before {
  content: "\f2df";
}

.bi-cup::before {
  content: "\f2e0";
}

.bi-cursor-fill::before {
  content: "\f2e1";
}

.bi-cursor-text::before {
  content: "\f2e2";
}

.bi-cursor::before {
  content: "\f2e3";
}

.bi-dash-circle-dotted::before {
  content: "\f2e4";
}

.bi-dash-circle-fill::before {
  content: "\f2e5";
}

.bi-dash-circle::before {
  content: "\f2e6";
}

.bi-dash-square-dotted::before {
  content: "\f2e7";
}

.bi-dash-square-fill::before {
  content: "\f2e8";
}

.bi-dash-square::before {
  content: "\f2e9";
}

.bi-dash::before {
  content: "\f2ea";
}

.bi-diagram-2-fill::before {
  content: "\f2eb";
}

.bi-diagram-2::before {
  content: "\f2ec";
}

.bi-diagram-3-fill::before {
  content: "\f2ed";
}

.bi-diagram-3::before {
  content: "\f2ee";
}

.bi-diamond-fill::before {
  content: "\f2ef";
}

.bi-diamond-half::before {
  content: "\f2f0";
}

.bi-diamond::before {
  content: "\f2f1";
}

.bi-dice-1-fill::before {
  content: "\f2f2";
}

.bi-dice-1::before {
  content: "\f2f3";
}

.bi-dice-2-fill::before {
  content: "\f2f4";
}

.bi-dice-2::before {
  content: "\f2f5";
}

.bi-dice-3-fill::before {
  content: "\f2f6";
}

.bi-dice-3::before {
  content: "\f2f7";
}

.bi-dice-4-fill::before {
  content: "\f2f8";
}

.bi-dice-4::before {
  content: "\f2f9";
}

.bi-dice-5-fill::before {
  content: "\f2fa";
}

.bi-dice-5::before {
  content: "\f2fb";
}

.bi-dice-6-fill::before {
  content: "\f2fc";
}

.bi-dice-6::before {
  content: "\f2fd";
}

.bi-disc-fill::before {
  content: "\f2fe";
}

.bi-disc::before {
  content: "\f2ff";
}

.bi-discord::before {
  content: "\f300";
}

.bi-display-fill::before {
  content: "\f301";
}

.bi-display::before {
  content: "\f302";
}

.bi-distribute-horizontal::before {
  content: "\f303";
}

.bi-distribute-vertical::before {
  content: "\f304";
}

.bi-door-closed-fill::before {
  content: "\f305";
}

.bi-door-closed::before {
  content: "\f306";
}

.bi-door-open-fill::before {
  content: "\f307";
}

.bi-door-open::before {
  content: "\f308";
}

.bi-dot::before {
  content: "\f309";
}

.bi-download::before {
  content: "\f30a";
}

.bi-droplet-fill::before {
  content: "\f30b";
}

.bi-droplet-half::before {
  content: "\f30c";
}

.bi-droplet::before {
  content: "\f30d";
}

.bi-earbuds::before {
  content: "\f30e";
}

.bi-easel-fill::before {
  content: "\f30f";
}

.bi-easel::before {
  content: "\f310";
}

.bi-egg-fill::before {
  content: "\f311";
}

.bi-egg-fried::before {
  content: "\f312";
}

.bi-egg::before {
  content: "\f313";
}

.bi-eject-fill::before {
  content: "\f314";
}

.bi-eject::before {
  content: "\f315";
}

.bi-emoji-angry-fill::before {
  content: "\f316";
}

.bi-emoji-angry::before {
  content: "\f317";
}

.bi-emoji-dizzy-fill::before {
  content: "\f318";
}

.bi-emoji-dizzy::before {
  content: "\f319";
}

.bi-emoji-expressionless-fill::before {
  content: "\f31a";
}

.bi-emoji-expressionless::before {
  content: "\f31b";
}

.bi-emoji-frown-fill::before {
  content: "\f31c";
}

.bi-emoji-frown::before {
  content: "\f31d";
}

.bi-emoji-heart-eyes-fill::before {
  content: "\f31e";
}

.bi-emoji-heart-eyes::before {
  content: "\f31f";
}

.bi-emoji-laughing-fill::before {
  content: "\f320";
}

.bi-emoji-laughing::before {
  content: "\f321";
}

.bi-emoji-neutral-fill::before {
  content: "\f322";
}

.bi-emoji-neutral::before {
  content: "\f323";
}

.bi-emoji-smile-fill::before {
  content: "\f324";
}

.bi-emoji-smile-upside-down-fill::before {
  content: "\f325";
}

.bi-emoji-smile-upside-down::before {
  content: "\f326";
}

.bi-emoji-smile::before {
  content: "\f327";
}

.bi-emoji-sunglasses-fill::before {
  content: "\f328";
}

.bi-emoji-sunglasses::before {
  content: "\f329";
}

.bi-emoji-wink-fill::before {
  content: "\f32a";
}

.bi-emoji-wink::before {
  content: "\f32b";
}

.bi-envelope-fill::before {
  content: "\f32c";
}

.bi-envelope-open-fill::before {
  content: "\f32d";
}

.bi-envelope-open::before {
  content: "\f32e";
}

.bi-envelope::before {
  content: "\f32f";
}

.bi-eraser-fill::before {
  content: "\f330";
}

.bi-eraser::before {
  content: "\f331";
}

.bi-exclamation-circle-fill::before {
  content: "\f332";
}

.bi-exclamation-circle::before {
  content: "\f333";
}

.bi-exclamation-diamond-fill::before {
  content: "\f334";
}

.bi-exclamation-diamond::before {
  content: "\f335";
}

.bi-exclamation-octagon-fill::before {
  content: "\f336";
}

.bi-exclamation-octagon::before {
  content: "\f337";
}

.bi-exclamation-square-fill::before {
  content: "\f338";
}

.bi-exclamation-square::before {
  content: "\f339";
}

.bi-exclamation-triangle-fill::before {
  content: "\f33a";
}

.bi-exclamation-triangle::before {
  content: "\f33b";
}

.bi-exclamation::before {
  content: "\f33c";
}

.bi-exclude::before {
  content: "\f33d";
}

.bi-eye-fill::before {
  content: "\f33e";
}

.bi-eye-slash-fill::before {
  content: "\f33f";
}

.bi-eye-slash::before {
  content: "\f340";
}

.bi-eye::before {
  content: "\f341";
}

.bi-eyedropper::before {
  content: "\f342";
}

.bi-eyeglasses::before {
  content: "\f343";
}

.bi-facebook::before {
  content: "\f344";
}

.bi-file-arrow-down-fill::before {
  content: "\f345";
}

.bi-file-arrow-down::before {
  content: "\f346";
}

.bi-file-arrow-up-fill::before {
  content: "\f347";
}

.bi-file-arrow-up::before {
  content: "\f348";
}

.bi-file-bar-graph-fill::before {
  content: "\f349";
}

.bi-file-bar-graph::before {
  content: "\f34a";
}

.bi-file-binary-fill::before {
  content: "\f34b";
}

.bi-file-binary::before {
  content: "\f34c";
}

.bi-file-break-fill::before {
  content: "\f34d";
}

.bi-file-break::before {
  content: "\f34e";
}

.bi-file-check-fill::before {
  content: "\f34f";
}

.bi-file-check::before {
  content: "\f350";
}

.bi-file-code-fill::before {
  content: "\f351";
}

.bi-file-code::before {
  content: "\f352";
}

.bi-file-diff-fill::before {
  content: "\f353";
}

.bi-file-diff::before {
  content: "\f354";
}

.bi-file-earmark-arrow-down-fill::before {
  content: "\f355";
}

.bi-file-earmark-arrow-down::before {
  content: "\f356";
}

.bi-file-earmark-arrow-up-fill::before {
  content: "\f357";
}

.bi-file-earmark-arrow-up::before {
  content: "\f358";
}

.bi-file-earmark-bar-graph-fill::before {
  content: "\f359";
}

.bi-file-earmark-bar-graph::before {
  content: "\f35a";
}

.bi-file-earmark-binary-fill::before {
  content: "\f35b";
}

.bi-file-earmark-binary::before {
  content: "\f35c";
}

.bi-file-earmark-break-fill::before {
  content: "\f35d";
}

.bi-file-earmark-break::before {
  content: "\f35e";
}

.bi-file-earmark-check-fill::before {
  content: "\f35f";
}

.bi-file-earmark-check::before {
  content: "\f360";
}

.bi-file-earmark-code-fill::before {
  content: "\f361";
}

.bi-file-earmark-code::before {
  content: "\f362";
}

.bi-file-earmark-diff-fill::before {
  content: "\f363";
}

.bi-file-earmark-diff::before {
  content: "\f364";
}

.bi-file-earmark-easel-fill::before {
  content: "\f365";
}

.bi-file-earmark-easel::before {
  content: "\f366";
}

.bi-file-earmark-excel-fill::before {
  content: "\f367";
}

.bi-file-earmark-excel::before {
  content: "\f368";
}

.bi-file-earmark-fill::before {
  content: "\f369";
}

.bi-file-earmark-font-fill::before {
  content: "\f36a";
}

.bi-file-earmark-font::before {
  content: "\f36b";
}

.bi-file-earmark-image-fill::before {
  content: "\f36c";
}

.bi-file-earmark-image::before {
  content: "\f36d";
}

.bi-file-earmark-lock-fill::before {
  content: "\f36e";
}

.bi-file-earmark-lock::before {
  content: "\f36f";
}

.bi-file-earmark-lock2-fill::before {
  content: "\f370";
}

.bi-file-earmark-lock2::before {
  content: "\f371";
}

.bi-file-earmark-medical-fill::before {
  content: "\f372";
}

.bi-file-earmark-medical::before {
  content: "\f373";
}

.bi-file-earmark-minus-fill::before {
  content: "\f374";
}

.bi-file-earmark-minus::before {
  content: "\f375";
}

.bi-file-earmark-music-fill::before {
  content: "\f376";
}

.bi-file-earmark-music::before {
  content: "\f377";
}

.bi-file-earmark-person-fill::before {
  content: "\f378";
}

.bi-file-earmark-person::before {
  content: "\f379";
}

.bi-file-earmark-play-fill::before {
  content: "\f37a";
}

.bi-file-earmark-play::before {
  content: "\f37b";
}

.bi-file-earmark-plus-fill::before {
  content: "\f37c";
}

.bi-file-earmark-plus::before {
  content: "\f37d";
}

.bi-file-earmark-post-fill::before {
  content: "\f37e";
}

.bi-file-earmark-post::before {
  content: "\f37f";
}

.bi-file-earmark-ppt-fill::before {
  content: "\f380";
}

.bi-file-earmark-ppt::before {
  content: "\f381";
}

.bi-file-earmark-richtext-fill::before {
  content: "\f382";
}

.bi-file-earmark-richtext::before {
  content: "\f383";
}

.bi-file-earmark-ruled-fill::before {
  content: "\f384";
}

.bi-file-earmark-ruled::before {
  content: "\f385";
}

.bi-file-earmark-slides-fill::before {
  content: "\f386";
}

.bi-file-earmark-slides::before {
  content: "\f387";
}

.bi-file-earmark-spreadsheet-fill::before {
  content: "\f388";
}

.bi-file-earmark-spreadsheet::before {
  content: "\f389";
}

.bi-file-earmark-text-fill::before {
  content: "\f38a";
}

.bi-file-earmark-text::before {
  content: "\f38b";
}

.bi-file-earmark-word-fill::before {
  content: "\f38c";
}

.bi-file-earmark-word::before {
  content: "\f38d";
}

.bi-file-earmark-x-fill::before {
  content: "\f38e";
}

.bi-file-earmark-x::before {
  content: "\f38f";
}

.bi-file-earmark-zip-fill::before {
  content: "\f390";
}

.bi-file-earmark-zip::before {
  content: "\f391";
}

.bi-file-earmark::before {
  content: "\f392";
}

.bi-file-easel-fill::before {
  content: "\f393";
}

.bi-file-easel::before {
  content: "\f394";
}

.bi-file-excel-fill::before {
  content: "\f395";
}

.bi-file-excel::before {
  content: "\f396";
}

.bi-file-fill::before {
  content: "\f397";
}

.bi-file-font-fill::before {
  content: "\f398";
}

.bi-file-font::before {
  content: "\f399";
}

.bi-file-image-fill::before {
  content: "\f39a";
}

.bi-file-image::before {
  content: "\f39b";
}

.bi-file-lock-fill::before {
  content: "\f39c";
}

.bi-file-lock::before {
  content: "\f39d";
}

.bi-file-lock2-fill::before {
  content: "\f39e";
}

.bi-file-lock2::before {
  content: "\f39f";
}

.bi-file-medical-fill::before {
  content: "\f3a0";
}

.bi-file-medical::before {
  content: "\f3a1";
}

.bi-file-minus-fill::before {
  content: "\f3a2";
}

.bi-file-minus::before {
  content: "\f3a3";
}

.bi-file-music-fill::before {
  content: "\f3a4";
}

.bi-file-music::before {
  content: "\f3a5";
}

.bi-file-person-fill::before {
  content: "\f3a6";
}

.bi-file-person::before {
  content: "\f3a7";
}

.bi-file-play-fill::before {
  content: "\f3a8";
}

.bi-file-play::before {
  content: "\f3a9";
}

.bi-file-plus-fill::before {
  content: "\f3aa";
}

.bi-file-plus::before {
  content: "\f3ab";
}

.bi-file-post-fill::before {
  content: "\f3ac";
}

.bi-file-post::before {
  content: "\f3ad";
}

.bi-file-ppt-fill::before {
  content: "\f3ae";
}

.bi-file-ppt::before {
  content: "\f3af";
}

.bi-file-richtext-fill::before {
  content: "\f3b0";
}

.bi-file-richtext::before {
  content: "\f3b1";
}

.bi-file-ruled-fill::before {
  content: "\f3b2";
}

.bi-file-ruled::before {
  content: "\f3b3";
}

.bi-file-slides-fill::before {
  content: "\f3b4";
}

.bi-file-slides::before {
  content: "\f3b5";
}

.bi-file-spreadsheet-fill::before {
  content: "\f3b6";
}

.bi-file-spreadsheet::before {
  content: "\f3b7";
}

.bi-file-text-fill::before {
  content: "\f3b8";
}

.bi-file-text::before {
  content: "\f3b9";
}

.bi-file-word-fill::before {
  content: "\f3ba";
}

.bi-file-word::before {
  content: "\f3bb";
}

.bi-file-x-fill::before {
  content: "\f3bc";
}

.bi-file-x::before {
  content: "\f3bd";
}

.bi-file-zip-fill::before {
  content: "\f3be";
}

.bi-file-zip::before {
  content: "\f3bf";
}

.bi-file::before {
  content: "\f3c0";
}

.bi-files-alt::before {
  content: "\f3c1";
}

.bi-files::before {
  content: "\f3c2";
}

.bi-film::before {
  content: "\f3c3";
}

.bi-filter-circle-fill::before {
  content: "\f3c4";
}

.bi-filter-circle::before {
  content: "\f3c5";
}

.bi-filter-left::before {
  content: "\f3c6";
}

.bi-filter-right::before {
  content: "\f3c7";
}

.bi-filter-square-fill::before {
  content: "\f3c8";
}

.bi-filter-square::before {
  content: "\f3c9";
}

.bi-filter::before {
  content: "\f3ca";
}

.bi-flag-fill::before {
  content: "\f3cb";
}

.bi-flag::before {
  content: "\f3cc";
}

.bi-flower1::before {
  content: "\f3cd";
}

.bi-flower2::before {
  content: "\f3ce";
}

.bi-flower3::before {
  content: "\f3cf";
}

.bi-folder-check::before {
  content: "\f3d0";
}

.bi-folder-fill::before {
  content: "\f3d1";
}

.bi-folder-minus::before {
  content: "\f3d2";
}

.bi-folder-plus::before {
  content: "\f3d3";
}

.bi-folder-symlink-fill::before {
  content: "\f3d4";
}

.bi-folder-symlink::before {
  content: "\f3d5";
}

.bi-folder-x::before {
  content: "\f3d6";
}

.bi-folder::before {
  content: "\f3d7";
}

.bi-folder2-open::before {
  content: "\f3d8";
}

.bi-folder2::before {
  content: "\f3d9";
}

.bi-fonts::before {
  content: "\f3da";
}

.bi-forward-fill::before {
  content: "\f3db";
}

.bi-forward::before {
  content: "\f3dc";
}

.bi-front::before {
  content: "\f3dd";
}

.bi-fullscreen-exit::before {
  content: "\f3de";
}

.bi-fullscreen::before {
  content: "\f3df";
}

.bi-funnel-fill::before {
  content: "\f3e0";
}

.bi-funnel::before {
  content: "\f3e1";
}

.bi-gear-fill::before {
  content: "\f3e2";
}

.bi-gear-wide-connected::before {
  content: "\f3e3";
}

.bi-gear-wide::before {
  content: "\f3e4";
}

.bi-gear::before {
  content: "\f3e5";
}

.bi-gem::before {
  content: "\f3e6";
}

.bi-geo-alt-fill::before {
  content: "\f3e7";
}

.bi-geo-alt::before {
  content: "\f3e8";
}

.bi-geo-fill::before {
  content: "\f3e9";
}

.bi-geo::before {
  content: "\f3ea";
}

.bi-gift-fill::before {
  content: "\f3eb";
}

.bi-gift::before {
  content: "\f3ec";
}

.bi-github::before {
  content: "\f3ed";
}

.bi-globe::before {
  content: "\f3ee";
}

.bi-globe2::before {
  content: "\f3ef";
}

.bi-google::before {
  content: "\f3f0";
}

.bi-graph-down::before {
  content: "\f3f1";
}

.bi-graph-up::before {
  content: "\f3f2";
}

.bi-grid-1x2-fill::before {
  content: "\f3f3";
}

.bi-grid-1x2::before {
  content: "\f3f4";
}

.bi-grid-3x2-gap-fill::before {
  content: "\f3f5";
}

.bi-grid-3x2-gap::before {
  content: "\f3f6";
}

.bi-grid-3x2::before {
  content: "\f3f7";
}

.bi-grid-3x3-gap-fill::before {
  content: "\f3f8";
}

.bi-grid-3x3-gap::before {
  content: "\f3f9";
}

.bi-grid-3x3::before {
  content: "\f3fa";
}

.bi-grid-fill::before {
  content: "\f3fb";
}

.bi-grid::before {
  content: "\f3fc";
}

.bi-grip-horizontal::before {
  content: "\f3fd";
}

.bi-grip-vertical::before {
  content: "\f3fe";
}

.bi-hammer::before {
  content: "\f3ff";
}

.bi-hand-index-fill::before {
  content: "\f400";
}

.bi-hand-index-thumb-fill::before {
  content: "\f401";
}

.bi-hand-index-thumb::before {
  content: "\f402";
}

.bi-hand-index::before {
  content: "\f403";
}

.bi-hand-thumbs-down-fill::before {
  content: "\f404";
}

.bi-hand-thumbs-down::before {
  content: "\f405";
}

.bi-hand-thumbs-up-fill::before {
  content: "\f406";
}

.bi-hand-thumbs-up::before {
  content: "\f407";
}

.bi-handbag-fill::before {
  content: "\f408";
}

.bi-handbag::before {
  content: "\f409";
}

.bi-hash::before {
  content: "\f40a";
}

.bi-hdd-fill::before {
  content: "\f40b";
}

.bi-hdd-network-fill::before {
  content: "\f40c";
}

.bi-hdd-network::before {
  content: "\f40d";
}

.bi-hdd-rack-fill::before {
  content: "\f40e";
}

.bi-hdd-rack::before {
  content: "\f40f";
}

.bi-hdd-stack-fill::before {
  content: "\f410";
}

.bi-hdd-stack::before {
  content: "\f411";
}

.bi-hdd::before {
  content: "\f412";
}

.bi-headphones::before {
  content: "\f413";
}

.bi-headset::before {
  content: "\f414";
}

.bi-heart-fill::before {
  content: "\f415";
}

.bi-heart-half::before {
  content: "\f416";
}

.bi-heart::before {
  content: "\f417";
}

.bi-heptagon-fill::before {
  content: "\f418";
}

.bi-heptagon-half::before {
  content: "\f419";
}

.bi-heptagon::before {
  content: "\f41a";
}

.bi-hexagon-fill::before {
  content: "\f41b";
}

.bi-hexagon-half::before {
  content: "\f41c";
}

.bi-hexagon::before {
  content: "\f41d";
}

.bi-hourglass-bottom::before {
  content: "\f41e";
}

.bi-hourglass-split::before {
  content: "\f41f";
}

.bi-hourglass-top::before {
  content: "\f420";
}

.bi-hourglass::before {
  content: "\f421";
}

.bi-house-door-fill::before {
  content: "\f422";
}

.bi-house-door::before {
  content: "\f423";
}

.bi-house-fill::before {
  content: "\f424";
}

.bi-house::before {
  content: "\f425";
}

.bi-hr::before {
  content: "\f426";
}

.bi-hurricane::before {
  content: "\f427";
}

.bi-image-alt::before {
  content: "\f428";
}

.bi-image-fill::before {
  content: "\f429";
}

.bi-image::before {
  content: "\f42a";
}

.bi-images::before {
  content: "\f42b";
}

.bi-inbox-fill::before {
  content: "\f42c";
}

.bi-inbox::before {
  content: "\f42d";
}

.bi-inboxes-fill::before {
  content: "\f42e";
}

.bi-inboxes::before {
  content: "\f42f";
}

.bi-info-circle-fill::before {
  content: "\f430";
}

.bi-info-circle::before {
  content: "\f431";
}

.bi-info-square-fill::before {
  content: "\f432";
}

.bi-info-square::before {
  content: "\f433";
}

.bi-info::before {
  content: "\f434";
}

.bi-input-cursor-text::before {
  content: "\f435";
}

.bi-input-cursor::before {
  content: "\f436";
}

.bi-instagram::before {
  content: "\f437";
}

.bi-intersect::before {
  content: "\f438";
}

.bi-journal-album::before {
  content: "\f439";
}

.bi-journal-arrow-down::before {
  content: "\f43a";
}

.bi-journal-arrow-up::before {
  content: "\f43b";
}

.bi-journal-bookmark-fill::before {
  content: "\f43c";
}

.bi-journal-bookmark::before {
  content: "\f43d";
}

.bi-journal-check::before {
  content: "\f43e";
}

.bi-journal-code::before {
  content: "\f43f";
}

.bi-journal-medical::before {
  content: "\f440";
}

.bi-journal-minus::before {
  content: "\f441";
}

.bi-journal-plus::before {
  content: "\f442";
}

.bi-journal-richtext::before {
  content: "\f443";
}

.bi-journal-text::before {
  content: "\f444";
}

.bi-journal-x::before {
  content: "\f445";
}

.bi-journal::before {
  content: "\f446";
}

.bi-journals::before {
  content: "\f447";
}

.bi-joystick::before {
  content: "\f448";
}

.bi-justify-left::before {
  content: "\f449";
}

.bi-justify-right::before {
  content: "\f44a";
}

.bi-justify::before {
  content: "\f44b";
}

.bi-kanban-fill::before {
  content: "\f44c";
}

.bi-kanban::before {
  content: "\f44d";
}

.bi-key-fill::before {
  content: "\f44e";
}

.bi-key::before {
  content: "\f44f";
}

.bi-keyboard-fill::before {
  content: "\f450";
}

.bi-keyboard::before {
  content: "\f451";
}

.bi-ladder::before {
  content: "\f452";
}

.bi-lamp-fill::before {
  content: "\f453";
}

.bi-lamp::before {
  content: "\f454";
}

.bi-laptop-fill::before {
  content: "\f455";
}

.bi-laptop::before {
  content: "\f456";
}

.bi-layer-backward::before {
  content: "\f457";
}

.bi-layer-forward::before {
  content: "\f458";
}

.bi-layers-fill::before {
  content: "\f459";
}

.bi-layers-half::before {
  content: "\f45a";
}

.bi-layers::before {
  content: "\f45b";
}

.bi-layout-sidebar-inset-reverse::before {
  content: "\f45c";
}

.bi-layout-sidebar-inset::before {
  content: "\f45d";
}

.bi-layout-sidebar-reverse::before {
  content: "\f45e";
}

.bi-layout-sidebar::before {
  content: "\f45f";
}

.bi-layout-split::before {
  content: "\f460";
}

.bi-layout-text-sidebar-reverse::before {
  content: "\f461";
}

.bi-layout-text-sidebar::before {
  content: "\f462";
}

.bi-layout-text-window-reverse::before {
  content: "\f463";
}

.bi-layout-text-window::before {
  content: "\f464";
}

.bi-layout-three-columns::before {
  content: "\f465";
}

.bi-layout-wtf::before {
  content: "\f466";
}

.bi-life-preserver::before {
  content: "\f467";
}

.bi-lightbulb-fill::before {
  content: "\f468";
}

.bi-lightbulb-off-fill::before {
  content: "\f469";
}

.bi-lightbulb-off::before {
  content: "\f46a";
}

.bi-lightbulb::before {
  content: "\f46b";
}

.bi-lightning-charge-fill::before {
  content: "\f46c";
}

.bi-lightning-charge::before {
  content: "\f46d";
}

.bi-lightning-fill::before {
  content: "\f46e";
}

.bi-lightning::before {
  content: "\f46f";
}

.bi-link-45deg::before {
  content: "\f470";
}

.bi-link::before {
  content: "\f471";
}

.bi-linkedin::before {
  content: "\f472";
}

.bi-list-check::before {
  content: "\f473";
}

.bi-list-nested::before {
  content: "\f474";
}

.bi-list-ol::before {
  content: "\f475";
}

.bi-list-stars::before {
  content: "\f476";
}

.bi-list-task::before {
  content: "\f477";
}

.bi-list-ul::before {
  content: "\f478";
}

.bi-list::before {
  content: "\f479";
}

.bi-lock-fill::before {
  content: "\f47a";
}

.bi-lock::before {
  content: "\f47b";
}

.bi-mailbox::before {
  content: "\f47c";
}

.bi-mailbox2::before {
  content: "\f47d";
}

.bi-map-fill::before {
  content: "\f47e";
}

.bi-map::before {
  content: "\f47f";
}

.bi-markdown-fill::before {
  content: "\f480";
}

.bi-markdown::before {
  content: "\f481";
}

.bi-mask::before {
  content: "\f482";
}

.bi-megaphone-fill::before {
  content: "\f483";
}

.bi-megaphone::before {
  content: "\f484";
}

.bi-menu-app-fill::before {
  content: "\f485";
}

.bi-menu-app::before {
  content: "\f486";
}

.bi-menu-button-fill::before {
  content: "\f487";
}

.bi-menu-button-wide-fill::before {
  content: "\f488";
}

.bi-menu-button-wide::before {
  content: "\f489";
}

.bi-menu-button::before {
  content: "\f48a";
}

.bi-menu-down::before {
  content: "\f48b";
}

.bi-menu-up::before {
  content: "\f48c";
}

.bi-mic-fill::before {
  content: "\f48d";
}

.bi-mic-mute-fill::before {
  content: "\f48e";
}

.bi-mic-mute::before {
  content: "\f48f";
}

.bi-mic::before {
  content: "\f490";
}

.bi-minecart-loaded::before {
  content: "\f491";
}

.bi-minecart::before {
  content: "\f492";
}

.bi-moisture::before {
  content: "\f493";
}

.bi-moon-fill::before {
  content: "\f494";
}

.bi-moon-stars-fill::before {
  content: "\f495";
}

.bi-moon-stars::before {
  content: "\f496";
}

.bi-moon::before {
  content: "\f497";
}

.bi-mouse-fill::before {
  content: "\f498";
}

.bi-mouse::before {
  content: "\f499";
}

.bi-mouse2-fill::before {
  content: "\f49a";
}

.bi-mouse2::before {
  content: "\f49b";
}

.bi-mouse3-fill::before {
  content: "\f49c";
}

.bi-mouse3::before {
  content: "\f49d";
}

.bi-music-note-beamed::before {
  content: "\f49e";
}

.bi-music-note-list::before {
  content: "\f49f";
}

.bi-music-note::before {
  content: "\f4a0";
}

.bi-music-player-fill::before {
  content: "\f4a1";
}

.bi-music-player::before {
  content: "\f4a2";
}

.bi-newspaper::before {
  content: "\f4a3";
}

.bi-node-minus-fill::before {
  content: "\f4a4";
}

.bi-node-minus::before {
  content: "\f4a5";
}

.bi-node-plus-fill::before {
  content: "\f4a6";
}

.bi-node-plus::before {
  content: "\f4a7";
}

.bi-nut-fill::before {
  content: "\f4a8";
}

.bi-nut::before {
  content: "\f4a9";
}

.bi-octagon-fill::before {
  content: "\f4aa";
}

.bi-octagon-half::before {
  content: "\f4ab";
}

.bi-octagon::before {
  content: "\f4ac";
}

.bi-option::before {
  content: "\f4ad";
}

.bi-outlet::before {
  content: "\f4ae";
}

.bi-paint-bucket::before {
  content: "\f4af";
}

.bi-palette-fill::before {
  content: "\f4b0";
}

.bi-palette::before {
  content: "\f4b1";
}

.bi-palette2::before {
  content: "\f4b2";
}

.bi-paperclip::before {
  content: "\f4b3";
}

.bi-paragraph::before {
  content: "\f4b4";
}

.bi-patch-check-fill::before {
  content: "\f4b5";
}

.bi-patch-check::before {
  content: "\f4b6";
}

.bi-patch-exclamation-fill::before {
  content: "\f4b7";
}

.bi-patch-exclamation::before {
  content: "\f4b8";
}

.bi-patch-minus-fill::before {
  content: "\f4b9";
}

.bi-patch-minus::before {
  content: "\f4ba";
}

.bi-patch-plus-fill::before {
  content: "\f4bb";
}

.bi-patch-plus::before {
  content: "\f4bc";
}

.bi-patch-question-fill::before {
  content: "\f4bd";
}

.bi-patch-question::before {
  content: "\f4be";
}

.bi-pause-btn-fill::before {
  content: "\f4bf";
}

.bi-pause-btn::before {
  content: "\f4c0";
}

.bi-pause-circle-fill::before {
  content: "\f4c1";
}

.bi-pause-circle::before {
  content: "\f4c2";
}

.bi-pause-fill::before {
  content: "\f4c3";
}

.bi-pause::before {
  content: "\f4c4";
}

.bi-peace-fill::before {
  content: "\f4c5";
}

.bi-peace::before {
  content: "\f4c6";
}

.bi-pen-fill::before {
  content: "\f4c7";
}

.bi-pen::before {
  content: "\f4c8";
}

.bi-pencil-fill::before {
  content: "\f4c9";
}

.bi-pencil-square::before {
  content: "\f4ca";
}

.bi-pencil::before {
  content: "\f4cb";
}

.bi-pentagon-fill::before {
  content: "\f4cc";
}

.bi-pentagon-half::before {
  content: "\f4cd";
}

.bi-pentagon::before {
  content: "\f4ce";
}

.bi-people-fill::before {
  content: "\f4cf";
}

.bi-people::before {
  content: "\f4d0";
}

.bi-percent::before {
  content: "\f4d1";
}

.bi-person-badge-fill::before {
  content: "\f4d2";
}

.bi-person-badge::before {
  content: "\f4d3";
}

.bi-person-bounding-box::before {
  content: "\f4d4";
}

.bi-person-check-fill::before {
  content: "\f4d5";
}

.bi-person-check::before {
  content: "\f4d6";
}

.bi-person-circle::before {
  content: "\f4d7";
}

.bi-person-dash-fill::before {
  content: "\f4d8";
}

.bi-person-dash::before {
  content: "\f4d9";
}

.bi-person-fill::before {
  content: "\f4da";
}

.bi-person-lines-fill::before {
  content: "\f4db";
}

.bi-person-plus-fill::before {
  content: "\f4dc";
}

.bi-person-plus::before {
  content: "\f4dd";
}

.bi-person-square::before {
  content: "\f4de";
}

.bi-person-x-fill::before {
  content: "\f4df";
}

.bi-person-x::before {
  content: "\f4e0";
}

.bi-person::before {
  content: "\f4e1";
}

.bi-phone-fill::before {
  content: "\f4e2";
}

.bi-phone-landscape-fill::before {
  content: "\f4e3";
}

.bi-phone-landscape::before {
  content: "\f4e4";
}

.bi-phone-vibrate-fill::before {
  content: "\f4e5";
}

.bi-phone-vibrate::before {
  content: "\f4e6";
}

.bi-phone::before {
  content: "\f4e7";
}

.bi-pie-chart-fill::before {
  content: "\f4e8";
}

.bi-pie-chart::before {
  content: "\f4e9";
}

.bi-pin-angle-fill::before {
  content: "\f4ea";
}

.bi-pin-angle::before {
  content: "\f4eb";
}

.bi-pin-fill::before {
  content: "\f4ec";
}

.bi-pin::before {
  content: "\f4ed";
}

.bi-pip-fill::before {
  content: "\f4ee";
}

.bi-pip::before {
  content: "\f4ef";
}

.bi-play-btn-fill::before {
  content: "\f4f0";
}

.bi-play-btn::before {
  content: "\f4f1";
}

.bi-play-circle-fill::before {
  content: "\f4f2";
}

.bi-play-circle::before {
  content: "\f4f3";
}

.bi-play-fill::before {
  content: "\f4f4";
}

.bi-play::before {
  content: "\f4f5";
}

.bi-plug-fill::before {
  content: "\f4f6";
}

.bi-plug::before {
  content: "\f4f7";
}

.bi-plus-circle-dotted::before {
  content: "\f4f8";
}

.bi-plus-circle-fill::before {
  content: "\f4f9";
}

.bi-plus-circle::before {
  content: "\f4fa";
}

.bi-plus-square-dotted::before {
  content: "\f4fb";
}

.bi-plus-square-fill::before {
  content: "\f4fc";
}

.bi-plus-square::before {
  content: "\f4fd";
}

.bi-plus::before {
  content: "\f4fe";
}

.bi-power::before {
  content: "\f4ff";
}

.bi-printer-fill::before {
  content: "\f500";
}

.bi-printer::before {
  content: "\f501";
}

.bi-puzzle-fill::before {
  content: "\f502";
}

.bi-puzzle::before {
  content: "\f503";
}

.bi-question-circle-fill::before {
  content: "\f504";
}

.bi-question-circle::before {
  content: "\f505";
}

.bi-question-diamond-fill::before {
  content: "\f506";
}

.bi-question-diamond::before {
  content: "\f507";
}

.bi-question-octagon-fill::before {
  content: "\f508";
}

.bi-question-octagon::before {
  content: "\f509";
}

.bi-question-square-fill::before {
  content: "\f50a";
}

.bi-question-square::before {
  content: "\f50b";
}

.bi-question::before {
  content: "\f50c";
}

.bi-rainbow::before {
  content: "\f50d";
}

.bi-receipt-cutoff::before {
  content: "\f50e";
}

.bi-receipt::before {
  content: "\f50f";
}

.bi-reception-0::before {
  content: "\f510";
}

.bi-reception-1::before {
  content: "\f511";
}

.bi-reception-2::before {
  content: "\f512";
}

.bi-reception-3::before {
  content: "\f513";
}

.bi-reception-4::before {
  content: "\f514";
}

.bi-record-btn-fill::before {
  content: "\f515";
}

.bi-record-btn::before {
  content: "\f516";
}

.bi-record-circle-fill::before {
  content: "\f517";
}

.bi-record-circle::before {
  content: "\f518";
}

.bi-record-fill::before {
  content: "\f519";
}

.bi-record::before {
  content: "\f51a";
}

.bi-record2-fill::before {
  content: "\f51b";
}

.bi-record2::before {
  content: "\f51c";
}

.bi-reply-all-fill::before {
  content: "\f51d";
}

.bi-reply-all::before {
  content: "\f51e";
}

.bi-reply-fill::before {
  content: "\f51f";
}

.bi-reply::before {
  content: "\f520";
}

.bi-rss-fill::before {
  content: "\f521";
}

.bi-rss::before {
  content: "\f522";
}

.bi-rulers::before {
  content: "\f523";
}

.bi-save-fill::before {
  content: "\f524";
}

.bi-save::before {
  content: "\f525";
}

.bi-save2-fill::before {
  content: "\f526";
}

.bi-save2::before {
  content: "\f527";
}

.bi-scissors::before {
  content: "\f528";
}

.bi-screwdriver::before {
  content: "\f529";
}

.bi-search::before {
  content: "\f52a";
}

.bi-segmented-nav::before {
  content: "\f52b";
}

.bi-server::before {
  content: "\f52c";
}

.bi-share-fill::before {
  content: "\f52d";
}

.bi-share::before {
  content: "\f52e";
}

.bi-shield-check::before {
  content: "\f52f";
}

.bi-shield-exclamation::before {
  content: "\f530";
}

.bi-shield-fill-check::before {
  content: "\f531";
}

.bi-shield-fill-exclamation::before {
  content: "\f532";
}

.bi-shield-fill-minus::before {
  content: "\f533";
}

.bi-shield-fill-plus::before {
  content: "\f534";
}

.bi-shield-fill-x::before {
  content: "\f535";
}

.bi-shield-fill::before {
  content: "\f536";
}

.bi-shield-lock-fill::before {
  content: "\f537";
}

.bi-shield-lock::before {
  content: "\f538";
}

.bi-shield-minus::before {
  content: "\f539";
}

.bi-shield-plus::before {
  content: "\f53a";
}

.bi-shield-shaded::before {
  content: "\f53b";
}

.bi-shield-slash-fill::before {
  content: "\f53c";
}

.bi-shield-slash::before {
  content: "\f53d";
}

.bi-shield-x::before {
  content: "\f53e";
}

.bi-shield::before {
  content: "\f53f";
}

.bi-shift-fill::before {
  content: "\f540";
}

.bi-shift::before {
  content: "\f541";
}

.bi-shop-window::before {
  content: "\f542";
}

.bi-shop::before {
  content: "\f543";
}

.bi-shuffle::before {
  content: "\f544";
}

.bi-signpost-2-fill::before {
  content: "\f545";
}

.bi-signpost-2::before {
  content: "\f546";
}

.bi-signpost-fill::before {
  content: "\f547";
}

.bi-signpost-split-fill::before {
  content: "\f548";
}

.bi-signpost-split::before {
  content: "\f549";
}

.bi-signpost::before {
  content: "\f54a";
}

.bi-sim-fill::before {
  content: "\f54b";
}

.bi-sim::before {
  content: "\f54c";
}

.bi-skip-backward-btn-fill::before {
  content: "\f54d";
}

.bi-skip-backward-btn::before {
  content: "\f54e";
}

.bi-skip-backward-circle-fill::before {
  content: "\f54f";
}

.bi-skip-backward-circle::before {
  content: "\f550";
}

.bi-skip-backward-fill::before {
  content: "\f551";
}

.bi-skip-backward::before {
  content: "\f552";
}

.bi-skip-end-btn-fill::before {
  content: "\f553";
}

.bi-skip-end-btn::before {
  content: "\f554";
}

.bi-skip-end-circle-fill::before {
  content: "\f555";
}

.bi-skip-end-circle::before {
  content: "\f556";
}

.bi-skip-end-fill::before {
  content: "\f557";
}

.bi-skip-end::before {
  content: "\f558";
}

.bi-skip-forward-btn-fill::before {
  content: "\f559";
}

.bi-skip-forward-btn::before {
  content: "\f55a";
}

.bi-skip-forward-circle-fill::before {
  content: "\f55b";
}

.bi-skip-forward-circle::before {
  content: "\f55c";
}

.bi-skip-forward-fill::before {
  content: "\f55d";
}

.bi-skip-forward::before {
  content: "\f55e";
}

.bi-skip-start-btn-fill::before {
  content: "\f55f";
}

.bi-skip-start-btn::before {
  content: "\f560";
}

.bi-skip-start-circle-fill::before {
  content: "\f561";
}

.bi-skip-start-circle::before {
  content: "\f562";
}

.bi-skip-start-fill::before {
  content: "\f563";
}

.bi-skip-start::before {
  content: "\f564";
}

.bi-slack::before {
  content: "\f565";
}

.bi-slash-circle-fill::before {
  content: "\f566";
}

.bi-slash-circle::before {
  content: "\f567";
}

.bi-slash-square-fill::before {
  content: "\f568";
}

.bi-slash-square::before {
  content: "\f569";
}

.bi-slash::before {
  content: "\f56a";
}

.bi-sliders::before {
  content: "\f56b";
}

.bi-smartwatch::before {
  content: "\f56c";
}

.bi-snow::before {
  content: "\f56d";
}

.bi-snow2::before {
  content: "\f56e";
}

.bi-snow3::before {
  content: "\f56f";
}

.bi-sort-alpha-down-alt::before {
  content: "\f570";
}

.bi-sort-alpha-down::before {
  content: "\f571";
}

.bi-sort-alpha-up-alt::before {
  content: "\f572";
}

.bi-sort-alpha-up::before {
  content: "\f573";
}

.bi-sort-down-alt::before {
  content: "\f574";
}

.bi-sort-down::before {
  content: "\f575";
}

.bi-sort-numeric-down-alt::before {
  content: "\f576";
}

.bi-sort-numeric-down::before {
  content: "\f577";
}

.bi-sort-numeric-up-alt::before {
  content: "\f578";
}

.bi-sort-numeric-up::before {
  content: "\f579";
}

.bi-sort-up-alt::before {
  content: "\f57a";
}

.bi-sort-up::before {
  content: "\f57b";
}

.bi-soundwave::before {
  content: "\f57c";
}

.bi-speaker-fill::before {
  content: "\f57d";
}

.bi-speaker::before {
  content: "\f57e";
}

.bi-speedometer::before {
  content: "\f57f";
}

.bi-speedometer2::before {
  content: "\f580";
}

.bi-spellcheck::before {
  content: "\f581";
}

.bi-square-fill::before {
  content: "\f582";
}

.bi-square-half::before {
  content: "\f583";
}

.bi-square::before {
  content: "\f584";
}

.bi-stack::before {
  content: "\f585";
}

.bi-star-fill::before {
  content: "\f586";
}

.bi-star-half::before {
  content: "\f587";
}

.bi-star::before {
  content: "\f588";
}

.bi-stars::before {
  content: "\f589";
}

.bi-stickies-fill::before {
  content: "\f58a";
}

.bi-stickies::before {
  content: "\f58b";
}

.bi-sticky-fill::before {
  content: "\f58c";
}

.bi-sticky::before {
  content: "\f58d";
}

.bi-stop-btn-fill::before {
  content: "\f58e";
}

.bi-stop-btn::before {
  content: "\f58f";
}

.bi-stop-circle-fill::before {
  content: "\f590";
}

.bi-stop-circle::before {
  content: "\f591";
}

.bi-stop-fill::before {
  content: "\f592";
}

.bi-stop::before {
  content: "\f593";
}

.bi-stoplights-fill::before {
  content: "\f594";
}

.bi-stoplights::before {
  content: "\f595";
}

.bi-stopwatch-fill::before {
  content: "\f596";
}

.bi-stopwatch::before {
  content: "\f597";
}

.bi-subtract::before {
  content: "\f598";
}

.bi-suit-club-fill::before {
  content: "\f599";
}

.bi-suit-club::before {
  content: "\f59a";
}

.bi-suit-diamond-fill::before {
  content: "\f59b";
}

.bi-suit-diamond::before {
  content: "\f59c";
}

.bi-suit-heart-fill::before {
  content: "\f59d";
}

.bi-suit-heart::before {
  content: "\f59e";
}

.bi-suit-spade-fill::before {
  content: "\f59f";
}

.bi-suit-spade::before {
  content: "\f5a0";
}

.bi-sun-fill::before {
  content: "\f5a1";
}

.bi-sun::before {
  content: "\f5a2";
}

.bi-sunglasses::before {
  content: "\f5a3";
}

.bi-sunrise-fill::before {
  content: "\f5a4";
}

.bi-sunrise::before {
  content: "\f5a5";
}

.bi-sunset-fill::before {
  content: "\f5a6";
}

.bi-sunset::before {
  content: "\f5a7";
}

.bi-symmetry-horizontal::before {
  content: "\f5a8";
}

.bi-symmetry-vertical::before {
  content: "\f5a9";
}

.bi-table::before {
  content: "\f5aa";
}

.bi-tablet-fill::before {
  content: "\f5ab";
}

.bi-tablet-landscape-fill::before {
  content: "\f5ac";
}

.bi-tablet-landscape::before {
  content: "\f5ad";
}

.bi-tablet::before {
  content: "\f5ae";
}

.bi-tag-fill::before {
  content: "\f5af";
}

.bi-tag::before {
  content: "\f5b0";
}

.bi-tags-fill::before {
  content: "\f5b1";
}

.bi-tags::before {
  content: "\f5b2";
}

.bi-telegram::before {
  content: "\f5b3";
}

.bi-telephone-fill::before {
  content: "\f5b4";
}

.bi-telephone-forward-fill::before {
  content: "\f5b5";
}

.bi-telephone-forward::before {
  content: "\f5b6";
}

.bi-telephone-inbound-fill::before {
  content: "\f5b7";
}

.bi-telephone-inbound::before {
  content: "\f5b8";
}

.bi-telephone-minus-fill::before {
  content: "\f5b9";
}

.bi-telephone-minus::before {
  content: "\f5ba";
}

.bi-telephone-outbound-fill::before {
  content: "\f5bb";
}

.bi-telephone-outbound::before {
  content: "\f5bc";
}

.bi-telephone-plus-fill::before {
  content: "\f5bd";
}

.bi-telephone-plus::before {
  content: "\f5be";
}

.bi-telephone-x-fill::before {
  content: "\f5bf";
}

.bi-telephone-x::before {
  content: "\f5c0";
}

.bi-telephone::before {
  content: "\f5c1";
}

.bi-terminal-fill::before {
  content: "\f5c2";
}

.bi-terminal::before {
  content: "\f5c3";
}

.bi-text-center::before {
  content: "\f5c4";
}

.bi-text-indent-left::before {
  content: "\f5c5";
}

.bi-text-indent-right::before {
  content: "\f5c6";
}

.bi-text-left::before {
  content: "\f5c7";
}

.bi-text-paragraph::before {
  content: "\f5c8";
}

.bi-text-right::before {
  content: "\f5c9";
}

.bi-textarea-resize::before {
  content: "\f5ca";
}

.bi-textarea-t::before {
  content: "\f5cb";
}

.bi-textarea::before {
  content: "\f5cc";
}

.bi-thermometer-half::before {
  content: "\f5cd";
}

.bi-thermometer-high::before {
  content: "\f5ce";
}

.bi-thermometer-low::before {
  content: "\f5cf";
}

.bi-thermometer-snow::before {
  content: "\f5d0";
}

.bi-thermometer-sun::before {
  content: "\f5d1";
}

.bi-thermometer::before {
  content: "\f5d2";
}

.bi-three-dots-vertical::before {
  content: "\f5d3";
}

.bi-three-dots::before {
  content: "\f5d4";
}

.bi-toggle-off::before {
  content: "\f5d5";
}

.bi-toggle-on::before {
  content: "\f5d6";
}

.bi-toggle2-off::before {
  content: "\f5d7";
}

.bi-toggle2-on::before {
  content: "\f5d8";
}

.bi-toggles::before {
  content: "\f5d9";
}

.bi-toggles2::before {
  content: "\f5da";
}

.bi-tools::before {
  content: "\f5db";
}

.bi-tornado::before {
  content: "\f5dc";
}

.bi-trash-fill::before {
  content: "\f5dd";
}

.bi-trash::before {
  content: "\f5de";
}

.bi-trash2-fill::before {
  content: "\f5df";
}

.bi-trash2::before {
  content: "\f5e0";
}

.bi-tree-fill::before {
  content: "\f5e1";
}

.bi-tree::before {
  content: "\f5e2";
}

.bi-triangle-fill::before {
  content: "\f5e3";
}

.bi-triangle-half::before {
  content: "\f5e4";
}

.bi-triangle::before {
  content: "\f5e5";
}

.bi-trophy-fill::before {
  content: "\f5e6";
}

.bi-trophy::before {
  content: "\f5e7";
}

.bi-tropical-storm::before {
  content: "\f5e8";
}

.bi-truck-flatbed::before {
  content: "\f5e9";
}

.bi-truck::before {
  content: "\f5ea";
}

.bi-tsunami::before {
  content: "\f5eb";
}

.bi-tv-fill::before {
  content: "\f5ec";
}

.bi-tv::before {
  content: "\f5ed";
}

.bi-twitch::before {
  content: "\f5ee";
}

.bi-twitter::before {
  content: "\f5ef";
}

.bi-type-bold::before {
  content: "\f5f0";
}

.bi-type-h1::before {
  content: "\f5f1";
}

.bi-type-h2::before {
  content: "\f5f2";
}

.bi-type-h3::before {
  content: "\f5f3";
}

.bi-type-italic::before {
  content: "\f5f4";
}

.bi-type-strikethrough::before {
  content: "\f5f5";
}

.bi-type-underline::before {
  content: "\f5f6";
}

.bi-type::before {
  content: "\f5f7";
}

.bi-ui-checks-grid::before {
  content: "\f5f8";
}

.bi-ui-checks::before {
  content: "\f5f9";
}

.bi-ui-radios-grid::before {
  content: "\f5fa";
}

.bi-ui-radios::before {
  content: "\f5fb";
}

.bi-umbrella-fill::before {
  content: "\f5fc";
}

.bi-umbrella::before {
  content: "\f5fd";
}

.bi-union::before {
  content: "\f5fe";
}

.bi-unlock-fill::before {
  content: "\f5ff";
}

.bi-unlock::before {
  content: "\f600";
}

.bi-upc-scan::before {
  content: "\f601";
}

.bi-upc::before {
  content: "\f602";
}

.bi-upload::before {
  content: "\f603";
}

.bi-vector-pen::before {
  content: "\f604";
}

.bi-view-list::before {
  content: "\f605";
}

.bi-view-stacked::before {
  content: "\f606";
}

.bi-vinyl-fill::before {
  content: "\f607";
}

.bi-vinyl::before {
  content: "\f608";
}

.bi-voicemail::before {
  content: "\f609";
}

.bi-volume-down-fill::before {
  content: "\f60a";
}

.bi-volume-down::before {
  content: "\f60b";
}

.bi-volume-mute-fill::before {
  content: "\f60c";
}

.bi-volume-mute::before {
  content: "\f60d";
}

.bi-volume-off-fill::before {
  content: "\f60e";
}

.bi-volume-off::before {
  content: "\f60f";
}

.bi-volume-up-fill::before {
  content: "\f610";
}

.bi-volume-up::before {
  content: "\f611";
}

.bi-vr::before {
  content: "\f612";
}

.bi-wallet-fill::before {
  content: "\f613";
}

.bi-wallet::before {
  content: "\f614";
}

.bi-wallet2::before {
  content: "\f615";
}

.bi-watch::before {
  content: "\f616";
}

.bi-water::before {
  content: "\f617";
}

.bi-whatsapp::before {
  content: "\f618";
}

.bi-wifi-1::before {
  content: "\f619";
}

.bi-wifi-2::before {
  content: "\f61a";
}

.bi-wifi-off::before {
  content: "\f61b";
}

.bi-wifi::before {
  content: "\f61c";
}

.bi-wind::before {
  content: "\f61d";
}

.bi-window-dock::before {
  content: "\f61e";
}

.bi-window-sidebar::before {
  content: "\f61f";
}

.bi-window::before {
  content: "\f620";
}

.bi-wrench::before {
  content: "\f621";
}

.bi-x-circle-fill::before {
  content: "\f622";
}

.bi-x-circle::before {
  content: "\f623";
}

.bi-x-diamond-fill::before {
  content: "\f624";
}

.bi-x-diamond::before {
  content: "\f625";
}

.bi-x-octagon-fill::before {
  content: "\f626";
}

.bi-x-octagon::before {
  content: "\f627";
}

.bi-x-square-fill::before {
  content: "\f628";
}

.bi-x-square::before {
  content: "\f629";
}

.bi-x::before {
  content: "\f62a";
}

.bi-youtube::before {
  content: "\f62b";
}

.bi-zoom-in::before {
  content: "\f62c";
}

.bi-zoom-out::before {
  content: "\f62d";
}

.bi-bank::before {
  content: "\f62e";
}

.bi-bank2::before {
  content: "\f62f";
}

.bi-bell-slash-fill::before {
  content: "\f630";
}

.bi-bell-slash::before {
  content: "\f631";
}

.bi-cash-coin::before {
  content: "\f632";
}

.bi-check-lg::before {
  content: "\f633";
}

.bi-coin::before {
  content: "\f634";
}

.bi-currency-bitcoin::before {
  content: "\f635";
}

.bi-currency-dollar::before {
  content: "\f636";
}

.bi-currency-euro::before {
  content: "\f637";
}

.bi-currency-exchange::before {
  content: "\f638";
}

.bi-currency-pound::before {
  content: "\f639";
}

.bi-currency-yen::before {
  content: "\f63a";
}

.bi-dash-lg::before {
  content: "\f63b";
}

.bi-exclamation-lg::before {
  content: "\f63c";
}

.bi-file-earmark-pdf-fill::before {
  content: "\f63d";
}

.bi-file-earmark-pdf::before {
  content: "\f63e";
}

.bi-file-pdf-fill::before {
  content: "\f63f";
}

.bi-file-pdf::before {
  content: "\f640";
}

.bi-gender-ambiguous::before {
  content: "\f641";
}

.bi-gender-female::before {
  content: "\f642";
}

.bi-gender-male::before {
  content: "\f643";
}

.bi-gender-trans::before {
  content: "\f644";
}

.bi-headset-vr::before {
  content: "\f645";
}

.bi-info-lg::before {
  content: "\f646";
}

.bi-mastodon::before {
  content: "\f647";
}

.bi-messenger::before {
  content: "\f648";
}

.bi-piggy-bank-fill::before {
  content: "\f649";
}

.bi-piggy-bank::before {
  content: "\f64a";
}

.bi-pin-map-fill::before {
  content: "\f64b";
}

.bi-pin-map::before {
  content: "\f64c";
}

.bi-plus-lg::before {
  content: "\f64d";
}

.bi-question-lg::before {
  content: "\f64e";
}

.bi-recycle::before {
  content: "\f64f";
}

.bi-reddit::before {
  content: "\f650";
}

.bi-safe-fill::before {
  content: "\f651";
}

.bi-safe2-fill::before {
  content: "\f652";
}

.bi-safe2::before {
  content: "\f653";
}

.bi-sd-card-fill::before {
  content: "\f654";
}

.bi-sd-card::before {
  content: "\f655";
}

.bi-skype::before {
  content: "\f656";
}

.bi-slash-lg::before {
  content: "\f657";
}

.bi-translate::before {
  content: "\f658";
}

.bi-x-lg::before {
  content: "\f659";
}

.bi-safe::before {
  content: "\f65a";
}

.bi-apple::before {
  content: "\f65b";
}

.bi-microsoft::before {
  content: "\f65d";
}

.bi-windows::before {
  content: "\f65e";
}

.bi-behance::before {
  content: "\f65c";
}

.bi-dribbble::before {
  content: "\f65f";
}

.bi-line::before {
  content: "\f660";
}

.bi-medium::before {
  content: "\f661";
}

.bi-paypal::before {
  content: "\f662";
}

.bi-pinterest::before {
  content: "\f663";
}

.bi-signal::before {
  content: "\f664";
}

.bi-snapchat::before {
  content: "\f665";
}

.bi-spotify::before {
  content: "\f666";
}

.bi-stack-overflow::before {
  content: "\f667";
}

.bi-strava::before {
  content: "\f668";
}

.bi-wordpress::before {
  content: "\f669";
}

.bi-vimeo::before {
  content: "\f66a";
}

.bi-activity::before {
  content: "\f66b";
}

.bi-easel2-fill::before {
  content: "\f66c";
}

.bi-easel2::before {
  content: "\f66d";
}

.bi-easel3-fill::before {
  content: "\f66e";
}

.bi-easel3::before {
  content: "\f66f";
}

.bi-fan::before {
  content: "\f670";
}

.bi-fingerprint::before {
  content: "\f671";
}

.bi-graph-down-arrow::before {
  content: "\f672";
}

.bi-graph-up-arrow::before {
  content: "\f673";
}

.bi-hypnotize::before {
  content: "\f674";
}

.bi-magic::before {
  content: "\f675";
}

.bi-person-rolodex::before {
  content: "\f676";
}

.bi-person-video::before {
  content: "\f677";
}

.bi-person-video2::before {
  content: "\f678";
}

.bi-person-video3::before {
  content: "\f679";
}

.bi-person-workspace::before {
  content: "\f67a";
}

.bi-radioactive::before {
  content: "\f67b";
}

.bi-webcam-fill::before {
  content: "\f67c";
}

.bi-webcam::before {
  content: "\f67d";
}

.bi-yin-yang::before {
  content: "\f67e";
}

.bi-bandaid-fill::before {
  content: "\f680";
}

.bi-bandaid::before {
  content: "\f681";
}

.bi-bluetooth::before {
  content: "\f682";
}

.bi-body-text::before {
  content: "\f683";
}

.bi-boombox::before {
  content: "\f684";
}

.bi-boxes::before {
  content: "\f685";
}

.bi-dpad-fill::before {
  content: "\f686";
}

.bi-dpad::before {
  content: "\f687";
}

.bi-ear-fill::before {
  content: "\f688";
}

.bi-ear::before {
  content: "\f689";
}

.bi-envelope-check-fill::before {
  content: "\f68b";
}

.bi-envelope-check::before {
  content: "\f68c";
}

.bi-envelope-dash-fill::before {
  content: "\f68e";
}

.bi-envelope-dash::before {
  content: "\f68f";
}

.bi-envelope-exclamation-fill::before {
  content: "\f691";
}

.bi-envelope-exclamation::before {
  content: "\f692";
}

.bi-envelope-plus-fill::before {
  content: "\f693";
}

.bi-envelope-plus::before {
  content: "\f694";
}

.bi-envelope-slash-fill::before {
  content: "\f696";
}

.bi-envelope-slash::before {
  content: "\f697";
}

.bi-envelope-x-fill::before {
  content: "\f699";
}

.bi-envelope-x::before {
  content: "\f69a";
}

.bi-explicit-fill::before {
  content: "\f69b";
}

.bi-explicit::before {
  content: "\f69c";
}

.bi-git::before {
  content: "\f69d";
}

.bi-infinity::before {
  content: "\f69e";
}

.bi-list-columns-reverse::before {
  content: "\f69f";
}

.bi-list-columns::before {
  content: "\f6a0";
}

.bi-meta::before {
  content: "\f6a1";
}

.bi-nintendo-switch::before {
  content: "\f6a4";
}

.bi-pc-display-horizontal::before {
  content: "\f6a5";
}

.bi-pc-display::before {
  content: "\f6a6";
}

.bi-pc-horizontal::before {
  content: "\f6a7";
}

.bi-pc::before {
  content: "\f6a8";
}

.bi-playstation::before {
  content: "\f6a9";
}

.bi-plus-slash-minus::before {
  content: "\f6aa";
}

.bi-projector-fill::before {
  content: "\f6ab";
}

.bi-projector::before {
  content: "\f6ac";
}

.bi-qr-code-scan::before {
  content: "\f6ad";
}

.bi-qr-code::before {
  content: "\f6ae";
}

.bi-quora::before {
  content: "\f6af";
}

.bi-quote::before {
  content: "\f6b0";
}

.bi-robot::before {
  content: "\f6b1";
}

.bi-send-check-fill::before {
  content: "\f6b2";
}

.bi-send-check::before {
  content: "\f6b3";
}

.bi-send-dash-fill::before {
  content: "\f6b4";
}

.bi-send-dash::before {
  content: "\f6b5";
}

.bi-send-exclamation-fill::before {
  content: "\f6b7";
}

.bi-send-exclamation::before {
  content: "\f6b8";
}

.bi-send-fill::before {
  content: "\f6b9";
}

.bi-send-plus-fill::before {
  content: "\f6ba";
}

.bi-send-plus::before {
  content: "\f6bb";
}

.bi-send-slash-fill::before {
  content: "\f6bc";
}

.bi-send-slash::before {
  content: "\f6bd";
}

.bi-send-x-fill::before {
  content: "\f6be";
}

.bi-send-x::before {
  content: "\f6bf";
}

.bi-send::before {
  content: "\f6c0";
}

.bi-steam::before {
  content: "\f6c1";
}

.bi-terminal-dash::before {
  content: "\f6c3";
}

.bi-terminal-plus::before {
  content: "\f6c4";
}

.bi-terminal-split::before {
  content: "\f6c5";
}

.bi-ticket-detailed-fill::before {
  content: "\f6c6";
}

.bi-ticket-detailed::before {
  content: "\f6c7";
}

.bi-ticket-fill::before {
  content: "\f6c8";
}

.bi-ticket-perforated-fill::before {
  content: "\f6c9";
}

.bi-ticket-perforated::before {
  content: "\f6ca";
}

.bi-ticket::before {
  content: "\f6cb";
}

.bi-tiktok::before {
  content: "\f6cc";
}

.bi-window-dash::before {
  content: "\f6cd";
}

.bi-window-desktop::before {
  content: "\f6ce";
}

.bi-window-fullscreen::before {
  content: "\f6cf";
}

.bi-window-plus::before {
  content: "\f6d0";
}

.bi-window-split::before {
  content: "\f6d1";
}

.bi-window-stack::before {
  content: "\f6d2";
}

.bi-window-x::before {
  content: "\f6d3";
}

.bi-xbox::before {
  content: "\f6d4";
}

.bi-ethernet::before {
  content: "\f6d5";
}

.bi-hdmi-fill::before {
  content: "\f6d6";
}

.bi-hdmi::before {
  content: "\f6d7";
}

.bi-usb-c-fill::before {
  content: "\f6d8";
}

.bi-usb-c::before {
  content: "\f6d9";
}

.bi-usb-fill::before {
  content: "\f6da";
}

.bi-usb-plug-fill::before {
  content: "\f6db";
}

.bi-usb-plug::before {
  content: "\f6dc";
}

.bi-usb-symbol::before {
  content: "\f6dd";
}

.bi-usb::before {
  content: "\f6de";
}

.bi-boombox-fill::before {
  content: "\f6df";
}

.bi-displayport::before {
  content: "\f6e1";
}

.bi-gpu-card::before {
  content: "\f6e2";
}

.bi-memory::before {
  content: "\f6e3";
}

.bi-modem-fill::before {
  content: "\f6e4";
}

.bi-modem::before {
  content: "\f6e5";
}

.bi-motherboard-fill::before {
  content: "\f6e6";
}

.bi-motherboard::before {
  content: "\f6e7";
}

.bi-optical-audio-fill::before {
  content: "\f6e8";
}

.bi-optical-audio::before {
  content: "\f6e9";
}

.bi-pci-card::before {
  content: "\f6ea";
}

.bi-router-fill::before {
  content: "\f6eb";
}

.bi-router::before {
  content: "\f6ec";
}

.bi-thunderbolt-fill::before {
  content: "\f6ef";
}

.bi-thunderbolt::before {
  content: "\f6f0";
}

.bi-usb-drive-fill::before {
  content: "\f6f1";
}

.bi-usb-drive::before {
  content: "\f6f2";
}

.bi-usb-micro-fill::before {
  content: "\f6f3";
}

.bi-usb-micro::before {
  content: "\f6f4";
}

.bi-usb-mini-fill::before {
  content: "\f6f5";
}

.bi-usb-mini::before {
  content: "\f6f6";
}

.bi-cloud-haze2::before {
  content: "\f6f7";
}

.bi-device-hdd-fill::before {
  content: "\f6f8";
}

.bi-device-hdd::before {
  content: "\f6f9";
}

.bi-device-ssd-fill::before {
  content: "\f6fa";
}

.bi-device-ssd::before {
  content: "\f6fb";
}

.bi-displayport-fill::before {
  content: "\f6fc";
}

.bi-mortarboard-fill::before {
  content: "\f6fd";
}

.bi-mortarboard::before {
  content: "\f6fe";
}

.bi-terminal-x::before {
  content: "\f6ff";
}

.bi-arrow-through-heart-fill::before {
  content: "\f700";
}

.bi-arrow-through-heart::before {
  content: "\f701";
}

.bi-badge-sd-fill::before {
  content: "\f702";
}

.bi-badge-sd::before {
  content: "\f703";
}

.bi-bag-heart-fill::before {
  content: "\f704";
}

.bi-bag-heart::before {
  content: "\f705";
}

.bi-balloon-fill::before {
  content: "\f706";
}

.bi-balloon-heart-fill::before {
  content: "\f707";
}

.bi-balloon-heart::before {
  content: "\f708";
}

.bi-balloon::before {
  content: "\f709";
}

.bi-box2-fill::before {
  content: "\f70a";
}

.bi-box2-heart-fill::before {
  content: "\f70b";
}

.bi-box2-heart::before {
  content: "\f70c";
}

.bi-box2::before {
  content: "\f70d";
}

.bi-braces-asterisk::before {
  content: "\f70e";
}

.bi-calendar-heart-fill::before {
  content: "\f70f";
}

.bi-calendar-heart::before {
  content: "\f710";
}

.bi-calendar2-heart-fill::before {
  content: "\f711";
}

.bi-calendar2-heart::before {
  content: "\f712";
}

.bi-chat-heart-fill::before {
  content: "\f713";
}

.bi-chat-heart::before {
  content: "\f714";
}

.bi-chat-left-heart-fill::before {
  content: "\f715";
}

.bi-chat-left-heart::before {
  content: "\f716";
}

.bi-chat-right-heart-fill::before {
  content: "\f717";
}

.bi-chat-right-heart::before {
  content: "\f718";
}

.bi-chat-square-heart-fill::before {
  content: "\f719";
}

.bi-chat-square-heart::before {
  content: "\f71a";
}

.bi-clipboard-check-fill::before {
  content: "\f71b";
}

.bi-clipboard-data-fill::before {
  content: "\f71c";
}

.bi-clipboard-fill::before {
  content: "\f71d";
}

.bi-clipboard-heart-fill::before {
  content: "\f71e";
}

.bi-clipboard-heart::before {
  content: "\f71f";
}

.bi-clipboard-minus-fill::before {
  content: "\f720";
}

.bi-clipboard-plus-fill::before {
  content: "\f721";
}

.bi-clipboard-pulse::before {
  content: "\f722";
}

.bi-clipboard-x-fill::before {
  content: "\f723";
}

.bi-clipboard2-check-fill::before {
  content: "\f724";
}

.bi-clipboard2-check::before {
  content: "\f725";
}

.bi-clipboard2-data-fill::before {
  content: "\f726";
}

.bi-clipboard2-data::before {
  content: "\f727";
}

.bi-clipboard2-fill::before {
  content: "\f728";
}

.bi-clipboard2-heart-fill::before {
  content: "\f729";
}

.bi-clipboard2-heart::before {
  content: "\f72a";
}

.bi-clipboard2-minus-fill::before {
  content: "\f72b";
}

.bi-clipboard2-minus::before {
  content: "\f72c";
}

.bi-clipboard2-plus-fill::before {
  content: "\f72d";
}

.bi-clipboard2-plus::before {
  content: "\f72e";
}

.bi-clipboard2-pulse-fill::before {
  content: "\f72f";
}

.bi-clipboard2-pulse::before {
  content: "\f730";
}

.bi-clipboard2-x-fill::before {
  content: "\f731";
}

.bi-clipboard2-x::before {
  content: "\f732";
}

.bi-clipboard2::before {
  content: "\f733";
}

.bi-emoji-kiss-fill::before {
  content: "\f734";
}

.bi-emoji-kiss::before {
  content: "\f735";
}

.bi-envelope-heart-fill::before {
  content: "\f736";
}

.bi-envelope-heart::before {
  content: "\f737";
}

.bi-envelope-open-heart-fill::before {
  content: "\f738";
}

.bi-envelope-open-heart::before {
  content: "\f739";
}

.bi-envelope-paper-fill::before {
  content: "\f73a";
}

.bi-envelope-paper-heart-fill::before {
  content: "\f73b";
}

.bi-envelope-paper-heart::before {
  content: "\f73c";
}

.bi-envelope-paper::before {
  content: "\f73d";
}

.bi-filetype-aac::before {
  content: "\f73e";
}

.bi-filetype-ai::before {
  content: "\f73f";
}

.bi-filetype-bmp::before {
  content: "\f740";
}

.bi-filetype-cs::before {
  content: "\f741";
}

.bi-filetype-css::before {
  content: "\f742";
}

.bi-filetype-csv::before {
  content: "\f743";
}

.bi-filetype-doc::before {
  content: "\f744";
}

.bi-filetype-docx::before {
  content: "\f745";
}

.bi-filetype-exe::before {
  content: "\f746";
}

.bi-filetype-gif::before {
  content: "\f747";
}

.bi-filetype-heic::before {
  content: "\f748";
}

.bi-filetype-html::before {
  content: "\f749";
}

.bi-filetype-java::before {
  content: "\f74a";
}

.bi-filetype-jpg::before {
  content: "\f74b";
}

.bi-filetype-js::before {
  content: "\f74c";
}

.bi-filetype-jsx::before {
  content: "\f74d";
}

.bi-filetype-key::before {
  content: "\f74e";
}

.bi-filetype-m4p::before {
  content: "\f74f";
}

.bi-filetype-md::before {
  content: "\f750";
}

.bi-filetype-mdx::before {
  content: "\f751";
}

.bi-filetype-mov::before {
  content: "\f752";
}

.bi-filetype-mp3::before {
  content: "\f753";
}

.bi-filetype-mp4::before {
  content: "\f754";
}

.bi-filetype-otf::before {
  content: "\f755";
}

.bi-filetype-pdf::before {
  content: "\f756";
}

.bi-filetype-php::before {
  content: "\f757";
}

.bi-filetype-png::before {
  content: "\f758";
}

.bi-filetype-ppt::before {
  content: "\f75a";
}

.bi-filetype-psd::before {
  content: "\f75b";
}

.bi-filetype-py::before {
  content: "\f75c";
}

.bi-filetype-raw::before {
  content: "\f75d";
}

.bi-filetype-rb::before {
  content: "\f75e";
}

.bi-filetype-sass::before {
  content: "\f75f";
}

.bi-filetype-scss::before {
  content: "\f760";
}

.bi-filetype-sh::before {
  content: "\f761";
}

.bi-filetype-svg::before {
  content: "\f762";
}

.bi-filetype-tiff::before {
  content: "\f763";
}

.bi-filetype-tsx::before {
  content: "\f764";
}

.bi-filetype-ttf::before {
  content: "\f765";
}

.bi-filetype-txt::before {
  content: "\f766";
}

.bi-filetype-wav::before {
  content: "\f767";
}

.bi-filetype-woff::before {
  content: "\f768";
}

.bi-filetype-xls::before {
  content: "\f76a";
}

.bi-filetype-xml::before {
  content: "\f76b";
}

.bi-filetype-yml::before {
  content: "\f76c";
}

.bi-heart-arrow::before {
  content: "\f76d";
}

.bi-heart-pulse-fill::before {
  content: "\f76e";
}

.bi-heart-pulse::before {
  content: "\f76f";
}

.bi-heartbreak-fill::before {
  content: "\f770";
}

.bi-heartbreak::before {
  content: "\f771";
}

.bi-hearts::before {
  content: "\f772";
}

.bi-hospital-fill::before {
  content: "\f773";
}

.bi-hospital::before {
  content: "\f774";
}

.bi-house-heart-fill::before {
  content: "\f775";
}

.bi-house-heart::before {
  content: "\f776";
}

.bi-incognito::before {
  content: "\f777";
}

.bi-magnet-fill::before {
  content: "\f778";
}

.bi-magnet::before {
  content: "\f779";
}

.bi-person-heart::before {
  content: "\f77a";
}

.bi-person-hearts::before {
  content: "\f77b";
}

.bi-phone-flip::before {
  content: "\f77c";
}

.bi-plugin::before {
  content: "\f77d";
}

.bi-postage-fill::before {
  content: "\f77e";
}

.bi-postage-heart-fill::before {
  content: "\f77f";
}

.bi-postage-heart::before {
  content: "\f780";
}

.bi-postage::before {
  content: "\f781";
}

.bi-postcard-fill::before {
  content: "\f782";
}

.bi-postcard-heart-fill::before {
  content: "\f783";
}

.bi-postcard-heart::before {
  content: "\f784";
}

.bi-postcard::before {
  content: "\f785";
}

.bi-search-heart-fill::before {
  content: "\f786";
}

.bi-search-heart::before {
  content: "\f787";
}

.bi-sliders2-vertical::before {
  content: "\f788";
}

.bi-sliders2::before {
  content: "\f789";
}

.bi-trash3-fill::before {
  content: "\f78a";
}

.bi-trash3::before {
  content: "\f78b";
}

.bi-valentine::before {
  content: "\f78c";
}

.bi-valentine2::before {
  content: "\f78d";
}

.bi-wrench-adjustable-circle-fill::before {
  content: "\f78e";
}

.bi-wrench-adjustable-circle::before {
  content: "\f78f";
}

.bi-wrench-adjustable::before {
  content: "\f790";
}

.bi-filetype-json::before {
  content: "\f791";
}

.bi-filetype-pptx::before {
  content: "\f792";
}

.bi-filetype-xlsx::before {
  content: "\f793";
}

.bi-1-circle-fill::before {
  content: "\f796";
}

.bi-1-circle::before {
  content: "\f797";
}

.bi-1-square-fill::before {
  content: "\f798";
}

.bi-1-square::before {
  content: "\f799";
}

.bi-2-circle-fill::before {
  content: "\f79c";
}

.bi-2-circle::before {
  content: "\f79d";
}

.bi-2-square-fill::before {
  content: "\f79e";
}

.bi-2-square::before {
  content: "\f79f";
}

.bi-3-circle-fill::before {
  content: "\f7a2";
}

.bi-3-circle::before {
  content: "\f7a3";
}

.bi-3-square-fill::before {
  content: "\f7a4";
}

.bi-3-square::before {
  content: "\f7a5";
}

.bi-4-circle-fill::before {
  content: "\f7a8";
}

.bi-4-circle::before {
  content: "\f7a9";
}

.bi-4-square-fill::before {
  content: "\f7aa";
}

.bi-4-square::before {
  content: "\f7ab";
}

.bi-5-circle-fill::before {
  content: "\f7ae";
}

.bi-5-circle::before {
  content: "\f7af";
}

.bi-5-square-fill::before {
  content: "\f7b0";
}

.bi-5-square::before {
  content: "\f7b1";
}

.bi-6-circle-fill::before {
  content: "\f7b4";
}

.bi-6-circle::before {
  content: "\f7b5";
}

.bi-6-square-fill::before {
  content: "\f7b6";
}

.bi-6-square::before {
  content: "\f7b7";
}

.bi-7-circle-fill::before {
  content: "\f7ba";
}

.bi-7-circle::before {
  content: "\f7bb";
}

.bi-7-square-fill::before {
  content: "\f7bc";
}

.bi-7-square::before {
  content: "\f7bd";
}

.bi-8-circle-fill::before {
  content: "\f7c0";
}

.bi-8-circle::before {
  content: "\f7c1";
}

.bi-8-square-fill::before {
  content: "\f7c2";
}

.bi-8-square::before {
  content: "\f7c3";
}

.bi-9-circle-fill::before {
  content: "\f7c6";
}

.bi-9-circle::before {
  content: "\f7c7";
}

.bi-9-square-fill::before {
  content: "\f7c8";
}

.bi-9-square::before {
  content: "\f7c9";
}

.bi-airplane-engines-fill::before {
  content: "\f7ca";
}

.bi-airplane-engines::before {
  content: "\f7cb";
}

.bi-airplane-fill::before {
  content: "\f7cc";
}

.bi-airplane::before {
  content: "\f7cd";
}

.bi-alexa::before {
  content: "\f7ce";
}

.bi-alipay::before {
  content: "\f7cf";
}

.bi-android::before {
  content: "\f7d0";
}

.bi-android2::before {
  content: "\f7d1";
}

.bi-box-fill::before {
  content: "\f7d2";
}

.bi-box-seam-fill::before {
  content: "\f7d3";
}

.bi-browser-chrome::before {
  content: "\f7d4";
}

.bi-browser-edge::before {
  content: "\f7d5";
}

.bi-browser-firefox::before {
  content: "\f7d6";
}

.bi-browser-safari::before {
  content: "\f7d7";
}

.bi-c-circle-fill::before {
  content: "\f7da";
}

.bi-c-circle::before {
  content: "\f7db";
}

.bi-c-square-fill::before {
  content: "\f7dc";
}

.bi-c-square::before {
  content: "\f7dd";
}

.bi-capsule-pill::before {
  content: "\f7de";
}

.bi-capsule::before {
  content: "\f7df";
}

.bi-car-front-fill::before {
  content: "\f7e0";
}

.bi-car-front::before {
  content: "\f7e1";
}

.bi-cassette-fill::before {
  content: "\f7e2";
}

.bi-cassette::before {
  content: "\f7e3";
}

.bi-cc-circle-fill::before {
  content: "\f7e6";
}

.bi-cc-circle::before {
  content: "\f7e7";
}

.bi-cc-square-fill::before {
  content: "\f7e8";
}

.bi-cc-square::before {
  content: "\f7e9";
}

.bi-cup-hot-fill::before {
  content: "\f7ea";
}

.bi-cup-hot::before {
  content: "\f7eb";
}

.bi-currency-rupee::before {
  content: "\f7ec";
}

.bi-dropbox::before {
  content: "\f7ed";
}

.bi-escape::before {
  content: "\f7ee";
}

.bi-fast-forward-btn-fill::before {
  content: "\f7ef";
}

.bi-fast-forward-btn::before {
  content: "\f7f0";
}

.bi-fast-forward-circle-fill::before {
  content: "\f7f1";
}

.bi-fast-forward-circle::before {
  content: "\f7f2";
}

.bi-fast-forward-fill::before {
  content: "\f7f3";
}

.bi-fast-forward::before {
  content: "\f7f4";
}

.bi-filetype-sql::before {
  content: "\f7f5";
}

.bi-fire::before {
  content: "\f7f6";
}

.bi-google-play::before {
  content: "\f7f7";
}

.bi-h-circle-fill::before {
  content: "\f7fa";
}

.bi-h-circle::before {
  content: "\f7fb";
}

.bi-h-square-fill::before {
  content: "\f7fc";
}

.bi-h-square::before {
  content: "\f7fd";
}

.bi-indent::before {
  content: "\f7fe";
}

.bi-lungs-fill::before {
  content: "\f7ff";
}

.bi-lungs::before {
  content: "\f800";
}

.bi-microsoft-teams::before {
  content: "\f801";
}

.bi-p-circle-fill::before {
  content: "\f804";
}

.bi-p-circle::before {
  content: "\f805";
}

.bi-p-square-fill::before {
  content: "\f806";
}

.bi-p-square::before {
  content: "\f807";
}

.bi-pass-fill::before {
  content: "\f808";
}

.bi-pass::before {
  content: "\f809";
}

.bi-prescription::before {
  content: "\f80a";
}

.bi-prescription2::before {
  content: "\f80b";
}

.bi-r-circle-fill::before {
  content: "\f80e";
}

.bi-r-circle::before {
  content: "\f80f";
}

.bi-r-square-fill::before {
  content: "\f810";
}

.bi-r-square::before {
  content: "\f811";
}

.bi-repeat-1::before {
  content: "\f812";
}

.bi-repeat::before {
  content: "\f813";
}

.bi-rewind-btn-fill::before {
  content: "\f814";
}

.bi-rewind-btn::before {
  content: "\f815";
}

.bi-rewind-circle-fill::before {
  content: "\f816";
}

.bi-rewind-circle::before {
  content: "\f817";
}

.bi-rewind-fill::before {
  content: "\f818";
}

.bi-rewind::before {
  content: "\f819";
}

.bi-train-freight-front-fill::before {
  content: "\f81a";
}

.bi-train-freight-front::before {
  content: "\f81b";
}

.bi-train-front-fill::before {
  content: "\f81c";
}

.bi-train-front::before {
  content: "\f81d";
}

.bi-train-lightrail-front-fill::before {
  content: "\f81e";
}

.bi-train-lightrail-front::before {
  content: "\f81f";
}

.bi-truck-front-fill::before {
  content: "\f820";
}

.bi-truck-front::before {
  content: "\f821";
}

.bi-ubuntu::before {
  content: "\f822";
}

.bi-unindent::before {
  content: "\f823";
}

.bi-unity::before {
  content: "\f824";
}

.bi-universal-access-circle::before {
  content: "\f825";
}

.bi-universal-access::before {
  content: "\f826";
}

.bi-virus::before {
  content: "\f827";
}

.bi-virus2::before {
  content: "\f828";
}

.bi-wechat::before {
  content: "\f829";
}

.bi-yelp::before {
  content: "\f82a";
}

.bi-sign-stop-fill::before {
  content: "\f82b";
}

.bi-sign-stop-lights-fill::before {
  content: "\f82c";
}

.bi-sign-stop-lights::before {
  content: "\f82d";
}

.bi-sign-stop::before {
  content: "\f82e";
}

.bi-sign-turn-left-fill::before {
  content: "\f82f";
}

.bi-sign-turn-left::before {
  content: "\f830";
}

.bi-sign-turn-right-fill::before {
  content: "\f831";
}

.bi-sign-turn-right::before {
  content: "\f832";
}

.bi-sign-turn-slight-left-fill::before {
  content: "\f833";
}

.bi-sign-turn-slight-left::before {
  content: "\f834";
}

.bi-sign-turn-slight-right-fill::before {
  content: "\f835";
}

.bi-sign-turn-slight-right::before {
  content: "\f836";
}

.bi-sign-yield-fill::before {
  content: "\f837";
}

.bi-sign-yield::before {
  content: "\f838";
}

.bi-ev-station-fill::before {
  content: "\f839";
}

.bi-ev-station::before {
  content: "\f83a";
}

.bi-fuel-pump-diesel-fill::before {
  content: "\f83b";
}

.bi-fuel-pump-diesel::before {
  content: "\f83c";
}

.bi-fuel-pump-fill::before {
  content: "\f83d";
}

.bi-fuel-pump::before {
  content: "\f83e";
}

.bi-0-circle-fill::before {
  content: "\f83f";
}

.bi-0-circle::before {
  content: "\f840";
}

.bi-0-square-fill::before {
  content: "\f841";
}

.bi-0-square::before {
  content: "\f842";
}

.bi-rocket-fill::before {
  content: "\f843";
}

.bi-rocket-takeoff-fill::before {
  content: "\f844";
}

.bi-rocket-takeoff::before {
  content: "\f845";
}

.bi-rocket::before {
  content: "\f846";
}

.bi-stripe::before {
  content: "\f847";
}

.bi-subscript::before {
  content: "\f848";
}

.bi-superscript::before {
  content: "\f849";
}

.bi-trello::before {
  content: "\f84a";
}

.bi-envelope-at-fill::before {
  content: "\f84b";
}

.bi-envelope-at::before {
  content: "\f84c";
}

.bi-regex::before {
  content: "\f84d";
}

.bi-text-wrap::before {
  content: "\f84e";
}

.bi-sign-dead-end-fill::before {
  content: "\f84f";
}

.bi-sign-dead-end::before {
  content: "\f850";
}

.bi-sign-do-not-enter-fill::before {
  content: "\f851";
}

.bi-sign-do-not-enter::before {
  content: "\f852";
}

.bi-sign-intersection-fill::before {
  content: "\f853";
}

.bi-sign-intersection-side-fill::before {
  content: "\f854";
}

.bi-sign-intersection-side::before {
  content: "\f855";
}

.bi-sign-intersection-t-fill::before {
  content: "\f856";
}

.bi-sign-intersection-t::before {
  content: "\f857";
}

.bi-sign-intersection-y-fill::before {
  content: "\f858";
}

.bi-sign-intersection-y::before {
  content: "\f859";
}

.bi-sign-intersection::before {
  content: "\f85a";
}

.bi-sign-merge-left-fill::before {
  content: "\f85b";
}

.bi-sign-merge-left::before {
  content: "\f85c";
}

.bi-sign-merge-right-fill::before {
  content: "\f85d";
}

.bi-sign-merge-right::before {
  content: "\f85e";
}

.bi-sign-no-left-turn-fill::before {
  content: "\f85f";
}

.bi-sign-no-left-turn::before {
  content: "\f860";
}

.bi-sign-no-parking-fill::before {
  content: "\f861";
}

.bi-sign-no-parking::before {
  content: "\f862";
}

.bi-sign-no-right-turn-fill::before {
  content: "\f863";
}

.bi-sign-no-right-turn::before {
  content: "\f864";
}

.bi-sign-railroad-fill::before {
  content: "\f865";
}

.bi-sign-railroad::before {
  content: "\f866";
}

.bi-building-add::before {
  content: "\f867";
}

.bi-building-check::before {
  content: "\f868";
}

.bi-building-dash::before {
  content: "\f869";
}

.bi-building-down::before {
  content: "\f86a";
}

.bi-building-exclamation::before {
  content: "\f86b";
}

.bi-building-fill-add::before {
  content: "\f86c";
}

.bi-building-fill-check::before {
  content: "\f86d";
}

.bi-building-fill-dash::before {
  content: "\f86e";
}

.bi-building-fill-down::before {
  content: "\f86f";
}

.bi-building-fill-exclamation::before {
  content: "\f870";
}

.bi-building-fill-gear::before {
  content: "\f871";
}

.bi-building-fill-lock::before {
  content: "\f872";
}

.bi-building-fill-slash::before {
  content: "\f873";
}

.bi-building-fill-up::before {
  content: "\f874";
}

.bi-building-fill-x::before {
  content: "\f875";
}

.bi-building-fill::before {
  content: "\f876";
}

.bi-building-gear::before {
  content: "\f877";
}

.bi-building-lock::before {
  content: "\f878";
}

.bi-building-slash::before {
  content: "\f879";
}

.bi-building-up::before {
  content: "\f87a";
}

.bi-building-x::before {
  content: "\f87b";
}

.bi-buildings-fill::before {
  content: "\f87c";
}

.bi-buildings::before {
  content: "\f87d";
}

.bi-bus-front-fill::before {
  content: "\f87e";
}

.bi-bus-front::before {
  content: "\f87f";
}

.bi-ev-front-fill::before {
  content: "\f880";
}

.bi-ev-front::before {
  content: "\f881";
}

.bi-globe-americas::before {
  content: "\f882";
}

.bi-globe-asia-australia::before {
  content: "\f883";
}

.bi-globe-central-south-asia::before {
  content: "\f884";
}

.bi-globe-europe-africa::before {
  content: "\f885";
}

.bi-house-add-fill::before {
  content: "\f886";
}

.bi-house-add::before {
  content: "\f887";
}

.bi-house-check-fill::before {
  content: "\f888";
}

.bi-house-check::before {
  content: "\f889";
}

.bi-house-dash-fill::before {
  content: "\f88a";
}

.bi-house-dash::before {
  content: "\f88b";
}

.bi-house-down-fill::before {
  content: "\f88c";
}

.bi-house-down::before {
  content: "\f88d";
}

.bi-house-exclamation-fill::before {
  content: "\f88e";
}

.bi-house-exclamation::before {
  content: "\f88f";
}

.bi-house-gear-fill::before {
  content: "\f890";
}

.bi-house-gear::before {
  content: "\f891";
}

.bi-house-lock-fill::before {
  content: "\f892";
}

.bi-house-lock::before {
  content: "\f893";
}

.bi-house-slash-fill::before {
  content: "\f894";
}

.bi-house-slash::before {
  content: "\f895";
}

.bi-house-up-fill::before {
  content: "\f896";
}

.bi-house-up::before {
  content: "\f897";
}

.bi-house-x-fill::before {
  content: "\f898";
}

.bi-house-x::before {
  content: "\f899";
}

.bi-person-add::before {
  content: "\f89a";
}

.bi-person-down::before {
  content: "\f89b";
}

.bi-person-exclamation::before {
  content: "\f89c";
}

.bi-person-fill-add::before {
  content: "\f89d";
}

.bi-person-fill-check::before {
  content: "\f89e";
}

.bi-person-fill-dash::before {
  content: "\f89f";
}

.bi-person-fill-down::before {
  content: "\f8a0";
}

.bi-person-fill-exclamation::before {
  content: "\f8a1";
}

.bi-person-fill-gear::before {
  content: "\f8a2";
}

.bi-person-fill-lock::before {
  content: "\f8a3";
}

.bi-person-fill-slash::before {
  content: "\f8a4";
}

.bi-person-fill-up::before {
  content: "\f8a5";
}

.bi-person-fill-x::before {
  content: "\f8a6";
}

.bi-person-gear::before {
  content: "\f8a7";
}

.bi-person-lock::before {
  content: "\f8a8";
}

.bi-person-slash::before {
  content: "\f8a9";
}

.bi-person-up::before {
  content: "\f8aa";
}

.bi-scooter::before {
  content: "\f8ab";
}

.bi-taxi-front-fill::before {
  content: "\f8ac";
}

.bi-taxi-front::before {
  content: "\f8ad";
}

.bi-amd::before {
  content: "\f8ae";
}

.bi-database-add::before {
  content: "\f8af";
}

.bi-database-check::before {
  content: "\f8b0";
}

.bi-database-dash::before {
  content: "\f8b1";
}

.bi-database-down::before {
  content: "\f8b2";
}

.bi-database-exclamation::before {
  content: "\f8b3";
}

.bi-database-fill-add::before {
  content: "\f8b4";
}

.bi-database-fill-check::before {
  content: "\f8b5";
}

.bi-database-fill-dash::before {
  content: "\f8b6";
}

.bi-database-fill-down::before {
  content: "\f8b7";
}

.bi-database-fill-exclamation::before {
  content: "\f8b8";
}

.bi-database-fill-gear::before {
  content: "\f8b9";
}

.bi-database-fill-lock::before {
  content: "\f8ba";
}

.bi-database-fill-slash::before {
  content: "\f8bb";
}

.bi-database-fill-up::before {
  content: "\f8bc";
}

.bi-database-fill-x::before {
  content: "\f8bd";
}

.bi-database-fill::before {
  content: "\f8be";
}

.bi-database-gear::before {
  content: "\f8bf";
}

.bi-database-lock::before {
  content: "\f8c0";
}

.bi-database-slash::before {
  content: "\f8c1";
}

.bi-database-up::before {
  content: "\f8c2";
}

.bi-database-x::before {
  content: "\f8c3";
}

.bi-database::before {
  content: "\f8c4";
}

.bi-houses-fill::before {
  content: "\f8c5";
}

.bi-houses::before {
  content: "\f8c6";
}

.bi-nvidia::before {
  content: "\f8c7";
}

.bi-person-vcard-fill::before {
  content: "\f8c8";
}

.bi-person-vcard::before {
  content: "\f8c9";
}

.bi-sina-weibo::before {
  content: "\f8ca";
}

.bi-tencent-qq::before {
  content: "\f8cb";
}

.bi-wikipedia::before {
  content: "\f8cc";
}

.bi-alphabet-uppercase::before {
  content: "\f2a5";
}

.bi-alphabet::before {
  content: "\f68a";
}

.bi-amazon::before {
  content: "\f68d";
}

.bi-arrows-collapse-vertical::before {
  content: "\f690";
}

.bi-arrows-expand-vertical::before {
  content: "\f695";
}

.bi-arrows-vertical::before {
  content: "\f698";
}

.bi-arrows::before {
  content: "\f6a2";
}

.bi-ban-fill::before {
  content: "\f6a3";
}

.bi-ban::before {
  content: "\f6b6";
}

.bi-bing::before {
  content: "\f6c2";
}

.bi-cake::before {
  content: "\f6e0";
}

.bi-cake2::before {
  content: "\f6ed";
}

.bi-cookie::before {
  content: "\f6ee";
}

.bi-copy::before {
  content: "\f759";
}

.bi-crosshair::before {
  content: "\f769";
}

.bi-crosshair2::before {
  content: "\f794";
}

.bi-emoji-astonished-fill::before {
  content: "\f795";
}

.bi-emoji-astonished::before {
  content: "\f79a";
}

.bi-emoji-grimace-fill::before {
  content: "\f79b";
}

.bi-emoji-grimace::before {
  content: "\f7a0";
}

.bi-emoji-grin-fill::before {
  content: "\f7a1";
}

.bi-emoji-grin::before {
  content: "\f7a6";
}

.bi-emoji-surprise-fill::before {
  content: "\f7a7";
}

.bi-emoji-surprise::before {
  content: "\f7ac";
}

.bi-emoji-tear-fill::before {
  content: "\f7ad";
}

.bi-emoji-tear::before {
  content: "\f7b2";
}

.bi-envelope-arrow-down-fill::before {
  content: "\f7b3";
}

.bi-envelope-arrow-down::before {
  content: "\f7b8";
}

.bi-envelope-arrow-up-fill::before {
  content: "\f7b9";
}

.bi-envelope-arrow-up::before {
  content: "\f7be";
}

.bi-feather::before {
  content: "\f7bf";
}

.bi-feather2::before {
  content: "\f7c4";
}

.bi-floppy-fill::before {
  content: "\f7c5";
}

.bi-floppy::before {
  content: "\f7d8";
}

.bi-floppy2-fill::before {
  content: "\f7d9";
}

.bi-floppy2::before {
  content: "\f7e4";
}

.bi-gitlab::before {
  content: "\f7e5";
}

.bi-highlighter::before {
  content: "\f7f8";
}

.bi-marker-tip::before {
  content: "\f802";
}

.bi-nvme-fill::before {
  content: "\f803";
}

.bi-nvme::before {
  content: "\f80c";
}

.bi-opencollective::before {
  content: "\f80d";
}

.bi-pci-card-network::before {
  content: "\f8cd";
}

.bi-pci-card-sound::before {
  content: "\f8ce";
}

.bi-radar::before {
  content: "\f8cf";
}

.bi-send-arrow-down-fill::before {
  content: "\f8d0";
}

.bi-send-arrow-down::before {
  content: "\f8d1";
}

.bi-send-arrow-up-fill::before {
  content: "\f8d2";
}

.bi-send-arrow-up::before {
  content: "\f8d3";
}

.bi-sim-slash-fill::before {
  content: "\f8d4";
}

.bi-sim-slash::before {
  content: "\f8d5";
}

.bi-sourceforge::before {
  content: "\f8d6";
}

.bi-substack::before {
  content: "\f8d7";
}

.bi-threads-fill::before {
  content: "\f8d8";
}

.bi-threads::before {
  content: "\f8d9";
}

.bi-transparency::before {
  content: "\f8da";
}

.bi-twitter-x::before {
  content: "\f8db";
}

.bi-type-h4::before {
  content: "\f8dc";
}

.bi-type-h5::before {
  content: "\f8dd";
}

.bi-type-h6::before {
  content: "\f8de";
}

.bi-backpack-fill::before {
  content: "\f8df";
}

.bi-backpack::before {
  content: "\f8e0";
}

.bi-backpack2-fill::before {
  content: "\f8e1";
}

.bi-backpack2::before {
  content: "\f8e2";
}

.bi-backpack3-fill::before {
  content: "\f8e3";
}

.bi-backpack3::before {
  content: "\f8e4";
}

.bi-backpack4-fill::before {
  content: "\f8e5";
}

.bi-backpack4::before {
  content: "\f8e6";
}

.bi-brilliance::before {
  content: "\f8e7";
}

.bi-cake-fill::before {
  content: "\f8e8";
}

.bi-cake2-fill::before {
  content: "\f8e9";
}

.bi-duffle-fill::before {
  content: "\f8ea";
}

.bi-duffle::before {
  content: "\f8eb";
}

.bi-exposure::before {
  content: "\f8ec";
}

.bi-gender-neuter::before {
  content: "\f8ed";
}

.bi-highlights::before {
  content: "\f8ee";
}

.bi-luggage-fill::before {
  content: "\f8ef";
}

.bi-luggage::before {
  content: "\f8f0";
}

.bi-mailbox-flag::before {
  content: "\f8f1";
}

.bi-mailbox2-flag::before {
  content: "\f8f2";
}

.bi-noise-reduction::before {
  content: "\f8f3";
}

.bi-passport-fill::before {
  content: "\f8f4";
}

.bi-passport::before {
  content: "\f8f5";
}

.bi-person-arms-up::before {
  content: "\f8f6";
}

.bi-person-raised-hand::before {
  content: "\f8f7";
}

.bi-person-standing-dress::before {
  content: "\f8f8";
}

.bi-person-standing::before {
  content: "\f8f9";
}

.bi-person-walking::before {
  content: "\f8fa";
}

.bi-person-wheelchair::before {
  content: "\f8fb";
}

.bi-shadows::before {
  content: "\f8fc";
}

.bi-suitcase-fill::before {
  content: "\f8fd";
}

.bi-suitcase-lg-fill::before {
  content: "\f8fe";
}

.bi-suitcase-lg::before {
  content: "\f8ff";
}

.bi-suitcase::before {
  content: "豈";
}

.bi-suitcase2-fill::before {
  content: "更";
}

.bi-suitcase2::before {
  content: "車";
}

.bi-vignette::before {
  content: "賈";
}

.bi-bluesky::before {
  content: "\f7f9";
}

.bi-tux::before {
  content: "滑";
}

.bi-beaker-fill::before {
  content: "串";
}

.bi-beaker::before {
  content: "句";
}

.bi-flask-fill::before {
  content: "龜";
}

.bi-flask-florence-fill::before {
  content: "龜";
}

.bi-flask-florence::before {
  content: "契";
}

.bi-flask::before {
  content: "金";
}

.bi-leaf-fill::before {
  content: "喇";
}

.bi-leaf::before {
  content: "奈";
}

.bi-measuring-cup-fill::before {
  content: "懶";
}

.bi-measuring-cup::before {
  content: "癩";
}

.bi-unlock2-fill::before {
  content: "羅";
}

.bi-unlock2::before {
  content: "蘿";
}

.bi-battery-low::before {
  content: "螺";
}

.bi-anthropic::before {
  content: "裸";
}

.bi-apple-music::before {
  content: "邏";
}

.bi-claude::before {
  content: "樂";
}

.bi-openai::before {
  content: "洛";
}

.bi-perplexity::before {
  content: "烙";
}

.bi-css::before {
  content: "珞";
}

.bi-javascript::before {
  content: "落";
}

.bi-typescript::before {
  content: "酪";
}

.bi-fork-knife::before {
  content: "駱";
}

.bi-globe-americas-fill::before {
  content: "亂";
}

.bi-globe-asia-australia-fill::before {
  content: "卵";
}

.bi-globe-central-south-asia-fill::before {
  content: "欄";
}

.bi-globe-europe-africa-fill::before {
  content: "爛";
}

input[type=number] {
  -moz-appearance: textfield;
  -webkit-appearance: textfield;
          appearance: textfield;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

@font-face {
  font-family: "Montserrat";
  src: url(/assets/dist/fonts/Montserrat.woff2?5028c63f6a70ab0cf7cba9015ae04154) format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
:root {
  --brand: #3753ff;
  --ink: #132342;
  --muted: #53627b;
  --caption: #606f86;
  --line: #e6eaf2;
  --wash: #f6f8fd;
  --focus-ring: #89a0ff;
  --anchor-offset: 96px;
  --font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", "Hiragino Sans GB", sans-serif;
  --font-brand: "Montserrat", var(--font-sans);
  --font-mono: "SFMono-Regular", Consolas, "Liberation Mono", "PingFang SC", "Microsoft YaHei", monospace;
  --text-caption: .75rem;
  --text-small: .875rem;
  --text-card: .9375rem;
  --text-body: 1rem;
  --text-lead: 1.125rem;
  --title-section: clamp(1.875rem, 3vw, 2.625rem);
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  scroll-padding-top: var(--anchor-offset);
}

body {
  margin: 0;
  color: var(--ink);
  font: var(--text-body)/1.75 var(--font-sans);
  background: #fff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

button,
input,
select,
textarea {
  font: inherit;
}

button,
a,
input,
select,
textarea {
  -webkit-tap-highlight-color: transparent;
}

a {
  color: inherit;
  text-decoration: none;
}

button {
  cursor: pointer;
}

button:disabled {
  cursor: wait;
  opacity: 0.65;
}

img, svg {
  max-width: 100%;
}

h1, h2, h3, h4, p {
  margin: 0;
}

h1, h2, h3 {
  line-height: 1.35;
  letter-spacing: -0.025em;
}

[hidden] {
  display: none !important;
}

code,
pre {
  font-family: "JetBrains Mono", "Fira Code", "Cascadia Code", Consolas, Monaco, monospace !important;
}

::-moz-selection {
  color: #fff;
  background: var(--brand);
}

::selection {
  color: #fff;
  background: var(--brand);
}

@media (max-width: 1100px) {
  :root {
    --anchor-offset: 88px;
  }
}
.brand,
.scene-platform strong,
.arch-platform-title h3,
.eyebrow,
.small-label,
.hero-kicker,
.section-kicker,
.cta-kicker,
.product-meta,
.section-index,
.detail-english-subtitle,
.content-card-meta,
.footer-brand-kicker,
.footer-action-heading p,
.footer-platform-access p {
  font-family: var(--font-brand);
}

.text-blue {
  color: var(--brand);
}

.bg-gray {
  background: rgb(241, 241, 241) !important;
}

@media screen and (max-width: 1680px) and (min-width: 1200px) {
  .site-navbar > .container {
    max-width: 1300px !important;
  }
}
@media screen and (min-width: 1680px) {
  .site-navbar > .container {
    max-width: 1450px !important;
  }
}
.site-navbar {
  position: fixed;
  width: 100%;
  background-color: white;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030;
}
.site-navbar .bi-caret-down-fill {
  font-size: 12px;
}
.site-navbar .dropdown .dropdown-menu {
  min-width: -moz-max-content;
  min-width: max-content;
  width: 100%;
}
.site-navbar .dropdown .dropdown-menu a {
  color: #000 !important;
}
.site-navbar .dropdown {
  position: unset;
}
.site-navbar .dropdown .language {
  right: 0px;
  top: 50px;
}
.site-navbar .dropdown .search {
  border-radius: unset;
  left: unset;
  right: 0px;
  transform: unset;
  top: 70px;
}
.site-navbar .dropdown .dropdown-item {
  width: auto;
}
.site-navbar .dropdown:hover .dropdown-menu-level-1 {
  display: flex;
  padding: 30px 40px;
  top: 72px;
}
.site-navbar .dropdown:hover .dropdown-menu-level-1 > li:not(:last-child) {
  padding-right: 80px;
}
.site-navbar .dropdown:hover .dropdown-menu-level-1 > li > a {
  position: relative;
}
.site-navbar .dropdown:hover .dropdown-menu-level-1 > li > a::after {
  content: "";
  display: inline-block;
  border: 1px solid #3753ff;
  height: 1em;
  left: 0px;
  top: 14px;
  position: absolute;
  margin-right: 5px;
}
.site-navbar .dropdown:hover .dropdown-menu-level-1 .dropdown-custom-level-2 {
  position: relative;
}
.site-navbar .dropdown:hover .dropdown-menu-level-1 .dropdown-custom-level-2 .dropdown-menu-level-2 {
  display: block;
  padding: 0px;
  position: inherit;
}
.site-navbar .dropdown-menu {
  background-color: white;
  color: black !important;
  position: absolute;
  left: 50%;
  transform: translate(-50%, 0%);
}
.site-navbar .after-unset::after {
  content: unset;
}
.site-navbar .flex-wrap-inherit {
  flex-wrap: inherit;
}

.site-navbar .navbar-nav .nav-link {
  color: black !important;
}
.site-navbar .navbar-nav .nav-link:hover,
.site-navbar .navbar-nav .nav-link:focus,
.site-navbar .navbar-nav .active > .nav-link {
  color: #3753ff !important;
}
.site-navbar .navbar-nav > li {
  padding: 1rem 0;
}

.custom-nav-logo {
  height: 38px;
}

.card {
  border-radius: 8px;
  transition: all 0.3s ease;
  transform: translateY(0);
  box-shadow: 0px 3px 5px 1px rgba(18, 32, 56, 0.05);
}
.card:hover {
  box-shadow: 0px 1px 15px 0 rgba(0, 0, 0, 0.14);
}

.line {
  border-top: 2px solid #ffffff;
  width: 80px;
  height: 2px;
}

.bg-custom {
  padding: unset;
  background: linear-gradient(to right, rgb(29.568627451%, 39.4290196078%, 100%), #a16ae8 100%);
}

.mask {
  background: rgba(0, 0, 0, 0.22);
}

.btn-lg {
  font-size: 14px;
  padding-left: 25px;
  padding-right: 25px;
  box-shadow: 0px 12px 20px 0px rgba(95, 157, 255, 0.22);
}

.gray_bg {
  background-color: #f6fafe;
}

.skip-link {
  position: fixed;
  top: 10px;
  left: 12px;
  z-index: 2000;
  padding: 10px 14px;
  color: #fff;
  border-radius: 4px;
  background: var(--ink);
  transform: translateY(-160%);
  transition: transform 0.2s ease;
}
.skip-link:focus {
  color: #fff;
  transform: translateY(0);
}

:focus-visible {
  outline: 3px solid var(--focus-ring);
  outline-offset: 5px;
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto !important;
  }
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
@media (max-width: 575.98px) {
  .row.g-5 {
    --bs-gutter-x: 1.5rem;
  }
}
.site-navbar ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

@media only screen and (max-width: 991px) {
  .site-navbar {
    background-color: #000;
  }
  .site-navbar .navbar-nav > li {
    padding: 0 0;
  }
  .site-navbar .dropdown {
    position: relative !important;
  }
  .site-navbar .dropdown .dropdown-item {
    width: auto;
  }
  .site-navbar .dropdown:hover .dropdown-menu-level-1 {
    display: block;
    padding: unset;
    top: 72px;
  }
  .site-navbar .dropdown:hover .dropdown-menu-level-1 > li:not(:last-child) {
    padding-right: unset;
  }
  .site-navbar .dropdown:hover .dropdown-menu-level-1 > li > a {
    position: relative;
    color: white !important;
  }
  .site-navbar .dropdown:hover .dropdown-menu-level-1 > li > a::after {
    content: unset;
  }
  .site-navbar .dropdown:hover .dropdown-menu-level-1 .dropdown-custom-level-2 {
    position: relative;
  }
  .site-navbar .dropdown:hover .dropdown-menu-level-1 .dropdown-custom-level-2 .dropdown-menu-level-2 {
    display: block;
    padding: 0px;
    position: inherit;
  }
  .site-navbar .dropdown:hover .dropdown-menu-level-1 .dropdown-custom-level-2 .dropdown-menu-level-2 a {
    color: white !important;
  }
  .site-navbar .dropdown-menu {
    background-color: unset;
    color: white;
    position: absolute;
    left: unset;
    transform: unset;
  }
  .base-client-cases .swiper-button-prev {
    left: 34.5% !important;
  }
}
.site-navbar {
  --nav-primary: var(--brand);
  --nav-secondary: #5B7CFF;
  --nav-cyan: #00D4FF;
  --nav-dark: #0F172A;
  --nav-gray: #8A94A6;
  min-height: 76px;
  border-bottom: 1px solid rgba(55, 83, 255, 0.08);
  background: rgba(255, 255, 255, 0.96);
  box-shadow: none;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  transition: transform 0.32s ease, box-shadow 0.32s ease, background-color 0.32s ease;
}
.site-navbar.nav-scrolled {
  background: rgba(255, 255, 255, 0.98);
  box-shadow: 0 10px 32px rgba(15, 23, 42, 0.08);
}
.site-navbar.nav-hidden {
  transform: translateY(-100%);
}
.site-navbar > .container > .row {
  width: 100%;
  margin: 0;
}
.site-navbar > .container > .row > div {
  padding-right: 0;
  padding-left: 0;
}
.site-navbar .navbar-brand {
  flex: 0 0 auto;
  padding: 0;
  margin-top: 0;
  margin-bottom: 0;
}
.site-navbar .custom-nav-logo {
  width: auto;
  height: 38px;
  display: block;
}
.site-navbar .navbar-collapse {
  min-height: 76px;
}
.site-navbar #main-menu {
  height: 76px;
  align-items: stretch;
  gap: 2px;
}
.site-navbar .navbar-nav > li {
  position: relative;
  padding: 0;
  display: flex;
  align-items: stretch;
}
.site-navbar .navbar-nav .nav-link {
  position: relative;
  padding: 27px 14px !important;
  display: flex;
  align-items: center;
  color: var(--nav-dark) !important;
  font-size: 14px;
  line-height: 22px;
  font-weight: 500;
  white-space: nowrap;
  transition: color 0.24s ease;
}
.site-navbar .menu-item-level-1 > .nav-link::before,
.site-navbar .dropdown-custom-level-1 > .nav-link::before {
  content: "";
  position: absolute;
  right: 14px;
  bottom: 0;
  left: 14px;
  height: 3px;
  border-radius: 3px 3px 0 0;
  background: linear-gradient(90deg, var(--nav-primary), var(--nav-cyan));
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.24s ease;
}
.site-navbar .navbar-nav .nav-link:hover,
.site-navbar .navbar-nav .nav-link:focus,
.site-navbar .navbar-nav .nav-link.active,
.site-navbar .navbar-nav .active > .nav-link {
  color: var(--nav-primary) !important;
}
.site-navbar .menu-item-level-1 > .nav-link:hover::before,
.site-navbar .menu-item-level-1 > .nav-link.active::before,
.site-navbar .dropdown-custom-level-1 > .nav-link:hover::before,
.site-navbar .dropdown-custom-level-1 > .nav-link.active::before,
.site-navbar .dropdown-custom-level-1.show > .nav-link::before {
  transform: scaleX(1);
}
.site-navbar .dropdown-toggle::after {
  margin-left: 7px;
  border-top-width: 4px;
  border-right-width: 4px;
  border-left-width: 4px;
  transition: transform 0.22s ease;
}
.site-navbar .dropdown.show > .dropdown-toggle::after {
  transform: rotate(180deg);
}
.site-navbar .dropdown-menu {
  border: 1px solid rgba(55, 83, 255, 0.1) !important;
  border-radius: 0 0 16px 16px !important;
  background: rgba(255, 255, 255, 0.99);
  box-shadow: 0 24px 60px rgba(15, 23, 42, 0.14);
}
.site-navbar .navbar-nav .dropdown-menu-level-1 {
  top: 75px !important;
  left: 0 !important;
  width: 280px !important;
  min-width: 280px;
  padding: 10px !important;
  gap: 0;
  border-radius: 0 0 12px 12px !important;
  transform: none !important;
}
.site-navbar .navbar-nav .dropdown-menu-level-1.show {
  display: block;
}
.site-navbar .navbar-nav .dropdown-menu-level-1 > li,
.site-navbar .navbar-nav .dropdown-menu-level-1 > li:not(:last-child) {
  width: 100%;
  padding: 0 !important;
  display: block;
}
.site-navbar .navbar-nav .dropdown-menu-level-1 > li + li {
  border-top: 1px solid #edf0f6;
}
.site-navbar .navbar-nav .dropdown-menu-level-1 > li > a.nav-link {
  min-height: 44px;
  padding: 10px 13px !important;
  display: flex;
  align-items: center;
  color: #344055 !important;
  border-radius: 7px;
  font-size: 13px;
  line-height: 1.5;
  font-weight: 500;
  white-space: normal;
  transition: color 0.2s ease, background-color 0.2s ease, padding-left 0.2s ease;
}
.site-navbar .navbar-nav .dropdown-menu-level-1 > li > a.nav-link::after {
  content: none !important;
  display: none !important;
}
.site-navbar .navbar-nav .dropdown-menu-level-1 > li > a.nav-link:hover, .site-navbar .navbar-nav .dropdown-menu-level-1 > li > a.nav-link:focus, .site-navbar .navbar-nav .dropdown-menu-level-1 > li > a.nav-link.active {
  padding-left: 17px !important;
  color: var(--nav-primary) !important;
  background: #f2f5ff;
}
.site-navbar .navbar-nav .dropdown-menu-level-1 > li.nav-child-item {
  border-top: 0;
}
.site-navbar .navbar-nav .dropdown-menu-level-1 > li > a.nav-link-child {
  min-height: 38px;
  padding: 7px 13px 7px 28px !important;
  color: #667085 !important;
  background: #f8f9fc;
  font-size: 12px;
}
.site-navbar .navbar-nav .dropdown-menu-level-1 > li > a.nav-link-child i {
  margin-right: 8px;
  color: var(--nav-primary);
  font-size: 12px;
}
.site-navbar .navbar-nav .dropdown-menu-level-1 > li > a.nav-link-child:hover, .site-navbar .navbar-nav .dropdown-menu-level-1 > li > a.nav-link-child:focus, .site-navbar .navbar-nav .dropdown-menu-level-1 > li > a.nav-link-child.active {
  padding-left: 32px !important;
}
.site-navbar .dropdown:hover > .dropdown-menu-level-1 {
  display: block;
  padding: 10px !important;
}
.site-navbar .dropdown-menu-level-2 {
  min-width: 150px;
  margin: 0;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent;
  box-shadow: none;
}
.site-navbar .dropdown-menu-level-2 a {
  padding: 7px 0 !important;
  color: #667085 !important;
  font-size: 13px;
  font-weight: 400;
  transition: color 0.2s ease, transform 0.2s ease;
}
.site-navbar .dropdown-menu-level-2 a:hover {
  color: var(--nav-primary) !important;
  transform: translateX(3px);
}
.site-navbar .nav-utilities {
  flex: 0 0 auto;
  margin-left: 18px;
  align-items: center;
  gap: 8px;
}
.site-navbar .nav-icon-button,
.site-navbar .nav-language-button {
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--nav-dark);
  border: 1px solid rgba(55, 83, 255, 0.1);
  border-radius: 9px;
  background: #f8faff;
  transition: border-color 0.22s ease, color 0.22s ease, background-color 0.22s ease;
}
.site-navbar .nav-icon-button:hover, .site-navbar .nav-icon-button[aria-expanded=true],
.site-navbar .nav-language-button:hover,
.site-navbar .nav-language-button[aria-expanded=true] {
  color: var(--nav-primary);
  border-color: rgba(55, 83, 255, 0.24);
  background: #f1f4ff;
}
.site-navbar .nav-icon-button {
  width: 40px;
  padding: 0;
  font-size: 15px;
}
.site-navbar .nav-language-button {
  min-width: 86px;
  padding: 0 12px;
  gap: 7px;
  font-size: 12px;
}
.site-navbar .nav-language-button::after {
  margin-left: 1px;
}
.site-navbar .nav-contact-cta {
  height: 40px;
  padding: 0 17px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  color: #fff !important;
  border: 1px solid var(--nav-primary);
  border-radius: 9px;
  background: linear-gradient(105deg, var(--nav-secondary), var(--nav-primary));
  box-shadow: 0 10px 22px rgba(55, 83, 255, 0.2);
  font-size: 13px;
  font-weight: 600;
  white-space: nowrap;
  transition: transform 0.22s ease, box-shadow 0.22s ease;
}
.site-navbar .nav-contact-cta:hover {
  color: #fff !important;
  box-shadow: 0 14px 28px rgba(55, 83, 255, 0.3);
  transform: translateY(-2px);
}
.site-navbar .nav-support-link {
  height: 40px;
  padding: 0 12px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--nav-dark);
  border: 1px solid rgba(55, 83, 255, 0.12);
  border-radius: 9px;
  background: #f8faff;
  font-size: 12px;
  font-weight: 600;
  white-space: nowrap;
}
.site-navbar .nav-support-link:hover {
  color: var(--nav-primary);
  border-color: rgba(55, 83, 255, 0.28);
}
.site-navbar .nav-search-panel,
.site-navbar .nav-language-panel {
  top: calc(100% + 10px) !important;
  right: 0 !important;
  left: auto !important;
  transform: none !important;
  border-radius: 12px !important;
}
.site-navbar .nav-search-panel {
  width: 380px !important;
  min-width: 380px !important;
}
.site-navbar .nav-search-panel .form-control {
  min-height: 42px;
  border: 1px solid rgba(55, 83, 255, 0.15);
  border-radius: 8px 0 0 8px;
  font-size: 13px;
}
.site-navbar .nav-search-panel .form-control:focus {
  border-color: var(--nav-primary);
  box-shadow: 0 0 0 3px rgba(55, 83, 255, 0.08);
}
.site-navbar .nav-search-panel .btn {
  min-width: 72px;
  border-radius: 0 8px 8px 0;
  background: var(--nav-primary);
}
.site-navbar .nav-language-panel {
  width: 136px !important;
  min-width: 136px !important;
  padding: 7px;
}
.site-navbar .nav-language-panel .dropdown-item {
  padding: 9px 12px;
  color: var(--nav-dark) !important;
  border-radius: 7px;
  font-size: 12px;
  text-align: left;
}
.site-navbar .nav-language-panel .dropdown-item:hover, .site-navbar .nav-language-panel .dropdown-item.active {
  color: var(--nav-primary) !important;
  background: #f1f4ff;
}
.site-navbar .nav-mobile-actions {
  padding-top: 18px;
}

@media (max-width: 1199.98px) and (min-width: 992px) {
  .site-navbar .navbar-nav .nav-link {
    padding-right: 10px !important;
    padding-left: 10px !important;
    font-size: 13px;
  }
  .site-navbar .nav-utilities {
    margin-left: 8px;
    gap: 5px;
  }
  .site-navbar .nav-language-button {
    min-width: 40px;
  }
  .site-navbar .nav-language-button span {
    display: none;
  }
  .site-navbar .nav-contact-cta {
    padding: 0 12px;
  }
}
@media (max-width: 991.98px) {
  .site-navbar {
    min-height: 64px;
    background: #fff !important;
    box-shadow: 0 1px 0 rgba(55, 83, 255, 0.08);
  }
  .site-navbar .custom-nav-logo {
    height: 34px;
  }
  .site-navbar .navbar-toggler {
    width: 42px;
    height: 42px;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--nav-dark);
    border: 1px solid rgba(55, 83, 255, 0.14);
    border-radius: 9px;
    background: #f8faff;
  }
  .site-navbar .navbar-toggler i {
    color: var(--nav-dark) !important;
    font-size: 22px;
  }
  .site-navbar .navbar-toggler:focus {
    box-shadow: 0 0 0 3px rgba(55, 83, 255, 0.1);
  }
  .site-navbar .navbar-collapse {
    position: absolute;
    top: 64px;
    right: 12px;
    left: 12px;
    min-height: 0;
    max-height: calc(100vh - 78px);
    padding: 14px 18px 20px;
    border: 1px solid rgba(55, 83, 255, 0.1);
    border-radius: 0 0 16px 16px;
    background: rgba(255, 255, 255, 0.99);
    box-shadow: 0 24px 50px rgba(15, 23, 42, 0.14);
    overflow-y: auto;
  }
  .site-navbar #main-menu {
    height: auto;
    margin: 0 !important;
    display: block;
  }
  .site-navbar .navbar-nav > li {
    display: block;
    border-bottom: 1px solid rgba(55, 83, 255, 0.07);
  }
  .site-navbar .navbar-nav .nav-link {
    min-height: 48px;
    padding: 12px 4px !important;
    justify-content: space-between;
    color: var(--nav-dark) !important;
    font-size: 14px;
  }
  .site-navbar .menu-item-level-1 > .nav-link::before,
  .site-navbar .dropdown-custom-level-1 > .nav-link::before {
    display: none !important;
  }
  .site-navbar .dropdown {
    position: relative !important;
  }
  .site-navbar .dropdown-menu,
  .site-navbar .dropdown-menu-level-1,
  .site-navbar .dropdown-menu-level-2 {
    position: static !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 0 10px;
    padding: 8px 13px !important;
    display: none;
    border: 0 !important;
    border-radius: 10px !important;
    background: #f6f8ff !important;
    box-shadow: none;
    transform: none !important;
  }
  .site-navbar .dropdown-menu.show {
    display: block !important;
  }
  .site-navbar .navbar-nav .dropdown-menu-level-1 {
    width: 100% !important;
    min-width: 0;
  }
  .site-navbar .navbar-collapse .dropdown-menu-level-1 .dropdown-custom-level-2 > .dropdown-menu-level-2 {
    display: none !important;
  }
  .site-navbar .navbar-collapse .dropdown-menu-level-1 .dropdown-custom-level-2 > .dropdown-menu-level-2.show {
    display: block !important;
  }
  .site-navbar .dropdown-menu-level-1 > li {
    display: block;
    padding: 0 !important;
  }
  .site-navbar .navbar-collapse .dropdown-menu-level-1 > li > a.nav-link,
  .site-navbar .navbar-collapse .dropdown-menu-level-2 a.nav-link {
    padding: 9px 5px !important;
    color: #536075 !important;
    font-size: 13px;
    font-weight: 500;
  }
  .site-navbar .navbar-collapse .dropdown-menu-level-1 > li > a.nav-link-child {
    padding-left: 18px !important;
    font-size: 12px;
  }
  .site-navbar .dropdown-menu-level-1 > li > a::after {
    display: none !important;
  }
  .site-navbar .nav-mobile-actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    gap: 10px;
  }
  .site-navbar .nav-mobile-support {
    height: 42px;
    padding: 0 13px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    color: var(--nav-primary);
    border: 1px solid rgba(55, 83, 255, 0.18);
    border-radius: 9px;
    background: #f3f5ff;
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
  }
  .site-navbar .nav-mobile-search {
    height: 42px;
    padding: 0 12px;
    display: flex;
    align-items: center;
    gap: 8px;
    border: 1px solid rgba(55, 83, 255, 0.12);
    border-radius: 9px;
    background: #f8faff;
  }
  .site-navbar .nav-mobile-search i {
    color: var(--nav-gray) !important;
  }
  .site-navbar .nav-mobile-search input {
    width: 100%;
    padding: 0;
    color: var(--nav-dark);
    border: 0;
    background: transparent;
    font-size: 13px;
  }
  .site-navbar .nav-contact-cta {
    height: 42px;
  }
}
@media (max-width: 420px) {
  .site-navbar .nav-mobile-actions {
    grid-template-columns: 1fr;
  }
  .site-navbar .nav-mobile-support {
    width: 100%;
  }
  .site-navbar .nav-contact-cta {
    width: 100%;
  }
}
.button-scale {
  transition: transform 0.3s ease;
}

.button-scale:hover {
  transform: scale(1.1);
}

.text-justify {
  text-align: justify;
}

.base-top-bg-img {
  background-size: cover;
  background-position: center;
}

.base-consult {
  background-color: rgb(241, 241, 241);
}
.base-consult p {
  font-size: 14px;
}
.base-consult .card {
  box-shadow: unset;
}
.base-consult ul li {
  padding-top: 54px;
  display: flex;
}
.base-consult ul li img {
  height: 20px;
  width: auto;
  padding-right: 30px;
}
.base-consult ul li {
  font-size: 16px;
  font-weight: 400;
  line-height: 32px;
  letter-spacing: 0em;
}

.base-section {
  padding-top: 82px;
  padding-bottom: 126px;
}
.base-section .base-title {
  font-size: 38px;
  font-weight: 600;
  line-height: 45px;
  letter-spacing: 0.03em;
  text-align: center;
  color: #3753ff;
}
.base-section .base-intro {
  font-size: 29px;
  font-weight: 600;
  line-height: 35px;
  text-align: center;
}
.base-section .base-description {
  font-size: 16px;
  line-height: 32px;
  text-align: center;
  color: rgb(111, 111, 111);
}

.base-service-examples .base-intro {
  padding-bottom: 78px;
}
.base-service-examples .base-top-bg-img {
  height: 300px;
  border-radius: 8px;
}
.base-service-examples .post-title {
  font-size: 22px;
  letter-spacing: 0em;
  color: #000 !important;
}
.base-service-examples .post-source {
  font-size: 16px;
  font-weight: 400;
  line-height: 28px;
  letter-spacing: 0em;
  color: rgba(0, 0, 0, 0.6);
  display: -webkit-box;
  overflow: hidden;
  white-space: normal !important;
  text-overflow: ellipsis;
  word-wrap: break-word;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.base-bg-height {
  height: 446px;
}
.base-bg-height > div {
  padding-top: 72px;
}

.base-client-cases {
  overflow: hidden;
  background: rgb(33, 34, 42);
  position: relative;
  padding-bottom: 200px;
}
.base-client-cases .base-intro {
  padding-bottom: 84px;
}
.base-client-cases .swiper-slide-next .card {
  transform: scale(1.3);
  transition: transform 0.3s ease;
}
.base-client-cases .post-title {
  font-size: 16px;
  line-height: 20px;
  letter-spacing: 0em;
  display: -webkit-box;
  overflow: hidden;
  white-space: normal !important;
  text-overflow: ellipsis;
  word-wrap: break-word;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  color: #000;
}
.base-client-cases .swiper-button-next {
  font-size: 38px;
  left: 50.5%;
  top: unset;
  bottom: 10%;
}
.base-client-cases .swiper-button-prev {
  font-size: 38px;
  top: unset;
  left: 47.5%;
  bottom: 10%;
}
.base-client-cases .swiper-button-next::after {
  content: "unset";
}
.base-client-cases .swiper-button-prev:after {
  content: "unset";
}

.three-show {
  display: -webkit-box;
  overflow: hidden;
  white-space: normal !important;
  text-overflow: ellipsis;
  word-wrap: break-word;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}

.two-show {
  display: -webkit-box;
  overflow: hidden;
  white-space: normal !important;
  text-overflow: ellipsis;
  word-wrap: break-word;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.four-show {
  display: -webkit-box;
  overflow: hidden;
  white-space: normal !important;
  text-overflow: ellipsis;
  word-wrap: break-word;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
}

.float-right {
  float: right !important;
}

.base-hero-section {
  position: relative;
  background-size: cover;
  background-position: center;
  padding: unset;
  aspect-ratio: 2.5/1;
  overflow: hidden;
}
.base-hero-section .position-absolute-y-center {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 99%;
}
.base-hero-section h1 {
  font-size: 46px;
}
.base-hero-section p {
  padding-top: 40px;
  font-size: 18px;
}
.base-hero-section a {
  margin-top: 40px;
}
.base-hero-section .hero-overlay {
  color: #fff;
  width: 64%;
  height: 100%;
  display: flex;
  align-items: center;
  padding: 3rem;
  clip-path: polygon(0 0, 85% 0, 70% 100%, 0% 100%);
  background: linear-gradient(to right, rgba(54, 84, 255, 0.9) 40%, rgba(54, 84, 255, 0.6) 70%, rgba(54, 84, 255, 0) 100%);
}

.base-breadcrumb {
  background-color: #F8F8F8;
  padding: 15px 0;
}
.base-breadcrumb ol {
  margin: 0;
  padding: 0;
  display: flex;
  list-style-type: none;
}
.base-breadcrumb ol li a {
  text-decoration: none;
  font-size: 17px;
  color: #5c5c5c;
}

.base-custom-solution .solution-form {
  background: #ffffff;
  border-radius: 8px;
  padding: 40px;
  border: 1px solid rgba(255, 255, 255, 0.8);
}
.base-custom-solution .solution-form .form-group {
  margin-bottom: 20px;
}
.base-custom-solution .solution-form .form-group label {
  font-weight: 600;
  color: #374151;
  margin-bottom: 8px;
  font-size: 14px;
}
.base-custom-solution .solution-form .form-group .form-control {
  border: 2px solid #e5e7eb;
  border-radius: 8px;
  padding: 12px 16px;
  font-size: 14px;
  transition: all 0.3s ease;
  background: #ffffff;
}
.base-custom-solution .solution-form .form-group .form-control:focus {
  border-color: #3654FF;
  box-shadow: 0 0 0 3px rgba(54, 84, 255, 0.1);
  outline: none;
}
.base-custom-solution .solution-form .form-group .form-control::-moz-placeholder {
  color: #9ca3af;
}
.base-custom-solution .solution-form .form-group .form-control::placeholder {
  color: #9ca3af;
}
.base-custom-solution .solution-form .form-group textarea.form-control {
  min-height: 120px;
  resize: vertical;
}
.base-custom-solution .contact-info {
  margin-top: 40px;
  padding-top: 40px;
  border-top: 2px solid #e5e7eb;
}
.base-custom-solution .contact-info .contact-item {
  display: flex;
  align-items: center;
  margin-bottom: 15px;
  font-size: 16px;
  color: #374151;
}
.base-custom-solution .contact-info .contact-item .contact-icon {
  width: 45px;
  height: 45px;
  border-radius: 50%;
  background: rgba(59, 130, 246, 0.1);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 15px;
  color: var(--accent-color);
  font-size: 18px;
}
.base-custom-solution .contact-info .contact-item .contact-text {
  font-weight: 500;
}
@media (max-width: 768px) {
  .base-custom-solution {
    padding: 60px 0;
  }
  .base-custom-solution .section-title {
    font-size: 2rem;
    margin-bottom: 40px;
  }
  .base-custom-solution .solution-form {
    padding: 30px 20px;
  }
  .base-custom-solution .contact-info {
    margin-top: 30px;
    padding-top: 30px;
  }
  .base-custom-solution .contact-info .contact-item {
    flex-direction: column;
    text-align: center;
    margin-bottom: 20px;
  }
  .base-custom-solution .contact-info .contact-item .contact-icon {
    margin-right: 0;
    margin-bottom: 10px;
  }
}

.base-card-box {
  background: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(10px);
  border-radius: 8px;
  padding: 20px;
  transition: all 0.3s ease;
  border: 1px solid rgba(255, 255, 255, 0.5);
  height: 100%;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
  position: relative;
  overflow: hidden;
}
.base-card-box .feature-icon {
  font-size: 2rem;
  color: #3753ff;
  margin-bottom: 20px;
  transition: all 0.3s ease;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background: rgba(59, 130, 246, 0.1);
}
.base-card-box .card-title {
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 15px;
  transition: all 0.3s ease;
  color: #0a2240;
}
.base-card-box ul {
  padding-left: 0;
  margin-bottom: 10px;
  list-style: none;
}
.base-card-box ul li {
  cursor: pointer;
  position: relative;
  padding-left: 14px;
  margin-bottom: 10px;
  font-size: 14px;
  line-height: 1.6;
  color: #1e293b;
  transition: all 0.3s ease;
  text-align: justify;
}
.base-card-box ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 8px;
  width: 6px;
  height: 6px;
  background: #3753ff;
  border-radius: 50%;
  transition: all 0.3s ease;
}
.base-card-box ul li:hover {
  color: #3753ff;
  transform: translateX(4px);
}
.base-card-box ul li:hover::before {
  transform: scale(1.2);
}
.base-card-box .card-text {
  margin-bottom: 10px !important;
  font-size: 14px;
  line-height: 1.6;
  color: #1e293b;
}
.base-card-box .card-text strong {
  font-weight: 600;
  color: #0f172a;
}
.base-card-box tag {
  border: 1px solid #3753ff;
  color: #3753ff;
  border-radius: 8px;
  padding: 2px 10px;
  font-size: 12px;
  margin-right: 6px;
  margin-top: 0.5rem;
  transition: all 0.3s ease;
  cursor: pointer;
}
.base-card-box tag:hover {
  background: #3753ff;
  color: white;
  transform: translateY(-1px);
}
.base-card-box::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: #3753ff;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.3s ease;
}
.base-card-box:hover {
  transform: translateY(-8px);
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.1);
  background: rgba(255, 255, 255, 0.95);
}
.base-card-box:hover::before {
  transform: scaleX(1);
}
.base-card-box:hover .feature-icon {
  background: #3753ff;
  color: white;
  transform: scale(1.1);
}
.base-card-box:hover .card-title {
  color: #3753ff;
}

@media screen and (max-width: 1200px) {
  .base-hero-section {
    aspect-ratio: 1.5/1;
  }
  .base-hero-section h1 {
    font-size: 18px;
  }
  .base-hero-section a {
    margin-top: 12px;
    font-size: 12px;
  }
}
.hover-lift {
  transition: all 0.3s ease;
}
.hover-lift:hover {
  transform: translateY(-3px);
}

.shell {
  width: min(1240px, 100% - 80px);
  margin-inline: auto;
}

.section {
  padding: 100px 0;
}

.section-tint {
  background: var(--wash);
}

.eyebrow, .small-label {
  display: block;
  font-size: var(--text-caption);
  line-height: 1.5;
  font-weight: 700;
  letter-spacing: 0.16em;
  color: var(--brand);
}

.eyebrow {
  margin-bottom: 20px;
}

.section-heading {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 36px;
  margin-bottom: 40px;
}

.section-heading h2, .section-title {
  font-size: var(--title-section);
  font-weight: 650;
}

.section-heading p {
  color: var(--muted);
  max-width: 460px;
  margin-top: 18px;
  font-size: var(--text-body);
  line-height: 1.85;
}

.section-description {
  max-width: 670px;
  color: var(--muted);
  margin-top: 20px;
  font-size: var(--text-body);
}

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 25px;
  padding: 15px 24px;
  border-radius: 6px;
  background: var(--brand);
  color: #fff;
  border: 1px solid var(--brand);
  font-weight: 600;
  line-height: 1.6;
  transition: background 0.2s, transform 0.2s;
  font-size: var(--text-card);
  min-height: 48px;
}

.button:hover {
  background: #263fde;
  transform: translateY(-2px);
}

.button-small {
  padding: 10px 18px;
  font-size: var(--text-small);
  gap: 18px;
  min-height: 44px;
}

.button-outline {
  color: var(--ink);
  border-color: #dce1ec;
  background: #fff;
}

.button-outline:hover {
  background: #f3f5ff;
}

.button-white {
  background: #fff;
  color: var(--brand);
  border-color: #fff;
}

.button-white:hover {
  background: #eef1ff;
}

.button-light-outline {
  background: transparent;
  color: #fff;
  border-color: #7a8cff;
}

.text-link {
  display: inline-flex;
  gap: 15px;
  align-items: center;
  color: var(--brand);
  font-weight: 600;
  white-space: nowrap;
  font-size: var(--text-small);
}

.text-link:hover i {
  transform: translateX(4px);
}

.text-link i {
  transition: transform 0.2s;
}

.site-header {
  height: 88px;
  position: sticky;
  top: 0;
  z-index: 30;
  background: rgba(255, 255, 255, 0.96);
  border-bottom: 1px solid rgba(230, 234, 242, 0.7);
  backdrop-filter: blur(12px);
}

.nav-shell {
  height: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 34px;
}

.brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  flex: 0 0 auto;
  font-size: 26px;
  font-weight: 750;
  letter-spacing: -0.06em;
  line-height: 1.1;
}

.brand small {
  display: block;
  font-size: 10px;
  font-weight: 650;
  letter-spacing: 0.18em;
  margin-top: 5px;
  color: var(--caption);
}

.brand-symbol {
  display: block;
  width: 48px;
  height: 48px;
  flex-shrink: 0;
  -o-object-fit: contain;
     object-fit: contain;
}

.main-nav {
  display: flex;
  align-items: center;
  flex: 1;
  justify-content: flex-end;
  gap: 27px;
  font-size: var(--text-card);
  font-weight: 500;
}

.main-nav > a {
  padding: 12px 0;
  white-space: nowrap;
}

.main-nav > a:hover, .main-nav [aria-current=page] {
  color: var(--brand);
}

.nav-actions {
  display: flex;
  gap: 22px;
  align-items: center;
  padding-left: 16px;
}

.nav-access {
  font-size: var(--text-small);
  white-space: nowrap;
}

.nav-toggle {
  display: none;
  background: none;
  border: none;
  font-size: 26px;
  color: var(--ink);
  width: 44px;
  height: 44px;
  padding: 0;
  line-height: 1;
}

.hero {
  padding: 90px 0 62px;
  position: relative;
  overflow: hidden;
  background: radial-gradient(ellipse at 80% 45%, #edf1ff 0, transparent 49%);
}

.hero-layout {
  display: grid;
  grid-template-columns: 1.08fr 1fr;
  gap: 44px;
  align-items: center;
}

.hero-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: var(--text-caption);
  letter-spacing: 0.13em;
  font-weight: 650;
  color: var(--brand);
  margin-bottom: 28px;
}

.hero-kicker::before {
  content: "";
  width: 7px;
  height: 7px;
  background: var(--brand);
  border-radius: 50%;
}

.hero h1 {
  font-size: clamp(40px, 4.2vw, 60px);
  font-weight: 680;
  line-height: 1.3;
  letter-spacing: -0.055em;
}

.hero h1 em {
  font-style: normal;
  color: var(--brand);
}

.hero-subtitle {
  color: #3e4c67;
  margin: 23px 0 12px;
  font-size: 20px;
  font-weight: 500;
}

.hero-description {
  color: var(--muted);
  max-width: 480px;
  font-size: var(--text-card);
  line-height: 1.95;
}

.hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 34px;
}

.hero-footnote {
  font-size: var(--text-caption);
  color: #7f899b;
  margin-top: 23px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.hero-footnote i {
  color: #18a47b;
}

.value-chain {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border: 1px solid var(--line);
  border-radius: 10px;
  overflow: hidden;
}

.chain-item {
  position: relative;
  padding: 30px 25px;
  border-right: 1px solid var(--line);
}

.chain-item:last-child {
  border: 0;
}

.chain-item .chain-number {
  position: absolute;
  top: 29px;
  right: 24px;
  font-size: var(--text-caption);
  color: #b1bacb;
}

.chain-item > i {
  font-size: 26px;
  color: var(--brand);
}

.chain-item:first-child > i {
  color: #14a37d;
}

.chain-item h3 {
  margin: 22px 0 12px;
  font-size: 18px;
}

.chain-item p {
  color: var(--muted);
  font-size: var(--text-card);
  line-height: 1.85;
}

.network-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 318px;
  border: 1px solid #e0e5f2;
  border-radius: 12px;
  background: #fff;
  overflow: hidden;
}

.network-map-side {
  display: flex;
  align-items: center;
  background: radial-gradient(ellipse at center, #fff 0, #f3f6fd 95%);
  position: relative;
  min-width: 0;
}

.map-toolbar {
  position: absolute;
  top: 24px;
  left: 28px;
  right: 24px;
  z-index: 2;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: var(--text-caption);
  color: #63708a;
}

.map-toolbar > span {
  display: flex;
  align-items: center;
  gap: 8px;
}

.status-dot {
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--brand);
}

.icon-button {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  background: #fff;
  border: 1px solid #e0e6f3;
  border-radius: 5px;
  color: #71809e;
}

.network-map {
  height: 555px;
  width: 100%;
}

.map-caption {
  position: absolute;
  bottom: 20px;
  left: 25px;
  right: 25px;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  font-size: var(--text-caption);
  color: var(--caption);
  pointer-events: none;
  flex-wrap: wrap;
}

.map-key {
  white-space: nowrap;
}

.map-key .status-dot {
  margin-right: 5px;
}

.map-message {
  position: absolute;
  top: 45%;
  left: 20px;
  right: 20px;
  text-align: center;
  padding: 15px;
  border-radius: 6px;
  background: #fff;
  font-size: var(--text-caption);
  color: var(--muted);
}

.network-directory {
  border-left: 1px solid var(--line);
  padding: 24px;
}

.directory-heading {
  display: flex;
  justify-content: space-between;
  color: var(--muted);
  font-size: var(--text-small);
  margin-bottom: 19px;
}

.directory-heading strong {
  color: var(--brand);
}

.node-choice {
  display: block;
  width: 100%;
  text-align: left;
  padding: 16px;
  border: 1px solid var(--line);
  background: #fff;
  border-radius: 7px;
  margin-bottom: 11px;
  transition: 0.2s;
  color: var(--ink);
}

.node-choice:hover, .node-choice[aria-pressed=true] {
  background: #f5f6ff;
  border-color: #a7b3ff;
}

.node-choice-heading {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: var(--text-body);
}

.node-choice-heading > :last-child {
  color: #7c8bd2;
}

.node-venue {
  display: block;
  font-size: var(--text-caption);
  color: var(--muted);
  margin-top: 7px;
}

.node-state {
  display: flex;
  gap: 5px;
  align-items: center;
  font-size: var(--text-caption);
  color: var(--muted);
  margin-top: 10px;
}

.node-state span {
  display: inline-block;
  width: 5px;
  height: 5px;
  background: #acb5c7;
  border-radius: 50%;
}

.node-detail {
  padding: 24px 2px 0;
  border-top: 1px solid var(--line);
  margin-top: 20px;
}

.node-detail .small-label {
  font-size: var(--text-caption);
  color: var(--caption);
}

.node-detail h3 {
  font-size: 18px;
  margin-top: 9px;
}

.node-detail > p {
  font-size: var(--text-small);
  line-height: 1.7;
  color: var(--muted);
  margin-top: 9px;
  min-height: 36px;
}

.node-detail dl {
  font-size: var(--text-small);
  margin: 16px 0;
}

.node-detail dl > div {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  margin: 6px 0;
}

.node-detail dt {
  color: var(--caption);
}

.node-detail dd {
  margin: 0;
  color: var(--muted);
  text-align: right;
}

.node-detail .text-link {
  font-size: var(--text-small);
}

.network-note {
  display: flex;
  gap: 10px;
  margin-top: 22px;
  font-size: var(--text-small);
  color: var(--muted);
}

.network-note i {
  color: var(--brand);
}

.cards-three {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

.service-card {
  padding: 30px;
  border: 1px solid var(--line);
  border-radius: 9px;
  background: #fff;
  display: flex;
  flex-direction: column;
  transition: border-color 0.2s, transform 0.2s;
}

.service-card:hover {
  border-color: #a1b0ff;
  transform: translateY(-4px);
}

.card-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 30px;
}

.service-icon {
  width: 48px;
  height: 48px;
  border-radius: 10px;
  background: #f0f3ff;
  color: var(--brand);
  display: grid;
  place-items: center;
  font-size: 25px;
}

.service-status {
  font-size: var(--text-caption);
  color: #586b8a;
  padding: 4px 9px;
  border: 1px solid var(--line);
  border-radius: 3px;
}

.service-card .small-label {
  color: var(--caption);
  font-size: var(--text-caption);
  letter-spacing: 0.1em;
}

.service-card h3 {
  font-size: 23px;
  margin: 9px 0 15px;
}

.service-card p {
  color: var(--muted);
  font-size: var(--text-body);
  min-height: 48px;
  line-height: 1.85;
}

.tags {
  display: flex;
  gap: 7px;
  flex-wrap: wrap;
  margin: 22px 0;
}

.tags span {
  background: var(--wash);
  padding: 4px 9px;
  border-radius: 3px;
  font-size: var(--text-caption);
  color: #536583;
}

.service-card .text-link {
  margin-top: auto;
  border-top: 1px solid var(--line);
  padding-top: 19px;
  font-size: var(--text-small);
  justify-content: space-between;
}

.platform-band {
  background: #101d45;
  color: white;
}

.platform-band .eyebrow {
  color: #91a1ff;
}

.platform-band .section-description {
  color: #99a5c1;
}

.capabilities {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 1px;
  margin-top: 42px;
  border-top: 1px solid #293553;
}

.capabilities > div {
  padding: 28px 18px 0 0;
}

.capabilities i {
  font-size: 23px;
  color: #8f9eff;
}

.capabilities h3 {
  margin: 18px 0 9px;
  font-size: var(--text-body);
}

.capabilities p {
  color: #b8c5df;
  font-size: var(--text-small);
}

.platform-note {
  margin-top: 30px;
  font-size: var(--text-caption);
  color: #b3c0dc;
}

.split-section {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 75px;
}

.check-list {
  list-style: none;
  padding: 0;
  margin: 28px 0;
}

.check-list li {
  margin: 13px 0;
  display: flex;
  align-items: center;
  gap: 12px;
  color: #56627a;
  font-size: var(--text-small);
}

.check-list i {
  color: var(--brand);
}

.factory-visual {
  padding: 38px;
  background: #eef2ff;
  border: 1px solid #e1e7fa;
  border-radius: 12px;
}

.factory-visual .small-label {
  color: #536888;
  font-size: var(--text-caption);
}

.factory-rack {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  padding: 25px;
  border: 6px solid #cbd5f0;
  background: #dce3f7;
  border-radius: 8px;
  margin: 30px 0;
  box-shadow: 9px 10px 0 rgba(195, 207, 233, 0.3019607843);
}

.factory-rack > div {
  background: linear-gradient(120deg, #253f83, #15264c);
  padding: 10px 7px;
  border-radius: 4px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.factory-rack span {
  height: 23px;
  border: 1px solid #6276a0;
  border-radius: 2px;
  position: relative;
  background: repeating-linear-gradient(0deg, transparent, transparent 3px, rgba(255, 255, 255, 0.062745098) 3px, rgba(255, 255, 255, 0.062745098) 4px);
}

.factory-rack span::before {
  content: "";
  display: block;
  height: 3px;
  width: 3px;
  border-radius: 50%;
  background: #6ba9ff;
  position: absolute;
  left: 4px;
  top: 5px;
  box-shadow: 0 6px #6ba9ff;
}

.factory-caption {
  display: flex;
  justify-content: space-between;
  font-size: var(--text-caption);
  color: #536888;
}

.factory-caption strong {
  color: var(--brand);
}

.industry-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 28px;
}

.industry-card {
  min-width: 0;
}

.industry-card h3 {
  font-size: 20px;
  margin-bottom: 14px;
}

.industry-card p {
  font-size: var(--text-card);
  color: var(--muted);
  line-height: 1.85;
  min-height: 0;
}

.industry-card a {
  font-size: var(--text-small);
  margin-top: 24px;
}

.steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 30px;
  margin-top: 40px;
}

.step-number {
  color: #7084bf;
  font-size: 40px;
  line-height: 1;
  font-weight: 600;
  letter-spacing: -0.03em;
}

.steps h3 {
  margin: 20px 0 11px;
  font-size: 17px;
}

.steps p {
  font-size: var(--text-card);
  color: var(--muted);
}

.faq {
  margin-top: 55px;
  border-top: 1px solid var(--line);
}

.faq details {
  border-bottom: 1px solid var(--line);
}

.faq summary {
  cursor: pointer;
  font-weight: 600;
  padding: 22px 5px;
  font-size: var(--text-body);
}

.faq details p {
  color: var(--muted);
  padding: 0 5px 24px;
  max-width: 850px;
}

.cta-section {
  background: var(--brand);
  color: #fff;
}

.cta-inner {
  display: flex;
  justify-content: space-between;
  gap: 40px;
  align-items: center;
}

.cta-inner h2 {
  font-size: 40px;
}

.cta-inner p {
  font-size: var(--text-body);
  color: #f2f4ff;
  margin-top: 23px;
}

.cta-inner .eyebrow {
  color: #f2f4ff;
  font-size: var(--text-caption);
}

.cta-actions {
  display: flex;
  gap: 14px;
}

.site-footer {
  padding-top: 65px;
  background: #fafbfe;
}

.footer-main {
  display: grid;
  grid-template-columns: 1.6fr 1fr 1fr 1.15fr;
  gap: 50px;
  padding-bottom: 60px;
}

.footer-brand p {
  margin: 20px 0 7px;
  font-size: var(--text-small);
  color: var(--muted);
}

.footer-caption {
  font-size: var(--text-caption);
  color: var(--caption);
  letter-spacing: 0.08em;
}

.footer-main h2 {
  font-size: var(--text-small);
  letter-spacing: 0;
  margin-bottom: 20px;
}

.footer-main > div > a:not(.brand) {
  display: block;
  font-size: var(--text-small);
  color: var(--muted);
  margin: 10px 0;
}

.footer-main a:hover {
  color: var(--brand);
}

.footer-note {
  font-size: var(--text-caption);
  color: var(--caption);
  margin-top: 18px;
}

.footer-bottom {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  border-top: 1px solid var(--line);
  padding: 23px 0;
  font-size: var(--text-caption);
  color: var(--caption);
}

.footer-bottom > div {
  display: flex;
  gap: 25px;
}

.footer-bottom > div > span {
  letter-spacing: 0.07em;
}

.page-hero {
  padding: 72px 0 60px;
  background: linear-gradient(125deg, #f7f9ff, #fff);
  border-bottom: 1px solid var(--line);
}

.page-hero h1 {
  font-size: clamp(34px, 4vw, 52px);
  max-width: 870px;
  text-wrap: balance;
}

.page-hero p {
  color: var(--muted);
  margin-top: 22px;
  font-size: var(--text-body);
  max-width: 750px;
  line-height: 1.85;
}

.breadcrumb {
  display: flex;
  gap: 12px;
  color: var(--caption);
  font-size: var(--text-small);
  margin-bottom: 30px;
  flex-wrap: wrap;
}

.breadcrumb a:hover {
  color: var(--brand);
}

.page-content {
  padding: 65px 0 90px;
}

.filter-bar {
  display: flex;
  gap: 12px;
  margin-bottom: 35px;
  flex-wrap: wrap;
}

.filter-bar button {
  border: 1px solid var(--line);
  background: #fff;
  color: #728099;
  padding: 9px 21px;
  border-radius: 5px;
  font-size: var(--text-small);
  min-height: 44px;
}

.filter-bar button[aria-pressed=true] {
  background: var(--brand);
  color: #fff;
  border-color: var(--brand);
}

.info-banner {
  display: flex;
  gap: 12px;
  align-items: start;
  padding: 20px 24px;
  background: #f3f5ff;
  border: 1px solid #e3e7ff;
  border-radius: 6px;
  font-size: var(--text-small);
  color: #53658b;
  margin-bottom: 35px;
}

.info-banner i {
  color: var(--brand);
}

.detail-layout {
  display: grid;
  grid-template-columns: 1.5fr 1fr;
  gap: 60px;
}

.detail-copy h2 {
  font-size: 26px;
  margin-bottom: 22px;
}

.detail-copy p {
  color: var(--muted);
  font-size: var(--text-body);
  line-height: 1.95;
}

.detail-aside {
  padding: 32px;
  background: var(--wash);
  border-radius: 9px;
  align-self: start;
}

.detail-aside h3 {
  font-size: 19px;
  margin-bottom: 15px;
}

.detail-aside p {
  color: var(--muted);
  font-size: var(--text-card);
  margin-bottom: 22px;
}

.resource-card {
  border: 1px solid var(--line);
  padding: 30px;
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  min-height: 280px;
}

.resource-card .small-label {
  font-size: var(--text-caption);
}

.resource-card h2 {
  font-size: 23px;
  margin: 25px 0 15px;
}

.resource-card p {
  color: var(--muted);
  font-size: var(--text-card);
  margin-bottom: 30px;
}

.resource-card a {
  font-size: var(--text-small);
  margin-top: auto;
}

.article-layout {
  max-width: 780px;
}

.article-section {
  margin-bottom: 44px;
}

.article-section h2 {
  font-size: 24px;
  margin-bottom: 19px;
}

.article-section p {
  color: #63708a;
  font-size: var(--text-body);
  line-height: 2;
}

.apply-layout {
  display: grid;
  grid-template-columns: 0.8fr 1.3fr;
  gap: 90px;
}

.apply-intro h2 {
  font-size: 29px;
  margin: 17px 0;
}

.apply-intro p {
  color: var(--muted);
  line-height: 1.9;
  font-size: var(--text-body);
}

.apply-steps {
  margin-top: 38px;
}

.apply-steps div {
  display: flex;
  gap: 18px;
  margin: 22px 0;
  align-items: start;
}

.apply-steps strong {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  flex: 0 0 auto;
  background: #edf0ff;
  color: var(--brand);
  border-radius: 50%;
  font-size: var(--text-caption);
}

.apply-steps span {
  display: block;
  font-size: var(--text-small);
}

.apply-steps small {
  display: block;
  color: #8792a7;
  font-size: var(--text-caption);
  margin-top: 3px;
}

.form-card {
  padding: 36px;
  border: 1px solid var(--line);
  border-radius: 10px;
}

.form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 22px;
}

.form-field {
  display: flex;
  flex-direction: column;
  gap: 9px;
  margin-bottom: 22px;
  min-width: 0;
}

.form-field label {
  font-size: var(--text-small);
  font-weight: 600;
}

.form-field label em {
  font-style: normal;
  color: var(--brand);
}

.form-field input, .form-field select, .form-field textarea {
  width: 100%;
  border: 1px solid #dce2ee;
  background: #fff;
  padding: 12px 14px;
  border-radius: 5px;
  color: var(--ink);
  font-size: var(--text-body);
  min-height: 48px;
}

.form-field input:focus, .form-field select:focus, .form-field textarea:focus {
  border-color: var(--brand);
  box-shadow: 0 0 0 3px rgba(55, 83, 255, 0.0705882353);
}

.form-field input::-moz-placeholder, .form-field textarea::-moz-placeholder {
  color: #6f7c92;
}

.form-field input::placeholder, .form-field textarea::placeholder {
  color: #6f7c92;
}

.form-field textarea {
  min-height: 150px;
  resize: vertical;
}

.form-grid .form-field {
  margin: 0;
}

.form-grid {
  margin-bottom: 22px;
}

.form-consent {
  display: flex;
  align-items: start;
  gap: 8px;
  font-size: var(--text-small);
  color: var(--muted);
  margin-bottom: 23px;
}

.form-consent input {
  margin-top: 5px;
  accent-color: var(--brand);
}

.form-consent a {
  color: var(--brand);
}

.honeypot {
  position: absolute;
  left: -10000px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.form-error {
  padding: 15px;
  margin-bottom: 23px;
  color: #a13d32;
  background: #fff2ef;
  border: 1px solid #f9d9d3;
  font-size: var(--text-small);
  border-radius: 5px;
}

.receipt {
  text-align: center;
  max-width: 700px;
  padding: 80px 40px;
  margin: 0 auto;
}

.receipt > i {
  font-size: 45px;
  color: var(--brand);
}

.receipt h1 {
  margin: 25px 0 18px;
  font-size: 35px;
}

.receipt p {
  color: var(--muted);
  margin-bottom: 20px;
}

.receipt-code {
  background: var(--wash);
  border: 1px solid var(--line);
  padding: 18px;
  margin: 25px 0;
  border-radius: 6px;
}

.receipt-code strong {
  color: var(--brand);
  letter-spacing: 0.06em;
}

.receipt .hero-actions {
  justify-content: center;
}

@media (max-width: 1199px) {
  .shell {
    width: calc(100% - 48px);
  }
  .main-nav {
    gap: 18px;
    font-size: var(--text-card);
    font-weight: 500;
  }
  .nav-actions {
    gap: 16px;
    padding: 0;
  }
  .nav-access {
    display: none;
    font-size: var(--text-small);
  }
  .hero-layout {
    gap: 30px;
  }
  .hero h1 {
    font-size: 48px;
  }
  .fabric {
    padding: 20px;
  }
  .network-panel {
    grid-template-columns: minmax(0, 1fr) 290px;
  }
  .network-directory {
    padding: 20px;
  }
  .network-map {
    height: 560px;
  }
  .split-section {
    gap: 40px;
  }
}
@media (max-width: 959px) {
  .site-header {
    height: 76px;
  }
  .nav-toggle {
    display: block;
    width: 44px;
    height: 44px;
    padding: 0;
    line-height: 1;
  }
  .main-nav {
    display: none;
    position: absolute;
    left: 0;
    right: 0;
    top: 76px;
    padding: 24px;
    background: #fff;
    border-bottom: 1px solid var(--line);
    box-shadow: 0 15px 20px rgba(28, 41, 93, 0.031372549);
    font-size: var(--text-card);
    font-weight: 500;
  }
  .main-nav.is-open {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
  }
  .nav-actions {
    justify-content: space-between;
    margin-top: 15px;
  }
  .nav-access {
    display: block;
    font-size: var(--text-small);
  }
  .hero {
    padding: 60px 0 40px;
  }
  .hero-layout {
    grid-template-columns: 1fr 1fr;
    gap: 22px;
  }
  .hero h1 {
    font-size: 36px;
  }
  .hero-subtitle {
    font-size: 17px;
  }
  .hero-description {
    font-size: var(--text-small);
  }
  .hero-actions .button {
    padding: 12px 18px;
    gap: 12px;
    font-size: var(--text-card);
  }
  .fabric-site {
    padding: 13px;
  }
  .fabric-core p {
    font-size: var(--text-caption);
  }
  .hero-strip {
    gap: 20px;
    flex-wrap: wrap;
  }
  .hero-strip .strip-label {
    display: none;
  }
  .cards-three {
    gap: 16px;
  }
  .service-card {
    padding: 23px;
  }
  .service-card h3 {
    font-size: 21px;
  }
  .network-panel {
    grid-template-columns: 1fr;
  }
  .network-directory {
    border-left: 0;
    border-top: 1px solid var(--line);
    display: grid;
    grid-template-columns: 1fr 1fr;
    -moz-column-gap: 25px;
         column-gap: 25px;
  }
  .directory-heading {
    grid-column: 1/-1;
    font-size: var(--text-small);
    color: var(--muted);
  }
  .node-detail {
    margin: 0;
    padding: 0;
    border: 0;
  }
  .network-map {
    height: 440px;
  }
  .section {
    padding: 75px 0;
  }
  .industry-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 36px;
  }
  .value-chain {
    grid-template-columns: repeat(2, 1fr);
  }
  .chain-item:nth-child(2) {
    border-right: 0;
  }
  .chain-item:nth-child(-n+2) {
    border-bottom: 1px solid var(--line);
  }
  .capabilities {
    grid-template-columns: repeat(3, 1fr);
  }
  .cta-actions {
    flex-direction: column;
  }
  .footer-main {
    grid-template-columns: 1.3fr 1fr 1fr;
    gap: 32px;
  }
  .footer-main > div:last-child {
    display: none;
  }
  .apply-layout {
    gap: 35px;
    grid-template-columns: 0.8fr 1.2fr;
  }
  .form-card {
    padding: 25px;
  }
  .form-grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 639px) {
  .shell {
    width: calc(100% - 40px);
  }
  .brand {
    font-size: 24px;
  }
  .brand-symbol {
    width: 35px;
    height: 35px;
  }
  .hero {
    padding-top: 42px;
  }
  .hero-layout {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  .hero h1 {
    font-size: 40px;
  }
  .hero-kicker {
    font-size: var(--text-caption);
    margin-bottom: 20px;
  }
  .hero-subtitle {
    font-size: 17px;
    margin-top: 20px;
  }
  .hero-description {
    font-size: var(--text-small);
  }
  .hero-footnote {
    font-size: var(--text-caption);
  }
  .fabric {
    padding: 22px;
  }
  .fabric-site {
    padding: 18px;
  }
  .fabric-core p {
    font-size: var(--text-caption);
  }
  .hero-strip {
    margin-top: 30px;
    gap: 18px;
    justify-content: center;
    font-size: var(--text-caption);
  }
  .hero-strip i {
    font-size: var(--text-small);
  }
  .section {
    padding: 58px 0;
  }
  .section-heading {
    display: block;
    margin-bottom: 28px;
  }
  .section-heading > a {
    margin-top: 20px;
    font-size: var(--text-caption);
  }
  .section-heading h2, .section-title {
    font-size: var(--title-section);
  }
  .section-heading p, .section-description {
    font-size: var(--text-small);
  }
  .eyebrow {
    font-size: var(--text-caption);
    margin-bottom: 14px;
  }
  .chain-item {
    padding: 24px 17px;
  }
  .chain-item h3 {
    font-size: var(--text-body);
  }
  .chain-item p {
    font-size: var(--text-card);
  }
  .chain-item .chain-number {
    right: 16px;
  }
  .network-map {
    height: 345px;
  }
  .map-caption {
    left: 14px;
    right: 14px;
    font-size: var(--text-caption);
    color: var(--caption);
    flex-wrap: wrap;
  }
  .map-caption .map-key {
    display: none;
  }
  .map-toolbar {
    left: 17px;
    right: 15px;
    top: 17px;
    font-size: var(--text-caption);
  }
  .network-directory {
    padding: 19px;
    -moz-column-gap: 15px;
         column-gap: 15px;
    display: block;
  }
  .node-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
  }
  .node-choice {
    padding: 13px 10px;
  }
  .node-choice-heading {
    font-size: var(--text-body);
  }
  .node-venue {
    font-size: var(--text-caption);
    min-height: 30px;
    color: var(--muted);
  }
  .node-state {
    font-size: var(--text-caption);
    color: var(--muted);
  }
  .node-detail {
    border-top: 1px solid var(--line);
    margin-top: 12px;
    padding-top: 20px;
  }
  .node-detail > p {
    min-height: auto;
    font-size: var(--text-small);
    color: var(--muted);
  }
  .node-detail dl {
    display: grid;
    grid-template-columns: 1fr;
    font-size: var(--text-small);
  }
  .cards-three {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .service-card {
    padding: 26px;
  }
  .service-card p {
    min-height: auto;
    font-size: var(--text-body);
    line-height: 1.85;
  }
  .capabilities {
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
  }
  .capabilities > div {
    padding-right: 0;
  }
  .split-section {
    grid-template-columns: 1fr;
    gap: 35px;
  }
  .factory-visual {
    padding: 25px;
  }
  .factory-rack {
    padding: 18px;
    gap: 7px;
  }
  .industry-grid {
    gap: 25px 20px;
  }
  .industry-card h3 {
    font-size: 20px;
  }
  .industry-card p {
    font-size: var(--text-card);
    line-height: 1.85;
    min-height: 0;
  }
  .steps {
    grid-template-columns: repeat(2, 1fr);
    gap: 28px;
  }
  .steps p {
    font-size: var(--text-card);
  }
  .faq {
    margin-top: 35px;
  }
  .faq summary {
    font-size: var(--text-body);
  }
  .faq p {
    font-size: var(--text-card);
  }
  .cta-inner {
    display: block;
  }
  .cta-inner h2 {
    font-size: 32px;
  }
  .cta-actions {
    flex-direction: row;
    margin-top: 30px;
    gap: 10px;
  }
  .cta-actions .button {
    font-size: var(--text-card);
    padding: 12px 17px;
    gap: 15px;
  }
  .footer-main {
    grid-template-columns: 1fr 1fr;
    gap: 35px 25px;
    padding-bottom: 35px;
  }
  .footer-brand {
    grid-column: 1/-1;
  }
  .footer-bottom {
    flex-direction: column;
    gap: 13px;
    font-size: var(--text-caption);
    color: var(--caption);
  }
  .footer-bottom > div > span {
    display: none;
  }
  .page-hero {
    padding: 45px 0 40px;
  }
  .page-hero h1 {
    font-size: 33px;
  }
  .page-hero p {
    font-size: var(--text-body);
    line-height: 1.85;
  }
  .page-content {
    padding: 42px 0 60px;
  }
  .detail-layout, .apply-layout {
    grid-template-columns: 1fr;
    gap: 35px;
  }
  .apply-steps {
    display: none;
  }
  .form-card {
    padding: 23px 19px;
  }
  .apply-intro h2 {
    font-size: 26px;
  }
  .apply-intro p {
    font-size: var(--text-body);
  }
  .receipt {
    padding: 60px 0;
  }
  .receipt h1 {
    font-size: 29px;
  }
  .article-section p {
    font-size: var(--text-body);
  }
}
.hero-description {
  margin-top: 24px;
}

.form-help {
  font-size: var(--text-caption);
  color: var(--muted);
  margin-top: 18px;
}

.form-field label span {
  color: var(--brand);
}

.form-field label small {
  color: var(--muted);
  font-weight: 400;
}

.receipt h2 {
  margin: 24px 0 18px;
  font-size: 30px;
}

.article-content {
  line-height: 1.95;
  overflow-wrap: anywhere;
}

.article-content img {
  height: auto;
}

.article-content p {
  margin-bottom: 20px;
}

.article-content > h2 {
  font-size: clamp(23px, 2.4vw, 28px);
  line-height: 1.4;
  margin: 40px 0 18px;
  text-wrap: balance;
}

.article-content > h2:first-child {
  margin-top: 0;
}

.article-content > p, .article-content > ul, .article-content > ol {
  color: var(--muted);
}

.article-content > ul, .article-content > ol {
  padding-left: 1.4em;
  margin-bottom: 26px;
}

.article-content li + li {
  margin-top: 8px;
}

.article-content img {
  max-width: 100%;
}

.pagination {
  display: flex;
  list-style: none;
  padding: 0;
  gap: 15px;
  margin-top: 35px;
}

.site-header {
  border-bottom-color: #eaf0fa;
}

.main-nav {
  gap: 23px;
  font-size: var(--text-card);
  font-weight: 500;
}

.main-nav > a {
  position: relative;
}

.main-nav > a::after {
  content: "";
  position: absolute;
  bottom: 4px;
  left: 0;
  width: 100%;
  height: 2px;
  background: var(--brand);
  border-radius: 2px;
  transform: scaleX(0);
  transition: transform 0.2s;
}

.main-nav > a:hover::after, .main-nav > a[aria-current=page]::after {
  transform: scaleX(1);
}

.nav-shell {
  gap: 24px;
}

.nav-actions {
  flex: 0 0 auto;
  padding-left: 0;
}

.nav-user {
  position: relative;
}

.nav-user-trigger {
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 44px;
  padding: 5px 9px 5px 5px;
  border: 1px solid transparent;
  border-radius: 8px;
  color: var(--ink);
  cursor: pointer;
  list-style: none;
  font-size: var(--text-small);
  font-weight: 600;
  background: #f7f9ff;
}

.nav-user-trigger::-webkit-details-marker {
  display: none;
}

.nav-user-trigger:hover, .nav-user[open] .nav-user-trigger {
  background: #f3f5ff;
  border-color: #e2e7ff;
}

.nav-user-avatar {
  display: grid;
  place-items: center;
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  background: #edf0ff;
  border: 1px solid #e0e5ff;
  border-radius: 50%;
  color: var(--brand);
  font-size: 18px;
}

.nav-user-name {
  max-width: 120px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.nav-user-chevron {
  font-size: 11px;
  color: var(--caption);
  transition: transform 0.18s;
}

.nav-user[open] .nav-user-chevron {
  transform: rotate(180deg);
}

.nav-user-panel {
  position: absolute;
  top: calc(100% + 12px);
  right: 0;
  z-index: 1;
  width: 236px;
  padding: 8px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 12px;
  box-shadow: 0 14px 40px rgba(19, 35, 66, 0.1019607843);
}

.nav-user-heading {
  display: grid;
  gap: 3px;
  margin-bottom: 6px;
  padding: 9px 12px 13px;
  border-bottom: 1px solid var(--line);
}

.nav-user-heading span {
  font-size: var(--text-caption);
  color: var(--caption);
}

.nav-user-heading strong {
  font-size: var(--text-card);
  font-weight: 600;
  overflow-wrap: anywhere;
}

.nav-user-item {
  display: flex;
  align-items: center;
  gap: 11px;
  width: 100%;
  min-height: 44px;
  padding: 10px 12px;
  border: 0;
  border-radius: 7px;
  background: transparent;
  color: var(--ink);
  text-align: left;
  font-size: var(--text-small);
  font-weight: 500;
}

.nav-user-item:hover {
  background: #f3f5ff;
  color: var(--brand);
}

.nav-user-item > .bi-arrow-up-right {
  margin-left: auto;
  color: var(--caption);
}

.nav-user-panel form {
  margin: 0;
}

.nav-user-logout {
  color: var(--muted);
}

.nav-user-trigger:focus-visible, .nav-user-item:focus-visible {
  outline: 2px solid var(--brand);
  outline-offset: 3px;
}

.button {
  border-radius: 7px;
  gap: 22px;
  box-shadow: 0 6px 16px rgba(55, 83, 255, 0.0705882353);
  font-size: var(--text-card);
  min-height: 48px;
}

.button:hover {
  box-shadow: 0 10px 24px rgba(55, 83, 255, 0.1450980392);
}

.button-outline {
  box-shadow: none;
}

.section-heading h2 {
  font-weight: 650;
  letter-spacing: -0.025em;
}

.section-heading p {
  max-width: 650px;
  line-height: 1.85;
  font-size: var(--text-body);
}

.eyebrow {
  letter-spacing: 0.17em;
}

.hero-next {
  padding: 57px 0 0;
  background: radial-gradient(ellipse at 78% 44%, #f0f5ff 0, #fff 54%);
}

.hero-next .hero-layout {
  grid-template-columns: 0.96fr 1.18fr;
  gap: 0;
  min-height: 530px;
}

.hero-copy {
  position: relative;
  z-index: 2;
  padding-bottom: 15px;
}

.hero-next .hero-kicker {
  font-size: var(--text-caption);
  letter-spacing: 0.12em;
  margin-bottom: 25px;
  padding: 8px 12px;
  background: #edf1ff;
  border: 1px solid #e2e8ff;
  border-radius: 4px;
}

.hero-next .hero-kicker::before {
  width: 5px;
  height: 5px;
}

.hero-next h1 {
  font-size: clamp(46px, 4.2vw, 62px);
  line-height: 1.24;
  letter-spacing: -0.035em;
  font-weight: 700;
}

.hero-next h1 em {
  display: inline-block;
  margin-top: 5px;
}

.hero-next .hero-subtitle {
  font-size: clamp(1.125rem, 1.55vw, 1.375rem);
  color: #334462;
  font-weight: 500;
  margin-top: 26px;
  line-height: 1.65;
}

.hero-next .hero-description {
  font-size: var(--text-body);
  color: var(--muted);
  margin-top: 13px;
  line-height: 1.85;
  max-width: 510px;
}

.hero-next .hero-actions {
  margin-top: 30px;
}

.hero-next .hero-footnote {
  font-size: var(--text-caption);
  color: var(--caption);
  margin-top: 25px;
  gap: 8px;
}

.hero-footnote > span {
  height: 5px;
  width: 5px;
  border-radius: 50%;
  background: #27a681;
}

.hero-scene {
  position: relative;
  margin: 0 -72px 0 -25px;
  display: grid;
  align-items: center;
  align-self: stretch;
  min-width: 0;
}

.hero-scene img {
  width: 100%;
  height: auto;
  position: relative;
  z-index: 1;
  mix-blend-mode: multiply;
}

.scene-orbit {
  position: absolute;
  width: 78%;
  height: 80%;
  left: 12%;
  top: 8%;
  border: 1px solid #e4eaff;
  border-radius: 50%;
  opacity: 0.45;
  transform: rotate(-16deg);
}

.scene-orbit::after {
  content: "";
  position: absolute;
  inset: 25px -20px;
  border-radius: 50%;
  border: 1px dashed #d9e2fa;
}

.scene-platform {
  position: absolute;
  z-index: 2;
  top: 0%;
  left: 43%;
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 12px 19px 12px 13px;
  background: rgba(255, 255, 255, 0.9294117647);
  border: 1px solid #dfe6fb;
  box-shadow: 0 12px 30px rgba(49, 77, 151, 0.062745098);
  border-radius: 10px;
}

.scene-label-icon {
  color: var(--brand);
  background: #edf1ff;
  border-radius: 8px;
  width: 37px;
  height: 37px;
  display: grid;
  place-items: center;
  font-size: 23px;
}

.scene-platform strong {
  display: block;
  font-size: 19px;
  line-height: 1.25;
  letter-spacing: -0.04em;
}

.scene-platform div > span {
  display: block;
  font-size: var(--text-caption);
  color: var(--muted);
  margin-top: 3px;
}

.scene-factory {
  position: absolute;
  bottom: 9%;
  right: 9%;
  display: flex;
  align-items: center;
  gap: 10px;
  z-index: 2;
  padding: 9px 13px;
  background: rgba(255, 255, 255, 0.8509803922);
  border: 1px solid #e2e8f6;
  border-radius: 6px;
  backdrop-filter: blur(8px);
}

.scene-label-rule {
  width: 3px;
  height: 30px;
  border-radius: 3px;
  background: var(--brand);
}

.scene-factory strong {
  font-size: var(--text-caption);
  font-weight: 600;
  display: block;
}

.scene-factory div > span {
  font-size: var(--text-caption);
  color: var(--muted);
  display: block;
}

.hero-scene figcaption {
  position: absolute;
  right: 9%;
  bottom: 1%;
  z-index: 2;
  font-size: var(--text-caption);
  color: var(--caption);
  letter-spacing: 0.04em;
}

.hero-scene figcaption span {
  letter-spacing: 0.03em;
  margin-left: 7px;
}

.hero-principles {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  padding: 31px 0 34px;
  border-top: 1px solid #e8ecf6;
  margin-top: 27px;
}

.hero-principles > div {
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: center;
  border-right: 1px solid #e9edf6;
}

.hero-principles > div:first-child {
  justify-content: start;
}

.hero-principles > div:last-child {
  border: 0;
  justify-content: end;
}

.principle-icon {
  font-size: 23px;
  color: #6277ce;
}

.principle-icon.energy {
  color: #329b7d;
}

.hero-principles strong {
  display: block;
  font-weight: 600;
  font-size: var(--text-body);
}

.hero-principles small {
  font-size: var(--text-caption);
  color: var(--caption);
  letter-spacing: 0.03em;
  display: block;
  margin-top: 3px;
}

.architecture-section {
  background: linear-gradient(180deg, #f7f9fe, #f1f5fc);
  position: relative;
}

.architecture-board {
  background: rgba(255, 255, 255, 0.8509803922);
  border: 1px solid #dfe6f4;
  border-radius: 18px;
  padding: 26px 30px 24px;
  box-shadow: 0 20px 60px -30px rgba(130, 146, 185, 0.2705882353), inset 0 1px #fff;
}

.architecture-board-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #ebeff6;
  padding-bottom: 21px;
  margin-bottom: 30px;
  color: #344d79;
  font-size: var(--text-body);
  font-weight: 600;
}

.architecture-board-head > span:first-child {
  display: flex;
  align-items: center;
  gap: 9px;
}

.architecture-board-head em {
  font-style: normal;
  font-size: var(--text-caption);
  color: var(--caption);
  font-weight: 400;
  margin-left: 4px;
}

.architecture-mark {
  display: block;
  width: 23px;
  height: 23px;
  flex-shrink: 0;
  -o-object-fit: contain;
     object-fit: contain;
}

.architecture-caption {
  font-size: var(--text-caption);
  letter-spacing: 0.08em;
  color: var(--caption);
  font-weight: 500;
}

.architecture-grid {
  display: grid;
  grid-template-columns: 1fr 48px 1.6fr 48px 1fr;
  grid-template-rows: auto 61px auto;
  grid-template-areas: ". . platform api api" ". . up api api" "energy power factory local apps";
}

.arch-overline {
  display: block;
  font-size: var(--text-caption);
  letter-spacing: 0.06em;
  line-height: 1.6;
  color: var(--caption);
}

.arch-platform {
  grid-area: platform;
  color: #fff;
  background: linear-gradient(120deg, #3753ff, #405bed);
  padding: 24px 21px 20px;
  border: 1px solid #526fff;
  border-radius: 12px;
  box-shadow: 0 10px 30px rgba(55, 83, 255, 0.137254902);
  position: relative;
}

.arch-platform-title {
  display: flex;
  gap: 12px;
  align-items: center;
}

.arch-platform-title .arch-overline {
  color: #fff;
  font-size: var(--text-caption);
}

.arch-platform-title h3 {
  font-size: 29px;
  margin-top: 4px;
  font-weight: 650;
}

.arch-platform-title h3 > span {
  font-size: var(--text-small);
  margin-left: 8px;
  font-weight: 500;
  letter-spacing: 0;
}

.arch-platform-symbol {
  font-size: 32px;
  line-height: 1;
}

.arch-capabilities {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 5px;
  margin-top: 21px;
  padding-top: 16px;
  border-top: 1px solid rgba(255, 255, 255, 0.1960784314);
}

.arch-capabilities > span {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  font-size: var(--text-caption);
  white-space: nowrap;
  color: #fff;
}

.arch-capabilities i {
  font-size: 18px;
  line-height: 1.3;
  color: #d5ddff;
}

.arch-api-route {
  grid-area: api;
  position: relative;
}

.arch-api-route::before {
  content: "";
  position: absolute;
  left: 0;
  right: calc((100% - 48px) / 2);
  top: 69px;
  bottom: 9px;
  border: solid #91a3f7;
  border-width: 2px 2px 0 0;
  border-radius: 0 19px 0 0;
}

.arch-api-route > span {
  position: absolute;
  left: 23px;
  top: 20px;
  color: #5872be;
}

.arch-api-route strong {
  display: block;
  font-size: var(--text-small);
  font-weight: 600;
}

.arch-api-route small {
  display: block;
  font-size: var(--text-caption);
  margin-top: 3px;
}

.arch-api-route > i {
  position: absolute;
  bottom: -6px;
  right: calc((100% - 48px) / 2 - 9px);
  color: #91a3f7;
  font-size: 20px;
}

.arch-up {
  grid-area: up;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 9px;
  font-size: var(--text-small);
  color: #5a72c2;
}

.arch-up i {
  font-size: 25px;
  color: #7c93ee;
}

.arch-side {
  border: 1px solid #e1e8f3;
  border-radius: 11px;
  padding: 23px 21px 0;
  background: #fff;
  overflow: hidden;
}

.arch-energy {
  grid-area: energy;
  background: linear-gradient(160deg, #f2fbf7 0, #fff 60%);
  border-color: #d9ece4;
}

.arch-apps {
  grid-area: apps;
  background: linear-gradient(160deg, #f0f7ff 0, #fff 60%);
}

.arch-side-head {
  display: flex;
  align-items: center;
  gap: 11px;
}

.arch-side-head > i {
  font-size: 28px;
  color: #3e987b;
  line-height: 1;
}

.arch-side h3 {
  font-size: 21px;
  margin-top: 4px;
  letter-spacing: -0.03em;
}

.arch-energy h3 {
  color: #266951;
}

.arch-energy .arch-overline {
  color: #467c66;
}

.arch-side-description {
  font-size: var(--text-caption);
  color: var(--muted);
  margin-top: 10px;
}

.arch-apps .arch-side-head > i {
  color: #4f7dd0;
}

.arch-resource-list {
  margin: 16px 0 18px;
}

.arch-resource-list > div {
  display: flex;
  align-items: center;
  gap: 13px;
  padding: 11px 0;
}

.arch-resource-list h4 {
  font-size: var(--text-body);
  line-height: 1.4;
  font-weight: 600;
}

.arch-resource-list p {
  font-size: var(--text-caption);
  color: var(--muted);
  margin-top: 4px;
}

.arch-resource-icon {
  display: grid;
  place-items: center;
  width: 41px;
  height: 41px;
  border-radius: 9px;
  background: #edf7f2;
  color: #389b77;
  font-size: 24px;
  flex: 0 0 auto;
}

.arch-apps .arch-resource-icon {
  background: #eef4ff;
  color: #6085d6;
}

.arch-side-foot {
  display: flex;
  align-items: center;
  gap: 7px;
  border-top: 1px solid #e7eee9;
  margin: 0 -21px;
  padding: 14px 15px;
  color: #486f5d;
  background: #f5faf7;
  font-size: var(--text-caption);
  justify-content: center;
}

.arch-side-foot i {
  font-size: var(--text-body);
}

.arch-apps .arch-side-foot {
  background: #f6f8ff;
  border-color: #e6edf7;
  color: #53688c;
}

.arch-horizontal {
  align-self: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}

.arch-horizontal span {
  font-size: var(--text-caption);
  white-space: nowrap;
}

.arch-horizontal i {
  font-size: 27px;
  line-height: 1;
}

.arch-power {
  grid-area: power;
  color: #53ab8c;
}

.arch-local {
  grid-area: local;
  color: #688bd6;
}

.arch-factory {
  grid-area: factory;
  border: 1px solid #cdd9ff;
  border-radius: 11px;
  background: linear-gradient(160deg, #f8faff 0, #fff 60%);
  padding: 20px 21px 18px;
  box-shadow: 0 8px 24px rgba(49, 91, 203, 0.0431372549);
}

.arch-factory-heading {
  text-align: center;
}

.arch-factory-heading h3 {
  font-size: 26px;
  margin-top: 5px;
  color: #304e9a;
}

.arch-factory-heading p {
  font-size: var(--text-caption);
  color: var(--muted);
  margin-top: 6px;
}

.arch-machine {
  position: relative;
  width: 84%;
  height: 164px;
  margin: 22px auto 25px;
  padding: 14px 13px 21px;
  border: 5px solid #d1dcee;
  border-radius: 6px;
  background: #e6edf8;
  box-shadow: 8px 8px 0 rgba(223, 231, 244, 0.2666666667), 0 18px 24px -15px rgba(65, 92, 149, 0.4);
}

.arch-machine-roof {
  position: absolute;
  height: 9px;
  left: -5px;
  right: -5px;
  top: -13px;
  background: repeating-linear-gradient(90deg, #e9eef7, #e9eef7 4px, #d3deee 4px, #d3deee 6px);
  transform: skewX(-24deg);
  transform-origin: bottom;
  border: 1px solid #d1dbee;
  border-radius: 2px;
}

.arch-machine-racks {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 7px;
  height: 100%;
}

.arch-machine-racks > div {
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  padding: 7px 5px;
  background: linear-gradient(125deg, #3e506e, #19283f);
  border-radius: 3px;
  box-shadow: inset 0 0 0 1px #758eab;
}

.arch-machine-racks span {
  display: block;
  height: 22px;
  border: 1px solid #63768f;
  background: repeating-linear-gradient(0deg, transparent 0, transparent 2px, rgba(173, 193, 224, 0.0784313725) 2px, rgba(173, 193, 224, 0.0784313725) 3px);
  border-radius: 2px;
  position: relative;
}

.arch-machine-racks span::after {
  content: "";
  width: 3px;
  height: 3px;
  background: #80b7ff;
  box-shadow: 0 6px #80b7ff;
  position: absolute;
  top: 4px;
  left: 3px;
  border-radius: 50%;
  opacity: 0.38;
  animation: zeonexus-rack-led-pulse 2.4s ease-in-out infinite;
  will-change: opacity, background-color, box-shadow;
}

.arch-machine-racks > div:nth-child(2n) span::after {
  animation-delay: -0.65s;
}

.arch-machine-racks > div:nth-child(3n) span::after {
  animation-delay: -1.25s;
}

.arch-machine-racks span:nth-child(2)::after {
  animation-duration: 2.8s;
}

.arch-machine-racks span:nth-child(3)::after {
  animation-duration: 3.15s;
}

@keyframes zeonexus-rack-led-pulse {
  0%, 56%, 76%, 100% {
    opacity: 0.38;
    background: #80b7ff;
    box-shadow: 0 6px #80b7ff;
  }
  62%, 70% {
    opacity: 1;
    background: #b8d4ff;
    box-shadow: 0 0 5px rgba(55, 83, 255, 0.9), 0 6px #80b7ff, 0 6px 6px rgba(55, 83, 255, 0.72);
  }
  66%, 73% {
    opacity: 0.55;
  }
}
@media (prefers-reduced-motion: reduce) {
  .arch-machine-racks span::after {
    animation: none !important;
    opacity: 0.72;
  }
}
.arch-token {
  position: absolute;
  bottom: -12px;
  left: 50%;
  transform: translateX(-50%);
  min-width: 94px;
  text-align: center;
  background: linear-gradient(120deg, #3753ff, #6689ff);
  color: #fff;
  font-size: var(--text-card);
  font-weight: 650;
  letter-spacing: 0.09em;
  padding: 7px 16px;
  border: 1px solid #9cb4ff;
  border-radius: 8px;
  box-shadow: 0 6px 14px rgba(55, 83, 255, 0.1450980392);
}

.arch-factory-features {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px 8px;
  border-top: 1px solid #e2e9f7;
  padding-top: 16px;
  font-size: var(--text-caption);
  color: #536888;
}

.arch-factory-features span {
  display: flex;
  align-items: center;
  gap: 6px;
}

.arch-factory-features i {
  font-size: var(--text-card);
  color: #597ad9;
}

.architecture-flow {
  margin-top: 29px;
  display: grid;
  grid-template-columns: 1fr 30px 1fr 30px 1fr 30px 1fr;
  gap: 7px;
  align-items: center;
}

.architecture-flow > span {
  text-align: center;
  padding: 12px 6px;
  font-size: var(--text-small);
  color: #5c72a2;
  background: #f0f4ff;
  border-radius: 5px;
  font-weight: 500;
}

.architecture-flow > span:first-child {
  color: #488670;
  background: #edf7f2;
}

.architecture-flow b {
  font-size: var(--text-caption);
  font-weight: 500;
  opacity: 1;
  margin-right: 8px;
}

.architecture-flow > i {
  color: #b2c0dd;
  text-align: center;
}

.architecture-note {
  text-align: center;
  font-size: var(--text-small);
  color: var(--muted);
  margin-top: 20px;
}

.section-fineprint {
  font-size: var(--text-caption);
  line-height: 1.8;
  color: var(--caption);
  text-align: center;
  margin-top: 20px;
}

.service-card {
  padding: 32px;
  border-color: #e1e7f2;
  box-shadow: 0 8px 20px rgba(18, 36, 68, 0.0156862745);
  position: relative;
  overflow: hidden;
}

.service-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: #3753ff;
  opacity: 0;
  transition: opacity 0.2s;
}

.service-card:hover {
  box-shadow: 0 14px 35px rgba(39, 69, 137, 0.0705882353);
  border-color: #ced8f4;
}

.service-card:hover::before {
  opacity: 1;
}

.service-icon {
  background: linear-gradient(140deg, #f1f5ff, #eaf0ff);
  border: 1px solid #e1e8ff;
  width: 53px;
  height: 53px;
}

.service-card h3 {
  font-size: 24px;
  font-weight: 600;
}

.service-card p {
  line-height: 1.85;
  font-size: var(--text-body);
}

.service-status {
  background: #f8faff;
  border-color: #e7ecf5;
  font-size: var(--text-caption);
  color: #586b8a;
}

.factory-banner {
  display: flex;
  align-items: center;
  gap: 23px;
  padding: 27px 33px;
  margin-top: 27px;
  background: linear-gradient(105deg, #f2f5ff, #fafbff);
  border: 1px solid #e3e9f8;
  border-radius: 10px;
  transition: border-color 0.2s;
}

.factory-banner:hover {
  border-color: #bdcaff;
}

.factory-banner-symbol {
  display: grid;
  place-items: center;
  width: 69px;
  height: 69px;
  border-radius: 15px;
  color: #6079d2;
  background: #e8edff;
  font-size: 35px;
  flex-shrink: 0;
}

.factory-banner .small-label {
  font-size: var(--text-caption);
  color: var(--caption);
}

.factory-banner h3 {
  font-size: 20px;
  margin: 6px 0;
  font-weight: 550;
}

.factory-banner p {
  font-size: var(--text-card);
  color: var(--muted);
}

.factory-banner-link {
  display: flex;
  align-items: center;
  gap: 20px;
  margin-left: auto;
  white-space: nowrap;
  color: var(--brand);
  font-size: var(--text-small);
}

.home-network {
  background: #f5f8fc;
}

.network-panel {
  box-shadow: 0 13px 36px -20px rgba(111, 136, 181, 0.2666666667);
  border-radius: 13px;
}

.node-venue, .node-state {
  font-size: var(--text-caption);
}

.node-detail > p {
  font-size: var(--text-small);
  line-height: 1.8;
  color: var(--muted);
}

.node-detail dl {
  font-size: var(--text-small);
}

.node-detail .text-link {
  font-size: var(--text-small);
}

.map-caption {
  color: var(--caption);
  font-size: var(--text-caption);
  flex-wrap: wrap;
}

.industry-card {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid #e3e8f2;
  border-radius: 12px;
  background: #fff;
  transition: border-color 0.2s, box-shadow 0.2s;
}

.industry-card:hover, .industry-card:focus-within {
  border-color: #bdcaff;
  box-shadow: 0 14px 32px -20px rgba(55, 83, 255, 0.3333333333);
}

.industry-grid {
  gap: 20px;
}

.industry-cover {
  aspect-ratio: 3/2;
  overflow: hidden;
  background: #f0f4fc;
  border-bottom: 1px solid #edf1f8;
}

.industry-cover img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.industry-card-body {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 26px 23px;
}

.industry-card p {
  font-size: var(--text-card);
  min-height: 0;
  line-height: 1.85;
}

.industry-card a {
  align-self: flex-start;
  margin-top: auto;
  padding-top: 24px;
}

.cta-section {
  position: relative;
  overflow: hidden;
  background: linear-gradient(115deg, #2e49e7, #3753ff 65%, #405bed);
}

.cta-section::after {
  content: "";
  position: absolute;
  width: 650px;
  height: 650px;
  border: 1px solid rgba(255, 255, 255, 0.0941176471);
  border-radius: 50%;
  right: -160px;
  top: -175px;
  box-shadow: 0 0 0 60px rgba(255, 255, 255, 0.0196078431), 0 0 0 120px rgba(255, 255, 255, 0.0156862745);
  pointer-events: none;
}

.cta-inner {
  position: relative;
  z-index: 1;
}

.cta-inner h2 {
  font-size: 38px;
  line-height: 1.4;
}

.cta-inner p {
  margin-top: 17px;
  font-size: var(--text-body);
  color: #e5eaff;
}

.footer-main > div > a:not(.brand) {
  color: var(--muted);
  font-size: var(--text-small);
}

.footer-bottom {
  color: var(--caption);
  font-size: var(--text-caption);
}

@media (max-width: 1199px) {
  .hero-next .hero-layout {
    min-height: 470px;
  }
  .hero-next h1 {
    font-size: 49px;
    letter-spacing: -0.035em;
  }
  .hero-next .hero-subtitle {
    font-size: clamp(1.125rem, 1.55vw, 1.375rem);
    font-weight: 500;
    line-height: 1.65;
  }
  .hero-scene {
    margin-right: -32px;
  }
  .scene-platform {
    left: 40%;
    top: 9%;
    padding: 10px;
  }
  .scene-platform strong {
    font-size: 17px;
  }
  .architecture-board {
    padding: 22px;
  }
  .architecture-grid {
    grid-template-columns: 1fr 36px 1.5fr 36px 1fr;
  }
  .arch-side {
    padding: 20px 15px 0;
  }
  .arch-side-foot {
    margin-inline: -15px;
    font-size: var(--text-caption);
    color: #486f5d;
  }
  .arch-platform {
    padding-inline: 16px;
  }
  .arch-platform-title h3 {
    font-size: 26px;
  }
  .arch-platform-title h3 > span {
    font-size: var(--text-caption);
  }
  .arch-capabilities > span {
    font-size: var(--text-caption);
  }
  .arch-side h3 {
    font-size: 19px;
  }
  .arch-overline {
    font-size: var(--text-caption);
    letter-spacing: 0.06em;
    color: var(--caption);
  }
  .arch-resource-list p {
    font-size: var(--text-caption);
    color: var(--muted);
  }
  .arch-resource-list > div {
    gap: 10px;
  }
  .arch-resource-icon {
    width: 34px;
    height: 38px;
    font-size: 22px;
  }
  .arch-factory {
    padding-inline: 16px;
  }
  .arch-factory-features {
    font-size: var(--text-caption);
    color: #536888;
  }
  .arch-machine {
    width: 90%;
    padding-inline: 8px;
  }
  .arch-machine-racks {
    gap: 5px;
  }
  .arch-api-route small {
    font-size: var(--text-caption);
  }
  .arch-api-route > span {
    left: 14px;
  }
}
@media (max-width: 1100px) {
  .site-header {
    height: 76px;
  }
  .nav-toggle {
    display: block;
    width: 44px;
    height: 44px;
    padding: 0;
    line-height: 1;
  }
  .main-nav {
    display: none;
    position: absolute;
    left: 0;
    right: 0;
    top: 76px;
    padding: 24px;
    background: #fff;
    border-bottom: 1px solid var(--line);
    box-shadow: 0 15px 20px rgba(28, 41, 93, 0.031372549);
    font-size: var(--text-card);
    font-weight: 500;
  }
  .main-nav.is-open {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
  }
  .main-nav > a::after {
    display: none;
  }
  .nav-shell {
    gap: 12px;
  }
  .nav-actions {
    justify-content: flex-end;
    padding: 0;
    margin: 0 0 0 auto;
  }
  .nav-trial {
    display: none;
  }
  .nav-access {
    display: block;
    font-size: var(--text-small);
  }
}
@media (max-width: 639px) {
  .nav-shell {
    gap: 8px;
  }
  .nav-user-avatar {
    display: none;
  }
  .nav-user-trigger {
    gap: 6px;
    padding-inline: 6px;
  }
  .nav-user-name {
    max-width: clamp(30px, 100vw - 285px, 80px);
  }
  .nav-user-panel {
    right: -52px;
    width: min(260px, 100vw - 40px);
  }
  .nav-toggle {
    flex: 0 0 44px;
  }
}
@media (max-width: 959px) {
  .hero-next {
    padding-top: 36px;
  }
  .hero-next .hero-layout {
    min-height: 410px;
    grid-template-columns: 1fr 1fr;
  }
  .hero-next h1 {
    font-size: 40px;
    letter-spacing: -0.035em;
  }
  .hero-next .hero-subtitle {
    font-size: clamp(1.125rem, 1.55vw, 1.375rem);
    margin-top: 22px;
    font-weight: 500;
    line-height: 1.65;
  }
  .hero-next .hero-description {
    font-size: var(--text-body);
    color: var(--muted);
    line-height: 1.85;
  }
  .hero-next .hero-kicker {
    font-size: var(--text-caption);
    letter-spacing: 0.12em;
  }
  .hero-scene {
    margin-left: -35px;
  }
  .scene-platform {
    top: 10%;
    left: 40%;
    gap: 8px;
  }
  .scene-label-icon {
    width: 29px;
    height: 29px;
    font-size: 18px;
  }
  .scene-platform strong {
    font-size: var(--text-card);
  }
  .scene-platform div > span {
    font-size: var(--text-caption);
    color: var(--muted);
  }
  .scene-factory {
    bottom: 11%;
    right: 4%;
  }
  .scene-factory strong {
    font-size: var(--text-caption);
  }
  .scene-factory div > span {
    font-size: var(--text-caption);
    color: var(--muted);
  }
  .hero-principles {
    gap: 15px;
    padding-block: 25px;
  }
  .hero-principles > div {
    gap: 10px;
  }
  .hero-principles strong {
    font-size: var(--text-body);
    font-weight: 600;
  }
  .hero-principles small {
    font-size: var(--text-caption);
    letter-spacing: 0.03em;
    color: var(--caption);
  }
  .principle-icon {
    font-size: 21px;
  }
  .architecture-grid {
    grid-template-columns: 1fr 27px 1.4fr 27px 1fr;
  }
  .arch-side {
    padding-inline: 12px;
  }
  .arch-side-head {
    gap: 8px;
  }
  .arch-side-head > i {
    font-size: 21px;
  }
  .arch-side h3 {
    font-size: 17px;
  }
  .arch-side-head .arch-overline {
    font-size: var(--text-caption);
  }
  .arch-side-description {
    font-size: var(--text-caption);
    color: var(--muted);
  }
  .arch-side-foot {
    margin-inline: -12px;
    font-size: var(--text-caption);
    gap: 3px;
    color: #486f5d;
  }
  .arch-side-foot i {
    font-size: var(--text-small);
  }
  .arch-resource-list {
    margin-top: 18px;
  }
  .arch-resource-list h4 {
    font-size: var(--text-body);
  }
  .arch-resource-list p {
    font-size: var(--text-caption);
    color: var(--muted);
  }
  .arch-resource-icon {
    width: 27px;
    height: 34px;
    font-size: 20px;
  }
  .arch-platform-symbol {
    display: none;
  }
  .arch-platform-title h3 {
    font-size: 24px;
  }
  .arch-platform-title h3 > span {
    font-size: var(--text-caption);
    margin-left: 3px;
  }
  .arch-capabilities {
    gap: 2px;
  }
  .arch-capabilities > span {
    font-size: var(--text-caption);
  }
  .arch-factory {
    padding-inline: 12px;
  }
  .arch-factory-heading h3 {
    font-size: 22px;
  }
  .arch-factory-heading p {
    font-size: var(--text-caption);
    color: var(--muted);
  }
  .arch-machine {
    height: 140px;
    margin-top: 30px;
  }
  .arch-machine-racks > div {
    padding-inline: 3px;
  }
  .arch-factory-features {
    gap: 8px 4px;
    font-size: var(--text-caption);
    color: #536888;
  }
  .arch-factory-features i {
    font-size: var(--text-caption);
  }
  .arch-api-route strong {
    font-size: var(--text-small);
  }
  .arch-api-route small {
    font-size: var(--text-caption);
  }
  .arch-horizontal span {
    font-size: var(--text-caption);
  }
  .arch-horizontal i {
    font-size: 23px;
  }
  .factory-banner h3 {
    font-size: 18px;
  }
  .factory-banner {
    padding: 24px;
    gap: 19px;
  }
  .factory-banner-link {
    font-size: var(--text-small);
    gap: 10px;
  }
}
@media (max-width: 959px) {
  .architecture-board {
    padding: 19px 20px;
  }
  .architecture-board-head {
    font-size: var(--text-body);
    margin-bottom: 23px;
  }
  .architecture-board-head em {
    font-size: var(--text-caption);
    color: var(--caption);
  }
  .architecture-caption {
    display: none;
    font-size: var(--text-caption);
    color: var(--caption);
    letter-spacing: 0.08em;
  }
  .architecture-grid {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: auto;
    grid-template-areas: "energy" "power" "factory" "up" "platform" "api" "apps";
  }
  .arch-side {
    padding: 21px 20px 0;
  }
  .arch-side-head {
    gap: 10px;
  }
  .arch-side h3 {
    font-size: 21px;
  }
  .arch-side-head > i {
    font-size: 27px;
  }
  .arch-side-head .arch-overline {
    font-size: var(--text-caption);
  }
  .arch-side-description {
    font-size: var(--text-caption);
    color: var(--muted);
  }
  .arch-resource-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
    margin: 20px 0;
  }
  .arch-resource-list > div {
    display: block;
    padding: 0;
  }
  .arch-resource-icon {
    width: 37px;
    height: 37px;
    font-size: 23px;
    margin-bottom: 10px;
  }
  .arch-resource-list h4 {
    font-size: var(--text-body);
  }
  .arch-resource-list p {
    font-size: var(--text-caption);
    color: var(--muted);
  }
  .arch-side-foot {
    margin-inline: -20px;
    font-size: var(--text-caption);
    padding-block: 12px;
    gap: 7px;
    color: #486f5d;
  }
  .arch-side-foot i {
    font-size: 17px;
  }
  .arch-horizontal {
    flex-direction: row;
    height: 60px;
    justify-content: center;
    gap: 8px;
  }
  .arch-horizontal i {
    transform: rotate(90deg);
    font-size: 25px;
  }
  .arch-horizontal span {
    font-size: var(--text-caption);
  }
  .arch-local {
    display: none;
  }
  .arch-up {
    height: 60px;
    font-size: var(--text-small);
  }
  .arch-up i {
    transform: rotate(180deg);
  }
  .arch-factory {
    padding: 24px;
  }
  .arch-factory-heading h3 {
    font-size: 27px;
  }
  .arch-factory-heading p {
    font-size: var(--text-caption);
    color: var(--muted);
  }
  .arch-overline {
    font-size: var(--text-caption);
    letter-spacing: 0.06em;
    color: var(--caption);
  }
  .arch-machine {
    width: min(290px, 90%);
    height: 162px;
    margin-block: 26px 30px;
  }
  .arch-machine-racks > div {
    padding-inline: 6px;
  }
  .arch-factory-features {
    font-size: var(--text-caption);
    gap: 11px;
    color: #536888;
  }
  .arch-factory-features i {
    font-size: var(--text-card);
  }
  .arch-platform {
    padding: 24px 20px;
  }
  .arch-platform-symbol {
    display: block;
    font-size: 33px;
  }
  .arch-platform-title h3 {
    font-size: 28px;
  }
  .arch-platform-title h3 > span {
    font-size: var(--text-small);
    margin-left: 5px;
  }
  .arch-capabilities {
    margin-top: 20px;
    gap: 6px;
  }
  .arch-capabilities > span {
    font-size: var(--text-caption);
  }
  .arch-api-route {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    height: 76px;
  }
  .arch-api-route::before {
    display: none;
  }
  .arch-api-route > span, .arch-api-route > i {
    position: static;
  }
  .arch-api-route > i {
    font-size: 25px;
  }
  .arch-api-route strong {
    font-size: var(--text-small);
    font-weight: 500;
  }
  .arch-api-route small {
    font-size: var(--text-caption);
    margin-top: 0;
  }
  .architecture-flow {
    grid-template-columns: 1fr 1fr;
    gap: 9px;
    margin-top: 23px;
  }
  .architecture-flow > i {
    display: none;
  }
  .architecture-flow > span {
    font-size: var(--text-small);
    text-align: left;
    padding: 11px 13px;
    font-weight: 500;
  }
  .architecture-note {
    font-size: var(--text-small);
    text-align: left;
    line-height: 1.9;
    color: var(--muted);
  }
  .factory-banner {
    flex-wrap: wrap;
  }
  .factory-banner-link {
    margin-left: 89px;
    font-size: var(--text-small);
  }
}
@media (max-width: 639px) {
  .hero-next {
    padding-top: 35px;
  }
  .hero-next .hero-layout {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .hero-copy {
    padding: 0;
  }
  .hero-next h1 {
    font-size: 43px;
    letter-spacing: -0.035em;
  }
  .hero-next .hero-kicker {
    margin-bottom: 24px;
    font-size: var(--text-caption);
    letter-spacing: 0.12em;
  }
  .hero-next .hero-subtitle {
    font-size: clamp(1.125rem, 1.55vw, 1.375rem);
    margin-top: 23px;
    font-weight: 500;
    line-height: 1.65;
  }
  .hero-next .hero-description {
    font-size: var(--text-body);
    line-height: 1.85;
    margin-top: 11px;
    color: var(--muted);
  }
  .desktop-break {
    display: none;
  }
  .hero-next .hero-actions {
    gap: 12px;
    margin-top: 26px;
  }
  .hero-next .hero-actions .button {
    padding: 13px 18px;
    font-size: var(--text-card);
    gap: 16px;
  }
  .hero-next .hero-footnote {
    font-size: var(--text-caption);
    margin-top: 19px;
    color: var(--caption);
  }
  .hero-scene {
    margin: 27px -15px 0;
    min-height: 295px;
  }
  .hero-scene img {
    width: 100%;
  }
  .scene-platform {
    top: 0;
    left: 45%;
    padding: 9px 12px;
  }
  .scene-platform strong {
    font-size: var(--text-body);
  }
  .scene-platform div > span {
    font-size: var(--text-caption);
    color: var(--muted);
  }
  .scene-factory {
    right: 1%;
    bottom: 7%;
    padding: 7px 10px;
  }
  .scene-factory strong {
    font-size: var(--text-caption);
  }
  .hero-scene figcaption {
    right: 1%;
    bottom: 0;
    font-size: var(--text-caption);
    color: var(--caption);
    letter-spacing: 0.04em;
  }
  .hero-principles {
    grid-template-columns: 1fr 1fr;
    gap: 21px 16px;
    margin-top: 24px;
    padding: 27px 0 31px;
  }
  .hero-principles > div, .hero-principles > div:last-child {
    justify-content: start;
    border: none;
    gap: 10px;
  }
  .hero-principles strong {
    font-size: var(--text-body);
    font-weight: 600;
  }
  .hero-principles small {
    font-size: var(--text-caption);
    letter-spacing: 0.03em;
    color: var(--caption);
  }
  .principle-icon {
    font-size: 21px;
  }
  .architecture-board {
    padding: 16px 14px 20px;
    border-radius: 12px;
  }
  .architecture-board-head {
    font-size: var(--text-body);
    padding-bottom: 17px;
  }
  .architecture-board-head > span:first-child {
    gap: 7px;
  }
  .architecture-board-head em {
    font-size: var(--text-caption);
    margin: 0;
    color: var(--caption);
  }
  .architecture-mark {
    width: 20px;
    height: 20px;
  }
  .arch-side {
    padding-inline: 16px;
  }
  .arch-side-foot {
    margin-inline: -16px;
    font-size: var(--text-caption);
    color: #486f5d;
  }
  .arch-resource-list p {
    font-size: var(--text-caption);
    color: var(--muted);
  }
  .arch-factory {
    padding-inline: 16px;
  }
  .arch-machine {
    width: 91%;
  }
  .arch-factory-features {
    font-size: var(--text-caption);
    gap: 11px 4px;
    color: #536888;
  }
  .arch-platform {
    padding-inline: 16px;
  }
  .arch-platform-title {
    gap: 9px;
  }
  .arch-platform-title h3 {
    font-size: 25px;
  }
  .arch-platform-title h3 > span {
    font-size: var(--text-caption);
  }
  .arch-platform-symbol {
    font-size: 27px;
  }
  .arch-platform-title .arch-overline {
    font-size: var(--text-caption);
    color: #fff;
  }
  .arch-capabilities {
    gap: 3px;
  }
  .arch-capabilities > span {
    font-size: var(--text-caption);
  }
  .arch-capabilities i {
    font-size: 17px;
  }
  .section-fineprint {
    font-size: var(--text-caption);
    text-align: left;
    color: var(--caption);
  }
  .service-card {
    padding: 28px;
  }
  .factory-banner {
    padding: 23px;
    gap: 15px;
  }
  .factory-banner-symbol {
    width: 45px;
    height: 45px;
    font-size: 28px;
    border-radius: 10px;
  }
  .factory-banner > div:nth-child(2) {
    flex: 1;
  }
  .factory-banner h3 {
    font-size: var(--text-body);
    line-height: 1.5;
  }
  .factory-banner p {
    font-size: var(--text-card);
    line-height: 1.8;
    margin-top: 8px;
    color: var(--muted);
  }
  .factory-banner-link {
    margin-left: 60px;
    font-size: var(--text-small);
  }
  .node-venue {
    font-size: var(--text-caption);
    color: var(--muted);
  }
  .node-state {
    font-size: var(--text-caption);
    color: var(--muted);
  }
  .industry-grid {
    grid-template-columns: 1fr 1fr;
    gap: 12px;
  }
  .industry-card-body {
    padding: 23px 20px;
  }
  .industry-card h3 {
    font-size: 20px;
  }
  .industry-card p {
    font-size: var(--text-card);
    min-height: 0;
    line-height: 1.85;
  }
  .industry-card a {
    font-size: var(--text-small);
    gap: 8px;
  }
  .cta-inner h2 {
    font-size: 30px;
  }
}
@media (max-width: 374px) {
  .hero-next h1 {
    font-size: 38px;
    letter-spacing: -0.035em;
  }
  .hero-next .hero-subtitle {
    font-size: clamp(1.125rem, 1.55vw, 1.375rem);
    font-weight: 500;
    line-height: 1.65;
  }
  .hero-next .hero-actions .button {
    padding-inline: 15px;
    font-size: var(--text-card);
  }
  .arch-platform-title h3 {
    font-size: 23px;
  }
  .arch-platform-symbol {
    display: none;
  }
  .arch-capabilities > span {
    font-size: var(--text-caption);
  }
  .arch-resource-list h4 {
    font-size: var(--text-body);
  }
  .arch-resource-list p {
    font-size: var(--text-caption);
    color: var(--muted);
  }
}
.section-heading > div {
  min-width: 0;
}

.section-heading > .text-link {
  flex-shrink: 0;
  padding-block: 8px;
}

.eyebrow {
  letter-spacing: 0.12em;
}

.hero-principles > div > span:last-child {
  min-width: 0;
}

.hero-principles small {
  line-height: 1.5;
}

.service-card {
  border-radius: 12px;
}

.service-card:hover {
  transform: translateY(-3px);
}

.footer-main > div > a:not(.brand) {
  padding-block: 6px;
  margin-block: 2px;
  min-height: 40px;
}

.arch-side-head > div {
  min-width: 0;
}

.arch-side-foot {
  line-height: 1.7;
}

.arch-resource-list p {
  line-height: 1.7;
}

.arch-factory-features {
  line-height: 1.6;
}

.arch-platform-title {
  flex-wrap: wrap;
}

.arch-horizontal span {
  white-space: normal;
  text-align: center;
  line-height: 1.5;
}

.arch-api-route > span {
  right: 10px;
}

.arch-api-route::before {
  top: 83px;
}

@media (max-width: 1100px) {
  .main-nav {
    font-size: var(--text-body);
    max-height: calc(100dvh - 76px);
    overflow-y: auto;
  }
  .main-nav > a {
    min-height: 48px;
    padding-inline: 12px;
    border-radius: 6px;
  }
  .main-nav > a[aria-current=page] {
    background: #f1f4ff;
  }
}
@media (min-width: 640px) and (max-width: 959px) {
  .hero-next .hero-layout {
    grid-template-columns: 1.1fr 1fr;
    min-height: 460px;
  }
  .hero-next h1 {
    font-size: 42px;
  }
  .hero-next .hero-description {
    max-width: 360px;
  }
  .desktop-break {
    display: none;
  }
  .hero-scene {
    margin-left: 0;
    margin-right: -12px;
  }
  .scene-platform {
    left: auto;
    right: 12%;
  }
  .hero-principles {
    grid-template-columns: 1fr 1fr;
    gap: 24px;
  }
  .hero-principles > div, .hero-principles > div:last-child {
    justify-content: start;
    border: 0;
  }
  .hero-scene figcaption {
    right: 4%;
    max-width: 220px;
    text-align: right;
  }
  .hero-scene figcaption span {
    display: block;
    margin: 4px 0 0;
  }
}
@media (max-width: 959px) {
  .arch-api-route > span {
    text-align: center;
  }
  .arch-capabilities {
    gap: 12px;
  }
  .arch-platform-title {
    justify-content: center;
  }
  .arch-platform-title h3 {
    font-size: 28px;
  }
  .arch-platform-title h3 > span {
    font-size: var(--text-small);
  }
  .architecture-board-head {
    flex-wrap: wrap;
    gap: 12px;
  }
  .arch-horizontal {
    height: 52px;
  }
  .arch-up {
    height: 52px;
  }
  .architecture-note {
    text-align: left;
  }
}
@media (max-width: 639px) {
  .section-heading p, .section-description {
    font-size: var(--text-card);
  }
  .section-heading h2, .section-title {
    font-size: 30px;
    line-height: 1.4;
  }
  .section-heading > a {
    font-size: var(--text-small);
    margin-top: 18px;
  }
  .hero-next .hero-actions .button {
    padding-inline: 14px;
    gap: 12px;
  }
  .scene-platform {
    left: auto;
    right: 5%;
  }
  .hero-scene figcaption {
    right: 4%;
  }
  .hero-principles {
    gap: 24px 16px;
  }
  .hero-principles strong {
    font-size: var(--text-small);
  }
  .hero-principles > div {
    align-items: start;
  }
  .hero-principles small {
    font-size: var(--text-caption);
    letter-spacing: 0;
  }
  .architecture-board-head {
    font-size: var(--text-small);
  }
  .architecture-board-head > span:first-child {
    flex-wrap: wrap;
    gap: 6px;
  }
  .architecture-board-head em {
    flex-basis: 100%;
    padding-left: 26px;
  }
  .arch-resource-list {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .arch-resource-list > div {
    display: flex;
    gap: 12px;
  }
  .arch-resource-icon {
    margin: 0;
    width: 38px;
    height: 38px;
  }
  .arch-side-foot {
    justify-content: start;
    padding-inline: 16px;
  }
  .arch-capabilities {
    display: flex;
    flex-wrap: wrap;
    gap: 16px 8px;
  }
  .arch-capabilities > span {
    flex: 1 1 calc(33.333% - 8px);
    white-space: normal;
    text-align: center;
  }
  .arch-platform-title {
    justify-content: start;
  }
  .arch-platform-title h3 {
    font-size: 25px;
  }
  .arch-factory-features {
    gap: 14px 10px;
  }
  .arch-factory-features span {
    align-items: start;
  }
  .arch-factory-features i {
    flex-shrink: 0;
  }
  .architecture-flow > span {
    padding-inline: 12px;
  }
  .service-card {
    padding: 26px;
  }
  .service-card h3 {
    font-size: 22px;
  }
  .industry-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .industry-card-body {
    padding: 24px;
  }
  .industry-card h3 {
    margin-bottom: 10px;
  }
  .industry-card a {
    margin-top: 0;
    padding-top: 16px;
  }
  .factory-banner {
    padding: 24px;
  }
  .factory-banner h3 {
    font-size: 19px;
  }
  .factory-banner > div:nth-child(2) {
    flex-basis: calc(100% - 64px);
    min-width: 0;
  }
  .factory-banner-link {
    margin-left: 0;
    padding-top: 10px;
  }
  .cta-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }
  .cta-actions .button {
    padding-inline: 12px;
    gap: 12px;
  }
  .node-list {
    grid-template-columns: 1fr;
  }
  .node-choice {
    padding: 16px;
  }
  .node-venue {
    min-height: 0;
  }
  .node-detail dl > div {
    gap: 16px;
    align-items: baseline;
  }
  .node-detail dt {
    flex-shrink: 0;
  }
}
@media (min-width: 960px) and (max-width: 1199px) {
  .arch-horizontal span {
    max-width: 2em;
  }
}
.customer-body, .workspace-body {
  background: #f7f8fc;
  color: var(--ink);
}

.customer-header {
  height: 104px;
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 40px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.customer-back {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--muted);
  font-size: 14px;
}

.customer-back:hover, .access-apply a, .access-return, .field-label-row a {
  color: var(--brand);
}

.access-shell {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  max-width: 1160px;
  min-height: 620px;
  margin: 26px auto 40px;
  border: 1px solid #e3e8f3;
  border-radius: 24px;
  background: #fff;
  overflow: hidden;
  box-shadow: 0 24px 80px rgba(22, 52, 123, 0.031372549);
}

.access-story {
  padding: 56px 52px 32px;
  background: radial-gradient(ellipse at 70% 70%, rgba(216, 225, 255, 0.5019607843), transparent 64%), linear-gradient(140deg, #f0f3ff, #f7faff);
  position: relative;
}

.access-story h1 {
  font-size: clamp(32px, 3.1vw, 44px);
  line-height: 1.4;
  margin: 20px 0;
  letter-spacing: -0.035em;
}

.access-story > p {
  font-size: 17px;
  color: var(--muted);
  line-height: 1.85;
  margin: 0;
}

.access-diagram {
  position: relative;
  height: 252px;
  max-width: 395px;
  margin: 16px auto 0;
}

.access-orbit {
  position: absolute;
  width: 225px;
  height: 225px;
  border: 1px solid rgba(55, 83, 255, 0.1333333333);
  border-radius: 50%;
  left: calc(50% - 112px);
  top: 14px;
}

.access-orbit:before {
  content: "";
  position: absolute;
  inset: 24px;
  border: 1px dashed rgba(55, 83, 255, 0.1490196078);
  border-radius: 50%;
}

.access-core {
  position: absolute;
  width: 126px;
  height: 126px;
  left: calc(50% - 63px);
  top: 64px;
  border-radius: 28px;
  background: rgba(255, 255, 255, 0.8509803922);
  border: 1px solid #fff;
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: center;
  justify-content: center;
  box-shadow: 0 15px 45px rgba(55, 83, 255, 0.0784313725);
}

.access-core img {
  width: 54px;
  height: 54px;
}

.access-core span {
  font-family: var(--font-brand);
  font-weight: 650;
  font-size: 14px;
}

.access-chip {
  display: flex;
  align-items: center;
  gap: 9px;
  position: absolute;
  border: 1px solid #e2e7fb;
  background: rgba(255, 255, 255, 0.9294117647);
  border-radius: 10px;
  padding: 9px 14px;
  font-size: 13px;
  box-shadow: 0 6px 20px rgba(36, 73, 157, 0.031372549);
}

.access-chip i {
  color: var(--brand);
  font-size: 17px;
}

.chip-model {
  left: 0;
  top: 38px;
}

.chip-api {
  right: -5px;
  top: 97px;
}

.chip-usage {
  left: 12px;
  bottom: 4px;
}

.access-story-foot {
  color: var(--caption);
  font-size: 12px;
  display: flex;
  gap: 8px;
  align-items: center;
  margin-top: 24px;
}

.status-dot {
  display: inline-block;
  flex-shrink: 0;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #159675;
}

.access-panel {
  padding: 62px 52px 40px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.access-panel h2 {
  font-size: 28px;
  margin: 14px 0 10px;
}

.access-subtitle {
  color: var(--muted);
  font-size: 15px;
  margin: 0 0 28px;
}

.customer-form .form-field {
  margin-bottom: 20px;
}

.customer-form label {
  font-size: 15px;
}

.customer-form .form-field input {
  width: 100%;
}

.customer-form .form-consent {
  margin: 20px 0;
}

.customer-form input:not([type=checkbox]) {
  min-height: 48px;
  font-size: 16px;
}

.field-label-row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
}

.field-label-row a {
  font-size: 13px;
}

.button-wide {
  width: 100%;
  justify-content: center;
}

.customer-form .button-wide {
  margin-top: 6px;
}

.access-invite-note {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  color: var(--muted);
  padding: 20px 0;
  margin-top: 20px;
  border-bottom: 1px solid var(--line);
}

.access-invite-note i {
  color: var(--brand);
  font-size: 20px;
}

.access-invite-note p {
  margin: 0;
  font-size: 14px;
  line-height: 1.75;
}

.access-apply {
  font-size: 14px;
  text-align: center;
  margin: 22px 0 0;
  color: var(--muted);
}

.access-apply a {
  margin-left: 5px;
  font-weight: 600;
}

.customer-footer {
  max-width: 1160px;
  margin: 0 auto 30px;
  display: flex;
  justify-content: space-between;
  font-size: 12px;
  color: var(--caption);
  gap: 20px;
}

.customer-footer div {
  display: flex;
  gap: 24px;
}

.credential-shell {
  max-width: 560px;
  margin: 32px auto 72px;
  padding: 0 16px;
}

.credential-card {
  border: 1px solid var(--line);
  border-radius: 20px;
  padding: 40px;
  background: #fff;
}

.credential-card h1 {
  font-size: 30px;
  margin: 16px 0;
}

.credential-card > p {
  color: var(--muted);
  font-size: 15px;
  margin-bottom: 24px;
}

.access-return {
  display: block;
  text-align: center;
  margin-top: 24px;
  font-size: 14px;
}

.recovery-steps {
  padding-left: 24px;
  margin: 24px 0;
  color: var(--muted);
  font-size: 15px;
}

.recovery-steps li {
  padding-left: 4px;
  margin-bottom: 14px;
}

.customer-notice {
  padding: 14px 18px;
  background: #eff3ff;
  color: #344b7b;
  border: 1px solid #dce5ff;
  border-radius: 10px;
  line-height: 1.75;
  font-size: 14px;
  margin-bottom: 22px;
}

.customer-notice i {
  margin-right: 6px;
}

.customer-body .form-error, .workspace-body .form-error {
  margin-bottom: 20px;
  font-size: 14px;
}

.customer-body [hidden] {
  display: none !important;
}

.workspace-sidebar {
  width: 244px;
  background: #fff;
  border-right: 1px solid var(--line);
  position: fixed;
  top: 0;
  bottom: 0;
  display: flex;
  flex-direction: column;
  padding: 30px 20px;
  z-index: 20;
}

.workspace-sidebar > .brand {
  padding: 0 10px;
}

.workspace-sidebar .brand {
  font-size: 23px;
}

.workspace-sidebar .brand small {
  font-size: 8px;
  letter-spacing: 0.09em;
  margin-top: 5px;
}

.workspace-nav-label {
  margin: 48px 16px 12px;
  font-size: 12px;
  color: var(--caption);
}

.workspace-nav {
  display: grid;
  gap: 6px;
}

.workspace-nav a {
  display: flex;
  align-items: center;
  gap: 13px;
  font-size: 15px;
  padding: 12px 16px;
  border-radius: 10px;
  color: var(--muted);
  min-height: 48px;
}

.workspace-nav i {
  font-size: 20px;
}

.workspace-nav a:hover {
  background: #f5f7fd;
  color: var(--brand);
}

.workspace-nav a[aria-current=page] {
  background: #eef1ff;
  color: var(--brand);
  font-weight: 650;
}

.workspace-sidebar-foot {
  margin-top: auto;
  padding: 36px 16px 0;
}

.workspace-small-mark {
  font: 500 10px var(--font-brand);
  letter-spacing: 0.12em;
  color: #7b86a0;
}

.workspace-sidebar-foot p {
  margin: 16px 0;
  line-height: 1.9;
  color: var(--muted);
  font-size: 14px;
}

.workspace-sidebar-foot a {
  font-size: 13px;
  color: var(--brand);
}

.workspace-main {
  margin-left: 244px;
  min-width: 0;
}

.workspace-topbar {
  min-height: 76px;
  border-bottom: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.8666666667);
  padding: 16px 40px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  font-size: 13px;
  color: var(--muted);
}

.workspace-topbar-separator {
  color: #b2bbce;
  padding: 0 12px;
}

.workspace-user {
  display: flex;
  align-items: center;
  gap: 20px;
  min-width: 0;
}

.workspace-user > span {
  max-width: 240px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.text-button {
  background: none;
  border: 0;
  padding: 6px 0;
  font: inherit;
  color: var(--brand);
  cursor: pointer;
  min-height: 36px;
}

.workspace-content {
  max-width: 1220px;
  margin: 0 auto;
  padding: 36px 40px 0;
}

.workspace-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 28px;
}

.workspace-heading .eyebrow {
  font-size: 10px;
  letter-spacing: 0.15em;
}

.workspace-heading h1 {
  font-size: 28px;
  margin: 8px 0 0;
  letter-spacing: -0.025em;
}

.customer-badge, .neutral-badge {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 500;
  padding: 5px 9px;
  white-space: nowrap;
}

.customer-badge {
  background: #eaf7f1;
  color: #137456;
}

.neutral-badge {
  background: #f1f3f8;
  color: #5a6880;
}

.workspace-welcome {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  align-items: center;
  border: 1px solid #e0e6ff;
  border-radius: 16px;
  padding: 32px 36px;
  background: radial-gradient(circle at 90% 70%, rgba(216, 225, 255, 0.4), transparent 45%), linear-gradient(125deg, #eff3ff, #f8faff);
}

.workspace-welcome h2 {
  font-size: 26px;
  margin: 12px 0;
  overflow-wrap: anywhere;
}

.workspace-welcome p {
  font-size: 15px;
  line-height: 1.85;
  color: var(--muted);
  margin-bottom: 24px;
}

.workspace-welcome .eyebrow {
  font-size: 10px;
}

.workspace-welcome .button {
  min-height: 44px;
  font-size: 14px;
}

.workspace-welcome-mark {
  width: 200px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 20px;
}

.workspace-welcome-mark img {
  width: 82px;
  height: 82px;
  box-shadow: 0 16px 44px rgba(55, 83, 255, 0.1333333333);
  border-radius: 22px;
}

.workspace-welcome-mark span {
  font: 500 9px var(--font-brand);
  letter-spacing: 0.18em;
  color: #6374ac;
}

.workspace-card {
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 14px;
  padding: 26px;
  margin-bottom: 24px;
  min-width: 0;
}

.workspace-card h2 {
  font-size: 18px;
  line-height: 1.5;
  margin: 0 0 18px;
}

.workspace-card h3 {
  font-size: 15px;
}

.workspace-metrics {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  margin-top: 24px;
}

.metric-card > span {
  display: flex;
  gap: 10px;
  align-items: center;
  font-size: 13px;
  color: var(--muted);
}

.metric-card > span i {
  color: #7082b5;
  font-size: 18px;
}

.metric-card > strong {
  display: block;
  font-size: 28px;
  line-height: 1.3;
  letter-spacing: -0.03em;
  margin: 16px 0;
  font-weight: 650;
}

.metric-card strong small {
  font-size: 15px;
  color: #8994aa;
  font-weight: 400;
}

.metric-card p, .metric-card a {
  font-size: 12px;
  color: var(--muted);
  margin: 0;
}

.metric-card a:hover {
  color: var(--brand);
}

.workspace-gateway-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.workspace-gateway-grid article {
  display: flex;
  align-items: center;
  gap: 12px;
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: 16px;
}

.workspace-gateway-grid strong, .workspace-gateway-grid small {
  display: block;
}

.workspace-gateway-grid small {
  color: var(--muted);
  margin-top: 3px;
}

.status-dot.is-muted {
  background: #aab2c2;
  box-shadow: none;
}

.card-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 18px;
}

.card-heading h2 {
  margin: 0;
}

.onboarding-list {
  padding: 0;
  margin: 0;
  list-style: none;
}

.onboarding-list li {
  display: flex;
  gap: 16px;
  align-items: center;
  padding: 21px 0;
  border-top: 1px solid var(--line);
}

.step-number {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  flex-shrink: 0;
  background: #f3f5fa;
  color: #6c7e9a;
  display: grid;
  place-items: center;
  font: 500 11px var(--font-brand);
}

.is-complete .step-number {
  color: #159675;
  background: #eaf7f1;
  font-size: 17px;
}

.onboarding-list h3 {
  font-size: 15px;
  margin: 0 0 4px;
}

.onboarding-list p {
  font-size: 13px;
  color: var(--muted);
  margin: 0;
}

.onboarding-list .step-state, .onboarding-list .text-link {
  font-size: 12px;
  margin-left: auto;
  white-space: nowrap;
}

.step-state {
  color: var(--caption);
}

.workspace-help {
  display: flex;
  align-items: center;
  gap: 16px;
  border: 1px dashed #d7dfef;
  border-radius: 12px;
  padding: 20px 24px;
}

.workspace-help > i {
  font-size: 24px;
  color: var(--brand);
}

.workspace-help h3 {
  font-size: 14px;
  margin: 0 0 4px;
}

.workspace-help p {
  font-size: 13px;
  color: var(--muted);
  margin: 0;
}

.workspace-help > a {
  margin-left: auto;
  white-space: nowrap;
  color: var(--brand);
  font-size: 13px;
}

.workspace-description {
  color: var(--muted);
  font-size: 15px;
  margin: -4px 0 26px;
}

.workspace-empty {
  display: flex;
  align-items: center;
  flex-direction: column;
  text-align: center;
  padding: 74px 24px;
}

.empty-icon {
  width: 64px;
  height: 64px;
  background: #edf1ff;
  display: inline-grid;
  place-items: center;
  border-radius: 18px;
  color: var(--brand);
  font-size: 28px;
  margin-bottom: 22px;
}

.workspace-empty h2 {
  font-size: 22px;
  margin-bottom: 12px;
}

.workspace-empty p {
  font-size: 15px;
  line-height: 1.9;
  color: var(--muted);
  margin: 0 0 26px;
}

.workspace-footnote {
  font-size: 13px;
  color: var(--muted);
  display: flex;
  gap: 9px;
  align-items: flex-start;
}

.workspace-models {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  padding-bottom: 24px;
}

.workspace-models .neutral-badge {
  margin-bottom: 16px;
}

.key-create-form {
  display: flex;
  gap: 16px;
  align-items: flex-end;
  padding: 8px 0 26px;
  border-bottom: 1px solid var(--line);
}

.key-create-form .form-field {
  flex: 1;
  margin: 0;
  max-width: 400px;
}

.key-create-form input {
  width: 100%;
}

.key-create-form > .button {
  min-height: 48px;
}

.workspace-inline-empty {
  text-align: center;
  padding: 36px 16px;
  color: var(--muted);
}

.workspace-inline-empty > i {
  display: block;
  color: #9aa8c5;
  font-size: 30px;
  margin-bottom: 14px;
}

.workspace-inline-empty h3 {
  font-size: 15px;
  color: var(--ink);
  margin: 0 0 6px;
}

.workspace-inline-empty p {
  font-size: 13px;
  margin: 0;
}

.secret-card {
  background: #f4f7ff;
  border-color: #bacaff;
}

.secret-card > p {
  color: var(--muted);
  font-size: 14px;
}

.secret-copy-row {
  display: flex;
  gap: 12px;
}

.secret-copy-row input {
  min-width: 0;
  flex: 1;
  padding: 12px;
  font-family: var(--font-mono);
  font-size: 13px;
  border: 1px solid #c7d4ee;
  border-radius: 8px;
  color: #24375f;
}

.secret-copy-row .button {
  flex-shrink: 0;
}

.secret-card .form-help {
  display: block;
  margin-top: 8px;
}

.workspace-table-wrap {
  width: 100%;
  overflow-x: auto;
}

.workspace-table {
  width: 100%;
  border-collapse: collapse;
  text-align: left;
  font-size: 13px;
  min-width: 570px;
}

.workspace-table th {
  color: var(--caption);
  font-size: 12px;
  font-weight: 500;
  padding: 16px 12px;
  background: #fafbfe;
  border-bottom: 1px solid var(--line);
}

.workspace-table td {
  padding: 20px 12px;
  border-bottom: 1px solid var(--line);
  vertical-align: top;
}

.workspace-table td strong {
  font-size: 14px;
  font-weight: 600;
  display: block;
  max-width: 220px;
  overflow-wrap: anywhere;
}

.workspace-table td code, .workspace-table td small {
  display: block;
  font-size: 12px;
  color: var(--muted);
  margin-top: 5px;
}

.key-revoke summary {
  color: #b24848;
  cursor: pointer;
  min-height: 32px;
}

.key-revoke form {
  margin-top: 12px;
}

.key-revoke label {
  display: flex;
  gap: 5px;
  font-size: 12px;
}

.danger-text {
  color: #b24848;
}

.workspace-account-grid {
  display: grid;
  grid-template-columns: 1fr 1.15fr;
  gap: 24px;
  align-items: start;
}

.account-details {
  margin: 0;
}

.account-details > div {
  padding: 18px 0;
  border-bottom: 1px solid var(--line);
}

.account-details dt {
  color: var(--muted);
  font-size: 13px;
  margin-bottom: 6px;
}

.account-details dd {
  margin: 0;
  font-size: 15px;
  overflow-wrap: anywhere;
}

.workspace-account-grid .customer-form {
  margin-top: 24px;
}

.workspace-card .form-help {
  font-size: 13px;
  color: var(--muted);
}

.workspace-footer {
  padding: 32px 0;
  color: var(--caption);
  font-size: 11px;
  display: flex;
  gap: 10px;
}

.workspace-footer span {
  color: #b0bad0;
}

@media (max-width: 1200px) {
  .access-shell, .customer-footer {
    margin-left: 32px;
    margin-right: 32px;
  }
  .access-panel {
    padding: 42px 36px;
  }
  .access-story {
    padding: 44px 36px 32px;
  }
  .workspace-sidebar {
    width: 220px;
    padding-left: 14px;
    padding-right: 14px;
  }
  .workspace-main {
    margin-left: 220px;
  }
  .workspace-content {
    padding: 28px 28px 0;
  }
  .workspace-topbar {
    padding-left: 28px;
    padding-right: 28px;
  }
  .workspace-card {
    padding: 22px;
  }
  .workspace-metrics {
    gap: 14px;
  }
  .workspace-welcome {
    padding: 30px;
  }
}
@media (max-width: 960px) {
  .access-story {
    padding: 40px 28px;
  }
  .access-panel {
    padding: 40px 28px;
  }
  .access-story h1 {
    font-size: 34px;
  }
  .access-chip {
    padding: 8px 10px;
    font-size: 12px;
  }
  .workspace-topbar > span {
    display: none;
  }
  .workspace-topbar {
    justify-content: flex-end;
  }
  .workspace-welcome-mark {
    display: none;
  }
  .workspace-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }
  .metric-card {
    padding: 18px;
  }
  .metric-card > strong {
    font-size: 25px;
  }
  .workspace-account-grid, .workspace-models {
    grid-template-columns: 1fr;
  }
  .workspace-help {
    align-items: flex-start;
    flex-wrap: wrap;
  }
  .workspace-help > div {
    flex: 1;
  }
  .workspace-help > a {
    width: 100%;
    margin-left: 40px;
  }
  .onboarding-list .step-state {
    display: none;
  }
}
@media (max-width: 760px) {
  .customer-header {
    padding: 0 24px;
    height: 88px;
  }
  .customer-header .brand {
    font-size: 23px;
  }
  .customer-back {
    font-size: 12px;
  }
  .access-shell {
    display: block;
    max-width: 500px;
    min-height: 0;
    margin: 22px auto 30px;
  }
  .access-story {
    display: none;
  }
  .access-panel {
    padding: 40px;
  }
  .customer-footer {
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin: 24px;
  }
  .credential-shell {
    margin-top: 20px;
  }
  .workspace-body {
    overflow-x: hidden;
  }
  .workspace-sidebar {
    position: static;
    width: 100%;
    padding: 18px 20px 0;
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }
  .workspace-sidebar > .brand {
    padding: 0;
  }
  .workspace-nav-label, .workspace-sidebar-foot {
    display: none;
  }
  .workspace-nav {
    display: flex;
    max-width: 100%;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    gap: 8px;
    margin: 20px -8px 0;
    padding-bottom: 12px;
  }
  .workspace-nav a {
    flex-shrink: 0;
    padding: 10px 12px;
    gap: 8px;
    font-size: 14px;
    min-height: 44px;
  }
  .workspace-nav i {
    font-size: 17px;
  }
  .workspace-main {
    margin-left: 0;
  }
  .workspace-topbar {
    min-height: 50px;
    padding: 7px 24px;
  }
  .workspace-user {
    width: 100%;
    justify-content: space-between;
  }
  .workspace-user > span {
    max-width: calc(100vw - 110px);
    font-size: 12px;
  }
  .workspace-content {
    padding: 26px 24px 0;
  }
  .workspace-heading h1 {
    font-size: 26px;
  }
  .workspace-welcome {
    padding: 28px;
  }
  .workspace-welcome h2 {
    font-size: 24px;
  }
  .workspace-metrics {
    gap: 12px;
  }
  .workspace-card {
    margin-bottom: 20px;
  }
  .workspace-heading .eyebrow {
    font-size: 9px;
  }
}
@media (max-width: 540px) {
  .access-shell {
    margin: 10px 16px 24px;
    border-radius: 18px;
  }
  .access-panel {
    padding: 30px 24px;
  }
  .access-panel h2 {
    font-size: 26px;
  }
  .access-panel > .eyebrow {
    font-size: 10px;
  }
  .customer-header {
    padding: 0 20px;
  }
  .customer-header .brand {
    font-size: 21px;
  }
  .customer-header .brand-symbol {
    width: 34px;
    height: 34px;
  }
  .customer-back i {
    display: none;
  }
  .credential-card {
    padding: 28px 24px;
  }
  .credential-card h1 {
    font-size: 26px;
  }
  .credential-shell {
    margin-top: 10px;
  }
  .workspace-content {
    padding: 24px 18px 0;
  }
  .workspace-heading {
    margin-bottom: 22px;
  }
  .workspace-heading h1 {
    font-size: 24px;
  }
  .workspace-welcome {
    padding: 26px 22px;
  }
  .workspace-metrics {
    grid-template-columns: 1fr;
    gap: 0;
    margin-top: 20px;
  }
  .metric-card {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 6px 12px;
    padding: 20px 22px;
    margin-bottom: 12px;
  }
  .metric-card > span {
    align-self: center;
  }
  .metric-card > strong {
    grid-row: 1/3;
    grid-column: 2;
    align-self: center;
    margin: 0;
    font-size: 26px;
  }
  .metric-card p, .metric-card a {
    grid-column: 1;
    padding-left: 28px;
  }
  .workspace-metrics + .workspace-card {
    margin-top: 8px;
  }
  .workspace-gateway-grid {
    grid-template-columns: 1fr;
  }
  .workspace-card {
    padding: 22px;
  }
  .card-heading {
    align-items: flex-start;
    flex-wrap: wrap;
  }
  .card-heading h2 {
    font-size: 17px;
  }
  .onboarding-list li {
    gap: 12px;
    flex-wrap: wrap;
    align-items: flex-start;
  }
  .onboarding-list li > div {
    flex: 1;
  }
  .onboarding-list .text-link {
    margin-left: 48px;
    width: 100%;
    margin-top: 0;
  }
  .onboarding-list h3 {
    font-size: 14px;
  }
  .onboarding-list p {
    font-size: 13px;
  }
  .step-number {
    width: 32px;
    height: 32px;
  }
  .workspace-help {
    padding: 18px;
    gap: 12px;
  }
  .workspace-empty {
    padding: 48px 22px;
  }
  .workspace-empty h2 {
    font-size: 20px;
  }
  .workspace-empty p {
    font-size: 14px;
  }
  .workspace-empty br {
    display: none;
  }
  .workspace-description {
    font-size: 14px;
  }
  .key-create-form {
    display: block;
  }
  .key-create-form > .button {
    margin-top: 16px;
    width: 100%;
    justify-content: center;
  }
  .secret-copy-row {
    flex-direction: column;
  }
  .secret-copy-row input {
    width: 100%;
  }
  .workspace-footer {
    font-size: 10px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .customer-body *, .workspace-body * {
    scroll-behavior: auto;
  }
}
.workspace-body .visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.native-captcha, .native-code {
  display: flex;
  align-items: center;
  gap: 12px;
}

.native-captcha input, .native-code input {
  min-width: 0;
  flex: 1;
}

.native-captcha img {
  width: 150px;
  height: 44px;
  cursor: pointer;
  border-radius: 8px;
}

.native-code .button {
  white-space: nowrap;
}

.native-account-links {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin: 24px 0;
  font-size: 14px;
}

.customer-form select {
  width: 100%;
  padding: 12px;
  border: 1px solid #dfe4f0;
  border-radius: 10px;
  background: #fff;
}

.model-access-card {
  padding: 26px;
}

.model-access-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 18px;
  flex-wrap: wrap;
}

.workspace-models .model-access-heading .neutral-badge {
  margin-bottom: 0;
}

.model-expiry-note {
  font-size: 12px;
  color: #9b5b0a;
}

.model-access-card h2 {
  margin-bottom: 7px;
  font-size: 20px;
}

.model-public-code {
  display: block;
  color: var(--brand);
  font-size: 13px;
  overflow-wrap: anywhere;
}

.model-access-description {
  color: var(--muted);
  font-size: 14px;
  line-height: 1.8;
  margin: 14px 0 22px;
}

.model-quota {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px 16px;
  padding: 20px;
  margin: 0;
  border: 1px solid #e7ebfa;
  border-radius: 10px;
  background: #f7f9ff;
}

.model-quota dt {
  font-size: 12px;
  color: var(--muted);
}

.model-quota dd {
  margin: 6px 0 0;
  font-size: clamp(18px, 1.65vw, 24px);
  font-weight: 600;
  letter-spacing: -0.02em;
  overflow-wrap: anywhere;
}

.model-quota dd small {
  display: block;
  font-size: 11px;
  font-weight: 400;
  color: var(--caption);
}

.model-quota > div:nth-child(n+3) dd {
  font-size: 16px;
  color: var(--muted);
}

.model-access-meta {
  font-size: 12px;
  color: var(--muted);
}

.model-access-meta p {
  display: flex;
  align-items: baseline;
  gap: 8px;
  margin-top: 9px;
}

.model-access-meta i {
  flex: 0 0 auto;
  color: #7786a8;
}

@media (max-width: 480px) {
  .model-access-card {
    padding: 20px;
  }
  .model-quota {
    padding: 16px;
  }
  .model-quota > div:nth-child(-n+2) {
    grid-column: 1/-1;
  }
  .model-quota > div:nth-child(-n+2) dd {
    font-size: 22px;
  }
}
.workspace-body [hidden] {
  display: none !important;
}

.key-service-badge {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 5px 9px;
  border-radius: 6px;
  background: #eef1ff;
  color: #3753ff;
  font-size: 12px;
  white-space: nowrap;
}

.key-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

.gateway-endpoint-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.gateway-endpoint-copy {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-width: 0;
  padding: 17px 18px;
  border: 1px solid #e0e5f1;
  border-radius: 11px;
  background: #fafbfe;
  color: inherit;
  text-align: left;
  cursor: pointer;
  transition: border-color 0.16s ease, background-color 0.16s ease, box-shadow 0.16s ease, transform 0.16s ease;
}

.gateway-endpoint-copy:hover {
  border-color: #bac6f7;
  background: #f6f8ff;
  transform: translateY(-1px);
}

.gateway-endpoint-copy:focus-visible {
  outline: 3px solid rgba(55, 83, 255, 0.2);
  outline-offset: 2px;
}

.gateway-endpoint-copy > span:first-child {
  min-width: 0;
}

.gateway-endpoint-copy small {
  display: block;
  margin-bottom: 7px;
  color: #627091;
  font-size: 12px;
  font-weight: 650;
}

.gateway-endpoint-copy code {
  display: block;
  overflow: hidden;
  color: #25385f;
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.gateway-endpoint-action {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 6px;
  color: #3753ff;
  font-size: 12px;
}

.gateway-endpoint-action em {
  font-style: normal;
  white-space: nowrap;
}

.gateway-endpoint-copy.is-copied {
  border-color: #8cd7bd;
  background: #f1fbf7;
}

.gateway-endpoint-copy.is-copied .gateway-endpoint-action {
  color: #13825f;
}

.key-service-fieldset {
  grid-column: 1/-1;
  min-width: 0;
  padding: 0;
  margin: 0 0 22px;
  border: 0;
}

.key-service-fieldset legend {
  margin-bottom: 9px;
  color: var(--ink);
  font-size: 13px;
  font-weight: 600;
}

.key-service-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.key-service-options label {
  position: relative;
  min-width: 0;
  cursor: pointer;
}

.key-service-options input {
  position: absolute;
  opacity: 0;
}

.key-service-options label > span {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 2px 12px;
  min-height: 82px;
  padding: 15px 17px;
  border: 1px solid #dfe4f0;
  border-radius: 10px;
  background: #fff;
  transition: border-color 0.16s ease, background-color 0.16s ease, box-shadow 0.16s ease;
}

.key-service-options i {
  grid-row: 1/3;
  align-self: center;
  color: #7082b5;
  font-size: 22px;
}

.key-service-options strong {
  align-self: end;
  color: #25385f;
  font-size: 14px;
}

.key-service-options small {
  color: #74809a;
  font-size: 12px;
}

.key-service-options label:hover > span {
  border-color: #bac6f7;
  background: #fafbff;
}

.key-service-options input:checked + span {
  border-color: #3753ff;
  background: #f3f5ff;
  box-shadow: inset 0 0 0 1px #3753ff;
}

.key-service-options input:checked + span i, .key-service-options input:checked + span strong {
  color: #3753ff;
}

.key-service-options input:focus-visible + span {
  outline: 3px solid rgba(55, 83, 255, 0.2);
  outline-offset: 2px;
}

.key-service-fieldset .form-help {
  margin-bottom: 0;
}

.key-policy-advanced {
  grid-column: 1/-1;
  padding: 16px 18px;
  margin-bottom: 22px;
  border: 1px solid #e3e8f5;
  border-radius: 10px;
  background: #fafbff;
}

.key-policy-advanced summary {
  cursor: pointer;
  color: #30436f;
  font-weight: 600;
}

.key-policy-advanced .form-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0 16px;
  margin-top: 18px;
}

.checkbox-option {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: #506186;
  font-size: 13px;
  cursor: pointer;
}

.checkbox-option input {
  accent-color: #3753ff;
}

.key-policy-form .form-field {
  margin-bottom: 22px;
  min-width: 0;
}

.key-policy-form input:not([type=checkbox]):not([type=radio]), .key-policy-form select, .usage-filter-form select {
  width: 100%;
  min-height: 46px;
  padding: 10px 12px;
  border: 1px solid #dfe4f0;
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
  font: inherit;
  font-size: 14px;
}

.key-policy-form input:focus-visible, .key-policy-form select:focus-visible, .usage-filter-form select:focus-visible {
  outline: 2px solid #3753ff;
  outline-offset: 2px;
}

.key-policy-form .form-help {
  margin: 8px 0 0;
  line-height: 1.7;
}

.field-optional {
  margin-left: 6px;
  font-size: 12px;
  font-weight: 400;
  color: var(--caption);
}

.key-model-fieldset {
  margin: 0 0 24px;
  padding: 18px 20px;
  border: 1px solid #e3e8f5;
  border-radius: 10px;
}

.key-model-fieldset legend {
  width: auto;
  float: none;
  margin: 0;
  padding: 0 6px;
  font-size: 14px;
  font-weight: 600;
}

.key-model-fieldset legend span {
  margin-left: 8px;
  font-weight: 400;
  color: var(--caption);
  font-size: 12px;
}

.key-model-options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  max-height: 260px;
  overflow-y: auto;
}

.key-model-options label {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  cursor: pointer;
  min-width: 0;
}

.key-model-options label:has(input:checked) {
  border-color: rgba(55, 83, 255, 0.4);
  background: #f4f6ff;
}

.key-model-options input {
  accent-color: #3753ff;
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  margin-top: 3px;
}

.key-model-options strong {
  display: block;
  font-size: 14px;
  font-weight: 500;
  overflow-wrap: anywhere;
}

.key-model-options code {
  display: block;
  font-size: 12px;
  color: var(--muted);
  margin-top: 4px;
  overflow-wrap: anywhere;
}

.key-model-options small {
  display: inline-block;
  margin-top: 5px;
  color: #3753ff;
  font-size: 11px;
  font-weight: 600;
}

.key-scope-help {
  padding: 14px 16px;
  border-radius: 8px;
  background: #f4f6ff;
  font-size: 13px;
  color: #506186;
  line-height: 1.8;
  margin: 0 0 24px;
}

.key-form-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 14px;
  padding-top: 4px;
}

.key-form-actions .button, .usage-filter-form .button {
  min-height: 44px;
  font-size: 14px;
}

.key-policy-table {
  min-width: 800px;
}

.key-policy-table .key-scope-label {
  max-width: 210px;
  overflow-wrap: anywhere;
  line-height: 1.7;
}

.key-row-actions {
  display: grid;
  gap: 8px;
  min-width: 80px;
}

.key-row-actions > a {
  color: #3753ff;
}

.key-row-actions .key-test-trigger {
  color: #3753ff;
  width: -moz-fit-content;
  width: fit-content;
  min-height: 24px;
  padding: 0;
}

.key-action-muted {
  color: var(--caption);
  font-size: 12px;
}

.key-row-actions .key-revoke summary {
  min-height: 24px;
}

.key-test-dialog {
  width: min(680px, 100vw - 32px);
  max-height: min(760px, 100vh - 32px);
  padding: 0;
  border: 0;
  border-radius: 18px;
  color: var(--ink);
  box-shadow: 0 26px 80px rgba(25, 43, 93, 0.24);
  overflow: auto;
}

.key-test-dialog::backdrop {
  background: rgba(15, 28, 63, 0.58);
  backdrop-filter: blur(4px);
}

.key-test-dialog-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  padding: 28px 30px 18px;
  border-bottom: 1px solid var(--line);
}

.key-test-dialog-head h2 {
  margin: 6px 0 0;
  font-size: 23px;
  letter-spacing: -0.025em;
}

.key-test-close {
  width: 38px;
  height: 38px;
  display: inline-grid;
  place-items: center;
  flex: 0 0 38px;
  border: 1px solid var(--line);
  border-radius: 50%;
  background: #fff;
  color: var(--muted);
  cursor: pointer;
}

.key-test-close:hover {
  border-color: #b9c5ff;
  color: #3753ff;
}

.key-test-intro {
  margin: 0;
  padding: 20px 30px 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.75;
}

.key-test-dialog [data-key-test-form] {
  padding: 22px 30px 26px;
}

.key-test-dialog .form-field {
  margin-bottom: 18px;
}

.key-test-dialog input:not([type=checkbox]):not([type=radio]), .key-test-dialog select, .key-test-dialog textarea {
  width: 100%;
  min-height: 46px;
  padding: 10px 12px;
  border: 1px solid #dfe4f0;
  border-radius: 8px;
  background: #fff;
  color: var(--ink);
  font: inherit;
  font-size: 14px;
}

.key-test-dialog textarea {
  min-height: 86px;
  resize: vertical;
  line-height: 1.65;
}

.key-test-dialog input:focus-visible, .key-test-dialog select:focus-visible, .key-test-dialog textarea:focus-visible {
  outline: 2px solid #3753ff;
  outline-offset: 2px;
}

.key-test-dialog .checkbox-option {
  display: flex;
  width: -moz-fit-content;
  width: fit-content;
  min-height: 32px;
  margin-bottom: 16px;
  line-height: 1.5;
}

.key-test-dialog .checkbox-option input[type=checkbox] {
  width: 16px;
  height: 16px;
  min-height: 0;
  flex: 0 0 16px;
  margin: 0;
  padding: 0;
}

.key-test-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 14px;
}

.key-test-actions .form-help {
  margin: 0;
  flex: 1 1 250px;
}

.key-test-result {
  margin: 0 30px 30px;
  padding: 20px;
  border: 1px solid #c9d5ff;
  border-radius: 12px;
  background: linear-gradient(145deg, #f5f7ff, #fff);
}

.key-test-result-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 14px;
}

.key-test-result-head > span {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  gap: 8px;
  color: #3150dc;
  font-weight: 650;
  white-space: nowrap;
}

.key-test-result-head small {
  min-width: 0;
  color: var(--caption);
  overflow-wrap: anywhere;
  text-align: right;
}

.key-test-result pre {
  margin: 0;
  padding: 14px 16px;
  max-height: 220px;
  overflow: auto;
  border: 1px solid #e0e6f5;
  border-radius: 9px;
  background: #fff;
  color: #25365d;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font-size: 13px;
  line-height: 1.7;
}

.key-test-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 14px;
}

.key-test-metrics span {
  padding: 10px 12px;
  border-radius: 8px;
  background: #eef2ff;
  color: var(--caption);
  font-size: 11px;
}

.key-test-metrics strong {
  display: block;
  margin-top: 4px;
  color: var(--ink);
  font-size: 13px;
  overflow-wrap: anywhere;
}

.usage-filter-form {
  display: flex;
  align-items: flex-end;
  gap: 16px;
  flex-wrap: wrap;
}

.usage-filter-form .form-field {
  flex: 1 1 150px;
  margin: 0;
  min-width: 0;
}

.usage-filter-form > .text-link {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  font-size: 14px;
}

.usage-filter-form input {
  width: 100%;
  min-height: 46px;
  padding: 10px 12px;
  border: 1px solid #dfe4f0;
  border-radius: 8px;
  color: var(--ink);
  font: inherit;
  font-size: 14px;
}

.usage-chart-grid {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr;
  gap: 18px;
}

.usage-chart {
  min-height: 320px;
  border: 1px solid #e7ebf5;
  border-radius: 12px;
  background: #fff;
}

.chart-unavailable .usage-chart-grid::after {
  content: "图表组件暂不可用，请使用下方调用记录。";
  color: var(--muted);
}

.debugger-overview {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 22px;
  margin-bottom: 22px;
  padding: 24px 28px;
  overflow: hidden;
  border: 1px solid #dce4ff;
  border-radius: 16px;
  background: radial-gradient(circle at 92% 20%, #dce5ff 0, transparent 35%), linear-gradient(125deg, #eef2ff 0, #f8faff 56%, #fff 100%);
}

.debugger-overview::after {
  position: absolute;
  right: -42px;
  bottom: -60px;
  width: 170px;
  height: 170px;
  border: 1px solid rgba(203, 215, 255, 0.5019607843);
  border-radius: 50%;
  content: "";
  pointer-events: none;
}

.debugger-overview-icon {
  position: relative;
  z-index: 1;
  display: grid;
  width: 58px;
  height: 58px;
  place-items: center;
  border-radius: 16px;
  background: #3753ff;
  color: #fff;
  font-size: 26px;
  box-shadow: 0 15px 34px rgba(55, 83, 255, 0.2078431373);
}

.debugger-overview-copy {
  position: relative;
  z-index: 1;
  min-width: 0;
}

.debugger-overview-copy .eyebrow {
  color: #5c70b8;
  font-size: 9px;
  letter-spacing: 0.17em;
}

.debugger-overview-copy h2 {
  margin: 7px 0 6px;
  font-size: 20px;
  line-height: 1.4;
  letter-spacing: -0.02em;
}

.debugger-overview-copy p {
  margin: 0;
  color: #63708b;
  font-size: 13px;
  line-height: 1.75;
}

.debugger-overview-badges {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
  max-width: 290px;
}

.debugger-overview-badges span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 10px;
  border: 1px solid #d6def6;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.7215686275);
  color: #51617f;
  font-size: 11px;
  white-space: nowrap;
}

.debugger-overview-badges i {
  color: #3753ff;
  font-size: 13px;
}

.debugger-shell {
  padding: 0;
  overflow: hidden;
  box-shadow: 0 18px 55px -42px rgba(28, 52, 116, 0.38);
}

.debugger-shell-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 25px 28px;
  border-bottom: 1px solid #e7ebf4;
  background: #fff;
}

.debugger-shell-head .eyebrow {
  color: #6b7db5;
  font-size: 9px;
  letter-spacing: 0.15em;
}

.debugger-shell-head h2 {
  margin: 5px 0 3px;
  font-size: 20px;
  letter-spacing: -0.02em;
}

.debugger-shell-head p {
  margin: 0;
  color: #7b87a0;
  font-size: 12px;
}

.debugger-live-state {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 11px;
  border-radius: 999px;
  background: #ebf8f3;
  color: #157559;
  font-size: 12px;
  font-weight: 600;
  white-space: nowrap;
}

.debugger-live-state i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #18a87d;
  box-shadow: 0 0 0 4px rgba(24, 168, 125, 0.1254901961);
}

.debugger-shell > [data-key-test-form] {
  padding: 28px;
  background: #fafbfe;
}

.debugger-request-grid {
  display: grid;
  grid-template-columns: minmax(300px, 0.88fr) minmax(380px, 1.12fr);
  gap: 20px;
  align-items: stretch;
}

.debugger-form-panel {
  min-width: 0;
  padding: 22px;
  border: 1px solid #e1e6f2;
  border-radius: 13px;
  background: #fff;
}

.debugger-section-title {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 22px;
  padding-bottom: 17px;
  border-bottom: 1px solid #edf0f6;
}

.debugger-section-title > span {
  display: grid;
  width: 32px;
  height: 32px;
  place-items: center;
  flex: 0 0 32px;
  border-radius: 9px;
  background: #eef1ff;
  color: #3753ff;
  font: 650 10px var(--font-brand);
}

.debugger-section-title h3 {
  margin: 0 0 3px;
  color: #243554;
  font-size: 15px;
}

.debugger-section-title small {
  color: #8994a9;
  font-size: 11px;
}

.debugger-section-title small strong {
  color: #526688;
  font-weight: 600;
}

.debugger-shell input, .debugger-shell select, .debugger-shell textarea {
  width: 100%;
  min-height: 48px;
  padding: 11px 13px;
  border: 1px solid #dce2ee;
  border-radius: 8px;
  background: #fbfcff;
  color: var(--ink);
  font: inherit;
  font-size: 14px;
  transition: border-color 0.16s ease, box-shadow 0.16s ease, background-color 0.16s ease;
}

.debugger-shell input::-moz-placeholder, .debugger-shell textarea::-moz-placeholder {
  color: #99a3b5;
}

.debugger-shell input::placeholder, .debugger-shell textarea::placeholder {
  color: #99a3b5;
}

.debugger-shell input:focus, .debugger-shell select:focus, .debugger-shell textarea:focus {
  outline: 0;
  border-color: #7186ff;
  background: #fff;
  box-shadow: 0 0 0 3px rgba(55, 83, 255, 0.0705882353);
}

.debugger-shell textarea {
  min-height: 196px;
  resize: vertical;
  line-height: 1.7;
}

.debugger-shell .form-field {
  min-width: 0;
  margin-bottom: 18px;
}

.debugger-shell .form-field > label, .debugger-label-row label {
  display: block;
  margin-bottom: 8px;
  color: #364763;
  font-size: 13px;
  font-weight: 600;
}

.debugger-secret {
  position: relative;
  width: 100%;
  min-width: 0;
}

.debugger-secret input {
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
  padding-right: 49px;
  font-family: var(--font-mono);
}

.debugger-secret button {
  position: absolute;
  top: 2px;
  right: 2px;
  bottom: 2px;
  display: grid;
  width: 44px;
  place-items: center;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #7b88a1;
  cursor: pointer;
}

.debugger-secret button:hover {
  background: #edf1ff;
  color: #3753ff;
}

.debugger-secret button:focus-visible {
  outline: 2px solid #3753ff;
  outline-offset: -3px;
}

.debugger-field-note {
  display: flex;
  align-items: center;
  gap: 5px;
  margin-top: 7px;
  color: #8a95aa;
  font-size: 11px;
}

.debugger-field-note i {
  color: #6679b2;
}

.debugger-prompt-panel {
  display: flex;
  flex-direction: column;
}

.debugger-prompt-field {
  flex: 1;
}

.debugger-label-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.debugger-label-row > span {
  color: #9aa4b6;
  font-size: 11px;
}

.debugger-label-row > span strong {
  color: #65738d;
  font-weight: 600;
}

.debugger-options-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 1px;
}

.debugger-stream-option {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #52617c;
  cursor: pointer;
}

.debugger-stream-option input {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: 0;
  padding: 0;
  clip-path: inset(50%);
  opacity: 0;
}

.debugger-switch {
  position: relative;
  width: 38px;
  height: 22px;
  flex: 0 0 38px;
  border-radius: 999px;
  background: #cdd4e1;
  transition: background-color 0.18s ease;
}

.debugger-switch::after {
  position: absolute;
  top: 3px;
  left: 3px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 2px 6px rgba(32, 48, 80, 0.2);
  content: "";
  transition: transform 0.18s ease;
}

.debugger-stream-option input:checked + .debugger-switch {
  background: #3753ff;
}

.debugger-stream-option input:checked + .debugger-switch::after {
  transform: translateX(16px);
}

.debugger-stream-option input:focus-visible + .debugger-switch {
  outline: 3px solid rgba(55, 83, 255, 0.1882352941);
  outline-offset: 2px;
}

.debugger-stream-option input:disabled + .debugger-switch {
  opacity: 0.45;
}

.debugger-stream-option > span:last-child {
  display: grid;
  gap: 2px;
}

.debugger-stream-option strong {
  color: #3c4c68;
  font-size: 12px;
}

.debugger-stream-option small {
  color: #8d98ab;
  font-size: 10px;
}

.debugger-request-method {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #8a95a9;
  font-size: 10px;
  white-space: nowrap;
}

.debugger-request-method b {
  padding: 4px 6px;
  border-radius: 5px;
  background: #edf1ff;
  color: #3753ff;
  font: 650 9px var(--font-brand);
  letter-spacing: 0.05em;
}

.debugger-submit-row {
  margin-top: 21px;
  padding-top: 19px;
  border-top: 1px solid #edf0f6;
}

.debugger-submit-row .button {
  min-width: 158px;
  min-height: 46px;
  justify-content: center;
}

.debugger-submit-row .button i {
  font-size: 14px;
}

.debugger-submit-row [data-key-test-status]:not(:empty) {
  padding: 8px 11px;
  border-radius: 7px;
  background: #f3f5fa;
  color: #5d6d89;
  line-height: 1.55;
}

.debugger-result {
  margin: 0 28px 28px;
  padding: 24px;
  border-color: #cbd6ff;
  border-radius: 14px;
  background: linear-gradient(145deg, #f5f7ff 0, #fbfcff 54%, #fff 100%);
}

.debugger-result .key-test-result-head {
  margin-bottom: 17px;
  padding-bottom: 15px;
  border-bottom: 1px solid #dfe5f5;
}

.debugger-answer {
  min-width: 0;
  padding: 18px;
  border: 1px solid #e0e6f3;
  border-radius: 11px;
  background: #fff;
  box-shadow: 0 8px 28px -24px #21366e;
}

.debugger-answer-head, .debugger-code-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 11px;
}

.debugger-answer-head > span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #33496f;
  font-size: 13px;
  font-weight: 650;
}

.debugger-answer-head > span i {
  color: #3753ff;
}

.debugger-answer-head button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 30px;
  padding: 5px 9px;
  border: 1px solid #dfe5f2;
  border-radius: 6px;
  background: #fff;
  color: #697792;
  font: inherit;
  font-size: 11px;
  cursor: pointer;
}

.debugger-answer-head button:hover, .debugger-answer-head button.is-copied {
  border-color: #b9c6ff;
  background: #f1f4ff;
  color: #3753ff;
}

.debugger-answer > pre {
  min-height: 92px;
  max-height: 300px;
  padding: 16px 17px;
  border: 0;
  background: #fafbfe;
  color: #263959;
  font-size: 14px;
  line-height: 1.8;
}

.debugger-result .key-test-metrics {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 11px;
  margin-top: 16px;
}

.debugger-result .key-test-metrics span {
  position: relative;
  min-width: 0;
  padding: 13px 13px 13px 38px;
  border: 1px solid #dfe5f7;
  background: #f8f9ff;
}

.debugger-result .key-test-metrics span > i {
  position: absolute;
  top: 13px;
  left: 13px;
  color: #6f81bf;
  font-size: 14px;
}

.debugger-result .key-test-metrics strong {
  margin-top: 5px;
  color: #273956;
  font-size: 12px;
}

.debugger-payload-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin-top: 16px;
}

.debugger-payload-grid article, .debugger-examples {
  min-width: 0;
  padding: 18px;
  border: 1px solid #dfe5f1;
  border-radius: 11px;
  background: #fff;
}

.debugger-payload-grid h3, .debugger-examples h3 {
  margin: 0;
  font-size: 14px;
}

.debugger-code-heading > span {
  color: #8c98ad;
  font: 600 9px var(--font-brand);
  letter-spacing: 0.1em;
}

.debugger-payload-grid pre, .debugger-examples pre {
  margin: 0;
  min-height: 180px;
  max-height: 380px;
  overflow: auto;
  border: 0;
  border-radius: 8px;
  background: #121a2d;
  color: #dce6ff;
  white-space: pre;
  overflow-wrap: normal;
  font-size: 12px;
  line-height: 1.7;
  -moz-tab-size: 2;
    -o-tab-size: 2;
       tab-size: 2;
}

.debugger-examples {
  margin-top: 16px;
}

.debugger-examples .card-heading {
  align-items: flex-end;
  margin-bottom: 14px;
}

.debugger-examples .card-heading .eyebrow {
  display: block;
  margin-bottom: 4px;
  color: #7181ad;
  font-size: 8px;
}

.debugger-examples .neutral-badge i {
  color: #18a87d;
}

.debugger-code-tabs {
  display: inline-flex;
  gap: 3px;
  margin-bottom: 12px;
  padding: 3px;
  border-radius: 8px;
  background: #f0f2f7;
}

.debugger-code-tabs button {
  min-height: 32px;
  padding: 6px 12px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #64718a;
  font: inherit;
  font-size: 11px;
  cursor: pointer;
}

.debugger-code-tabs button:hover {
  color: #3753ff;
}

.debugger-code-tabs button[aria-pressed=true] {
  background: #fff;
  color: #3753ff;
  box-shadow: 0 2px 7px rgba(35, 54, 91, 0.0705882353);
  font-weight: 650;
}

.error-guide {
  padding: 24px;
}

.error-guide-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 18px;
}

.error-guide-head .eyebrow {
  color: #7583a6;
  font-size: 8px;
}

.error-guide-head h2 {
  margin: 5px 0 0;
}

.error-guide-head p {
  max-width: 470px;
  margin: 0;
  color: #7b879d;
  font-size: 12px;
  text-align: right;
}

.error-guide-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.error-guide-grid article {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 11px;
  align-items: start;
  min-width: 0;
  padding: 15px;
  border: 1px solid #e6eaf3;
  border-radius: 10px;
  background: #fafbfe;
  color: #69768e;
}

.error-guide-grid article > strong {
  display: grid;
  width: 38px;
  height: 38px;
  place-items: center;
  border-radius: 9px;
  background: #eef1ff;
  color: #3753ff;
  font: 700 13px var(--font-brand);
}

.error-guide-grid h3 {
  margin: 1px 0 5px;
  color: #3a4a65;
  font-size: 12px;
}

.error-guide-grid span {
  display: block;
  font-size: 11px;
  line-height: 1.65;
}

.billing-recharge-card {
  padding: 0;
  overflow: hidden;
}

.billing-balance {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  min-height: 132px;
  padding: 28px 32px;
  border-bottom: 1px solid #e5e9f4;
  background: linear-gradient(135deg, #f6f8ff 0%, #fff 62%);
}

.billing-balance > div {
  display: flex;
  align-items: baseline;
  gap: 18px;
}

.billing-balance span {
  color: #5d6b88;
  font-size: 14px;
  font-weight: 600;
}

.billing-balance strong {
  color: var(--ink);
  font-size: clamp(34px, 4vw, 48px);
  line-height: 1;
  letter-spacing: -0.04em;
}

.billing-balance small {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 8px 12px;
  border-radius: 999px;
  background: #ebf8f3;
  color: #13825f;
  font-size: 12px;
  font-weight: 600;
}

.billing-section-heading {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 20px;
  padding: 27px 32px 0;
}

.billing-section-heading h2 {
  margin: 6px 0 0;
  font-size: 22px;
  letter-spacing: -0.025em;
}

.billing-form {
  display: grid;
  gap: 18px;
}

.billing-recharge-card .billing-form {
  padding: 24px 32px 32px;
}

.billing-form fieldset {
  min-width: 0;
  padding: 0;
  border: 0;
}

.billing-form legend {
  margin-bottom: 9px;
  font-size: 13px;
  font-weight: 600;
}

.recharge-amount-options {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 10px;
}

.recharge-amount-options label {
  position: relative;
  min-width: 0;
  cursor: pointer;
}

.recharge-amount-options input, .payment-channel-fieldset > label > input {
  position: absolute;
  opacity: 0;
}

.recharge-amount-options span {
  display: grid;
  min-height: 44px;
  place-items: center;
  border: 1px solid #dfe4f0;
  border-radius: 9px;
  background: #fff;
  color: #3f4e70;
  font-size: 14px;
  font-weight: 600;
  transition: border-color 0.16s ease, background-color 0.16s ease, color 0.16s ease, box-shadow 0.16s ease;
}

.recharge-amount-options label:hover span {
  border-color: #bdc8ee;
  background: #fbfcff;
}

.recharge-amount-options input:checked + span {
  border-color: #3753ff;
  background: #f1f3ff;
  color: #3753ff;
  box-shadow: inset 0 0 0 1px #3753ff;
}

.recharge-amount-options input:focus-visible + span {
  outline: 3px solid rgba(55, 83, 255, 0.2);
  outline-offset: 2px;
}

.recharge-custom-field {
  margin-top: 14px;
}

.recharge-custom-field > label {
  display: block;
  margin-bottom: 8px;
  color: #506186;
  font-size: 13px;
}

.recharge-custom-input {
  display: flex;
  align-items: center;
  min-height: 46px;
  border: 1px solid #dfe4f0;
  border-radius: 9px;
  background: #fff;
  overflow: hidden;
}

.recharge-custom-input:focus-within {
  border-color: #3753ff;
  box-shadow: 0 0 0 3px rgba(55, 83, 255, 0.1215686275);
}

.recharge-custom-input > span {
  padding-left: 13px;
  color: #687794;
}

.recharge-custom-input input {
  min-width: 0;
  flex: 1;
  min-height: 44px;
  padding: 10px 12px 10px 7px;
  border: 0;
  outline: 0;
  color: var(--ink);
  font: inherit;
}

.recharge-custom-field small {
  display: block;
  margin-top: 7px;
  color: var(--caption);
  font-size: 11px;
}

.recharge-amount-options span small {
  display: block;
  margin-top: 1px;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.2;
  color: #3753ff;
}

.recharge-amount-options input:checked + span small {
  color: #3753ff;
}

.recharge-discount-badge {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin: 18px 32px 0;
  padding: 13px 18px;
  border: 1px solid #e4e9f6;
  border-radius: 10px;
  background: linear-gradient(135deg, #f6f8ff 0%, #fff 70%);
}

.recharge-discount-badge .bi {
  color: var(--brand);
  font-size: 17px;
}

.recharge-discount-badge strong {
  color: var(--ink);
  font-size: 13px;
  font-weight: 650;
  letter-spacing: -0.01em;
}

.recharge-discount-badge .discount-tag {
  display: inline-flex;
  align-items: center;
  padding: 4px 12px;
  border: 1px solid #dfe4ff;
  border-radius: 999px;
  background: #f1f3ff;
  color: #3753ff;
  font-size: 12px;
  font-weight: 600;
  white-space: nowrap;
}

.payment-channel-fieldset {
  display: flex;
  gap: 12px;
}

.payment-channel-fieldset > label {
  position: relative;
  flex: 1;
  min-width: 0;
  cursor: pointer;
}

.billing-form .payment-channel-card {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 72px;
  padding: 12px 18px;
  border: 1px solid #dfe4f0;
  border-radius: 10px;
  background: #fff;
  transition: border-color 0.16s ease, background-color 0.16s ease, box-shadow 0.16s ease;
}

.billing-form .payment-channel-logo {
  display: block;
  width: auto;
  max-width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.billing-form .payment-channel-logo-wechat {
  height: 30px;
}

.billing-form .payment-channel-logo-alipay {
  height: 42px;
}

.payment-channel-fieldset > label:hover .payment-channel-card {
  border-color: #bdc8ee;
  background: #fbfcff;
}

.payment-channel-fieldset input:checked + .payment-channel-card {
  border-color: #3753ff;
  background: #f4f6ff;
  box-shadow: inset 0 0 0 1px #3753ff;
}

.payment-channel-fieldset input:focus-visible + .payment-channel-card {
  outline: 3px solid rgba(55, 83, 255, 0.2);
  outline-offset: 2px;
}

.payment-channel-fieldset input:disabled + .payment-channel-card {
  opacity: 0.42;
  filter: grayscale(1);
  cursor: not-allowed;
}

.payment-channel-fieldset small {
  color: #a16a1c;
}

.billing-pay-button {
  width: 100%;
  min-height: 48px;
  justify-content: center;
  font-size: 15px;
}

.payment-dialog {
  width: min(470px, 100vw - 32px);
  max-height: calc(100vh - 32px);
  padding: 0;
  border: 0;
  border-radius: 20px;
  background: transparent;
  color: var(--ink);
  box-shadow: 0 28px 90px rgba(19, 32, 72, 0.28);
  overflow: visible;
}

.payment-dialog::backdrop {
  background: rgba(13, 24, 55, 0.62);
  backdrop-filter: blur(5px);
}

.payment-dialog-shell {
  position: relative;
  border-radius: 20px;
  background: #fff;
  overflow: hidden;
}

.payment-dialog-close {
  position: absolute;
  z-index: 1;
  top: 17px;
  right: 17px;
  display: grid;
  width: 36px;
  height: 36px;
  place-items: center;
  border: 0;
  border-radius: 50%;
  background: #f1f3f8;
  color: #627091;
  cursor: pointer;
}

.payment-dialog-close:hover {
  background: #e8ebf3;
  color: var(--ink);
}

.payment-dialog-close:focus-visible {
  outline: 3px solid rgba(55, 83, 255, 0.2509803922);
  outline-offset: 2px;
}

.payment-dialog-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 13px;
  padding: 34px 54px 19px;
  text-align: center;
}

.payment-dialog-head span {
  color: #506186;
  font-size: 16px;
  font-weight: 700;
}

.payment-dialog-logo {
  display: block;
  width: auto;
  max-width: 210px;
  -o-object-fit: contain;
     object-fit: contain;
}

.payment-dialog-logo.is-wechat {
  height: 31px;
}

.payment-dialog-logo.is-alipay {
  height: 42px;
}

.payment-dialog-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 3px 34px 28px;
  text-align: center;
}

.payment-qr {
  position: relative;
  display: grid;
  width: 222px;
  min-height: 222px;
  place-items: center;
  padding: 18px;
  border: 1px solid #e0e5f3;
  border-radius: 15px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(44, 65, 122, 0.1);
}

.payment-qr::before, .payment-qr::after {
  position: absolute;
  width: 22px;
  height: 22px;
  border-color: #3753ff;
  content: "";
  pointer-events: none;
}

.payment-qr::before {
  top: 8px;
  left: 8px;
  border-top: 2px solid #3753ff;
  border-left: 2px solid #3753ff;
}

.payment-qr::after {
  right: 8px;
  bottom: 8px;
  border-right: 2px solid #3753ff;
  border-bottom: 2px solid #3753ff;
}

.payment-qr > img, .payment-qr > canvas {
  display: block;
  width: 184px !important;
  height: 184px !important;
}

.payment-qr > span {
  color: var(--caption);
  font-size: 12px;
}

.payment-dialog-details {
  margin-top: 20px;
}

.payment-dialog-details > span {
  display: block;
  color: #7a87a2;
  font-size: 12px;
}

.payment-dialog-details > strong {
  display: block;
  margin-top: 4px;
  color: var(--ink);
  font-size: 34px;
  line-height: 1.15;
  letter-spacing: -0.035em;
}

.payment-dialog-details p {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  margin: 16px 0 4px;
  color: #506186;
  font-size: 13px;
}

.payment-dialog-details p i {
  color: #3753ff;
}

.payment-dialog-details > small {
  color: #8792a9;
  font-size: 12px;
}

.payment-status {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-top: 15px;
  padding: 7px 12px;
  border-radius: 999px;
  background: #f5f7fc;
  color: #687794;
  font-size: 12px;
  font-weight: 600;
}

.payment-status > span {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #f3a92f;
  box-shadow: 0 0 0 4px rgba(243, 169, 47, 0.1215686275);
}

.payment-status > strong {
  color: inherit;
  font: inherit;
}

.payment-status.is-paid {
  background: #ebf8f3;
  color: #13825f;
}

.payment-status.is-paid > span {
  background: #18a87d;
  box-shadow: 0 0 0 4px rgba(24, 168, 125, 0.1215686275);
}

.payment-status.is-expired {
  background: #f5f6f9;
  color: #8792a9;
}

.payment-status.is-expired > span {
  background: #9ba5b8;
  box-shadow: none;
}

.payment-dialog-foot {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  min-height: 52px;
  padding: 11px 24px;
  border-top: 1px solid #e8ebf3;
  background: #fafbfe;
  color: #8a95aa;
  font-size: 11px;
}

.payment-dialog-foot form {
  margin: 0;
}

.payment-dialog-foot .button {
  min-height: 34px;
  padding: 7px 12px;
  font-size: 12px;
}

.success-text {
  color: #13825f;
}

@media (max-width: 960px) {
  .key-form-grid, .key-model-options, .gateway-endpoint-grid {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .key-model-options, .gateway-endpoint-grid {
    gap: 10px;
  }
}
@media (max-width: 1100px) {
  .usage-chart-grid {
    grid-template-columns: 1fr 1fr;
  }
  .usage-chart:first-child {
    grid-column: 1/-1;
  }
  .debugger-overview {
    grid-template-columns: auto minmax(0, 1fr);
  }
  .debugger-overview-badges {
    grid-column: 2;
    justify-content: flex-start;
    max-width: none;
  }
  .debugger-request-grid {
    grid-template-columns: 1fr;
  }
  .debugger-shell textarea {
    min-height: 160px;
  }
  .error-guide-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 1100px) {
  .recharge-amount-options {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
@media (max-width: 960px) {
  .key-policy-advanced .form-grid, .debugger-form-grid, .debugger-payload-grid {
    grid-template-columns: 1fr;
  }
  .debugger-result .key-test-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .usage-chart-grid {
    grid-template-columns: 1fr;
  }
  .usage-chart:first-child {
    grid-column: auto;
  }
}
@media (max-width: 960px) {
  .billing-balance {
    min-height: 112px;
  }
}
@media (max-width: 540px) {
  .key-model-fieldset {
    padding: 14px;
  }
  .key-form-actions {
    align-items: flex-start;
  }
  .key-form-actions .button {
    flex: 1;
    justify-content: center;
  }
  .key-form-actions .form-help {
    flex-basis: 100%;
  }
  .usage-filter-form .form-field {
    flex-basis: 100%;
  }
  .secret-copy-row {
    flex-wrap: wrap;
  }
  .secret-copy-row input {
    flex-basis: 100%;
  }
  .key-test-dialog-head {
    padding: 22px 20px 16px;
  }
  .key-test-intro {
    padding: 18px 20px 0;
  }
  .key-test-dialog [data-key-test-form] {
    padding: 20px;
  }
  .key-test-result {
    margin: 0 20px 20px;
  }
  .workspace-nav {
    scrollbar-width: none;
  }
  .workspace-nav::-webkit-scrollbar {
    display: none;
  }
  .debugger-overview {
    display: block;
    padding: 21px;
  }
  .debugger-overview-icon {
    width: 48px;
    height: 48px;
    margin-bottom: 16px;
    border-radius: 13px;
    font-size: 22px;
  }
  .debugger-overview-badges {
    margin-top: 15px;
  }
  .debugger-shell-head {
    align-items: flex-start;
    flex-direction: column;
    gap: 14px;
    padding: 22px 20px;
  }
  .debugger-shell-head p {
    line-height: 1.6;
  }
  .debugger-live-state {
    padding: 7px 9px;
    font-size: 10px;
  }
  .debugger-shell > [data-key-test-form] {
    padding: 16px;
  }
  .debugger-form-panel {
    padding: 18px;
  }
  .debugger-options-row {
    align-items: flex-start;
    flex-direction: column;
  }
  .debugger-submit-row {
    align-items: stretch;
  }
  .debugger-submit-row .button {
    width: 100%;
  }
  .debugger-submit-row .form-help {
    flex-basis: auto;
  }
  .debugger-result {
    margin: 0 16px 16px;
    padding: 17px;
  }
  .debugger-result .key-test-metrics, .key-test-metrics, .error-guide-grid {
    grid-template-columns: 1fr;
  }
  .debugger-answer {
    padding: 14px;
  }
  .debugger-payload-grid article, .debugger-examples {
    padding: 14px;
  }
  .debugger-payload-grid pre, .debugger-examples pre {
    min-height: 150px;
    font-size: 11px;
  }
  .debugger-examples .card-heading {
    align-items: flex-start;
  }
  .debugger-examples .neutral-badge {
    white-space: normal;
  }
  .debugger-code-tabs {
    display: flex;
    width: 100%;
  }
  .debugger-code-tabs button {
    flex: 1;
    padding-inline: 7px;
  }
  .error-guide {
    padding: 20px;
  }
  .error-guide-head {
    align-items: flex-start;
    flex-direction: column;
    gap: 8px;
  }
  .error-guide-head p {
    text-align: left;
  }
  .key-test-result-head {
    align-items: flex-start;
    flex-direction: column;
  }
  .key-test-result-head small {
    text-align: left;
  }
}
@media (max-width: 540px) {
  .key-service-options {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 540px) {
  .billing-balance {
    align-items: flex-start;
    flex-direction: column;
    gap: 16px;
    padding: 24px 20px;
  }
  .billing-balance > div {
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
  }
  .billing-section-heading {
    align-items: flex-start;
    padding: 24px 20px 0;
  }
  .recharge-discount-badge {
    margin: 16px 20px 0;
  }
  .billing-recharge-card .billing-form {
    padding: 22px 20px 25px;
  }
  .payment-dialog-head {
    padding-top: 30px;
  }
  .payment-dialog-content {
    padding-right: 20px;
    padding-left: 20px;
  }
  .payment-dialog-foot {
    flex-direction: column;
    gap: 8px;
  }
}
@media (max-width: 420px) {
  .recharge-amount-options {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .payment-channel-fieldset {
    flex-direction: column;
  }
  .billing-form .payment-channel-card {
    min-height: 66px;
  }
  .billing-form .payment-channel-logo-wechat {
    height: 28px;
  }
  .billing-form .payment-channel-logo-alipay {
    height: 38px;
  }
  .payment-qr {
    width: 210px;
    min-height: 210px;
    padding: 12px;
  }
}
.workspace-access-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  padding: 28px 32px;
  margin: 0 0 28px;
  border: 1px solid rgba(55, 83, 255, 0.16);
  border-radius: 20px;
  background: linear-gradient(110deg, #f5f7ff, #fff);
}

.workspace-access-summary h2 {
  font-size: 22px;
  line-height: 1.45;
  margin: 8px 0;
}

.workspace-access-summary p {
  color: #64748b;
  margin: 0;
  line-height: 1.8;
}

.workspace-access-balance {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 5px 24px;
}

.workspace-access-balance > span {
  font-size: 13px;
  color: #64748b;
}

.workspace-access-balance > strong {
  grid-column: 1;
  font-size: 28px;
  font-variant-numeric: tabular-nums;
  line-height: 1.35;
}

.workspace-access-balance > .button {
  grid-column: 2;
  grid-row: 1/3;
  white-space: nowrap;
}

.model-retail-price {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  padding: 18px 20px;
  margin: 18px 0;
  border-radius: 12px;
  background: #f6f8ff;
}

.model-retail-price span {
  display: block;
  font-size: 13px;
  color: #64748b;
  margin-bottom: 6px;
}

.model-retail-price strong {
  font-size: 24px;
  font-weight: 650;
  color: #3753ff;
  font-variant-numeric: tabular-nums;
  overflow-wrap: anywhere;
}

.model-retail-price del.model-official-price {
  display: block;
  font-size: 14px;
  font-weight: 500;
  color: #94a3b8;
  text-decoration: line-through;
  margin-bottom: 2px;
  font-variant-numeric: tabular-nums;
  overflow-wrap: anywhere;
}

.model-discount-badge {
  grid-column: 1/-1;
  justify-self: start;
  margin-top: 4px;
  padding: 3px 10px;
  border-radius: 999px;
  background: #e8f7ee;
  color: #0f9d58;
  font-size: 12px;
  font-weight: 600;
}

.model-retail-pending, .model-billing-note {
  color: #64748b;
  font-size: 13px;
  line-height: 1.7;
  margin: 20px 0;
}

.model-access-card {
  display: flex;
  flex-direction: column;
}

.model-access-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: auto;
  padding-top: 20px;
}

@media (max-width: 960px) {
  .workspace-access-summary {
    align-items: flex-start;
    flex-direction: column;
    gap: 20px;
  }
  .workspace-access-balance {
    width: 100%;
  }
}
@media (max-width: 480px) {
  .workspace-access-summary {
    padding: 22px;
  }
  .workspace-access-summary h2 {
    font-size: 20px;
  }
  .workspace-access-balance {
    gap: 8px;
  }
  .workspace-access-balance > .button {
    font-size: 13px;
  }
  .model-retail-price {
    padding: 16px;
    gap: 12px;
  }
  .model-retail-price strong {
    font-size: 20px;
  }
}
.workspace-models .model-access-card {
  margin-bottom: 0;
}

.model-access-description {
  margin-bottom: 14px;
}

.model-billing-note {
  margin: 12px 0;
}

.model-retail-pending {
  margin: 16px 0;
}

.workspace-empty-actions {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  max-width: 100%;
}

.workspace-empty-actions .button {
  white-space: nowrap;
}

@media (max-width: 540px) {
  .workspace-empty-actions {
    gap: 10px;
  }
  .workspace-empty-actions .button {
    padding: 12px 10px;
    gap: 8px;
    font-size: 13px;
  }
}
.brand-page, .home-page {
  --text-caption: .8125rem;
}

.section {
  padding-block: 76px;
}

.page-hero {
  padding: 44px 0 42px;
}

.page-hero h1 {
  font-size: clamp(32px, 3.45vw, 48px);
}

.page-hero .breadcrumb {
  margin-bottom: 22px;
}

.page-hero .eyebrow {
  margin-bottom: 15px;
}

.page-hero p {
  margin-top: 15px;
}

.resources-hero .resources-intro, .resources-hero .services-intro, .resources-hero .application-intro, .services-hero .resources-intro, .services-hero .services-intro, .services-hero .application-intro, .application-hero .resources-intro, .application-hero .services-intro, .application-hero .application-intro {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  align-items: center;
  gap: 60px;
}
.resources-hero .resources-intro-copy p, .resources-hero .services-intro-copy p, .resources-hero .application-intro-copy p, .services-hero .resources-intro-copy p, .services-hero .services-intro-copy p, .services-hero .application-intro-copy p, .application-hero .resources-intro-copy p, .application-hero .services-intro-copy p, .application-hero .application-intro-copy p {
  max-width: 510px;
}
.resources-hero .resources-concept, .resources-hero .services-concept, .resources-hero .application-concept, .services-hero .resources-concept, .services-hero .services-concept, .services-hero .application-concept, .application-hero .resources-concept, .application-hero .services-concept, .application-hero .application-concept {
  width: 100%;
  max-width: 480px;
  margin: 0;
  justify-self: end;
}
.resources-hero .resources-concept img, .resources-hero .services-concept img, .resources-hero .application-concept img, .services-hero .resources-concept img, .services-hero .services-concept img, .services-hero .application-concept img, .application-hero .resources-concept img, .application-hero .services-concept img, .application-hero .application-concept img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 3/2;
  border-radius: 18px;
}
@media (max-width: 1023px) {
  .resources-hero .resources-intro, .resources-hero .services-intro, .resources-hero .application-intro, .services-hero .resources-intro, .services-hero .services-intro, .services-hero .application-intro, .application-hero .resources-intro, .application-hero .services-intro, .application-hero .application-intro {
    gap: 28px;
  }
}
@media (max-width: 767px) {
  .resources-hero .resources-intro, .resources-hero .services-intro, .resources-hero .application-intro, .services-hero .resources-intro, .services-hero .services-intro, .services-hero .application-intro, .application-hero .resources-intro, .application-hero .services-intro, .application-hero .application-intro {
    grid-template-columns: 1fr;
    gap: 26px;
  }
  .resources-hero .resources-concept, .resources-hero .services-concept, .resources-hero .application-concept, .services-hero .resources-concept, .services-hero .services-concept, .services-hero .application-concept, .application-hero .resources-concept, .application-hero .services-concept, .application-hero .application-concept {
    max-width: 360px;
    justify-self: center;
  }
  .resources-hero .resources-concept img, .resources-hero .services-concept img, .resources-hero .application-concept img, .services-hero .resources-concept img, .services-hero .services-concept img, .services-hero .application-concept img, .application-hero .resources-concept img, .application-hero .services-concept img, .application-hero .application-concept img {
    border-radius: 14px;
  }
}

.eyebrow {
  letter-spacing: 0.1em;
}

.section-heading {
  margin-bottom: 32px;
}

.section-heading h2 {
  font-size: clamp(28px, 2.6vw, 38px);
  line-height: 1.4;
}

.section-heading p {
  margin-top: 12px;
}

.hero-next {
  padding-top: 42px;
}

.hero-next .hero-layout {
  min-height: 485px;
}

.hero-next .hero-description {
  max-width: 490px;
}

.hero-next .hero-footnote {
  font-size: 13px;
}

.hero-principles {
  padding-block: 24px;
  margin-top: 20px;
}

.home-services {
  padding-top: 58px;
}

.home-services .service-card {
  padding: 27px;
}

.home-services .card-top {
  margin-bottom: 20px;
}

.home-services .factory-link {
  margin-top: 22px;
}

.demo-badge, .demo-label {
  display: inline-flex;
  align-items: center;
  width: -moz-fit-content;
  width: fit-content;
  padding: 5px 10px;
  background: #edf0ff;
  color: #354bb5;
  border: 1px solid #dce3ff;
  border-radius: 5px;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.5;
  white-space: nowrap;
}

.demo-label {
  font-size: 11px;
  background: #f5f7ff;
}

.availability-note {
  display: flex;
  align-items: center;
  gap: 9px;
  color: var(--muted);
  font-size: 14px !important;
}

.availability-note .status-dot {
  flex: 0 0 6px;
}

.platform-preview-section {
  background: #fff;
}

.workspace-preview {
  border: 1px solid #dce3f1;
  border-radius: 15px;
  overflow: hidden;
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr);
  box-shadow: 0 24px 70px -40px rgba(28, 46, 105, 0.2196078431);
}

.preview-sidebar {
  background: #f6f8fd;
  border-right: 1px solid var(--line);
  padding: 26px 18px;
  display: flex;
  flex-direction: column;
}

.preview-brand {
  display: flex;
  align-items: center;
  gap: 9px;
  font-size: 20px;
  letter-spacing: -0.04em;
}

.preview-tenant {
  display: block;
  margin: 30px 10px 20px;
  font-size: 14px;
  font-weight: 600;
}

.preview-tenant small {
  display: block;
  font-size: 10px;
  letter-spacing: 0.08em;
  color: var(--caption);
  font-weight: 400;
  margin-top: 5px;
}

.preview-tabs {
  display: grid;
  gap: 9px;
}

.preview-tabs button {
  text-align: left;
  display: flex;
  gap: 12px;
  align-items: center;
  padding: 12px 15px;
  font-size: 14px;
  border: 1px solid transparent;
  border-radius: 6px;
  color: var(--muted);
  background: transparent;
  min-height: 44px;
}

.preview-tabs button[aria-selected=true] {
  background: #e8edff;
  border-color: #dfe5ff;
  color: var(--brand);
  font-weight: 600;
}

.preview-side-note {
  margin: auto 10px 0;
  padding-top: 30px;
  font-size: 11px;
  color: var(--caption);
}

.preview-body {
  min-width: 0;
  padding: 0 32px 30px;
}

.preview-topbar {
  display: flex;
  justify-content: space-between;
  gap: 15px;
  align-items: center;
  padding: 20px 0;
  border-bottom: 1px solid var(--line);
  font-size: 12px;
  color: var(--caption);
  margin-bottom: 26px;
}

.preview-topbar strong {
  color: var(--ink);
  font-weight: 500;
}

.preview-body [role=tabpanel] {
  min-height: 295px;
}

.preview-body h3 {
  font-size: 22px;
  margin-bottom: 7px;
}

.preview-lead {
  font-size: 13px;
  color: var(--muted);
  margin-bottom: 23px;
}

.preview-model-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.preview-model-grid article {
  display: flex;
  flex-direction: column;
  align-items: start;
  gap: 8px;
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 9px;
}

.model-glyph {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  background: #edf0ff;
  border-radius: 9px;
  font: 650 20px var(--font-mono);
  color: var(--brand);
}

.preview-model-grid h4 {
  font-size: 15px;
  margin: 5px 0 0;
}

.preview-model-grid p {
  font-size: 12px;
  color: var(--muted);
}

.preview-model-grid code {
  font-size: 11px;
  color: var(--caption);
  overflow-wrap: anywhere;
}

.preview-model-grid .demo-label {
  margin-top: 3px;
}

.preview-bottom, .preview-caption {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 25px;
  margin-top: 24px;
  font-size: 12px;
  color: var(--caption);
}

.preview-bottom button {
  border: 0;
  background: transparent;
  padding: 10px 0;
  font-size: 13px;
}

.preview-caption p {
  max-width: 700px;
}

.preview-caption .text-link {
  font-size: 13px;
}

.table-scroll {
  max-width: 100%;
  overflow-x: auto;
}

.brand-table {
  width: 100%;
  border-collapse: collapse;
  text-align: left;
  font-size: 13px;
}

.brand-table th, .brand-table td {
  border-bottom: 1px solid var(--line);
  padding: 16px 12px;
  white-space: nowrap;
}

.brand-table th {
  color: var(--caption);
  font-weight: 500;
  background: #f7f9fe;
}

.status-pill {
  color: #207553;
  background: #ecf7f1;
  padding: 4px 8px;
  border-radius: 4px;
  font-size: 12px;
}

.preview-metrics {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}

.preview-metrics > div {
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: 8px;
}

.preview-metrics span {
  display: block;
  color: var(--caption);
  font-size: 13px;
}

.preview-metrics strong {
  display: block;
  font-size: 30px;
  margin-top: 8px;
  letter-spacing: -0.03em;
}

.preview-metrics small {
  font-size: 13px;
  font-weight: 400;
}

.usage-meter {
  margin-top: 25px;
  padding: 18px;
  background: #f7f9fe;
  border-radius: 8px;
  font-size: 13px;
}

.usage-meter > div {
  display: flex;
  justify-content: space-between;
  gap: 12px;
}

.usage-meter meter {
  width: 100%;
  height: 14px;
  margin-top: 12px;
  accent-color: var(--brand);
}

.usage-meter meter::-webkit-meter-optimum-value {
  background: var(--brand);
}

.usage-meter p {
  color: var(--caption);
  font-size: 12px;
  margin-top: 7px;
}

.trust-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
}

.trust-grid article {
  border-top: 2px solid #dfe5ff;
  padding-top: 24px;
}

.trust-grid i {
  font-size: 26px;
  color: var(--brand);
}

.trust-grid h3 {
  font-size: 21px;
  margin: 15px 0 12px;
}

.trust-grid p {
  color: var(--muted);
  font-size: 15px;
}

.trust-links {
  display: flex;
  flex-wrap: wrap;
  gap: 32px;
  margin-top: 32px;
}

.comparison-grid, .benefit-grid, .network-evidence {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 25px;
}

.comparison-grid article, .info-card, .spec-card, .readiness-card {
  padding: 30px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 10px;
  min-width: 0;
}

.comparison-grid h3, .info-card h3, .spec-card h3, .readiness-card h3 {
  font-size: 21px;
  margin: 12px 0;
}

.comparison-grid p, .info-card p, .spec-card p {
  font-size: 15px;
  color: var(--muted);
  line-height: 1.85;
}

.comparison-grid .text-link, .info-card .text-link {
  margin-top: 24px;
  white-space: normal;
}

.benefit-grid article {
  padding: 0 30px 0 0;
}

.benefit-grid article > span {
  font: 500 13px var(--font-mono);
  color: var(--brand);
}

.benefit-grid h2 {
  font-size: 22px;
  margin: 15px 0;
}

.benefit-grid p {
  color: var(--muted);
  font-size: 15px;
}

.model-card {
  padding: 28px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 12px;
  min-width: 0;
  display: flex;
  flex-direction: column;
}

.model-card h3 {
  font-size: 23px;
}

.model-card > code {
  font-size: 13px;
  color: var(--caption);
  margin: 7px 0 16px;
}

.model-card > p {
  font-size: 15px;
  color: var(--muted);
}

.model-card dl, .spec-card dl {
  margin: 24px 0;
  font-size: 14px;
}

.model-card dl > div, .spec-card dl > div {
  display: flex;
  justify-content: space-between;
  gap: 15px;
  padding: 9px 0;
  border-bottom: 1px solid var(--line);
}

.model-card dt, .spec-card dt {
  color: var(--caption);
}

.model-card dd, .spec-card dd {
  margin: 0;
  text-align: right;
}

.model-card .text-link {
  margin-top: auto;
  padding-top: 12px;
}

.api-demo-layout {
  display: grid;
  grid-template-columns: 0.85fr 1.15fr;
  gap: 60px;
  align-items: start;
}

.api-console {
  background: #101c39;
  border: 1px solid #233256;
  color: #e8eeff;
  border-radius: 13px;
  overflow: hidden;
  min-width: 0;
}

.console-bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 15px;
  padding: 15px 22px;
  background: #182645;
  border-bottom: 1px solid #2d3b5b;
  font-size: 13px;
}

.console-bar button {
  min-height: 36px;
  background: rgba(255, 255, 255, 0.0705882353);
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.1450980392);
  border-radius: 5px;
  padding: 5px 12px;
  font-size: 12px;
}

.api-console pre {
  padding: 22px;
  margin: 0;
  overflow-x: auto;
  font: 12px/1.95 var(--font-mono);
  white-space: pre;
  color: #d3deff;
}

.console-note {
  padding: 0 22px 18px;
  color: #a9b8d9;
  font-size: 12px;
}

.api-console .demo-response {
  min-height: 100px;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.numbered-list {
  list-style: none;
  padding: 0;
  margin: 28px 0;
  counter-reset: steps;
}

.numbered-list li {
  counter-increment: steps;
  padding: 0 0 25px 43px;
  position: relative;
}

.numbered-list li::before {
  content: counter(steps);
  position: absolute;
  left: 0;
  top: 0;
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  background: #edf0ff;
  color: var(--brand);
  border-radius: 50%;
  font-size: 13px;
}

.numbered-list strong {
  font-size: 16px;
  display: block;
}

.numbered-list span {
  font-size: 14px;
  color: var(--muted);
}

.deliverable {
  padding-top: 20px;
  margin-top: 20px;
  border-top: 1px solid var(--line);
}

.deliverable > span {
  font-size: 12px;
  color: var(--brand);
  display: block;
  margin-bottom: 8px;
}

.task-flow {
  display: grid;
  grid-template-columns: 1fr 24px 1fr 24px 1fr;
  gap: 16px;
  align-items: center;
}

.task-flow > div {
  padding: 24px;
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 9px;
}

.task-flow span {
  display: block;
  color: var(--brand);
  font-size: 13px;
  margin-bottom: 10px;
}

.task-flow strong {
  font-size: 16px;
}

.task-flow > i {
  color: var(--caption);
}

.evaluation-note {
  display: flex;
  gap: 25px;
  padding: 25px 0;
  margin-top: 15px;
}

.evaluation-note strong {
  flex: 0 0 auto;
  font-size: 15px;
}

.evaluation-note p {
  font-size: 15px;
  color: var(--muted);
}

.factory-render figcaption {
  font-size: 12px;
  color: var(--caption);
  margin-top: 10px;
}

.factory-render {
  margin: 0;
}

.factory-render img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 13px;
}

.delivery-checklist {
  margin-top: 28px;
  padding: 25px 30px;
  background: var(--wash);
  border-radius: 8px;
}

.delivery-checklist h3 {
  font-size: 18px;
  margin-bottom: 10px;
}

.delivery-checklist p {
  font-size: 15px;
  color: var(--muted);
}

.cms-supplement {
  border-top: 1px solid var(--line);
}

.application-hero {
  padding-bottom: 30px;
}

.application-hero h1 {
  font-size: 36px;
}

.application-hero p {
  max-width: 510px;
  font-size: 16px;
  margin-top: 10px;
}

.application-page .page-content {
  padding-top: 35px;
}

.application-page .apply-layout {
  grid-template-columns: minmax(0, 1.45fr) minmax(0, 0.75fr);
  gap: 65px;
  align-items: start;
}

.application-page .form-card {
  padding: 30px;
}

.form-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  margin-bottom: 27px;
}

.form-heading h2 {
  font-size: 23px;
}

.form-heading > span {
  font-size: 12px;
  color: var(--caption);
}

.field-hint {
  font-size: 12px;
  color: var(--caption);
}

.form-extras {
  margin: 10px 0 25px;
  padding: 17px 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.form-extras summary {
  cursor: pointer;
  font-size: 14px;
  color: var(--ink);
}

.form-extras summary span {
  color: var(--caption);
  font-size: 12px;
  margin-left: 8px;
}

.form-extras[open] summary {
  margin-bottom: 20px;
}

.form-extras .form-field:last-child {
  margin-bottom: 0;
}

.application-page .apply-intro {
  padding-top: 10px;
}

.application-page .apply-intro h2 {
  font-size: 25px;
}

.application-page .apply-steps {
  display: block;
  margin-top: 27px;
}

.application-page .apply-steps div {
  margin: 24px 0;
}

.availability-card {
  padding: 20px;
  background: var(--wash);
  border-radius: 8px;
  margin-top: 30px;
}

.availability-card strong {
  font-size: 14px;
}

.availability-card p {
  font-size: 14px;
  margin-top: 9px;
}

.apply-account-note {
  font-size: 13px !important;
  margin: 24px 0 12px;
}

.receipt-next {
  text-align: left;
  background: var(--wash);
  padding: 25px 30px;
  border-radius: 10px;
}

.receipt-next h3 {
  font-size: 19px;
}

.receipt-next ol {
  padding-left: 22px;
  margin: 15px 0;
  color: var(--muted);
}

.receipt-next p {
  font-size: 14px;
  margin-bottom: 0;
}

.footer-contact-note {
  font-size: 13px;
  color: var(--muted);
  margin-top: 12px;
}

.site-footer .footer-note {
  font-size: 13px;
}

.site-footer .footer-brand p {
  max-width: 280px;
}

[hidden] {
  display: none !important;
}

@media (max-width: 1199px) {
  .preview-model-grid {
    gap: 10px;
  }
  .preview-model-grid article {
    padding: 14px;
  }
  .api-demo-layout {
    gap: 30px;
  }
  .network-evidence {
    grid-template-columns: 1fr 1fr;
  }
  .network-evidence .readiness-card {
    grid-column: 1/-1;
  }
}
@media (max-width: 959px) {
  .workspace-preview {
    grid-template-columns: 175px minmax(0, 1fr);
  }
  .preview-sidebar {
    padding: 22px 12px;
  }
  .preview-body {
    padding-inline: 22px;
  }
  .preview-model-grid {
    grid-template-columns: 1fr;
  }
  .preview-model-grid article {
    display: grid;
    grid-template-columns: 36px 1fr auto;
    gap: 5px 12px;
  }
  .preview-model-grid .model-glyph {
    grid-row: 1/4;
  }
  .preview-model-grid h4 {
    grid-column: 2;
    margin: 0;
  }
  .preview-model-grid p, .preview-model-grid code {
    grid-column: 2;
  }
  .preview-model-grid .demo-label {
    grid-column: 3;
    grid-row: 1/3;
    align-self: center;
  }
  .preview-metrics {
    gap: 10px;
  }
  .preview-metrics > div {
    padding: 14px;
  }
  .preview-metrics strong {
    font-size: 25px;
  }
  .comparison-grid {
    grid-template-columns: 1fr;
  }
  .api-demo-layout {
    grid-template-columns: 1fr;
    gap: 28px;
  }
  .application-page .apply-layout {
    gap: 30px;
    grid-template-columns: minmax(0, 1.4fr) minmax(0, 0.8fr);
  }
}
@media (max-width: 639px) {
  .section {
    padding-block: 46px;
  }
  .page-hero {
    padding-block: 28px 30px;
  }
  .page-hero h1 {
    font-size: 32px;
  }
  .page-hero .breadcrumb {
    margin-bottom: 18px;
  }
  .section-heading {
    margin-bottom: 24px;
  }
  .section-heading p {
    font-size: 15px;
  }
  .hero-next {
    padding-top: 28px;
  }
  .hero-next .hero-layout {
    gap: 18px;
    min-height: 0;
  }
  .hero-next h1 {
    font-size: 39px;
  }
  .hero-next .hero-kicker {
    margin-bottom: 19px;
    font-size: 11px;
  }
  .hero-next .hero-subtitle {
    margin-top: 20px;
    font-size: 18px;
  }
  .hero-next .hero-description {
    font-size: 15px;
    line-height: 1.85;
  }
  .hero-next .hero-actions {
    gap: 10px;
    margin-top: 23px;
  }
  .hero-next .hero-actions .button {
    padding: 12px 15px;
    font-size: 14px;
    gap: 12px;
  }
  .hero-next .hero-footnote {
    font-size: 12px;
    margin-top: 17px;
  }
  .hero-scene {
    max-width: 320px;
    width: 100%;
    margin: 0 auto;
    min-height: 0;
  }
  .scene-platform {
    padding: 7px 11px;
    top: 1%;
  }
  .scene-platform strong {
    font-size: 16px;
  }
  .scene-platform div > span {
    font-size: 10px;
  }
  .scene-factory {
    bottom: 8%;
    right: 0;
    padding: 5px 8px;
  }
  .scene-factory strong, .scene-factory div > span {
    font-size: 10px;
  }
  .hero-scene figcaption {
    font-size: 9px;
    right: 0;
    bottom: -3px;
  }
  .hero-scene figcaption span {
    font-size: 9px;
  }
  .hero-principles {
    padding-block: 20px;
    gap: 13px;
    margin-top: 25px;
  }
  .hero-principles > div {
    gap: 10px;
  }
  .hero-principles strong {
    font-size: 13px;
  }
  .hero-principles small {
    display: none;
  }
  .home-services {
    padding-top: 40px;
  }
  .home-services .service-card {
    padding: 22px;
  }
  .home-services .card-top {
    margin-bottom: 13px;
  }
  .home-services .service-icon {
    width: 40px;
    height: 40px;
    font-size: 22px;
  }
  .home-services .tags {
    margin-block: 15px;
  }
  .home-services .service-card p {
    font-size: 15px;
  }
  .home-services .service-card h3 {
    margin-bottom: 10px;
  }
  .workspace-preview {
    grid-template-columns: 1fr;
  }
  .preview-sidebar {
    padding: 16px;
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }
  .preview-brand {
    font-size: 18px;
  }
  .preview-brand img {
    width: 23px;
    height: 23px;
  }
  .preview-tenant, .preview-side-note {
    display: none;
  }
  .preview-tabs {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 5px;
    margin-top: 15px;
  }
  .preview-tabs button {
    justify-content: center;
    gap: 7px;
    padding: 9px 7px;
    font-size: 12px;
  }
  .preview-body {
    padding: 0 16px 20px;
  }
  .preview-body h3 {
    font-size: 20px;
  }
  .preview-topbar {
    margin-bottom: 20px;
    padding-block: 15px;
  }
  .preview-lead {
    font-size: 12px;
  }
  .preview-model-grid article {
    grid-template-columns: 32px minmax(0, 1fr) auto;
    gap: 5px 9px;
  }
  .preview-model-grid .model-glyph {
    width: 30px;
    height: 30px;
    font-size: 16px;
  }
  .preview-model-grid h4 {
    font-size: 14px;
  }
  .preview-model-grid p {
    font-size: 11px;
  }
  .preview-model-grid .demo-label {
    font-size: 9px;
    padding: 3px 5px;
  }
  .preview-bottom {
    align-items: start;
    flex-direction: column;
    gap: 5px;
    margin-top: 15px;
  }
  .preview-caption {
    flex-direction: column;
    align-items: start;
    gap: 12px;
  }
  .platform-preview-section .section-heading > .demo-badge {
    margin-top: 14px;
  }
  .preview-body [role=tabpanel] {
    min-height: 330px;
  }
  .preview-metrics {
    gap: 6px;
  }
  .preview-metrics > div {
    padding: 12px 9px;
  }
  .preview-metrics span {
    font-size: 11px;
  }
  .preview-metrics strong {
    font-size: 22px;
  }
  .usage-meter {
    padding: 15px;
  }
  .usage-meter > div {
    display: block;
  }
  .usage-meter > div span {
    display: block;
    margin-top: 5px;
  }
  .trust-grid, .benefit-grid, .network-evidence {
    grid-template-columns: 1fr;
    gap: 23px;
  }
  .trust-grid article {
    padding-top: 20px;
  }
  .trust-grid h3 {
    margin-top: 10px;
    font-size: 20px;
  }
  .trust-links {
    gap: 15px;
  }
  .network-evidence .readiness-card {
    grid-column: auto;
  }
  .comparison-grid article, .info-card, .spec-card, .readiness-card, .model-card {
    padding: 24px;
  }
  .benefit-grid article {
    padding: 0 0 20px;
    border-bottom: 1px solid var(--line);
  }
  .benefit-grid article:last-child {
    padding-bottom: 0;
    border: 0;
  }
  .benefit-grid h2 {
    font-size: 20px;
    margin: 10px 0;
  }
  .task-flow {
    grid-template-columns: 1fr;
    gap: 10px;
  }
  .task-flow > i {
    transform: rotate(90deg);
    justify-self: center;
  }
  .evaluation-note {
    flex-direction: column;
    gap: 8px;
  }
  .application-hero h1 {
    font-size: 30px;
  }
  .application-hero p {
    font-size: 15px;
    line-height: 1.75;
  }
  .application-page .page-content {
    padding-top: 24px;
  }
  .application-page .apply-layout {
    grid-template-columns: 1fr;
    gap: 36px;
  }
  .application-page .form-card {
    padding: 23px 18px;
  }
  .form-heading {
    margin-bottom: 23px;
    display: block;
  }
  .form-heading h2 {
    font-size: 22px;
  }
  .form-heading > span {
    display: block;
    margin-top: 5px;
  }
  .form-extras summary span {
    display: block;
    margin: 4px 0 0 17px;
  }
  .application-page .form-card > .button {
    width: 100%;
  }
  .application-page .apply-intro {
    padding: 0 4px;
  }
  .site-footer .footer-main > div:last-child {
    display: block;
    grid-column: 1/-1;
  }
  .footer-contact-note {
    max-width: 320px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .workspace-preview * {
    scroll-behavior: auto;
    transition: none;
  }
}
.brand-table .visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
}

@media (max-width: 639px) {
  .home-industries .industry-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
  }
  .home-industries .industry-card-body {
    padding: 17px 14px;
  }
  .home-industries .industry-card h3 {
    font-size: 17px;
    margin-bottom: 10px;
  }
  .home-industries .industry-card p {
    font-size: 13px;
    line-height: 1.8;
  }
  .home-industries .industry-card .text-link {
    font-size: 12px;
    gap: 7px;
    white-space: normal;
    margin-top: 15px;
  }
}
.solutions-page .solutions-hero {
  padding-bottom: 0;
  background: radial-gradient(ellipse at 92% 0, #eaf0ff 0, transparent 58%), #fff;
  border-bottom: 0;
}
.solutions-page .solutions-hero-layout {
  display: grid;
  grid-template-columns: 1.12fr 1fr;
  gap: 70px;
  align-items: end;
}
.solutions-page .solutions-hero h1 {
  font-size: clamp(34px, 3.25vw, 48px);
  line-height: 1.35;
  letter-spacing: -0.04em;
}
.solutions-page .solutions-hero .eyebrow {
  font-size: 12px;
  margin-bottom: 17px;
}
.solutions-page .solutions-hero-intro > p {
  margin: 0;
  font-size: 16px;
  line-height: 1.9;
  text-wrap: pretty;
}
.solutions-page .solutions-principles {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 19px;
  color: #405174;
  font-size: 13px;
}
.solutions-page .solutions-principles i {
  color: #94a4cc;
}
.solutions-page .solutions-nav {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 43px;
  border-top: 1px solid #dde5f2;
  border-bottom: 1px solid #dde5f2;
}
.solutions-page .solutions-nav a {
  display: flex;
  gap: 14px;
  align-items: center;
  padding: 23px 21px;
  position: relative;
  transition: background 0.2s;
  min-width: 0;
}
.solutions-page .solutions-nav a:first-child {
  padding-left: 0;
}
.solutions-page .solutions-nav a:last-child {
  padding-right: 0;
}
.solutions-page .solutions-nav a + a::before {
  content: "";
  position: absolute;
  left: 0;
  top: 26px;
  bottom: 26px;
  border-left: 1px solid #dde5f2;
}
.solutions-page .solution-nav-index {
  color: #8592ad;
  font-size: 12px;
  font-variant-numeric: tabular-nums;
  align-self: start;
  padding-top: 3px;
}
.solutions-page .solutions-nav strong {
  display: block;
  font-size: 17px;
  font-weight: 600;
}
.solutions-page .solutions-nav small {
  display: block;
  color: var(--muted);
  font-size: 12px;
  margin-top: 5px;
}
.solutions-page .solutions-nav a > i {
  margin-left: auto;
  color: var(--brand);
  font-size: 18px;
  transition: transform 0.2s;
}
.solutions-page .solutions-nav a:hover {
  color: var(--brand);
  background: #f5f7ff;
}
.solutions-page .solutions-nav a:hover > i {
  transform: translate(2px, 2px);
}
.solutions-page .solutions-nav a:focus-visible, .solutions-page .solution-link:focus-visible {
  outline: 2px solid var(--brand);
  outline-offset: 4px;
}
.solutions-page .solutions-catalog {
  padding: 34px 0 76px;
  background: linear-gradient(#fff, #f5f7fc);
}
.solutions-page .solutions-catalog-intro {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 25px;
}
.solutions-page .solutions-catalog-intro > span {
  font-size: 14px;
  font-weight: 600;
  color: #465779;
}
.solutions-page .solutions-catalog-intro p {
  font-size: 12px;
  color: var(--muted);
  margin: 0;
  display: flex;
  gap: 8px;
  align-items: baseline;
}
.solutions-page .solutions-catalog-intro p > i {
  color: #7e8ead;
  flex: 0 0 auto;
}
.solutions-page .solutions-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 32px;
}
.solutions-page .solution-card {
  background: #fff;
  border: 1px solid #e0e6f1;
  border-radius: 16px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  min-width: 0;
  scroll-margin-top: 108px;
  box-shadow: 0 8px 25px -16px rgba(32, 58, 113, 0.1882352941);
}
.solutions-page .solution-card:target {
  border-color: #8596ff;
  box-shadow: 0 0 0 3px rgba(55, 83, 255, 0.0705882353);
}
.solutions-page .solution-cover {
  position: relative;
  overflow: hidden;
  background: #eaf1fc;
  aspect-ratio: 2.3;
}
.solutions-page .solution-cover::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(233, 242, 255, 0.3960784314), transparent 30%);
  pointer-events: none;
}
.solutions-page .solution-cover img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center 53%;
     object-position: center 53%;
}
.solutions-page .solution-cover-label {
  position: absolute;
  top: 20px;
  left: 24px;
  z-index: 1;
  color: #334d79;
  background: rgba(255, 255, 255, 0.8509803922);
  border: 1px solid rgba(255, 255, 255, 0.6705882353);
  border-radius: 4px;
  padding: 5px 9px;
  font-size: 10px;
  letter-spacing: 0.09em;
  font-weight: 600;
}
.solutions-page .solution-visual-note {
  position: absolute;
  bottom: 13px;
  right: 18px;
  color: #496387;
  background: rgba(255, 255, 255, 0.8117647059);
  border-radius: 3px;
  padding: 3px 7px;
  font-size: 10px;
  z-index: 1;
}
.solutions-page .solution-card-body {
  padding: 29px 32px 25px;
  display: flex;
  flex-direction: column;
  flex: 1;
}
.solutions-page .solution-category {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  color: #536ba1;
  margin-bottom: 9px;
}
.solutions-page .solution-category i {
  font-size: 15px;
  color: var(--brand);
}
.solutions-page .solution-card h2 {
  font-size: 28px;
  letter-spacing: -0.03em;
  line-height: 1.4;
  margin: 0;
}
.solutions-page .solution-outcome {
  font-size: 16px;
  line-height: 1.8;
  color: #53627c;
  margin: 10px 0 0;
  text-wrap: pretty;
}
.solutions-page .solution-input {
  margin: 23px 0 17px;
}
.solutions-page .solution-input > div, .solutions-page .solution-evaluation > div {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  gap: 12px;
}
.solutions-page .solution-input dt, .solutions-page .solution-evaluation dt {
  color: #63728b;
  font-size: 13px;
  line-height: 1.9;
  font-weight: 400;
}
.solutions-page .solution-input dd {
  color: #465572;
  font-size: 14px;
  line-height: 1.8;
  margin: 0;
}
.solutions-page .solution-workflow {
  list-style: none;
  padding: 0;
  margin: 0 0 21px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 19px;
}
.solutions-page .solution-workflow li {
  position: relative;
  font-size: 14px;
  line-height: 1.7;
  color: #40516f;
  border-top: 1px solid #dde5f2;
  padding-top: 10px;
}
.solutions-page .solution-workflow li:not(:last-child)::after {
  content: "→";
  position: absolute;
  right: -15px;
  top: -11px;
  background: #fff;
  color: #97a5bf;
  font-size: 13px;
}
.solutions-page .solution-workflow li > span {
  display: block;
  font-size: 10px;
  color: var(--brand);
  margin-bottom: 3px;
  font-weight: 600;
}
.solutions-page .solution-delivery {
  background: #f2f5ff;
  border-left: 2px solid var(--brand);
  border-radius: 0 7px 7px 0;
  padding: 15px 17px;
}
.solutions-page .solution-delivery > span {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 12px;
  font-weight: 600;
  color: #405ac6;
  margin-bottom: 5px;
}
.solutions-page .solution-delivery p {
  font-size: 14px;
  line-height: 1.8;
  color: #293e6c;
  margin: 0;
}
.solutions-page .solution-evaluation {
  margin: 15px 0 22px;
}
.solutions-page .solution-evaluation dd {
  margin: 0;
  font-size: 13px;
  line-height: 1.9;
  color: #667692;
}
.solutions-page .solution-card-footer {
  margin-top: auto;
  padding-top: 18px;
  border-top: 1px solid #edf0f6;
}
.solutions-page .solution-card-footer p {
  font-size: 13px;
  color: #63728b;
  line-height: 1.8;
  margin: 0 0 13px;
}
.solutions-page .solution-link {
  display: flex;
  justify-content: space-between;
  align-items: center;
  min-height: 40px;
  gap: 15px;
  color: var(--brand);
  font-size: 14px;
  font-weight: 600;
}
.solutions-page .solution-link > i {
  display: grid;
  place-items: center;
  width: 33px;
  height: 33px;
  border: 1px solid #dee5ff;
  border-radius: 50%;
  background: #f7f9ff;
  transition: background 0.2s, color 0.2s;
}
.solutions-page .solution-link:hover > i {
  color: #fff;
  background: var(--brand);
  border-color: var(--brand);
}
.solutions-page .cms-supplement {
  border-top: 1px solid var(--line);
}
.solutions-page .cta-inner h2 {
  font-size: clamp(26px, 2.6vw, 36px);
}
@media (max-width: 1199px) {
  .solutions-page .solutions-hero-layout {
    gap: 40px;
  }
  .solutions-page .solutions-nav a {
    padding-inline: 16px;
    gap: 10px;
  }
  .solutions-page .solutions-grid {
    gap: 24px;
  }
  .solutions-page .solution-card-body {
    padding-inline: 25px;
  }
}
@media (max-width: 959px) {
  .solutions-page .solutions-hero-layout {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .solutions-page .solutions-hero-intro {
    display: flex;
    gap: 35px;
    align-items: start;
  }
  .solutions-page .solutions-hero-intro > p {
    max-width: 500px;
  }
  .solutions-page .solutions-principles {
    margin-top: 3px;
    flex-wrap: wrap;
    gap: 8px;
    min-width: 92px;
  }
  .solutions-page .solutions-nav {
    margin-top: 30px;
  }
  .solutions-page .solutions-nav a {
    gap: 8px;
    padding: 20px 12px;
  }
  .solutions-page .solutions-nav strong {
    font-size: 15px;
  }
  .solutions-page .solutions-nav small {
    font-size: 11px;
  }
  .solutions-page .solution-nav-index {
    display: none;
  }
  .solutions-page .solutions-grid {
    gap: 22px;
  }
  .solutions-page .solution-cover {
    aspect-ratio: 1.9;
  }
  .solutions-page .solution-cover-label {
    top: 15px;
    left: 17px;
    font-size: 9px;
  }
  .solutions-page .solution-card-body {
    padding: 24px 22px 20px;
  }
  .solutions-page .solution-card h2 {
    font-size: 25px;
  }
  .solutions-page .solution-outcome {
    font-size: 15px;
    min-height: 54px;
  }
  .solutions-page .solution-workflow {
    gap: 15px;
  }
  .solutions-page .solution-workflow li {
    font-size: 13px;
  }
  .solutions-page .solution-workflow li:not(:last-child)::after {
    right: -13px;
  }
  .solutions-page .solution-delivery {
    padding: 13px 14px;
  }
}
@media (max-width: 639px) {
  .solutions-page .solutions-hero .eyebrow {
    font-size: 10px;
    margin-bottom: 12px;
  }
  .solutions-page .solutions-hero h1 {
    font-size: 32px;
    max-width: 10em;
  }
  .solutions-page .solutions-hero-layout {
    gap: 15px;
  }
  .solutions-page .solutions-hero-intro {
    display: block;
  }
  .solutions-page .solutions-hero-intro > p {
    font-size: 14px;
    line-height: 1.9;
  }
  .solutions-page .solutions-principles {
    margin-top: 14px;
    gap: 10px;
    font-size: 12px;
  }
  .solutions-page .solutions-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 26px;
  }
  .solutions-page .solutions-nav a {
    padding: 16px 12px;
  }
  .solutions-page .solutions-nav a:nth-child(odd) {
    padding-left: 0;
  }
  .solutions-page .solutions-nav a:nth-child(even) {
    padding-right: 0;
  }
  .solutions-page .solutions-nav a:nth-child(3)::before {
    content: none;
  }
  .solutions-page .solutions-nav a:nth-child(-n+2) {
    border-bottom: 1px solid #e5eaf4;
  }
  .solutions-page .solutions-nav a + a::before {
    top: 18px;
    bottom: 18px;
  }
  .solutions-page .solutions-nav a > i {
    font-size: 16px;
  }
  .solutions-page .solutions-catalog {
    padding: 24px 0 42px;
  }
  .solutions-page .solutions-catalog-intro {
    display: block;
    margin-bottom: 19px;
  }
  .solutions-page .solutions-catalog-intro > span {
    font-size: 13px;
  }
  .solutions-page .solutions-catalog-intro p {
    margin-top: 7px;
    font-size: 12px;
    line-height: 1.8;
  }
  .solutions-page .solutions-grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .solutions-page .solution-card {
    border-radius: 12px;
    scroll-margin-top: 94px;
  }
  .solutions-page .solution-cover {
    aspect-ratio: 2;
  }
  .solutions-page .solution-card-body {
    padding: 22px 21px 18px;
  }
  .solutions-page .solution-outcome {
    min-height: 0;
    font-size: 14px;
    margin-top: 8px;
  }
  .solutions-page .solution-category {
    font-size: 11px;
    margin-bottom: 6px;
  }
  .solutions-page .solution-input {
    margin-top: 19px;
  }
  .solutions-page .solution-workflow {
    margin-bottom: 18px;
  }
  .solutions-page .solution-delivery p {
    font-size: 13px;
  }
  .solutions-page .solution-evaluation {
    margin-bottom: 17px;
  }
  .solutions-page .solution-card-footer {
    padding-top: 14px;
  }
  .solutions-page .solution-card-footer p {
    margin-bottom: 8px;
  }
  .solutions-page .cta-actions {
    flex-wrap: wrap;
  }
}
@media (prefers-reduced-motion: reduce) {
  .solutions-page .solutions-nav a, .solutions-page .solutions-nav a > i, .solutions-page .solution-link > i {
    transition: none;
  }
}

.identity-page {
  min-height: 100vh;
  min-height: 100svh;
  display: flex;
  flex-direction: column;
  background: radial-gradient(ellipse at 90% 0, #edf1ff 0, transparent 50%), #f6f8fc;
  --text-caption: 13px;
}
.identity-page .customer-header {
  width: min(1240px, 100%);
  height: 88px;
  flex: 0 0 auto;
  padding-inline: 40px;
}
.identity-page .customer-back {
  font-size: 13px;
}
.identity-page .identity-shell {
  width: min(1120px, 100% - 64px);
  margin: 18px auto 28px;
  display: grid;
  grid-template-columns: 1.03fr 1fr;
  background: #fff;
  border: 1px solid #e0e7f4;
  border-radius: 22px;
  overflow: hidden;
  box-shadow: 0 24px 80px -45px rgba(45, 72, 135, 0.3019607843);
}
.identity-page .identity-story {
  position: relative;
  padding: 43px 42px 25px;
  background: linear-gradient(145deg, #eaf0ff 0, #f3f7ff 55%, #e9f1fc 100%);
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.identity-page .identity-kicker {
  font-size: 10px;
  letter-spacing: 0.12em;
  font-weight: 600;
  color: #6074a6;
}
.identity-page .identity-story h2 {
  margin: 26px 0 15px;
  font-size: clamp(28px, 2.6vw, 36px);
  line-height: 1.45;
  letter-spacing: -0.045em;
  color: #1e3358;
}
.identity-page .identity-story h2 em {
  font-style: normal;
  color: var(--brand);
}
.identity-page .identity-story-intro {
  max-width: 400px;
  font-size: 15px;
  line-height: 1.9;
  color: #62728e;
  text-wrap: pretty;
  margin: 0;
}
.identity-page .identity-illustration {
  margin: auto -27px 0;
  position: relative;
}
.identity-page .identity-illustration img {
  display: block;
  width: 100%;
  height: 275px;
  -o-object-fit: contain;
     object-fit: contain;
  mix-blend-mode: multiply;
}
.identity-page .identity-illustration figcaption {
  text-align: center;
  color: #667ea3;
  font-size: 11px;
  letter-spacing: 0.05em;
  margin: -5px 0 23px;
}
.identity-page .identity-capabilities {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  border-top: 1px solid #d8e2f4;
  padding-top: 20px;
}
.identity-page .identity-capabilities > span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #47618e;
  font-size: 12px;
}
.identity-page .identity-capabilities i {
  color: var(--brand);
  font-size: 16px;
}
.identity-page .identity-story-foot {
  display: flex;
  justify-content: space-between;
  gap: 15px;
  font-size: 9px;
  color: #6980a7;
  letter-spacing: 0.08em;
  margin: 27px 0 0;
}
.identity-page .identity-panel {
  padding: 43px 48px 35px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
}
.identity-page .identity-panel-heading {
  margin-bottom: 29px;
}
.identity-page .identity-panel-heading .eyebrow {
  font-size: 10px;
  letter-spacing: 0.12em;
  margin: 0 0 12px;
}
.identity-page .identity-panel-heading h1 {
  font-size: 29px;
  letter-spacing: -0.03em;
  line-height: 1.4;
  margin: 0;
}
.identity-page .identity-panel-heading p {
  font-size: 14px;
  color: #66758f;
  line-height: 1.8;
  margin: 11px 0 0;
}
.identity-page .customer-form .form-field {
  margin-bottom: 17px;
  gap: 0;
}
.identity-page .customer-form label {
  display: block;
  font-size: 14px;
  font-weight: 500;
  color: #34445f;
  margin-bottom: 8px;
  line-height: 1.5;
}
.identity-page .customer-form input:not([type=checkbox]), .identity-page .customer-form select {
  min-height: 48px;
  border: 1px solid #dce3f0;
  border-radius: 7px;
  padding: 11px 14px;
  background: #fbfcff;
  color: var(--ink);
  font-size: 15px;
  line-height: 1.5;
  box-shadow: 0 1px 2px rgba(35, 59, 109, 0.0117647059);
  transition: border-color 0.2s, box-shadow 0.2s;
}
.identity-page .customer-form input::-moz-placeholder {
  color: #919bb0;
  font-size: 13px;
}
.identity-page .customer-form input::placeholder {
  color: #919bb0;
  font-size: 13px;
}
.identity-page .customer-form input:focus, .identity-page .customer-form select:focus {
  border-color: var(--brand);
  outline: 0;
  background: #fff;
  box-shadow: 0 0 0 3px rgba(55, 83, 255, 0.0705882353);
}
.identity-page .customer-form input:user-invalid {
  border-color: #c05765;
}
.identity-page .field-label-row {
  align-items: baseline;
}
.identity-page .field-label-row a {
  font-size: 12px;
}
.identity-page .identity-password {
  position: relative;
}
.identity-page .customer-form .identity-password input {
  padding-right: 49px;
}
.identity-page .identity-password-toggle {
  position: absolute;
  right: 2px;
  top: 2px;
  bottom: 2px;
  width: 44px;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 5px;
  background: transparent;
  color: #7b8aa6;
  font-size: 19px;
  cursor: pointer;
}
.identity-page .identity-password-toggle:hover {
  color: var(--brand);
  background: #edf1ff;
}
.identity-page .identity-password-toggle:focus-visible {
  outline: 2px solid var(--brand);
  outline-offset: -3px;
}
.identity-page .native-captcha, .identity-page .native-code {
  gap: 10px;
}
.identity-page .native-captcha img {
  width: 140px;
  height: 48px;
  -o-object-fit: contain;
     object-fit: contain;
  flex-shrink: 0;
  border: 1px solid #e4e9f3;
  border-radius: 6px;
  background: #fff;
}
.identity-page .identity-field-note {
  font-size: 11px;
  color: #7d8aa3;
  margin: 6px 0 0;
  line-height: 1.6;
}
.identity-page .native-code .button {
  min-width: 120px;
  min-height: 48px;
  padding: 10px 13px;
  font-size: 13px;
  background: #f1f4ff;
  color: var(--brand);
  border-color: #dce4ff;
  font-weight: 500;
  box-shadow: none;
}
.identity-page .native-code .button:hover {
  background: #e8eeff;
  transform: none;
}
.identity-page .customer-form > .button {
  font-size: 15px;
  min-height: 49px;
  border-radius: 7px;
  margin-top: 5px;
  padding-block: 11px;
}
.identity-page .identity-switch {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px;
  margin: 24px 0 0;
  font-size: 13px;
  color: #73819a;
}
.identity-page .identity-switch a {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: var(--brand);
  font-weight: 600;
}
.identity-page .identity-access-note {
  display: flex;
  gap: 10px;
  margin-top: 25px;
  padding-top: 21px;
  border-top: 1px solid #edf0f6;
  color: #74829b;
}
.identity-page .identity-access-note > i {
  font-size: 15px;
  color: #8092b6;
  padding-top: 2px;
}
.identity-page .identity-access-note p {
  font-size: 12px;
  line-height: 1.9;
  margin: 0;
}
.identity-page .identity-access-note a {
  color: var(--brand);
  margin-left: 4px;
  white-space: nowrap;
}
.identity-page .identity-form-note {
  margin: 20px 0 0;
  border-top: 1px solid #edf0f6;
  padding-top: 17px;
  font-size: 12px;
  line-height: 1.9;
  color: #74829b;
}
.identity-page .identity-footer {
  width: min(1120px, 100% - 64px);
  margin: auto auto 23px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex: 0 0 auto;
  gap: 15px;
  color: #7b88a0;
  font-size: 12px;
}
.identity-page .identity-footer > div {
  display: flex;
  gap: 23px;
}
.identity-page .identity-footer a:hover {
  color: var(--brand);
}
.identity-page .identity-recovery-mark {
  margin: 38px 0 32px;
  width: 150px;
  height: 134px;
  position: relative;
  align-self: center;
}
.identity-page .identity-recovery-mark > span {
  width: 122px;
  height: 122px;
  display: grid;
  place-items: center;
  background: rgba(255, 255, 255, 0.7215686275);
  border: 1px solid #fff;
  border-radius: 30px;
  color: var(--brand);
  font-size: 58px;
  box-shadow: 0 15px 35px rgba(55, 83, 255, 0.0549019608);
  transform: rotate(-7deg);
}
.identity-page .identity-recovery-mark > span i {
  transform: rotate(7deg);
}
.identity-page .identity-recovery-mark > i {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  background: var(--brand);
  color: #fff;
  border: 5px solid #eef4ff;
  border-radius: 18px;
  font-size: 25px;
}
.identity-page .identity-recovery-steps {
  padding: 0;
  margin: 0 0 auto;
  list-style: none;
}
.identity-page .identity-recovery-steps li {
  display: flex;
  align-items: start;
  gap: 15px;
  margin-bottom: 24px;
}
.identity-page .identity-recovery-steps li > span {
  display: grid;
  place-items: center;
  width: 29px;
  height: 29px;
  border: 1px solid #d6dff5;
  border-radius: 50%;
  font-size: 10px;
  color: #526bbb;
  background: rgba(255, 255, 255, 0.5019607843);
  flex: 0 0 auto;
}
.identity-page .identity-recovery-steps strong {
  font-size: 14px;
  font-weight: 600;
  color: #3d5278;
}
.identity-page .identity-recovery-steps p {
  font-size: 12px;
  margin: 4px 0 0;
  color: #6a7d9e;
  line-height: 1.8;
}
.identity-page .identity-settings-shell {
  display: grid;
  grid-template-columns: 238px minmax(0, 1fr);
  gap: 28px;
  width: min(1050px, 100% - 64px);
  margin: 30px auto 40px;
  align-items: start;
}
.identity-page .identity-settings-sidebar {
  padding: 23px 12px 23px 0;
}
.identity-page .identity-settings-sidebar .eyebrow {
  margin-bottom: 11px;
  font-size: 10px;
}
.identity-page .identity-settings-sidebar h2 {
  font-size: 25px;
  margin: 0 0 10px;
}
.identity-page .identity-settings-sidebar > p {
  color: #77859d;
  font-size: 13px;
  margin-bottom: 30px;
}
.identity-page .identity-settings-sidebar nav {
  display: grid;
  gap: 8px;
}
.identity-page .identity-settings-sidebar nav a {
  display: flex;
  gap: 12px;
  align-items: center;
  padding: 12px 16px;
  border-radius: 7px;
  color: #667792;
  font-size: 14px;
}
.identity-page .identity-settings-sidebar nav a i {
  font-size: 19px;
}
.identity-page .identity-settings-sidebar nav a[aria-current=page] {
  color: var(--brand);
  background: #e8eeff;
  font-weight: 600;
}
.identity-page .identity-settings-sidebar nav a:hover {
  color: var(--brand);
  background: #eef2fc;
}
.identity-page .identity-workspace-link {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 26px 16px 0;
  padding-top: 22px;
  border-top: 1px solid #dde4f1;
  color: var(--brand);
  font-size: 13px;
}
.identity-page .identity-settings-card {
  background: #fff;
  padding: 35px 40px;
  border-radius: 16px;
  border: 1px solid #e1e7f2;
  box-shadow: 0 12px 40px -25px rgba(37, 69, 123, 0.1254901961);
  min-width: 0;
}
.identity-page .identity-settings-heading {
  display: flex;
  align-items: start;
  gap: 15px;
  margin-bottom: 30px;
  padding-bottom: 25px;
  border-bottom: 1px solid #edf0f6;
}
.identity-page .identity-section-icon {
  display: grid;
  place-items: center;
  width: 43px;
  height: 43px;
  border-radius: 11px;
  background: #eff3ff;
  color: var(--brand);
  font-size: 22px;
  flex: 0 0 auto;
}
.identity-page .identity-settings-heading h1 {
  font-size: 25px;
  line-height: 1.4;
  margin: 0 0 8px;
}
.identity-page .identity-settings-heading p {
  color: #74829a;
  font-size: 13px;
  line-height: 1.8;
  margin: 0;
}
.identity-page .identity-settings-card .account-details {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  -moz-column-gap: 32px;
       column-gap: 32px;
  margin-bottom: 25px;
}
.identity-page .identity-settings-card .account-details > div {
  padding: 19px 0;
}
.identity-page .identity-settings-card .account-details > div:first-child {
  grid-column: 1/-1;
  padding-top: 0;
}
.identity-page .identity-settings-card .account-details dt {
  font-size: 12px;
}
.identity-page .identity-settings-card .account-details dd {
  font-size: 15px;
  margin-top: 9px;
  color: #344968;
}
.identity-page .identity-settings-card .access-return {
  font-size: 13px;
  margin-top: 21px;
}
.identity-page.identity-pending .credential-shell {
  width: min(570px, 100% - 40px);
  padding: 0;
  margin: 52px auto 40px;
}
.identity-page.identity-pending .credential-card {
  text-align: center;
  padding: 44px 40px;
}
.identity-page .identity-pending-icon {
  display: grid;
  place-items: center;
  width: 65px;
  height: 65px;
  border-radius: 18px;
  background: #eef2ff;
  color: var(--brand);
  font-size: 32px;
  margin: 0 auto 24px;
}
@media (max-width: 1050px) {
  .identity-page .identity-story {
    padding: 37px 30px 25px;
  }
  .identity-page .identity-panel {
    padding: 37px 32px 30px;
  }
  .identity-page .identity-story h2 {
    font-size: 30px;
  }
  .identity-page .identity-story-intro {
    font-size: 14px;
  }
  .identity-page .identity-illustration {
    margin-inline: -20px;
  }
  .identity-page .identity-capabilities {
    gap: 6px;
  }
  .identity-page .identity-capabilities > span {
    font-size: 11px;
    gap: 5px;
  }
  .identity-page .identity-settings-shell {
    grid-template-columns: 190px minmax(0, 1fr);
    gap: 22px;
  }
  .identity-page .identity-settings-card {
    padding: 30px;
  }
}
@media (max-width: 760px) {
  .identity-page .customer-header {
    padding-inline: 24px;
    height: 82px;
  }
  .identity-page .identity-shell {
    width: min(510px, 100% - 40px);
    display: block;
    margin: 10px auto 27px;
    border-radius: 16px;
  }
  .identity-page .identity-story {
    display: none;
  }
  .identity-page .identity-panel {
    padding: 35px 34px 30px;
  }
  .identity-page .identity-panel-heading h1 {
    font-size: 28px;
  }
  .identity-page .identity-footer {
    width: calc(100% - 40px);
    justify-content: center;
    flex-wrap: wrap;
    -moz-column-gap: 25px;
         column-gap: 25px;
    font-size: 11px;
    margin-bottom: 24px;
  }
  .identity-page .identity-settings-shell {
    grid-template-columns: 1fr;
    width: min(600px, 100% - 40px);
    margin: 10px auto 28px;
    gap: 19px;
  }
  .identity-page .identity-settings-sidebar {
    padding: 0;
  }
  .identity-page .identity-settings-sidebar > .eyebrow, .identity-page .identity-settings-sidebar > h2, .identity-page .identity-settings-sidebar > p, .identity-page .identity-workspace-link {
    display: none;
  }
  .identity-page .identity-settings-sidebar nav {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 4px;
  }
  .identity-page .identity-settings-sidebar nav a {
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding: 10px 4px;
    font-size: 12px;
  }
  .identity-page .identity-settings-sidebar nav a i {
    font-size: 20px;
  }
  .identity-page .identity-settings-card {
    padding: 28px;
  }
}
@media (max-width: 420px) {
  .identity-page .customer-header {
    height: 76px;
    padding-inline: 20px;
  }
  .identity-page .customer-header .brand {
    font-size: 22px;
  }
  .identity-page .customer-back {
    font-size: 12px;
  }
  .identity-page .identity-shell {
    width: calc(100% - 28px);
    margin-top: 8px;
  }
  .identity-page .identity-panel {
    padding: 28px 23px 25px;
  }
  .identity-page .identity-panel-heading {
    margin-bottom: 24px;
  }
  .identity-page .identity-panel-heading h1 {
    font-size: 26px;
  }
  .identity-page .identity-panel-heading p {
    font-size: 13px;
  }
  .identity-page .customer-form input:not([type=checkbox]), .identity-page .customer-form select {
    font-size: 16px;
    padding-inline: 12px;
  }
  .identity-page .customer-form label {
    font-size: 13px;
  }
  .identity-page .native-captcha img {
    width: 118px;
  }
  .identity-page .native-code .button {
    min-width: 111px;
    font-size: 12px;
    padding-inline: 9px;
  }
  .identity-page .identity-switch {
    font-size: 13px;
  }
  .identity-page .identity-access-note {
    margin-top: 21px;
    padding-top: 17px;
  }
  .identity-page .identity-settings-shell {
    width: calc(100% - 28px);
  }
  .identity-page .identity-settings-card {
    padding: 25px 22px;
  }
  .identity-page .identity-settings-heading {
    gap: 12px;
    margin-bottom: 23px;
    padding-bottom: 21px;
  }
  .identity-page .identity-settings-heading h1 {
    font-size: 22px;
  }
  .identity-page .identity-settings-card .account-details {
    grid-template-columns: 1fr;
  }
  .identity-page.identity-pending .credential-card {
    padding: 32px 24px;
  }
}
@media (min-width: 1024px) {
  .identity-page .customer-header {
    height: clamp(58px, 8vh, 80px);
  }
  .identity-page .identity-shell {
    margin-block: 6px 12px;
    flex-shrink: 0;
  }
  .identity-page .identity-story {
    padding: clamp(22px, 3vh, 34px) 38px 21px;
  }
  .identity-page .identity-story h2 {
    font-size: clamp(28px, 3.8vh, 34px);
    margin: 19px 0 11px;
    line-height: 1.4;
  }
  .identity-page .identity-story-intro {
    font-size: 14px;
    line-height: 1.8;
  }
  .identity-page .identity-illustration img {
    height: clamp(155px, 27vh, 245px);
  }
  .identity-page .identity-illustration figcaption {
    margin-bottom: 14px;
  }
  .identity-page .identity-capabilities {
    padding-top: 14px;
  }
  .identity-page .identity-story-foot {
    margin-top: 18px;
  }
  .identity-page .identity-panel {
    padding: clamp(20px, 2.5vh, 32px) 40px;
  }
  .identity-page .identity-panel-heading {
    margin-bottom: 16px;
  }
  .identity-page .identity-panel-heading .eyebrow {
    margin-bottom: 8px;
  }
  .identity-page .identity-panel-heading h1 {
    font-size: 27px;
    line-height: 1.3;
  }
  .identity-page .identity-panel-heading p {
    margin-top: 6px;
    line-height: 1.6;
  }
  .identity-page .customer-form .form-field {
    margin-bottom: 10px;
  }
  .identity-page .customer-form label {
    margin-bottom: 5px;
    line-height: 1.3;
  }
  .identity-page .customer-form input:not([type=checkbox]), .identity-page .customer-form select {
    min-height: 44px;
    padding-block: 9px;
  }
  .identity-page .native-captcha img {
    height: 44px;
  }
  .identity-page .native-code .button {
    min-height: 44px;
    padding-block: 9px;
  }
  .identity-page .identity-field-note {
    margin-top: 4px;
    line-height: 1.4;
  }
  .identity-page .customer-form > .button {
    min-height: 44px;
    padding-block: 9px;
    margin-top: 3px;
  }
  .identity-page .identity-password-pair {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
  }
  .identity-page .identity-switch {
    margin-top: 14px;
  }
  .identity-page .identity-access-note {
    margin-top: 15px;
    padding-top: 13px;
  }
  .identity-page .identity-form-note {
    margin-top: 12px;
    padding-top: 12px;
    line-height: 1.65;
  }
  .identity-page .identity-footer {
    margin-bottom: 12px;
  }
  .identity-page .identity-recovery-mark {
    width: 120px;
    height: 102px;
    margin: 22px 0;
  }
  .identity-page .identity-recovery-mark > span {
    width: 94px;
    height: 94px;
    border-radius: 24px;
    font-size: 45px;
  }
  .identity-page .identity-recovery-mark > i {
    width: 47px;
    height: 47px;
    border-width: 4px;
    border-radius: 14px;
    font-size: 21px;
  }
  .identity-page .identity-recovery-steps li {
    margin-bottom: 16px;
  }
  .identity-page .identity-recovery-steps p {
    margin-top: 2px;
  }
  .identity-page .identity-settings-shell {
    margin-block: 14px 24px;
  }
  .identity-page .identity-settings-card {
    padding: 26px 34px;
  }
  .identity-page .identity-settings-heading {
    margin-bottom: 22px;
    padding-bottom: 20px;
  }
  .identity-page .identity-settings-card .customer-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    -moz-column-gap: 18px;
         column-gap: 18px;
  }
  .identity-page .identity-settings-card .customer-form > .form-field, .identity-page .identity-settings-card .customer-form > .button {
    grid-column: 1/-1;
  }
  .identity-page .identity-settings-card .customer-form > .identity-field-half {
    grid-column: auto;
  }
  .identity-page .identity-settings-card .access-return {
    margin-top: 15px;
  }
}
@media (min-width: 1024px) and (max-height: 700px) {
  .identity-page .customer-header {
    height: 52px;
  }
  .identity-page .customer-header .brand {
    font-size: 23px;
  }
  .identity-page .customer-header .brand-symbol {
    width: 42px;
    height: 42px;
  }
  .identity-page .identity-shell {
    margin-block: 4px 10px;
  }
  .identity-page .identity-story {
    padding-block: 18px;
  }
  .identity-page .identity-story h2 {
    font-size: 28px;
    margin-top: 14px;
  }
  .identity-page .identity-panel {
    padding-block: 16px;
  }
  .identity-page .identity-panel-heading {
    margin-bottom: 12px;
  }
  .identity-page .identity-panel-heading .eyebrow {
    display: none;
  }
  .identity-page .identity-panel-heading h1 {
    font-size: 26px;
  }
  .identity-page .customer-form .form-field {
    margin-bottom: 8px;
  }
  .identity-page .identity-switch {
    margin-top: 10px;
  }
  .identity-page .identity-form-note {
    margin-top: 8px;
    padding-top: 8px;
  }
  .identity-page .identity-access-note {
    margin-top: 10px;
    padding-top: 10px;
  }
  .identity-page .identity-footer {
    margin-bottom: 8px;
  }
  .identity-page .identity-recovery-mark {
    display: none;
  }
  .identity-page .identity-recovery-steps {
    margin-top: 25px;
  }
  .identity-page .identity-settings-shell {
    margin-block: 8px 14px;
  }
  .identity-page .identity-settings-card {
    padding-block: 20px;
  }
  .identity-page .identity-settings-heading {
    margin-bottom: 18px;
    padding-bottom: 15px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .identity-page .customer-form input, .identity-page .customer-form select {
    transition: none;
  }
}

.identity-page.identity-auth {
  padding-block: 24px 16px;
}
.identity-page.identity-auth .identity-shell {
  margin: auto;
  flex-shrink: 0;
}
.identity-page.identity-auth .identity-story {
  padding: 34px 40px 28px;
}
.identity-page.identity-auth .identity-story-header {
  display: flex;
  align-items: center;
}
.identity-page.identity-auth .identity-story-header .brand {
  font-size: 26px;
}
.identity-page.identity-auth .identity-story-header .brand-symbol {
  width: 48px;
  height: 48px;
}
.identity-page.identity-auth .identity-story h2 {
  font-size: 34px;
  line-height: 1.45;
  margin: 34px 0 0;
}
.identity-page.identity-auth .identity-illustration {
  margin: auto -24px 0;
}
.identity-page.identity-auth .identity-illustration img {
  height: clamp(280px, 32vh, 300px);
}
.identity-page.identity-auth .identity-illustration figcaption {
  margin: 4px 0 0;
  font-size: 12px;
}
.identity-page.identity-auth .identity-panel {
  padding: 32px 44px;
}
.identity-page.identity-auth .identity-panel-heading {
  margin-bottom: 28px;
}
.identity-page.identity-auth .identity-panel-heading h1 {
  font-size: 29px;
  line-height: 1.4;
}
.identity-page.identity-auth .identity-panel-heading p {
  margin-top: 9px;
  font-size: 14px;
  line-height: 1.7;
}
.identity-page.identity-auth .customer-form .form-field {
  margin-bottom: 16px;
}
.identity-page.identity-auth .customer-form label {
  margin-bottom: 7px;
  line-height: 1.45;
}
.identity-page.identity-auth .customer-form input:not([type=checkbox]), .identity-page.identity-auth .customer-form select {
  min-height: 48px;
  padding-block: 11px;
}
.identity-page.identity-auth .native-captcha img {
  height: 48px;
}
.identity-page.identity-auth .native-code .button {
  min-height: 48px;
  padding-block: 11px;
}
.identity-page.identity-auth .customer-form > .button {
  min-height: 48px;
  padding-block: 11px;
  margin-top: 4px;
}
.identity-page.identity-auth .identity-field-hint {
  color: #7b88a0;
  font-size: 11px;
  line-height: 1.45;
}
.identity-page.identity-auth .identity-switch {
  margin-top: 20px;
}
.identity-page.identity-auth .identity-form-note {
  margin-top: 16px;
  padding: 0;
  border: 0;
  text-align: center;
  line-height: 1.7;
}
.identity-page.identity-auth .identity-form-note a {
  color: var(--brand);
  margin-left: 8px;
}
.identity-page.identity-auth .identity-footer {
  margin: 18px auto 0;
}
.identity-page.identity-auth .identity-recovery-mark {
  display: block;
  width: 150px;
  height: 134px;
  margin: auto auto 20px;
}
.identity-page.identity-auth .identity-recovery-mark > span {
  width: 122px;
  height: 122px;
  border-radius: 30px;
  font-size: 58px;
}
.identity-page.identity-auth .identity-recovery-mark > i {
  width: 58px;
  height: 58px;
  border-radius: 18px;
  font-size: 25px;
}
.identity-page.identity-auth .identity-recovery-caption {
  font-size: 12px;
  color: #667ea3;
  text-align: center;
  margin: 0;
}
@media (min-width: 1024px) and (max-height: 700px) {
  .identity-page.identity-auth {
    padding-block: 12px 10px;
  }
  .identity-page.identity-auth .identity-story {
    padding-block: 25px;
  }
  .identity-page.identity-auth .identity-story h2 {
    font-size: 31px;
    margin-top: 27px;
  }
  .identity-page.identity-auth .identity-panel {
    padding-block: 24px;
  }
  .identity-page.identity-auth .identity-panel-heading {
    margin-bottom: 22px;
  }
  .identity-page.identity-auth .customer-form .form-field {
    margin-bottom: 14px;
  }
  .identity-page.identity-auth .customer-form input:not([type=checkbox]), .identity-page.identity-auth .customer-form select, .identity-page.identity-auth .native-code .button {
    min-height: 46px;
    padding-block: 10px;
  }
  .identity-page.identity-auth .native-captcha img {
    height: 46px;
  }
  .identity-page.identity-auth .customer-form > .button {
    min-height: 46px;
    padding-block: 10px;
  }
  .identity-page.identity-auth .identity-switch {
    margin-top: 16px;
  }
  .identity-page.identity-auth .identity-form-note {
    margin-top: 12px;
  }
  .identity-page.identity-auth .identity-footer {
    margin-top: 12px;
  }
}
@media (min-width: 761px) and (max-width: 1050px) {
  .identity-page.identity-auth .identity-story {
    padding-inline: 28px;
  }
  .identity-page.identity-auth .identity-panel {
    padding-inline: 28px;
  }
  .identity-page.identity-auth .identity-story h2 {
    font-size: 30px;
  }
}
@media (max-width: 760px) {
  .identity-page.identity-auth {
    padding-block: 16px;
  }
  .identity-page.identity-auth .identity-shell {
    margin: 0 auto 20px;
  }
  .identity-page.identity-auth .identity-story {
    display: block;
    padding: 25px 28px 0;
    background: #fff;
  }
  .identity-page.identity-auth .identity-story > :not(.identity-story-header) {
    display: none;
  }
  .identity-page.identity-auth .identity-story-header .brand {
    font-size: 24px;
  }
  .identity-page.identity-auth .identity-story-header .brand-symbol {
    width: 42px;
    height: 42px;
  }
  .identity-page.identity-auth .identity-panel {
    padding: 29px 28px 27px;
  }
  .identity-page.identity-auth .identity-panel-heading {
    margin-bottom: 25px;
  }
  .identity-page.identity-auth .identity-panel-heading h1 {
    font-size: 26px;
  }
  .identity-page.identity-auth .identity-footer {
    margin-top: auto;
  }
  .identity-page.identity-auth .identity-footer > div {
    gap: 17px;
  }
}
@media (max-width: 420px) {
  .identity-page.identity-auth .identity-story {
    padding-inline: 23px;
  }
  .identity-page.identity-auth .identity-panel {
    padding-inline: 23px;
  }
}

.identity-login [data-login-panel][hidden] {
  display: none;
}
.identity-login .identity-login-tabs {
  display: flex;
  gap: 26px;
  border-bottom: 1px solid #e7ebf4;
  margin: -9px 0 23px;
}
.identity-login .identity-login-tabs button {
  border: 0;
  background: transparent;
  padding: 0 0 12px;
  color: #73819a;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  position: relative;
  white-space: nowrap;
}
.identity-login .identity-login-tabs button[aria-selected=true] {
  color: var(--brand);
  font-weight: 600;
}
.identity-login .identity-login-tabs button[aria-selected=true]::after {
  content: "";
  position: absolute;
  inset: auto 0 -1px;
  height: 3px;
  background: var(--brand);
  border-radius: 3px 3px 0 0;
}
.identity-login .identity-login-tabs button:focus-visible {
  outline: 2px solid var(--brand);
  outline-offset: 5px;
  border-radius: 2px;
}
.identity-login .identity-login-status {
  font-size: 12px;
  line-height: 1.7;
  color: #52658a;
  margin: 0 0 12px;
}
.identity-login .identity-login-status.is-error {
  color: #b53c4f;
}
.identity-login .identity-login-status[hidden] {
  display: none;
}
.identity-login .native-code .button:disabled {
  opacity: 0.65;
  cursor: default;
}

.service-catalog-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}

.service-catalog-grid .service-card {
  min-width: 0;
}

.api-feature-section {
  background: radial-gradient(ellipse at 85% 40%, #e7edff 0, transparent 53%), linear-gradient(125deg, #f6f8ff, #fcfdff);
  border-block: 1px solid #e8edf9;
}
.api-feature-section .api-feature-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 72px;
  align-items: center;
}
.api-feature-section .api-feature-copy {
  min-width: 0;
}
.api-feature-section .api-feature-kicker {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 17px;
  margin-bottom: 24px;
}
.api-feature-section .api-feature-kicker .eyebrow {
  margin: 0;
}
.api-feature-section .api-feature-status {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  border: 1px solid #d4ddff;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.6);
  padding: 4px 10px;
  color: #4e65b9;
  font-size: 11px;
}
.api-feature-section .api-feature-status::before {
  content: "";
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--brand);
}
.api-feature-section h2 {
  font-size: clamp(30px, 3vw, 42px);
  font-weight: 650;
  line-height: 1.35;
}
.api-feature-section .api-feature-tagline {
  color: #3549b6;
  font-size: clamp(19px, 1.8vw, 25px);
  font-weight: 550;
  line-height: 1.65;
  margin-top: 16px;
}
.api-feature-section .api-feature-description {
  color: var(--muted);
  max-width: 510px;
  font-size: 16px;
  line-height: 1.9;
  margin-top: 18px;
}
.api-feature-section .api-feature-benefits {
  display: flex;
  flex-wrap: wrap;
  gap: 15px 26px;
  padding: 0;
  margin: 26px 0 0;
  list-style: none;
}
.api-feature-section .api-feature-benefits li {
  display: flex;
  align-items: center;
  gap: 9px;
  color: #415474;
  font-size: 14px;
}
.api-feature-section .api-feature-benefits i {
  color: var(--brand);
  font-size: 18px;
}
.api-feature-section .api-feature-audience {
  color: #697b9c;
  font-size: 13px;
  margin-top: 24px;
  padding-left: 13px;
  border-left: 2px solid #b6c5ff;
}
.api-feature-section .api-feature-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 31px;
}
.api-feature-section .api-feature-note {
  color: #75839e;
  font-size: 12px;
  line-height: 1.8;
  margin-top: 18px;
}
.api-feature-section .api-feature-visual {
  min-width: 0;
  margin: 0;
}
.api-feature-section .api-feature-visual img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 3/2;
  border-radius: 18px;
}
.api-feature-section .api-feature-visual figcaption {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 20px;
  color: #687e9e;
  font-size: 13px;
  margin-top: 22px;
}
.api-feature-section .api-feature-visual figcaption strong {
  color: var(--brand);
  font-weight: 600;
}
.api-feature-section .api-feature-visual figcaption i {
  color: #9fafd8;
}
.api-feature-section .api-feature-flow {
  min-width: 0;
  margin: 0;
  padding: 31px;
  border: 1px solid #d9e2f5;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.7215686275);
  box-shadow: 0 22px 60px -42px rgba(55, 83, 255, 0.4);
}
.api-feature-section .api-feature-sources {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 13px;
}
.api-feature-section .api-feature-sources span {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  background: #f6f8ff;
  border: 1px solid #e1e7f5;
  border-radius: 8px;
  padding: 16px 10px;
  color: #4b6085;
  font-size: 14px;
}
.api-feature-section .api-feature-sources i {
  font-size: 21px;
  color: #5976d8;
}
.api-feature-section .api-feature-connector {
  display: grid;
  place-items: center;
  height: 42px;
  color: #9bafe9;
  font-size: 24px;
}
.api-feature-section .api-feature-gateway {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 17px;
  border: 1px solid #c3d1ff;
  border-radius: 11px;
  padding: 24px 18px;
  background: linear-gradient(120deg, #eaf0ff, #f6f9ff);
}
.api-feature-section .api-feature-gateway img {
  flex-shrink: 0;
}
.api-feature-section .api-feature-gateway strong {
  display: block;
  color: #23366c;
  font-size: 25px;
  font-weight: 600;
  letter-spacing: -0.03em;
}
.api-feature-section .api-feature-gateway span {
  display: block;
  color: #627bac;
  font-size: 12px;
  margin-top: 5px;
}
.api-feature-section .api-feature-apps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 11px;
}
.api-feature-section .api-feature-apps span {
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: center;
  padding: 13px 7px;
  background: #fff;
  border: 1px solid #e3e9f4;
  border-radius: 8px;
  font-size: 12px;
  color: #5c7091;
  text-align: center;
}
.api-feature-section .api-feature-apps i {
  font-size: 20px;
  color: #718ad3;
}
.api-feature-section .api-feature-flow figcaption {
  margin-top: 22px;
  color: #8190aa;
  text-align: center;
  font-size: 11px;
  line-height: 1.8;
}
.api-feature-section .api-feature-capabilities {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 36px;
  border-top: 1px solid #dce4f6;
  padding-top: 34px;
  margin-top: 48px;
}
.api-feature-section .api-feature-capabilities article {
  display: flex;
  gap: 15px;
  align-items: start;
}
.api-feature-section .api-feature-capability-icon {
  display: grid;
  place-items: center;
  width: 39px;
  height: 39px;
  border-radius: 10px;
  background: #fff;
  border: 1px solid #e1e7f7;
  color: var(--brand);
  font-size: 20px;
  flex-shrink: 0;
}
.api-feature-section .api-feature-capabilities h3 {
  font-size: 18px;
  font-weight: 600;
  margin: 2px 0 9px;
}
.api-feature-section .api-feature-capabilities p {
  color: #677b98;
  font-size: 14px;
  line-height: 1.8;
}

@media (max-width: 1050px) {
  .api-feature-section .api-feature-layout {
    gap: 36px;
  }
  .api-feature-section .api-feature-description {
    font-size: 15px;
  }
  .api-feature-section .api-feature-actions .button {
    padding-inline: 18px;
    gap: 15px;
  }
  .api-feature-section .api-feature-flow {
    padding: 22px;
  }
  .api-feature-section .api-feature-sources span {
    font-size: 12px;
    gap: 7px;
  }
  .api-feature-section .api-feature-gateway {
    gap: 12px;
    padding-inline: 12px;
  }
  .api-feature-section .api-feature-gateway strong {
    font-size: 22px;
  }
  .api-feature-section .api-feature-gateway span {
    font-size: 11px;
  }
  .api-feature-section .api-feature-apps {
    gap: 7px;
  }
  .api-feature-section .api-feature-apps span {
    font-size: 11px;
  }
  .api-feature-section .api-feature-capabilities {
    gap: 24px;
  }
  .service-catalog-grid {
    gap: 18px;
  }
  .service-catalog-grid .service-card {
    padding: 23px;
  }
  .service-catalog-grid .service-card h3 {
    font-size: 20px;
  }
}
@media (max-width: 850px) {
  .api-feature-section .api-feature-layout {
    grid-template-columns: 1fr;
    gap: 37px;
  }
  .api-feature-section .api-feature-description {
    max-width: 600px;
  }
  .api-feature-section .api-feature-visual, .api-feature-section .api-feature-flow {
    width: min(100%, 540px);
    justify-self: center;
  }
  .api-feature-section .api-feature-capabilities {
    gap: 22px;
  }
  .api-feature-section .api-feature-capabilities article {
    display: block;
  }
  .api-feature-section .api-feature-capabilities h3 {
    margin-top: 15px;
  }
}
@media (max-width: 767px) {
  .service-catalog-grid {
    grid-template-columns: 1fr;
  }
  .service-catalog-grid .service-card {
    padding: 27px;
  }
  .service-catalog-grid .service-card h3 {
    font-size: 23px;
  }
}
@media (max-width: 639px) {
  .api-feature-section .api-feature-kicker {
    gap: 13px;
    margin-bottom: 21px;
  }
  .api-feature-section h2 {
    font-size: 30px;
  }
  .api-feature-section .api-feature-tagline {
    font-size: 19px;
  }
  .api-feature-section .api-feature-benefits {
    gap: 12px 18px;
  }
  .api-feature-section .api-feature-benefits li {
    font-size: 13px;
    gap: 7px;
  }
  .api-feature-section .api-feature-actions .button {
    padding: 12px 17px;
    font-size: 13px;
    gap: 13px;
  }
  .api-feature-section .api-feature-note {
    font-size: 11px;
  }
  .api-feature-section .api-feature-visual figcaption {
    gap: 16px;
    font-size: 12px;
    margin-top: 17px;
  }
  .api-feature-section .api-feature-flow {
    padding: 20px 16px;
  }
  .api-feature-section .api-feature-sources {
    gap: 9px;
  }
  .api-feature-section .api-feature-sources span {
    gap: 6px;
    font-size: 12px;
    padding: 13px 5px;
  }
  .api-feature-section .api-feature-sources i {
    font-size: 18px;
  }
  .api-feature-section .api-feature-gateway {
    padding: 20px 12px;
  }
  .api-feature-section .api-feature-gateway img {
    width: 32px;
    height: 32px;
  }
  .api-feature-section .api-feature-flow figcaption {
    font-size: 10px;
  }
  .api-feature-section .api-feature-capabilities {
    grid-template-columns: 1fr;
    margin-top: 32px;
    padding-top: 29px;
    gap: 24px;
  }
  .api-feature-section .api-feature-capabilities article {
    display: flex;
  }
  .api-feature-section .api-feature-capabilities h3 {
    margin-top: 2px;
  }
}
.aggregated-api-page [hidden] {
  display: none !important;
}
.aggregated-api-page section[id] {
  scroll-margin-top: 112px;
}
.aggregated-api-page .api-product-hero {
  padding-bottom: 48px;
  background: radial-gradient(ellipse at 80% 50%, #edf2ff 0, transparent 57%), linear-gradient(125deg, #f7f9ff, #fff);
}
.aggregated-api-page .api-hero-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 56px;
  align-items: center;
  padding-top: 18px;
}
.aggregated-api-page .api-hero-copy {
  padding-block: 12px;
}
.aggregated-api-page .api-hero-copy h1 {
  font-size: clamp(38px, 3.8vw, 54px);
  line-height: 1.3;
}
.aggregated-api-page .api-hero-copy .api-tagline {
  color: #3549b6;
  font-size: clamp(19px, 1.7vw, 24px);
  line-height: 1.65;
  font-weight: 550;
  margin-top: 20px;
}
.aggregated-api-page .api-hero-copy .api-hero-description {
  max-width: 510px;
  font-size: 16px;
  line-height: 1.9;
  margin-top: 16px;
}
.aggregated-api-page .api-hero-copy .hero-actions {
  margin-top: 27px;
}
.aggregated-api-page .api-hero-links {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  margin-top: 22px;
  color: var(--brand);
  font-size: 14px;
}
.aggregated-api-page .api-hero-links a {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding-block: 3px;
}
.aggregated-api-page .api-hero-copy .api-release-note {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  color: #75819a;
  margin-top: 18px;
}
.aggregated-api-page .api-hero-visual {
  margin: 0;
  min-width: 0;
}
.aggregated-api-page .api-hero-visual img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 3/2;
  border-radius: 22px;
}
.aggregated-api-page .api-hero-visual figcaption {
  display: flex;
  gap: 22px;
  align-items: center;
  justify-content: center;
  margin-top: 21px;
  font-size: 13px;
  color: #6a7b9c;
}
.aggregated-api-page .api-hero-visual figcaption strong {
  color: var(--brand);
  font-weight: 600;
}
.aggregated-api-page .api-hero-visual figcaption i {
  color: #acb9e4;
}
.aggregated-api-page .api-section-nav {
  border-bottom: 1px solid var(--line);
  background: #fff;
}
.aggregated-api-page .api-section-nav > div {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 38px;
  padding-block: 18px;
}
.aggregated-api-page .api-section-nav a {
  font-size: 14px;
  color: #61708a;
  padding-block: 5px;
}
.aggregated-api-page .api-section-nav a:hover {
  color: var(--brand);
}
.aggregated-api-page .section-heading {
  align-items: center;
  gap: 22px;
}
.aggregated-api-page .section-heading p {
  max-width: 650px;
}
.aggregated-api-page .api-demo-note {
  border-left: 3px solid #c9d3ff;
  padding-left: 14px;
  font-size: 13px;
  line-height: 1.85;
  color: #6a7891;
  margin: -8px 0 28px;
}
.aggregated-api-page .api-catalog-controls {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 230px;
  gap: 22px;
}
.aggregated-api-page .api-catalog-controls label {
  display: block;
  font-size: 13px;
  color: #5d6c87;
  margin-bottom: 8px;
}
.aggregated-api-page .api-search > div {
  position: relative;
}
.aggregated-api-page .api-search i {
  position: absolute;
  top: 13px;
  left: 16px;
  color: #8996ae;
}
.aggregated-api-page .api-catalog-controls input, .aggregated-api-page .api-catalog-controls select {
  display: block;
  width: 100%;
  height: 49px;
  border: 1px solid #dfe5ef;
  border-radius: 7px;
  background: #fff;
  font: inherit;
  font-size: 14px;
  color: var(--ink);
}
.aggregated-api-page .api-catalog-controls input {
  padding: 12px 16px 12px 44px;
}
.aggregated-api-page .api-catalog-controls select {
  padding: 10px 14px;
}
.aggregated-api-page .api-catalog-controls input:focus, .aggregated-api-page .api-catalog-controls select:focus {
  outline: 3px solid rgba(55, 83, 255, 0.1254901961);
  outline-offset: 1px;
  border-color: #8195ff;
}
.aggregated-api-page .api-capability-filters {
  display: flex;
  gap: 9px;
  flex-wrap: wrap;
  margin-top: 22px;
}
.aggregated-api-page .api-capability-filters button {
  background: #f6f8fc;
  border: 1px solid transparent;
  border-radius: 6px;
  min-height: 42px;
  padding: 8px 18px;
  font-size: 13px;
  color: #64718b;
}
.aggregated-api-page .api-capability-filters button[aria-pressed=true] {
  color: var(--brand);
  background: #edf1ff;
  border-color: #ccd6ff;
  font-weight: 600;
}
.aggregated-api-page .api-capability-filters button:hover {
  color: var(--brand);
}
.aggregated-api-page .api-result-count {
  color: #7c89a0;
  font-size: 12px;
  margin: 20px 0 14px;
}
.aggregated-api-page .api-model-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}
.aggregated-api-page .api-model-card {
  border: 1px solid #e1e7f1;
  border-radius: 12px;
  padding: 25px;
  min-width: 0;
  background: #fff;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.aggregated-api-page .api-model-card:hover {
  border-color: #b8c6ff;
  box-shadow: 0 12px 32px -24px rgba(55, 83, 255, 0.4392156863);
}
.aggregated-api-page .api-model-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 19px;
}
.aggregated-api-page .api-model-icon {
  width: 39px;
  height: 39px;
  border-radius: 10px;
  display: grid;
  place-items: center;
  background: #edf2ff;
  color: var(--brand);
  font-size: 20px;
  flex-shrink: 0;
}
.aggregated-api-page .api-source-label {
  font-size: 11px;
  color: #647590;
  background: #f5f7fb;
  border-radius: 4px;
  padding: 4px 8px;
}
.aggregated-api-page [data-api-origin=self-hosted] .api-source-label {
  color: #327866;
  background: #eef8f2;
}
.aggregated-api-page .api-model-card h3 {
  font-size: 21px;
  line-height: 1.4;
  margin: 0 0 7px;
}
.aggregated-api-page .api-model-card > code {
  display: block;
  color: #72809a;
  font-size: 12px;
  overflow-wrap: anywhere;
}
.aggregated-api-page .api-model-card > p {
  font-size: 14px;
  color: var(--muted);
  line-height: 1.8;
  margin: 17px 0 22px;
  min-height: 50px;
}
.aggregated-api-page .api-model-card dl {
  font-size: 12px;
  display: grid;
  gap: 10px;
  margin: 0;
}
.aggregated-api-page .api-model-card dl > div {
  display: flex;
  justify-content: space-between;
  gap: 12px;
}
.aggregated-api-page .api-model-card dt {
  color: #8993a6;
  font-weight: 400;
}
.aggregated-api-page .api-model-card dd {
  margin: 0;
  color: #4b5a78;
}
.aggregated-api-page .api-model-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  border-top: 1px solid #edf0f6;
  margin-top: 21px;
  padding-top: 18px;
  font-size: 12px;
}
.aggregated-api-page .api-model-bottom > span {
  color: #74829c;
}
.aggregated-api-page .api-model-bottom a {
  color: var(--brand);
  display: flex;
  gap: 8px;
  align-items: center;
}
.aggregated-api-page .api-catalog-empty {
  padding: 55px 20px;
  text-align: center;
  border: 1px dashed #d4deef;
  border-radius: 12px;
}
.aggregated-api-page .api-catalog-empty > i {
  font-size: 29px;
  color: #a0b0d8;
}
.aggregated-api-page .api-catalog-empty h3 {
  font-size: 20px;
  margin: 14px 0 9px;
}
.aggregated-api-page .api-catalog-empty p {
  color: var(--muted);
  font-size: 14px;
  margin-bottom: 22px;
}
.aggregated-api-page .api-outline-label {
  font-size: 12px;
  padding: 6px 11px;
  border: 1px solid #d8e0f0;
  color: #63738f;
  border-radius: 5px;
  white-space: nowrap;
}
.aggregated-api-page .api-architecture {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 36px minmax(0, 1.2fr) 36px minmax(0, 0.9fr);
  gap: 19px;
  align-items: center;
  background: #fff;
  border: 1px solid #e1e7f1;
  border-radius: 16px;
  padding: 36px;
}
.aggregated-api-page .api-sources {
  display: grid;
  gap: 15px;
}
.aggregated-api-page .api-sources article {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 18px 14px;
  border: 1px solid #e6eaf5;
  border-radius: 9px;
  background: #fafbff;
}
.aggregated-api-page .api-sources article > i {
  font-size: 24px;
  color: #637dcc;
}
.aggregated-api-page .api-sources h3 {
  font-size: 15px;
  margin: 0 0 5px;
}
.aggregated-api-page .api-sources p {
  font-size: 11px;
  color: #7b88a0;
  line-height: 1.7;
}
.aggregated-api-page .api-flow-arrow {
  color: #9caeef;
  text-align: center;
  font-size: 24px;
}
.aggregated-api-page .api-gateway {
  text-align: center;
  background: linear-gradient(150deg, #edf2ff, #f8faff);
  border: 1px solid #ccdaff;
  padding: 29px 15px;
  border-radius: 12px;
}
.aggregated-api-page .api-gateway img {
  margin: 0 auto 15px;
}
.aggregated-api-page .api-gateway h3 {
  font-size: 23px;
  margin-bottom: 9px;
}
.aggregated-api-page .api-gateway p {
  font-size: 12px;
  color: #687dac;
}
.aggregated-api-page .api-gateway > div {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: center;
  margin-top: 20px;
}
.aggregated-api-page .api-gateway > div span {
  background: #fff;
  color: #6079b7;
  font-size: 11px;
  padding: 4px 8px;
  border-radius: 4px;
}
.aggregated-api-page .api-applications {
  display: grid;
  gap: 13px;
}
.aggregated-api-page .api-applications span {
  display: flex;
  gap: 11px;
  align-items: center;
  padding: 14px;
  border: 1px solid #e7ebf3;
  border-radius: 7px;
  font-size: 14px;
  color: #536481;
}
.aggregated-api-page .api-applications i {
  color: #728dd7;
  font-size: 20px;
}
.aggregated-api-page .api-architecture-note {
  display: flex;
  justify-content: space-between;
  gap: 28px;
  align-items: start;
  margin: 19px 0 41px;
}
.aggregated-api-page .api-architecture-note p {
  font-size: 12px;
  line-height: 1.85;
  max-width: 720px;
  color: #78859d;
}
.aggregated-api-page .api-architecture-note a {
  font-size: 12px;
  margin-top: 2px;
}
.aggregated-api-page .api-capability-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 30px 42px;
}
.aggregated-api-page .api-capability-grid article {
  border-top: 1px solid #dce3f1;
  padding-top: 25px;
}
.aggregated-api-page .api-capability-grid i {
  font-size: 24px;
  color: var(--brand);
}
.aggregated-api-page .api-capability-grid h3 {
  font-size: 18px;
  margin: 14px 0 10px;
}
.aggregated-api-page .api-capability-grid p {
  font-size: 14px;
  color: var(--muted);
  line-height: 1.85;
}
.aggregated-api-page .api-capability-grid + .section-fineprint {
  margin-top: 33px;
}
.aggregated-api-page .api-quickstart-layout {
  display: grid;
  grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
  gap: 70px;
  align-items: start;
}
.aggregated-api-page .api-quickstart-layout h2, .aggregated-api-page .api-faq-layout h2 {
  font-size: clamp(28px, 2.6vw, 38px);
  line-height: 1.45;
}
.aggregated-api-page .api-section-lead {
  color: var(--muted);
  font-size: 15px;
  line-height: 1.9;
  margin-top: 19px;
  max-width: 380px;
}
.aggregated-api-page .api-quickstart-layout .numbered-list {
  margin-block: 31px 26px;
}
.aggregated-api-page .api-code-box {
  background: #111c38;
  color: #c8d5ef;
  border: 1px solid #203354;
  border-radius: 13px;
  overflow: hidden;
  min-width: 0;
  box-shadow: 0 20px 60px -35px rgba(16, 40, 88, 0.3764705882);
}
.aggregated-api-page .api-code-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 13px 18px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.0705882353);
}
.aggregated-api-page .api-code-toolbar [role=tablist] {
  display: flex;
  gap: 5px;
}
.aggregated-api-page .api-code-toolbar button {
  background: transparent;
  color: #8295b8;
  font-size: 12px;
  border: 0;
  border-radius: 5px;
  padding: 9px 11px;
  min-height: 38px;
}
.aggregated-api-page .api-code-toolbar button[aria-selected=true] {
  background: #2a3d65;
  color: #fff;
}
.aggregated-api-page .api-code-toolbar > span {
  color: #7e92b7;
  font-size: 11px;
}
.aggregated-api-page .api-code-filename {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  padding: 19px 24px 0;
  font-size: 11px;
  color: #8ca0c9;
}
.aggregated-api-page .api-code-filename button {
  border: 1px solid rgba(255, 255, 255, 0.1450980392);
  background: rgba(255, 255, 255, 0.031372549);
  color: #b4c6ec;
  border-radius: 4px;
  padding: 6px 9px;
  font-size: 11px;
}
.aggregated-api-page .api-code-box pre {
  padding: 23px 24px;
  margin: 0;
  min-height: 353px;
  overflow-x: auto;
  font-size: 12px;
  line-height: 1.9;
  -moz-tab-size: 2;
    -o-tab-size: 2;
       tab-size: 2;
}
.aggregated-api-page .api-code-box code {
  font: inherit;
  color: #c3d9ff;
  white-space: pre;
}
.aggregated-api-page .api-code-note {
  margin: 0;
  padding: 18px 24px;
  border-top: 1px solid rgba(255, 255, 255, 0.0705882353);
  color: #9aaccd;
  font-size: 11px;
  line-height: 1.85;
}
.aggregated-api-page .api-workspace-preview {
  display: grid;
  grid-template-columns: 215px minmax(0, 1fr);
  border: 1px solid #dfe6f3;
  border-radius: 15px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 25px 60px -38px rgba(34, 72, 125, 0.2509803922);
}
.aggregated-api-page .api-preview-sidebar {
  padding: 27px 18px;
  border-right: 1px solid #e6ebf5;
  background: #f7f9fd;
  display: flex;
  flex-direction: column;
}
.aggregated-api-page .api-preview-brand {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 20px;
  padding-left: 7px;
}
.aggregated-api-page .api-preview-sidebar > p {
  font-size: 13px;
  color: #637390;
  margin: 32px 14px 23px;
}
.aggregated-api-page .api-preview-sidebar > p span {
  display: block;
  margin-top: 5px;
  letter-spacing: 0.08em;
  color: #8e9ab0;
  font-size: 9px;
}
.aggregated-api-page .api-preview-sidebar [role=tablist] {
  display: grid;
  gap: 9px;
}
.aggregated-api-page .api-preview-sidebar button {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  border: 1px solid transparent;
  border-radius: 6px;
  background: transparent;
  color: #6c7a94;
  font-size: 13px;
  text-align: left;
  min-height: 44px;
}
.aggregated-api-page .api-preview-sidebar button[aria-selected=true] {
  background: #eaf0ff;
  border-color: #dfe6ff;
  color: var(--brand);
  font-weight: 600;
}
.aggregated-api-page .api-preview-sidebar > small {
  margin: auto 12px 0;
  padding-top: 35px;
  color: #8c99ad;
  font-size: 10px;
}
.aggregated-api-page .api-preview-main {
  padding: 0 32px 29px;
  min-width: 0;
}
.aggregated-api-page .api-preview-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 20px 0;
  border-bottom: 1px solid #edf0f6;
  font-size: 12px;
  color: #7b89a2;
  margin-bottom: 25px;
}
.aggregated-api-page .api-preview-main [role=tabpanel] {
  min-height: 346px;
}
.aggregated-api-page .api-preview-main h3 {
  font-size: 22px;
  margin: 0 0 8px;
}
.aggregated-api-page .api-preview-description {
  font-size: 12px;
  color: #8b97ad;
  margin-bottom: 23px;
}
.aggregated-api-page .api-preview-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.aggregated-api-page .api-preview-metrics > div {
  padding: 17px 21px;
  background: #fafbff;
  border: 1px solid #e8edf7;
  border-radius: 8px;
}
.aggregated-api-page .api-preview-metrics span {
  display: block;
  font-size: 12px;
  color: #7585a0;
}
.aggregated-api-page .api-preview-metrics strong {
  display: block;
  font-size: clamp(21px, 2.3vw, 30px);
  font-weight: 600;
  margin-top: 6px;
  letter-spacing: -0.03em;
}
.aggregated-api-page .api-preview-metrics small {
  font-size: 10px;
  color: #9aa6ba;
}
.aggregated-api-page .api-usage-chart {
  margin-top: 23px;
}
.aggregated-api-page .api-usage-chart > div:first-child {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  font-size: 12px;
}
.aggregated-api-page .api-usage-chart strong {
  font-weight: 500;
  color: #627391;
}
.aggregated-api-page .api-usage-chart > div:first-child > span {
  font-size: 10px;
  color: #94a0b6;
}
.aggregated-api-page .api-chart-bars {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 22px;
  padding: 22px 8px 0;
}
.aggregated-api-page .api-chart-bars > div {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: end;
  height: 142px;
  position: relative;
  padding-bottom: 24px;
}
.aggregated-api-page .api-chart-bars i {
  display: block;
  flex: 0 0 auto;
  width: min(100%, 52px);
  min-height: 1px;
  height: calc(var(--bar-height) * 0.78);
  background: linear-gradient(180deg, #5672ff, #dce5ff);
  border-radius: 5px 5px 0 0;
}
.aggregated-api-page .api-chart-bars span {
  font-size: 10px;
  color: #6981ba;
  margin-bottom: 5px;
}
.aggregated-api-page .api-chart-bars small {
  position: absolute;
  bottom: 0;
  font-size: 10px;
  color: #8998b1;
  white-space: nowrap;
}
.aggregated-api-page .api-preview-model-list {
  display: grid;
  gap: 15px;
}
.aggregated-api-page .api-preview-model-list article {
  display: flex;
  align-items: center;
  gap: 17px;
  border: 1px solid #e5eaf4;
  border-radius: 9px;
  padding: 20px;
}
.aggregated-api-page .api-preview-model-list article > div {
  flex: 1;
  min-width: 0;
}
.aggregated-api-page .api-preview-model-list h4 {
  font-size: 16px;
  margin: 0 0 5px;
}
.aggregated-api-page .api-preview-model-list code {
  font-size: 11px;
  color: #8a99b4;
  overflow-wrap: anywhere;
}
.aggregated-api-page .api-preview-model-list p {
  font-size: 12px;
  color: #7c8ca7;
  margin-top: 6px;
}
.aggregated-api-page .api-preview-tip {
  color: #8190a8;
  font-size: 12px;
  line-height: 1.85;
  background: #f7f9fd;
  border-radius: 7px;
  padding: 16px;
  margin: 22px 0;
}
.aggregated-api-page .api-key-preview {
  padding: 23px;
  border: 1px solid #e3e9f4;
  border-radius: 9px;
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: space-between;
  align-items: center;
  font-size: 13px;
}
.aggregated-api-page .api-key-preview > span:first-child {
  color: #576b92;
  display: flex;
  gap: 11px;
}
.aggregated-api-page .api-key-preview code {
  font-size: 12px;
  color: #7b8eb0;
}
.aggregated-api-page .api-preview-caption {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 25px;
  margin-top: 21px;
}
.aggregated-api-page .api-preview-caption p {
  font-size: 12px;
  color: #8190a6;
  line-height: 1.8;
}
.aggregated-api-page .api-preview-caption a {
  font-size: 13px;
}
.aggregated-api-page .api-commercial-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}
.aggregated-api-page .api-commercial-grid article {
  display: flex;
  flex-direction: column;
  padding: 30px;
  border: 1px solid #e2e8f2;
  border-radius: 11px;
}
.aggregated-api-page .api-commercial-grid article:first-child {
  background: #f7f9ff;
  border-color: #d0dbff;
}
.aggregated-api-page .api-commercial-grid h3 {
  font-size: 22px;
  margin: 21px 0 15px;
}
.aggregated-api-page .api-commercial-grid p {
  color: var(--muted);
  line-height: 1.85;
  font-size: 14px;
}
.aggregated-api-page .api-commercial-grid ul {
  list-style: none;
  margin: 25px 0 28px;
  padding: 0;
  display: grid;
  gap: 10px;
  color: #687b9a;
  font-size: 13px;
}
.aggregated-api-page .api-commercial-grid li::before {
  content: "✓";
  color: #647be0;
  margin-right: 9px;
}
.aggregated-api-page .api-commercial-grid a {
  margin-top: auto;
  font-size: 13px;
}
.aggregated-api-page .api-faq-layout {
  display: grid;
  grid-template-columns: minmax(0, 0.65fr) minmax(0, 1.35fr);
  gap: 85px;
}
.aggregated-api-page .api-faq-layout > div:first-child > a {
  margin-top: 25px;
}
.aggregated-api-page .api-faq-layout .faq {
  margin: 0;
}
.aggregated-api-page .api-faq-layout .faq details:first-child {
  border-top: 1px solid var(--line);
}
.aggregated-api-page .api-faq-layout .faq summary {
  font-size: 16px;
  padding-block: 21px;
}
.aggregated-api-page .api-faq-layout .faq p {
  font-size: 14px;
}
@media (max-width: 1050px) {
  .aggregated-api-page .api-hero-layout {
    gap: 30px;
  }
  .aggregated-api-page .api-model-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .aggregated-api-page .api-architecture {
    padding: 25px;
    gap: 10px;
    grid-template-columns: minmax(0, 1fr) 23px minmax(0, 1.2fr) 23px minmax(0, 0.9fr);
  }
  .aggregated-api-page .api-sources article {
    padding: 15px 11px;
    display: block;
  }
  .aggregated-api-page .api-sources h3 {
    margin-top: 9px;
  }
  .aggregated-api-page .api-gateway h3 {
    font-size: 20px;
  }
  .aggregated-api-page .api-applications span {
    padding: 12px;
    gap: 8px;
    font-size: 12px;
  }
  .aggregated-api-page .api-architecture-note {
    flex-direction: column;
    gap: 12px;
  }
  .aggregated-api-page .api-quickstart-layout {
    gap: 35px;
    grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
  }
  .aggregated-api-page .api-workspace-preview {
    grid-template-columns: 185px minmax(0, 1fr);
  }
  .aggregated-api-page .api-preview-main {
    padding-inline: 23px;
  }
  .aggregated-api-page .api-preview-metrics {
    gap: 10px;
  }
  .aggregated-api-page .api-preview-metrics > div {
    padding: 14px;
  }
  .aggregated-api-page .api-commercial-grid article {
    padding: 24px;
  }
  .aggregated-api-page .api-faq-layout {
    gap: 38px;
  }
}
@media (max-width: 767px) {
  .aggregated-api-page .api-hero-layout {
    grid-template-columns: 1fr;
    gap: 30px;
    padding-top: 5px;
  }
  .aggregated-api-page .api-hero-copy {
    padding: 0;
  }
  .aggregated-api-page .api-hero-visual {
    width: min(100%, 480px);
    justify-self: center;
  }
  .aggregated-api-page .api-hero-visual figcaption {
    font-size: 12px;
    gap: 19px;
    margin-top: 16px;
  }
  .aggregated-api-page .api-architecture {
    grid-template-columns: 1fr;
    gap: 19px;
  }
  .aggregated-api-page .api-sources {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .aggregated-api-page .api-sources article {
    padding: 18px;
  }
  .aggregated-api-page .api-flow-arrow {
    transform: rotate(90deg);
  }
  .aggregated-api-page .api-applications {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
  }
  .aggregated-api-page .api-applications span {
    flex-direction: column;
    text-align: center;
  }
  .aggregated-api-page .api-capability-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
  }
  .aggregated-api-page .api-quickstart-layout {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  .aggregated-api-page .api-code-box pre {
    min-height: 0;
  }
  .aggregated-api-page .api-workspace-preview {
    grid-template-columns: 1fr;
  }
  .aggregated-api-page .api-preview-sidebar {
    padding: 20px;
    border-right: 0;
    border-bottom: 1px solid #e6ebf5;
  }
  .aggregated-api-page .api-preview-brand {
    padding: 0;
    font-size: 18px;
  }
  .aggregated-api-page .api-preview-sidebar > p, .aggregated-api-page .api-preview-sidebar > small {
    display: none;
  }
  .aggregated-api-page .api-preview-sidebar [role=tablist] {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 6px;
    margin-top: 19px;
  }
  .aggregated-api-page .api-preview-sidebar button {
    padding: 10px 7px;
    gap: 8px;
    justify-content: center;
    font-size: 12px;
  }
  .aggregated-api-page .api-commercial-grid {
    grid-template-columns: 1fr;
  }
  .aggregated-api-page .api-faq-layout {
    grid-template-columns: 1fr;
    gap: 30px;
  }
}
@media (max-width: 639px) {
  .aggregated-api-page section[id] {
    scroll-margin-top: 90px;
  }
  .aggregated-api-page .api-product-hero {
    padding-bottom: 32px;
  }
  .aggregated-api-page .api-product-hero .breadcrumb {
    flex-wrap: wrap;
    row-gap: 6px;
    font-size: 11px;
  }
  .aggregated-api-page .api-hero-copy h1 {
    font-size: 35px;
  }
  .aggregated-api-page .api-hero-copy .api-tagline {
    font-size: 18px;
    margin-top: 16px;
  }
  .aggregated-api-page .api-hero-copy .api-hero-description {
    font-size: 15px;
  }
  .aggregated-api-page .api-hero-copy .hero-actions {
    gap: 10px;
    margin-top: 24px;
  }
  .aggregated-api-page .api-hero-copy .hero-actions .button {
    padding: 12px 17px;
    gap: 14px;
    font-size: 13px;
  }
  .aggregated-api-page .api-hero-copy .api-release-note {
    font-size: 11px;
  }
  .aggregated-api-page .api-hero-visual img {
    border-radius: 15px;
  }
  .aggregated-api-page .api-section-nav > div {
    gap: 4px 24px;
    padding-block: 14px;
  }
  .aggregated-api-page .api-section-nav a {
    font-size: 12px;
  }
  .aggregated-api-page .section-heading > .demo-badge, .aggregated-api-page .section-heading > .api-outline-label {
    margin-top: 15px;
  }
  .aggregated-api-page .api-demo-note {
    font-size: 12px;
  }
  .aggregated-api-page .api-catalog-controls {
    grid-template-columns: 1fr;
    gap: 15px;
  }
  .aggregated-api-page .api-catalog-controls input, .aggregated-api-page .api-catalog-controls select {
    font-size: 16px;
  }
  .aggregated-api-page .api-capability-filters {
    gap: 7px;
    margin-top: 18px;
  }
  .aggregated-api-page .api-capability-filters button {
    font-size: 12px;
    padding: 8px 12px;
  }
  .aggregated-api-page .api-model-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .aggregated-api-page .api-model-card {
    padding: 23px;
  }
  .aggregated-api-page .api-model-card > p {
    min-height: 0;
  }
  .aggregated-api-page .api-architecture {
    padding: 21px 16px;
  }
  .aggregated-api-page .api-sources {
    gap: 10px;
  }
  .aggregated-api-page .api-sources article {
    padding: 16px 12px;
  }
  .aggregated-api-page .api-sources h3 {
    font-size: 14px;
  }
  .aggregated-api-page .api-gateway {
    padding: 25px 15px;
  }
  .aggregated-api-page .api-architecture-note {
    margin-bottom: 28px;
  }
  .aggregated-api-page .api-capability-grid {
    -moz-column-gap: 22px;
         column-gap: 22px;
  }
  .aggregated-api-page .api-capability-grid h3 {
    font-size: 16px;
  }
  .aggregated-api-page .api-capability-grid p {
    font-size: 13px;
  }
  .aggregated-api-page .api-code-toolbar {
    padding: 11px 12px;
  }
  .aggregated-api-page .api-code-toolbar > span {
    display: none;
  }
  .aggregated-api-page .api-code-filename {
    padding: 17px 17px 0;
  }
  .aggregated-api-page .api-code-box pre {
    padding: 20px 17px;
    font-size: 11px;
  }
  .aggregated-api-page .api-code-note {
    padding: 16px 17px;
  }
  .aggregated-api-page .api-preview-sidebar {
    padding: 17px 14px;
  }
  .aggregated-api-page .api-preview-sidebar button {
    flex-direction: column;
    gap: 5px;
    font-size: 11px;
  }
  .aggregated-api-page .api-preview-main {
    padding: 0 17px 23px;
  }
  .aggregated-api-page .api-preview-topbar {
    font-size: 10px;
    margin-bottom: 21px;
  }
  .aggregated-api-page .api-preview-main h3 {
    font-size: 20px;
  }
  .aggregated-api-page .api-preview-description {
    font-size: 11px;
  }
  .aggregated-api-page .api-preview-metrics {
    gap: 7px;
  }
  .aggregated-api-page .api-preview-metrics > div {
    padding: 12px 9px;
  }
  .aggregated-api-page .api-preview-metrics span {
    font-size: 10px;
  }
  .aggregated-api-page .api-preview-metrics strong {
    font-size: 20px;
  }
  .aggregated-api-page .api-preview-metrics small {
    font-size: 9px;
  }
  .aggregated-api-page .api-chart-bars {
    gap: 13px;
    padding-inline: 0;
  }
  .aggregated-api-page .api-preview-model-list article {
    padding: 15px;
    gap: 11px;
    flex-wrap: wrap;
  }
  .aggregated-api-page .api-preview-model-list h4 {
    font-size: 15px;
  }
  .aggregated-api-page .api-key-preview {
    padding: 18px;
    gap: 15px;
  }
  .aggregated-api-page .api-preview-caption {
    flex-direction: column;
    gap: 12px;
  }
  .aggregated-api-page .api-commercial-grid h3 {
    font-size: 21px;
  }
  .aggregated-api-page .api-faq-layout .faq summary {
    font-size: 15px;
  }
}
@media (max-width: 359px) {
  .aggregated-api-page .api-hero-copy h1 {
    font-size: 31px;
  }
  .aggregated-api-page .api-applications span {
    padding: 11px 7px;
    font-size: 11px;
  }
  .aggregated-api-page .api-preview-sidebar button {
    padding-inline: 3px;
    font-size: 10px;
    white-space: nowrap;
  }
  .aggregated-api-page .api-preview-metrics strong {
    font-size: 17px;
  }
  .aggregated-api-page .api-chart-bars {
    gap: 9px;
  }
  .aggregated-api-page .api-chart-bars span, .aggregated-api-page .api-chart-bars small {
    font-size: 9px;
  }
  .aggregated-api-page .api-usage-chart > div:first-child {
    flex-wrap: wrap;
    gap: 5px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .aggregated-api-page .api-model-card {
    transition: none;
  }
}

@media (max-width: 639px) {
  .service-catalog-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.llm-pricing-page [hidden] {
  display: none !important;
}
.llm-pricing-page .pricing-hero {
  background: radial-gradient(ellipse at 90% 0, #edf0ff, transparent 65%), #fafbff;
}
.llm-pricing-page .pricing-hero-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  align-items: center;
  gap: 64px;
  padding-block: 12px 16px;
}
.llm-pricing-page .pricing-hero-copy h1 {
  max-width: 14em;
  font-size: clamp(32px, 3.4vw, 46px);
  line-height: 1.3;
}
.llm-pricing-page .pricing-hero-copy > p {
  max-width: 540px;
  font-size: 16px;
  line-height: 1.9;
}
.llm-pricing-page .pricing-hero-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 22px;
  margin-top: 25px;
  font-size: 13px;
  color: var(--muted);
}
.llm-pricing-page .pricing-hero-tags span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}
.llm-pricing-page .pricing-hero-tags i {
  color: var(--brand);
}
.llm-pricing-page .pricing-summary {
  padding: 27px 30px;
  background: #fff;
  border: 1px solid #dfe5fc;
  border-radius: 16px;
  box-shadow: 0 18px 50px -35px rgba(55, 83, 255, 0.3960784314);
}
.llm-pricing-page .pricing-summary-heading {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  font-size: 14px;
  font-weight: 600;
}
.llm-pricing-page .pricing-status {
  padding: 4px 9px;
  border-radius: 5px;
  color: var(--brand);
  background: #eef1ff;
  font-size: 12px;
  font-weight: 500;
  white-space: nowrap;
}
.llm-pricing-page .pricing-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  padding-block: 24px;
  border-bottom: 1px solid var(--line);
}
.llm-pricing-page .pricing-metrics strong {
  display: block;
  font-size: clamp(25px, 2.5vw, 34px);
  font-weight: 650;
  letter-spacing: -0.03em;
  color: var(--brand);
  font-variant-numeric: tabular-nums;
}
.llm-pricing-page .pricing-metrics span {
  display: block;
  margin-top: 3px;
  font-size: 12px;
  color: var(--muted);
}
.llm-pricing-page .pricing-exchange {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding-top: 20px;
}
.llm-pricing-page .pricing-exchange span {
  display: block;
  font-size: 12px;
  color: var(--muted);
}
.llm-pricing-page .pricing-exchange strong {
  display: block;
  margin-top: 4px;
  font-size: 17px;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
}
.llm-pricing-page .pricing-summary .pricing-rate-status {
  font-size: 12px;
  line-height: 1.7;
  color: var(--muted);
  margin-top: 10px;
}
.llm-pricing-page button {
  cursor: pointer;
}
.llm-pricing-page button:disabled {
  cursor: wait;
  opacity: 0.55;
}
.llm-pricing-page :is(button, summary, input, select, a, .pricing-table-wrap):focus-visible {
  outline: 3px solid rgba(55, 83, 255, 0.5333333333);
  outline-offset: 3px;
}
.llm-pricing-page .pricing-icon-button {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  flex-shrink: 0;
  background: #f5f7ff;
  border: 1px solid #e0e6fa;
  border-radius: 8px;
  color: var(--brand);
  font-size: 19px;
}
.llm-pricing-page .pricing-content {
  padding: 34px 0 72px;
}
.llm-pricing-page .pricing-data-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px 28px;
  margin-bottom: 20px;
}
.llm-pricing-page .pricing-data-bar p {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.8;
}
.llm-pricing-page .pricing-text-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 10px 0;
  min-height: 44px;
  border: none;
  background: none;
  color: var(--brand);
  font-size: 13px;
  font-weight: 600;
  white-space: nowrap;
}
.llm-pricing-page .pricing-filter-card {
  padding: 24px 26px 12px;
  border: 1px solid #dfe4f0;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 8px 30px -20px rgba(21, 32, 77, 0.1490196078);
}
.llm-pricing-page .pricing-filters {
  display: grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(0, 0.9fr) minmax(0, 1fr) minmax(0, 1.2fr);
  gap: 20px;
}
.llm-pricing-page .pricing-field {
  min-width: 0;
}
.llm-pricing-page .pricing-field > label, .llm-pricing-page .pricing-field-label {
  display: block;
  font-size: 13px;
  font-weight: 600;
  margin-bottom: 9px;
}
.llm-pricing-page .pricing-search-input {
  position: relative;
}
.llm-pricing-page .pricing-search-input > i {
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--caption);
  font-size: 15px;
  pointer-events: none;
}
.llm-pricing-page input[type=search], .llm-pricing-page select, .llm-pricing-page .pricing-multi > summary {
  width: 100%;
  min-height: 46px;
  border: 1px solid #dce2ee;
  border-radius: 7px;
  background: #fff;
  padding: 10px 12px;
  font: inherit;
  font-size: 14px;
  color: var(--ink);
}
.llm-pricing-page input[type=search] {
  padding-left: 39px;
}
.llm-pricing-page input::-moz-placeholder {
  color: #7a849b;
  font-size: 13px;
}
.llm-pricing-page input::placeholder {
  color: #7a849b;
  font-size: 13px;
}
.llm-pricing-page .pricing-multi {
  position: relative;
}
.llm-pricing-page summary {
  list-style: none;
  cursor: pointer;
}
.llm-pricing-page summary::-webkit-details-marker {
  display: none;
}
.llm-pricing-page .pricing-multi > summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.llm-pricing-page .pricing-multi > summary span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.llm-pricing-page summary > .bi-chevron-down {
  flex-shrink: 0;
  font-size: 12px;
  transition: transform 0.15s;
}
.llm-pricing-page details[open] > summary > .bi-chevron-down {
  transform: rotate(180deg);
}
.llm-pricing-page .pricing-multi[open] > summary {
  border-color: var(--brand);
}
.llm-pricing-page .pricing-filter-popover {
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  right: 0;
  z-index: 12;
  min-width: 200px;
  padding: 8px;
  border: 1px solid #dfe4f0;
  border-radius: 9px;
  background: #fff;
  box-shadow: 0 12px 36px rgba(25, 38, 80, 0.1019607843);
}
.llm-pricing-page .pricing-filter-popover > div:last-child {
  max-height: 300px;
  overflow-y: auto;
  overscroll-behavior: contain;
}
.llm-pricing-page .pricing-filter-actions {
  display: flex;
  justify-content: space-between;
  border-bottom: 1px solid var(--line);
  margin-bottom: 5px;
}
.llm-pricing-page .pricing-filter-actions button {
  min-height: 40px;
  padding: 8px 10px;
  border: none;
  color: var(--brand);
  background: none;
  font: inherit;
  font-size: 13px;
}
.llm-pricing-page .pricing-checkbox {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px;
  min-height: 44px;
  cursor: pointer;
  font-size: 13px;
  line-height: 1.5;
  border-radius: 5px;
}
.llm-pricing-page .pricing-checkbox:hover {
  background: #f2f5ff;
}
.llm-pricing-page .pricing-checkbox input {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  accent-color: var(--brand);
}
.llm-pricing-page .pricing-checkbox span {
  overflow-wrap: anywhere;
}
.llm-pricing-page .pricing-choice-empty {
  padding: 14px 10px;
  font-size: 13px;
  color: var(--muted);
}
.llm-pricing-page .pricing-filter-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-top: 10px;
}
.llm-pricing-page .pricing-filter-bottom p {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.7;
}
.llm-pricing-page .pricing-results-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin: 40px 0 20px;
}
.llm-pricing-page .pricing-results-heading h2 {
  font-size: 25px;
  font-weight: 650;
  line-height: 1.5;
}
.llm-pricing-page .pricing-results-heading p {
  color: var(--muted);
  font-size: 13px;
  margin-top: 7px;
}
.llm-pricing-page .pricing-sort {
  display: flex;
  gap: 12px;
  align-items: center;
}
.llm-pricing-page .pricing-sort label {
  white-space: nowrap;
  font-size: 13px;
  color: var(--muted);
}
.llm-pricing-page .pricing-sort select {
  width: 210px;
}
.llm-pricing-page .pricing-notice {
  display: flex;
  gap: 10px;
  padding: 14px 18px;
  margin-bottom: 20px;
  background: #f5f7fc;
  border: 1px solid #e9edf7;
  border-radius: 8px;
  font-size: 13px;
  line-height: 1.85;
  color: #59677e;
}
.llm-pricing-page .pricing-notice i {
  color: var(--brand);
  padding-top: 2px;
}
.llm-pricing-page .pricing-notice strong {
  font-weight: 600;
  color: var(--ink);
}
.llm-pricing-page .pricing-provider-focus {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 21px 24px;
  margin-bottom: 18px;
  background: #eff3ff;
  border: 1px solid #dfe5ff;
  border-radius: 10px;
}
.llm-pricing-page .pricing-provider-focus strong {
  font-size: 18px;
}
.llm-pricing-page .pricing-provider-focus p {
  font-size: 13px;
  color: var(--muted);
  margin-top: 4px;
  overflow-wrap: anywhere;
}
.llm-pricing-page .pricing-provider-focus a {
  font-size: 13px;
  color: var(--brand);
}
.llm-pricing-page .pricing-groups {
  display: grid;
  gap: 14px;
}
.llm-pricing-page .pricing-provider-group {
  min-width: 0;
  border: 1px solid #dfe4ef;
  border-radius: 12px;
  background: #fff;
}
.llm-pricing-page .pricing-provider-group > summary {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 19px 24px;
  border-radius: 12px;
}
.llm-pricing-page .pricing-provider-group > summary:hover {
  background: #fafbff;
}
.llm-pricing-page .pricing-provider-group[open] {
  border-color: #cbd4fc;
}
.llm-pricing-page .pricing-provider-group[open] > summary {
  background: #f8f9ff;
  border-radius: 12px 12px 0 0;
}
.llm-pricing-page .pricing-provider-title {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  flex: 1;
}
.llm-pricing-page .pricing-provider-title strong {
  font-size: 17px;
  font-weight: 650;
  overflow-wrap: anywhere;
}
.llm-pricing-page .pricing-provider-mark {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  flex-shrink: 0;
  border: 1px solid #e0e5fb;
  border-radius: 10px;
  background: #edf1ff;
  color: var(--brand);
  font-size: 14px;
  font-weight: 700;
}
.llm-pricing-page .pricing-provider-count {
  flex-shrink: 0;
  padding: 3px 8px;
  background: #eef1f8;
  border-radius: 5px;
  color: var(--muted);
  font-size: 12px;
  white-space: nowrap;
}
.llm-pricing-page .pricing-provider-category {
  font-size: 12px;
  color: var(--muted);
}
.llm-pricing-page .pricing-provider-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 14px 24px;
  border-top: 1px solid #e9edfa;
  font-size: 12px;
}
.llm-pricing-page .pricing-provider-meta p {
  color: var(--muted);
}
.llm-pricing-page .pricing-provider-meta a {
  color: var(--brand);
}
.llm-pricing-page .pricing-table-wrap {
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  border-radius: 0 0 12px 12px;
}
.llm-pricing-page .pricing-table {
  width: 100%;
  min-width: 930px;
  border-collapse: collapse;
  font-size: 13px;
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.llm-pricing-page .pricing-table caption {
  padding: 9px 24px;
  text-align: left;
  caption-side: top;
  background: #f9faff;
  border-block: 1px solid #edf0f7;
  color: var(--muted);
  font-size: 12px;
}
.llm-pricing-page .pricing-table th {
  padding: 14px 18px;
  font-weight: 500;
  color: #58677f;
  background: #f7f9fd;
  white-space: nowrap;
  border-bottom: 1px solid var(--line);
}
.llm-pricing-page .pricing-table td {
  padding: 17px 18px;
  border-bottom: 1px solid #edf0f7;
  white-space: nowrap;
}
.llm-pricing-page .pricing-table th:first-child, .llm-pricing-page .pricing-table td:first-child {
  text-align: left;
  padding-left: 24px;
}
.llm-pricing-page .pricing-table th:last-child, .llm-pricing-page .pricing-table td:last-child {
  padding-right: 24px;
}
.llm-pricing-page .pricing-table tr:last-child td {
  border-bottom: none;
}
.llm-pricing-page .pricing-table tbody tr:hover {
  background: #fafbff;
}
.llm-pricing-page .pricing-table .pricing-model-name {
  white-space: normal;
  min-width: 260px;
  max-width: 380px;
  overflow-wrap: anywhere;
}
.llm-pricing-page .pricing-model-name strong {
  display: block;
  font-weight: 600;
  font-size: 14px;
}
.llm-pricing-page .pricing-model-name code {
  display: block;
  font-size: 11px;
  color: #718098;
  margin-top: 4px;
  background: none;
  padding: 0;
  white-space: normal;
}
.llm-pricing-page .pricing-tier-label {
  display: inline-block;
  margin-top: 7px;
  padding: 2px 6px;
  border-radius: 3px;
  color: #826234;
  background: #fbf5e9;
  font-size: 11px;
}
.llm-pricing-page .pricing-cny {
  color: #49628c;
}
.llm-pricing-page .pricing-context {
  color: var(--muted);
  font-size: 12px;
}
.llm-pricing-page .pricing-load-more {
  display: block;
  width: 100%;
  min-height: 48px;
  padding: 13px 20px;
  border: 0;
  border-top: 1px solid var(--line);
  border-radius: 0 0 12px 12px;
  background: #fafbff;
  color: var(--brand);
  font: inherit;
  font-size: 13px;
}
.llm-pricing-page .pricing-empty {
  padding: 64px 24px;
  text-align: center;
  border: 1px dashed #d1d9ef;
  border-radius: 12px;
}
.llm-pricing-page .pricing-empty > i {
  font-size: 30px;
  color: var(--brand);
}
.llm-pricing-page .pricing-empty h3 {
  font-size: 21px;
  margin-top: 16px;
}
.llm-pricing-page .pricing-empty p {
  font-size: 14px;
  color: var(--muted);
  margin-top: 8px;
}
.llm-pricing-page .pricing-empty button {
  margin-top: 24px;
}
.llm-pricing-page .pricing-source-card {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr);
  gap: 64px;
  margin-top: 48px;
  padding: 32px;
  background: #f8faff;
  border: 1px solid #e6ebf5;
  border-radius: 12px;
}
.llm-pricing-page .pricing-source-card .eyebrow {
  font-size: 11px;
  margin-bottom: 12px;
}
.llm-pricing-page .pricing-source-card h2 {
  font-size: 23px;
  line-height: 1.5;
}
.llm-pricing-page .pricing-source-card p {
  font-size: 13px;
  color: var(--muted);
  margin-top: 12px;
  line-height: 1.9;
}
.llm-pricing-page .pricing-source-links {
  display: grid;
  align-content: center;
}
.llm-pricing-page .pricing-source-links a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  min-height: 46px;
  padding: 12px 0;
  border-bottom: 1px solid #e1e7f5;
  font-size: 13px;
  color: var(--brand);
}
.llm-pricing-page .pricing-source-links a:last-child {
  border-bottom: 0;
}
.llm-pricing-page .pricing-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  margin-top: 28px;
  padding: 32px;
  background: linear-gradient(115deg, #eff2ff, #f7f9ff);
  border: 1px solid #dfe5ff;
  border-radius: 12px;
}
.llm-pricing-page .pricing-cta h2 {
  font-size: 23px;
  line-height: 1.5;
}
.llm-pricing-page .pricing-cta p {
  font-size: 14px;
  color: var(--muted);
  margin-top: 10px;
}
.llm-pricing-page .pricing-cta .button {
  flex-shrink: 0;
  font-size: 14px;
}
@media (max-width: 1023px) {
  .llm-pricing-page .pricing-hero-layout {
    gap: 28px;
  }
  .llm-pricing-page .pricing-summary {
    padding: 23px;
  }
  .llm-pricing-page .pricing-filters {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .llm-pricing-page .pricing-source-card {
    gap: 30px;
  }
}
@media (max-width: 767px) {
  .llm-pricing-page .pricing-hero-layout {
    grid-template-columns: 1fr;
    padding-block: 4px 0;
  }
  .llm-pricing-page .pricing-hero-copy h1 {
    font-size: 32px;
  }
  .llm-pricing-page .pricing-hero-copy > p {
    font-size: 15px;
  }
  .llm-pricing-page .pricing-summary {
    padding: 22px;
  }
  .llm-pricing-page .pricing-data-bar {
    flex-wrap: wrap;
    gap: 2px;
  }
  .llm-pricing-page .pricing-content {
    padding: 24px 0 44px;
  }
  .llm-pricing-page .pricing-filter-card {
    padding: 20px 18px 12px;
  }
  .llm-pricing-page .pricing-filters {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .llm-pricing-page .pricing-filter-bottom {
    align-items: start;
    gap: 10px;
  }
  .llm-pricing-page .pricing-filter-bottom p {
    padding-top: 9px;
  }
  .llm-pricing-page .pricing-results-heading {
    flex-direction: column;
    align-items: stretch;
    gap: 16px;
    margin-top: 30px;
  }
  .llm-pricing-page .pricing-results-heading h2 {
    font-size: 22px;
  }
  .llm-pricing-page .pricing-sort {
    justify-content: space-between;
  }
  .llm-pricing-page .pricing-sort select {
    flex: 1;
    max-width: 230px;
  }
  .llm-pricing-page .pricing-filter-popover {
    min-width: 0;
  }
  .llm-pricing-page .pricing-notice {
    padding: 13px;
    font-size: 12px;
  }
  .llm-pricing-page .pricing-provider-group > summary {
    padding: 15px;
    gap: 12px;
  }
  .llm-pricing-page .pricing-provider-title {
    gap: 9px;
    flex-wrap: wrap;
  }
  .llm-pricing-page .pricing-provider-title strong {
    font-size: 15px;
    flex: 1;
  }
  .llm-pricing-page .pricing-provider-mark {
    width: 34px;
    height: 34px;
    font-size: 12px;
    border-radius: 8px;
  }
  .llm-pricing-page .pricing-provider-category {
    display: none;
  }
  .llm-pricing-page .pricing-provider-meta {
    padding: 13px 15px;
    gap: 10px;
    flex-wrap: wrap;
  }
  .llm-pricing-page .pricing-provider-focus {
    padding: 18px;
    align-items: start;
    flex-direction: column;
    gap: 12px;
  }
  .llm-pricing-page .pricing-table caption {
    padding-inline: 15px;
  }
  .llm-pricing-page .pricing-source-card {
    grid-template-columns: 1fr;
    padding: 24px 20px;
    gap: 18px;
    margin-top: 30px;
  }
  .llm-pricing-page .pricing-cta {
    flex-direction: column;
    align-items: start;
    padding: 24px 20px;
    gap: 24px;
  }
  .llm-pricing-page .pricing-source-card h2, .llm-pricing-page .pricing-cta h2 {
    font-size: 21px;
  }
}

.pricing-resource-entry {
  padding-top: 0;
}

.pricing-resource-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  padding: 36px;
  border: 1px solid #dce4ff;
  border-radius: 14px;
  background: linear-gradient(120deg, #f3f6ff, #fff);
}

.pricing-resource-card .eyebrow {
  margin-bottom: 12px;
}

.pricing-resource-card h2 {
  font-size: clamp(24px, 2.4vw, 30px);
  line-height: 1.4;
}

.pricing-resource-card p {
  margin-top: 13px;
  color: var(--muted);
  font-size: 15px;
  max-width: 660px;
  line-height: 1.85;
}

.pricing-resource-card .button {
  flex-shrink: 0;
}

@media (max-width: 767px) {
  .pricing-resource-card {
    flex-direction: column;
    align-items: start;
    padding: 26px 22px;
    gap: 24px;
  }
}
.workspace-switcher {
  display: flex;
  gap: 8px;
  align-items: center;
  max-width: 340px;
}
.workspace-switcher select {
  min-width: 0;
  max-width: 240px;
  border: 1px solid #dde3ed;
  border-radius: 8px;
  padding: 7px 10px;
  background: #fff;
  color: #24334c;
}

.tenant-inline-form, .tenant-row-form {
  display: flex;
  align-items: flex-end;
  gap: 14px;
  flex-wrap: wrap;
}

.tenant-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
}

.tenant-inline-form label, .tenant-form-grid label {
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-weight: 500;
}

.tenant-inline-form input, .tenant-inline-form select, .tenant-row-form input, .tenant-row-form select, .tenant-form-grid input, .tenant-form-grid select, .tenant-invite-link {
  min-height: 44px;
  padding: 10px 12px;
  border: 1px solid #dce3ed;
  border-radius: 9px;
  background: #fff;
  color: #26334b;
  max-width: 100%;
}

.tenant-form-grid small, .workspace-muted {
  color: #728095;
  font-weight: 400;
}

.tenant-form-actions {
  display: flex;
  align-items: end;
}

.tenant-invite-link {
  display: block;
  width: 100%;
  margin-top: 12px;
}

.tenant-empty {
  padding: 32px 20px;
  text-align: center;
  color: #728095;
}
.tenant-empty i {
  font-size: 32px;
  color: #3753ff;
}
.tenant-empty p {
  color: #26334b;
  margin: 10px 0;
  font-size: 18px;
}

.tenant-invitation {
  width: min(620px, 100% - 40px);
  margin: 70px auto;
}
.tenant-invitation .brand {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 28px;
}

.invoice-metrics {
  margin-top: 24px;
}
.invoice-metrics .metric-card {
  min-width: 0;
}
.invoice-metrics .metric-card strong {
  font-size: clamp(22px, 2vw, 32px);
}

.workspace-body .workspace-user {
  flex-wrap: wrap;
  gap: 12px;
}

@media (max-width: 900px) {
  .workspace-topbar {
    flex-wrap: wrap;
    height: auto;
    gap: 14px;
    padding-top: 16px;
    padding-bottom: 16px;
  }
  .workspace-switcher {
    max-width: 100%;
  }
}
@media (max-width: 600px) {
  .tenant-form-grid {
    grid-template-columns: 1fr;
  }
  .tenant-inline-form {
    align-items: stretch;
    flex-direction: column;
  }
  .invoice-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.workspace-sidebar-foot > a {
  display: block;
  margin-top: 8px;
}

@media (min-width: 761px) {
  .workspace-sidebar {
    overflow-y: auto;
  }
  .workspace-sidebar > .brand, .workspace-nav {
    flex-shrink: 0;
  }
}
@media (max-width: 600px) {
  .invoice-metrics {
    gap: 24px 14px;
  }
  .invoice-metrics .metric-card {
    display: block;
    padding: 0;
    margin: 0;
  }
  .invoice-metrics .metric-card > span {
    display: block;
    font-size: 12px;
    white-space: nowrap;
  }
  .invoice-metrics .metric-card > strong {
    display: block;
    margin-top: 10px;
    font-size: 22px;
  }
}
.tenant-page-intro {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  margin-bottom: 28px;
}
.tenant-page-intro .eyebrow {
  font-size: 11px;
  letter-spacing: 0.15em;
  margin-bottom: 10px;
}
.tenant-page-intro h1 {
  font-size: 28px;
  line-height: 1.35;
  margin: 0 0 10px;
  letter-spacing: -0.025em;
}
.tenant-page-intro p {
  font-size: 14px;
  color: #708097;
  margin: 0;
  line-height: 1.8;
}

.tenant-context {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  font-size: 12px;
  color: #61718b;
  background: #fff;
  border: 1px solid #e4e9f2;
  padding: 10px 14px;
  border-radius: 10px;
  max-width: 300px;
  overflow-wrap: anywhere;
  flex-shrink: 0;
}

.tenant-team-page .workspace-card, .tenant-invoice-page .workspace-card {
  box-shadow: 0 3px 18px rgba(31, 48, 83, 0.025);
  border-color: #e5eaf3;
  border-radius: 16px;
}
.tenant-team-page .card-heading h2, .tenant-invoice-page .card-heading h2 {
  font-size: 17px;
}
.tenant-team-page .card-heading p, .tenant-invoice-page .card-heading p {
  font-size: 12px;
  margin: 7px 0 0;
}
.tenant-team-page .workspace-table th, .tenant-invoice-page .workspace-table th {
  color: #7c899c;
  font-size: 12px;
  font-weight: 500;
  background: #f8fafd;
}
.tenant-team-page .workspace-table td, .tenant-invoice-page .workspace-table td {
  font-size: 13px;
  padding-top: 20px;
  padding-bottom: 20px;
}

.tenant-team-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 300px;
  align-items: start;
  gap: 24px;
  margin-bottom: 24px;
}
.tenant-team-grid .workspace-card {
  margin-bottom: 0;
}

.tenant-team-aside {
  display: grid;
  gap: 20px;
}

.tenant-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 24px;
  height: 24px;
  padding: 0 7px;
  background: #eff2ff;
  border-radius: 7px;
  color: #3753ff;
  margin-left: 8px;
  font-size: 12px;
  vertical-align: middle;
}

.tenant-section-icon {
  color: #a3aec4;
  font-size: 24px;
}

.tenant-person {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 145px;
}
.tenant-person strong {
  font-weight: 600;
}
.tenant-person small {
  display: block;
  color: #8a96aa;
  font-size: 12px;
  margin-top: 5px;
}

.tenant-avatar {
  width: 38px;
  height: 38px;
  flex-shrink: 0;
  display: grid;
  place-items: center;
  background: #edf0ff;
  color: #3753ff;
  font-size: 15px;
  font-weight: 600;
  border-radius: 12px;
}

.tenant-self {
  font-size: 10px;
  color: #8792a5;
  padding: 2px 5px;
  border: 1px solid #e5e9f0;
  border-radius: 4px;
  margin-left: 7px;
}

.tenant-role, .tenant-status {
  display: inline-flex;
  align-items: center;
  padding: 4px 8px;
  border-radius: 6px;
  background: #f0f3f8;
  color: #61708a;
  font-size: 11px;
  line-height: 1.5;
}

.tenant-role-owner {
  color: #3753ff;
  background: #eef0ff;
}

.tenant-role-admin {
  color: #6b55ba;
  background: #f3efff;
}

.tenant-member-state {
  display: flex;
  align-items: center;
  gap: 5px;
  margin-top: 7px;
  font-size: 11px;
  color: #8a96a7;
}
.tenant-member-state::before {
  content: "";
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #a2aab8;
}
.tenant-member-state.is-active::before {
  background: #24a78b;
}

.tenant-member-edit summary {
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  color: #3753ff;
  font-size: 12px;
  list-style: none;
}
.tenant-member-edit summary i {
  font-size: 9px;
}
.tenant-member-edit summary::-webkit-details-marker {
  display: none;
}
.tenant-member-edit form {
  margin-top: 14px;
  display: grid;
  gap: 10px;
  min-width: 125px;
}
.tenant-member-edit form label {
  display: grid;
  gap: 6px;
  font-size: 11px;
  color: #74839b;
}
.tenant-member-edit form select {
  width: 100%;
  min-height: 36px;
  padding: 7px 9px;
}
.tenant-member-edit form .button {
  min-height: 36px;
  font-size: 12px;
  padding: 8px 10px;
}
.tenant-member-edit form small {
  white-space: normal;
  max-width: 170px;
  line-height: 1.6;
  color: #8794a9;
  font-size: 11px;
}

.tenant-member-table {
  min-width: 470px;
}

.tenant-team-page .tenant-invite-card {
  background: linear-gradient(150deg, #f3f5ff 0%, #fff 65%);
  padding: 24px;
}
.tenant-team-page .tenant-invite-card h2 {
  font-size: 17px;
  margin: 15px 0 8px;
}
.tenant-team-page .tenant-invite-card > p {
  font-size: 12px;
  color: #748097;
  line-height: 1.8;
  margin-bottom: 20px;
}

.tenant-feature-icon {
  display: inline-grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 12px;
  color: #3753ff;
  background: #e6ebff;
  font-size: 20px;
}

.tenant-invite-form {
  display: grid;
  gap: 17px;
}
.tenant-invite-form label {
  display: grid;
  gap: 8px;
  font-size: 12px;
  color: #53627a;
}
.tenant-invite-form input, .tenant-invite-form select {
  width: 100%;
  min-width: 0;
  min-height: 42px;
  border: 1px solid #dfe5ef;
  border-radius: 8px;
  padding: 10px 12px;
  background: #fff;
  font-size: 13px;
  color: #26334b;
}
.tenant-invite-form button {
  width: 100%;
  min-height: 43px;
  font-size: 13px;
  gap: 7px;
}
.tenant-invite-form small {
  font-size: 11px;
  color: #8c98ac;
  text-align: center;
}

.tenant-team-page .tenant-role-guide {
  padding: 23px;
}
.tenant-team-page .tenant-role-guide h3 {
  font-size: 13px;
  margin-bottom: 18px;
}
.tenant-team-page .tenant-role-guide dl {
  margin: 0;
}
.tenant-team-page .tenant-role-guide dl > div {
  margin-bottom: 18px;
}
.tenant-team-page .tenant-role-guide dl dd {
  margin: 7px 0 0;
  font-size: 12px;
  color: #7b899e;
  line-height: 1.7;
}
.tenant-team-page .tenant-role-guide > p {
  border-top: 1px solid #edf0f6;
  padding-top: 16px;
  font-size: 11px;
  margin: 0;
  color: #7b899e;
  line-height: 1.8;
}
.tenant-team-page .tenant-role-guide > p i {
  margin-right: 5px;
  color: #3753ff;
}

.tenant-empty-inline {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  padding: 30px 20px;
  text-align: left;
}
.tenant-empty-inline p {
  font-size: 14px;
  margin-top: 0;
}
.tenant-empty-inline span {
  font-size: 12px;
}

.tenant-transfer {
  margin-top: 24px;
  border: 1px solid #e3e8f0;
  border-radius: 12px;
  background: #f9fafc;
}
.tenant-transfer summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 19px 22px;
  cursor: pointer;
  color: #6b7890;
  font-size: 13px;
  list-style: none;
}
.tenant-transfer summary span > i {
  margin-right: 9px;
}
.tenant-transfer summary > i {
  font-size: 11px;
}
.tenant-transfer summary::-webkit-details-marker {
  display: none;
}

.tenant-transfer-body {
  border-top: 1px solid #e8ecf2;
  padding: 22px;
}
.tenant-transfer-body p {
  color: #74829a;
  font-size: 13px;
  margin-bottom: 20px;
}

@media (max-width: 1200px) {
  .tenant-team-grid {
    grid-template-columns: minmax(0, 1fr) 265px;
    gap: 18px;
  }
  .tenant-page-intro {
    align-items: flex-start;
    flex-direction: column;
    gap: 14px;
  }
  .tenant-context {
    max-width: 100%;
  }
}
@media (max-width: 1050px) {
  .tenant-team-grid {
    grid-template-columns: 1fr;
  }
  .tenant-team-aside {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 600px) {
  .tenant-team-aside {
    grid-template-columns: 1fr;
  }
  .tenant-page-intro {
    margin-bottom: 22px;
  }
  .tenant-page-intro h1 {
    font-size: 25px;
  }
  .tenant-page-intro p {
    font-size: 13px;
  }
  .tenant-context {
    font-size: 11px;
  }
  .tenant-team-page .workspace-card {
    padding: 20px;
  }
  .tenant-member-table {
    min-width: 0;
  }
  .tenant-member-table thead {
    display: none;
  }
  .tenant-member-table tr {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    padding: 18px 0;
    border-bottom: 1px solid #edf0f6;
  }
  .tenant-member-table td {
    border: 0;
    padding: 0 !important;
    white-space: normal;
  }
  .tenant-member-table td:last-child {
    grid-column: 1/-1;
    margin-top: 14px;
  }
  .tenant-member-edit form {
    grid-template-columns: 1fr 1fr;
  }
  .tenant-member-edit form small {
    max-width: none;
  }
  .tenant-person {
    gap: 9px;
    min-width: 0;
  }
  .tenant-empty-inline {
    align-items: flex-start;
    padding: 22px 0;
    gap: 12px;
  }
}
.tenant-month-filter {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-shrink: 0;
}
.tenant-month-filter label {
  font-size: 12px;
  color: #8390a5;
}
.tenant-month-filter > div {
  display: flex;
  padding: 4px;
  border: 1px solid #dfe5ef;
  border-radius: 10px;
  background: #fff;
}
.tenant-month-filter input {
  border: 0;
  background: none;
  padding: 7px 9px;
  min-width: 145px;
  color: #42516b;
  font-size: 13px;
}
.tenant-month-filter button {
  border: 0;
  border-radius: 7px;
  background: #edf1ff;
  color: #3753ff;
  width: 34px;
  cursor: pointer;
}

.tenant-invoice-page .invoice-summary {
  display: grid;
  grid-template-columns: 1fr 1.6fr;
  padding: 0;
  overflow: hidden;
  margin-bottom: 24px;
  background: linear-gradient(110deg, #f0f3ff, #fff 52%);
}

.invoice-available {
  padding: 30px 32px;
}
.invoice-available > span:first-child {
  display: flex;
  align-items: center;
  gap: 12px;
  color: #5c6b8f;
  font-size: 13px;
}
.invoice-available > strong {
  display: block;
  color: #3753ff;
  font-size: 42px;
  line-height: 1.2;
  font-weight: 600;
  letter-spacing: -0.035em;
  margin: 15px 0 10px;
  font-variant-numeric: tabular-nums;
}
.invoice-available > strong small {
  font-size: 24px;
  margin-right: 7px;
  font-weight: 400;
}
.invoice-available .invoice-period {
  font-size: 11px;
  color: #8996b1;
}

.invoice-summary-stats {
  align-self: center;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding: 24px 20px;
  gap: 20px;
}
.invoice-summary-stats > div {
  border-left: 1px solid #e8ecf5;
  padding-left: 24px;
  min-width: 0;
}
.invoice-summary-stats span {
  display: block;
  color: #8793a7;
  font-size: 12px;
}
.invoice-summary-stats strong {
  display: block;
  margin-top: 15px;
  font-size: 22px;
  font-weight: 500;
  color: #26364e;
  font-variant-numeric: tabular-nums;
  overflow-wrap: anywhere;
}

.invoice-apply-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 270px;
  align-items: start;
  gap: 24px;
  margin-bottom: 24px;
}
.invoice-apply-grid .workspace-card {
  margin-bottom: 0;
}

.invoice-form {
  gap: 23px 24px;
  margin-top: 28px;
}
.invoice-form > label {
  font-size: 12px;
  color: #596983;
}
.invoice-form > label input {
  font-size: 13px;
  min-width: 0;
  width: 100%;
}
.invoice-form > label small {
  font-size: 11px;
  line-height: 1.7;
}
.invoice-form [hidden] {
  display: none;
}
.invoice-form input:focus {
  outline: 2px solid rgba(55, 83, 255, 0.15);
  border-color: #879aff;
}

.invoice-title-types {
  grid-column: 1/-1;
  display: flex;
  gap: 12px;
  border: 0;
  padding: 0;
  margin: 0 0 1px;
}
.invoice-title-types legend {
  font-size: 12px;
  margin-bottom: 10px;
  color: #596983;
}
.invoice-title-types label {
  position: relative;
  flex: 1;
  cursor: pointer;
}
.invoice-title-types label input {
  position: absolute;
  opacity: 0;
  width: 1px;
  height: 1px;
}
.invoice-title-types label span {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  padding: 13px 18px;
  border: 1px solid #e0e6ef;
  border-radius: 9px;
  font-size: 13px;
  color: #73829a;
}
.invoice-title-types label input:checked + span {
  color: #3753ff;
  border-color: #8c9cff;
  background: #f5f7ff;
}
.invoice-title-types label input:focus-visible + span {
  outline: 2px solid #3753ff;
  outline-offset: 3px;
}

.invoice-form-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  border-top: 1px solid #eef1f6;
  padding-top: 22px;
  margin-top: 2px;
  grid-column: 1/-1;
}
.invoice-form-footer > span {
  color: #8a98ac;
  font-size: 11px;
}
.invoice-form-footer > span i {
  color: #7488c5;
  margin-right: 5px;
}
.invoice-form-footer .button {
  font-size: 13px;
  min-height: 43px;
  gap: 14px;
}

.tenant-invoice-page .invoice-guide {
  padding: 25px;
}
.tenant-invoice-page .invoice-guide h3 {
  font-size: 14px;
  margin: 0 0 24px;
}
.tenant-invoice-page .invoice-guide ol {
  list-style: none;
  padding: 0;
  margin: 0;
}
.tenant-invoice-page .invoice-guide ol li {
  display: flex;
  gap: 13px;
  position: relative;
  padding-bottom: 27px;
}
.tenant-invoice-page .invoice-guide ol li > span {
  z-index: 1;
  flex-shrink: 0;
  background: #eff2ff;
  border: 4px solid #fff;
  width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  color: #3753ff;
  font-size: 11px;
  border-radius: 50%;
  margin-left: -4px;
}
.tenant-invoice-page .invoice-guide ol li:not(:last-child)::before {
  content: "";
  position: absolute;
  top: 25px;
  bottom: -1px;
  left: 11px;
  width: 1px;
  background: #e9edf5;
}
.tenant-invoice-page .invoice-guide ol li strong {
  font-size: 12px;
  font-weight: 500;
}
.tenant-invoice-page .invoice-guide ol li p {
  font-size: 11px;
  color: #8d98aa;
  margin: 6px 0 0;
  line-height: 1.8;
}

.invoice-rule {
  display: flex;
  gap: 9px;
  border-top: 1px solid #edf0f6;
  padding-top: 20px;
  color: #8090aa;
}
.invoice-rule > i {
  font-size: 13px;
  color: #768ad1;
}
.invoice-rule strong {
  font-size: 12px;
  color: #596983;
  font-weight: 500;
}
.invoice-rule p {
  font-size: 11px;
  line-height: 1.9;
  margin: 8px 0 0;
}

.invoice-empty {
  padding: 42px 10px;
}
.invoice-empty .tenant-feature-icon {
  width: 54px;
  height: 54px;
  border-radius: 16px;
  margin-bottom: 8px;
}
.invoice-empty p {
  font-size: 16px;
}
.invoice-empty > span {
  font-size: 12px;
}
.invoice-empty .button {
  display: flex;
  width: -moz-fit-content;
  width: fit-content;
  margin: 24px auto 0;
  font-size: 12px;
  min-height: 38px;
}

.invoice-reference {
  display: block;
  margin-top: 7px;
  font-size: 10px;
  color: #98a2b4;
  overflow-wrap: anywhere;
}

.invoice-reason {
  display: block;
  white-space: normal;
  font-size: 11px;
  line-height: 1.7;
  max-width: 220px;
  color: #ad7a51;
  margin-top: 8px;
}

.invoice-row-amount {
  font-variant-numeric: tabular-nums;
  font-weight: 600;
}

.invoice-row-date {
  color: #8794a9;
  font-size: 11px !important;
}

.invoice-row-actions .text-button {
  font-size: 12px;
  display: inline-flex;
  gap: 7px;
}

.invoice-status-pending {
  color: #aa7c23;
  background: #fff7e5;
}

.invoice-status-approved {
  color: #3753ff;
  background: #eef1ff;
}

.invoice-status-issued {
  color: #168f79;
  background: #edf9f5;
}

.invoice-status-rejected {
  color: #ba635b;
  background: #fff0ed;
}

@media (max-width: 1200px) {
  .invoice-summary-stats {
    gap: 10px;
    padding-right: 15px;
  }
  .invoice-summary-stats > div {
    padding-left: 15px;
  }
  .invoice-summary-stats strong {
    font-size: 18px;
  }
  .invoice-available {
    padding: 28px 25px;
  }
  .invoice-available > strong {
    font-size: 36px;
  }
  .invoice-apply-grid {
    grid-template-columns: minmax(0, 1fr) 240px;
    gap: 18px;
  }
}
@media (max-width: 1050px) {
  .invoice-apply-grid {
    grid-template-columns: 1fr;
  }
  .invoice-guide ol {
    display: flex;
    justify-content: space-between;
    gap: 14px;
  }
  .invoice-guide ol li::before {
    display: none;
  }
  .invoice-guide .invoice-rule {
    padding-top: 16px;
  }
  .invoice-guide .invoice-rule p {
    margin-top: 5px;
  }
}
@media (max-width: 600px) {
  .tenant-month-filter {
    width: 100%;
    justify-content: space-between;
  }
  .tenant-month-filter > div {
    flex: 1;
    max-width: 220px;
  }
  .tenant-month-filter input {
    width: calc(100% - 34px);
    min-width: 0;
  }
  .tenant-month-filter button {
    flex-shrink: 0;
  }
  .tenant-invoice-page .workspace-card {
    padding: 20px;
  }
  .tenant-invoice-page .invoice-summary {
    padding: 0;
    grid-template-columns: 1fr;
  }
  .invoice-available {
    padding: 25px;
  }
  .invoice-available > strong {
    font-size: 38px;
  }
  .invoice-summary-stats {
    border-top: 1px solid #e9edf6;
    padding: 22px;
  }
  .invoice-summary-stats > div {
    padding-left: 0;
    border: 0;
  }
  .invoice-summary-stats strong {
    font-size: 17px;
    margin-top: 10px;
  }
  .invoice-summary-stats span {
    font-size: 11px;
  }
  .invoice-form {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .invoice-title-types {
    gap: 10px;
  }
  .invoice-title-types label span {
    padding: 12px 10px;
  }
  .invoice-form-footer {
    flex-direction: column-reverse;
    align-items: stretch;
  }
  .invoice-form-footer > span {
    text-align: center;
  }
  .invoice-form-footer .button {
    justify-content: center;
  }
  .invoice-guide ol {
    display: block;
  }
  .invoice-record-table {
    min-width: 0;
  }
  .invoice-record-table thead {
    display: none;
  }
  .invoice-record-table tr {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 14px 10px;
    border-bottom: 1px solid #e8edf4;
    padding: 20px 0;
  }
  .invoice-record-table td {
    border: 0;
    padding: 0 !important;
    white-space: normal;
  }
  .invoice-record-table td:first-child {
    grid-column: 1;
  }
  .invoice-record-table td.invoice-row-amount {
    text-align: right;
  }
  .invoice-record-table td.invoice-row-date {
    text-align: right;
    align-self: center;
  }
  .invoice-record-table td.invoice-row-actions {
    grid-column: 1/-1;
  }
  .invoice-reference {
    font-size: 9px;
  }
  .invoice-reason {
    max-width: none;
  }
}
.personal-setup-page {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  background: radial-gradient(ellipse at 8% 38%, #eef1ff 0%, transparent 48%), #f8f9fc;
}
.personal-setup-page .customer-header {
  width: 100%;
  max-width: 1280px;
  height: 100px;
  flex-shrink: 0;
}

.personal-setup-shell {
  width: min(1120px, 100% - 80px);
  margin: auto;
  padding: 28px 0 50px;
  display: grid;
  grid-template-columns: 1fr 470px;
  gap: 80px;
  align-items: center;
}

.personal-setup-story .eyebrow {
  font-size: 11px;
  letter-spacing: 0.16em;
  margin-bottom: 20px;
}
.personal-setup-story h1 {
  font-size: 42px;
  line-height: 1.42;
  letter-spacing: -0.04em;
  font-weight: 600;
  margin: 0 0 20px;
}
.personal-setup-story h1 em {
  font-style: normal;
  color: #3753ff;
}

.personal-setup-lead {
  font-size: 15px;
  color: #7b89a0;
  line-height: 1.9;
  margin: 0 0 36px;
}

.personal-capabilities {
  display: grid;
  gap: 23px;
}
.personal-capabilities article {
  display: flex;
  gap: 15px;
  align-items: center;
}
.personal-capabilities article > span {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 12px;
  border: 1px solid #e3e9fa;
  background: rgba(255, 255, 255, 0.6);
  color: #5570d1;
  font-size: 18px;
  flex-shrink: 0;
}
.personal-capabilities article h2 {
  font-size: 14px;
  font-weight: 500;
  color: #3e4f6d;
  margin: 0 0 5px;
}
.personal-capabilities article p {
  font-size: 12px;
  color: #8b97ac;
  margin: 0;
}

.personal-setup-assurance {
  display: flex;
  gap: 8px;
  align-items: center;
  font-size: 11px;
  color: #8c99ae;
  margin-top: 38px;
}
.personal-setup-assurance i {
  color: #7292aa;
}

.personal-setup-card {
  background: #fff;
  border: 1px solid #e5eaf4;
  border-radius: 22px;
  box-shadow: 0 18px 65px rgba(40, 62, 117, 0.0352941176);
  padding: 38px;
  min-width: 0;
}
.personal-setup-card > .tenant-feature-icon {
  width: 46px;
  height: 46px;
  border-radius: 14px;
  font-size: 24px;
  margin-bottom: 26px;
}
.personal-setup-card .form-error {
  margin-top: 16px;
}

.personal-card-heading {
  margin-bottom: 28px;
}
.personal-card-heading .personal-step {
  display: block;
  font-size: 10px;
  color: #99a4b7;
  letter-spacing: 0.1em;
  margin-bottom: 9px;
}
.personal-card-heading h2 {
  font-size: 25px;
  margin: 0 0 10px;
  letter-spacing: -0.025em;
}
.personal-card-heading p {
  font-size: 13px;
  color: #8390a5;
  line-height: 1.8;
  margin: 0;
}

.personal-onboarding-form .form-field {
  margin-bottom: 22px;
}
.personal-onboarding-form .form-field label {
  font-size: 13px;
  margin-bottom: 10px;
  display: block;
  color: #52627d;
}
.personal-onboarding-form .form-field input {
  border-radius: 9px;
  font-size: 14px !important;
  background: #fcfdff;
}
.personal-onboarding-form .form-field small {
  display: block;
  font-size: 11px;
  color: #9aa5b7;
  margin-top: 9px;
}
.personal-onboarding-form .form-consent {
  font-size: 12px;
  line-height: 1.8;
  align-items: flex-start;
  margin: 24px 0 !important;
}
.personal-onboarding-form .form-consent input {
  margin-top: 4px;
  flex-shrink: 0;
  accent-color: #3753ff;
}
.personal-onboarding-form .form-consent span {
  font-size: 12px;
}
.personal-onboarding-form .button {
  font-size: 14px;
  gap: 20px;
  min-height: 48px;
}

.personal-plan-note {
  display: flex;
  gap: 12px;
  padding: 16px;
  background: #f7f9ff;
  border: 1px solid #edf0fa;
  border-radius: 10px;
}
.personal-plan-note > i {
  color: #7a8fc8;
  font-size: 18px;
  margin-top: 2px;
}
.personal-plan-note strong {
  display: block;
  font-size: 12px;
  font-weight: 500;
  color: #52668b;
}
.personal-plan-note span {
  display: block;
  font-size: 11px;
  color: #8d9ab1;
  margin-top: 6px;
  line-height: 1.7;
}

.personal-business-link {
  border-top: 1px solid #edf0f6;
  padding-top: 22px;
  margin-top: 26px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  font-size: 11px;
}
.personal-business-link > span {
  color: #93a0b3;
}
.personal-business-link a {
  color: #526dc5;
  display: flex;
  align-items: center;
  gap: 6px;
}

.personal-existing-space {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 20px;
  border-radius: 12px;
  background: #f7f9ff;
  border: 1px solid #e9eefa;
  margin: 32px 0;
}
.personal-existing-space > div {
  min-width: 0;
  flex: 1;
}
.personal-existing-space strong {
  display: block;
  font-size: 14px;
  overflow-wrap: anywhere;
}
.personal-existing-space small {
  display: block;
  font-size: 11px;
  color: #8c99ae;
  margin-top: 6px;
}
.personal-existing-space > i {
  color: #26a286;
}

.personal-setup-footer {
  width: min(1200px, 100% - 80px);
  margin: 0 auto;
  padding: 24px 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  color: #a0abbd;
  font-size: 11px;
}
.personal-setup-footer > div {
  display: flex;
  gap: 24px;
}
.personal-setup-footer a {
  color: inherit;
}

@media (max-width: 1100px) {
  .personal-setup-shell {
    gap: 45px;
    grid-template-columns: 1fr 430px;
  }
  .personal-setup-story h1 {
    font-size: 36px;
  }
}
@media (max-width: 900px) {
  .personal-setup-shell {
    width: min(640px, 100% - 48px);
    grid-template-columns: 1fr;
    gap: 32px;
    padding-top: 24px;
  }
  .personal-setup-story h1 {
    font-size: 32px;
  }
  .personal-setup-story h1 br {
    display: none;
  }
  .personal-setup-lead {
    margin-bottom: 0;
  }
  .personal-setup-lead br {
    display: none;
  }
  .personal-capabilities, .personal-setup-assurance {
    display: none;
  }
  .personal-setup-story .eyebrow {
    margin-bottom: 14px;
  }
  .personal-setup-card {
    padding: 32px;
  }
}
@media (max-width: 540px) {
  .personal-setup-page .customer-header {
    height: 82px;
    padding: 0 24px;
  }
  .personal-setup-shell {
    padding: 18px 0 30px;
    gap: 28px;
    width: calc(100% - 40px);
  }
  .personal-setup-story {
    padding: 0 4px;
  }
  .personal-setup-story h1 {
    font-size: 28px;
    margin-bottom: 14px;
  }
  .personal-setup-story .eyebrow {
    font-size: 9px;
  }
  .personal-setup-lead {
    font-size: 13px;
  }
  .personal-setup-card {
    padding: 26px 23px;
    border-radius: 18px;
  }
  .personal-setup-card > .tenant-feature-icon {
    margin-bottom: 22px;
  }
  .personal-card-heading h2 {
    font-size: 22px;
  }
  .personal-business-link {
    flex-direction: column;
    gap: 11px;
  }
  .personal-setup-footer {
    width: calc(100% - 40px);
    flex-direction: column;
    text-align: center;
    padding: 18px 0 26px;
    font-size: 10px;
  }
}
.tenant-team-main {
  display: grid;
  gap: 24px;
  min-width: 0;
}

.tenant-person strong {
  display: inline !important;
}

.tenant-role-guide summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  font-size: 13px;
  list-style: none;
}
.tenant-role-guide summary i {
  font-size: 10px;
  color: #8595af;
}
.tenant-role-guide summary::-webkit-details-marker {
  display: none;
}

.tenant-role-guide details[open] summary {
  margin-bottom: 22px;
}

.tenant-team-page .tenant-role-guide details > p {
  border-top: 1px solid #edf0f6;
  padding-top: 16px;
  font-size: 11px;
  margin: 0;
  color: #7b899e;
  line-height: 1.8;
}

@media (max-width: 600px) {
  .personal-setup-story h1 br {
    display: block;
  }
  .personal-setup-story h1 em {
    font-size: 27px;
  }
}
.tenant-transfer {
  background: #fff;
  border-color: #e5eaf3;
  border-radius: 16px;
  box-shadow: 0 3px 18px rgba(31, 48, 83, 0.025);
}

.tenant-transfer summary {
  color: #26334b;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.5;
}

.tenant-transfer summary span > i {
  color: #3753ff;
}

.tenant-transfer-body {
  padding: 24px;
}

.tenant-transfer-body p {
  margin: 0 0 20px;
  color: #708097;
  font-size: 13px;
  line-height: 1.8;
}

.tenant-transfer-body .tenant-inline-form label {
  color: #596983;
  font-size: 12px;
  font-weight: 500;
}

.tenant-transfer-body .tenant-inline-form input, .tenant-transfer-body .tenant-inline-form select {
  font-family: inherit;
  font-size: 13px;
  font-weight: 400;
}

.tenant-transfer-body .button {
  font-size: 13px;
  font-weight: 500;
}

@media (max-width: 600px) {
  .tenant-transfer summary {
    padding: 17px 20px;
  }
  .tenant-transfer-body {
    padding: 20px;
  }
}
.workspace-body {
  font-family: var(--font-sans);
  font-size: var(--text-body);
  line-height: 1.75;
}
.workspace-body button, .workspace-body input, .workspace-body select, .workspace-body textarea {
  font-family: inherit;
}
.workspace-body h1, .workspace-body h2, .workspace-body h3 {
  letter-spacing: -0.025em;
  line-height: 1.4;
}
.workspace-body .workspace-heading h1 {
  font-size: 30px;
  font-weight: 600;
}
.workspace-body .workspace-card h2 {
  font-size: 19px;
  font-weight: 600;
}
.workspace-body .workspace-card h3 {
  font-size: 16px;
  font-weight: 600;
}
.workspace-body .workspace-description, .workspace-body .workspace-card > p, .workspace-body .workspace-card .form-help {
  font-size: 15px;
  line-height: 1.8;
}
.workspace-body .workspace-table th {
  font-size: 13px;
}
.workspace-body .workspace-table td {
  font-size: 14px;
}
.workspace-body .workspace-table td small, .workspace-body .workspace-table td code {
  font-size: 12px;
}
.workspace-body .workspace-table .text-button, .workspace-body .workspace-card .text-button {
  font-size: 13px;
}
.workspace-body .workspace-card label {
  font-size: 14px;
}
.workspace-body .workspace-card input, .workspace-body .workspace-card select, .workspace-body .workspace-card textarea {
  font-size: 14px;
}
.workspace-body .workspace-muted, .workspace-body .workspace-footnote {
  font-size: 13px;
  line-height: 1.7;
}

.tenant-page-intro h1 {
  font-size: 32px;
  font-weight: 600;
}

.tenant-page-intro p {
  font-size: 15px;
}

.tenant-context {
  font-size: 13px;
}

.tenant-team-page .card-heading h2, .tenant-invoice-page .card-heading h2 {
  font-size: 19px;
}
.tenant-team-page .card-heading p, .tenant-invoice-page .card-heading p {
  font-size: 13px;
}
.tenant-team-page .workspace-table th, .tenant-invoice-page .workspace-table th {
  font-size: 13px;
}
.tenant-team-page .workspace-table td, .tenant-invoice-page .workspace-table td {
  font-size: 14px;
}

.tenant-team-page .tenant-invite-card > p {
  font-size: 14px;
}
.tenant-team-page .tenant-invite-form label {
  font-size: 13px;
}
.tenant-team-page .tenant-invite-form input, .tenant-team-page .tenant-invite-form select, .tenant-team-page .tenant-invite-form button {
  font-size: 14px;
}
.tenant-team-page .tenant-invite-form small, .tenant-team-page .tenant-role-guide dd {
  font-size: 13px;
}
.tenant-team-page .tenant-member-state, .tenant-team-page .tenant-member-edit summary, .tenant-team-page .tenant-role, .tenant-team-page .tenant-status {
  font-size: 12px;
}
.tenant-team-page .tenant-role-guide summary {
  font-size: 14px;
  font-weight: 600;
}
.tenant-team-page .tenant-role-guide details > p {
  font-size: 13px;
}

.tenant-invoice-page .invoice-form > label, .tenant-invoice-page .invoice-title-types legend {
  font-size: 14px;
}
.tenant-invoice-page .invoice-form input, .tenant-invoice-page .invoice-title-types label span {
  font-size: 14px;
}
.tenant-invoice-page .invoice-form small, .tenant-invoice-page .invoice-form-footer > span {
  font-size: 12px;
}
.tenant-invoice-page .invoice-guide h3 {
  font-size: 16px;
}
.tenant-invoice-page .invoice-guide ol strong, .tenant-invoice-page .invoice-guide .invoice-rule strong {
  font-size: 14px;
}
.tenant-invoice-page .invoice-guide ol p, .tenant-invoice-page .invoice-guide .invoice-rule p {
  font-size: 13px;
}
.tenant-invoice-page .invoice-reference, .tenant-invoice-page .invoice-row-date {
  font-size: 12px !important;
}

.tenant-transfer summary {
  font-family: var(--font-sans);
  font-size: 14px;
}

.tenant-transfer-body p {
  font-size: 14px;
}

.tenant-transfer-body .tenant-inline-form label {
  font-size: 14px;
}

.tenant-transfer-body .tenant-inline-form input, .tenant-transfer-body .tenant-inline-form select, .tenant-transfer-body .button {
  font-size: 14px;
}

@media (max-width: 600px) {
  .workspace-body .workspace-heading h1 {
    font-size: 26px;
  }
  .tenant-page-intro h1 {
    font-size: 26px;
  }
  .tenant-page-intro p {
    font-size: 14px;
  }
  .tenant-team-page .workspace-table td, .tenant-invoice-page .workspace-table td {
    font-size: 14px;
  }
}
.invoice-tabs {
  display: flex;
  gap: 28px;
  border-bottom: 1px solid #e2e8f1;
  margin-bottom: 24px;
}
.invoice-tabs a {
  padding: 0 2px 14px;
  font-size: 14px;
  font-weight: 500;
  color: #78869b;
  text-decoration: none;
  border-bottom: 2px solid transparent;
}
.invoice-tabs a[aria-current=page] {
  color: #3753ff;
  border-bottom-color: #3753ff;
}

.invoice-title-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
}

.invoice-title-page .invoice-title-card {
  margin: 0;
  padding: 26px;
  min-width: 0;
  display: flex;
  flex-direction: column;
}
.invoice-title-page .invoice-title-card h2 {
  font-size: 18px;
  margin: 20px 0;
  line-height: 1.6;
  overflow-wrap: anywhere;
}

.invoice-title-card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.invoice-title-kind {
  color: #718097;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
}
.invoice-title-kind i {
  color: #3753ff;
}

.invoice-title-info {
  display: grid;
  grid-template-columns: 76px minmax(0, 1fr);
  gap: 12px;
  margin: 0;
  font-size: 14px;
  line-height: 1.7;
}
.invoice-title-info dt {
  color: #8792a5;
  font-weight: 400;
}
.invoice-title-info dd {
  margin: 0;
  color: #33425b;
  overflow-wrap: anywhere;
}
.invoice-title-info [hidden] {
  display: none;
}

.invoice-title-more {
  margin-top: 18px;
}
.invoice-title-more summary {
  cursor: pointer;
  color: #7b889b;
  font-size: 13px;
  display: flex;
  justify-content: space-between;
  list-style: none;
}
.invoice-title-more summary::-webkit-details-marker {
  display: none;
}
.invoice-title-more[open] .invoice-title-info {
  margin-top: 18px;
}

.invoice-title-actions {
  display: flex;
  gap: 24px;
  align-items: center;
  flex-wrap: wrap;
  margin-top: auto;
  padding-top: 22px;
}
.invoice-title-actions .text-button {
  font-size: 13px;
  display: inline-flex;
  gap: 6px;
}
.invoice-title-actions form {
  margin: 0;
}
.invoice-title-actions .invoice-title-delete {
  color: #a27f7f;
}

.invoice-title-note {
  display: flex;
  gap: 8px;
  color: #8390a3;
  font-size: 13px;
  margin: 22px 0 0;
  line-height: 1.8;
}

.invoice-title-page .invoice-title-empty {
  padding: 48px 20px;
}
.invoice-title-page .invoice-title-empty h2 {
  font-size: 19px;
  margin: 16px 0 10px;
}
.invoice-title-page .invoice-title-empty p {
  font-size: 14px;
  margin-bottom: 24px;
}
.invoice-title-page .invoice-title-empty .button {
  display: inline-flex;
}
.invoice-title-page .invoice-title-empty .button i {
  font-size: inherit;
  color: inherit;
}

.invoice-title-editor {
  max-width: 1000px;
}
.invoice-title-editor .invoice-form {
  gap: 24px;
}
.invoice-title-editor .invoice-title-types label {
  flex: 1;
}

.invoice-form .invoice-title-default {
  grid-column: 1/-1;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 12px;
  padding-top: 4px;
}
.invoice-form .invoice-title-default input {
  width: 18px;
  height: 18px;
  min-height: 18px;
  padding: 0;
  margin-top: 3px;
  accent-color: #3753ff;
}
.invoice-form .invoice-title-default span {
  font-size: 14px;
  line-height: 1.7;
}
.invoice-form .invoice-title-default small {
  display: block;
  margin-top: 3px;
  font-size: 12px;
}

.invoice-form [data-title-company-field][hidden] {
  display: none;
}

.invoice-title-selector, .invoice-selected-title {
  grid-column: 1/-1;
}

.invoice-selected-title {
  background: #f8faff;
  border: 1px solid #e8edf8;
  border-radius: 12px;
  padding: 20px;
}
.invoice-selected-title > span {
  font-size: 12px;
  color: #7b89a0;
}
.invoice-selected-title > strong {
  display: block;
  color: #263650;
  font-size: 16px;
  margin: 8px 0 18px;
  overflow-wrap: anywhere;
}
.invoice-selected-title .invoice-title-info {
  font-size: 13px;
}

@media (max-width: 1000px) {
  .invoice-title-list {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 600px) {
  .invoice-title-page .tenant-page-intro {
    align-items: flex-start;
  }
  .invoice-title-page .tenant-page-intro .button {
    width: 100%;
    justify-content: center;
  }
  .invoice-title-editor .invoice-title-types {
    flex-wrap: wrap;
  }
  .invoice-title-editor .invoice-title-types label {
    min-width: 0;
  }
  .invoice-title-editor .invoice-title-types label span {
    font-size: 13px;
    padding: 12px 8px;
  }
  .invoice-title-info {
    grid-template-columns: 68px minmax(0, 1fr);
    font-size: 13px;
    gap: 10px;
  }
  .invoice-selected-title {
    padding: 16px;
  }
  .invoice-title-page .invoice-title-card {
    padding: 22px;
  }
}
