laconic-webflow-website/partners.html

685 lines
52 KiB
HTML
Raw Permalink Normal View History

<!DOCTYPE html><html data-wf-page="66a59b21ba2243c3ec0f8206" data-wf-site="669696d6af77a83985da8ffd" lang="en"><head><meta charset="utf-8"/><title>Partners | Laconic Network</title><meta content="Laconic Network Description" name="description"/><meta content="Partners | Laconic Network" property="og:title"/><meta content="Laconic Network Description" property="og:description"/><meta content="images/og.jpg" property="og:image"/><meta content="Partners | Laconic Network" property="twitter:title"/><meta content="Laconic Network Description" property="twitter:description"/><meta content="images/og.jpg" property="twitter:image"/><meta property="og:type" content="website"/><meta content="summary_large_image" name="twitter:card"/><meta content="width=device-width, initial-scale=1" name="viewport"/><meta content="Webflow" name="generator"/><link href="css/laconic-staging.webflow.ac960b332.min.css" rel="stylesheet" type="text/css"/><script type="text/javascript">!function(o,c){var n=c.documentElement,t=" w-mod-";n.className+=t+"js",("ontouchstart"in o||o.DocumentTouch&&c instanceof DocumentTouch)&&(n.className+=t+"touch")}(window,document);</script><link href="images/favicon.png" rel="shortcut icon" type="image/x-icon"/><link href="images/app-icon.png" rel="apple-touch-icon"/><script>
(function() {
const storedTheme = localStorage.getItem('theme');
const root = document.documentElement;
if (storedTheme) {
root.setAttribute('data-theme', storedTheme);
} else {
root.setAttribute('data-theme', 'dark');
}
})();
</script></head><body><div class="page-wrapper"><div class="global-styles w-embed"><style>
:root {
color-scheme: dark;
--duration-normal: 0.525s;
--duration-fast: 0.262s;
--ease: cubic-bezier(0.165, 0.84, 0.44, 1);
--ease-button: cubic-bezier(0.3, 1, 0.8, 1);
--normal-transition: var(--duration-fast) var(--ease);
--main-padding-top: max(13px, 0.6770833333vw);
--main-padding-side: max(16px, 2.96875vw);
--header-height: max(70px, 3.6979166667vw);
--header-height-mobile: 79px;
--logo: url("path-to-dark-theme-image.jpg");
}
:root[data-theme="light"] {
color-scheme: light;
--theme--color-accent: #0000f4;
--theme--color-accent-boke: #0000f4;
--theme--color-black: #fbfbfb;
--theme--color-white: #040404;
--theme--color-grey: #565656;
--theme--color-grey-light: #8e8e8e;
--theme--color-grey-lightness: #dedede;
--logo: url("path-to-dark-theme-image.jpg");
}
::selection {
background-color: #0000f4;
color: #040404;
}
body {
transition: all var(--normal-transition);
}
/**
*** Light Mode Styles
**/
html[data-theme="light"] .button.benefits,
html[data-theme="light"] .button.primary,
html[data-theme="light"] .button.community{
color: var(--theme--color-black);
}
html[data-theme="light"] .noise-component {
opacity: 0.35;
}
html[data-theme="light"] .benefits_ball {
mix-blend-mode: darken;
background-color: var(--theme--color-black);
box-shadow: 0 4px 115px 15px #0000f4, 0 0 70px 20px var(--theme--color-black),
inset -39px -20px 100px rgba(0, 0, 244, 0.73);
}
html[data-theme="light"] .hero_gradient,
html[data-theme="light"] .section_blog-hero,
html[data-theme="light"] .section_blog-post-hero {
background-image: linear-gradient( 180deg, var(--theme--color-black) 1%, var(--theme--color-black) 65%);
}
html[data-theme="light"] ._404_background-gradient,
html[data-theme="light"] .product-hero_gradient,
html[data-theme="light"] .partner-hero_gradient {
visibility: hidden;
}
html[data-theme="light"] .footer_toggle {
justify-content: flex-end;
}
html[data-theme="light"] .network_feature-image {
-webkit-filter: invert(100%);
filter: invert(100%);
}
html[data-theme="light"] {
.network_desktop-image,
.network_mobile-image,
.community-hero_mobile-image,
.app_desktop-image,
.app_mobile-image,
.product-hero_video-container,
.partner-hero_video-container,
.partner-hero_mobile-image-container,
.opportunities_image,
.opportunities_mobile-image {
mix-blend-mode: darken;
}
}
html[data-theme="light"] .product-hero_mobile-image-container {
mix-blend-mode: darken;
-webkit-filter: brightness(110%);
filter: brightness(110%);
}
.product-hero_gradient,
.partner-hero_gradient {
background: linear-gradient(
180deg,
rgba(0, 0, 244, 0.9) 1.63%,
rgba(0, 0, 244, 0) 99.89%
);
}
.community-hero_gradient{
background: linear-gradient(180deg, rgba(0, 0, 244, .9) 1.63%, rgba(0, 0, 244, 0) 99.89%);
}
.events_gradient{
background: linear-gradient(180deg, hsla(0, 0%, 90%, 0), hsla(0, 0%, 100%, .39) 51%, hsla(0, 0%, 95%, 0) 89.23%);
}
.stack_gradient {
position: absolute;
right: 0;
bottom: max(300px, 30.7291666667vw);
left: 0;
opacity: 0.4;
z-index: -1;
margin-left: 0;
background: linear-gradient(
180deg,
hsla(0, 0%, 90%, 0),
hsla(0, 0%, 95%, 0.5) 48.91%,
hsla(0, 0%, 95%, 0) 89.23%
);
width: 100%;
height: max(180px, 18.2291666667vw);
content: "";
pointer-events: none;
-webkit-user-select: none;
user-select: none;
}
.partner-hero_video {
-webkit-mask-size: 250% 100%;
mask-size: 250% 100%;
-webkit-mask-position: center center;
mask-position: center center;
-webkit-mask-repeat: no-repeat;
mask-repeat: no-repeat;
-webkit-mask-image: radial-gradient(
ellipse,
#030303 40%,
rgba(3, 3, 3, 0) 85%,
rgba(3, 3, 3, 0) 100%
);
mask-image: radial-gradient(
ellipse,
#030303 40%,
rgba(3, 3, 3, 0) 85%,
rgba(3, 3, 3, 0) 100%
);
}
@keyframes noise_grain {
0% {
-webkit-transform: translate(20%, -15%);
transform: translate(20%, -15%);
}
10% {
-webkit-transform: translate(-20%, -15%);
transform: translate(-20%, -15%);
}
20% {
-webkit-transform: translate(20%, -5%);
transform: translate(20%, -5%);
}
30% {
-webkit-transform: translate(-20%, -5%);
transform: translate(-20%, -5%);
}
40% {
-webkit-transform: translate(20%, 5%);
transform: translate(20%, 5%);
}
50% {
-webkit-transform: translate(-20%, 5%);
transform: translate(-20%, 5%);
}
60% {
-webkit-transform: translate(20%, 15%);
transform: translate(20%, 15%);
}
70% {
-webkit-transform: translate(-20%, 15%);
transform: translate(-20%, 15%);
}
80% {
-webkit-transform: translate(20%, 5%);
transform: translate(20%, 5%);
}
90% {
-webkit-transform: translate(-20%, 5%);
transform: translate(-20%, 5%);
}
100% {
-webkit-transform: translate(20%, -5%);
transform: translate(20%, -5%);
}
}
.social_subheader:before{
display: block;
position: absolute;
-webkit-transform: translate(-220%, -50%);
transform: translate(-220%, -50%);
border-bottom: max(2px, .1041666667vw) solid blue;
width: max(15px, 1.25vw);
height: max(15px, .9375vw);
content: "";
}
.opportunities_block:nth-child(2n) {
grid-template-columns: auto max(50px, 15.625vw);
}
.opportunities_block:nth-child(2n) .opportunities_image {
grid-area: 1 / 2 / 2 / 3;
}
.opportunities_block:last-child {
padding-bottom: max(60px, 6.25vw);
border-bottom: max(1px, 0.0520833333vw) solid var(--theme--color-grey-light);
}
.opportunities_block:not(:first-child) {
margin-top: max(30px, 4.4791666667vw);
}
.stack_item:before {
padding-top: 0.4166666667vw;
font-size: max(10px, 0.625vw);
content: "0" counter(custom) " ";
}
.section_app div:first-child {
position: relative;
width: 67.7083333333vw;
}
.section_app .app_container {
display: flex;
z-index: 2;
}
.legal_rich-text li::marker {
color: var(--theme--color-accent);
}
.benefits_benefit-icon:before {
position: absolute;
top: 0;
left: 0;
opacity: 0.5;
background: linear-gradient(
134.38deg,
var(--theme--color-white) 4.91%,
var(--theme--color-black) 108.92%
);
content: "";
z-index: -1;
width: max(38px, 1.9791666667vw);
height: max(27px, 1.40625vw);
}
.blog-post_rich-text li::before {
content: "";
position: absolute;
border-radius: 50%;
height: 8px !important;
width: 8px !important;
margin-top: max(8px, 0.78125vw) !important;
background: var(--theme--color-accent) !important;
left: 0 !important;
}
.blog-post_rich-text li::marker {
content: "";
}
.section_hero:before {
position: absolute;
top: 50%;
left: 50%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
z-index: -1;
background: linear-gradient(
0deg,
var(--theme--color-black) 15%,
rgba(9, 9, 121, 0) 50%,
var(--theme--color-black) 100%
),
linear-gradient(
90deg,
var(--theme--color-black) 0,
hsla(0, 0%, 100%, 0) 10%,
hsla(0, 0%, 100%, 0) 50%,
hsla(0, 0%, 100%, 0) 90%,
var(--theme--color-black) 100%
);
width: 101%;
height: 101%;
aspect-ratio: 16/9;
content: "";
pointer-events: none;
}
.section_hero:after {
position: absolute;
top: 50%;
left: 50%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
z-index: -1;
background: linear-gradient(
0deg,
var(--theme--color-black) 15%,
rgba(9, 9, 121, 0) 50%,
var(--theme--color-black) 100%
),
linear-gradient(
90deg,
var(--theme--color-black) 0,
hsla(0, 0%, 100%, 0) 10%,
hsla(0, 0%, 100%, 0) 50%,
hsla(0, 0%, 100%, 0) 90%,
var(--theme--color-black) 100%
);
width: 101%;
height: 101%;
content: "";
pointer-events: none;
}
.section_404:before {
background: radial-gradient(
ellipse farthest-corner at center center,
rgba(4, 4, 4, 0.25) 55%,
var(--theme--color-black) 0
);
width: 120%;
height: 115%;
filter: blur(max(40px, 4.1666666667vw));
will-change: filter, transform;
aspect-ratio: 16 / 9;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
z-index: -1;
content: "";
pointer-events: none;
}
html[data-theme="light"] .section_404:before {
width: 120%;
height: 115%;
background: linear-gradient(
0deg,
var(--theme--color-black) 15%,
rgba(9, 9, 121, 0) 50%,
var(--theme--color-black) 100%
);
}
/* Get rid of top margin on first element in any rich text element */
.w-richtext > :not(div):first-child,
.w-richtext > div:first-child > :first-child {
margin-top: 0 !important;
}
/* Get rid of bottom margin on last element in any rich text element */
.w-richtext > :last-child,
.w-richtext ol li:last-child,
.w-richtext ul li:last-child {
margin-bottom: 0 !important;
}
.blog_card-title {
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
text-overflow: ellipsis;
}
.blog_preview,
.blog_summary,
.latest-news_summary {
display: -webkit-box;
-webkit-line-clamp: 4;
-webkit-box-orient: vertical;
overflow: hidden;
text-overflow: ellipsis;
}
.blog_link-text:before,
.nav_link:before,
.footer_link:before {
position: absolute;
top: 100%;
left: 0;
right: 0;
opacity: 0;
width: 0;
background-image: repeating-linear-gradient(
0deg,
currentcolor,
currentcolor 100%,
transparent 0,
transparent 0,
currentcolor 0
),
repeating-linear-gradient(
90deg,
currentcolor,
currentcolor 100%,
transparent 0,
transparent 0,
currentcolor 0
),
repeating-linear-gradient(
currentcolor,
currentcolor 100%,
transparent 0,
transparent 0,
currentcolor 0
),
repeating-linear-gradient(
270deg,
currentcolor,
currentcolor 100%,
transparent 0,
transparent 0,
currentcolor 0
);
background-position: 0 0, 0 0, 100% 0, 0 100%;
background-repeat: no-repeat;
background-size: 0 100%, 100% 0, 0 100%, 100% 2px;
height: max(1px, 0.0520833333vw);
-webkit-animation: link_border__mvlME var(--duration-normal) linear infinite;
animation: link_border__mvlME var(--duration-normal) linear infinite;
content: "";
pointer-events: none;
transition: all var(--duration-normal) var(--ease);
}
.nav_link:hover::before,
.blog_link-text:hover::before,
.footer_link:hover::before {
width: 100%;
opacity: 1;
transition: all var(--duration-normal) var(--ease);
}
.blog-hero_card:hover .blog_hero-card-image-container {
-webkit-filter: brightness(125%);
filter: brightness(125%);
transition: -webkit-filter var(--duration-normal);
transition: filter var(--duration-normal);
transition: filter var(--duration-normal),
-webkit-filter var(--duration-normal);
}
.blog_card:hover .blog_card-image-container {
-webkit-filter: brightness(125%);
filter: brightness(125%);
transition: -webkit-filter var(--duration-normal);
transition: filter var(--duration-normal);
transition: filter var(--duration-normal),
-webkit-filter var(--duration-normal);
}
.blog_link:hover .blog_link-icon {
-webkit-transform: rotate(45deg) scale(1.15);
transform: rotate(45deg) scale(1.15);
}
.blog_link-icon {
transition: transform var(--normal-transition),
-webkit-transform var(--normal-transition);
}
@media (min-width: 1600px) {
.blog_grid {
grid-template-columns: repeat(3, 1fr);
}
}
@media (max-width: 990px) {
.social_subheader:before{
visibility:hidden;
}
.opportunities_block:last-child {
border-bottom: unset;
padding-bottom: 5.3333333333vw;
}
.opportunities_block:not(:first-child) {
margin-top: max(60px, 5.859375vw);
}
.blog_link-text:before,
.nav_link:before {
top: 105%;
}
html[data-theme="light"] .nav_menu {
background-image: linear-gradient(
180deg,
var(--theme--color-black) 1%,
var(--theme--color-black) 65%
); /* Use decimal value for opacity with higher specificity */
}
.section_hero:before,
.section_hero:after {
display: none;
}
.section_app div:first-child {
width: 100%;
min-height: max(340px, 50.6666666667vw);
order: 2;
}
}
</style></div><div class="noise-component"></div><header class="nav_component"><nav class="nav_container"><a aria-label="Go to Homepage" href="/" class="nav_logo-wrapper w-inline-block"><svg xmlns="http://www.w3.org/2000/svg" width="601" height="106" viewBox="0 0 601 106" fill="none" class="nav_logo"><path fill-rule="evenodd" clip-rule="evenodd" d="M18.2894 55.7848C30.5189 43.5558 38.0888 26.6671 38.0854 8.02048C38.09 5.48949 37.9502 2.98667 37.6724 0.514839L0.560059 0.518218L0.561185 71.8255C0.557804 80.4687 3.85339 89.1148 10.4451 95.7065C17.0374 102.298 25.6897 105.598 34.3346 105.593L34.3323 105.596L105.642 105.597L105.64 68.4797C103.173 68.2076 100.671 68.0673 98.134 68.0667C79.4918 68.069 62.6026 75.6383 50.373 87.8673C41.474 96.5432 27.2059 96.5449 18.4167 87.7557C9.6332 78.9722 9.62925 64.6996 18.2894 55.7848ZM97.9446 8.23121C87.6956 -2.01727 71.0447 -2.02122 60.7923 8.23121C50.5398 18.4831 50.5438 35.134 60.7923 45.3819C71.0464 55.636 87.6922 55.6343 97.9446 45.3819C108.197 35.13 108.199 18.4848 97.9446 8.23121Z" fill="var(--theme--color-white)"></path><path d="M165.931 98.1547H206.814V86.3139H179.596V7.9399H165.931V98.1547Z" fill="var(--theme--color-white)"></path><path d="M262.275 7.9399H239.613L215.925 98.1547H230.046L235.968 75.6011H265.236L271.158 98.1547H285.962L262.275 7.9399ZM238.815 64.3243L250.659 17.6379H251.114L262.502 64.3243H238.815Z" fill="var(--theme--color-white)"></path><path d="M331.202 42.9061H347.145C347.145 17.195 338.832 6.14364 319.472 6.14364C299.087 6.14364 290.319 20.1272 290.319 52.9428C290.319 85.871 299.087 99.9673 319.472 99.9673C338.832 99.9673 347.145 89.2539 347.259 64.3322H331.316C331.202 83.8415 328.81 88.6905 319.472 88.6905C308.767 88.6905 306.148 81.586 306.262 52.9428C306.262 24.4122 308.881 17.3077 319.472 17.4204C328.81 17.4204 331.202 22.4954 331.202 42.9061Z" fill="var(--theme--color-white)"></path><path d="M388.201 6.14421C408.927 6.25746 417.81 20.3532 417.81 53.056C417.81 85.7589 408.927 99.8551 388.201 99.9678C367.361 100.081 358.478 85.9843 358.478 53.056C358.478 20.1278 367.361 6.03152 388.201 6.14421ZM374.421 53.056C374.421 81.5866 377.154 88.6911 388.201 88.6911C399.133 88.6911 401.867 81.5866 401.867 53.056C401.867 24.4128 399.133 17.3083 388.201 17.4215C377.154 17.5342 374.421 24.6387 374.421 53.056Z" fill="var(--theme--color-white)"></path><path d="M447.595 98.042L433.929 98.1547V7.9399H457.958L480.393 81.4649H480.62V7.9399H494.283V98.1547H471.738L447.823 18.9913H447.595V98.042Z" fill="var(--theme--color-white)"></path><path d="M528.434 7.9399H514.77V98.1547H528.434V7.9399Z" fill="var(--theme--color-white)"></path><path d="M584.502 42.9061H600.447C600.447 17.195 592.131 6.14364 572.771 6.14364C552.391 6.14364 543.618 20.1272 543.618 52.9428C543.618 85.871 552.391 99.9673 572.771 99.9673C592.131 99.9673 600.447 89.2539 600.56 64.3322H584.615C584.502 83.8415 582.113 88.6905 572.771 88.6905C562.066 88.6905 559.451 81.586 559.564 52.9428C559.564 24.4122 562.184 17.3077 572.771 17.4204C582.113 17.4204 584.502 22.4954 584.502 42.9061Z" fill="var(--theme--color-white)"></path></svg></a><div class="nav_menu"><div class="nav_links"><a data-w-id="fbd3c3c8-569b-7ba4-52f1-12d65e5c9f1e" href="/products" class="nav_link">Products</a><a data-w-id="fbd3c3c8-569b-7ba4-52f1-12d65e5c9f20" href="/partners" aria-current="page" class="nav_link w--current">Partners</a><a data-w-id="fbd3c3c8-569b-7ba4-52f1-12d65e5c9f22" href="/community" class="nav_link">Community</a><a data-w-id="fbd3c3c8-569b-7ba4-52f1-12d65e5c9f24" href="/blog" class="nav_link">Blog</a></div><a href="https://github.com/cerc-io/stack-orchestrator" target="_blank" class="button mobile-nav w-button">GET STARTED</a><div class="hide-on-desktop"><div class="nav_secondary-menu"><div class="theme-toggle_wrapper"><div id="toggle-label" class="footer_toggle-label">Dark Mode</div><a id="theme-toggle" href="#" class="footer_toggle w-inline-block"><div class="footer_toggle-circle"></div></a></div><div class="nav_social"><a aria-label="Visit our Twitter" href="https://twitter.com/laconicnetwork" target="_blank" class="socia
const root = document.documentElement;
// Setup object to store all class and ID selectors
const setup = {
themeToggleButtons: document.querySelectorAll('#theme-toggle'),
lottiePaths: () => document.querySelectorAll('#nav-button svg path'),
toggleLabels: document.querySelectorAll('#toggle-label'),
themeColorVariable: '--theme--color-white'
};
// Update theme-dependant images
function updateImageSources() {
const images = document.querySelectorAll('img[data-src-dark]');
images.forEach(img => {
const currentTheme = root.getAttribute('data-theme');
const newSrc = currentTheme === 'dark' ? img.getAttribute('data-src-dark') : img.getAttribute('data-src-light');
img.setAttribute('src', newSrc);
});
}
// update theme dependant background images
function updateBackgroundImages() {
const elements = document.querySelectorAll('[data-bg-dark]');
elements.forEach(element => {
const currentTheme = root.getAttribute('data-theme');
const newBg = currentTheme === 'dark' ? element.getAttribute('data-bg-dark') : element.getAttribute('data-bg-light');
element.style.backgroundImage = `url(${newBg})`;
});
}
// Update lottie assets to match theme
function updateLottiePathColors() {
const paths = setup.lottiePaths();
if (paths.length > 0) {
paths.forEach(path => {
path.style.fill = `var(${setup.themeColorVariable})`;
});
}
}
function updateVideoVisibility() {
const darkVideo = document.querySelector('#background-video-dark');
const lightVideo = document.querySelector('#background-video-light');
if (darkVideo && lightVideo) {
const currentTheme = root.getAttribute('data-theme');
if (currentTheme === 'dark') {
darkVideo.style.display = 'block';
lightVideo.style.display = 'none';
} else {
darkVideo.style.display = 'none';
lightVideo.style.display = 'block';
}
} else {
console.log('No background video elements found on this page.');
}
}
// Theme toggle
function toggleTheme() {
const currentTheme = root.getAttribute('data-theme');
if (currentTheme === 'dark') {
root.setAttribute('data-theme', 'light');
localStorage.setItem('theme', 'light');
setup.toggleLabels.forEach(label => label.textContent = 'Light Mode');
} else {
root.setAttribute('data-theme', 'dark');
localStorage.setItem('theme', 'dark');
setup.toggleLabels.forEach(label => label.textContent = 'Dark Mode');
}
updateImageSources(); // Update images when the theme is toggled
updateLottiePathColors(); // Update Lottie colors when the theme is toggled
updateVideoVisibility() // Update background videos when theme is toggled
updateBackgroundImages(); // For background image swap
}
// Initialize the theme
function initializeTheme() {
const storedTheme = localStorage.getItem('theme');
// Set the initial theme
if (storedTheme) {
root.setAttribute('data-theme', storedTheme);
setup.toggleLabels.forEach(label => {
label.textContent = storedTheme === 'dark' ? 'Dark Mode' : 'Light Mode';
});
console.log(`Theme set to: ${storedTheme}`);
} else {
root.setAttribute('data-theme', 'dark');
setup.toggleLabels.forEach(label => label.textContent = 'Dark Mode');
console.log('Theme set to: dark');
}
updateImageSources();
updateLottiePathColors();
updateVideoVisibility()
updateBackgroundImages(); // For background image swap
}
// When page content is loaded
document.addEventListener('DOMContentLoaded', () => {
// Initialize the theme
initializeTheme();
// Add event listener to all theme toggle buttons
setup.themeToggleButtons.forEach(button => {
button.addEventListener('click', toggleTheme);
});
// Ensure Lottie path colors and image sources are updated on page load
window.addEventListener('load', () => {
updateLottiePathColors();
updateImageSources();
updateVideoVisibility()
});
});
</script></body></html>