@font-face {
	font-family: FontCode; src: url("fonts/FiraCode-Regular.ttf");
}
@font-face {
	font-family: FA-Duo-Light; src: url("fonts/fa-duotone-light-300.ttf");
}
@font-face {
	font-family: FontAwesomeBrands; src: url("fonts/fa-brands-400.ttf");
}
@font-face {
	font-family: AppIcons; src: url("fonts/custom-icons.ttf");
}
@font-face {
	font-family: FontText; src: url("fonts/Roboto-VariableFont_wdth,wght.ttf");
}

:root {
	--text-color  : rgba(255, 255, 255, 0.5);
	--header-color: rgba(255, 255, 255, 1);
}

* {box-sizing: border-box; font-family: FontText; font-weight: 400; }

html {scroll-behavior: smooth; scroll-padding-top: 70px;}

body { background: rgb(17, 17, 17); color: var(--text-color); font-family: FontText; font-size: 16px; width: 100%; max-width: 1440px; justify-self: center; padding: 0px 30px 0px 30px; overflow-y: scroll; display: flex; flex-direction: column; min-height: 100vh; margin: 0px auto;}
a { color: rgb(12, 129, 207); text-decoration: none;  }
p {color: rgba(255, 255, 255, 0.5); text-align: justify; margin-block-start: 0.5em; margin-block-end: 0.5em; }

h1, h2, h3, h4 { color: var(--header-color); font-weight: 400;}
b {font-weight: 600;}

h1.header { margin-top: 70px; }

.menu-current {color:  var(--header-color); }

div {display: flex; flex-direction: column; }

.main-header { text-align: center; font-size: 42px; margin: 120px 0px 10px 0px; }
.main-tagline {text-align: center; font-size: 20px; margin: 0px 0px 60px 0px;}

.menu-dock {display: block; position: fixed; top: 0px; left: 0px; width: 100%; padding: 10px 30px 10px 30px; background-color: rgba(17, 17, 17, 1); border-bottom: 1px solid rgb(26, 26, 26); z-index: 1000;}
.menu { display: flex; justify-content: space-between; flex-direction: row; margin: 0px auto; padding: 0px; max-width: 1440px;}

.menu-ark { padding: 0px; font-size: 24px; }
.menu-options { flex-direction:row; padding: 0px; font-size: 24px; }
.menu-options > div { margin:0px 10px 0px 10px; padding: 0px; }

img { width: fit-content; max-width: 80%; margin: 0px auto; }
img.ue-icon {vertical-align: bottom;}

.feature-row  {justify-content: space-between; justify-content: center; flex-direction: row; justify-content: space-evenly; flex-wrap: wrap; margin: 20px 0px; gap: 20px;}
.feature-card { background: rgb(38, 38, 38); padding: 15px; border-radius: 16px; flex-direction: column; flex: 1; min-width: 350px; border-style:solid; border-width: 2px; border-color: rgb(80, 80, 80);}
.feature-card > h2  {font-size: 24px;}
.feature-card > div {font-size: 16px; margin-bottom: 10px;}
.feature-card > div.multi-platform {display: flex; flex-direction: row; font-size: 96px; justify-content: space-around; height: 100%; align-items: center;}

.feature-card > img   {display: flex; justify-self: center; max-width: 100%;}
.feature-card > video {display: flex; justify-self: center; max-width: 100%; margin-top: auto; }


.get-ark-button         { background: rgba(12, 129, 207, 0.9); color: var(--header-color); border: 2px solid rgba(255, 255, 255, 0.5); border-radius: 8px;  padding: 30px 50px; justify-self: center; text-align: center; font-size: 32px; cursor: pointer; transition:all 0.1s;}
.get-ark-button:hover   { background: rgba(12, 129, 207, 1);}
.get-ark-button:active  { background: rgba(12, 129, 207, 0.9);}
.get-ark-button-caption { color: var(--header-color); font-size: 18px; text-align: center; cursor: pointer; justify-self: center; flex-direction: row; gap: 10px; margin-top: 10px; width:min-content; }

