@import"https://api.fontshare.com/v2/css?f[]=switzer@400,500,600&display=swap";:root{--animation-duration: 2s;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--bg-color: #FAF9F6;--text-color: #151515;--text-color-rgb: 21, 21, 21;--border-color: rgba(21, 21, 21, .2);--button-bg: #151515;--button-text: #FAF9F6;--toggle-color: #151515;--overlay-color: rgba(250, 249, 246, .4);--font-primary: "Switzer", sans-serif;--safe-area-top: env(safe-area-inset-top, 0px);--safe-area-bottom: env(safe-area-inset-bottom, 0px);--safe-area-left: env(safe-area-inset-left, 0px);--safe-area-right: env(safe-area-inset-right, 0px);--padding-top-safe: max(1.5rem, var(--safe-area-top));--padding-bottom-safe: max(1.5rem, var(--safe-area-bottom))}:root[data-theme=dark]{--bg-color: #151515;--text-color: #FAF9F6;--text-color-rgb: 250, 249, 246;--border-color: rgba(250, 249, 246, .2);--button-bg: #FAF9F6;--button-text: #151515;--toggle-color: #FAF9F6;--overlay-color: rgba(21, 21, 21, .4)}*{margin:0;padding:0;box-sizing:border-box}body,html{width:100%;height:100%;font-family:var(--font-primary);overflow-x:hidden;overflow-y:auto;scroll-snap-type:y mandatory;scroll-behavior:smooth;background-color:var(--bg-color);color:var(--text-color);transition:background-color 1.2s var(--ease-out-expo);min-height:100%;min-height:-webkit-fill-available}#root{width:100%;height:100%}.section{width:100%;height:100vh;height:100svh;height:100dvh;scroll-snap-align:start;position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:3}.background{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;background-repeat:no-repeat;z-index:1;animation:scaleIn 20s var(--ease-out-expo) forwards;opacity:0;pointer-events:none;transition:opacity 1.2s var(--ease-out-expo),filter 1.2s var(--ease-out-expo)}.background.light-bg{background-image:url(/assets/bg-light.jpg)}.background.dark-bg{background-image:url(/assets/bg-dark.jpg)}.background.light-bg.active,.background.dark-bg.active{opacity:1}[data-theme=dark] .overlay{display:none}.top-bar{position:absolute;top:0;padding-top:var(--padding-top-safe);left:0;right:0;padding-left:var(--safe-area-left);padding-right:var(--safe-area-right);width:100%;display:flex;justify-content:center;align-items:center;gap:1rem;z-index:9999}.logo-container{display:flex;justify-content:center;align-items:center;z-index:5;flex-grow:1}.logo{width:1000px;max-width:95vw;height:auto;pointer-events:auto;transition:transform .8s var(--ease-out-expo)}.logo-stacked{display:none}@media(max-width:991px){.logo-horizontal{display:none}.logo-stacked{display:block;width:180px!important}}.bottom-bar{position:absolute;bottom:0;padding-bottom:var(--padding-bottom-safe);left:0;right:0;padding-left:var(--safe-area-left);padding-right:var(--safe-area-right);width:100%;display:flex;justify-content:center;align-items:center;z-index:9999}.theme-label{font-size:.7rem;font-weight:500;letter-spacing:.15em;color:var(--text-color);opacity:.3;transition:opacity .5s var(--ease-out-expo);pointer-events:auto;cursor:default;display:flex;align-items:center;gap:.4rem}[data-theme=light] .hero .theme-label{color:#faf9f6}.theme-label:hover{opacity:.6}.jp-label{font-family:Hiragino Sans,Yu Gothic,Meiryo,sans-serif;font-weight:400;font-size:.75rem;letter-spacing:0}.theme-label.active{opacity:1}.theme-switch{width:34px;height:16px;border-radius:0;background-color:transparent;border:1px solid var(--text-color);position:relative;cursor:pointer;pointer-events:auto;transition:background-color .2s ease,transform .3s var(--ease-out-expo);display:flex;align-items:center;padding:0 2px;box-sizing:border-box}[data-theme=light] .hero .theme-switch{border-color:#faf9f6}.theme-switch:hover{transform:scale(1.05)}#newsletter-section{background:var(--bg-color);z-index:10}.theme-switch__knob{width:10px;height:10px;border-radius:0;background-color:var(--text-color);position:absolute;left:2px;transition:transform .3s ease-in-out}[data-theme=light] .hero .theme-switch__knob{background-color:#faf9f6}.theme-switch--dark .theme-switch__knob{transform:translate(18px)}.scroll-container{position:relative;z-index:3;width:100%}.newsletter{height:auto;min-height:100vh;min-height:100svh;min-height:100dvh;display:flex;flex-direction:column;justify-content:space-between;align-items:center;padding:0 5%}.newsletter-content{display:flex;flex-direction:column;align-items:center;gap:2rem;max-width:600px;width:90%;text-align:center;flex-grow:1;justify-content:center;margin-bottom:0;margin-top:8vh}.newsletter-title{color:var(--text-color);font-size:.8rem;font-weight:500;letter-spacing:.3em;display:flex;flex-direction:row;gap:.8rem;align-items:baseline;justify-content:center}.newsletter-title .jp-label{font-size:.85rem;opacity:.6;letter-spacing:0}.newsletter-form{display:flex;flex-direction:column;gap:1rem;width:100%}.newsletter-row{display:flex;width:100%;gap:0}.newsletter-input{background:transparent;border:1px solid var(--border-color);border-right:none;padding:0 1.5rem;height:3.5rem;color:var(--text-color);font-family:var(--font-primary);font-size:.75rem;letter-spacing:.2em;text-align:left;flex-grow:1;display:flex;align-items:center;transition:all .4s var(--ease-out-expo);border-radius:0}.newsletter-input:hover{border-color:var(--text-color);opacity:.8}.newsletter-input:focus{outline:none;border-color:var(--text-color);background:rgba(var(--text-color-rgb),.02);opacity:1}.newsletter-input:disabled{opacity:.3;cursor:not-allowed}.newsletter-input::placeholder{color:var(--text-color);opacity:.3;transition:opacity .3s var(--ease-out-expo)}.newsletter-input:focus::placeholder{opacity:.5}.newsletter-submit{background:var(--button-bg);color:var(--button-text);border:1px solid var(--button-bg);padding:0 2.5rem;height:3.5rem;min-width:280px;font-family:var(--font-primary);font-size:.75rem;font-weight:600;letter-spacing:.2em;cursor:pointer;white-space:nowrap;transition:all .4s var(--ease-out-expo);display:flex;justify-content:center;align-items:center;gap:.8rem;border-radius:0;position:relative;overflow:hidden}.newsletter-submit:hover:not(:disabled){background:transparent;color:var(--text-color);border-color:var(--text-color)}.newsletter-submit:disabled{cursor:not-allowed;background:var(--button-bg);border-color:var(--border-color);color:var(--button-text);opacity:.3;pointer-events:none}.newsletter-submit:active:not(:disabled){transform:translateY(0)}@keyframes pulse{0%,to{opacity:.3}50%{opacity:.6}}.gdpr-container{width:100%;margin-top:1.2rem}.gdpr-label{display:flex;align-items:center;gap:.8rem;cursor:pointer;text-align:left}.gdpr-checkbox{appearance:none;-webkit-appearance:none;width:16px;height:16px;border:1px solid var(--border-color);background:transparent;cursor:pointer;position:relative;border-radius:0;flex-shrink:0;transition:all .4s var(--ease-out-expo)}.gdpr-checkbox:hover{border-color:var(--text-color);background:rgba(var(--text-color-rgb),.02)}.gdpr-checkbox:checked{background-color:var(--text-color);border-color:var(--text-color);transform:scale(1.05)}.gdpr-checkbox:checked:after{content:"";position:absolute;left:5px;top:2px;width:4px;height:8px;border:solid var(--bg-color);border-width:0 1.5px 1.5px 0;transform:rotate(45deg);animation:checkmark .3s var(--ease-out-expo) forwards}@keyframes checkmark{0%{height:0;opacity:0}to{height:8px;opacity:1}}.gdpr-highlight .gdpr-checkbox{border-color:var(--text-color);transform:scale(1.05)}.gdpr-highlight .gdpr-text{opacity:.95;font-weight:600}.gdpr-text{font-size:.65rem;color:var(--text-color);opacity:.5;letter-spacing:.05em;line-height:1.4;transition:opacity .3s var(--ease-out-expo)}.gdpr-label:hover .gdpr-text{opacity:.8}.gdpr-text .jp-label{font-size:.6rem;display:inline;margin-left:.4rem}.gdpr-link{color:inherit;text-decoration:none;transition:opacity .3s var(--ease-out-expo)}.gdpr-link:hover{text-decoration:underline}.submit-message{width:100%;padding:1rem 1.5rem;margin-top:1.2rem;font-size:.65rem;font-weight:500;letter-spacing:.15em;text-align:center;line-height:1.6;border:1px solid transparent;border-radius:0;animation:fadeInUp .5s var(--ease-out-expo) forwards;opacity:0}.newsletter-form .submit-message:only-child{margin-top:0;padding:1.5rem 2rem;font-size:.75rem;min-height:3.5rem;display:flex;align-items:center;justify-content:center}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.submit-message-jp{font-family:Hiragino Sans,Yu Gothic,Meiryo,sans-serif;opacity:.7}.submit-message--success{background-color:rgba(var(--text-color-rgb),.03);color:var(--text-color);border-color:var(--text-color);opacity:.9}.submit-message--error{background-color:rgba(var(--text-color-rgb),.03);color:var(--text-color);border-color:var(--text-color);opacity:.7}.honeypot-field{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none}.newsletter-subtext{margin-top:-1.2rem;margin-bottom:.4rem;font-size:.6rem;color:var(--text-color);opacity:.5;letter-spacing:.1em;line-height:1.6;max-width:450px;margin-left:auto;margin-right:auto}.newsletter-subtext .jp-label{font-size:.55rem;display:block;margin-top:4px;opacity:.8}.bottom-bar{position:absolute;bottom:0;padding-bottom:var(--padding-bottom-safe);left:0;right:0;padding-left:var(--safe-area-left);padding-right:var(--safe-area-right);width:100%;display:flex;justify-content:center;align-items:center;pointer-events:none}.notify-container{display:flex;flex-direction:column;align-items:center;gap:.5rem;pointer-events:auto;cursor:pointer}.notify-container .theme-label{transition:letter-spacing .5s var(--ease-out-expo),opacity .5s var(--ease-out-expo)}.notify-container:hover .theme-label{letter-spacing:.25em;opacity:1}.down-arrow{color:var(--text-color);opacity:.6;transition:transform .3s ease,opacity .3s ease}[data-theme=light] .hero .down-arrow{color:#faf9f6}.notify-container:hover .down-arrow{transform:translateY(3px);opacity:1}.hero .logo-container,.hero .top-bar,.hero .bottom-bar{transition:opacity .8s var(--ease-out-expo),transform .8s var(--ease-out-expo)}.hero--exiting .logo-container{opacity:0;transform:scale(.96) translateY(-20px)}.hero--exiting .top-bar{opacity:0;transform:translateY(-15px)}.hero--exiting .bottom-bar{opacity:0;transform:translateY(15px)}.section-divider{width:100%;display:flex;justify-content:center;align-items:center;padding:0;height:0;position:relative;z-index:11;background:var(--bg-color)}.section-divider__line{display:block;width:0;height:1px;background-color:var(--border-color);transition:width 1.2s var(--ease-out-expo)}.section-divider--active .section-divider__line{width:min(80%,500px)}.reveal-item{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease-out-expo),transform .9s var(--ease-out-expo)}.newsletter--revealed .reveal-item{opacity:1;transform:translateY(0)}.newsletter--revealed .reveal-item--1{transition-delay:.15s}.newsletter--revealed .reveal-item--2{transition-delay:.3s}.newsletter--revealed .reveal-item--3{transition-delay:.45s}.newsletter--revealed .reveal-item--4{transition-delay:.6s}.newsletter--revealed .newsletter-subtext.reveal-item{opacity:.5}.footer{width:100%;background-color:var(--bg-color);border-top:none;padding:1.5rem 5% var(--padding-bottom-safe);padding-left:calc(5% + var(--safe-area-left));padding-right:calc(5% + var(--safe-area-right));position:relative;z-index:10;display:flex;flex-direction:column;gap:1.5rem;margin-top:auto}.footer-logo-container{display:flex;justify-content:flex-start;width:100%}.footer-logo-link{display:inline-block;width:fit-content}.footer-logo{height:1.2rem;width:auto;filter:none;transition:opacity .3s var(--ease-out-expo)}[data-theme=light] .footer-logo{filter:invert(.9) brightness(.1) contrast(1.2)}.footer-logo:hover{opacity:.7}.footer-bottom{border-top:1px solid var(--border-color);padding-top:2rem;display:flex;justify-content:space-between;align-items:center;width:100%}.footer-link{font-size:.65rem;text-decoration:none;color:var(--text-color);opacity:.5;letter-spacing:.1em;transition:opacity .3s var(--ease-out-expo)}.footer-link:hover{opacity:1}.footer-copyright{font-size:.6rem;opacity:.4;letter-spacing:.1em}.footer-legal{display:flex;gap:2rem}@keyframes scaleIn{0%{transform:scale(1.05)}to{transform:scale(1)}}@media(max-width:768px){.background{transform:rotate(90deg);transform-origin:center center}.logo{width:auto;max-width:80vw}.bottom-bar{bottom:var(--safe-area-bottom)}.newsletter-title{font-size:.7rem}.newsletter-row{flex-direction:column;gap:1rem}.newsletter-input{border-right:1px solid var(--border-color);padding:1rem;text-align:center}.newsletter-submit{padding:1rem;width:100%}.newsletter-form .submit-message:only-child{flex-direction:column;gap:.5rem}.section-divider--active .section-divider__line{width:60%}}
