diff --git a/_includes/divider.html b/_includes/divider.html new file mode 100644 index 0000000..7081bab --- /dev/null +++ b/_includes/divider.html @@ -0,0 +1,3 @@ +
+
+
\ No newline at end of file diff --git a/_includes/footer.html b/_includes/footer.html index 15e26d0..9980ad0 100644 --- a/_includes/footer.html +++ b/_includes/footer.html @@ -39,47 +39,5 @@ - - - - \ No newline at end of file + + \ No newline at end of file diff --git a/_includes/live-tools.html b/_includes/live-tools.html new file mode 100644 index 0000000..87135ff --- /dev/null +++ b/_includes/live-tools.html @@ -0,0 +1,61 @@ +
+
+

ready to use

+

Production-ready, verifiable open source tools.

+

+
+ +
+
+
+
+
+ StageX +
+

Security-first Linux distribution for reducing supply chain risks. Minimal, bootstrapped, hermetic, deterministic, reproducible, and multi-party signed.

+ + View git repository + + +
+
+
+
+
+ AirgapOS +
+

Immutable Linux distribution for offline secret management. Diskless, reproducible, and hardened for air-gapped environments.

+ + View git repository + + +
+
+
+
+
+
+
+ Keyfork +
+

Toolchain for generating and managing a wide range of cryptographic keys offline and on smartcards from a shared BIP39 mnemonic phrase.

+ + View git repository + + +
+
+
+
+
+ Icepick +
+

Framework for rapidly developing applications to perform transfer and staking cryptocurrency operations..

+ + View git repository + + +
+
+
+
\ No newline at end of file diff --git a/_includes/powered-by.html b/_includes/powered-by.html index 8de506c..d755672 100644 --- a/_includes/powered-by.html +++ b/_includes/powered-by.html @@ -11,7 +11,8 @@
-

Secured billions in digital assets by integrating StageX and AirgapOS into Turnkey's critical infrastructure, eliminating potential attack vectors.

+

Turnkey secures billions of dollars in digital assets and relies on Distrust tools to address fundamental risks in their technology stack.

+

Turnkey secures billions of dollars in digital assets and relies on Distrust tools to systematically address fundamental risks in their technology stack.

Learn more @@ -23,7 +24,7 @@
-

Eliminated single points of failure for Mysten Labs, creators of the SUI cryptocurrency, by securely integrating StageX into their deterministic nodes—protecting billions in transaction value.

+

The creators of the SUI blockchain, Mysten Labs, eliminate single points of failure in their systems with the help of Distrust tooling and advice.

Learn more @@ -35,7 +36,7 @@
-

Strengthened kubernetes deployments at Sidero Labs by leveraging StageX to secure their Talos Linux distribution—ensuring robust protection for critical cloud infrastructure.

+

Sidero Labs' Talos Linux, a widely used Kubernetes distribution, uses Distrust's StageX and services, to bolster their supply chain security.

Learn more diff --git a/_includes/primary-cta.html b/_includes/primary-cta.html index 4ce8fba..62d105a 100644 --- a/_includes/primary-cta.html +++ b/_includes/primary-cta.html @@ -1,8 +1,8 @@

can't afford a breach?

-

Let's talk. We help teams where security is mission-critical.

+

Let's talk. We help teams where security is mission-critical.

- Work with us + Work with us
diff --git a/_includes/testimonials.html b/_includes/testimonials.html new file mode 100644 index 0000000..5d539c9 --- /dev/null +++ b/_includes/testimonials.html @@ -0,0 +1,44 @@ +
+
+ +
+ “Fusce vel dui. In turpis. Maecenas nec odio et ante tincidunt tempus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia” +
+
+ Jess Newman +
+

Jess Newman

+

CTO at Ledn

+
+
+
+ +
+ +
+ “Fusce vel dui. In turpis. Maecenas nec odio et ante tincidunt tempus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia” +
+
+ Jess Newman +
+

Jess Newman

+

CTO at Mysten Labs

+
+
+
+
+ +
+ +
+ “Fusce vel dui. In turpis. Maecenas nec odio et ante tincidunt tempus. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia” +
+
+ Jess Newman +
+

John Doe

+

CTO at Etherfi

+
+
+
+ \ No newline at end of file diff --git a/_includes/threatmodel-cta.html b/_includes/threatmodel-cta.html new file mode 100644 index 0000000..0d545d1 --- /dev/null +++ b/_includes/threatmodel-cta.html @@ -0,0 +1,32 @@ +
+
+

distrust
threat model

+
+
+ +
+
+ +
+
+
+

Tiered threat levels

+

From script kiddies to nation states, our model adapts to what you’re protecting, and who you're protecting against.

+
+
+

Cut attack surface

+

Rather than focusing on specific vulnerabilities, our model helps eliminate entire classes of attacks by design.

+
+
+

Assume compromise

+

Design with the assumption that systems are already breached to build resilient defenses.

