/* Top Level ----------- */

header {
    text-align: center;
}

body {
    margin: 0;
    padding: 0;
    font-family: Arial, sans-serif;
    background-color: #F0F0F0
}

footer {
    background-color: #F0F0F0;
    color: #ffffff;
    text-align: center;
    margin: 1.25rem auto 0 auto;
    padding: 0.6rem;
}

footer .promise-container {
    display: inline-block;
    vertical-align: middle;
}

footer .promise {
    width: 14.6rem;
}

/* 100% Image Width on Smaller Screens */
@media only screen and (max-width: 650px) {
    footer .promise {
        max-width: 100%;
    }
}

h2 {
    font-size: 1.75rem;
    color: #00427A;
    word-wrap: break-word;
}

/* 100% Image Width on Smaller Screens */
@media only screen and (max-width: 650px) {
    h2 {
        font-size: 1.5rem;
    }
}

h3 {
    margin: 3rem 0 1rem 0;
    /*color: #00427A;*/
    color: #000000;
    word-wrap: break-word;
}

p {
    margin: 1rem 0;
}

p.final-paragraph{
    margin-top: 4rem;
}
.nowrap {
    white-space: nowrap;
}

em {
    font-weight: 550;
    font-style: normal;
}

ol li {
    margin: 2.75rem 0;
}

ol ol li {
    margin: 1rem 0;
}

.faint-shadow {
    box-shadow: 0 0 1.875rem #ececec;
    box-shadow: 0 0 1.875rem rgba(0, 0, 0, 0.15);
}

/* Shared layout ----------- */

/* Main header bar */

.header-bar {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
    max-width: 50rem;
    width: 90%;
    text-align: center;
    color: #00427A;
    border-bottom: 0.125rem solid #C8C8C8;
}

.virtuario-logo {
    flex: 1;
    width: 100%;
    max-width: 25rem;
}

.header-bar h1 {
    font-size: 1.75rem;
    font-weight: inherit;
    margin: 0.4rem 0;
}

.subtitle {
    font-size: 1.4rem;
    margin: 0;
}


@media screen and (max-width: 650px) {
    .header-bar {
        flex-direction: column;
    }

    .header-bar h1 {
        font-size: 1.5rem;
        margin-top: 0.5rem;
    }

    ol li {
        margin: 2.25rem 0;
    }

    ol ol li {
        margin: 0.25rem 0;
    }
}

/* Navigation */

nav {
    flex: 1;
}

.crumbs ol {
    list-style-type: none;
    padding-left: 0;
}


.breadcrumbs ol {
    margin: 0.6rem 0 0 0;
    padding: 0;
}

.breadcrumbs li {
    display: inline-block;
    margin: 0;
}

.crumb {
    display: inline-block;
    font-weight: bold;
}
.crumb a {
    font-weight: normal;
}

.crumb a::after {
    display: inline-block;
    color: #000;
    content: ">";
    font-size: 80%;
    font-weight: bold;
    padding: 0 0.25rem 0 0.5rem;
}

/* Body of pages with gradient */
.main-content {
    background: linear-gradient(0deg, #E3E3E3 0%, #F3F3F3 100%) no-repeat;
}


/* Body of pages Quest and Pico käyttöohje */
.main-content-howto {
    background: #ffffff no-repeat;
}


/* Tag to hide underlining in image links */
.img-link {
    text-decoration: none;
    border: 0 !important;
}

.img-link:hover {
    opacity: 0.7;
}


/* Shared layout 2 ----------- */

.container {
    max-width: 75rem;
    min-height: 44rem;
    margin: 0 auto;
    padding: 1.25rem;
    display: flex;
    flex-direction: row;
    align-items: center;
    /* Center children horizontally */
    justify-content: center;
    /* Center children vertically */
}


.content {
    position: relative;
    width: 50rem;
    text-align: center;
    margin: 0 auto 5rem;
}

.child {
    display: inline-block;
    padding: 1rem 1rem;
    vertical-align: middle;
}


/* Language select page ------------ */


.centered_left {
    color: #00427A;
    font-size: 1.5rem;
    font-weight: bold;
    position: absolute;
    top: 75%;
    left: 27%;
}

.centered_right {
    color: #00427A;
    font-size: 1.5rem;
    font-weight: bold;
    position: absolute;
    top: 75%;
    left: 59%;
}

.content img {
    display: block;
    margin: 0 auto;
    /* Center the images horizontally in container */
}

#faded-image {
    opacity: 0.3;
    filter: alpha(opacity=30);
}


/* Device select page ------------- */

.device-selection-title {
    text-align: center;
    margin-bottom: 0;
}