.get-ark-button-wrapper {flex-direction: row; justify-content: center;}

.caption       {font-size: 12px; text-align: center; margin: 5px 0px 60px 0px;}
.give-it-a-try {text-align: center; margin: 60px 0px 20px 0px;}

.mailing-list           {flex-direction: row; justify-content: center; margin: 60px 0px 0px 0px;}
.mailing-list-subscribe {margin: 0px 0px 10px 0px;}

.older-version-table {display: grid; grid-template-columns: 120px 120px 120px auto auto auto;}
.older-version-table > div {border: 1px solid rgb(52, 52, 52); padding: 10px; text-align: center;}
.older-version-table > div.entry {text-align: left;}
.older-version-table > div.full-span {grid-column: 1 / 7; text-align: left;}

.download-row           {display: flex; flex-direction: row; gap: 15px;}
.download-row > a       {color: rgba(255, 255, 255, 1); display: flex; flex: 1; max-width: 200px; flex-direction: column; justify-content: center; height: 100%;}
.download-version       {margin:10px 0 10px 0;}
.download-button        {background: rgba(12, 129, 207, 0.9); color: rgba(255, 255, 255, 1); font-size: 20px; text-align: center; margin: 0px 0px; padding: 20px 20px; border: 2px solid rgba(255, 255, 255, 0.5); border-radius: 8px; transition:all 0.1s;}
.download-button:hover  {background: rgba(12, 129, 207, 1);}
.download-button:active {background: rgba(12, 129, 207, 0.9);}

.ue-color         {background: rgba(103, 12, 207, 0.9); color: var(--header-color);}
.ue-color:hover   {background: rgba(103, 12, 207, 1);}
.ue-color:active  {background: rgba(103, 12, 207, 0.9);}

ul {margin-top: 0.2em;}
li {margin: 0.3em 0px;}

.collapse-header  {cursor: pointer; user-select: none; display: flex; flex-direction: row;}
.collapse-arrow   {transition: transform 0.2s; display: inline-block; transform: rotate(-90deg); width: min-content; margin-right: 10px;}
.collapse-content {max-height: 0px; overflow: hidden; transition: max-height 0.2s;}

.version-release {margin: 10px 0px 10px 0px; vertical-align: middle;}

.flex-row {display: flex; flex-direction: row;}

.icon-win::before            {font-style: normal; font-family: FontAwesomeBrands; content: "\f17a";}
.icon-linux::before          {font-style: normal; font-family: FontAwesomeBrands; content: "\f17c";}
.icon-mac::before            {font-style: normal; font-family: FontAwesomeBrands; content: "\f179";}
.icon-lock-owner::before     {font-style: normal; font-family: AppIcons; content: "\e00c"; padding-right: 10px;}
.icon-lock-other::before     {font-style: normal; font-family: AppIcons; content: "\e00d"; padding-right: 10px;}
.icon-lock-queue::before     {font-style: normal; font-family: AppIcons; content: "\e006"; padding-right: 10px;}
.icon-shelf-download::before {font-weight: 600; font-family: AppIcons; content: "\e00f"; padding-right: 10px;}

.icon-gui::before    {font-style: normal; font-family: FA-Duo-Light; content: "\f40f";}
.icon-cli::before    {font-style: normal; font-family: FA-Duo-Light; content: "\e236";}
.icon-shield::before {font-style: normal; font-family: FA-Duo-Light; content: "\f132";}
.icon-lock::before   {font-style: normal; font-family: FA-Duo-Light; content: "\f30d";}

.icon-menu-open::before {font-style: normal; font-family: FA-Duo-Light; content: "\f0c9"; padding: 5px;}
.icon-menu-close::before{font-style: normal; font-family: FA-Duo-Light; content: "\e59b"; padding: 5px;}