+
+
+
+ +
+
\ No newline at end of file diff --git a/_includes/why-choose-distrust.html b/_includes/why-choose-distrust.html new file mode 100644 index 0000000..4c52ab5 --- /dev/null +++ b/_includes/why-choose-distrust.html @@ -0,0 +1,33 @@ +
+
+
+

why choose Distrust

+

Benefit from our approach—a blend of proven methodologies and open source tooling we created, shaped by lessons from securing some of the world's highest-risk organizations.

+
+
+
+
+
+
+
+ +

Eliminate root causes

+

We don't just scan for bugs—we eliminate entire categories of bugs at the source using a first-principles methodology.

+
+
+ +

Verifiable

+

No guessing, no shortcuts. Every recommendation is backed by logic and rigor, not gut feel or just to check boxes.

+
+
+ +

Proven track record

+

Our security engineers have secured some of the highest risk infrastructure in the world (BitGo, Turnkey, Unit 410).

+
+
+ +

Embedded collaborations

+

We act as true partners— our goal is to make our clients succeed and not depend on us.

+
+
+
\ No newline at end of file diff --git a/_layouts/company.html b/_layouts/company.html index f421b82..9a4f99f 100644 --- a/_layouts/company.html +++ b/_layouts/company.html @@ -20,16 +20,6 @@

the world is built on blind trust. we are here to change that.


-
-
-

Too often, security is an afterthought—based on dogma, checklists, and outdated best practices. Distrust was founded to redefine security by developing new methods to eliminate single points of failure, and building systems in a manner where they don't need to be blindly trusted. -

-

We don’t just advise on security. We build it. We open source it. And we teach organizations how to think critically about risk—because security isn’t about checking boxes. -

- - Learn more - - @@ -67,7 +57,7 @@ Keyoxide | Website - + @@ -75,15 +65,34 @@

who we are

Distrust is made up of engineers behind some of the most security-critical projects in the world—including BitGo, Turnkey, and Unit410.

We’ve helped hundreds of companies by conducting security reviews, building out their security infrastructure, and aiding them in launching products which can withstand the modern threat landscape. We don’t just secure systems. We build them.

-
- Work with us -
- + {% include values.html %} - {% include primary-cta.html %} +
+ +
+
+
+
+
+

our approach

+

Too often, security is an afterthought—based on dogma, checklists, and outdated best practices. Distrust was founded to redefine security by developing new methods to eliminate single points of failure, and building systems in a manner where they don't need to be blindly trusted.

+

We don’t just advise on security. We build it. We open source it. And we teach organizations how to think critically about risk—because security isn’t about checking boxes.

+ +
+
+ + {% include why-choose-distrust.html %} + + {% include primary-cta.html %} + {%- include footer.html -%} diff --git a/_layouts/contact.html b/_layouts/contact.html index 068b07d..f7c1fe8 100644 --- a/_layouts/contact.html +++ b/_layouts/contact.html @@ -3,59 +3,82 @@ {%- include head.html -%} {%- include header.html -%} -
-
-
-
-
contact
-
-
-

tell us about your biggest security challenges

-
-
-
-
-
-
-
- - -
-
- - - + +
+
+
+ +
+

contact us

+

+ Building something new or need a second set of eyes on what’s already live? Our security engineers are ready to help you move faster, safer, and with full control.
+

+
+
    +
  • BitGo
  • +
  • Ledn
  • +
  • Bishop Fox
  • +
  • Turnkey
  • +
  • FalconX
  • +
  • Mysten Labs
  • +
  • Sidero Labs
  • +
  • Zoom
  • +
  • Ankr
  • +
  • Exodus
  • +
  • HashiCorp
  • +
  • Fitbit
  • +
+
+
+ +
+ +
+
+ + +
+
+
+
- - + + - - + + - + + - - - -

We respect your privacy. The information you provide will only be used to respond to your inquiry and will never be shared externally.

- -
+ -
- {% include companies-carousel.html hide_title='true' %} + + + +

We respect your privacy. The information you provide will only be used to respond to your inquiry and will never be shared externally.

+ +
+
+
+ + +{% include testimonials.html %} +
diff --git a/_layouts/landing.html b/_layouts/landing.html index b4a3fb5..64aa78a 100644 --- a/_layouts/landing.html +++ b/_layouts/landing.html @@ -27,7 +27,6 @@ - {% include companies-carousel.html %}
@@ -35,16 +34,19 @@
what we do

-

our services today, our vision for tomorrow

+
+

our services today, our vision for tomorrow

+

-
- - {% include powered-by.html %} + {% include threatmodel-cta.html %} + {% include values.html %} {% include primary-cta.html %} diff --git a/_layouts/services.html b/_layouts/services.html index 9b99d3a..ea6477c 100644 --- a/_layouts/services.html +++ b/_layouts/services.html @@ -24,7 +24,7 @@ solve your hardest security challenges
-

