@import "https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@400;700;800&family=DM+Sans:wght@300;400;500;700&display=swap";*{box-sizing:border-box;margin:0;padding:0}:root{--bg:#060608;--bg2:#0c0c10;--text:#ede8e0;--muted:#6b6660;--accent:#c8a96e;--accent2:#8b6f47;--border:#c8a96e1f;--border2:#ffffff0f;--font-jp:"Shippori Mincho", serif;--font-en:"DM Sans", sans-serif}body:before{content:"";z-index:9999;pointer-events:none;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");position:fixed;inset:0}body{background:var(--bg);color:var(--text);font-family:var(--font-en);-webkit-font-smoothing:antialiased;line-height:1.75}#nav{z-index:200;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border2);background:#060608bf;padding:1.4rem 3rem;position:fixed;top:0;left:0;right:0}.nav-inner{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;display:flex}.logo{font-family:var(--font-jp);letter-spacing:.08em;color:var(--text);background:linear-gradient(135deg, #ede8e0, var(--accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:1.4rem;font-weight:800;text-decoration:none}nav a{color:var(--muted);letter-spacing:.06em;margin-left:2.5rem;font-size:.82rem;font-weight:500;text-decoration:none;transition:color .25s}nav a:hover{color:var(--text)}.nav-active{color:var(--accent)}.hamburger{cursor:pointer;z-index:200;background:0 0;border:none;flex-direction:column;gap:5px;padding:.4rem;display:none}.hamburger span{background:var(--text);transform-origin:50%;width:22px;height:1.5px;transition:all .3s;display:block}.hamburger.open span:first-child{transform:translateY(6.5px)rotate(45deg)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:translateY(-6.5px)rotate(-45deg)}@media (width<=640px){nav#nav-links{display:none}.hamburger{display:flex}}.mobile-menu{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:150;opacity:0;pointer-events:none;background:#060608f7;justify-content:center;align-items:center;transition:opacity .35s;display:flex;position:fixed;inset:0}.mobile-menu.open{opacity:1;pointer-events:all}.mobile-menu-inner{flex-direction:column;align-items:center;gap:2rem;transition:transform .35s;display:flex;transform:translateY(16px)}.mobile-menu.open .mobile-menu-inner{transform:translateY(0)}.mobile-link{font-family:var(--font-jp);color:var(--text);letter-spacing:.05em;font-size:1.6rem;font-weight:700;text-decoration:none;transition:color .2s}.mobile-link:hover{color:var(--accent)}.mobile-cta{text-align:center;width:200px;margin-top:1rem}.btn{font-family:var(--font-en);letter-spacing:.08em;padding:.9rem 2.2rem;font-size:.85rem;font-weight:500;text-decoration:none;transition:all .3s;display:inline-block}.btn-primary{background:var(--accent);color:#060608;font-weight:700}.btn-primary:hover{background:#d4b87a;transform:translateY(-1px);box-shadow:0 8px 32px #c8a96e4d}.btn-outline{color:var(--accent);border:1px solid #c8a96e59}.btn-outline:hover{border-color:var(--accent);background:#c8a96e14}#hero{text-align:center;justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.hero-video-bg{z-index:0;position:absolute;inset:0}.hero-video-bg video{object-fit:cover;width:100%;height:100%}.hero-overlay{background:linear-gradient(#06060899 0%,#06060833 50%,#060608d9 100%),radial-gradient(#0000 40%,#06060880 100%);position:absolute;inset:0}.hero-inner{z-index:1;justify-content:center;align-items:center;width:100%;min-width:0;max-width:none;min-height:100vh;padding:2rem;display:flex;position:relative}.hero-text-wrap{max-width:820px;margin:0 auto}#hero h1{font-family:var(--font-jp);letter-spacing:.04em;text-shadow:0 4px 40px #0009;margin-bottom:1.8rem;font-size:clamp(2.4rem,6vw,5rem);font-weight:800;line-height:1.2}#hero p{color:#ede8e0b8;text-shadow:0 2px 16px #000c;overflow-wrap:anywhere;max-width:680px;margin-bottom:3rem;margin-left:auto;margin-right:auto;font-size:1rem;font-weight:300;line-height:2}.hero-btns{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.hero-title{overflow:visible}.hero-line{opacity:0;animation:.9s cubic-bezier(.16,1,.3,1) forwards heroLineIn;display:block;transform:translateY(24px)}.hero-line:first-child{animation-delay:.2s}.hero-line:nth-child(2){animation-delay:.45s}.hero-sub{opacity:0;animation:.9s cubic-bezier(.16,1,.3,1) .7s forwards heroLineIn;transform:translateY(16px)}.hero-btns{opacity:0;animation:.9s cubic-bezier(.16,1,.3,1) .9s forwards heroLineIn;transform:translateY(12px)}@keyframes heroLineIn{to{opacity:1;transform:translateY(0)}}.scroll-indicator{z-index:1;flex-direction:column;align-items:center;gap:.6rem;display:flex;position:absolute;bottom:2.5rem;left:50%;transform:translate(-50%)}.scroll-indicator span{letter-spacing:.2em;color:#ede8e059;text-transform:uppercase;font-size:.65rem}.scroll-line{background:#ede8e01a;width:1px;height:48px;position:relative;overflow:hidden}.scroll-dot{background:var(--accent);width:1px;height:16px;animation:1.8s ease-in-out infinite scrollDown;position:absolute;top:-16px}@keyframes scrollDown{0%{opacity:1;top:-16px}80%{opacity:1;top:48px}to{opacity:0;top:48px}}section{padding:8rem 3rem}#about{background:var(--bg);position:relative;overflow:hidden}#about:before{content:"";opacity:.35;z-index:0;background-image:url(/images/about-bg.jpg);background-position:50%;background-size:cover;position:absolute;inset:0}#about:after{content:"";z-index:0;background:linear-gradient(90deg,#060608d9 0%,#06060866 50%,#060608d9 100%);position:absolute;inset:0}#about .section-inner{z-index:1;position:relative}#services{background:var(--bg2)}#news{background:var(--bg)}#cta{background:var(--bg2)}.section-inner{max-width:1200px;margin:0 auto}.section-label{letter-spacing:.2em;text-transform:uppercase;color:var(--accent);border-bottom:1px solid var(--border);margin-bottom:1.2rem;padding-bottom:.6rem;font-size:.7rem;font-weight:500;display:inline-block}section h2{font-family:var(--font-jp);letter-spacing:.02em;margin-bottom:3rem;font-size:clamp(1.8rem,3.5vw,2.8rem);font-weight:800;line-height:1.3}.about-layout{grid-template-columns:1fr 1.4fr;align-items:start;gap:6rem;display:grid}.about-left h2{margin-bottom:0;font-size:clamp(2rem,4vw,3.2rem);line-height:1.25}.about-right{flex-direction:column;gap:1.5rem;display:flex}.about-body{color:#ede8e0d9;font-size:.97rem;font-weight:300;line-height:2.1}.service-block{border-top:1px solid var(--border2);padding:3.5rem 0}.service-block:last-child{border-bottom:1px solid var(--border2)}.service-block-header{align-items:baseline;gap:1.4rem;margin-bottom:1.4rem;display:flex}.service-num{color:var(--accent);letter-spacing:.15em;font-size:.68rem;font-weight:500}.service-block h3{font-family:var(--font-jp);letter-spacing:.02em;font-size:1.3rem;font-weight:700}.service-block>p{color:var(--muted);max-width:620px;margin-bottom:2.5rem;font-size:.92rem;font-weight:300;line-height:2}.demo-video{object-fit:cover;border:1px solid var(--border);width:100%;max-height:480px;margin-top:1.5rem}.gallery-grid{background:var(--border2);border:1px solid var(--border2);grid-template-columns:repeat(3,1fr);gap:1px;margin-top:2rem;display:grid}.gallery-item{background:var(--bg);aspect-ratio:16/9;position:relative;overflow:hidden}.gallery-item video{object-fit:cover;width:100%;height:100%;transition:transform .4s;display:block}.gallery-item:hover video{transform:scale(1.03)}.gallery-label{letter-spacing:.1em;color:#ede8e0b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#06060899;padding:.3rem .7rem;font-size:.72rem;position:absolute;bottom:.8rem;left:.8rem}.persona-grid{background:var(--border2);border:1px solid var(--border2);grid-template-columns:repeat(3,1fr);gap:1px;margin-top:2rem;display:grid}.persona-card{background:var(--bg2);flex-direction:column;gap:1rem;padding:2.5rem 2rem;transition:background .25s;display:flex;position:relative}.persona-card:hover{background:#c8a96e0a}.persona-card:before{content:"";background:linear-gradient(to right, var(--accent), transparent);opacity:0;height:2px;transition:opacity .3s;position:absolute;top:0;left:0;right:0}.persona-card:hover:before{opacity:1}.persona-num{letter-spacing:.15em;color:var(--accent);opacity:.6;font-size:.68rem;font-weight:600}.persona-card h4{font-family:var(--font-jp);color:var(--text);font-size:1.1rem;font-weight:700}.persona-card p{color:var(--muted);flex:1;font-size:.85rem;font-weight:300;line-height:1.9}.persona-tags{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;padding:0;list-style:none;display:flex}.persona-tags li{letter-spacing:.08em;color:var(--accent);border:1px solid #c8a96e40;padding:.25rem .7rem;font-size:.72rem;font-weight:500;transition:all .2s}.persona-card:hover .persona-tags li{border-color:#c8a96e80}.features-grid{background:var(--border2);border:1px solid var(--border2);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1px;margin-top:2rem;display:grid}.feature-item{background:var(--bg2);padding:2rem 1.8rem;transition:background .25s}.feature-item:hover{background:#c8a96e0a}.feature-item h4{font-family:var(--font-jp);color:var(--text);margin-bottom:.7rem;font-size:.95rem;font-weight:700}.feature-item p{color:var(--muted);font-size:.84rem;font-weight:300;line-height:1.8}.steps{flex-wrap:nowrap;align-items:center;gap:0;margin-top:2.5rem;display:flex}.step{border:1px solid var(--border2);text-align:center;flex:1;padding:2.5rem 2rem;transition:border-color .3s,background .3s;position:relative}.step:hover{background:#c8a96e08;border-color:#c8a96e4d}.step-icon{color:var(--accent);opacity:.6;justify-content:center;margin-bottom:1.2rem;display:flex}.step-num{letter-spacing:.2em;color:var(--accent);opacity:.5;margin-bottom:.8rem;font-size:.65rem;font-weight:600;display:block}.step h4{font-family:var(--font-jp);color:var(--text);margin-bottom:.6rem;font-size:.95rem;font-weight:700}.step p{color:var(--muted);font-size:.8rem;font-weight:300;line-height:1.7}.step-connector{color:var(--accent);opacity:.3;flex-direction:column;flex-shrink:0;align-items:center;gap:.3rem;padding:0 .8rem;display:flex}.reasons{margin-top:2rem}.reason-item{border-bottom:1px solid var(--border2);cursor:default;grid-template-columns:80px 1fr auto;align-items:center;gap:2.5rem;padding:2.2rem 0;transition:background .3s;display:grid}.reason-item:first-child{border-top:1px solid var(--border2)}.reason-item:hover{background:#c8a96e08}.reason-left{flex-direction:column;align-items:center;gap:.8rem;display:flex}.reason-num{color:var(--accent);letter-spacing:.15em;font-size:.68rem;font-weight:500}.reason-line{background:linear-gradient(to bottom, var(--accent), transparent);opacity:.4;width:1px;height:32px}.reason-content h4{font-family:var(--font-jp);color:var(--text);margin-bottom:.5rem;font-size:1.05rem;font-weight:700}.reason-content p{color:var(--muted);max-width:520px;font-size:.87rem;font-weight:300;line-height:1.9}.reason-keyword{letter-spacing:.2em;color:var(--accent);opacity:.25;writing-mode:vertical-rl;text-orientation:mixed;font-size:.65rem;font-weight:700;transition:opacity .3s}.reason-item:hover .reason-keyword{opacity:.6}.news-desc{color:var(--muted);max-width:640px;margin-bottom:3rem;font-size:.92rem;font-weight:300;line-height:2}.news-item-placeholder{text-align:center;color:var(--muted);letter-spacing:.08em;border:1px dashed #c8a96e33;padding:4rem;font-size:.82rem}#cta{text-align:center;position:relative;overflow:hidden}#cta:before{content:"";opacity:.08;z-index:0;background-image:url(/images/about-bg.jpg);background-position:50%;background-size:cover;position:absolute;inset:0}#cta:after{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle,#c8a96e12 0%,#0000 70%);width:700px;height:700px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cta-inner{z-index:1;flex-direction:column;align-items:center;display:flex;position:relative}.cta-label-row{align-items:center;gap:1.5rem;width:100%;max-width:500px;margin-bottom:2.5rem;display:flex}.cta-line{background:linear-gradient(90deg,#0000,#c8a96e4d,#0000);flex:1;height:1px}#cta h2{font-family:var(--font-jp);letter-spacing:.03em;margin-bottom:1.2rem;font-size:clamp(1.8rem,4vw,3.2rem);font-weight:800;line-height:1.4}#cta p{color:var(--muted);margin-bottom:3rem;font-size:.95rem;font-weight:300}.cta-btns{flex-wrap:wrap;justify-content:center;gap:1rem;margin-bottom:2.5rem;display:flex}.cta-links{color:var(--muted);align-items:center;gap:1rem;font-size:.78rem;display:flex}.cta-links a{color:var(--muted);letter-spacing:.06em;text-decoration:none;transition:color .2s}.cta-links a:hover{color:var(--accent)}.cta-links span{opacity:.3}footer{border-top:1px solid var(--border2);padding:5rem 3rem 3rem;position:relative}footer:before{content:"";background:linear-gradient(90deg,#0000,#c8a96e4d,#0000);height:1px;position:absolute;top:0;left:0;right:0}.footer-inner{flex-direction:column;gap:4rem;display:flex}.footer-top{grid-template-columns:1fr 1.5fr;align-items:start;gap:4rem;display:grid}.footer-brand .logo{font-family:var(--font-jp);letter-spacing:.08em;background:linear-gradient(135deg, #ede8e0, var(--accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:.8rem;font-size:1.4rem;font-weight:800}.footer-tagline{font-family:var(--font-jp);color:var(--muted);letter-spacing:.05em;max-width:260px;font-size:.85rem;line-height:1.8}.footer-nav{grid-template-columns:repeat(3,1fr);gap:2rem;display:grid}.footer-nav-col{flex-direction:column;gap:.9rem;display:flex}.footer-nav-label{letter-spacing:.18em;text-transform:uppercase;color:var(--accent);opacity:.6;margin-bottom:.3rem;font-size:.68rem;font-weight:600}.footer-nav-col a{color:var(--muted);letter-spacing:.04em;font-size:.85rem;text-decoration:none;transition:color .2s}.footer-nav-col a:hover{color:var(--text)}.footer-bottom{border-top:1px solid var(--border2);justify-content:space-between;align-items:center;padding-top:2rem;display:flex}.copy{color:#3a3836;letter-spacing:.05em;font-size:.75rem}.footer-bottom-links{gap:1.5rem;display:flex}.footer-bottom-links a{color:#3a3836;letter-spacing:.05em;font-size:.75rem;text-decoration:none;transition:color .2s}.footer-bottom-links a:hover{color:var(--muted)}.nav-cta{letter-spacing:.08em;border:1px solid #c8a96e66;padding:.5rem 1.2rem;font-size:.82rem;font-weight:600;display:inline-block;color:var(--accent)!important;transition:all .25s!important}.nav-cta:hover{border-color:var(--accent)!important;background:#c8a96e1a!important}#nav{border-bottom:1px solid #0000;transition:background .4s,border-color .4s;background:#06060800!important}#nav.scrolled{border-bottom-color:var(--border2);background:#060608e0!important}.news-coming{flex-direction:column;gap:2rem;margin-top:1rem;display:flex}.news-coming-header{align-items:center;gap:1.5rem;display:flex}.news-coming-line{background:linear-gradient(to right, var(--border2), transparent);flex:1;height:1px}.news-coming-label{letter-spacing:.2em;color:var(--accent);opacity:.5;white-space:nowrap;font-size:.7rem}.news-coming-cards{background:var(--border2);border:1px solid var(--border2);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.news-coming-card{background:var(--bg);flex-direction:column;gap:.8rem;padding:2rem 1.8rem;transition:background .25s;display:flex}.news-coming-card:hover{background:#c8a96e08}.news-coming-tag{letter-spacing:.15em;text-transform:uppercase;color:var(--accent);opacity:.5;font-size:.65rem;font-weight:600}.news-coming-card h4{font-family:var(--font-jp);color:var(--text);opacity:.6;font-size:.95rem;font-weight:700;line-height:1.5}.news-coming-card p{color:var(--muted);font-size:.8rem;font-weight:300;line-height:1.8}.news-coming-badge{letter-spacing:.12em;color:var(--muted);border:1px solid var(--border2);width:fit-content;margin-top:auto;padding:.25rem .7rem;font-size:.62rem;font-weight:600;display:inline-block}@media (width>=1400px){.section-inner{max-width:1320px}#hero h1{font-size:5.5rem}}@media (width<=1199px){section{padding:6rem 2.5rem}#nav{padding:1.2rem 2.5rem}.section-inner{max-width:100%}#hero h1{font-size:clamp(2rem,5vw,3.8rem)}.features-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=899px){section{padding:5rem 2rem}#nav{padding:1rem 2rem}nav a{margin-left:1.5rem;font-size:.78rem}#hero h1{font-size:clamp(1.9rem,5vw,3rem)}#hero p{font-size:.92rem}section h2{font-size:clamp(1.5rem,4vw,2.2rem)}.features-grid{grid-template-columns:repeat(2,1fr)}.step{padding:2rem 1.2rem}.step-connector{padding:0 .5rem}.reason-item{grid-template-columns:64px 1fr auto;gap:1.5rem}.demo-video{max-height:360px}.gallery-grid{grid-template-columns:repeat(2,1fr)}.gallery-item:last-child{grid-column:span 2}}@media (width<=768px){.about-layout{grid-template-columns:1fr;gap:2rem}.persona-grid,.news-coming-cards{grid-template-columns:1fr}.steps{flex-direction:column;align-items:stretch}.step-connector{flex-direction:row;justify-content:center;padding:.5rem 0}footer{padding:4rem 1.5rem 2.5rem}.footer-top{grid-template-columns:1fr;gap:2.5rem}.footer-nav{grid-template-columns:repeat(2,1fr)}.footer-bottom{text-align:center;flex-direction:column;gap:1rem}}@media (width<=640px){section{padding:4rem 1.2rem}#nav{padding:1rem 1.2rem}nav{display:none}#hero h1{font-size:clamp(1.7rem,7vw,2.4rem);line-height:1.3}#hero p{margin-bottom:2rem;font-size:.88rem;line-height:1.85}.hero-btns{flex-direction:column;align-items:center}.scroll-indicator{bottom:1.5rem}.btn{text-align:center;width:100%;max-width:280px}section h2{margin-bottom:2rem;font-size:1.5rem}.service-block{padding:2.5rem 0}.service-block h3{font-size:1.1rem}.features-grid{grid-template-columns:1fr;gap:1px}.feature-item{padding:1.5rem 1.2rem}.step{padding:2rem 1.2rem}.reason-item{grid-template-columns:40px 1fr;gap:1rem;padding:1.5rem 0}.reason-keyword{display:none}.reason-line{height:20px}.demo-video{max-height:240px}.gallery-grid{grid-template-columns:1fr}.gallery-item:last-child{grid-column:auto}#cta h2{font-size:1.5rem}.cta-btns{flex-direction:column;align-items:center}.cta-links{flex-wrap:wrap;justify-content:center}.footer-nav{grid-template-columns:1fr 1fr}}@media (width<=380px){#hero h1{font-size:1.5rem}section h2{font-size:1.3rem}.btn{padding:.8rem 1.5rem;font-size:.82rem}}