.rounded-box-container {
    display: flex;
    flex-direction: row;
    max-width: 50rem;
    justify-content: center;
    align-items: center;
    padding: 1.25rem;
    margin: auto auto 1.25rem;
}

@media screen and (max-width: 650px) {
    .rounded-box-container {
        flex-direction: column;
    }
}

.rounded-box-col {
    display: flex;
    align-items: center;
    justify-content: center;

    background-color: #ffffff;
    border-radius: 2rem;
    border: none;
    padding: 0 1.25rem;

    margin: 0.6rem;
    max-width: 21.5rem;
    width: 90%;
    height: 27.25rem;
}
.device-image-box {
    height: 12.9rem;
}
.rounded-box-image {
    max-width: 100%;
    position: relative;
    top: 50%;
    transform: translateY(-50%);
}

.rounded-box-text {
    color: #00427A;

    font-size: 1.5rem;
    font-weight: bold;
    text-align: center;
}

.bold-text {
    color: #00427A;
    font-size: 1.5rem;
    font-weight: bold;
}


/* Guide pages shared ------------ */

.container-guide {
    max-width: 52.5rem;
    margin: 0 auto;
    padding: 0 1rem;
    display: flex;
    justify-content: center;
    flex-direction: column;
}

/*
@media screen and (max-width: 650px) {
    .container-guide {
        flex-direction: column-reverse;
    }
}
*/

.left-column {
    flex: 1;
    text-align: left;
    padding: 1.25rem;
    font-size: 1.25rem;
}

.right-column {
    flex: 1;
    padding: 1.25rem;
    text-align: center;
}


.device-image {
    max-height: 7rem;
    margin: 1rem 0;
    display: block;
}

.url-box {
    font-family: monospace;
    background-color: #dddddd;
    padding: 0 0.25em;
    font-size: 0.9em;
    border-radius: 0.25em;
}

/* Meta quest 2 guide ------------ */

.headset-image {
    max-width: 80%;
    display: block;
    padding: 1.9rem;
}


.column-quest2 {
    flex: 1;
    text-align: left;
    padding: 1.25rem;
    font-size: 1.25rem;
}

/* Pico neo 3 Pro guide ----------  */

.arborxr-icon img {
    height: 1.25em;
    margin-right: 0.05em;
}

.pico-button-icon img {
    max-height: 1em;
    margin-right: 0.2em;
    border-radius: 0.5em;
    box-shadow: 0.05em 0.05em 0.3em #545454;
    box-shadow: 0.05em 0.05em 0.3em rgba(0, 0, 0, 0.33);
}

.pico-column {
    flex: 1;
    font-size: 1.25rem;
    line-height: 1.5em;
}

.pico-row {
    display: flex;
    align-items: top;
    margin: 1.25rem 0;
}

.external-favicon {
    height: 0.8em;
    margin-right: 0.2em;
}
.ui-button {
    white-space: nowrap;
    font-size: 0.85em;
    background: #cee1f2;
    padding: 0.28em 0.6em;
    border-radius: 0.45em;
}
.ui-button-blue {
    background-color: #80b2ff;
}

@media screen and (max-width: 650px) {
    .pico-row {
        flex-direction: column;
    }
}

.pico-text-column {
    flex: 1;
}

.pico-image-column {
    flex: 1;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: end;
    max-width: 18rem;
}

.pico-howto-thumb {
    max-height: 10rem;
    margin: 1rem 0;
    display: block;
}

.sunlight-image {
    margin-right: 2.5rem;
}

@media screen and (max-width: 650px) {
    .pico-image-column {
        flex-direction: column;
        align-items: center;
        max-width: 100%;
    }

    .pico-howto-thumb {
        margin: 0.5rem 0;
    }

    .sunlight-image {
        margin-right: 0;
    }
}

.pico-video-image {
    width: 100%;
    display: block;
    border-radius: 2rem;
}

.pico-video-player {
    width: 100%;
    display: block;
    border-radius: 2rem;
    margin: 2rem 0;
	cursor: pointer;
}