Engineers behind BitGo, Unit410, and Turnkey—we apply lessons from securing critical infrastructure to build transparent, resilient, and universally applicable solutions.

+

Built by engineers behind BitGo, Unit410, and Turnkey, we apply hard-earned lessons from securing critical infrastructure to build transparent, resilient, and universally applicable security solutions.

Work with us
@@ -32,17 +32,16 @@ -

our services

-

Distrust offers high-impact security consulting and open source tooling for companies that can't afford to fail. +

Distrust offers high-impact security consulting and open source tooling for companies that can't afford to fail.

retainer / fractional CISO

-

Get ongoing security leadership tailored precisely to your organization's needs. We embed with your team to provide strategic security direction and eliminate blind trust from your infrastructure—so you're prepared before threats emerge.

+

Get ongoing security leadership tailored precisely to your organization's needs. We embed with your team to provide strategic security direction and eliminate blind trust from your infrastructure—so you're prepared before threats emerge.

  • Security program development
  • Incident response
  • @@ -58,7 +57,7 @@

    security assessments

    -

    Our assessments go beyond vulnerability scans—we eliminate risks at their source. Using first-principles threat modelling, we identify single points of failure and deliver actionable recommendations to secure your systems against sophisticated threats.

    +

    Our assessments go beyond vulnerability scans—we eliminate risks at their source. Using first-principles threat modelling, we identify single points of failure and deliver actionable recommendations to secure your systems against sophisticated threats.

    • Secure architecture review
    • Security audits
    • @@ -76,40 +75,7 @@ {% include companies-carousel.html %} -
      -
      -
      -

      why choose Distrust

      -

      Benefit from our approach—a blend of proven methodologies and open source tooling we created, shaped by lessons from securing some of the world's highest-risk organizations.

      -
      -
      -
      -
      -
      -
      -
      - -

      Eliminate root causes

      -

      We don't just scan for bugs—we eliminate entire categories of bugs at the source using a first-principles methodology.

      -
      -
      - -

      Verifiable

      -

      No guessing, no shortcuts. Every recommendation is backed by logic and rigor, not gut feel or just to check boxes.

      -
      -
      - -

      Proven track record

      -

      Our security engineers have secured some of the highest risk infrastructure in the world (BitGo, Turnkey, Unit 410).

      -
      -
      - -

      Embedded collaborations

      -

      We act as true partners— our goal is to make our clients succeed and not depend on us.

      -
      -
      -
      - + {% include why-choose-distrust.html %}
- - -
-

can't afford a breach?

-

Let's talk. We help teams where security is mission-critical.

-
- Work with us -
-
+ {%- include primary-cta.html -%} diff --git a/_layouts/software.html b/_layouts/software.html index 1f20b95..d43d993 100644 --- a/_layouts/software.html +++ b/_layouts/software.html @@ -25,113 +25,36 @@

Most systems still rely on single individuals or computers, unverifiable software, and opaque processes. We’re redesigning security for transparency from the ground up.

- View software + View software
- + {%- include live-tools.html -%} -
-
-

live tools

-

Open source. Verifiable. Ready to use.

-
-
-
-
-
-
-
-
-
-
-

StageX

-

Minimal, security-first Linux distribution for verifiable builds. Bootstrapped from Stage 0, it's hermetic, reproducible, and cryptographically multi-signed.

-
-
-

AirgapOS

-

Immutable Linux distribution for offline secret management. Diskless, reproducible, and hardened for air-gapped environments.

-
-
-

Keyfork

-

Deterministic key management toolchain—offline, air-gapped and smartcard-ready. Built for secure recovery, reproducibility, and cryptographic resilience.

-
-
-

Icepick

-

Framework for building offline-first cryptocurrency tools—supporting transfers, staking, and signing across Bitcoin, Ethereum, Solana, and more.

-
-
-
- +
+ +
+
- - -
+
-

live tools

-

XXXX Open source. Verifiable. Ready to use.

+

building blocks
for provable security

+

Modern software systems still rely on trust—maintainers, IT admins, third-party providers. But what happens when they are compromised? How do you verify that your systems haven't been tampered with?

+

We’ve identified critical gaps and built tools to remove single points of failure across all levels of the software lifecycle—from toolchains and dependencies to how code is built, signed, verified and deployed.

+

By combining multi-party trust, remote attestation, and bit-for-bit reproducibility, we are eliminating trust assumptions, ensuring security isn't just a claim—it's provable. And as everything we do, all our software is open source.

+ + See what we're building + +
+
- -
-
-
-
-
- StageX -
-

Minimal, security-first Linux distribution for verifiable builds. Bootstrapped from Stage 0, it's hermetic, reproducible, and cryptographically multi-signed.

- - View git repository - - -
-
-
-
-
- AirgapOS -
-

Immutable Linux distribution for offline secret management. Diskless, reproducible, and hardened for air-gapped environments.

- - View git repository - - -
-
-
-
-
-
-
- Keyfork -
-

