Optimize css build (#2473)

* remove unused styles

* wip: optimizing css, wrong vertical spacing

* fixes

* more changes

* fixes
This commit is contained in:
trean
2026-07-07 19:59:27 +02:00
committed by GitHub
parent 393ad4a81d
commit 69f1a4111c
35 changed files with 316 additions and 646 deletions
@@ -1,11 +1,4 @@
// Configuration
@import 'bootstrap/scss/functions';
@import 'bootstrap/scss/variables';
@import 'bootstrap/scss/variables-dark';
@import 'theme-variables';
@import 'bootstrap/scss/maps';
@import 'bootstrap/scss/mixins';
@import 'bootstrap/scss/utilities';
@import 'bootstrap-tools';
// Layout & components
@import 'bootstrap/scss/root';
@@ -15,12 +8,12 @@
@import 'bootstrap/scss/grid';
@import 'bootstrap/scss/tables';
@import 'bootstrap/scss/images';
@import 'bootstrap/scss/forms';
@import 'bootstrap/scss/buttons';
@import 'bootstrap/scss/transitions';
@import 'bootstrap/scss/dropdown';
@import 'bootstrap/scss/button-group';
// popover is required by copy-code.js ("copy" tooltip on code blocks)
@import 'bootstrap/scss/popover';
// forms, dropdown and button-group are not used anywhere;
// benchmarks.scss imports the two form controls it needs
// Helpers
@import 'bootstrap/scss/helpers';
@@ -0,0 +1,52 @@
// Sass configuration only — no CSS output.
// Used by section bundles and shared mixins. Bootstrap CSS is compiled once in core.css.
@use 'sass:math';
@use 'helpers/functions' as *;
@import 'bootstrap/scss/functions';
@import 'bootstrap/scss/variables';
@import 'bootstrap/scss/variables-dark';
@import 'theme-variables';
@import 'bootstrap/scss/maps';
@import 'bootstrap/scss/mixins';
@import 'bootstrap/scss/utilities';
// Drop utility groups whose classes are not used anywhere in layouts,
// content or JS, so utilities/api (compiled in core.css) doesn't emit them.
$utilities: map-remove(
$utilities,
'bg-opacity',
'border-end',
'border-opacity',
'border-start',
'focus-ring',
'font-family',
'font-size',
'font-style',
'font-weight',
'gradient',
'line-height',
'link-offset',
'link-opacity',
'link-underline',
'link-underline-opacity',
'max-height',
'max-width',
'min-viewport-height',
'min-viewport-width',
'object-fit',
'opacity',
'overflow',
'overflow-x',
'overflow-y',
'rounded-bottom',
'rounded-end',
'rounded-start',
'rounded-top',
'row-gap',
'text-opacity',
'translate-middle',
'user-select',
'viewport-height',
'viewport-width',
'word-wrap'
);
@@ -1,4 +1,7 @@
@import 'base';
@import 'bootstrap-tools';
// Bootstrap form controls used by the benchmark charts (not part of core.css)
@import 'bootstrap/scss/forms/form-select';
@import 'bootstrap/scss/forms/form-range';
@import 'partials/qdrant-articles-hero';
@import 'partials/qdrant-post';
@import 'partials/share-buttons';
@@ -0,0 +1,16 @@
@import 'bootstrap-tools';
@import 'partials/get-started-blogs';
@import 'partials/qdrant-blog-features';
@import 'partials/qdrant-blog-post';
@import 'partials/qdrant-blog-posts';
@import 'partials/qdrant-blog-hero';
@import 'partials/pagination';
@import 'partials/newsletter';
@import 'partials/qdrant-post';
@import 'partials/qdrant-articles-hero';
@import 'partials/qdrant-articles-posts';
@import 'partials/carousel';
@import 'partials/share-buttons';
@import 'partials/progress-bar';
@import 'partials/tag';
@import 'partials/table-of-contents';
@@ -1,3 +1,6 @@
// Shared foundation CSS loaded on every page: fonts, Bootstrap, base rules,
// components, header/footer. Section bundles compile against bootstrap-tools
// (Sass tools only, no CSS output) so none of this is duplicated in the browser.
@use 'sass:math';
@use 'helpers/functions' as *;
@import 'fonts/mona-sans-font';
@@ -1,6 +1,7 @@
@import 'base';
@import 'partials/scroll-reveal';
@import 'partials/home/index';
// Catch-all bundle for pages without a dedicated section bundle
// (about-us, contact, cloud, use-cases, enterprise solutions, events, etc.).
// Loaded together with core.css; imports Sass tools only — no Bootstrap CSS output.
@import 'bootstrap-tools';
@import 'partials/customer-stories';
@import 'partials/docker-deploy';
@import 'partials/vectors';
@@ -19,7 +20,6 @@
@import 'partials/testimonial';
@import 'partials/enterprise-solutions-challenges';
@import 'partials/top-and-bottom-overlay';
@import 'partials/pricing/index';
@import 'partials/get-contacted-with-question';
@import 'partials/private-cloud-hero';
@import 'partials/private-cloud-about';
@@ -32,15 +32,9 @@
@import 'partials/customer-list';
@import 'partials/demos';
@import 'partials/tutorials';
@import 'partials/qdrant-blog-features';
@import 'partials/qdrant-blog-post';
@import 'partials/qdrant-blog-posts';
@import 'partials/qdrant-blog-hero';
@import 'partials/pagination';
@import 'partials/newsletter';
@import 'partials/qdrant-post';
@import 'partials/qdrant-articles-hero';
@import 'partials/qdrant-articles-posts';
@import 'partials/carousel';
@import 'partials/leadership';
@import 'partials/open-roles';
@@ -62,39 +56,8 @@
@import 'partials/retrieval-augmented-generation-evaluation';
@import 'partials/data-analysis-anomaly-detection';
@import 'partials/share-buttons';
@import 'partials/partners-hero';
@import 'partials/partners-cloud';
@import 'partials/partners-cloud-marketplaces';
@import 'partials/partners-integrations';
@import 'partials/partners-embeddings';
@import 'partials/partners-solution';
@import 'partials/partners-get-contacted';
@import 'partials/partners-get-started';
@import 'partials/testimonial-light';
@import 'partials/testimonial-cards';
@import 'partials/customers-testimonial';
@import 'partials/customers/customers-hero';
@import 'partials/customers/customers-case-studies';
@import 'partials/customers-vector-space-wall';
@import 'partials/customers-get-contacted';
@import 'partials/stars-hero';
@import 'partials/stars-about';
@import 'partials/stars-benefits';
@import 'partials/stars-list';
@import 'partials/stars-marketplaces';
@import 'partials/stars-get-started';
@import 'partials/community-hero';
@import 'partials/community-features';
@import 'partials/community-testimonials';
@import 'partials/community-get-contacted';
@import 'partials/community-newsletter';
@import 'partials/qdrant-for-startups-hero';
@import 'partials/qdrant-for-startups-benefits';
@import 'partials/qdrant-for-startups-form';
@import 'partials/qdrant-for-startups-faq';
@import 'partials/brand-resources-hero';
@import 'partials/brand-resources-content';
@import 'partials/subscribe';
@import 'partials/rag-evaluation-guide-hero';
@import 'partials/rag-evaluation-guide-form';
@import 'partials/rag-evaluation-guide-about';
@@ -107,13 +70,6 @@
@import 'partials/ai-agents-get-started';
@import 'partials/ai-agents-video';
@import 'partials/tag';
@import 'partials/legal-tech-get-contacted';
@import 'partials/legal-tech-features';
@import 'partials/legal-tech-why-qdrant';
@import 'partials/legal-tech-help';
@import 'partials/legal-tech-challengers';
@import 'partials/legal-tech-hero';
@import 'partials/hospitality-and-travel-get-contacted';
@import 'partials/about-us-values';
@import 'partials/about-us-engineering-culture';
@import 'partials/accordion';
@@ -123,20 +79,10 @@
@import 'partials/cloud-inference-cluster';
@import 'partials/cloud-inference-get-started';
@import 'partials/cloud-inference-faq';
@import 'partials/edge/index';
@import 'partials/elastic-lucene/index';
@import 'partials/hr-tech/index';
@import 'partials/healthcare/index';
@import 'partials/cta-banner';
@import 'partials/industries/industries-faq';
@import 'partials/industries/industries-bento-cards';
@import 'partials/industries/industries-case-studies';
@import 'partials/industries/industries-get-contacted';
@import 'partials/industries/industries-hero';
@import 'partials/industries/industries-testimonials';
@import 'partials/industries/industries-architecture';
@import 'partials/industries/industries-dark-banner';
@import 'partials/industries/industries-logos';
@import 'partials/subscribe';
// used by landing pages under /lp/ (e.g. /lp/lucene)
@import 'partials/elastic-lucene/index';
@import 'partials/vsd/index';
@import 'partials/vsd-recap/index';
@import 'partials/vsd/vsd-agenda';
@@ -1,4 +1,4 @@
@import 'base';
@import 'bootstrap-tools';
@import 'partials/theme-switch';
@import 'partials/documentation/documentation-menu';
@import 'partials/documentation/docs-card';
@@ -0,0 +1,8 @@
@import 'bootstrap-tools';
@import 'partials/scroll-reveal';
@import 'partials/home/index';
@import 'partials/customer-stories';
@import 'partials/testimonial';
@import 'partials/customers-testimonial';
@import 'partials/testimonial-light';
@import 'partials/cta-banner';
@@ -1,4 +1,4 @@
@import 'base';
@import 'bootstrap-tools';
@import 'partials/hybrid-cloud-hero';
@import 'partials/hybrid-cloud-kubernetes-clusters';
@import 'partials/hybrid-cloud-cases';
@@ -0,0 +1,30 @@
@import 'bootstrap-tools';
@import 'partials/legal-tech-get-contacted';
@import 'partials/legal-tech-features';
@import 'partials/legal-tech-why-qdrant';
@import 'partials/legal-tech-help';
@import 'partials/legal-tech-challengers';
@import 'partials/legal-tech-hero';
@import 'partials/hospitality-and-travel-get-contacted';
@import 'partials/accordion';
@import 'partials/label';
@import 'partials/industries/industries-faq';
@import 'partials/industries/industries-bento-cards';
@import 'partials/industries/industries-case-studies';
@import 'partials/industries/industries-get-contacted';
@import 'partials/industries/industries-hero';
@import 'partials/industries/industries-testimonials';
@import 'partials/industries/industries-architecture';
@import 'partials/industries/industries-dark-banner';
@import 'partials/industries/industries-logos';
@import 'partials/edge/index';
@import 'partials/elastic-lucene/index';
@import 'partials/hr-tech/index';
@import 'partials/healthcare/index';
@import 'partials/cta-banner';
@import 'partials/customers-testimonial';
@import 'partials/testimonial-light';
@import 'partials/get-started';
@import 'partials/get-started-small-rocket';
@import 'partials/get-started-small-database';
@import 'partials/video';
@@ -0,0 +1,38 @@
@use '../bootstrap-tools' as *;
@use '../helpers/functions' as *;
@mixin base {
width: 100%;
padding: $spacer * 2.5 0;
}
@mixin content {
display: flex;
flex-direction: column;
align-items: center;
gap: $spacer * 1.5;
}
@mixin links {
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
gap: $spacer $spacer * 2.5;
a {
font-size: pxToRem(12);
line-height: pxToRem(21);
color: $neutral-70;
}
}
@mixin content-lg {
flex-direction: row;
gap: $spacer * 2.5;
}
@mixin links-lg {
flex-wrap: nowrap;
justify-content: flex-end;
}
@@ -1,6 +1,6 @@
@use 'sass:math';
@use '../helpers/functions' as *;
@use '../bootstrap-custom' as bs;
@use '../bootstrap-tools' as *;
@mixin base($paddingTop, $paddingTopMobile, $paddingBottom, $paddingBottomMobile, $contentWidth) {
padding-top: $paddingTopMobile;
@@ -28,7 +28,7 @@
display: none;
}
@include bs.media-breakpoint-up(lg) {
@include media-breakpoint-up(lg) {
padding-top: $paddingTop;
padding-bottom: $paddingBottom;
@@ -1,6 +1,6 @@
@use 'sass:math';
@use '../helpers/functions' as *;
@use '../bootstrap-custom' as bs;
@use '../bootstrap-tools' as *;
@mixin base(
$paddingTop,
@@ -48,7 +48,7 @@
line-height: pxToRem(34);
text-align: center;
color: #f0f3fa;
@include bs.media-breakpoint-up(lg) {
@include media-breakpoint-up(lg) {
font-size: pxToRem(32);
line-height: pxToRem(38);
}
@@ -73,7 +73,7 @@
background-size: cover;
}
@include bs.media-breakpoint-up(lg) {
@include media-breakpoint-up(lg) {
padding-top: $paddingTop;
padding-bottom: $paddingBottom;
@@ -1,6 +1,6 @@
@use 'sass:math';
@use '../helpers/functions' as *;
@use '../bootstrap-custom' as bs;
@use '../bootstrap-tools' as *;
@mixin base(
$paddingTop,
@@ -57,7 +57,7 @@
display: none;
}
@include bs.media-breakpoint-up(lg) {
@include media-breakpoint-up(lg) {
padding-top: $paddingTop;
padding-bottom: $paddingBottom;
position: relative;
@@ -1,6 +1,6 @@
@use 'sass:math';
@use '../helpers/functions' as *;
@use '../bootstrap-custom' as bs;
@use '../bootstrap-tools' as *;
@mixin base(
$height,
@@ -36,7 +36,7 @@
width: pxToRem(80);
z-index: 1;
@include bs.media-breakpoint-up(lg) {
@include media-breakpoint-up(lg) {
width: pxToRem(165);
}
}
@@ -0,0 +1,11 @@
@use '../bootstrap-tools' as *;
@mixin base {
@include make-container();
@each $breakpoint, $container-max-width in $container-max-widths {
@include media-breakpoint-up($breakpoint, $grid-breakpoints) {
max-width: $container-max-width;
}
}
}
@@ -0,0 +1,23 @@
@use '../bootstrap-tools' as *;
@mixin variant($name) {
$background: map-get($table-variants, $name);
$color: color-contrast(opaque($body-bg, $background));
$hover-bg: mix($color, $background, percentage($table-hover-bg-factor));
$striped-bg: mix($color, $background, percentage($table-striped-bg-factor));
$active-bg: mix($color, $background, percentage($table-active-bg-factor));
$border-color: mix($color, $background, percentage($table-border-factor));
--#{$prefix}table-color: #{$color};
--#{$prefix}table-bg: #{$background};
--#{$prefix}table-border-color: #{$border-color};
--#{$prefix}table-striped-bg: #{$striped-bg};
--#{$prefix}table-striped-color: #{color-contrast($striped-bg)};
--#{$prefix}table-active-bg: #{$active-bg};
--#{$prefix}table-active-color: #{color-contrast($active-bg)};
--#{$prefix}table-hover-bg: #{$hover-bg};
--#{$prefix}table-hover-color: #{color-contrast($hover-bg)};
color: var(--#{$prefix}table-color);
border-color: var(--#{$prefix}table-border-color);
}
@@ -1,11 +1,12 @@
@use '../helpers/functions' as *;
@use '../mixins/site-container' as site-container;
.brand-resources-content {
padding-bottom: $spacer * 2.5;
background-color: $neutral-94;
&__container {
@extend .container;
@include site-container.base;
}
&__block {
@@ -162,6 +163,10 @@
@include media-breakpoint-up(xl) {
padding-bottom: 0;
&__container {
max-width: map-get($container-max-widths, xl);
}
&__block {
padding-top: $spacer * 5;
padding-bottom: $spacer * 5;
@@ -1,74 +0,0 @@
@use '../helpers/functions' as *;
.edge-beta-demo {
position: relative;
overflow: hidden;
padding-top: $spacer * 4;
padding-bottom: $spacer * 4;
background: radial-gradient(
ellipse 120% 80% at 0% 0%,
rgba(231, 29, 95, 0.12) 0%,
rgba(133, 71, 255, 0.06) 40%,
transparent 70%
),
$neutral-10;
&__lights-overlay {
position: absolute;
top: 0;
left: 0;
right: 0;
width: 100%;
height: pxToRem(200);
background-image: url('/img/elastic-lucene/lights.svg');
background-repeat: repeat-x;
background-position: center top;
background-size: cover;
transform: scaleY(-1);
filter: blur(6px);
z-index: 0;
pointer-events: none;
}
&__title {
margin: 0 0 $spacer * 2;
font-size: $h4-font-size;
line-height: 1.2;
font-weight: 600;
color: $neutral-100;
}
&__description {
margin-bottom: $spacer * 1.5;
font-size: $font-size-l;
line-height: $line-height-lg;
color: $neutral-90;
&--secondary {
margin-bottom: $spacer * 2;
}
}
&__button {
border-radius: 12px;
}
&__image {
width: 100%;
max-width: pxToRem(540);
}
@include media-breakpoint-up(lg) {
padding-top: $spacer * 5;
padding-bottom: $spacer * 7.5;
&__title {
line-height: 1.5;
margin-bottom: $spacer * 2.5;
}
&__description {
max-width: pxToRem(540);
}
}
}
@@ -1,26 +0,0 @@
@use '../helpers/functions' as *;
.edge-beta-faq {
padding-top: $spacer * 4;
padding-bottom: $spacer * 4;
background-color: $neutral-94;
&__title {
margin-bottom: $spacer * 3;
font-size: $h4-font-size;
line-height: $h3-font-size;
color: $neutral-20;
text-align: center;
}
@include media-breakpoint-up(lg) {
padding-top: $spacer * 5;
padding-bottom: $spacer * 5;
&__title {
margin-bottom: $spacer * 5;
font-size: $h2-font-size;
line-height: pxToRem(67);
}
}
}
@@ -1,56 +0,0 @@
@use '../helpers/functions' as *;
.edge-beta-features {
padding-top: $spacer * 4;
padding-bottom: $spacer * 2.5;
background-color: $neutral-94;
&__title {
margin-bottom: $spacer * 2.5;
font-size: $h5-font-size;
line-height: pxToRem(38);
color: $neutral-20;
}
&__card {
justify-content: flex-start;
padding-bottom: 0;
&-title {
margin-bottom: pxToRem(12);
font-size: $font-size-xl;
line-height: pxToRem(30);
color: $neutral-20;
}
&-description {
margin-bottom: $spacer;
color: $neutral-40;
}
&-image {
width: 100%;
margin-top: auto;
}
}
&__cards {
& > div:first-of-type {
.edge-beta-features__card-image {
width: calc(100% + ($spacer * 3));
margin-left: -$spacer * 1.5;
margin-right: -$spacer * 1.5;
}
}
}
@include media-breakpoint-up(lg) {
padding-top: $spacer * 7.5;
&__title {
margin-bottom: $spacer * 4;
font-size: $h3-font-size;
line-height: pxToRem(58);
}
}
}
@@ -1,165 +0,0 @@
@use '../helpers/functions' as *;
.edge-beta-form {
position: relative;
padding-top: $spacer * 4;
padding-bottom: $spacer * 4;
background-color: $neutral-10;
overflow: hidden;
&__title {
margin-bottom: $spacer * 1.5;
font-size: $h5-font-size;
line-height: pxToRem(38);
color: $neutral-98;
text-align: center;
}
&__description {
max-width: pxToRem(730);
margin: 0 auto $spacer * 3;
font-size: $font-size-xl;
line-height: pxToRem(30);
color: $neutral-70;
text-align: center;
}
&__container {
position: relative;
width: 100%;
max-width: pxToRem(720);
margin: 0 auto;
border-radius: $spacer * 0.5;
background: linear-gradient($neutral-20, #0e1424);
* {
font-family: $font-family-base;
}
[data-hsfc-id='Renderer'] .hsfc-Step .hsfc-Step__Content {
padding: $spacer * 1.5;
}
.hsfc-RichText span,
.hsfc-FieldLabel span,
.hsfc-ProgressBar__Text {
font-size: $font-size-s !important;
line-height: $line-height-sm !important;
color: $neutral-98 !important;
}
.hsfc-FieldLabel {
margin-bottom: $spacer * 0.5 !important;
}
[data-hsfc-id='Renderer'] .hsfc-TextInput,
[data-hsfc-id='Renderer'] .hsfc-TextareaInput {
display: block;
background-color: transparent;
border: pxToRem(1) solid $neutral-50;
margin-bottom: $spacer * 0.5;
padding: $spacer * 0.5 $spacer;
font-size: $font-size-md;
line-height: $spacer * 1.5;
color: $neutral-98;
border-radius: $spacer * 0.5;
&:focus,
&:active {
box-shadow: none !important;
}
&::placeholder {
color: $neutral-70;
}
}
[data-hsfc-id='Renderer'] .hsfc-ErrorAlert {
font-size: $font-size-xs;
line-height: $font-size-l;
color: $primary-40;
}
[data-hsfc-id='Renderer'] .hsfc-Button {
display: inline-flex;
align-items: center;
justify-content: center;
flex-wrap: nowrap;
cursor: pointer;
border: none;
border-radius: $spacer * 0.5;
color: $neutral-100;
text-decoration: none;
height: $spacer * 2.5;
padding: pxToRem(22);
font-weight: 700;
font-size: map-get($font-sizes-text, md);
z-index: 1;
background: linear-gradient(180deg, $primary-50, $primary-40) !important;
box-shadow: 0 2px 1px 0 $primary-60 inset !important;
transition: none !important;
&:hover {
background: $primary-50 !important;
border: none !important;
box-shadow: 0 2px 1px 0 $primary-70 inset !important;
transform: none !important;
}
&:active {
background: $primary-50 !important;
border: none !important;
box-shadow:
0 2px 1px 0 $primary-60 inset,
0 0 0 2px rgba(220, 36, 76, 0.4) !important;
}
&.button_disabled,
&:disabled {
background: $primary-70 !important;
border: none !important;
box-shadow: none !important;
}
}
}
&__form-overlay {
position: absolute;
right: 0;
top: 0;
width: pxToRem(210);
height: pxToRem(210);
background-image: url('/img/blurred/blurred-light-15.svg');
background-position: top;
background-size: cover;
border-radius: 0 pxToRem(12) 0 0;
}
&__overlay {
position: absolute;
left: 0;
bottom: -$spacer * 1.5;
width: pxToRem(637);
height: pxToRem(444);
background-image: url('/img/blurred/blurred-light-19.svg');
background-position: bottom;
background-size: cover;
}
@include media-breakpoint-up(lg) {
padding-top: $spacer * 7.5;
padding-bottom: $spacer * 7.5;
&__title {
font-size: $h3-font-size;
line-height: pxToRem(58);
}
&__container {
[data-hsfc-id='Renderer'] .hsfc-Step .hsfc-Step__Content {
padding: $spacer * 4;
}
}
}
}
@@ -1,14 +0,0 @@
@use '../mixins/get-started-small' as get-started-small;
@use '../helpers/functions' as *;
.edge-beta-get-started {
@include get-started-small.base(
$spacer * 5,
$spacer * 2.5,
$spacer * 7.5,
$spacer * 5,
$neutral-94,
$neutral-10,
$neutral-10
);
}
@@ -1,61 +0,0 @@
@use '../helpers/functions' as *;
.edge-beta-hero {
position: relative;
padding-top: $spacer * 2.5;
padding-bottom: $spacer * 4;
background-color: $neutral-10;
&__title {
margin: $spacer * 1.5 0;
font-size: $h4-font-size;
line-height: $h3-font-size;
color: $neutral-98;
}
&__subtitle {
margin-bottom: $spacer * 1.5;
font-size: $h6-font-size;
line-height: pxToRem(34);
color: $neutral-98;
}
&__description {
margin-bottom: $spacer * 2;
font-size: $font-size-l;
line-height: $line-height-lg;
color: $neutral-70;
}
&__image {
width: 100%;
max-width: pxToRem(540);
}
&__overlay {
position: absolute;
right: 0;
left: 0;
bottom: 0;
width: 100%;
height: pxToRem(176);
background-image: url('/img/blurred/blurred-light-11.png');
background-position: center;
background-size: cover;
}
@include media-breakpoint-up(lg) {
padding-top: $spacer * 5;
padding-bottom: $spacer * 7.5;
&__title {
font-size: $h2-font-size;
line-height: pxToRem(67);
}
&__subtitle,
&__description {
max-width: pxToRem(500);
}
}
}
@@ -1,102 +0,0 @@
@use '../helpers/functions' as *;
.edge-beta-vectors {
padding-top: $spacer * 4;
padding-bottom: $spacer * 4;
background-color: $neutral-94;
&__title {
max-width: pxToRem(920);
margin: 0 auto $spacer * 4;
font-size: $h4-font-size;
line-height: $h3-font-size;
color: $neutral-20;
}
&__card {
&-info {
padding-bottom: $spacer * 2;
}
&-icon {
height: $spacer * 3.5;
width: $spacer * 3.5;
margin-bottom: $spacer;
}
&-title {
font-size: $h5-font-size;
line-height: $h4-font-size;
margin-bottom: $spacer;
color: $neutral-20;
}
&-description {
font-size: $font-size-l;
line-height: $line-height-lg;
margin-bottom: 0;
color: $neutral-30;
}
}
@include media-breakpoint-up(lg) {
padding-top: $spacer * 7.5;
padding-bottom: $spacer * 7.5;
&__title {
font-size: $h3-font-size;
line-height: pxToRem(58);
text-align: center;
}
&__card {
position: relative;
&:nth-of-type(2),
&:nth-of-type(4) {
& > div {
&:before {
content: '';
display: block;
height: 100%;
width: pxToRem(1);
position: absolute;
top: 0;
left: 0;
background-color: $neutral-80;
}
}
}
&:nth-of-type(1),
&:nth-of-type(2) {
& > div {
&:after {
content: '';
display: block;
width: 100%;
height: pxToRem(1);
position: absolute;
bottom: 0;
left: 0;
background-color: $neutral-80;
}
}
}
&-info {
max-width: pxToRem(400);
margin: auto;
padding: $spacer * 3.5 0;
}
}
}
@include media-breakpoint-up(xl) {
&__card {
&-info {
max-width: pxToRem(443);
}
}
}
}
@@ -1,5 +1,6 @@
@use '../helpers/functions' as *;
@use 'sass:math';
@use '../mixins/footer-bottom' as footer-bottom;
.footer {
background-color: $neutral-10;
@@ -116,14 +117,10 @@
}
&__bottom {
width: 100%;
padding: $spacer * 2.5 0;
@include footer-bottom.base;
&-content {
display: flex;
flex-direction: column;
align-items: center;
gap: $spacer * 1.5;
@include footer-bottom.content;
}
&-copyright {
@@ -144,17 +141,7 @@
}
&-links {
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
gap: $spacer $spacer * 2.5;
a {
font-size: pxToRem(12);
line-height: pxToRem(21);
color: $neutral-70;
}
@include footer-bottom.links;
}
}
@@ -183,13 +170,11 @@
@include media-breakpoint-up(lg) {
&__bottom {
&-content {
flex-direction: row;
gap: $spacer * 2.5;
@include footer-bottom.content-lg;
}
&-links {
flex-wrap: nowrap;
justify-content: flex-end;
@include footer-bottom.links-lg;
}
}
@@ -2,6 +2,7 @@
.stars-list {
position: relative;
overflow: hidden;
background-color: $neutral-10;
padding-top: $spacer * 4;
padding-bottom: $spacer * 4;
@@ -23,7 +23,7 @@
height: pxToRem(285);
width: pxToRem(285);
background-size: cover;
background-image: url('/img/blurred/blurred-light-8.png');
background-image: url('/img/blurred/blurred-light-7.png');
}
&__overlay-bottom {
@@ -34,7 +34,7 @@
height: pxToRem(285);
width: pxToRem(285);
background-size: cover;
background-image: url('/img/blurred/blurred-light-7.png');
background-image: url('/img/blurred/blurred-light-8.png');
}
&__description {
@@ -1,4 +1,5 @@
@use '../../helpers/functions' as *;
@use '../../mixins/footer-bottom' as footer-bottom;
.docs-footer {
&__cta {
@@ -22,11 +23,11 @@
&__bottom {
border-top: pxToRem(1) solid $neutral-20;
@extend .footer__bottom;
@include footer-bottom.base;
}
&__bottom-content {
@extend .footer__bottom-content;
@include footer-bottom.content;
& span,
& a {
@@ -42,18 +43,20 @@
}
&__bottom-links {
@extend .footer__bottom-links;
@include footer-bottom.links;
}
@include media-breakpoint-up(lg) {
&__bottom-content {
@include footer-bottom.content-lg;
}
&__bottom-links {
@include footer-bottom.links-lg;
}
}
@include media-breakpoint-up(xl) {
&__bottom {
@extend .footer__bottom;
}
&__bottom-content {
@extend .footer__bottom-content;
}
&__cta {
flex-direction: row;
justify-content: space-between;
@@ -1,5 +1,6 @@
@use '../../helpers/functions' as *;
@use '../../mixins/mixins' as *;
@use '../../mixins/table-variant-styles' as table-variant;
.documentation-article {
padding-bottom: $spacer * 1.5;
@@ -118,7 +119,7 @@
.table-responsive {
.table {
@extend .table-dark;
@include table-variant.variant('dark');
}
th,
td {
@@ -169,7 +170,7 @@
.table-responsive {
.table {
@extend .table-light;
@include table-variant.variant('light');
}
}
&__header-link {
@@ -1,5 +1,6 @@
@use '../../helpers/functions' as *;
@use 'sass:color';
@use '../../mixins/site-container' as site-container;
.documentation {
background-color: $neutral-10;
@@ -7,7 +8,7 @@
color: $neutral-70;
&__container {
@extend .container;
@include site-container.base;
margin: 0;
max-width: 100%;
padding-top: $spacer * 1.5;
@@ -2,6 +2,7 @@
.edge-hero {
position: relative;
overflow: hidden;
padding-top: $spacer * 2.5;
padding-bottom: $spacer * 4;
background-color: $neutral-10;
@@ -0,0 +1,39 @@
@import 'bootstrap-tools';
@import 'partials/get-started';
@import 'partials/newsletter';
@import 'partials/contact-form';
@import 'partials/customer-list';
@import 'partials/partners-hero';
@import 'partials/partners-cloud';
@import 'partials/partners-cloud-marketplaces';
@import 'partials/partners-integrations';
@import 'partials/partners-embeddings';
@import 'partials/partners-solution';
@import 'partials/partners-get-contacted';
@import 'partials/partners-get-started';
@import 'partials/testimonial-light';
@import 'partials/testimonial-cards';
@import 'partials/customers-testimonial';
@import 'partials/customers/customers-hero';
@import 'partials/customers/customers-case-studies';
@import 'partials/customers-vector-space-wall';
@import 'partials/customers-get-contacted';
@import 'partials/stars-hero';
@import 'partials/stars-about';
@import 'partials/stars-benefits';
@import 'partials/stars-list';
@import 'partials/stars-marketplaces';
@import 'partials/stars-get-started';
@import 'partials/community-hero';
@import 'partials/community-features';
@import 'partials/community-testimonials';
@import 'partials/community-get-contacted';
@import 'partials/community-newsletter';
@import 'partials/qdrant-for-startups-hero';
@import 'partials/qdrant-for-startups-benefits';
@import 'partials/qdrant-for-startups-form';
@import 'partials/qdrant-for-startups-faq';
@import 'partials/brand-resources-hero';
@import 'partials/brand-resources-content';
@import 'partials/subscribe';
@import 'partials/accordion';
@@ -0,0 +1,8 @@
@import 'bootstrap-tools';
@import 'partials/pricing/index';
@import 'partials/top-and-bottom-overlay';
@import 'partials/get-contacted-with-question';
@import 'partials/accordion';
@import 'partials/label';
@import 'partials/cta-banner';
@import 'partials/testimonial-light';
@@ -1,5 +1,9 @@
{{ $opts := dict "transpiler" "dartsass" "includePaths" (slice "node_modules") }}
<!--Shared foundation (fonts, Bootstrap, base, header/footer) - loaded on every page-->
{{ $coreCss := resources.Get "css/core.scss" | toCSS $opts | minify | resources.Fingerprint "sha512" }}
<link href="{{ $coreCss.RelPermalink }}" rel="stylesheet" integrity="{{ $coreCss.Data.Integrity }}" />
{{ if .IsHome }}
<!--splide.js carousel core styles-->
{{ $splideCss := resources.Get "css/vendor/splide.scss" | toCSS $opts | minify | resources.Fingerprint "sha512" }}
@@ -11,31 +15,28 @@
<link href="{{ $pageSearchCss.RelPermalink }}" rel="stylesheet" integrity="{{ $pageSearchCss.Data.Integrity }}" />
{{ end }}
{{ if eq .Section "hybrid-cloud" }}
{{ $hybridCloudCss := resources.Get "css/hybrid-cloud.scss" | toCSS $opts | minify | resources.Fingerprint "sha512" }}
<link
href="{{ $hybridCloudCss.RelPermalink }}"
rel="stylesheet"
integrity="{{ .Data.Integrity }}"
crossorigin="anonymous"
/>
<!--Section bundle: page-specific styles on top of core.css (articles need two bundles)-->
{{ $bundles := slice "default" }}
{{ if .IsHome }}
{{ $bundles = slice "home" }}
{{ else if eq .Section "blog" }}
{{ $bundles = slice "blog" }}
{{ else if in (slice "docs" "documentation" "course" "learn") .Section }}
{{ $bundles = slice "documentation" }}
{{ else if eq .Section "articles" }}
{{ $bundles = slice "documentation" "blog" }}
{{ else if eq .Section "benchmarks" }}
{{ $bundles = slice "benchmarks" }}
{{ else if eq .Section "hybrid-cloud" }}
{{ $bundles = slice "hybrid-cloud" }}
{{ else if eq .Section "pricing" }}
{{ $bundles = slice "pricing" }}
{{ else if in (slice "industries" "edge" "elastic-lucene" "healthcare") .Section }}
{{ $bundles = slice "industries" }}
{{ else if in (slice "partners" "customers" "stars" "community" "qdrant-for-startups" "brand-resources") .Section }}
{{ $bundles = slice "partners-customers" }}
{{ end }}
{{ if in (slice "docs" "documentation" "articles" "course" "learn") .Section }}
{{ $documentationCss := resources.Get "css/documentation.scss" | toCSS $opts | minify | resources.Fingerprint "sha512" }}
<link
href="{{ $documentationCss.RelPermalink }}"
rel="stylesheet"
integrity="{{ $documentationCss.Data.Integrity }}"
/>
{{ end }}
{{ if eq .Section "benchmarks" }}
{{ $benchmarksCss := resources.Get "css/benchmarks.scss" | toCSS $opts | minify | resources.Fingerprint "sha512" }}
<link href="{{ $benchmarksCss.RelPermalink }}" rel="stylesheet" integrity="{{ $benchmarksCss.Data.Integrity }}" />
{{ end }}
{{ if not (in (slice "hybrid-cloud" "docs" "documentation" "course" "learn" "benchmarks") .Section) }}
{{ $mainCss := resources.Get "css/main.scss" | toCSS $opts | minify | resources.Fingerprint "sha512" }}
<link href="{{ $mainCss.RelPermalink }}" rel="stylesheet" integrity="{{ .Data.Integrity }}" crossorigin="anonymous" />
{{ range $bundles }}
{{ $bundleCss := resources.Get (printf "css/%s.scss" .) | toCSS $opts | minify | resources.Fingerprint "sha512" }}
<link href="{{ $bundleCss.RelPermalink }}" rel="stylesheet" integrity="{{ $bundleCss.Data.Integrity }}" />
{{ end }}