@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@300;400;700&family");
@import url("https://fonts.googleapis.com/css2?family=Jost:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;1,100;1,200&display=swap");
@import url('https://fonts.googleapis.com/css2?family=Handjet:wght@200;400;700&display=swap');


@font-face {
  font-family: 'DomaineDisplay';
  src: url('../fonts/DomaineDisplay-Regular.woff') format("woff"),
       url('../fonts/DomaineDisplay-Regular.ttf') format("truetype"),
       url('../fonts/DomaineDisplay-Regular.eot') format("embedded-opentype");
  
  font-weight: normal;
  font-style: normal;
}

::selection {
    background: var(--Green);
    color: var(--Black);
}

* {
	margin: 0;
	padding: 0;
	border: 0;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

html.lenis {
  height: auto;
}

.lenis.lenis-smooth {
  scroll-behavior: auto;
}

.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}

.lenis.lenis-stopped {
  overflow: hidden;
}

.lenis.lenis-scrolling iframe {
  pointer-events: none;
}



body {
	margin: 0;

	--White: #fff;
	--Black: #000;
	--Gray: #5b5b5b;
	--Green:#00ffde;
	--DearkGray:#020d13;
    --shadow:rgba(72,255,236,.3);
	--Sans: 'Jost','Noto Sans TC', sans-serif;
	--Serif:'DomaineDisplay','Cormorant SC', serif;
	--spFont:'Handjet','Noto Sans TC',cursive, sans-serif;

    --columns:50;
    --cursor-blend-mode:  hard-light;
    --cursor-radius: 0;
    --cursor-bg: #00ffde;

	color: var(--White);
	background:var(--DearkGray);
	font-family:var(--Sans);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5em;
    overflow-x: hidden;
    overflow-y: auto;


	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;

}
/* Better focus styles from https://developer.mozilla.org/en-US/docs/Web/CSS/:focus-visible */
a:focus {
    /* Provide a fallback style for browsers
     that don't support :focus-visible */
    outline: none;
    background: lightgrey;
}

a:focus:not(:focus-visible) {
    /* Remove the focus indicator on mouse-focus for browsers
     that do support :focus-visible */
    background: transparent;
}

a:focus-visible {
    /* Draw a very noticeable focus style for
     keyboard-focus on browsers that do support
     :focus-visible */
    outline: 2px solid red;
    background: transparent;
}
.splitting .textEN .word {
  white-space: nowrap;
}

.gooeyCursor {
    height: 100%;
    position: fixed;
    width: 100%;
    left: 0;
    top: 0;
    pointer-events: none;
    z-index: 99;
    mix-blend-mode: var(--cursor-blend-mode);
    --size: calc(100vw / var(--columns));
}

.cursor__inner {
    display: grid;
    grid-template-columns: repeat(var(--columns), var(--size));
}

.cursor__inner-box {
    width: var(--size);
    height: var(--size);
    background: var(--cursor-bg);
    opacity: 0;
    border-radius: var(--cursor-radius);
}
@media screen and (min-width: 53em) {
    :root {
        --columns: 30;
        --page-padding: 2rem;
    }
}
main{
  	position: relative;
    overflow: hidden;
}

::-webkit-scrollbar-track{
    background-color: transparent;
}

::-webkit-scrollbar{
    width: 7px;
    background-color: transparent;
}

::-webkit-scrollbar-thumb{
    border-radius: 7px;
    background-color: var(--Green);
}


section {
  min-height: 50vh;
  position: relative;
  z-index: 2;
  padding: 0;
  margin: 0;
  white-space: normal;
}
.logoSvg{
	display: block;
	width: 180px;
	height: auto;
	position: fixed;
	left: 30px;
	top: 30px;
	z-index: 5;
	
	display: block;
    fill: #fff;
    fill-opacity: 1;
    stroke: var(--Green);
    stroke-linecap: round;
    stroke-linejoin: round;

    mix-blend-mode:difference;
}

.isReady .logoSvg .text1{
    -webkit-animation: dash1 2s linear forwards infinite;
    animation: dash1 2s linear forwards infinite;
    -webkit-animation-delay: .5s;
    animation-delay: .5s;
    stroke-dasharray: 800;
    stroke-dashoffset: 800;
}
.isReady .logoSvg .text2{
    -webkit-animation: dash1 2s linear forwards infinite;
    animation: dash1 2s linear forwards infinite;
    -webkit-animation-delay: .6s;
    animation-delay: .6s;
    stroke-dasharray: 800;
    stroke-dashoffset: 800;
}
.isReady .logoSvg .text3{
    -webkit-animation: dash1 2s linear forwards infinite;
    animation: dash1 2s linear forwards infinite;
    -webkit-animation-delay: .7s;
    animation-delay: .7s;
    stroke-dasharray: 800;
    stroke-dashoffset: 800;
}

.isReady .logoSvg .text4{
    -webkit-animation: dash1 2s linear forwards infinite;
    animation: dash1 2s linear forwards infinite;
    -webkit-animation-delay: .8s;
    animation-delay: .8s;
    stroke-dasharray: 800;
    stroke-dashoffset: 800;
}