Deterministic key management toolchain—offline, air-gapped and smartcard-ready. Built for secure recovery, reproducibility, and cryptographic resilience.

- - View git repository - - -
-
-
-
-
- Icepick -
-

Framework for building offline-first cryptocurrency tools—supporting transfers, staking, and signing across Bitcoin, Ethereum, Solana, and more.

- - View git repository - - -
-
-
-
- -

our roadmap

@@ -167,7 +90,7 @@
-

in-progress

+

in-progress

Trove

Documentation for managing secrets that you can't afford to lose.

@@ -194,7 +117,7 @@
-

active

+

active

StageX

Hermetic, deterministic, reproducible, multi-signed OCI-based build toolchain.

@@ -230,37 +153,29 @@
+ {%- include divider.html -%} + {% include powered-by.html %} -
- -
-
- + {%- include divider.html -%}
-

❝You can't build a better world on unverifiable systems. We eliminate single points of failure by rethinking security from first principles, and open sourcing everything we build.❝ — Distrust team

+

❝We want to use our knowledge to improve security, privacy, and freedom for as many people as possible. We believe that verifiable foundations for building technology are essential to human wellbeing and solving the coordination problem.❝ — Distrust team

-
-

want to help with our vision?

-

Fund the work. Fork the code. Join the mission.

+ {%- include divider.html -%} + +
+

fund open source development

+

Your support funds the tools. Your forks spread the mission. Help us build transparent, verifiable security tools — together.

+

Your support funds the tools. Help us build transparent, verifiable security tools — together.

-
+ diff --git a/_layouts/threatmodel.html b/_layouts/threatmodel.html index 40247e2..0529dc1 100644 --- a/_layouts/threatmodel.html +++ b/_layouts/threatmodel.html @@ -3,16 +3,19 @@ {%- include head.html -%} {%- include header.html -%} +
-
+
-

Distrust Threat Model

-

Unlike conventional frameworks (e.g., STRIDE, PASTA) that focus on identifying and mitigating specific risks, the Distrust Threat Model assumes that at some level systems are already compromised. This pessimistic, assumption-driven approach focuses on building systems that can remain secure even when up against the worst case adversary that have reason to target an organization.

+

Distrust threat model

+

Distrust's threat model aids organizations in methodically eliminating surface area for attack, making entire classes of attacks impossible. +
+
Unlike conventional frameworks (e.g., STRIDE, PASTA) that focus on identifying and preventing specific risks, our threat model assumes that at some level systems are already compromised. This pessimistic set of assumptions allows organizations to build systems that can remain secure even when up against their worst case adversary.

-
+

Levels

While the end-goal is to adequately address the risks which stem from the assumptions, organizations are at varying levels of maturity and often need a path towards mitigating threats in a phased approach. To this end, the threat model defines 4 levels, each corresponding to increasingly more sophisticated threat actors as the levels increase. Each threat actor is assumed to have access to specific methods of attack limited by factors such as cost to execute, sophistication, time required etc.

@@ -20,12 +23,12 @@
-
+

Level 1

Defense against remote adversaries with limited resources.

Adversary
-

An unskilled or lightly skilled individual leveraging widely available tools and publicly known vulnerabilities. Their attacks are largely opportunistic and automated. We do however assume they can be very patient and willing to work across a long time horizon.

+

An unskilled or lightly skilled individual leveraging widely available tools and publicly known vulnerabilities. Their attacks are largely opportunistic and automated. We do, however, assume they can be very patient and willing to work across a long time horizon.

Capabilities
  • Scanning for and exploiting known vulnerabilities with public exploits.
  • @@ -37,7 +40,7 @@
-
+

Level 2

Defense against insiders.

@@ -57,7 +60,7 @@
-
+

Level 3

Defense against well-funded organizations.

@@ -75,7 +78,7 @@
-
+

Level 4