.subscribe-button        {background: rgba(12, 129, 207, 0.9); color: rgba(255, 255, 255, 1); margin: 0px 0px 0px 0px; border: 2px solid rgba(255, 255, 255, 0.5); border-radius: 8px;  padding: 10px 20px; justify-self: center; text-align: center; font-size: 16px; cursor: pointer; transition:all 0.1s;}
.subscribe-button:hover  {background: rgba(12, 129, 207, 1);}
.subscribe-button:active {background: rgba(12, 129, 207, 0.9);}

.email-input {flex: 1; width: unset; display: flex;}

.doc-menu           {overflow-y: scroll; height: calc(100vh - 180px); padding-right:10px; padding-bottom: 20px;}
.doc-menu > div     {cursor: pointer;}
.doc-menu > div > a {display:flex; flex: 1; justify-content: space-between; margin-top: 2px; margin-bottom: 2px;}
.doc-menu > a       {display: flex; flex-direction: row; align-items: center; margin-top: 3px; margin-bottom: 3px; justify-content: space-between;}

.doc-content              {flex-direction: column; flex: 1; margin-top: 70px; margin-left: 280px;}
.doc-content > p          {color:rgba(255, 255, 255, 0.5);}
.doc-content > h2, h3, h4 {display: flex; flex-direction: row; align-items: center;}

.cli-tag::after {background:rgb(26, 26, 26); width: 35px; color: rgba(255, 255, 255, 0.5); content: "CLI"; display: flex; flex-direction: row; border: 1px solid; border-radius: 6px; font-size: 13px; letter-spacing: 2px; padding: 3px 0px; text-align: center; margin-left: 5px; justify-content: center;}
.gui-tag::after {background:rgb(26, 26, 26); width: 35px; color: rgba(255, 255, 255, 0.5); content: "GUI"; display: flex; flex-direction: row; border: 1px solid; border-radius: 6px; font-size: 13px; letter-spacing: 2px; padding: 3px 0px; text-align: center; margin-left: 5px; justify-content: center;}


