:root{--ink:#0a2b38;--ink-soft:#34505a;--navy:#082d3c;--navy-deep:#061f2a;--mint:#21d5aa;--mint-dark:#00a77f;--cream:#f3f5ef;--line:#dce5e2;--white:#fff;--shadow:0 28px 70px rgba(5, 38, 50, .13)}html{scroll-behavior:smooth;scroll-padding-top:82px}body{color:var(--ink);background:var(--white);font-family:helvetica neue,noto sans jp,yu gothic,YuGothic,Meiryo,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:2000;padding:.75rem 1rem;color:var(--white);background:var(--navy);border-radius:.5rem}.skip-link:focus{top:1rem}.navbar{padding:1rem 0;transition:background .25s ease,box-shadow .25s ease,padding .25s ease}.navbar.is-scrolled{padding:.65rem 0;background:rgba(255,255,255,.94);box-shadow:0 6px 30px rgba(6,36,47,8%);backdrop-filter:blur(14px)}.brand{display:inline-flex;align-items:center;gap:.7rem;color:var(--ink);font-size:1.05rem;font-weight:500;letter-spacing:-.02em;text-decoration:none}.brand strong{font-weight:750}.brand-mark{display:inline-grid;place-items:center;width:2.15rem;height:2.15rem;color:var(--navy);background:var(--mint);border-radius:.62rem .62rem .85rem .85rem;font-weight:800;line-height:1;clip-path:polygon(50% 0,100% 17%,100% 63%,86% 82%,50% 100%,14% 82%,0 63%,0 17%)}.navbar .nav-link{padding:.65rem .78rem!important;color:#2d4953;font-size:.86rem;font-weight:650}.navbar .nav-link:hover{color:var(--mint-dark)}.navbar-toggler{padding:.4rem .5rem;border:0;box-shadow:none!important}.btn{padding:.72rem 1.25rem;border-radius:.7rem;font-size:.9rem;font-weight:700;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.btn:hover{transform:translateY(-2px)}.btn-brand{color:#062f38;background:var(--mint);border-color:var(--mint);box-shadow:0 10px 25px rgba(17,194,150,.2)}.btn-brand:hover,.btn-brand:focus{color:#05252d;background:#3be0b9;border-color:#3be0b9;box-shadow:0 13px 30px rgba(17,194,150,.28)}.btn-outline-brand{color:var(--ink);background:rgba(255,255,255,.5);border-color:#b8cbc7}.btn-outline-brand:hover{color:var(--ink);background:#eaf8f4;border-color:#91beb3}.btn-quiet{color:var(--ink);background:0 0;border:1px solid #bbcbc8}.btn-quiet:hover{color:var(--ink);background:#fff;border-color:#8fa9a4}.btn-lg{padding:.93rem 1.5rem;font-size:.94rem}.hero{position:relative;min-height:760px;padding:10.2rem 0 7.2rem;background:linear-gradient(125deg,#f5f8f4 0%,#ecf7f3 58%,#e3f2ed 100%)}.hero::before{content:"";position:absolute;inset:0;opacity:.48;background-image:linear-gradient(rgba(7,63,74,5%) 1px,transparent 1px),linear-gradient(90deg,rgba(7,63,74,5%) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to right,transparent,#000 70%)}.hero-orb{position:absolute;border-radius:50%;filter:blur(1px)}.hero-orb-one{width:500px;height:500px;right:-140px;top:-170px;border:1px solid rgba(23,170,138,.14);box-shadow:inset 0 0 100px rgba(31,214,170,7%)}.hero-orb-two{width:260px;height:260px;left:-150px;bottom:15px;background:rgba(34,213,170,7%)}.eyebrow,.section-kicker{margin:0 0 1.25rem;color:var(--mint-dark);font-size:.73rem;font-weight:800;letter-spacing:.18em}.display-title{margin:0 0 1.6rem;font-size:clamp(3.15rem,6vw,5.4rem);font-weight:780;line-height:1.06;letter-spacing:-.075em}.display-title span{position:relative;color:#077f68}.display-title span::after{content:"";position:absolute;left:.02em;right:0;bottom:.04em;height:.1em;background:var(--mint);opacity:.35;border-radius:2rem}.hero-copy{max-width:600px;margin-bottom:2rem;color:var(--ink-soft);font-size:1.08rem;line-height:1.95}.hero-note{margin:1.25rem 0 0 .1rem;color:#5b7379;font-size:.76rem}.hero-note span{margin-right:.4rem;color:var(--mint-dark);font-size:.55rem}.dashboard-wrap{position:relative;width:110%;margin-left:1%}.dashboard-glow{position:absolute;inset:8% 2% -5% 8%;background:#3ad9b4;border-radius:50%;opacity:.18;filter:blur(58px)}.dashboard-card{position:relative;overflow:hidden;background:#f9fbfa;border:1px solid rgba(255,255,255,.9);border-radius:1.2rem;box-shadow:0 35px 75px rgba(5,37,49,.2);transform:perspective(1200px)rotateY(-5deg)rotateX(2deg)}.dashboard-top{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1rem;color:#cbd9d8;background:var(--navy-deep)}.mini-brand{display:flex;align-items:center;gap:.45rem;font-size:.58rem;font-weight:700}.mini-brand span{display:grid;place-items:center;width:1.25rem;height:1.25rem;color:var(--navy);background:var(--mint);border-radius:.3rem;font-size:.64rem}.dashboard-actions{display:flex;align-items:center;gap:.38rem}.dashboard-actions i{width:.32rem;height:.32rem;background:#5f777b;border-radius:50%}.dashboard-actions b{width:1.2rem;height:1.2rem;margin-left:.35rem;background:linear-gradient(135deg,#6d8588,#385359);border-radius:50%}.dashboard-body{padding:1.2rem}.dash-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:.8rem}.dash-heading small{color:#7b9394;font-size:.45rem;font-weight:800;letter-spacing:.15em}.dash-heading h2{margin:.15rem 0 0;color:var(--ink);font-size:.9rem;font-weight:750}.status-pill{display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .55rem;color:#41615f;background:#e7f3ef;border-radius:2rem;font-size:.47rem;font-weight:700}.status-pill i{width:.34rem;height:.34rem;background:#15bc8f;border-radius:50%}.camera-grid{display:grid;grid-template-columns:1fr 1fr;gap:.55rem}.camera-view{position:relative;overflow:hidden;aspect-ratio:1.65;background:linear-gradient(160deg,#83999a,#526c70);border-radius:.42rem;box-shadow:inset 0 0 25px rgba(5,31,39,.26)}.camera-view::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,24,31,.16),transparent 35%,rgba(2,18,23,.2))}.view-two{background:linear-gradient(150deg,#849595,#435d61)}.view-three{background:linear-gradient(165deg,#90a3a1 0 47%,#607577 48%)}.view-four{background:linear-gradient(155deg,#a7b5b0,#647879)}.cam-label{position:absolute;z-index:2;top:.45rem;left:.5rem;display:flex;align-items:center;gap:.45rem;color:#fff;font-size:.42rem;text-shadow:0 1px 3px #123}.cam-label span{color:#6ff6c7;font-size:.36rem}.cam-label b{font-weight:700}.parking-lines{position:absolute;left:6%;right:8%;bottom:5%;height:65%;transform:perspective(200px)rotateX(48deg)}.parking-lines::before,.parking-lines::after,.parking-lines i{content:"";position:absolute;top:10%;bottom:0;width:2px;background:rgba(244,247,238,.65)}.parking-lines::before{left:12%}.parking-lines i:nth-child(1){left:34%}.parking-lines i:nth-child(2){left:58%}.parking-lines i:nth-child(3){left:82%}.parking-lines::after{right:0}.car{position:absolute;z-index:1;width:18%;height:28%;border-radius:35% 35% 18% 18%;box-shadow:0 4px 7px rgba(0,0,0,.34);transform:skewX(-7deg)}.car::before{content:"";position:absolute;left:17%;right:17%;top:10%;height:34%;background:#293c43;border-radius:40% 40% 5% 5%}.car-a{left:18%;bottom:16%;background:#d8e2df}.car-b{right:15%;bottom:21%;background:#173f4c}.car-c{left:44%;bottom:16%;background:#c4c8bd}.car-d{left:13%;bottom:13%;background:#173f4c}.car-e{right:15%;bottom:22%;background:#dce3df}.gate{position:absolute;z-index:1;left:14%;bottom:25%;width:50%;height:4px;background:#e7eeea;transform:rotate(-5deg);box-shadow:0 2px 4px #344}.gate::before{content:"";position:absolute;left:0;top:-5px;width:6px;height:26px;background:#253e45}.road-line{position:absolute;left:47%;bottom:-10%;width:2px;height:80%;background:#e8e7c5;transform:rotate(20deg)}.float-card{position:absolute;z-index:3;display:flex;align-items:center;color:var(--ink);background:rgba(255,255,255,.94);border:1px solid #fff;border-radius:.75rem;box-shadow:0 14px 30px rgba(5,39,50,.16);backdrop-filter:blur(8px)}.float-status{left:-6%;bottom:9%;gap:.7rem;padding:.7rem .9rem}.pulse-dot{position:relative;width:.65rem;height:.65rem;background:var(--mint);border-radius:50%;box-shadow:0 0 0 5px rgba(31,213,170,.14)}.float-card b{display:block;font-size:.67rem}.float-card small{display:block;color:#758b8e;font-size:.48rem;margin-top:.12rem}.float-sites{right:-4%;top:21%;gap:.5rem;padding:.6rem .75rem}.float-sites b{color:#099979;font-size:1.15rem}.float-sites span{font-size:.54rem;font-weight:700}.fade-up{opacity:0;transform:translateY(18px);animation:fadeUp .75s cubic-bezier(.2,.7,.2,1)forwards}.delay-1{animation-delay:.12s}.delay-2{animation-delay:.24s}.delay-3{animation-delay:.36s}@keyframes fadeUp{to{opacity:1;transform:translateY(0)}}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}.reveal.is-visible{opacity:1;transform:translateY(0)}.value-strip{position:relative;z-index:3;color:#fff;background:var(--navy)}.value-item{display:flex;align-items:center;gap:1.25rem;min-height:108px;padding:1.3rem 2rem;border-right:1px solid rgba(255,255,255,.12)}.value-item:last-child{border-right:0}.value-item>span{color:var(--mint);font-size:.67rem;font-weight:800;letter-spacing:.1em}.value-item b{display:block;margin-bottom:.25rem;font-size:.95rem}.value-item small{color:#a9bcbc;font-size:.72rem}.section{position:relative;padding:7.5rem 0}.section-light{background:#fff}.section-cream{background:var(--cream)}.section-dark{overflow:hidden;color:#d4e0df;background:var(--navy-deep)}.section-grid{position:absolute;inset:0;opacity:.04;background-image:linear-gradient(#fff 1px,transparent 1px),linear-gradient(90deg,#fff 1px,transparent 1px);background-size:60px 60px;mask-image:radial-gradient(circle at 75% 45%,#000,transparent 66%)}.section-title{margin:0;font-size:clamp(2rem,4vw,3.15rem);font-weight:740;line-height:1.35;letter-spacing:-.045em}.section-lead{margin:0;color:#567076;font-size:.98rem;line-height:2}.text-mint{color:var(--mint)!important}.problem-card{position:relative;height:100%;min-height:360px;padding:2rem;background:#f7f9f7;border:1px solid #e5ebe8;border-radius:1rem;transition:transform .25s ease,box-shadow .25s ease}.problem-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.problem-card.accent-card{background:#eaf8f4;border-color:#c8e8df}.problem-no{position:absolute;top:1.5rem;right:1.5rem;color:#a3b6b3;font-size:.7rem;font-weight:800}.line-icon{display:grid;place-items:center;width:4rem;height:4rem;margin-bottom:2rem;color:#087b67;background:#fff;border-radius:.8rem;box-shadow:0 10px 22px rgba(9,58,69,7%)}.line-icon svg{width:2rem;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.problem-card h3{margin-bottom:1rem;font-size:1.25rem;font-weight:740;line-height:1.65;letter-spacing:-.02em}.problem-card p{margin:0;color:#667d81;font-size:.86rem;line-height:1.85}.feature-card{display:flex;gap:1.5rem;height:100%;min-height:230px;padding:2rem;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.1);border-radius:1rem;transition:background .25s ease,border .25s ease,transform .25s ease}.feature-card:hover{transform:translateY(-4px);background:rgba(255,255,255,7%);border-color:rgba(38,218,173,.32)}.feature-icon{flex:none;display:grid;place-items:center;width:3.6rem;height:3.6rem;color:var(--mint);background:rgba(31,213,170,.1);border:1px solid rgba(31,213,170,.18);border-radius:.8rem}.feature-icon svg{width:1.85rem;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.feature-card small{color:var(--mint);font-size:.61rem;font-weight:800;letter-spacing:.13em}.feature-card h3{margin:.55rem 0 .8rem;color:#fff;font-size:1.25rem;font-weight:720}.feature-card p{margin:0;color:#aabebd;font-size:.86rem;line-height:1.85}.feature-note{margin:2rem 0 0;color:#829a9b;font-size:.72rem}.section-heading{max-width:760px;margin:0 auto 3.5rem}.section-heading .section-lead{max-width:580px;margin-top:1.2rem!important}.use-card{overflow:hidden;height:100%;background:#fff;border:1px solid #e3e8e2;border-radius:1rem;box-shadow:0 12px 35px rgba(11,44,51,6%);transition:transform .25s ease,box-shadow .25s ease}.use-card:hover{transform:translateY(-5px);box-shadow:0 20px 45px rgba(11,44,51,.12)}.use-visual{position:relative;overflow:hidden;height:165px;background:linear-gradient(160deg,#46696f,#173d49)}.use-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(5,25,31,.2))}.use-visual i{position:absolute;bottom:0;width:2px;height:50%;background:rgba(255,255,255,.55);transform:skewX(-18deg)}.use-visual i:nth-of-type(1){left:20%}.use-visual i:nth-of-type(2){left:50%}.use-visual i:nth-of-type(3){left:80%}.use-commercial span{position:absolute;z-index:1;top:20%;left:44%;display:grid;place-items:center;width:2.5rem;height:2.5rem;color:#fff;background:#1b9b83;border-radius:.25rem;font-weight:800;box-shadow:0 5px 15px #1238}.use-office{background:linear-gradient(160deg,#718b8c,#294c55)}.use-office span{position:absolute;left:20%;right:20%;top:15%;height:70%;background:repeating-linear-gradient(90deg,#274954 0 12%,#b8ccca 13% 18%);clip-path:polygon(8% 0,92% 0,100% 100%,0 100%)}.use-hotel{background:linear-gradient(160deg,#78928e,#34565d)}.use-hotel span{position:absolute;z-index:1;top:24%;left:43%;color:#eff7ef;font-family:serif;font-size:2.3rem}.use-hotel::before{content:"";position:absolute;left:18%;right:18%;top:12%;bottom:0;background:#3d6267;clip-path:polygon(50% 0,100% 28%,93% 100%,7% 100%,0 28%)}.use-multi{background:linear-gradient(160deg,#8ba19e,#49696d)}.use-multi span,.use-multi b{position:absolute;bottom:18%;width:28%;background:#294c55}.use-multi span{left:16%;height:52%}.use-multi b{right:16%;height:68%}.use-multi span::before,.use-multi b::before{content:"";position:absolute;inset:12%;background:repeating-linear-gradient(#99b1ae 0 5px,transparent 6px 12px)}.use-body{padding:1.35rem 1.4rem 1.5rem}.use-body small{color:#0a9c7c;font-size:.58rem;font-weight:800;letter-spacing:.13em}.use-body h3{margin:.45rem 0 .55rem;font-size:1.08rem;font-weight:740}.use-body p{margin:0;color:#708488;font-size:.78rem}.text-link{display:inline-flex;gap:1rem;margin-top:1.8rem;color:#047c67;font-size:.9rem;font-weight:750;text-decoration:none;border-bottom:1px solid #91c8bb;padding-bottom:.3rem}.text-link:hover{color:#005c4b}.text-link span{transition:transform .2s ease}.text-link:hover span{transform:translateX(4px)}.flow-list{margin:0;padding:0;list-style:none}.flow-list li{position:relative;display:grid;grid-template-columns:4.5rem 1fr;gap:1.3rem;padding:0 0 2.4rem}.flow-list li:not(:last-child)::before{content:"";position:absolute;left:1.72rem;top:3.8rem;bottom:.6rem;width:1px;background:#cbdad6}.flow-list>li>span{display:grid;place-items:center;width:3.5rem;height:3.5rem;color:#067d68;background:#e4f7f1;border:1px solid #c5e8de;border-radius:50%;font-size:.68rem;font-weight:800}.flow-list small{color:#0a9c7c;font-size:.58rem;font-weight:800;letter-spacing:.15em}.flow-list h3{margin:.4rem 0 .55rem;font-size:1.13rem;font-weight:740}.flow-list p{margin:0;color:#667d81;font-size:.84rem;line-height:1.8}.cta-section{position:relative;overflow:hidden;padding:6.5rem 0;background:var(--navy)}.cta-pattern{position:absolute;inset:0;opacity:.1;background:radial-gradient(circle at 15% 10%,var(--mint),transparent 24%),radial-gradient(circle at 90% 110%,var(--mint),transparent 27%)}.cta-card{display:flex;align-items:center;justify-content:space-between;gap:3rem;padding:4rem;color:#fff;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.13);border-radius:1.2rem;box-shadow:0 20px 65px rgba(0,0,0,.14)}.cta-card h2{margin:0 0 1.2rem;font-size:clamp(2rem,4vw,3.25rem);font-weight:750;line-height:1.35;letter-spacing:-.05em}.cta-card p{margin:0;color:#aec1c0;font-size:.92rem;line-height:1.9}.cta-action{flex:0 0 285px;text-align:center}.cta-action .btn{width:100%;color:var(--ink);padding:1rem 1.25rem}.cta-action small{display:block;margin-top:1rem;color:#90a7a7;font-size:.68rem;line-height:1.65}.site-footer{padding:4.5rem 0 2rem;color:#bfd0cf;background:var(--navy-deep)}.footer-brand{color:#fff}.site-footer p{margin:.8rem 0 0;color:#758f91;font-size:.75rem}.footer-links{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:1rem 1.7rem}.footer-links a{color:#a8bcbb;font-size:.76rem;text-decoration:none}.footer-links a:hover{color:var(--mint)}.footer-bottom{display:flex;justify-content:space-between;margin-top:3rem;padding-top:1.5rem;color:#607b7e;border-top:1px solid rgba(255,255,255,8%);font-size:.68rem}.footer-bottom a{color:#7d999b;text-decoration:none}.error-page{display:grid;place-items:center;min-height:100vh;padding:4rem 0;background:var(--cream)}.error-code{margin:3rem 0 0;color:var(--mint-dark);font-size:5rem;font-weight:800;letter-spacing:-.08em}.error-page h1{margin-bottom:1rem;font-weight:750}.error-page p:not(.error-code){color:#667d81;margin-bottom:2rem}@media(max-width:1199.98px){.dashboard-wrap{width:106%;margin-left:-2%}.hero{min-height:700px}.display-title{font-size:4rem}}@media(max-width:991.98px){.navbar{background:rgba(255,255,255,.96);box-shadow:0 5px 25px rgba(5,35,45,7%)}.navbar-collapse{padding:1rem 0 .3rem}.navbar .nav-item .btn{display:block;margin-top:.35rem}.hero{padding:8.5rem 0 6rem}.hero-copy{max-width:680px}.dashboard-wrap{width:92%;margin:1rem auto 0}.value-item{padding:1.2rem}.section{padding:6rem 0}.problem-card{min-height:345px;padding:1.6rem}.cta-card{padding:3rem}.footer-links{justify-content:flex-start}}@media(max-width:767.98px){.hero{padding:7.7rem 0 5rem}.display-title{font-size:clamp(2.9rem,13vw,4rem)}.hero-copy{font-size:.96rem;line-height:1.85}.dashboard-wrap{width:100%;margin-top:.5rem}.dashboard-card{transform:none}.float-sites{right:-2%}.float-status{left:-2%}.value-item{min-height:88px;border-right:0;border-bottom:1px solid rgba(255,255,255,.1)}.value-item:last-child{border-bottom:0}.section{padding:5rem 0}.section-title{font-size:2rem}.problem-card{min-height:auto}.feature-card{min-height:auto;padding:1.6rem}.cta-section{padding:4.5rem 0}.cta-card{display:block;padding:2.2rem}.cta-action{margin-top:2rem}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:.5rem}}@media(max-width:479.98px){.brand{font-size:.95rem}.brand-mark{width:2rem;height:2rem}.hero .btn{width:100%}.dashboard-body{padding:.7rem}.dashboard-top{padding:.65rem .75rem}.camera-grid{gap:.35rem}.cam-label{top:.3rem;left:.35rem}.float-card{display:none}.section-title br{display:none}.feature-card{display:block}.feature-icon{margin-bottom:1.25rem}.flow-list li{grid-template-columns:3.7rem 1fr;gap:.8rem}.flow-list>li>span{width:3rem;height:3rem}.flow-list li:not(:last-child)::before{left:1.48rem;top:3.3rem}.cta-card{padding:1.7rem}.footer-links{display:grid;grid-template-columns:1fr 1fr}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.fade-up,.reveal{opacity:1;transform:none}}