@charset "UTF-8";

@import url("reset.css");
@import url("fonts.css");


:root{
    
    --app-height: 100vh;
    --headroom-height: auto;
    
  
    --c0: #f2f2f3; 
    --c1: #131313;
    --c2: #fcc100;
    --c3: #FFFFFF;
    --c4: #7b0a14;
    --c5: #bbd95d;
    --c6: #f57452;
    --c7: #d6d6d6;
    --c8: #fc0;
    
    --wr: 200rem;
    --awr: calc(-1 * var(--wr));
    
    --gap: 40rem;
    --sl: max(1px, 1rem);
    
    --br1: 4rem;
    
    --btn: max(50px, 60rem);

    
    --f-s: max(12px, 14rem);
    --f-d: max(14px, 16rem);
    --f-m: max(14px, 18rem);
    --f-b: max(14px, 21rem);
    --f-l: max(14px, 24rem);
    --f-xl: max(14px, 30rem);
    --f-xxl: max(14px, 60rem);
    --f-xxxl: max(14px, 72rem);
    
    --mw: 1600px; 
    
    
}


/* globals */

@media screen {

    html{font-size: 0.0625vw;background-color: var(--c0);}

    .document{font-weight: 400;font-family: 'Geologica', sans-serif;font-size: var(--f-d);line-height: 1.2;color: var(--c1);background-color: var(--c0);letter-spacing: -.02em;}
    
    .popup-active{}
    
    .wrapper{width: 100%;margin: 0 auto;padding: 0 var(--wr);max-width: var(--mw);}
    
    .preloader{background-color: var(--c0);position: fixed;top: 0;left: 0;right: 0;bottom: 0;z-index: 9999;visibility: hidden;opacity: 0;transition: all .25s 1s;display: flex;color: var(--c1);will-change: transform;}
     
    .loading{pointer-events: none;}
    .loading .preloader{transition-duration: 0s;opacity: 1;visibility: visible;}
    
    .icon{display: flex;max-height: 100%;align-items:center;justify-content:center;line-height: 0;max-width: 100%;width: auto;height: auto;}
    .cover,
    .contain{position: absolute;top: 0;left: 0;width: 100%;height: 100%;object-position: center;pointer-events: none;}
    .cover{object-fit: cover;}
    .contain{object-fit: contain;}
    .fill::after{content: "";position: absolute;top: 0;left: 0;right: 0;bottom: 0;z-index: 1;}

    .button{display: inline-flex;justify-content: center;max-width: 100%;user-select: none;cursor: pointer;align-items: center;z-index: 1;position: relative;background-clip: padding-box;}
    .button:not(.fill){overflow: hidden;position: relative;}
    .button-text{overflow: hidden;text-overflow: ellipsis;white-space: nowrap;text-align: center;position: relative;z-index: 2;min-width: 0;padding: 0 .1em;font-weight: 500;}
    .button-icon{flex: none;width: 1.5em;height: 1.5em;display: flex;align-items: center;justify-content: center;margin: 0 10rem;}
    
    .button__default{height: var(--btn);padding: 0 30rem;border-radius: var(--br1);background-color: var(--c2);color: var(--c1);}
    .button__default .button-icon:first-child{margin-left: -15rem;}
    .button__default .button-icon:last-child{margin-right: -15rem;}
    
    .button__dense{height: auto;padding: 10rem 20rem;}
    .button__dense .button-text{font-size: var(--f-s);}
    
    .button__wide{width: 100%;}
    
     
    .title{line-height: 1.2;font-weight: 800;width: 100%;}
    .title b{font-weight: inherit;color: var(--c4);}
    
    .title__default{font-size: var(--f-xl);}
    .title__large{font-size: var(--f-xxl);}
    
    .container{display: flex;flex-direction: column;min-height: var(--app-height);}
    
    .header{margin-bottom: 30rem;}
    
    .topbar{display: grid;grid-template-columns: 1fr auto;grid-gap: var(--gap);align-items: center;padding: 30rem 0;}
    .topbar-logo{max-width: 130rem;transform: translateX(-10%);}
    .topbar-action{display: grid;grid-auto-flow: column;grid-gap: var(--gap);align-items: center;}
    
    .main{margin-top: 0;flex: auto;display: flex;flex-direction: column;overflow-x: clip;padding-bottom: 50rem;}
   
    .section{position: relative;z-index: 1;margin-bottom: 100rem;}
    .section:last-child{margin-bottom: 0;}
    .section:only-child{flex: auto;}
    
    .section-header{display: flex;flex-direction: column;}
    .section-header:not(:last-child){margin-bottom: 40rem;}
    
    .footer{overflow: hidden;margin-top: 0;}
    
    .textfield{display: flex;background-color: var(--c0);border-radius: var(--br1);align-items: center;height: var(--btn);position: relative;}
    .textfield-input{flex: auto;padding: 0 30rem;text-overflow: ellipsis;min-width: 0;height: var(--btn);}
    .textfield-icon{width: 1em;height: 1em;flex: none;}
    .textfield-label{position: absolute;bottom: 100%;left: 0;margin-bottom: 10rem;font-size: var(--f-s);}
    
    .textfield-input:required ~ .textfield-label::after{content: "";position: absolute;left: 100%;width: .75em;height: .75em;background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 0a1 1 0 0 1 1 1v5.268l4.562-2.634a1 1 0 1 1 1 1.732L10 8l4.562 2.634a1 1 0 1 1-1 1.732L9 9.732V15a1 1 0 1 1-2 0V9.732l-4.562 2.634a1 1 0 1 1-1-1.732L6 8L1.438 5.366a1 1 0 0 1 1-1.732L7 6.268V1a1 1 0 0 1 1-1' fill='red'%3E%3C/path%3E%3C/svg%3E");background-size: contain;background-repeat: no-repeat;background-position: center;bottom: 50%;margin-left: 5rem;}
      
    .filebox{position: relative;overflow: hidden;display: flex;background-color: var(--c3);border-radius: var(--br1);align-items: center;padding: 0 30rem;height: var(--btn);cursor: pointer;}
    .filebox-control{position: absolute;right: 100%;}
    .filebox-icon{flex: none;margin-left: 20rem;width: 1em;height: 1em;display: flex;align-items: center;justify-content: center;}
    .filebox-title{font-weight: 500;opacity: .5;flex: auto;}
    
    .color-label{display: flex;align-items: center;justify-content: center;border-radius: var(--br1);padding: 10rem 20rem;min-height: 30rem;font-size: var(--f-s);font-weight: 500;text-align: center;background-color: var(--c3);}
    
    .color-green{background-color: var(--c5);}
    .color-yellow{background-color: var(--c2);}
    .color-red{background-color: var(--c6);}
    .color-grey{background-color: var(--c7);}
    
    .checkbox{position: relative;overflow: hidden;display: flex;align-items: flex-start;user-select: none;}
    .checkbox-control{position: absolute;right: 100%;}
    .checkbox-icon{flex: none;width: 1.5em;height: 1.5em;background-color: var(--c3);border-radius: var(--br1);display: flex;align-items: center;justify-content: center;padding: .25em;cursor: pointer;color: var(--c1);}
    .checkbox-icon:not(:last-child){margin-right: 10rem;}
    .checkbox-icon .icon{will-change: transform;opacity: 0;transition: all .25s;transform: scale(0);}
    
    .checkbox-control:checked ~ .checkbox-icon .icon{opacity: 1;transform: scale(1);}
    
    .formbox{display: grid;grid-template-columns: auto;grid-gap: 75rem;}
    .formbox-row{display: flex;}
    .formbox-cell{flex: 1;}
    .formbox-cell:not(:first-child){margin-left: 30rem;}
    .formbox-footer{margin-top: 75rem;display: flex;justify-content: center;}
    .formbox-message{min-height: 24rem;margin: 55rem auto -45rem;max-width: 600rem;text-align: center;font-weight: 700;}
    .formbox-message:empty{display: none;}
    .formbox-message[data-type="error"]{color: #8b1f1f;}
    .formbox-message[data-type="success"]{color: #2f6f35;}
    
    .popup-overlay{background-color: var(--c1);opacity: 0;position: fixed;top: 0;left: 0;width: 100%;height: 100%;z-index: 99;visibility: hidden;transition: all .25s;}
    
    .popup{position: fixed;top: 0;left: 0;width: 100%;background-color: var(--c3);color: var(--c1);z-index: 999;transition: transform .5s;will-change: transform;}
    .popup-inner{padding: 100rem 0;width: 100%;max-width: 640rem;margin: 0 auto;}
    .popup-close{position: absolute;top: 0;right: 0;display: flex;align-items: center;justify-content: center;width: max(32px, 40rem);height: max(32px, 40rem);background-color: var(--c2);color: var(--c1);padding: 10rem;border-radius: 50%;margin: 40rem;cursor: pointer;}
    .popup-title{text-align: center;}
    .popup-content:not(:first-child){margin-top: 80rem;}
    .popup .checkbox-icon{background-color: var(--c0);}
    
    .popup:not(.active){transform: translateY(-100%);}
    
    .popup.active ~ .popup-overlay{visibility: visible;opacity: .8;}
    
}

/* cards */

@media screen {
   
    .card{position: relative;overflow: hidden;display: flex;min-height: 100%;flex-direction: column;user-select: none;}
  
   
}

/* sections */

@media screen {
    
    .s1:only-child{flex: none;margin: auto 0;}
    .s1-1{display: grid;grid-template-columns: 1fr auto;align-items: flex-start;grid-gap: var(--gap);}
    .s1-2{padding-top: 100rem;}
    .s1-3{background-color: var(--c0);max-width: 455rem;}
    .s1-3 img{mix-blend-mode: multiply;}
    .s1-4-2{margin-top: 30rem;font-weight: 500;font-size: var(--f-b);line-height: 1.45;}
    .s1-5{margin-top: 100rem;}
    .s1-6{display: grid;grid-template-columns: 1fr auto;grid-gap: 30rem 15rem;max-width: 600rem;}
    .s1-6-3{padding: 0 30rem;grid-column: 1/-1;}
    
    .s2-3{margin-top: 30rem;display: table;}
    .s2-4{display: table-row;font-weight: 500;}
    .s2-4-1{display: table-cell;padding-right: 110rem;font-size: var(--f-m);min-width: 300rem;white-space: nowrap;}
    .s2-4-2{display: table-cell;font-size: var(--f-b);color: var(--c4);}
    .s2-4:not(:first-child) .s2-4-1,
    .s2-4:not(:first-child) .s2-4-2{padding-top: 20rem;}
    .s2-5{margin-top: 100rem;display: grid;grid-template-columns: 1fr 1fr 1fr;grid-gap: var(--gap);align-items: start;}
    .s2-6{display: flex;flex-direction: column;align-items: flex-start;transform: translateY(-55rem);}
    .s2-6-1{font-size: var(--f-xxxl);font-weight: 800;line-height: .75;position: relative;z-index: 1;display: flex;align-items: flex-end;min-height: 145rem;}
    .s2-6-1::after{content: "%";font-size: .5em;}
    .s2-6-2{margin-top: 30rem;margin-left: 50rem;font-size: var(--f-l);font-weight: 500;}
    .s2-6-3{margin-top: 30rem;}
    .index-bars{display: inline-grid;grid-auto-flow: column;align-items: end;grid-gap: 6rem;margin-right: 16rem;line-height: 1;}
    .index-bars span{display: block;width: 14rem;height: var(--bar-height, 74rem);border-radius: 2rem;}
    .index-bars__availability span:first-child{background-color: var(--c5);}
    .index-bars__availability span:last-child{background-color: var(--c2);}
    .index-bars__uncertainty span:first-child{background-color: var(--c6);}
    .index-bars__uncertainty span:last-child{background-color: var(--c7);}
    .s2-8{font-weight: 500;}
    .s2-9{margin-top: 40rem;display: grid;grid-template-columns: auto;grid-gap: 20rem;}
    .s2-10{display: flex;align-items: center;}
    .s2-10-1{flex: none;margin-right: 25rem;min-width: 80rem;}
    
    .s3-1 table{width: 100%;border-collapse: collapse;border-spacing: 0;}
    .s3-1 th,
    .s3-1 td{vertical-align: middle;padding: 15rem 20rem;border-top: var(--sl) solid;}
    .s3-1 th{font-weight: 500;}
    .s3-1 th:nth-child(n +3),
    .s3-1 td:nth-child(n +3){text-align: center;}
    .s3-1 tr:first-child th,
    .s3-1 tr:first-child td{border-top-width: max(2px, 2rem);}
    .s3-1 thead th:not(:first-child),
    .s3-1 tbody td:not(:first-child){border-left: var(--sl) solid;}
    .s3-1 tfoot td{font-weight: 700;}
    .s3-2{margin-top: 55rem;display: flex;position: relative;z-index: 2;}
    
    .s4-1{overflow: hidden;}
    .s4-2{margin-bottom: 20rem;font-size: var(--f-m);}
    .s4-3{margin: -15rem -30rem;display: flex;flex-wrap: wrap;}
    .s4-4{margin: 15rem 30rem;font-size: var(--f-m);display: flex;align-items: center;}
    .s4-4-1{margin-right: 15rem;}
    .s4-4-2{padding: .5em 1em;border-radius: var(--br1);background-color: var(--c2);}
    .s4-5{margin-top: 75rem;}
    
    .s5-3{display: grid;grid-template-columns: auto 1fr;align-items: center;grid-gap: 20rem;padding-left: 20rem;}
    .s5-3-2 .button{transition: all .15s;}
    .s5-3-2 .button:disabled{opacity: .2;pointer-events: none;}
    .s5-4{margin-top: 30rem;}
    .s5-4 table{width: 100%;border-collapse: collapse;border-spacing: 0;}
    .s5-4 th,
    .s5-4 td{vertical-align: middle;padding: 15rem 20rem;border-bottom: var(--sl) solid;}
    .s5-4 td{font-weight: 300;}
    .s5-4 th{font-weight: 500;}
    .s5-4 tr:last-child th,
    .s5-4 tr:last-child td{border-bottom-width: max(2px, 2rem);}
    .s5-5{display: flex;align-items: center;}
    .s5-6{margin-right: 15rem;font-weight: 500;}
    .s5-7{display: flex;}
    .s5-7-1{flex: 1;min-width: 70rem;}
    .s5-7-1:not(:first-child){margin-left: 10rem;}
    .s5-8{display: flex;}
    .s5-8-1{display: flex;align-items: center;}
    .s5-8-1:not(:last-child)::after{content: "|";margin-right: .5em;padding-left: .5em;}
    .s5-8-1 a{text-decoration: underline;}
    .s5-9{margin-top: 60rem;}
    
    .popup-report{background-color: var(--c0);max-height: 100vh;overflow: auto;}
    .popup-report .popup-inner{max-width: 1320rem;padding: 110rem 0;}
    .popup-report .popup-title{text-align: left;}
    .popup-report .popup-content:not(:first-child){margin-top: 60rem;}
    .report-meta{margin-bottom: 0;}
    .report-summary{margin-bottom: 95rem;}
    .report-table-title{margin-top: 0;}
    .report-table th:nth-child(1),
    .report-table td:nth-child(1){width: 80rem;text-align: center;}
    .report-table th:nth-child(3),
    .report-table td:nth-child(3){width: 120rem;text-align: center;font-weight: 700;}
    .report-table th:nth-child(4),
    .report-table td:nth-child(4){width: 36%;}
    .report-section-row td{font-weight: 700;}
    .report-section-row td:nth-child(2){border-left: var(--sl) solid;}
    .service-name-with-tooltip{display: inline-flex;align-items: center;gap: 10rem;position: relative;}
    .service-tooltip{width: 22rem;height: 22rem;min-width: 22rem;display: inline-flex;align-items: center;justify-content: center;border-radius: 50%;background-color: var(--c2);color: var(--c1);font-size: 14rem;font-weight: 800;line-height: 1;cursor: help;position: relative;outline: none;}
    .service-tooltip-text{position: absolute;left: 50%;bottom: calc(100% + 12rem);transform: translateX(-50%) translateY(4rem);width: max-content;max-width: 360rem;padding: 12rem 16rem;border-radius: 8rem;background-color: var(--c1);color: var(--c3);font-size: 14rem;line-height: 1.35;font-weight: 500;text-align: left;letter-spacing: 0;box-shadow: 0 8rem 24rem rgba(0,0,0,.2);opacity: 0;visibility: hidden;pointer-events: none;transition: opacity .15s, transform .15s, visibility .15s;z-index: 20;}
    .service-tooltip-text::after{content: "";position: absolute;top: 100%;left: 50%;transform: translateX(-50%);border: 7rem solid transparent;border-top-color: var(--c1);}
    .service-tooltip:hover .service-tooltip-text,
    .service-tooltip:focus .service-tooltip-text,
    .service-tooltip:focus-visible .service-tooltip-text{opacity: 1;visibility: visible;transform: translateX(-50%) translateY(0);}
    .report-order{margin-top: 105rem;}
    .report-actions{margin-top: 75rem;}
   
}

@media screen and (max-width: 1023.98px) {
    
    :root{
        
        --wr: 20rem;

        --gap: 10rem;

        --btn: 50rem;


        --f-s: max(12px, 12rem);
        --f-d: max(14px, 14rem);
        --f-m: max(14px, 16rem);
        --f-b: max(14px, 18rem);
        --f-l: max(14px, 20rem);
        --f-xl: max(14px, 24rem);
        --f-xxl: max(14px, 24rem);
        --f-xxxl: max(14px, 60rem);

        --mw: 640rem; 
        
    }
    
    html{font-size: 1px;}
    
    .desktop{display: none!important;}
    
    .button__default{padding: 0 20rem;}
    .button__default .button-icon:first-child{margin: 0;}
    .button__dense{padding: 10rem 15rem;}
    
    .title br{display: none;}
  
    .topbar{padding: 20rem 0;}
    .topbar-logo{transform: none;max-width: 100rem;}
    
    .main{padding-bottom: 40rem;}
    
    .section-header:not(:last-child){margin-bottom: 30rem;}
    
    .formbox{grid-gap: 20rem;}
    .formbox-row{flex-direction: column;}
    .formbox-cell:not(:first-child){margin-top: 20rem;margin-left: 0;}
    .formbox-footer{margin-top: 30rem;}
    .formbox-message{margin: 25rem auto 0;max-width: 100%;font-size: 16rem;}
    .formbox-footer .button{width: 100%;}
    
    .textfield-input{padding: 0 20rem;}
    .textfield-label{display: none;}
    
    .s1-1{grid-template-columns: auto;grid-gap: 40rem;padding: 100rem 0;}
    .s1-2{padding: 0;}
    .s1-3{width: 70vw;margin: 0;top: 0;left: 65vw;bottom: 0;position: absolute;z-index: -1;}
    .s1-4{max-width: 240rem;}
    .s1-5{margin-top: 100rem;}
    .s1-6{grid-template-columns: auto;grid-gap: 0;}
    .s1-6-2{margin-top: 10rem;}
    .s1-6-2 .button{width: 100%;}
    .s1-6-3{margin-top: 20rem;font-size: var(--f-s);text-align: center;}
    
    .s2-3{display: grid;grid-template-columns: auto;grid-gap: 20rem;}
    .s2-4{display: grid;grid-template-columns: auto;grid-gap: 10rem;}
    .s2-4-1,
    .s2-4-2{display: block;}
    .s2-4-1{min-width: 0;white-space: normal;}
    .s2-4:not(:first-child) .s2-4-1, 
    .s2-4:not(:first-child) .s2-4-2{padding: 0;}
    .s2-5{display: grid;grid-template-columns: auto;grid-gap: 60rem;}
    .s2-6{grid-column: auto;padding: 0;transform: none;}
    .s2-6-1{margin: 0;}
    .index-bars span{height: var(--bar-height, 74rem);}
    .s2-7{grid-column: auto;}
    
    .s3-1{margin: 30rem var(--awr) 0;overflow: auto;}
    .s3-2{margin-top: 40rem;}
    .s3-2 .button{width: 100%;}
    
    .s4-3{margin: -10rem;}
    .s4-4{margin: 10rem;flex-wrap: wrap;}
    .s4-4-1{width: 100%;}
    .s4-4-2{margin-top: 10rem;}
    .s4-5{margin-top: 40rem;}
    .s4-5 .button{width: 100%;}
    
    .s5-3{padding: 0;}
    .s5-4{margin: 30rem var(--awr) 0;overflow: auto;}
    .s5-9{margin-top: 30rem;}
    
    .popup-close{margin: 20rem;}
    .popup-inner{padding-bottom: 40rem;}
    .popup-header{max-width: 80%;}
    .popup-title{text-align: left;}
    .popup-content:not(:first-child){margin-top: 30rem;}
    .popup-report .popup-inner{padding: 80rem 0 40rem;max-width: 100%;}
    .popup-report .popup-header{max-width: calc(100% - 80rem);}
    .report-meta{margin-bottom: 0;}
    .report-summary{margin-bottom: 50rem;}
    .report-table{margin-top: 30rem;}
    .service-name-with-tooltip{display: inline;}
    .service-tooltip{margin-left: 8rem;width: 22px;height: 22px;min-width: 22px;font-size: 14px;}
    .service-tooltip-text{left: auto;right: 0;transform: translateY(4rem);max-width: min(320rem, calc(100vw - 60rem));}
    .service-tooltip-text::after{left: auto;right: 8rem;transform: none;}
    .service-tooltip:hover .service-tooltip-text,
    .service-tooltip:focus .service-tooltip-text,
    .service-tooltip:focus-visible .service-tooltip-text{transform: translateY(0);}
    .report-order{margin-top: 50rem;}
    .report-actions{margin-top: 40rem;}
    .report-actions .button{width: 100%;}
    
}


@media screen and (min-width: 1024px) {
    
    .mobile{display: none!important;}
    
    
    
}

.analysis-loader{min-height: calc(var(--app-height, 100vh) - var(--headroom-height, 0px));display: flex;align-items: center;}
.analysis-loader-inner{min-height: 70vh;display: flex;flex-direction: column;align-items: center;justify-content: center;text-align: center;}
.analysis-progress{margin-top: 80rem;display: grid;grid-template-columns: minmax(240rem, 380rem) auto;align-items: center;grid-gap: 35rem;font-size: var(--f-b);font-weight: 500;}
.analysis-progress-line{height: 4rem;background-color: var(--c3);overflow: hidden;}
.analysis-progress-bar{width: 0;height: 100%;background-color: var(--c2);transition: width .45s ease;}
.analysis-progress-step{margin-top: 25rem;max-width: 720rem;font-size: var(--f-b);font-weight: 500;color: var(--c1);opacity: .8;}
.analysis-error-inner{max-width: 900rem;padding: 100rem 0;}
.analysis-error-message{margin-top: 40rem;font-size: var(--f-b);color: var(--c4);font-weight: 500;}
.analysis-error-message p:not(:first-child){margin-top: 15rem;}
.analysis-error-action{margin-top: 50rem;}
.debug-page-head{padding: 80rem 0 30rem;}
.debug-meta{margin-top: 30rem;font-size: var(--f-m);font-weight: 500;color: var(--c4);}
.debug-meta p:not(:first-child){margin-top: 8rem;}
.debug-error{margin-top: 30rem;padding: 20rem 25rem;background-color: var(--c4);color: var(--c0);border-radius: var(--br1);font-weight: 500;}
.debug-block{margin-top: 50rem;}
.debug-block .title{margin-bottom: 20rem;}
.debug-textarea{width: 100%;min-height: 420rem;padding: 20rem;border: var(--sl) solid var(--c1);border-radius: var(--br1);background-color: var(--c0);color: var(--c1);font: 14px/1.45 monospace;resize: vertical;}
.debug-actions{margin-top: 25rem;}

@media screen and (max-width: 1023px) {
    .analysis-loader-inner{min-height: 60vh;}
    .analysis-progress{grid-template-columns: 1fr auto;width: 100%;grid-gap: 20rem;}
    .analysis-progress-step{font-size: 16rem;}
    .debug-textarea{min-height: 320rem;}
}

@media screen and (min-width: 1600px) {
    
    
    html{font-size: 1px;}
    
    
}

/* hover animations */

@media (hover: hover) and (pointer: fine) and (min-width: 1024px) {
   
    .button,
    .popup-close{transition: all .15s;}
    
    .button__default:hover,
    .popup-close:hover{background-color: var(--c8);}
    
    .button__blank:hover{color: var(--c4);}
    
    
    
    .s5-8-1 a{transition: color .15s;}
    .s5-8-1 a:hover{color: var(--c4);}
    
}
