This is an automated email from the ASF dual-hosted git repository.
morningman pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris-website.git
The following commit(s) were added to refs/heads/master by this push:
new db02badb915 [fix] keep Ask Me modal header below the sticky navbar
(#3700)
db02badb915 is described below
commit db02badb9157cd1bf1f5ca599a681a0958c8661c
Author: Mingyu Chen (Rayner) <[email protected]>
AuthorDate: Tue May 19 15:10:58 2026 -0700
[fix] keep Ask Me modal header below the sticky navbar (#3700)
The Kapa modal was vertically centered with only a 2rem top inset, so
when content was tall the modal header slid under the 64px sticky
NavbarNext. Anchor the modal to the top with an 80px (navbar + 16px gap)
inset and cap max-height accordingly so the body still scrolls inside
the modal.
---------
Co-authored-by: Claude Opus 4.7 (1M context) <[email protected]>
---
.github/workflows/cron-deploy-website.yml | 2 +
.github/workflows/manual-deploy-website.yml | 2 +
docusaurus.config.js | 6 -
scripts/update_github_info.js | 35 +++--
src/components/PageBanner/index.tsx | 82 ----------
src/components/PageBanner/styles.scss | 169 ---------------------
.../achievement-banner/achievement-banner.data.ts | 6 -
.../achievement-banner/achievement-banner.scss | 31 ----
.../achievement-banner/achievement-banner.tsx | 18 ---
src/components/home-next/NavbarNext.scss | 1 -
.../home-next/sections/CommunitySection.scss | 2 -
.../home-next/sections/DeploymentSection.scss | 4 +-
.../home-next/sections/EcosystemSection.scss | 4 +-
.../home-next/sections/FeaturesSection.scss | 8 +-
src/components/home-next/sections/HeroSection.scss | 30 ++--
src/components/shared/_typography.scss | 7 +-
src/components/summit-modal/summit-modal.tsx | 2 +-
src/components/use-cases-next/AIAnalyticsNext.scss | 37 +++--
.../CustomerFacingAnalyticsNext.scss | 33 ++--
.../use-cases-next/DataWarehousingNext.scss | 33 ++--
.../use-cases-next/ObservabilityNext.scss | 33 ++--
src/components/why-doris-next/BenchmarkNext.scss | 67 ++++----
src/components/why-doris-next/CompareNext.scss | 4 +-
src/components/why-doris-next/KeyFeaturesNext.scss | 24 ++-
src/components/why-doris-next/UsersNext.scss | 8 +-
.../sections/ComparisonTableSection.scss | 2 +-
src/scss/custom.scss | 40 +++--
static/animations/what-is-apache-doris-intro.html | 9 +-
static/fonts/JetBrainsMono-VariableFont_wght.ttf | Bin 0 -> 300144 bytes
static/fonts/Montserrat-Black.otf | Bin 230124 -> 0 bytes
static/fonts/Montserrat-BlackItalic.otf | Bin 236868 -> 0 bytes
static/fonts/Montserrat-Bold.otf | Bin 235192 -> 0 bytes
static/fonts/Montserrat-BoldItalic.otf | Bin 243084 -> 0 bytes
static/fonts/Montserrat-ExtraBold.otf | Bin 234432 -> 0 bytes
static/fonts/Montserrat-ExtraBoldItalic.otf | Bin 242800 -> 0 bytes
static/fonts/Montserrat-ExtraLight.otf | Bin 226772 -> 0 bytes
static/fonts/Montserrat-ExtraLightItalic.otf | Bin 236444 -> 0 bytes
static/fonts/Montserrat-Italic.otf | Bin 237828 -> 0 bytes
static/fonts/Montserrat-Light.otf | Bin 228068 -> 0 bytes
static/fonts/Montserrat-LightItalic.otf | Bin 237832 -> 0 bytes
static/fonts/Montserrat-Medium.otf | Bin 230356 -> 0 bytes
static/fonts/Montserrat-MediumItalic.otf | Bin 239660 -> 0 bytes
static/fonts/Montserrat-Regular.otf | Bin 228620 -> 0 bytes
static/fonts/Montserrat-SemiBold.otf | Bin 234056 -> 0 bytes
static/fonts/Montserrat-SemiBoldItalic.otf | Bin 242672 -> 0 bytes
static/fonts/Montserrat-Thin.otf | Bin 217636 -> 0 bytes
static/fonts/Montserrat-ThinItalic.otf | Bin 227984 -> 0 bytes
static/fonts/Montserrat-VariableFont_wght.ttf | Bin 688600 -> 0 bytes
static/fonts/MontserratAlternates-Black.otf | Bin 184200 -> 0 bytes
static/fonts/MontserratAlternates-BlackItalic.otf | Bin 186764 -> 0 bytes
static/fonts/MontserratAlternates-Bold.otf | Bin 187392 -> 0 bytes
static/fonts/MontserratAlternates-BoldItalic.otf | Bin 191820 -> 0 bytes
static/fonts/MontserratAlternates-ExtraBold.otf | Bin 186888 -> 0 bytes
.../fonts/MontserratAlternates-ExtraBoldItalic.otf | Bin 191300 -> 0 bytes
static/fonts/MontserratAlternates-ExtraLight.otf | Bin 179680 -> 0 bytes
.../MontserratAlternates-ExtraLightItalic.otf | Bin 185520 -> 0 bytes
static/fonts/MontserratAlternates-Italic.otf | Bin 187068 -> 0 bytes
static/fonts/MontserratAlternates-Light.otf | Bin 180736 -> 0 bytes
static/fonts/MontserratAlternates-LightItalic.otf | Bin 186624 -> 0 bytes
static/fonts/MontserratAlternates-Medium.otf | Bin 183104 -> 0 bytes
static/fonts/MontserratAlternates-MediumItalic.otf | Bin 188564 -> 0 bytes
static/fonts/MontserratAlternates-Regular.otf | Bin 181996 -> 0 bytes
static/fonts/MontserratAlternates-SemiBold.otf | Bin 185876 -> 0 bytes
.../fonts/MontserratAlternates-SemiBoldItalic.otf | Bin 190496 -> 0 bytes
static/fonts/MontserratAlternates-Thin.otf | Bin 173616 -> 0 bytes
static/fonts/MontserratAlternates-ThinItalic.otf | Bin 179448 -> 0 bytes
static/fonts/NotoSansSC-Black.otf | Bin 8950680 -> 0 bytes
static/fonts/NotoSansSC-Bold.otf | Bin 8716392 -> 0 bytes
static/fonts/NotoSansSC-Light.otf | Bin 8434216 -> 0 bytes
static/fonts/NotoSansSC-Medium.otf | Bin 8508580 -> 0 bytes
static/fonts/NotoSansSC-Regular.otf | Bin 8482020 -> 0 bytes
static/fonts/NotoSansSC-Thin.otf | Bin 7815988 -> 0 bytes
static/js/custom-script.js | 21 +--
73 files changed, 200 insertions(+), 520 deletions(-)
diff --git a/.github/workflows/cron-deploy-website.yml
b/.github/workflows/cron-deploy-website.yml
index 486ee65fe88..d4073cd7e04 100644
--- a/.github/workflows/cron-deploy-website.yml
+++ b/.github/workflows/cron-deploy-website.yml
@@ -33,6 +33,8 @@ jobs:
node-version: 20
- name: Build
+ env:
+ GITHUB_TOKEN: ${{ github.token }}
run: |
npm install -g yarn
yarn cache clean
diff --git a/.github/workflows/manual-deploy-website.yml
b/.github/workflows/manual-deploy-website.yml
index d69ed030b0f..c79e7433508 100644
--- a/.github/workflows/manual-deploy-website.yml
+++ b/.github/workflows/manual-deploy-website.yml
@@ -37,6 +37,8 @@ jobs:
node-version: 20
- name: Build
+ env:
+ GITHUB_TOKEN: ${{ github.token }}
run: |
npm install -g yarn
yarn cache clean
diff --git a/docusaurus.config.js b/docusaurus.config.js
index 21f379ce964..6f110a51c58 100644
--- a/docusaurus.config.js
+++ b/docusaurus.config.js
@@ -182,12 +182,6 @@ const config = {
}
],
stylesheets: [
- //
'https://cdn-font.hyperos.mi.com/font/css?family=MiSans:100,200,300,400,450,500,600,650,700,900:Chinese_Simplify,Latin&display=swap',
- //
'https://cdn-font.hyperos.mi.com/font/css?family=MiSans_Latin:100,200,300,400,450,500,600,650,700,900:Latin&display=swap',
- //
'https://fonts.googleapis.com/css2?family=Inter:wght@100;200;300;400;500;600;700;800;900&display=swap',
- // 'https://fonts.googleapis.com',
- // 'https://fonts.gstatic.com',
- //
'https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Noto+Sans:ital,wght@0,100..900;1,100..900&display=swap'
{
href: '/css/katex.min.css',
type: 'text/css',
diff --git a/scripts/update_github_info.js b/scripts/update_github_info.js
index 604e09bbebc..09623f4bc0f 100644
--- a/scripts/update_github_info.js
+++ b/scripts/update_github_info.js
@@ -11,16 +11,17 @@ function formatStar(star) {
}
async function getGithubStar() {
- try {
- const res = await fetch('https://api.github.com/repos/apache/doris');
- const data = await res.json();
- if (data && data.stargazers_count) {
- const starStr =
(+parseFloat(formatStar(data.stargazers_count)).toFixed(1)).toString();
- return starStr;
- }
- } catch (err) {
- console.error(err);
+ const headers = { Accept: 'application/vnd.github+json' };
+ if (process.env.GITHUB_TOKEN) {
+ headers.Authorization = `Bearer ${process.env.GITHUB_TOKEN}`;
}
+ const res = await fetch('https://api.github.com/repos/apache/doris', {
headers });
+ const data = await res.json().catch(() => ({}));
+ if (!res.ok || !data || !data.stargazers_count) {
+ console.error('Failed to fetch star count from GitHub API:',
res.status, data);
+ process.exit(1);
+ }
+ return
(+parseFloat(formatStar(data.stargazers_count)).toFixed(1)).toString();
}
function updateGithubData(newStar) {
@@ -32,14 +33,12 @@ function updateGithubData(newStar) {
async function main() {
const star = await getGithubStar();
- if (star) {
- try {
- updateGithubData(star);
- console.log('successful,stars:', star);
- } catch (err) {
- console.error(err);
- }
- }
+ updateGithubData(star);
+ console.log('successful,stars:', star);
}
-main();
+main().catch((err) => {
+ console.error(err);
+ process.exit(1);
+});
+
diff --git a/src/components/PageBanner/index.tsx
b/src/components/PageBanner/index.tsx
deleted file mode 100644
index 602bab7c780..00000000000
--- a/src/components/PageBanner/index.tsx
+++ /dev/null
@@ -1,82 +0,0 @@
-import clsx from 'clsx';
-import Link from '@docusaurus/Link';
-import React, { ComponentProps, JSXElementConstructor } from 'react';
-import './styles.scss';
-
-export interface ButtonProps extends
ComponentProps<JSXElementConstructor<any>> {
- label: any;
- link: string | (() => void);
- type: 'primary' | 'ghost' | 'default';
-}
-
-interface PageBannerProps extends ComponentProps<JSXElementConstructor<any>> {
- title: any;
- subTitle: any;
- bannerImg: string;
- bannerImgPhone?: string;
- buttons: ButtonProps[];
- className?: string;
- event: any;
-}
-
-export default function PageBanner(props: PageBannerProps): JSX.Element {
- const { title, subTitle, bannerImg, bannerImgPhone, buttons, className,
event } = props;
-
- return (
- <section className={clsx('banner-section', className)}>
- <div className="banner-container container">
- <div className="banner-info mb-10 lg:mb-[5rem]">
- { event }
- <div className="banner-title-wrap">
- <div className="banner-title">{title}</div>
- <div className="banner-sub-title">{subTitle}</div>
- </div>
- <div className="banner-buttons">
- {buttons.map((btn, index) =>
- typeof btn.link === 'string' ? (
- <Link
- className={clsx('button button--secondary
button--lg', btn.type)}
- to={btn.link}
- key={index}
- >
- {btn.label}
- </Link>
- ) : (
- <div
- onClick={btn.link}
- className={clsx('button button--secondary
button--lg', btn.type)}
- key={index}
- >
- {btn.label}
- <svg
- style={{ display: 'inline-block' }}
- xmlns="http://www.w3.org/2000/svg"
- width="19"
- height="18"
- viewBox="0 0 19 18"
- fill="none"
- >
- <path
- d="M10.6251 13.5L15.125 9L10.6251
4.5"
- stroke="#11A679"
- strokeWidth="1.5"
- strokeLinecap="round"
- strokeLinejoin="round"
- />
- <path
- d="M3.87506 9.00055L15.1251
9.00055"
- stroke="#11A679"
- strokeWidth="1.5"
- strokeLinecap="round"
- strokeLinejoin="round"
- />
- </svg>
- </div>
- ),
- )}
- </div>
- </div>
- </div>
- </section>
- );
-}
diff --git a/src/components/PageBanner/styles.scss
b/src/components/PageBanner/styles.scss
deleted file mode 100644
index 1be4ef894d0..00000000000
--- a/src/components/PageBanner/styles.scss
+++ /dev/null
@@ -1,169 +0,0 @@
-.banner-section {
- // height: calc(100vh - var(--global-header-height) - 10rem);
-
- .banner-container {
- height: 100%;
- width: 100%;
-
- .banner-info {
- margin-top: 5rem;
- }
-
- .banner-title-wrap {
- }
-
- .banner-sub-title {
- text-align: center;
- font-size: 1.25rem;
- line-height: 1.5;
- color: var(--global-colors-text);
- margin-top: 2rem;
- font-weight: normal;
- }
-
- .banner-title {
- font-size: 3.3rem;
- line-height: 125%;
- font-weight: 700;
- letter-spacing: -1.232px;
- font-family: 'Montserrat';
- text-align: center;
- color: var(--global-colors-text-black);
- .highlight {
- color: var(--ifm-color-primary);
- }
- }
-
- .banner-buttons {
- display: flex;
- justify-content: center;
- align-items: center;
- margin-top: 4rem;
-
- .button {
- display: flex;
- gap: 0.25rem;
- align-items: center;
- padding: 0.75rem 2.4rem;
- font-size: var(--global-font-size-default);
- border: none;
- transition: all 0.3s;
- font-weight: 500;
- border: 1px solid transparent;
-
- &:hover {
- box-shadow: 0px 6px 12px rgba(17, 166, 121, 0.28);
- }
-
- & + .button {
- margin-left: 2rem;
- }
-
- &.primary {
- background-color: var(--ifm-color-primary);
- color: var(--global-colors-white);
-
- &:hover {
- box-shadow: 0px 6px 12px rgba(17, 166, 121, 0.28);
- }
- }
-
- &.default {
- background-color: #f0f1fc;
- color: var(--ifm-color-primary);
-
- &:hover {
- box-shadow: 0px 6px 12px rgba(17, 166, 121, 0.28);
- }
- }
-
- &.ghost {
- border: 1px solid var(--ifm-color-primary);
- color: var(--ifm-color-primary);
- background-color: #ffffff;
-
- &:hover {
- box-shadow: 0px 6px 12px rgba(17, 166, 121, 0.28);
- }
- }
- }
- }
-
- .banner-img-wrap {
- max-width: 45rem;
- // margin-left: 3rem;
- margin-top: 1rem;
- }
- }
-}
-
-@media screen and (min-width: 1300px) and (max-width: 1600px) {
- .banner-section {
- // height: calc(100vh - var(--global-header-height) - 10rem);
- }
-}
-
-@media (max-width: 1299px) {
- .banner-section {
- height: auto;
- }
-}
-
-@media (min-width: 1536px) {
- .banner-info {
- margin-top: 2.5rem !important;
- margin-bottom: 4rem;
- }
-
- .banner-buttons {
- margin-top: 2.5rem !important;
- }
-}
-
-@media (max-width: 996px) {
- .banner-section {
- height: auto;
- padding: 0;
-
- .banner-container {
- flex-direction: column-reverse;
- justify-content: space-around;
-
- .banner-img-wrap {
- margin-top: 3rem;
- max-width: 90%;
- margin-left: 0;
- }
-
- .banner-info {
- margin-top: 2rem;
- .banner-title {
- font-family: 'Montserrat';
- font-size: 1.5rem;
- line-height: 1.5;
- font-weight: 700;
- }
- .banner-sub-title {
- font-size: 1rem;
- margin-top: 1.2rem;
- font-weight: 400;
- }
- }
- .banner-buttons {
- flex-direction: column;
- align-items: center;
-
- .button {
- min-width: 10rem;
- width: max-content;
- justify-content: center;
- font-weight: normal;
- }
- .button + .button {
- margin-left: 0;
- margin-top: 1rem;
- }
- }
- }
- }
-}
diff --git a/src/components/achievement-banner/achievement-banner.data.ts
b/src/components/achievement-banner/achievement-banner.data.ts
deleted file mode 100644
index 14bae8817c9..00000000000
--- a/src/components/achievement-banner/achievement-banner.data.ts
+++ /dev/null
@@ -1,6 +0,0 @@
-export const AchievementBannerItemsData = [
- { title: '14K+', content: 'Github stars' },
- { title: '10000+', content: 'Mid-to-large enterprises using it' },
- { title: '710+', content: 'Total contributors' },
- { title: '120+', content: 'Monthly active contributors' },
-];
diff --git a/src/components/achievement-banner/achievement-banner.scss
b/src/components/achievement-banner/achievement-banner.scss
deleted file mode 100644
index aa5409dcf5a..00000000000
--- a/src/components/achievement-banner/achievement-banner.scss
+++ /dev/null
@@ -1,31 +0,0 @@
-.achievement-banner-wrapper {
- display: flex;
- margin-bottom: 5rem;
-
- .achievement-banner-item {
- width: 300px;
- text-align: center;
- color: var(--global-colors-text-secondary);
- font-size: 1.25rem;
- line-height: 1.6;
-
- div~div {
- margin-top: 0.25rem;
- }
-
- .highlight {
- color: #1D1D1D;
- font-weight: 700;
- font-size: 2.5rem;
- line-height: 140%;
- font-family: 'Montserrat';
- }
- }
-}
-
-@media (min-width:1536px) {
- .achievement-banner-wrapper {
- margin-bottom: 60px;
- margin-top: 20px;
- }
-}
\ No newline at end of file
diff --git a/src/components/achievement-banner/achievement-banner.tsx
b/src/components/achievement-banner/achievement-banner.tsx
deleted file mode 100644
index 569549257ce..00000000000
--- a/src/components/achievement-banner/achievement-banner.tsx
+++ /dev/null
@@ -1,18 +0,0 @@
-import React from 'react';
-import { AchievementBannerItemsData } from './achievement-banner.data';
-import './achievement-banner.scss';
-
-export function AchievementBanner() {
- return (
- <section
- className="container achievement-banner-wrapper mt-4 flex-col
lg:flex-row items-center lg:mt-[2.5rem]"
- >
- {AchievementBannerItemsData.map(({ title, content }) => (
- <div className="achievement-banner-item" key={title}>
- <div className="highlight">{title}</div>
- <div>{content}</div>
- </div>
- ))}
- </section>
- );
-}
diff --git a/src/components/home-next/NavbarNext.scss
b/src/components/home-next/NavbarNext.scss
index abf1c391f35..dbfc93c5dab 100644
--- a/src/components/home-next/NavbarNext.scss
+++ b/src/components/home-next/NavbarNext.scss
@@ -9,7 +9,6 @@
--nb-cream-light: #FAF6EE;
--nb-yellow: #FFD23F;
--nb-ink: #0F1A14;
- --nb-mono: 'JetBrains Mono', 'IBM Plex Mono', ui-monospace,
SFMono-Regular, Menlo, monospace;
position: sticky;
top: var(--home-next-banner-height, 0px);
diff --git a/src/components/home-next/sections/CommunitySection.scss
b/src/components/home-next/sections/CommunitySection.scss
index 181b086ca8d..c7d598130c1 100644
--- a/src/components/home-next/sections/CommunitySection.scss
+++ b/src/components/home-next/sections/CommunitySection.scss
@@ -9,8 +9,6 @@
--cn-yellow: #FFD23F;
--cn-yellow-bright: #FFE066;
--cn-ink: #0F1A14;
- --cn-mono: 'JetBrains Mono', 'IBM Plex Mono', ui-monospace,
SFMono-Regular, Menlo, monospace;
- --cn-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI',
sans-serif;
position: relative;
overflow: hidden;
diff --git a/src/components/home-next/sections/DeploymentSection.scss
b/src/components/home-next/sections/DeploymentSection.scss
index faa1dea2829..e92e35b1b25 100644
--- a/src/components/home-next/sections/DeploymentSection.scss
+++ b/src/components/home-next/sections/DeploymentSection.scss
@@ -10,14 +10,12 @@
--dn-cream-warm: #EFE6D2;
--dn-yellow: #FFD23F;
--dn-ink: #0F1A14;
- --dn-mono: 'JetBrains Mono', 'IBM Plex Mono', ui-monospace,
SFMono-Regular, Menlo, monospace;
- --dn-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI',
sans-serif;
position: relative;
padding: 84px 0 140px;
background: var(--dn-cream);
color: var(--dn-ink);
- font-family: var(--dn-sans);
+ font-family: var(--font-family-base);
&__header {
width: 100%;
diff --git a/src/components/home-next/sections/EcosystemSection.scss
b/src/components/home-next/sections/EcosystemSection.scss
index f77abbdbf17..d1f8935b26b 100644
--- a/src/components/home-next/sections/EcosystemSection.scss
+++ b/src/components/home-next/sections/EcosystemSection.scss
@@ -18,8 +18,6 @@
--en-yellow: #FFD23F;
--en-yellow-bright: #FFE066;
--en-ink: #0F1A14;
- --en-mono: 'JetBrains Mono', 'IBM Plex Mono', ui-monospace,
SFMono-Regular, Menlo, monospace;
- --en-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI',
sans-serif;
position: relative;
padding: 120px 56px 148px;
@@ -27,7 +25,7 @@
isolation: isolate;
background: var(--en-cream);
color: var(--en-ink);
- font-family: var(--en-sans);
+ font-family: var(--font-family-base);
&::before {
content: none;
diff --git a/src/components/home-next/sections/FeaturesSection.scss
b/src/components/home-next/sections/FeaturesSection.scss
index 42526b1c228..48d7aefaf71 100644
--- a/src/components/home-next/sections/FeaturesSection.scss
+++ b/src/components/home-next/sections/FeaturesSection.scss
@@ -13,14 +13,12 @@
--fn-yellow: #FFD23F;
--fn-coral: #FF5C39;
--fn-ink: #0F1A14;
- --fn-mono: 'JetBrains Mono', 'IBM Plex Mono', ui-monospace,
SFMono-Regular, Menlo, monospace;
- --fn-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI',
sans-serif;
--fn-card-stage-y: 38%;
position: relative;
background: var(--fn-cream);
color: var(--fn-ink);
- font-family: var(--fn-sans);
+ font-family: var(--font-family-base);
&__header {
width: 100%;
@@ -378,7 +376,7 @@
justify-content: center;
background: var(--fn-green-deep);
color: var(--fn-cream-light);
- font-family: var(--fn-mono);
+ font-family: var(--font-mono);
font-size: 18px;
font-weight: 800;
box-shadow:
@@ -399,7 +397,7 @@
color: var(--fn-green-darker);
border: 1px solid rgba(6, 70, 50, 0.08);
box-shadow: 0 12px 30px rgba(6, 70, 50, 0.12);
- font-family: var(--fn-mono);
+ font-family: var(--font-mono);
font-size: 11px;
font-weight: 800;
letter-spacing: 0.08em;
diff --git a/src/components/home-next/sections/HeroSection.scss
b/src/components/home-next/sections/HeroSection.scss
index 0a779962f2a..9df3e16e829 100644
--- a/src/components/home-next/sections/HeroSection.scss
+++ b/src/components/home-next/sections/HeroSection.scss
@@ -11,8 +11,6 @@
--hn-yellow-bright: #FFE066;
--hn-coral: #FF5C39;
--hn-ink: #0F1A14;
- --hn-mono: 'JetBrains Mono', 'IBM Plex Mono', ui-monospace,
SFMono-Regular, Menlo, monospace;
- --hn-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI',
sans-serif;
}
// ─── Hero wrapper
─────────────────────────────────────────────────────────────
@@ -22,7 +20,7 @@
overflow: hidden;
background: var(--hn-green-dark);
color: var(--hn-cream-light);
- font-family: var(--hn-sans);
+ font-family: var(--font-family-base);
padding-bottom: 2.5rem;
// ── Background layers ──────────────────────────────────────────────────
@@ -117,7 +115,7 @@
&__title {
// override Docusaurus heading defaults
@include type.hero-title;
- font-family: var(--hn-mono) !important;
+ font-family: var(--font-mono) !important;
color: var(--hn-cream-light) !important;
margin: 0 !important;
display: flex;
@@ -309,7 +307,7 @@
background: var(--hn-yellow);
color: var(--hn-ink);
- font-family: var(--hn-mono);
+ font-family: var(--font-mono);
font-size: 11px;
font-weight: 700;
padding: 8px 12px;
@@ -400,7 +398,7 @@
border-radius: 10px;
border: 1px solid rgba(245, 239, 228, 0.1);
overflow: hidden;
- font-family: 'JetBrains Mono', 'IBM Plex Mono', ui-monospace,
SFMono-Regular, Menlo, monospace;
+ font-family: var(--font-mono);
box-shadow:
0 30px 60px -20px rgba(0, 0, 0, 0.5),
0 0 0 1px rgba(255, 210, 63, 0.05);
@@ -544,7 +542,7 @@
color: var(--hn-ink);
border: 0;
border-radius: 4px;
- font-family: var(--hn-mono);
+ font-family: var(--font-mono);
font-size: 10.5px;
font-weight: 800;
letter-spacing: 0.12em;
@@ -634,7 +632,7 @@
border: 1px solid rgba(15, 26, 20, 0.08);
border-radius: 10px;
overflow: hidden;
- font-family: var(--hn-mono);
+ font-family: var(--font-mono);
box-shadow:
0 24px 48px -22px rgba(0, 0, 0, 0.45),
0 0 0 1px rgba(15, 26, 20, 0.04);
@@ -711,7 +709,7 @@
}
&--title {
- font-family: var(--hn-sans);
+ font-family: var(--font-family-base);
font-size: 12.5px;
color: var(--hn-ink);
font-weight: 600;
@@ -771,7 +769,7 @@
box-shadow:
0 30px 60px -20px rgba(0, 0, 0, 0.45),
0 0 0 1px rgba(255, 210, 63, 0.04);
- font-family: 'JetBrains Mono', 'IBM Plex Mono', ui-monospace,
SFMono-Regular, Menlo, monospace;
+ font-family: var(--font-mono);
&__head {
display: flex;
@@ -884,7 +882,7 @@
}
&__title {
- font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI',
sans-serif;
+ font-family: var(--font-family-base);
font-size: 12.5px;
font-weight: 600;
color: #FAF6EE;
@@ -1056,7 +1054,7 @@
align-items: center;
padding: 10px 14px;
border-bottom: 1px solid rgba(245, 239, 228, 0.06);
- font-family: 'JetBrains Mono', 'IBM Plex Mono', ui-monospace,
SFMono-Regular, Menlo, monospace;
+ font-family: var(--font-mono);
font-size: 9.5px;
letter-spacing: 0.14em;
text-transform: uppercase;
@@ -1129,7 +1127,7 @@
display: flex;
justify-content: space-between;
align-items: baseline;
- font-family: 'JetBrains Mono', 'IBM Plex Mono', ui-monospace,
SFMono-Regular, Menlo, monospace;
+ font-family: var(--font-mono);
margin-bottom: 6px;
}
@@ -1226,7 +1224,7 @@
top: -16px;
left: 50%;
transform: translateX(-50%);
- font-family: 'JetBrains Mono', 'IBM Plex Mono', ui-monospace,
SFMono-Regular, Menlo, monospace;
+ font-family: var(--font-mono);
font-size: 9px;
color: rgba(245, 239, 228, 0.5);
opacity: 0;
@@ -1235,7 +1233,7 @@
}
&__bar-label {
- font-family: 'JetBrains Mono', 'IBM Plex Mono', ui-monospace,
SFMono-Regular, Menlo, monospace;
+ font-family: var(--font-mono);
font-size: 9px;
color: rgba(245, 239, 228, 0.45);
letter-spacing: 0.06em;
@@ -1252,7 +1250,7 @@
display: inline-flex;
align-items: center;
gap: 5px;
- font-family: 'JetBrains Mono', 'IBM Plex Mono', ui-monospace,
SFMono-Regular, Menlo, monospace;
+ font-family: var(--font-mono);
font-size: 9px;
color: rgba(245, 239, 228, 0.6);
letter-spacing: 0.04em;
diff --git a/src/components/shared/_typography.scss
b/src/components/shared/_typography.scss
index 17fa2a493cd..4a3f5f2755b 100644
--- a/src/components/shared/_typography.scss
+++ b/src/components/shared/_typography.scss
@@ -4,8 +4,11 @@
// component styling. The goal is to make the type system consistent across
// the new homepage family.
-$font-mono: 'JetBrains Mono', 'IBM Plex Mono', ui-monospace, SFMono-Regular,
Menlo, monospace;
-$font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
+// Sourced from the global CSS variables defined in src/scss/custom.scss.
+// Use $font-mono / $font-sans in SCSS contexts only; runtime styles should
+// reference var(--font-mono) / var(--font-family-base) directly.
+$font-mono: var(--font-mono);
+$font-sans: var(--font-family-base);
$display-xl: clamp(40px, 4.4vw, 62px);
$display-lg: clamp(40px, 4.4vw, 52px);
diff --git a/src/components/summit-modal/summit-modal.tsx
b/src/components/summit-modal/summit-modal.tsx
index 214257dc60c..1c783b2bccb 100644
--- a/src/components/summit-modal/summit-modal.tsx
+++ b/src/components/summit-modal/summit-modal.tsx
@@ -36,7 +36,7 @@ export function SummitModal() {
footer={null}
width={410}
>
- <div style={{fontFamily:'Inter'}}>
+ <div style={{ fontFamily: 'var(--font-family-base)' }}>
<div
style={{ background: 'linear-gradient(263deg, #410DE7
0.83%, #8F4AFB 99.17%)' }}
className="h-[160px] w-full rounded-t-lg pl-[44px]
pt-[44px]"
diff --git a/src/components/use-cases-next/AIAnalyticsNext.scss
b/src/components/use-cases-next/AIAnalyticsNext.scss
index 9b9d53cca1d..2153c7b21d2 100644
--- a/src/components/use-cases-next/AIAnalyticsNext.scss
+++ b/src/components/use-cases-next/AIAnalyticsNext.scss
@@ -5,7 +5,7 @@ $ai-bp-xs: 480px;
$ai-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
@mixin ai-mono-caps($size: 12px, $tracking: 0.14em, $weight: 500) {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-size: $size;
font-weight: $weight;
letter-spacing: $tracking;
@@ -13,7 +13,7 @@ $ai-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
@mixin ai-display-mono($weight: 700) {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-weight: $weight;
text-transform: uppercase;
letter-spacing: -0.018em;
@@ -64,13 +64,10 @@ $ai-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
--ink: #0f1a14;
--ink-soft: #1b2a22;
- --mono: 'JetBrains Mono', 'IBM Plex Mono', ui-monospace, SFMono-Regular,
Menlo, monospace;
- --sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
-
--container: 1320px;
--gutter: 56px;
- font-family: var(--sans);
+ font-family: var(--font-family-base);
background: var(--doris-green-dark);
color: var(--cream-light);
-webkit-font-smoothing: antialiased;
@@ -310,7 +307,7 @@ $ai-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
&-title {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-weight: 700;
text-transform: uppercase;
letter-spacing: -0.035em;
@@ -328,7 +325,7 @@ $ai-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
&-sub {
- font-family: var(--sans);
+ font-family: var(--font-family-base);
font-size: 15px;
line-height: 1.55;
color: rgba(245, 239, 228, 0.85);
@@ -426,7 +423,7 @@ $ai-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
.cf-title {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-weight: 700;
font-size: 26px;
text-transform: uppercase;
@@ -467,7 +464,7 @@ $ai-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
li {
- font-family: var(--sans);
+ font-family: var(--font-family-base);
font-size: 14px;
word-spacing: -0.12em;
color: var(--cream-light);
@@ -510,7 +507,7 @@ $ai-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
li {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-size: 13px;
word-spacing: -0.1em;
color: var(--cream-light);
@@ -575,7 +572,7 @@ $ai-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
&-title {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-weight: 700;
text-transform: uppercase;
font-size: 15px;
@@ -586,7 +583,7 @@ $ai-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
&-desc {
- font-family: var(--sans);
+ font-family: var(--font-family-base);
font-size: 12.5px;
line-height: 1.5;
color: rgba(245, 239, 228, 0.78);
@@ -623,7 +620,7 @@ $ai-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
background: transparent;
border: 1px solid rgba(245, 239, 228, 0.3);
color: var(--cream-light);
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-size: 18px;
cursor: pointer;
display: inline-flex;
@@ -718,7 +715,7 @@ $ai-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
.tech-layer-heading {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-weight: 700;
text-transform: uppercase;
letter-spacing: -0.02em;
@@ -770,7 +767,7 @@ $ai-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
.req-title {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-weight: 700;
text-transform: uppercase;
font-size: 16px;
@@ -871,7 +868,7 @@ $ai-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
.case-title {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-weight: 700;
text-transform: uppercase;
font-size: 22px;
@@ -884,7 +881,7 @@ $ai-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
.case-quote {
- font-family: var(--sans);
+ font-family: var(--font-family-base);
font-style: italic;
font-size: 16px;
line-height: 1.5;
@@ -919,7 +916,7 @@ $ai-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
gap: 8px;
li {
- font-family: var(--sans);
+ font-family: var(--font-family-base);
font-size: 14px;
word-spacing: -0.12em;
color: var(--cream-light);
@@ -969,7 +966,7 @@ $ai-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
.cta-title {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-weight: 700;
text-transform: uppercase;
font-size: clamp(40px, 4.4vw, 62px);
diff --git a/src/components/use-cases-next/CustomerFacingAnalyticsNext.scss
b/src/components/use-cases-next/CustomerFacingAnalyticsNext.scss
index d53ea681668..fb7ada6f01d 100644
--- a/src/components/use-cases-next/CustomerFacingAnalyticsNext.scss
+++ b/src/components/use-cases-next/CustomerFacingAnalyticsNext.scss
@@ -6,7 +6,7 @@ $cfa-bp-xs: 480px;
$cfa-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
@mixin cfa-mono-caps($size: 12px, $tracking: 0.14em, $weight: 500) {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-size: $size;
font-weight: $weight;
letter-spacing: $tracking;
@@ -14,7 +14,7 @@ $cfa-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
@mixin cfa-display-mono($weight: 700) {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-weight: $weight;
text-transform: uppercase;
letter-spacing: -0.018em;
@@ -66,13 +66,10 @@ $cfa-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
--ink: #0f1a14;
--ink-soft: #1b2a22;
- --mono: 'JetBrains Mono', 'IBM Plex Mono', ui-monospace, SFMono-Regular,
Menlo, monospace;
- --sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
-
--container: 1320px;
--gutter: 56px;
- font-family: var(--sans);
+ font-family: var(--font-family-base);
background: var(--doris-green-dark);
color: var(--cream-light);
-webkit-font-smoothing: antialiased;
@@ -312,7 +309,7 @@ $cfa-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
&-title {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-weight: 700;
text-transform: uppercase;
letter-spacing: -0.035em;
@@ -331,7 +328,7 @@ $cfa-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
&-sub {
- font-family: var(--sans);
+ font-family: var(--font-family-base);
font-size: 15px;
line-height: 1.5;
color: rgba(245, 239, 228, 0.85);
@@ -420,7 +417,7 @@ $cfa-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
.cf-title {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-weight: 700;
font-size: 26px;
text-transform: uppercase;
@@ -460,7 +457,7 @@ $cfa-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
li {
- font-family: var(--sans);
+ font-family: var(--font-family-base);
font-size: 14px;
color: var(--cream-light);
padding-left: 18px;
@@ -501,7 +498,7 @@ $cfa-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
li {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-size: 13px;
color: var(--cream-light);
line-height: 1.45;
@@ -565,7 +562,7 @@ $cfa-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
background: transparent;
border: 1px solid rgba(245, 239, 228, 0.3);
color: var(--cream-light);
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-size: 18px;
cursor: pointer;
display: inline-flex;
@@ -659,7 +656,7 @@ $cfa-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
.tech-layer-heading {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-weight: 700;
text-transform: uppercase;
letter-spacing: -0.02em;
@@ -700,7 +697,7 @@ $cfa-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
.req-title {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-weight: 700;
text-transform: uppercase;
font-size: 16px;
@@ -808,7 +805,7 @@ $cfa-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
.case-title {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-weight: 700;
text-transform: uppercase;
font-size: 22px;
@@ -820,7 +817,7 @@ $cfa-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
.case-quote {
- font-family: var(--sans);
+ font-family: var(--font-family-base);
font-style: italic;
font-size: 16px;
line-height: 1.5;
@@ -852,7 +849,7 @@ $cfa-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
gap: 8px;
li {
- font-family: var(--sans);
+ font-family: var(--font-family-base);
font-size: 14px;
color: var(--cream-light);
padding-left: 22px;
@@ -900,7 +897,7 @@ $cfa-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
.cta-title {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-weight: 700;
text-transform: uppercase;
font-size: clamp(40px, 4.4vw, 62px);
diff --git a/src/components/use-cases-next/DataWarehousingNext.scss
b/src/components/use-cases-next/DataWarehousingNext.scss
index 8b201f2351c..eef52dcbdec 100644
--- a/src/components/use-cases-next/DataWarehousingNext.scss
+++ b/src/components/use-cases-next/DataWarehousingNext.scss
@@ -5,7 +5,7 @@ $dw-bp-xs: 480px;
$dw-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
@mixin dw-mono-caps($size: 12px, $tracking: 0.14em, $weight: 500) {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-size: $size;
font-weight: $weight;
letter-spacing: $tracking;
@@ -13,7 +13,7 @@ $dw-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
@mixin dw-display-mono($weight: 700) {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-weight: $weight;
text-transform: uppercase;
letter-spacing: -0.018em;
@@ -64,13 +64,10 @@ $dw-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
--ink: #0f1a14;
--ink-soft: #1b2a22;
- --mono: 'JetBrains Mono', 'IBM Plex Mono', ui-monospace, SFMono-Regular,
Menlo, monospace;
- --sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
-
--container: 1320px;
--gutter: 56px;
- font-family: var(--sans);
+ font-family: var(--font-family-base);
background: var(--doris-green-dark);
color: var(--cream-light);
-webkit-font-smoothing: antialiased;
@@ -310,7 +307,7 @@ $dw-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
&-title {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-weight: 700;
text-transform: uppercase;
letter-spacing: -0.035em;
@@ -328,7 +325,7 @@ $dw-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
&-sub {
- font-family: var(--sans);
+ font-family: var(--font-family-base);
font-size: 15px;
line-height: 1.5;
color: rgba(245, 239, 228, 0.85);
@@ -418,7 +415,7 @@ $dw-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
.cf-title {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-weight: 700;
font-size: 26px;
text-transform: uppercase;
@@ -459,7 +456,7 @@ $dw-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
li {
- font-family: var(--sans);
+ font-family: var(--font-family-base);
font-size: 14px;
word-spacing: -0.12em;
color: var(--cream-light);
@@ -502,7 +499,7 @@ $dw-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
li {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-size: 13px;
word-spacing: -0.1em;
color: var(--cream-light);
@@ -567,7 +564,7 @@ $dw-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
background: transparent;
border: 1px solid rgba(245, 239, 228, 0.3);
color: var(--cream-light);
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-size: 18px;
cursor: pointer;
display: inline-flex;
@@ -645,7 +642,7 @@ $dw-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
.tech-layer-heading {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-weight: 700;
text-transform: uppercase;
letter-spacing: -0.02em;
@@ -690,7 +687,7 @@ $dw-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
.req-title {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-weight: 700;
text-transform: uppercase;
font-size: 16px;
@@ -791,7 +788,7 @@ $dw-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
.case-title {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-weight: 700;
text-transform: uppercase;
font-size: 22px;
@@ -804,7 +801,7 @@ $dw-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
.case-quote {
- font-family: var(--sans);
+ font-family: var(--font-family-base);
font-style: italic;
font-size: 16px;
line-height: 1.5;
@@ -839,7 +836,7 @@ $dw-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
gap: 8px;
li {
- font-family: var(--sans);
+ font-family: var(--font-family-base);
font-size: 14px;
word-spacing: -0.12em;
color: var(--cream-light);
@@ -889,7 +886,7 @@ $dw-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
.cta-title {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-weight: 700;
text-transform: uppercase;
font-size: clamp(40px, 4.4vw, 62px);
diff --git a/src/components/use-cases-next/ObservabilityNext.scss
b/src/components/use-cases-next/ObservabilityNext.scss
index 9fc7e9f6057..f770f9534f7 100644
--- a/src/components/use-cases-next/ObservabilityNext.scss
+++ b/src/components/use-cases-next/ObservabilityNext.scss
@@ -4,7 +4,7 @@ $ob-bp-sm: 700px;
$ob-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
@mixin ob-mono-caps($size: 12px, $tracking: 0.14em, $weight: 500) {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-size: $size;
font-weight: $weight;
letter-spacing: $tracking;
@@ -12,7 +12,7 @@ $ob-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
@mixin ob-display-mono($weight: 700) {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-weight: $weight;
text-transform: uppercase;
letter-spacing: -0.018em;
@@ -63,13 +63,10 @@ $ob-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
--ink: #0f1a14;
--ink-soft: #1b2a22;
- --mono: 'JetBrains Mono', 'IBM Plex Mono', ui-monospace, SFMono-Regular,
Menlo, monospace;
- --sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
-
--container: 1320px;
--gutter: 56px;
- font-family: var(--sans);
+ font-family: var(--font-family-base);
background: var(--doris-green-dark);
color: var(--cream-light);
-webkit-font-smoothing: antialiased;
@@ -328,7 +325,7 @@ $ob-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
&-title {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-weight: 700;
text-transform: uppercase;
letter-spacing: -0.035em;
@@ -346,7 +343,7 @@ $ob-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
&-sub {
- font-family: var(--sans);
+ font-family: var(--font-family-base);
font-size: 15px;
line-height: 1.5;
color: rgba(245, 239, 228, 0.85);
@@ -456,7 +453,7 @@ $ob-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
.cf-title {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-weight: 700;
font-size: 26px;
text-transform: uppercase;
@@ -497,7 +494,7 @@ $ob-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
li {
- font-family: var(--sans);
+ font-family: var(--font-family-base);
font-size: 14px;
word-spacing: -0.12em;
color: var(--cream-light);
@@ -540,7 +537,7 @@ $ob-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
li {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-size: 13px;
word-spacing: -0.1em;
color: var(--cream-light);
@@ -574,7 +571,7 @@ $ob-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
background: transparent;
border: 1px solid rgba(245, 239, 228, 0.3);
color: var(--cream-light);
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-size: 18px;
cursor: pointer;
display: inline-flex;
@@ -652,7 +649,7 @@ $ob-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
.tech-layer-heading {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-weight: 700;
text-transform: uppercase;
letter-spacing: -0.02em;
@@ -704,7 +701,7 @@ $ob-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
.req-title {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-weight: 700;
text-transform: uppercase;
font-size: 16px;
@@ -805,7 +802,7 @@ $ob-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
.case-title {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-weight: 700;
text-transform: uppercase;
font-size: 22px;
@@ -818,7 +815,7 @@ $ob-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
.case-quote {
- font-family: var(--sans);
+ font-family: var(--font-family-base);
font-style: italic;
font-size: 16px;
line-height: 1.5;
@@ -853,7 +850,7 @@ $ob-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
gap: 8px;
li {
- font-family: var(--sans);
+ font-family: var(--font-family-base);
font-size: 14px;
word-spacing: -0.12em;
color: var(--cream-light);
@@ -903,7 +900,7 @@ $ob-ease-out-quint: cubic-bezier(0.2, 0.8, 0.2, 1);
}
.cta-title {
- font-family: var(--mono);
+ font-family: var(--font-mono);
font-weight: 700;
text-transform: uppercase;
font-size: clamp(40px, 4.4vw, 62px);
diff --git a/src/components/why-doris-next/BenchmarkNext.scss
b/src/components/why-doris-next/BenchmarkNext.scss
index 5bc3d9bc144..56eaae9835b 100644
--- a/src/components/why-doris-next/BenchmarkNext.scss
+++ b/src/components/why-doris-next/BenchmarkNext.scss
@@ -23,16 +23,13 @@
--bn-ink: #0F1A14;
--bn-ink-soft: #1B2A22;
- --bn-mono: 'JetBrains Mono', 'IBM Plex Mono', ui-monospace,
SFMono-Regular, Menlo, monospace;
- --bn-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI',
sans-serif;
-
--bn-container: 1320px;
--bn-gutter: 56px;
position: relative;
background: var(--bn-green-dark);
color: var(--bn-cream-light);
- font-family: var(--bn-sans);
+ font-family: var(--font-family-base);
overflow-x: hidden;
* { box-sizing: border-box; }
@@ -54,7 +51,7 @@
display: inline-flex;
align-items: center;
gap: 12px;
- font-family: var(--bn-mono);
+ font-family: var(--font-mono);
font-size: 12px;
font-weight: 500;
letter-spacing: 0.14em;
@@ -76,7 +73,7 @@
align-items: center;
gap: 0.6rem;
padding: 0.95rem 1.5rem;
- font-family: var(--bn-mono);
+ font-family: var(--font-mono);
font-size: 14px;
font-weight: 600;
letter-spacing: 0.04em;
@@ -225,7 +222,7 @@
.b-hero-inner { position: relative; z-index: 5; }
.b-hero-title {
- font-family: var(--bn-mono);
+ font-family: var(--font-mono);
font-weight: 700;
text-transform: uppercase;
letter-spacing: -0.035em;
@@ -239,7 +236,7 @@
}
.b-hero-sub {
- font-family: var(--bn-sans);
+ font-family: var(--font-family-base);
font-size: 15px;
line-height: 1.5;
word-spacing: -0.12em;
@@ -299,7 +296,7 @@
}
.b-cmp-title {
- font-family: var(--bn-mono);
+ font-family: var(--font-mono);
font-weight: 700;
text-transform: uppercase;
font-size: clamp(36px, 4.2vw, 56px);
@@ -345,7 +342,7 @@
}
.b-tab {
- font-family: var(--bn-mono);
+ font-family: var(--font-mono);
font-size: 12.5px;
letter-spacing: 0.12em;
text-transform: uppercase;
@@ -392,7 +389,7 @@
padding: 12px 14px;
background: var(--bn-ink);
color: rgba(245, 239, 228, 0.92);
- font-family: var(--bn-sans);
+ font-family: var(--font-family-base);
font-size: 12.5px;
font-weight: 400;
letter-spacing: 0;
@@ -486,7 +483,7 @@
}
.b-card-title {
- font-family: var(--bn-mono);
+ font-family: var(--font-mono);
font-weight: 700;
text-transform: uppercase;
font-size: 22px;
@@ -497,7 +494,7 @@
}
.b-card-tag {
- font-family: var(--bn-mono);
+ font-family: var(--font-mono);
font-size: 10.5px;
letter-spacing: 0.16em;
text-transform: uppercase;
@@ -506,7 +503,7 @@
}
.b-card-metric {
- font-family: var(--bn-mono);
+ font-family: var(--font-mono);
font-size: 11px;
letter-spacing: 0.18em;
text-transform: uppercase;
@@ -525,7 +522,7 @@
grid-template-columns: 120px 1fr 88px;
gap: 14px;
align-items: center;
- font-family: var(--bn-mono);
+ font-family: var(--font-mono);
font-size: 12.5px;
&.is-doris {
@@ -587,7 +584,7 @@
margin-top: auto;
padding: 14px 0 0;
border-top: 1px dashed rgba(15, 26, 20, 0.20);
- font-family: var(--bn-sans);
+ font-family: var(--font-family-base);
font-size: 13.5px;
line-height: 1.55;
color: rgba(15, 26, 20, 0.72);
@@ -595,7 +592,7 @@
.b-card-tip {
margin-top: 16px;
- font-family: var(--bn-mono);
+ font-family: var(--font-mono);
font-size: 12px;
font-weight: 700;
letter-spacing: 0.14em;
@@ -652,7 +649,7 @@
}
.b-detail-title {
- font-family: var(--bn-mono);
+ font-family: var(--font-mono);
font-weight: 700;
text-transform: uppercase;
font-size: 22px;
@@ -666,7 +663,7 @@
flex-wrap: wrap;
.b-detail-title-sub {
- font-family: var(--bn-mono);
+ font-family: var(--font-mono);
font-size: 11px;
letter-spacing: 0.18em;
text-transform: uppercase;
@@ -678,7 +675,7 @@
.b-detail-legend {
display: flex;
gap: 18px;
- font-family: var(--bn-mono);
+ font-family: var(--font-mono);
font-size: 11px;
letter-spacing: 0.12em;
text-transform: uppercase;
@@ -741,7 +738,7 @@
flex-direction: column;
justify-content: space-between;
align-items: flex-end;
- font-family: var(--bn-mono);
+ font-family: var(--font-mono);
font-size: 10px;
color: rgba(15, 26, 20, 0.55);
letter-spacing: 0.06em;
@@ -835,7 +832,7 @@
top: 0;
background: var(--bn-ink);
color: var(--bn-cream-light);
- font-family: var(--bn-mono);
+ font-family: var(--font-mono);
font-size: 11px;
padding: 5px 9px;
border-radius: 4px;
@@ -850,7 +847,7 @@
.b-cluster-label {
margin-top: 6px;
- font-family: var(--bn-mono);
+ font-family: var(--font-mono);
font-size: 10px;
letter-spacing: 0.02em;
color: rgba(15, 26, 20, 0.58);
@@ -865,7 +862,7 @@
.b-detail-env {
margin-top: 18px;
- font-family: var(--bn-mono);
+ font-family: var(--font-mono);
font-size: 12px;
letter-spacing: 0.02em;
line-height: 1.6;
@@ -899,7 +896,7 @@
.b-detail-foot {
margin-top: 14px;
- font-family: var(--bn-mono);
+ font-family: var(--font-mono);
font-size: 11.5px;
color: rgba(15, 26, 20, 0.58);
}
@@ -946,7 +943,7 @@
}
.b-method-link {
- font-family: var(--bn-mono);
+ font-family: var(--font-mono);
font-size: 12px;
font-weight: 600;
letter-spacing: 0.12em;
@@ -977,7 +974,7 @@
}
.b-method-label {
- font-family: var(--bn-mono);
+ font-family: var(--font-mono);
font-size: 11px;
font-weight: 700;
letter-spacing: 0.18em;
@@ -986,14 +983,14 @@
}
.b-method-body {
- font-family: var(--bn-sans);
+ font-family: var(--font-family-base);
font-size: 13.5px;
line-height: 1.55;
color: rgba(245, 239, 228, 0.82);
}
.b-repro-title {
- font-family: var(--bn-mono);
+ font-family: var(--font-mono);
font-weight: 700;
text-transform: uppercase;
font-size: clamp(36px, 4.2vw, 56px);
@@ -1058,7 +1055,7 @@
}
.b-step-num {
- font-family: var(--bn-mono);
+ font-family: var(--font-mono);
font-weight: 700;
font-size: 24px;
color: rgba(245, 239, 228, 0.55);
@@ -1067,7 +1064,7 @@
}
.b-step-title {
- font-family: var(--bn-mono);
+ font-family: var(--font-mono);
font-weight: 700;
text-transform: uppercase;
font-size: 14px;
@@ -1077,7 +1074,7 @@
}
.b-step-body {
- font-family: var(--bn-sans);
+ font-family: var(--font-family-base);
font-size: 14px;
line-height: 1.55;
color: rgba(245, 239, 228, 0.72);
@@ -1100,7 +1097,7 @@
pre[class*='language-'] {
margin: 0;
padding: 28px 28px;
- font-family: var(--bn-mono);
+ font-family: var(--font-mono);
font-size: 13.5px;
line-height: 1.75;
color: var(--bn-cream-light);
@@ -1127,7 +1124,7 @@
padding: 14px 18px;
background: #050706;
border-bottom: 1px solid rgba(245, 239, 228, 0.08);
- font-family: var(--bn-mono);
+ font-family: var(--font-mono);
font-size: 11px;
letter-spacing: 0.14em;
text-transform: uppercase;
@@ -1198,7 +1195,7 @@
}
.b-cta-title {
- font-family: var(--bn-mono);
+ font-family: var(--font-mono);
font-weight: 700;
text-transform: uppercase;
font-size: clamp(36px, 4.2vw, 56px);
diff --git a/src/components/why-doris-next/CompareNext.scss
b/src/components/why-doris-next/CompareNext.scss
index eb42628c7da..7ae764ac4d9 100644
--- a/src/components/why-doris-next/CompareNext.scss
+++ b/src/components/why-doris-next/CompareNext.scss
@@ -13,8 +13,6 @@
--cn-yellow-bright: #FFE066;
--cn-coral: #FF5C39;
--cn-ink: #0F1A14;
- --cn-mono: 'JetBrains Mono', 'IBM Plex Mono', ui-monospace,
SFMono-Regular, Menlo, monospace;
- --cn-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI',
sans-serif;
// ── Responsive tokens ──────────────────────────────────────────────────
// Fluid values use clamp(min, preferred, max). Preferred term scales
@@ -56,7 +54,7 @@
min-height: 100vh;
background: var(--cn-cream-light);
color: var(--cn-ink);
- font-family: var(--cn-sans);
+ font-family: var(--font-family-base);
overflow-x: hidden;
// ── Background ─────────────────────────────────────────────────────────
diff --git a/src/components/why-doris-next/KeyFeaturesNext.scss
b/src/components/why-doris-next/KeyFeaturesNext.scss
index ce9d33afe1b..e6611bfe289 100644
--- a/src/components/why-doris-next/KeyFeaturesNext.scss
+++ b/src/components/why-doris-next/KeyFeaturesNext.scss
@@ -13,8 +13,6 @@
--kf-coral: #FF5C39;
--kf-ink: #0F1A14;
--kf-ink-soft: #1B2A22;
- --kf-mono: 'JetBrains Mono', 'IBM Plex Mono', ui-monospace,
SFMono-Regular, Menlo, monospace;
- --kf-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI',
sans-serif;
--kf-container: 1320px;
--kf-gutter: 56px;
@@ -22,7 +20,7 @@
min-height: 100vh;
background: var(--kf-green-dark);
color: var(--kf-cream-light);
- font-family: var(--kf-sans);
+ font-family: var(--font-family-base);
overflow-x: hidden;
* {
@@ -41,7 +39,7 @@
display: inline-flex;
align-items: center;
gap: 12px;
- font-family: var(--kf-mono);
+ font-family: var(--font-mono);
font-size: 12px;
font-weight: 500;
letter-spacing: 0.14em;
@@ -82,7 +80,7 @@
}
.kf-next__section-title {
- font-family: var(--kf-mono);
+ font-family: var(--font-mono);
font-weight: 700;
text-transform: uppercase;
letter-spacing: -0.035em;
@@ -234,7 +232,7 @@
}
.kf-next__hero-title {
- font-family: var(--kf-mono);
+ font-family: var(--font-mono);
font-weight: 700;
text-transform: uppercase;
letter-spacing: -0.035em;
@@ -268,7 +266,7 @@
display: inline-flex;
align-items: center;
gap: 14px;
- font-family: var(--kf-mono);
+ font-family: var(--font-mono);
font-size: 11px;
font-weight: 500;
letter-spacing: 0.18em;
@@ -342,7 +340,7 @@
border: 0;
outline: none;
color: var(--kf-cream-light);
- font-family: var(--kf-mono);
+ font-family: var(--font-mono);
font-size: 16px;
letter-spacing: 0.01em;
}
@@ -383,7 +381,7 @@
display: inline-flex;
align-items: baseline;
gap: 10px;
- font-family: var(--kf-mono);
+ font-family: var(--font-mono);
font-size: 12px;
font-weight: 500;
letter-spacing: 0.18em;
@@ -499,7 +497,7 @@
border: 1px solid rgba(245, 239, 228, 0.24);
background: rgba(15, 26, 20, 0.24);
color: var(--kf-cream-light);
- font-family: var(--kf-mono);
+ font-family: var(--font-mono);
font-size: 10px;
font-weight: 700;
letter-spacing: 0.12em;
@@ -511,7 +509,7 @@
.kf-next__tile-name {
display: block;
- font-family: var(--kf-mono);
+ font-family: var(--font-mono);
font-weight: 700;
font-size: clamp(13px, 1.05vw, 16px);
line-height: 1.15;
@@ -563,7 +561,7 @@
.kf-next__tile-tags {
flex: 1 1 auto;
- font-family: var(--kf-mono);
+ font-family: var(--font-mono);
font-size: clamp(10px, 0.8vw, 11px);
letter-spacing: 0.06em;
word-spacing: -0.08em;
@@ -580,7 +578,7 @@
display: inline-flex;
align-items: center;
justify-content: center;
- font-family: var(--kf-mono);
+ font-family: var(--font-mono);
font-size: 13px;
background: rgba(15, 26, 20, 0.08);
transition:
diff --git a/src/components/why-doris-next/UsersNext.scss
b/src/components/why-doris-next/UsersNext.scss
index fa59530763b..85a3bfb3cd5 100644
--- a/src/components/why-doris-next/UsersNext.scss
+++ b/src/components/why-doris-next/UsersNext.scss
@@ -8,15 +8,13 @@
--un-yellow: #FFD23F;
--un-yellow-bright: #FFE066;
--un-ink: #0F1A14;
- --un-mono: 'JetBrains Mono', 'IBM Plex Mono', ui-monospace,
SFMono-Regular, Menlo, monospace;
- --un-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI',
sans-serif;
--un-container: 1320px;
--un-gutter: 56px;
position: relative;
background: var(--un-paper);
color: var(--un-ink);
- font-family: var(--un-sans);
+ font-family: var(--font-family-base);
overflow-x: hidden;
* {
@@ -95,7 +93,7 @@
}
.users-next__hero-title {
- font-family: var(--un-mono);
+ font-family: var(--font-mono);
font-weight: 700;
text-transform: uppercase;
letter-spacing: -0.035em;
@@ -133,7 +131,7 @@
padding: 14px 28px;
background: var(--un-yellow);
color: var(--un-ink);
- font-family: var(--un-mono);
+ font-family: var(--font-mono);
font-weight: 700;
font-size: 14px;
letter-spacing: 0.04em;
diff --git a/src/components/why-doris-next/sections/ComparisonTableSection.scss
b/src/components/why-doris-next/sections/ComparisonTableSection.scss
index 27f50efc86e..10ea5bc8c90 100644
--- a/src/components/why-doris-next/sections/ComparisonTableSection.scss
+++ b/src/components/why-doris-next/sections/ComparisonTableSection.scss
@@ -88,7 +88,7 @@
&__cell {
padding: 22px 26px;
- font-family: var(--cn-sans);
+ font-family: var(--font-family-base);
&--label {
border-right: 1px solid rgba(245, 239, 228, 0.06);
diff --git a/src/scss/custom.scss b/src/scss/custom.scss
index 5106caa62b0..56951afe636 100644
--- a/src/scss/custom.scss
+++ b/src/scss/custom.scss
@@ -22,17 +22,32 @@
@font-face {
font-family: 'Inter';
- src: url('/fonts/Inter-VariableFont_opsz,wght.ttf');
+ src: url('/fonts/Inter-VariableFont_opsz,wght.ttf')
format('truetype-variations');
+ font-weight: 100 900;
+ font-display: swap;
}
@font-face {
- font-family: 'Noto Sans';
- src: url('/fonts/NotoSansSC-VariableFont_wght.ttf');
+ font-family: 'Noto Sans SC';
+ src: url('/fonts/NotoSansSC-VariableFont_wght.ttf')
format('truetype-variations');
+ font-weight: 100 900;
+ font-display: swap;
}
@font-face {
- font-family: 'Montserrat';
- src: url('/fonts/Montserrat-VariableFont_wght.ttf');
+ font-family: 'JetBrains Mono';
+ src: url('/fonts/JetBrainsMono-VariableFont_wght.ttf')
format('truetype-variations');
+ font-weight: 100 800;
+ font-display: swap;
+}
+
+:root {
+ --font-sans-en: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI',
'Helvetica Neue', Arial, sans-serif;
+ --font-sans-zh: 'Noto Sans SC', 'Inter', -apple-system,
BlinkMacSystemFont, 'Helvetica Neue', Arial, sans-serif;
+ --font-mono: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo,
Consolas, monospace;
+ --font-family-base: var(--font-sans-en);
+ --ifm-font-family-base: var(--font-sans-en);
+ --ifm-font-family-monospace: var(--font-mono);
}
@layer utilities {
@@ -54,19 +69,16 @@
}
html[lang='zh-Hans-CN'] {
- --font-family-base: 'Noto Sans';
- font-family: 'Noto Sans', 'Source Sans Pro', 'Helvetica Neue', Helvetica,
Arial, sans-serif;
+ --font-family-base: var(--font-sans-zh);
+ --ifm-font-family-base: var(--font-sans-zh);
+ font-family: var(--font-family-base);
}
html[lang='en-US'] {
- --font-family-base: 'Inter';
- font-family: 'Inter', 'MiSans Latin', 'Montserrat', 'Source Sans Pro',
'Helvetica Neue', Helvetica, Arial,
- sans-serif;
+ --font-family-base: var(--font-sans-en);
+ --ifm-font-family-base: var(--font-sans-en);
+ font-family: var(--font-family-base);
}
-
-// :root {
-// --font-family-base: 'SF Pro Display', 'SF Pro Icons', 'Helvetica Neue',
Helvetica, Arial, sans-serif;
-// }
.markdown :where(p, h1, h2, h3, h4, h5, h6, li, blockquote) {
font-family: var(--font-family-base);
color: #1f1f26;
diff --git a/static/animations/what-is-apache-doris-intro.html
b/static/animations/what-is-apache-doris-intro.html
index 1cafd6fdf5f..6e9ab6ab154 100644
--- a/static/animations/what-is-apache-doris-intro.html
+++ b/static/animations/what-is-apache-doris-intro.html
@@ -4,10 +4,13 @@
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Apache Doris · 30s Overview</title>
-<link rel="preconnect" href="https://fonts.googleapis.com">
-<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
-<link
href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap"
rel="stylesheet">
<style>
+ @font-face {
+ font-family: 'Inter';
+ src: url('/fonts/Inter-VariableFont_opsz,wght.ttf')
format('truetype-variations');
+ font-weight: 100 900;
+ font-display: swap;
+ }
:root {
--doris-green: #11A679;
--doris-green-dark: #06805F;
diff --git a/static/fonts/JetBrainsMono-VariableFont_wght.ttf
b/static/fonts/JetBrainsMono-VariableFont_wght.ttf
new file mode 100644
index 00000000000..5b7a5266cbd
Binary files /dev/null and b/static/fonts/JetBrainsMono-VariableFont_wght.ttf
differ
diff --git a/static/fonts/Montserrat-Black.otf
b/static/fonts/Montserrat-Black.otf
deleted file mode 100644
index 5e5a91632aa..00000000000
Binary files a/static/fonts/Montserrat-Black.otf and /dev/null differ
diff --git a/static/fonts/Montserrat-BlackItalic.otf
b/static/fonts/Montserrat-BlackItalic.otf
deleted file mode 100644
index f4d5d3b9ec8..00000000000
Binary files a/static/fonts/Montserrat-BlackItalic.otf and /dev/null differ
diff --git a/static/fonts/Montserrat-Bold.otf b/static/fonts/Montserrat-Bold.otf
deleted file mode 100644
index cdfb83df2f2..00000000000
Binary files a/static/fonts/Montserrat-Bold.otf and /dev/null differ
diff --git a/static/fonts/Montserrat-BoldItalic.otf
b/static/fonts/Montserrat-BoldItalic.otf
deleted file mode 100644
index d57ff9a4798..00000000000
Binary files a/static/fonts/Montserrat-BoldItalic.otf and /dev/null differ
diff --git a/static/fonts/Montserrat-ExtraBold.otf
b/static/fonts/Montserrat-ExtraBold.otf
deleted file mode 100644
index db86f49e5c5..00000000000
Binary files a/static/fonts/Montserrat-ExtraBold.otf and /dev/null differ
diff --git a/static/fonts/Montserrat-ExtraBoldItalic.otf
b/static/fonts/Montserrat-ExtraBoldItalic.otf
deleted file mode 100644
index f7a042a7b95..00000000000
Binary files a/static/fonts/Montserrat-ExtraBoldItalic.otf and /dev/null differ
diff --git a/static/fonts/Montserrat-ExtraLight.otf
b/static/fonts/Montserrat-ExtraLight.otf
deleted file mode 100644
index 5a66f53aa29..00000000000
Binary files a/static/fonts/Montserrat-ExtraLight.otf and /dev/null differ
diff --git a/static/fonts/Montserrat-ExtraLightItalic.otf
b/static/fonts/Montserrat-ExtraLightItalic.otf
deleted file mode 100644
index 31b13517d35..00000000000
Binary files a/static/fonts/Montserrat-ExtraLightItalic.otf and /dev/null differ
diff --git a/static/fonts/Montserrat-Italic.otf
b/static/fonts/Montserrat-Italic.otf
deleted file mode 100644
index 450689e2e50..00000000000
Binary files a/static/fonts/Montserrat-Italic.otf and /dev/null differ
diff --git a/static/fonts/Montserrat-Light.otf
b/static/fonts/Montserrat-Light.otf
deleted file mode 100644
index 14e715c7eeb..00000000000
Binary files a/static/fonts/Montserrat-Light.otf and /dev/null differ
diff --git a/static/fonts/Montserrat-LightItalic.otf
b/static/fonts/Montserrat-LightItalic.otf
deleted file mode 100644
index b5ec441d9bb..00000000000
Binary files a/static/fonts/Montserrat-LightItalic.otf and /dev/null differ
diff --git a/static/fonts/Montserrat-Medium.otf
b/static/fonts/Montserrat-Medium.otf
deleted file mode 100644
index 6c323c1bd77..00000000000
Binary files a/static/fonts/Montserrat-Medium.otf and /dev/null differ
diff --git a/static/fonts/Montserrat-MediumItalic.otf
b/static/fonts/Montserrat-MediumItalic.otf
deleted file mode 100644
index 51db58d80da..00000000000
Binary files a/static/fonts/Montserrat-MediumItalic.otf and /dev/null differ
diff --git a/static/fonts/Montserrat-Regular.otf
b/static/fonts/Montserrat-Regular.otf
deleted file mode 100644
index c1d1ee37b64..00000000000
Binary files a/static/fonts/Montserrat-Regular.otf and /dev/null differ
diff --git a/static/fonts/Montserrat-SemiBold.otf
b/static/fonts/Montserrat-SemiBold.otf
deleted file mode 100644
index 4fa8281a286..00000000000
Binary files a/static/fonts/Montserrat-SemiBold.otf and /dev/null differ
diff --git a/static/fonts/Montserrat-SemiBoldItalic.otf
b/static/fonts/Montserrat-SemiBoldItalic.otf
deleted file mode 100644
index 8c3b253f5a7..00000000000
Binary files a/static/fonts/Montserrat-SemiBoldItalic.otf and /dev/null differ
diff --git a/static/fonts/Montserrat-Thin.otf b/static/fonts/Montserrat-Thin.otf
deleted file mode 100644
index 1c20b623f75..00000000000
Binary files a/static/fonts/Montserrat-Thin.otf and /dev/null differ
diff --git a/static/fonts/Montserrat-ThinItalic.otf
b/static/fonts/Montserrat-ThinItalic.otf
deleted file mode 100644
index ed9bb19bb0f..00000000000
Binary files a/static/fonts/Montserrat-ThinItalic.otf and /dev/null differ
diff --git a/static/fonts/Montserrat-VariableFont_wght.ttf
b/static/fonts/Montserrat-VariableFont_wght.ttf
deleted file mode 100644
index 451e69288c1..00000000000
Binary files a/static/fonts/Montserrat-VariableFont_wght.ttf and /dev/null
differ
diff --git a/static/fonts/MontserratAlternates-Black.otf
b/static/fonts/MontserratAlternates-Black.otf
deleted file mode 100644
index 57593288a3e..00000000000
Binary files a/static/fonts/MontserratAlternates-Black.otf and /dev/null differ
diff --git a/static/fonts/MontserratAlternates-BlackItalic.otf
b/static/fonts/MontserratAlternates-BlackItalic.otf
deleted file mode 100644
index 7cc17c6cea8..00000000000
Binary files a/static/fonts/MontserratAlternates-BlackItalic.otf and /dev/null
differ
diff --git a/static/fonts/MontserratAlternates-Bold.otf
b/static/fonts/MontserratAlternates-Bold.otf
deleted file mode 100644
index e98891b30da..00000000000
Binary files a/static/fonts/MontserratAlternates-Bold.otf and /dev/null differ
diff --git a/static/fonts/MontserratAlternates-BoldItalic.otf
b/static/fonts/MontserratAlternates-BoldItalic.otf
deleted file mode 100644
index e2d4bfab117..00000000000
Binary files a/static/fonts/MontserratAlternates-BoldItalic.otf and /dev/null
differ
diff --git a/static/fonts/MontserratAlternates-ExtraBold.otf
b/static/fonts/MontserratAlternates-ExtraBold.otf
deleted file mode 100644
index 99472d6f6eb..00000000000
Binary files a/static/fonts/MontserratAlternates-ExtraBold.otf and /dev/null
differ
diff --git a/static/fonts/MontserratAlternates-ExtraBoldItalic.otf
b/static/fonts/MontserratAlternates-ExtraBoldItalic.otf
deleted file mode 100644
index ce88d1c5ebe..00000000000
Binary files a/static/fonts/MontserratAlternates-ExtraBoldItalic.otf and
/dev/null differ
diff --git a/static/fonts/MontserratAlternates-ExtraLight.otf
b/static/fonts/MontserratAlternates-ExtraLight.otf
deleted file mode 100644
index 73fc746575c..00000000000
Binary files a/static/fonts/MontserratAlternates-ExtraLight.otf and /dev/null
differ
diff --git a/static/fonts/MontserratAlternates-ExtraLightItalic.otf
b/static/fonts/MontserratAlternates-ExtraLightItalic.otf
deleted file mode 100644
index 6d7cb1794de..00000000000
Binary files a/static/fonts/MontserratAlternates-ExtraLightItalic.otf and
/dev/null differ
diff --git a/static/fonts/MontserratAlternates-Italic.otf
b/static/fonts/MontserratAlternates-Italic.otf
deleted file mode 100644
index 6196e3563f6..00000000000
Binary files a/static/fonts/MontserratAlternates-Italic.otf and /dev/null differ
diff --git a/static/fonts/MontserratAlternates-Light.otf
b/static/fonts/MontserratAlternates-Light.otf
deleted file mode 100644
index 606385081a5..00000000000
Binary files a/static/fonts/MontserratAlternates-Light.otf and /dev/null differ
diff --git a/static/fonts/MontserratAlternates-LightItalic.otf
b/static/fonts/MontserratAlternates-LightItalic.otf
deleted file mode 100644
index 40c70f72589..00000000000
Binary files a/static/fonts/MontserratAlternates-LightItalic.otf and /dev/null
differ
diff --git a/static/fonts/MontserratAlternates-Medium.otf
b/static/fonts/MontserratAlternates-Medium.otf
deleted file mode 100644
index fbc59dfb49a..00000000000
Binary files a/static/fonts/MontserratAlternates-Medium.otf and /dev/null differ
diff --git a/static/fonts/MontserratAlternates-MediumItalic.otf
b/static/fonts/MontserratAlternates-MediumItalic.otf
deleted file mode 100644
index 7cb32aceb27..00000000000
Binary files a/static/fonts/MontserratAlternates-MediumItalic.otf and /dev/null
differ
diff --git a/static/fonts/MontserratAlternates-Regular.otf
b/static/fonts/MontserratAlternates-Regular.otf
deleted file mode 100644
index 69bd2e78729..00000000000
Binary files a/static/fonts/MontserratAlternates-Regular.otf and /dev/null
differ
diff --git a/static/fonts/MontserratAlternates-SemiBold.otf
b/static/fonts/MontserratAlternates-SemiBold.otf
deleted file mode 100644
index a9e6e7d708e..00000000000
Binary files a/static/fonts/MontserratAlternates-SemiBold.otf and /dev/null
differ
diff --git a/static/fonts/MontserratAlternates-SemiBoldItalic.otf
b/static/fonts/MontserratAlternates-SemiBoldItalic.otf
deleted file mode 100644
index a4cf74d159c..00000000000
Binary files a/static/fonts/MontserratAlternates-SemiBoldItalic.otf and
/dev/null differ
diff --git a/static/fonts/MontserratAlternates-Thin.otf
b/static/fonts/MontserratAlternates-Thin.otf
deleted file mode 100644
index d21fe419f0d..00000000000
Binary files a/static/fonts/MontserratAlternates-Thin.otf and /dev/null differ
diff --git a/static/fonts/MontserratAlternates-ThinItalic.otf
b/static/fonts/MontserratAlternates-ThinItalic.otf
deleted file mode 100644
index 4b224cf3ceb..00000000000
Binary files a/static/fonts/MontserratAlternates-ThinItalic.otf and /dev/null
differ
diff --git a/static/fonts/NotoSansSC-Black.otf
b/static/fonts/NotoSansSC-Black.otf
deleted file mode 100644
index 7529643c330..00000000000
Binary files a/static/fonts/NotoSansSC-Black.otf and /dev/null differ
diff --git a/static/fonts/NotoSansSC-Bold.otf b/static/fonts/NotoSansSC-Bold.otf
deleted file mode 100644
index 172eb674127..00000000000
Binary files a/static/fonts/NotoSansSC-Bold.otf and /dev/null differ
diff --git a/static/fonts/NotoSansSC-Light.otf
b/static/fonts/NotoSansSC-Light.otf
deleted file mode 100644
index 85ccdf44a4c..00000000000
Binary files a/static/fonts/NotoSansSC-Light.otf and /dev/null differ
diff --git a/static/fonts/NotoSansSC-Medium.otf
b/static/fonts/NotoSansSC-Medium.otf
deleted file mode 100644
index 0a5bd9e5fe6..00000000000
Binary files a/static/fonts/NotoSansSC-Medium.otf and /dev/null differ
diff --git a/static/fonts/NotoSansSC-Regular.otf
b/static/fonts/NotoSansSC-Regular.otf
deleted file mode 100644
index d350ffa79e3..00000000000
Binary files a/static/fonts/NotoSansSC-Regular.otf and /dev/null differ
diff --git a/static/fonts/NotoSansSC-Thin.otf b/static/fonts/NotoSansSC-Thin.otf
deleted file mode 100644
index 0e98049ec41..00000000000
Binary files a/static/fonts/NotoSansSC-Thin.otf and /dev/null differ
diff --git a/static/js/custom-script.js b/static/js/custom-script.js
index 26c3efa741b..86459ab3cb9 100644
--- a/static/js/custom-script.js
+++ b/static/js/custom-script.js
@@ -11,25 +11,28 @@
y.parentNode.insertBefore(t, y);
})(window, document, 'clarity', 'script', 'kfyqejiz0g');
-// Center the Kapa Ask Me modal vertically. Kapa renders inside a Shadow DOM
-// on `#kapa-widget-container`, so light-DOM CSS can't reach it. We inject a
-// <style> into the shadow root and re-inject if Kapa rebuilds it.
+// Position the Kapa Ask Me modal below the sticky NavbarNext (64px tall).
+// Kapa renders inside a Shadow DOM on `#kapa-widget-container`, so light-DOM
+// CSS can't reach it. We inject a <style> into the shadow root and re-inject
+// if Kapa rebuilds it.
//
// The modal must (a) size to its content when small, (b) cap at viewport
-// minus margin when content is tall, and (c) scroll inside the body — not
-// inside `.mantine-Modal-inner`, which clips the top under `align-items:
-// center` once content exceeds the viewport.
+// minus the navbar plus margin when content is tall, and (c) scroll inside
+// the body — not inside `.mantine-Modal-inner`, which clips the top under
+// `align-items: center` once content exceeds the viewport.
(function centerKapaModal() {
var STYLE_ID = 'doris-kapa-center-modal';
+ // Top padding clears the 64px sticky NavbarNext + 16px gap so the modal
+ // header is never tucked under the navbar when content fills the screen.
var CSS_TEXT =
'.mantine-Modal-inner{' +
- 'align-items:center !important;' +
- 'padding-top:2rem !important;' +
+ 'align-items:flex-start !important;' +
+ 'padding-top:80px !important;' +
'padding-bottom:2rem !important;' +
'--modal-y-offset:0 !important;' +
'}' +
'.mantine-Modal-content{' +
- 'max-height:calc(100vh - 4rem) !important;' +
+ 'max-height:calc(100vh - 80px - 2rem) !important;' +
'display:flex !important;' +
'flex-direction:column !important;' +
'}' +
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]