Defense against nation state actors. diff --git a/_sass/base.scss b/_sass/base.scss index 0512b72..199c29e 100644 --- a/_sass/base.scss +++ b/_sass/base.scss @@ -28,7 +28,7 @@ body { margin: 0 auto; padding: 0; font-family: $base-font-family; - font-size: $base-font-size; + font-size: clamp(1.25rem, 2.5vw, 1.4rem); color: var(--text-color); text-align: left; line-height: $base-line-height !important; @@ -42,21 +42,21 @@ body > div.container { } h1 { - font-size: 120px !important; - line-height: 100px !important; + font-size: clamp(3rem, calc(7vw + 1rem), 7.5rem) !important; + line-height: 0.9 !important; font-weight: 400 !important; } h2 { - font-size: 90px !important; - line-height: 80px !important; - width: 100% !important; + font-size: clamp(3rem, calc(7vw + 1rem), 5.6rem) !important; + line-height: 0.9 !important; font-weight: 400 !important; + width: 100% !important; } h3 { - font-size: 50px !important; - line-height: 50px !important; + font-size: clamp(1.5rem, 10vw, 3.5rem) !important; + line-height: 0.9 !important; width: 100% !important; } @@ -88,7 +88,8 @@ h6 { } p { - font-size: $base-font-size; + //font-size: $base-font-size;// + font-size: clamp(1.25rem, 2.5vw, 1.4rem); } p, @@ -115,6 +116,10 @@ a:hover { margin: auto; } +.divider { + margin-top: 3rem; +} + .gradient-text { font-size: 48px; font-weight: bold; @@ -140,6 +145,10 @@ a:hover { padding-bottom: 20px; } +h3.gradient-text.center { + overflow: visible; +} + .capsule-header { margin-top: 80px; margin-bottom: 30px; @@ -150,9 +159,9 @@ a:hover { background: var(--dark-grey); border: 1px solid var(--mid-purple); border-radius: 20px; - padding: 45px; + padding: 45px; margin: 20px; - min-height: 420px; + min-height: 430px; max-width: 550px; } @@ -160,6 +169,14 @@ a:hover { border: 1px solid var(--light-purple); } +.text-description-desktop { + display: block; +} + +.text-description-mobile { + display: none; +} + @mixin capsule { font-weight: 400; font-size: 16px; @@ -263,12 +280,12 @@ a:hover { .mini-card p { margin: 0px; - font-size: 1rem; + font-size: 1rem !important; color: var(--light-grey); } .mini-card { - font-size: 1rem; + font-size: 1rem !important; } .mini-card b { @@ -294,11 +311,11 @@ a:hover { } .column-progress .mini-card:hover { - border: 1px solid var(--light-teal); + border: 1px solid var(--light-purple); } .column-active .mini-card:hover { - border: 1px solid var(--light-purple); + border: 1px solid var(--light-teal); } .kanban-column a:hover { @@ -363,6 +380,11 @@ a:hover { max-width: 700px; } +.threat-model { + margin-top: 1rem; + margin-bottom: 1.5rem; +} + .narrow-list > li > p { margin-top: 0px; } @@ -398,6 +420,10 @@ a:hover { color: white !important; } +.live-tools-cards .arrow-link:hover .arrow { + color: var(--light-teal) !important; +} + .mini-card:hover .arrow { transform: translateX(5px); } @@ -448,9 +474,15 @@ a:hover { display: flex; flex-direction: column; border: 1px solid var(--mid-grey); - min-height: 405px; - padding: 35px; + min-height: 400px; + padding: min(2.5em,8%); background: none; + width: 100%; + +} + +.powered-by .card:hover { + border: 1px solid var(--light-grey) } .powered-by img { @@ -469,6 +501,23 @@ a:hover { margin-top: auto; } +.live-tools-cards .card { + display: flex; + flex-direction: column; + min-height: 360px; + padding: 35px; + background: none; + border: 1px solid var(--light-teal); +} + +.live-tools-cards .arrow-link { + margin-top: 0.75rem; +} + +.live-tools-cards .card:hover { + box-shadow: 0 0 15px var(--dark-teal); +} + .video-background { left: 85%; width: 200px !important; @@ -515,22 +564,48 @@ a:hover { padding: 2rem; } -.video-background-philosophy { +.video-background-philosophy, .video-background-our-approach { left: 85%; width: 200px !important; } +.video-background-building-blocks { + right: 80%; + width: 100% !important; +} + .video-background-container-philosophy { position: absolute; width: 100%; height: 800px; overflow: hidden; - top: 3150px; + top: 2950px; left: 0; z-index: -1; } -.gradient-overlay-philosophy { +.video-background-container-our-approach { + position: absolute; + width: 100%; + height: 800px; + overflow: hidden; + top: 1850px; + left: 0; + z-index: -1; + transform: scaleY(-1) +} + +.video-background-container-building-blocks { + position: absolute; + width: 100%; + height: 800px; + overflow: hidden; + top: 2170px; + left: 0; + z-index: -1; +} + +.gradient-overlay-philosophy, .gradient-overlay-our-approach { background: linear-gradient(to bottom, #0f0f0f 0%, rgba(15, 15, 15, 0) 25%, rgba(15, 15, 15, 0) 75%, #0f0f0f 100%), linear-gradient(to left, rgb(15, 15, 15) 0%, rgba(15, 15, 15, 0) 100%); position: absolute; top: 0; @@ -541,7 +616,18 @@ a:hover { pointer-events: none; } -.video-background-philosophy { +.gradient-overlay-building-blocks { + background: linear-gradient(to bottom, #0f0f0f 0%, rgba(15, 15, 15, 0) 25%, rgba(15, 15, 15, 0) 75%, #0f0f0f 100%), linear-gradient(to right, rgb(15, 15, 15) 40%, rgba(15, 15, 15, 0) 100%); + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: -1; + pointer-events: none; +} + +.video-background-philosophy, .video-background-our-approach { position: absolute; top: 50%; left: 50%; @@ -554,22 +640,107 @@ a:hover { object-fit: cover; } -.video-content-philosophy { +.video-background-building-blocks { + position: absolute; + top: 50%; + left: 70%; + min-width: 100%; + min-height: 100%; + width: auto; + height: auto; + transform: translate(-50%, -50%); + z-index: -1; + object-fit: cover; +} + +.video-content-philosophy, .video-content-our-approach, .video-content-building-blocks { position: relative; z-index: 1; color: #fff; padding: 2rem; } +.video-content-building-blocks .why-distrust { + font-size: 70px !important; + line-height: 70px !important; +} + +.video-content-building-blocks { + margin-top: 15rem; + margin-bottom: 15rem; +} + .why-choose-distrust .properties .flex-container-inner { border-top: 1px solid var(--light-purple); margin-right: 40px; } -.why-choose-distrust svg { +.flex-container.properties { + display: flex; + flex-wrap: wrap; +} + +.flex-container.properties .flex-container-inner { + flex: min-content; + max-width: 40%; + box-sizing: border-box; +} + +.threatmodel-cta .properties .flex-container-inner { + border-top: 1px solid var(--pink); + margin-right: 40px; +} + +.why-choose-distrust svg, .threatmodel-cta svg { margin-top: 20px; } +.threatmodel-cta-columns { + display: flex; + justify-content: space-between; + align-items: center; + flex-wrap: wrap; + gap: 1rem; + margin-top: 15rem; + } + + + .flex-container-inner { + flex: 1; + min-width: 250px; + } + + .flex-container-inner .card .landing-offerings { + min-height: 480px; + } + + .threatmodel-cta-right-column .button-container { + flex-shrink: 0; + display: block; + } + + .threatmodel-cta-bottom .button-container { + display: none; + } + + .threatmodel-cta-right-column .mega.button, .threatmodel-cta-bottom .mega.button { + border: 2px solid var(--pink); + box-shadow: 0 0 18px var(--pink); + background-color: #2A0A1F; + } + + .threatmodel-cta-right-column .mega.button:hover, .threatmodel-cta-bottom .mega-inverted.button:hover { + border: 2px solid var(--pink); + box-shadow: 0 0 18px var(--pink); + background-color: var(--pink); + } + + + .button-container.center { + display: flex; + justify-content: flex-end; + } + .live-tools .properties .flex-container-inner { border-top: 1px solid var(--light-purple); margin-right: 40px; @@ -579,11 +750,11 @@ a:hover { margin-top: 20px; } -@media only screen and (max-device-width: 500px) { - * { - font-size: $mobile-font-size; - } -} +//@media only screen and (max-device-width: 500px) { + //* { + //font-size: $mobile-font-size;// + //}// +//}// /** * Layout @@ -941,7 +1112,19 @@ hr { * End-Company Page */ + @media (max-width: 1390px) { + + .flex-container.properties .flex-container-inner { + flex: 100rem; + } + + .powered-by .card { + min-height: 360px; + } + } + @media (max-width: 1020px) { + .right-menu { width: 40px; height: 40px; @@ -983,6 +1166,10 @@ hr { .values-container { font-size: 23px !important; } + + .live-tools-cards .card { + min-height: 430px; + } } @@ -1058,7 +1245,7 @@ hr { } .button-container { - padding: 30px 0px; + padding-top: min(1em, 50%); } .contact-button { @@ -1078,6 +1265,44 @@ hr { transition: background-color 0.3s ease-in-out, color 0.3s ease-in-out; } +.two-column-layout { + display: flex; + flex-wrap: wrap; + gap: 40px; + align-items: flex-start; + justify-content: space-between; + } + +.contact-info { + flex: 1 1 45%; + max-width: 500px; + } + +.logo-grid-container { + margin-top: 40px; +} + +.logo-grid { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); + gap: 35px 70px; + list-style: none; + padding: 0; + margin: 0; + align-items: center; + justify-items: start; + opacity: 0.9; + padding-top: 1.5rem; + } + + .logo-grid img { + max-width: 100%; + max-height: 30px; + object-fit: contain; + filter: grayscale(100%); + transition: filter 0.3s ease; + } + /** * Highlight/Markup */ @@ -1208,6 +1433,7 @@ textarea { .form-container { max-width: 700px; margin: auto; + margin-left: 8rem; } .form-container.card { @@ -1219,6 +1445,7 @@ textarea { .form-label { display: block; margin-bottom: 5px; + margin-top: 6px; } .form-input, @@ -1230,14 +1457,14 @@ textarea { caret-color: white !important; color: white !important; background: var(--background-color) !important; - height: 60px; + height: 50px; width: 100%; padding: 8px; margin-bottom: 10px; } .form-textarea { - height: 130px !important; + height: 100px !important; } .form-checkbox-container { @@ -1245,6 +1472,17 @@ textarea { flex-direction: column; } +.form-row { + display: flex; + gap: 20px; + flex-wrap: wrap; + } + + .form-half { + flex: 1; + min-width: 200px; + } + /** * Homepage */ @@ -1276,7 +1514,7 @@ section { } .mid-tall-section { - margin: 200px 0px; + margin: 150px 0px; } .tall-section { @@ -1753,6 +1991,12 @@ pre { color: var(--light-grey); } +.container-our-approach { + margin: auto; + max-width: 700px; + margin-top: 80px; +} + /** end carousel */ /** @@ -1868,6 +2112,66 @@ pre { /** end blog */ +/** TESTIMONIALS **/ + +.testimonials { + display: flex; + gap: 2rem; + flex-wrap: wrap; + justify-content: center; + padding: 3rem 1.5rem; + background-color: #0d0d0d; + } + + .testimonial-card { + background-color: #121212; + padding: 2rem; + border-radius: 1rem; + width: 320px; + display: flex; + flex-direction: column; + justify-content: space-between; + gap: 1.5rem; + } + + .testimonial-logo { + height: 32px; + } + + .testimonial-quote { + color: #fff; + font-size: 1rem; + line-height: 1.6; + font-style: italic; + } + + .testimonial-author { + display: flex; + align-items: center; + gap: 1rem; + } + + .testimonial-avatar { + width: 48px; + height: 48px; + border-radius: 50%; + object-fit: cover; + } + + .testimonial-name { + font-weight: 600; + color: #fff; + margin: 0; + } + + .testimonial-title { + font-size: 0.875rem; + color: #aaa; + margin: 0; + } + +//* TESTIMONIALS *// + *, *::before, *::after { @@ -1895,6 +2199,12 @@ pre { /** * media queries */ +@media (max-width: 1500px) { + + .video-background-container-our-approach { + top: 2190px; + } +} @media (max-width: 1380px) { .vertical-line-container { @@ -1907,6 +2217,12 @@ pre { } } +@media (max-width: 1258px) { + .logo-grid { + display: none; + } +} + @media (max-width: 1150px) { .roadmap-title-container { flex-direction: column; @@ -1973,13 +2289,23 @@ pre { margin-left: 0rem; width: 20px; } + } @media (max-width: 1020px) { .flex-container-inner { width: 100% !important; + min-height: auto; margin: 0; - margin-bottom: 50px; + margin-bottom: 20px; + } + + .text-description-desktop { + display: none; + } + + .text-description-mobile { + display: block; } .hamburger-menu { @@ -2001,24 +2327,118 @@ pre { .team .flex-container-inner { margin-bottom: 30px; } + + .threatmodel-cta-columns .flex-container-inner, .threatmodel-cta-columns h2 { + margin-bottom: 0px; + } + h1 { - font-size: 80px !important; + //font-size: 80px !important;// line-height: 80px !important; } h2 { - font-size: 60px !important; - line-height: 60px !important; + //font-size: 60px !important;// + //line-height: 60px !important;// + } + + .video-background-container-our-approach { + top: 2400px; + transform: scaleX(-1); } } -@media (max-width: 730) { +@media (max-width: 850px) { + +.flex-container.properties .flex-container-inner { + max-width: 40%; +} + +.why-choose-distrust .flex-container.properties .flex-container-inner { + height: 15rem !important; +} + +.video-background-container-our-approach { + top: 2150px; +} + +} + +@media (max-width: 730px) { footer { padding: 50px 0px 20px 0px; + margin-top: 1rem; + } + + .divider { + display: none; + } + + .flex-container.properties .flex-container-inner { + max-width: 100%; + max-height: 9rem; + } + + .why-choose-distrust .flex-container.properties .flex-container-inner { + max-width: 100%; + padding-bottom: 12rem !important; + } + + .card { + margin: 5px; + } + + .software-cta .gradient-text.center { + font-size: 40px; + } + + .threatmodel-cta-columns { + margin-top: 2rem !important; + } + + .threatmodel-cta-right-column .button-container { + display: none; + } + + .threatmodel-cta-bottom .button-container { + display: block; + } + + .threatmodel-cta { + margin-top: 0px !important; + } + + .video-content-building-blocks .why-distrust { + font-size: 40px !important; + line-height: 45px !important; + min-height: 150px; + } + + .video-content-building-blocks { + margin-top: 1rem; + margin-bottom: 2rem; + } + + .video-background-container-building-blocks { + top: 2800px; + } + + .video-background-container-philosophy { + top: 3430px; + } + + .why-distrust, .video-content-philosophy .why-distrust { + font-size: 55px !important; + line-height: 50px !important; } } @media (max-width: 600px) { + + .live-tools-cards .card { + min-height: 300px; + } + .mini-card { padding: 20px 20px !important; filter: brightness(100%) !important; @@ -2044,11 +2464,11 @@ pre { } .column-progress .mini-card { - border: 1px solid var(--light-teal); + border: 1px solid var(--light-purple); } .column-active .mini-card { - border: 1px solid var(--light-purple); + border: 1px solid var(--light-teal); } .flex-container { @@ -2115,6 +2535,7 @@ pre { } .footer-links { + width: 100%; gap: 3rem; flex-direction: row; line-height: 1.7rem !important; @@ -2157,22 +2578,23 @@ pre { } p { - font-size: 1.1rem !important; + //font-size: 1.1rem !important;// + margin-bottom: 0px; } h1 { - font-size: 45px !important; - line-height: 45px !important; + //font-size: 55px !important;// + line-height: 50px !important; } h2 { - font-size: 40px !important; - line-height: 40px !important; + //font-size: 55px !important;// + //line-height: 50px !important;// } h3 { - font-size: 30px !important; - line-height: 30px !important; + //font-size: 30px !important;// + //line-height: 30px !important;// } .roadmap-header { @@ -2226,30 +2648,13 @@ pre { .quote { font-size: 1.5rem; - line-height: 1.5rem; + line-height: 1.7rem; } .values-container { text-align: left; direction: ltr; } - -/** - * Services Page - */ - .why-distrust { - height: 45px; - } -/** - * End Services Page - */ - -/** - * Roadmap Page - */ -/** - * End Roadmap Page - */ } @media (max-width: 400px) { diff --git a/assets/js/main.js b/assets/js/main.js index b26b540..686ea44 100644 --- a/assets/js/main.js +++ b/assets/js/main.js @@ -10,7 +10,7 @@ document.addEventListener('DOMContentLoaded', function () { } }); - initializeCompaniesCarousel(); + initializeCompaniesCarousel(); // TODO: useful for news article carousel // fetch('../assets/js/carousel-items.json') // .then(response => response.json()) @@ -19,7 +19,8 @@ document.addEventListener('DOMContentLoaded', function () { // initializeCarousel(); // }) // .catch(error => console.error('Error loading JSON:', error)); -}); + } +); function createCarouselItems(items) { const carousel = document.querySelector('#carousel'); @@ -87,3 +88,34 @@ function initializeCompaniesCarousel() { requestAnimationFrame(animate); } +document.addEventListener('DOMContentLoaded', function () { + const footer = document.querySelector('footer'); + const path = window.location.pathname; + + if (!footer) return; + + const borderStyles = { + '/software.html': '2px solid var(--light-teal)', + '/blog.html': '2px solid var(--pink)', + }; + + if (borderStyles[path]) { + footer.style.borderTop = borderStyles[path]; + } + + // Set hover color + const hoverColors = { + '/software.html': 'var(--light-teal)', + '/blog.html': 'var(--pink)', + }; + + if (hoverColors[path]) { + const style = document.createElement('style'); + style.innerHTML = ` + .footer-links a:hover { + color: ${hoverColors[path]}; + } + `; + document.head.appendChild(style); + } +}); \ No newline at end of file diff --git a/assets/videos/building-blocks.mp4 b/assets/videos/building-blocks.mp4 new file mode 100644 index 0000000..68c20cb Binary files /dev/null and b/assets/videos/building-blocks.mp4 differ diff --git a/assets/videos/building-blocks.webm b/assets/videos/building-blocks.webm new file mode 100644 index 0000000..ccf80af Binary files /dev/null and b/assets/videos/building-blocks.webm differ diff --git a/assets/videos/building-cubes.mp4 b/assets/videos/building-cubes.mp4 new file mode 100644 index 0000000..bf2e8b3 Binary files /dev/null and b/assets/videos/building-cubes.mp4 differ diff --git a/assets/videos/building-cubes.webm b/assets/videos/building-cubes.webm new file mode 100644 index 0000000..d3b9dc3 Binary files /dev/null and b/assets/videos/building-cubes.webm differ diff --git a/assets/videos/cube-split.mp4 b/assets/videos/cube-split.mp4 new file mode 100644 index 0000000..2e603f5 Binary files /dev/null and b/assets/videos/cube-split.mp4 differ diff --git a/assets/videos/cube-split.webm b/assets/videos/cube-split.webm new file mode 100644 index 0000000..29f0e91 Binary files /dev/null and b/assets/videos/cube-split.webm differ diff --git a/assets/videos/cubed-sticks.mp4 b/assets/videos/cubed-sticks.mp4 new file mode 100644 index 0000000..7a27a20 Binary files /dev/null and b/assets/videos/cubed-sticks.mp4 differ diff --git a/assets/videos/cubed-sticks.webm b/assets/videos/cubed-sticks.webm new file mode 100644 index 0000000..dcb2872 Binary files /dev/null and b/assets/videos/cubed-sticks.webm differ diff --git a/assets/videos/dynamic-cube.mp4 b/assets/videos/dynamic-cube.mp4 new file mode 100644 index 0000000..ab41e8a Binary files /dev/null and b/assets/videos/dynamic-cube.mp4 differ diff --git a/assets/videos/dynamic-cube.webm b/assets/videos/dynamic-cube.webm new file mode 100644 index 0000000..e34575a Binary files /dev/null and b/assets/videos/dynamic-cube.webm differ