::-webkit-scrollbar             {width: 10px;}
::-webkit-scrollbar-track       {background: #1a1a1a;}
::-webkit-scrollbar-thumb       {background: #444; border-radius: 8px;}
::-webkit-scrollbar-thumb:hover {background: #555;}

.license-options    {display: flex; flex-direction: row; gap: 40px; justify-content: center;}
.license-card       {background: rgb(38, 38, 38); border-radius: 10px; display: flex; flex: 1; flex-direction: column; min-width: 300px; max-width: 450px; margin: 40px 0px; padding: 0px 0px 30px 0px; border-style:solid; border-width: 2px; border-color: rgb(80, 80, 80);}
.license-card > h1  {background: rgb(26, 26, 26); text-align: center; margin: 0px; padding: 20px 0px; border-radius: 8px 8px 0px 0px;} 
.license-conditions {gap: 0.5em; margin: 30px 60px; justify-content: center;}

.buy-button        {background: rgba(12, 129, 207, 0.9); color: rgba(255, 255, 255, 1); font-size: 20px; text-align: center; margin: 0px 60px; padding: 0px 0px; height: 60px; min-width: 200px; border: 2px solid rgba(255, 255, 255, 0.5); border-radius: 8px; transition:all 0.1s;}
.buy-button:hover  {background: rgba(12, 129, 207, 1);}
.buy-button:active {background: rgba(12, 129, 207, 0.9);}
.buy-button > a    {color: rgba(255, 255, 255, 1); display: flex; flex-direction: column; justify-content: center; height: 100%;}

.faq > h2      {margin-block-start: 0.5em; margin-block-end: 0.5em;}
.faq > div > p {margin-left: 25px;}

.cli         {padding: 10px; margin-bottom: 10px; display: block; background: rgba(80, 80, 80, 0.5); color: rgba(255, 255, 255, 1); font-family: FontCode; font-size: 14px;}
.cli::before {content: "$ ";}

.note         {margin: 10px 0px; background: rgba(103, 12, 207, 0.5); color: rgba(255, 255, 255, 1);}
.note::before {content: "NOTE"; background: rgba(103, 12, 207, 1); padding: 10px;}
.note > *     {margin: 10px;  color: rgba(255, 255, 255, 0.75);}
.note > .cli  {color: rgba(255, 255, 255, 1);}

.important         {margin: 10px 0px; background: rgba(200, 50, 50, 0.33); color: rgba(255, 255, 255, 1);}
.important::before {content: "IMPORTANT"; font-weight: bold; background: rgba(200, 50, 50, 1); padding: 10px;}
.important > *     {padding: 10px; color: rgba(255, 255, 255, 0.75);}

.level1 {margin-left: 20px;}
.level2 {margin-left: 40px;}

.footer       {margin-top: auto; margin-bottom: 10px; width: 100%;}
.footer > hr  {color: rgb(38, 38, 38); border: 1px solid; width: 100%; margin-top: 20px;}
.footer-links {flex-direction: row; gap: 40px; max-width: 300px; margin: 0px auto; font-size: 13px;}

.cli-doc {overflow: hidden; transition: all 0.2s;}
.gui-doc {overflow: hidden; transition: all 0.2s;}

#toggle-gui-doc::after {color: var(--toggle-doc-color, rgba(12, 129, 207, 1)); cursor: pointer; margin-left: 0px;}
#toggle-cli-doc::after {color: var(--toggle-doc-color, rgba(12, 129, 207, 1)); cursor: pointer;}

#sidebar {position: fixed; top: 70px; left: 0px; background: rgb(16, 16, 16); padding-left:30px; transition: all 0.2s;}

#sidebar-open-button   {position: fixed; top: 90px; left: 10px;}
.sidebar-button        {background: rgba(12, 129, 207, 0.9); color: rgba(255, 255, 255, 1); font-size: 12px; text-align: center; margin: auto 0px auto auto; padding: 5px 5px; border: 1px solid rgba(255, 255, 255, 0.5); border-radius: 8px; transition:all 0.1s; cursor: pointer; visibility: hidden;}
.sidebar-button:hover  {background: rgba(12, 129, 207, 1);}
.sidebar-button:active {background: rgba(12, 129, 207, 0.9);}


@media screen and (max-width: 780px) {
	#sidebar        {border: 1px solid rgb(38, 38, 38); border-left: 0px;}
	.sidebar-button {visibility: visible;}
	.doc-content    {margin-left: 30px;}
}

@media screen and (min-width: 501px) and (max-width: 670px) {
	body          {font-size: 14px; padding: 0px 10px;}
	.menu-dock    {padding: 10px 10px;}
	.menu-ark     {font-size: 20px; }
	.menu-options {font-size: 20px;}
	.main-header  {font-size: 38px;}
	.main-tagline {font-size: 20px;}
	
	.older-version-table > div {font-size: 12px;}
	
	.license-card       {min-width: 150px; max-width: 300px;}
	.license-options    {gap: 10px;}
	.license-conditions {margin: 30px 10px;}
	
	.buy-button  {margin: 0px 10px; min-width: unset;}
	.faq > h2    {font-size: 1.35em;}
	
	.doc-content {margin-left: 50px;}
}


@media screen and (max-width: 500px) {
	body          {font-size: 14px; padding: 0px 10px;}
	.menu-dock    {padding: 10px 10px;}
	.menu-ark     {font-size: 16px;}
	.menu-options {font-size: 16px;}
	.main-header  {font-size: 26px;}
	.main-tagline {font-size: 16px;}
	
	.older-version-table {grid-template-columns: 75px 60px 85px auto auto auto;}
	.older-version-table > div {font-size: 12px;}
	
	.license-card       {min-width: 150px; max-width: 220px;}
	.license-options    {gap: 10px; justify-content: space-between;}
	.license-conditions {margin: 30px 10px;}
	
	.buy-button {margin: 0px 10px; min-width: unset;}
	.faq > h2   {font-size: 1.15em;}
	
	.level1 {margin-left: 5px;}
	.level2 {margin-left: 10px;}

	.gui-tag::after {font-size: 9px;}
	.cli-tag::after {font-size: 9px;}
	
	.doc-content    {margin-left: 50px;}
}
