:root{
    /* Body */
    --body-fs:var(--fs-16);
    --body-fw:var(--fw-400);
    --body-lh:var(--lh-150);
    --body-ls:var(--ls-m1);
    --body-color:var(--c-title);
    --body-bg:var(--c-bg);

    /* Typography */
    --strong-fw:var(--fw-700);

    /* Focus */
    --focus-c:var(--c-brand);
    --focus-gap:var(--sp-2);

    /* Scrollbar */
    --scroll-c:var(--c-brand);
    --scroll-w:var(--sp-8);

    /* Select */
    --select-right:var(--sp-12);
    --select-ico:var(--sp-14);

    /* Viewport */
    --view-h:calc(var(--vh,1dvh) * 100);
}

/* Box model */
*,*::before,*::after{box-sizing:border-box}

/* Document */
html{font-size:100%;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;overflow-x:hidden;overflow-x:clip;overflow-y:scroll;}

/* Element reset */
html,body,div,p,span,a,img,ul,ol,li,dl,dt,dd,h1,h2,h3,h4,h5,h6,form,input,select,textarea,button,label,fieldset,legend,table,tr,td,th,tbody,thead,tfoot,caption,video,strong,em,i,b{margin:0;padding:0;font-size:inherit}

/* List */
ul,ol,li{list-style:none}

/* Media */
img{max-width:100%;height:auto;border:0;vertical-align:middle}
video{max-width:100%;height:auto}
iframe{max-width:100%;border:0}

/* Table */
table{border-collapse:collapse;border-spacing:0}

/* Typography */
em,i{font-style:normal}
span,strong,a,em,i,b{font-size:inherit;font-family:inherit;color:inherit;vertical-align:baseline}
h1,h2,h3,h4,h5,h6,th{font-weight:inherit}
strong,b{font-weight:var(--strong-fw)}

/* Form base */
fieldset{min-width:0;border:0}
input,button,textarea,select,label{display:inline-block;font:inherit;color:inherit;letter-spacing:inherit;vertical-align:middle}
input,button,textarea,select{min-width:0;max-width:100%}

/* Form appearance */
input[type=button],input[type=submit],input[type=reset],button,textarea,select{-webkit-appearance:none;-moz-appearance:none;appearance:none}
input[type=button],input[type=submit],input[type=reset],button{border:0;background:none}

/* Form cursor */
input[type=button],input[type=submit],input[type=reset],button,select,label{cursor:pointer}
textarea{overflow:auto;resize:vertical;cursor:text}

/* Select */
select{background:var(--c-bg) url(../images/inc/arrow_down.svg) no-repeat right var(--select-right) center;background-size:var(--select-ico) auto}

/* Disabled */
button:disabled,input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;opacity:var(--disabled-op)}

/* Touch */
a,input,button,textarea,select,li{-webkit-tap-highlight-color:transparent}

/* Focus */
a:focus-visible,input:focus-visible,button:focus-visible,textarea:focus-visible,select:focus-visible{outline:var(--focus-w) solid var(--focus-c);outline-offset:var(--focus-gap)}

/* Link */
a,a:active,a:hover{color:inherit;text-decoration:none}

/* Body */
body{font-family:var(--ff-base);font-size:var(--body-fs);font-weight:var(--body-fw);line-height:var(--body-lh);letter-spacing:var(--body-ls);color:var(--body-color);background:var(--body-bg);word-break:keep-all;overflow-wrap:break-word;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}

/* Page layout */
html:not(.pop) body:not(.pop){display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;min-height:var(--view-h)}
html.pop body,body.pop{display:block;min-height:inherit}

/* Scroll lock */
html.hidden,html.layerOn{overflow-y:hidden}

/* Scroll area */
.scrollst{overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--scroll-c) transparent}

/* Webkit scrollbar */
/* html::-webkit-scrollbar,.scrollst::-webkit-scrollbar{width:var(--scroll-w);height:var(--scroll-w)}
html::-webkit-scrollbar-track,.scrollst::-webkit-scrollbar-track{background:transparent}
html::-webkit-scrollbar-thumb,.scrollst::-webkit-scrollbar-thumb{border-radius:var(--rd-full);background:var(--scroll-c)} */

/* Selection */
::selection{color:var(--c-white);background:var(--c-brand)}

/* Utility */
[hidden]{display:none!important}