.no-drag {
  -webkit-user-drag: none;
  -khtml-user-drag: none;
  -moz-user-drag: none;
  -o-user-drag: none;
  user-drag: none;
  
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* Footer ----------  */

.footer-box {
    text-align: left;
    font-size: 1rem;
    margin: 0 1.5rem;
    color: #000000;
}

.footer-box p {
    margin: 1.5rem 0 ;
}

@media only screen and (max-width: 650px) {
    footer .child {
        padding: 0;
    }

    .footer-box {
        margin: 0;
    }

    .footer-box p {
        margin: 0 0 1.5rem 0;
    }
}


tr, td {
    padding: 0.2rem;
}

.wrap-collabsible {
    margin: 1.2rem 0 0 0;
}

input[type="checkbox"] {
    display: none;
}

/* Collapsible ----------  */

.wrap-collabsible .wrap-collabsible {
    margin-left: 0.5rem;
}

.lbl-toggle {
    color: #00427A;
    display: block;

    font-size: 1.75rem;
    font-weight: bold;
    margin: 2.5rem 0 0 0;
    word-wrap: break-word;

    cursor: pointer;

    transition: all 0.25s ease-out;
}


@media only screen and (max-width: 650px) {
    .lbl-toggle {
        margin: 2.25rem 0 0 0;
        font-size: 1.5rem;
    }
}

.collapsible-content .collapsible-content .lbl-toggle {
    /*color: #000000;*/
    font-size: 1.46rem;
}

.lbl-toggle:hover {
    text-decoration: underline;
}

.lbl-toggle::before {
    content: " ";
    display: inline-block;

    border-top: 0.5rem solid transparent;
    border-bottom: 0.5rem solid transparent;
    border-left: 0.5rem solid currentColor;
    vertical-align: middle;
    margin-right: 1rem;
    transform: translateY(-0.125rem);

    transition: transform .2s ease-out;
}

.toggle:checked + .lbl-toggle::before {
    transform: rotate(90deg) translateX(-0.25rem);
}

.collapsible-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height .25s ease-in-out;
}

.toggle:checked + .lbl-toggle + .collapsible-content {
    max-height: 10000vh;
	overflow: visible;
}

/* Image modal. */
.zoomable {
    cursor: zoom-in;
}

.modal-image {
    transition: 0.3s;
}

.modal-image:hover,
.modal-image:focus {
    -webkit-opacity: 60%;
    opacity: 0.6;
}

.hover-scale,
.hover-scale-sm {
	transition: transform 0.3s;
}

.hover-scale:hover,
.hover-scale:focus {
	-webkit-transform: scale(1.1);
	-moz-transform: scale(1.1);
	-ms-transform: scale(1.1);
	-o-transform: scale(1.1);
	transform: scale(1.1);
}

.hover-scale-sm:hover,
.hover-scale-sm:focus {
	-webkit-transform: scale(1.05);
	-moz-transform: scale(1.05);
	-ms-transform: scale(1.05);
	-o-transform: scale(1.05);
	transform: scale(1.05);
}

.rounded-thumb-image {
    border-radius: 1rem;
}

.wide-thumb-column {
    padding-left: 2.5rem;
}

/* The modal overlay */
#modal {
    cursor: zoom-out;
    display: none;
    position: fixed;
    z-index: 1;
    padding-top: 6.25rem;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgb(0, 0, 0);
    background-color: rgba(0, 0, 0, 0.75);
}

/* Modal Content (Image) */

#modal-content-bg {
    background-color: #ffffff;
    padding: 1.25rem 0;
}

#modal-content {
    margin: auto;
    display: block;
    width: 80%;
    max-width: 52.5rem;
}

/* Caption of Modal Image (Image Text) - Same Width as the Image */
#modal-caption {
    cursor: text;
    display: block;
    width: 80%;
    max-width: 52.5rem;
    font-size: 1.25rem;
    text-align: center;
    color: #ffffff;
    margin: 1rem auto 0 auto;
}

/* The Close Button */
#modal-close {
    position: absolute;
    top: 1rem;
    right: 2rem;
    color: #f1f1f1;
    font-size: 5rem;
    font-weight: bold;
    transition: 0.3s;
    background-color: transparent;
    border: 0;
    padding: 0;
    line-height: 3.75rem;
}

#modal-close:hover,
#modal-close:focus {
    color: #bbb;
    text-decoration: none;
    cursor: pointer;
}

.if-darkmode {
	display: none;
}

@media (prefers-color-scheme: dark) {
	.if-darkmode {
		display: block;
	}
  
	  
	.if-lightmode {
		display: none;
	}
}

/* 100% Image Width on Smaller Screens */
@media only screen and (max-width: 650px) {
    #modal-content {
        width: 100%;
    }

    .wide-thumb-column {
        padding-left: 0;
    }
}

/* Unused styles. */

.version-select button {
    font-size: 1rem;
    padding: 0.5rem 0.75rem;
    margin: 0 0.5rem;
    cursor: pointer;
    color: #ffffff;
    border: 0;
    border-radius: 9999px;

    background-color: #00427A;
}

.version-select button[disabled] {
    cursor: inherit;
    color: #000000;
    border: 0;
    border-radius: 9999px;

    background-color: #00b0c4;
}