.isReady .logoSvg .text5{
    -webkit-animation: dash1 2s linear forwards infinite;
    animation: dash1 2s linear forwards infinite;
    -webkit-animation-delay: .9s;
    animation-delay: .9s;
    stroke-dasharray: 800;
    stroke-dashoffset: 800;
}

.isReady .logoSvg .text6{
    -webkit-animation: dash1 2s linear forwards infinite;
    animation: dash1 2s linear forwards infinite;
    -webkit-animation-delay: 1s;
    animation-delay: 1s;
    stroke-dasharray: 800;
    stroke-dashoffset: 800;
}

.isReady .logoSvg .text7{
    -webkit-animation: dash1 2s linear forwards infinite;
    animation: dash1 2s linear forwards infinite;
    -webkit-animation-delay: 1.1s;
    animation-delay: 1.1s;
    stroke-dasharray: 800;
    stroke-dashoffset: 800;
}

.isReady .logoSvg .text8{
    -webkit-animation: dash1 2s linear forwards infinite;
    animation: dash1 2s linear forwards infinite;
    -webkit-animation-delay: 1.2s;
    animation-delay: 1.2s;
    stroke-dasharray: 800;
    stroke-dashoffset: 800;
}


@-webkit-keyframes dash1 {
    0% {
        stroke-dashoffset: 800;
        stroke-width: 3px;
    }

    50% {
        stroke-dashoffset: 1600;
        stroke-width: 0.1px;
    }

    50.1% {
        stroke-dashoffset: 800;
    }

    80% {
        stroke-width: 2px;
        fill: var(--Green);
        fill-opacity: 0;
    }

    100% {
        stroke-dashoffset: 0;
        stroke: #fff;
        stroke-width: 0;
        fill: #fff;
        fill-opacity: 1;
        stroke-dasharray: 400;
    }
}

.normal{
    font-family: var(--Sans);
}
.mobile {
  display: none !important;
}
.small{
    font-size: 14px;
}
.scroll{
    width: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    flex-direction: column;
    color: var(--Green);

    position: fixed;
    left: 30px;
    bottom: 30px;
    z-index: 5;

    transition: .3s;
}
.scroll.is-inview{
  opacity: 0;
  transition: .3s;
}
#scroll{
    width: 20px;
    height: auto;
    fill: var(--Green);
}
svg #dot{
    animation: scroll ease 1.5s infinite;
}
@keyframes scroll {
    0% {
        transform: translateY(0);
    }
    30% {
        transform: translateY(100px);
    }
}
.scrollText{
    writing-mode: vertical-lr;
    margin-top: 10px;
    font-size: 12px;
    font-family: var(--spFont);
}
.opeing{
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000;
}


.cursor {
  display: none;
}
@media (any-pointer: fine) {
  .cursor {
    position: fixed;
    top: 0;
    left: 0;
    display: block;
    pointer-events: none;
    z-index: 10;
  }
  .cursor__inner {
    fill: none;
    stroke: var(--Green);
    stroke-width: 1px;
    opacity: 0.3;
    mix-blend-mode: difference;
  }
}

footer{
    width: 100%;
    position: relative;
}
.w1024{
    width: 70%;
    max-width: 1024px;
    margin: 0 auto;
}
footer .w1024{
    padding: 15vh 0;
    display: flex;
    justify-content: center;
    align-content: flex-start;
    align-items: stretch;
    flex-wrap: wrap;
}
.w50{
    width: 50%;
}
.footerTitle{
    width: 100%;
    font-size: 12px;
    font-weight: 700;
    color: var(--Green);
    margin-bottom: 15px;
    text-transform: uppercase;
}
.footerLogos{
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-content: flex-start;
    align-items: stretch;
    flex-wrap: wrap;
    margin-bottom: 20px;
}
.footerLogos img{
    display: block;
    width: auto;
    height: 50px;
    max-width: 100px;
    margin: 0 50px 20px 0;
}

/*////RWD////*/
@media screen and (max-width:1660px) {

}
@media screen and (max-width:1440px) {
  
}
@media screen and (max-width:1366px) {
  
}
@media screen and (max-width:1280px) {

}
@media screen and (max-width:1024px) {
	section{
		width: 100vw;
		height: auto;
	}

}
@media (orientation:landscape) and (max-height: 768px) {
  
}
@media (orientation:portrait) and (max-height: 1180px) {
    .w50{
        width: 100%;
    }
}

@media (orientation:portrait) and (max-height: 1024px) {

}
@media (orientation:portrait) and (max-width: 480px) {

	body{
        font-size: 14px;
        --columns:15;
	}
	.mobile{
		display: block !important;
	}
	.desktop{
	  display: none !important;
	}
	.logoSvg{
		width: 120px;
	}
    .scroll{
        left: 30px;
        bottom: 100px;
    }
	.footerLogos img {
        height: 40px;
        max-width: 90px;
        margin: 0 40px 30px 0;
    }

	
}
/*Iphone 10*/
@media (orientation: portrait) and (max-height: 812px) {
}
@media (orientation: portrait) and (max-height: 736px) {
}
@media (orientation: portrait) and (max-height: 667px) {
}
@media screen and (max-width: 360px) {
    body{
        font-size: 12px;
    }
}
@media screen and (max-width: 320px) {
}