@import url('https://fonts.googleapis.com/css2?family=Oxanium:wght@400;500;600;700;800&family=Roboto:wght@400;500;600;700&display=swap');
:root{--blue:#0606ba;--yellow:#ffcc00;--pale:#e3edf1;--ink:#0b0b16;--gray:#5e616c;--line:#c9d2db}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:white;color:var(--ink);font-family:Roboto,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4,nav,.button,.eyebrow,.text-link{font-family:Oxanium,sans-serif}img{display:block;max-width:100%;height:auto}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--yellow);outline-offset:6px}header{height:90px;display:flex;align-items:center;justify-content:space-between;padding-inline:5.5%;background:#e3edf1ed;backdrop-filter:blur(20px);position:sticky;top:0;z-index:20;border-bottom:1px solid #b5c4d155}.brand{width:180px;flex-shrink:0}nav{display:flex;gap:36px;font-size:14px;font-weight:600}nav a:hover{color:var(--blue)}.button{display:inline-flex;gap:18px;align-items:center;justify-content:center;background:var(--yellow);padding:18px 24px;font-weight:700;font-size:14px;border-radius:8px;border:1px solid #e9be0b;box-shadow:0 3px 0 #c8a92c;position:relative;isolation:isolate;overflow:hidden;transition:transform .25s,box-shadow .25s}.button:after{content:'';position:absolute;inset:-80% 0;transform:translateX(-150%) rotate(22deg);background:linear-gradient(90deg,transparent,#fff9,transparent);width:45%;pointer-events:none;transition:transform .65s}.button:hover:after{transform:translateX(350%) rotate(22deg)}.button:hover{transform:translateY(-3px);box-shadow:0 6px 0 #c8a92c}.button.small{padding:12px 18px;font-size:12px}.button>span:last-child{margin-left:7px}.code{font-weight:800}.text-link{display:inline-flex;align-items:center;gap:20px;font-size:13px;font-weight:600}.text-link:hover{color:var(--blue)}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600;color:var(--blue)}.wrap{max-width:1320px;margin:auto;padding-inline:60px}h2{font-size:clamp(32px,3.7vw,54px);line-height:1.12;letter-spacing:-1.5px;font-weight:650}h2 span{color:var(--blue)}.hero{background:var(--pale);position:relative;overflow:hidden;display:grid;grid-template-columns:1.05fr 1fr;gap:20px;align-items:center;padding:72px max(5.5%,calc((100vw - 1500px)/2)) 110px;min-height:780px}.hero-content{position:relative;z-index:3;max-width:630px;animation:hero-in 1s cubic-bezier(.16,1,.3,1) both}h1{font-size:clamp(38px,4.25vw,70px);font-weight:700;letter-spacing:-1.8px;line-height:1.07;margin:23px 0 25px}h1 span{color:var(--blue)}.hero-content>p{max-width:510px;color:#5c6269;font-size:15px;line-height:1.7}.hero-actions{display:flex;align-items:flex-start;flex-direction:column;gap:24px;margin-top:29px}.hero-art{min-width:0;height:560px;position:relative;perspective:1000px;transform-style:preserve-3d}.hero-art>img{position:absolute;width:108%;max-width:none;right:-8%;top:-55px;transform:translate3d(var(--mx,0px),calc(var(--my,0px) + var(--hero-scroll,0px)),0);animation:phones-arrive 1.4s cubic-bezier(.16,1,.3,1) both;filter:drop-shadow(0 35px 24px #19325419);transition:transform .25s ease-out;will-change:transform}.art-orbit{position:absolute;width:440px;height:440px;background:#0606ba06;border-radius:50%;right:-18%;top:100px;box-shadow:0 0 0 70px #0606ba05,0 0 0 140px #0606ba03}.art-tag{position:absolute;bottom:-5px;right:0;font:10px Oxanium,sans-serif;padding:13px 18px;background:#ffffffd9;backdrop-filter:blur(12px);border:1px solid white;border-radius:7px;display:flex;align-items:center;gap:9px;color:#343b49;z-index:4}.art-tag>span{width:7px;height:7px;background:var(--blue);border-radius:50%;box-shadow:0 0 0 4px #0606ba12}.hero-rings{position:absolute;inset:8% -10%;transform:rotateX(55deg) rotate(-25deg);pointer-events:none}.hero-rings i{position:absolute;inset:0;border:1px solid #0606ba16;border-radius:50%;animation:ring-expand 7s linear infinite}.hero-rings i:nth-child(2){animation-delay:-2.3s}.hero-rings i:nth-child(3){animation-delay:-4.6s}.hero-circuit{position:absolute;inset:0;width:100%;height:100%;overflow:visible;stroke:#0606ba18;stroke-width:1.3}.hero-circuit .circuit-packet{stroke:var(--blue);stroke-width:2;stroke-dasharray:25 900;animation:circuit-run 6s linear infinite}.hero-circuit .second{stroke:var(--yellow);stroke-width:4;animation-delay:-3s}.report-token{position:absolute;z-index:5;display:flex;align-items:center;gap:13px;padding:16px 20px;border-radius:12px;background:#ffffffeb;border:1px solid white;box-shadow:0 16px 40px #20325214;backdrop-filter:blur(10px);animation:token-float 7s ease-in-out infinite}.token-one{left:-20px;top:40px;animation-delay:-1s}.token-two{right:-5px;bottom:75px;animation-delay:-4s}.report-token b{font:11px Oxanium;font-weight:600}.report-token div>i{display:block;width:75px;height:4px;background:#dce2e9;border-radius:5px;margin-top:7px}.report-token div>i:last-child{width:45px}.tiny-check{width:31px;height:31px;background:var(--yellow);color:var(--blue);display:grid;place-items:center;border-radius:50%;font-size:20px}.tiny-chart{display:flex;align-items:end;gap:3px;height:31px}.tiny-chart i{width:5px;background:var(--blue);height:60%;animation:tiny-bars 3s ease-in-out infinite}.tiny-chart i:nth-child(2){height:90%;animation-delay:-1s;background:var(--yellow)}.tiny-chart i:nth-child(3){height:75%;animation-delay:-2s}.hero-bottom{position:absolute;left:5.5%;right:5.5%;bottom:26px;display:flex;align-items:center;gap:25px;border-top:1px solid #b8c8d2;padding-top:20px;font-size:9px;letter-spacing:1px;color:#4f5966}.hero-bottom>span:first-child{font-family:Oxanium;font-weight:600}.hero-bottom>a{margin-left:auto;font-size:22px;color:var(--blue)}.product-flow{background:var(--blue);color:white;position:relative;min-height:1000px;padding-block:80px 70px;overflow:clip}.flow-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:60px}.flow-heading .eyebrow{color:var(--yellow)}.flow-heading h2{margin-top:18px;font-size:clamp(38px,4.4vw,63px)}.flow-heading>p{max-width:340px;color:#ddddff;font-size:15px;line-height:1.8}.flow-scene{max-width:1400px;margin:40px auto 10px;perspective:1200px}.flow-scene svg{display:block;width:100%;overflow:visible}.flow-phone{transform:translateY(calc(28px - var(--flow,0)*28px));transition:transform .1s linear}.flow-desktop{transform:translateY(calc(45px - var(--flow,0)*45px));transition:transform .1s linear}.flow-core{transform-origin:600px 260px;animation:core-float 6s ease-in-out infinite}.packet{stroke-dasharray:26 660;animation:flow-packet 4s linear infinite}.packet-return{animation-delay:-2s;stroke-width:2;stroke:#b8bbff}.phone-report{animation:report-reveal 6s ease-in-out infinite}.report-b{animation-delay:.4s}.report-c{animation-delay:.8s}.desktop-report{animation:report-reveal 6s 2.2s ease-in-out infinite}.desk-bar{transform-box:fill-box;transform-origin:bottom;animation:chart-grow 6s ease-in-out infinite}.db2{animation-delay:.2s}.db3{animation-delay:.4s}.db4{animation-delay:.6s}.db5{animation-delay:.8s}.core-lights{animation:core-glow 3s ease-in-out infinite}.flow-caption{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid #ffffff30;padding-top:25px;margin-top:5px}.flow-caption p{color:#ddddff;font-size:13px;line-height:1.7;max-width:620px}.flow-caption>span{font-size:10px;color:#bcbcf0}.modules{background:var(--pale);padding-block:105px}.module-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:65px;margin-bottom:50px}.module-heading h2{margin-top:20px}.module-heading>p{max-width:350px;color:var(--gray);font-size:14px;line-height:1.8}.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start}.module-card{background:white;border:1px solid #c9d3dd;border-radius:18px;overflow:hidden;box-shadow:0 16px 30px #3c546508;position:relative;transition:box-shadow .3s,transform .3s}.module-card:hover{box-shadow:0 20px 50px #22384d16}.module-graphic{background:linear-gradient(145deg,#f5f8fa,#e3edf1);height:230px;overflow:hidden;position:relative}.module-graphic svg{height:100%;width:100%;display:block}.scan-ring{fill:none;stroke:#0606ba;stroke-opacity:.25;stroke-dasharray:5 10;transform-origin:150px 110px;animation:spin 30s linear infinite}.shield{transform-origin:150px 110px;animation:shield-float 6s ease-in-out infinite}.draw-check{stroke-dasharray:100;stroke-dashoffset:0;animation:check-draw 6s ease-in-out infinite}.bar{transform-box:fill-box;transform-origin:bottom;animation:chart-grow 5s ease-in-out infinite}.bar2{animation-delay:.3s}.bar3{animation-delay:.6s}.gear{transform-origin:150px 118px;animation:spin 24s linear infinite}.card-heading{display:flex;align-items:baseline;gap:16px;padding:27px 25px 22px}.card-heading>span{font:10px Oxanium;color:var(--blue)}.card-heading h3{font-size:clamp(23px,2.1vw,31px);font-weight:600;letter-spacing:-.7px;overflow-wrap:anywhere}.card-rows{padding:0 25px}.module-item{border-top:1px solid #e0e4e9}.module-item summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;list-style:none;gap:12px;padding:21px 0}.module-item summary::-webkit-details-marker{display:none}.module-item h4{font-size:13px;font-weight:600;line-height:1.6;overflow-wrap:anywhere}.module-item summary>span{color:var(--blue);font-size:21px;transition:transform .25s}.module-item[open] summary>span{transform:rotate(45deg)}.module-item p{font-size:13px;line-height:1.8;color:var(--gray);margin-bottom:15px;overflow-wrap:anywhere}.module-item p:last-child{margin-bottom:25px}.card-link{display:flex;align-items:center;justify-content:space-between;margin:5px 25px 25px;border-top:1px solid #e0e4e9;padding-top:23px;color:var(--blue);font:12px Oxanium;font-weight:600}.card-link>span{transition:transform .3s}.card-link:hover>span{transform:translate(3px,-3px)}.pricing{padding-block:115px}.pricing h2{margin-top:25px;font-size:clamp(30px,3.9vw,57px)}.pricing-bottom{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-top:40px;border-top:1px solid var(--line);padding-top:35px}.pricing-bottom p{max-width:650px;font-size:15px;color:var(--gray);line-height:1.8;margin-bottom:12px}.pricing-bottom strong{color:var(--blue);font-size:21px;font-family:Oxanium}.pricing-bottom .price-source{font-size:13px;margin:17px 0 0}.pricing-bottom .button{flex-shrink:0}.contact{position:relative;overflow:hidden;background:var(--blue);color:white;padding:100px 0 85px;text-align:center}.contact>.wrap{position:relative;z-index:1}.contact-logo{width:190px;margin:0 auto 30px;filter:brightness(0) invert(1)}.contact h2{font-size:clamp(50px,7vw,100px);margin:25px 0;letter-spacing:-2.5px}.contact p{font-size:16px;line-height:1.8;color:#ddddff;margin-bottom:30px}.contact .button{color:#111}.contact-email{display:block;width:fit-content;margin:24px auto 0;font-size:13px;color:#eee}.contact-orbit{position:absolute;width:800px;height:800px;left:calc(50% - 400px);top:150px;border:1px solid #ffffff1f;border-radius:50%;box-shadow:0 0 0 100px #ffffff05,0 0 0 200px #ffffff03;animation:orbit 10s ease-in-out infinite}footer{background:var(--blue);color:#fff;padding-top:0;padding-bottom:25px}footer>.wrap{border-top:1px solid #ffffff35;padding-top:45px}.footer-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:35px;gap:30px}.footer-top img{width:175px}.footer-top>div{display:flex;gap:25px;font-size:12px;color:#efefff}.footer-bottom{border-top:1px solid #ffffff30;padding-top:22px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:10px;color:#cccdf4}.motion-control{background:none;border:1px solid #ffffff40;border-radius:20px;font-size:10px;color:white;padding:9px 13px}.skip{position:fixed;top:-100px;left:20px;padding:15px;background:var(--yellow);z-index:100}.skip:focus{top:10px}.reading-progress{position:fixed;top:0;left:0;right:0;height:3px;background:var(--blue);z-index:30;transform:scaleX(var(--read,0));transform-origin:left}.js .reveal{opacity:0;transform:translateY(35px);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1)}.js .reveal.visible{opacity:1;transform:none}.module-card:nth-child(2){transition-delay:.12s}.module-card:nth-child(3){transition-delay:.24s}.motion-off *,.motion-off *:before,.motion-off *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-off .reveal{opacity:1!important;transform:none!important}.motion-off .hero-art>img{transform:none}.offscreen *{animation-play-state:paused!important}@keyframes hero-in{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:none}}@keyframes phones-arrive{from{opacity:0;translate:80px 70px;rotate:8deg}to{opacity:1;translate:0 0;rotate:0deg}}@keyframes ring-expand{0%{transform:scale(.65);opacity:0}30%{opacity:.7}100%{transform:scale(1.15);opacity:0}}@keyframes circuit-run{to{stroke-dashoffset:-925}}@keyframes token-float{50%{transform:translateY(-15px) rotate(1deg)}}@keyframes tiny-bars{50%{transform:scaleY(.55)}}@keyframes app-float{50%{transform:translateY(-10px)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes scan{0%,100%{top:10%;opacity:0}20%,80%{opacity:1}90%{top:90%;opacity:0}}@keyframes core-float{50%{transform:translateY(-12px)}}@keyframes flow-packet{to{stroke-dashoffset:-686}}@keyframes report-reveal{0%,8%{opacity:.3;translate:0 5px}20%,80%{opacity:1;translate:0 0}100%{opacity:.3;translate:0 5px}}@keyframes chart-grow{0%,100%{transform:scaleY(.6)}40%,70%{transform:scaleY(1)}}@keyframes core-glow{50%{opacity:.3}}@keyframes shield-float{50%{transform:translateY(-6px)}}@keyframes check-draw{0%,10%{stroke-dashoffset:100}35%,85%{stroke-dashoffset:0}100%{stroke-dashoffset:100}}@keyframes orbit{50%{transform:scale(1.08)}}
@media(min-width:1600px){.hero{min-height:850px}.hero-art{height:620px}.hero-art>img{width:100%;top:-75px;right:-4%}.product-flow{min-height:1080px}.flow-scene{margin-top:65px}}@media(max-width:1100px){header{padding-inline:30px}.hero{padding-inline:40px;min-height:750px}h1{font-size:clamp(35px,4.4vw,48px)}.hero-art{height:500px}.hero-art>img{top:0;width:120%}.token-one{left:0;top:5px}.token-two{right:-10px;bottom:65px}.report-token{padding:12px;gap:9px}.report-token b{font-size:9px}.wrap{padding-inline:40px}.module-heading{gap:35px}.module-grid{gap:15px}.card-heading,.card-rows{padding-inline:18px}.card-heading{gap:10px}.card-link{margin-inline:18px}.module-graphic{height:195px}.card-heading h3{font-size:23px}.module-item h4{font-size:12px}.product-flow{min-height:850px}.flow-heading>p{max-width:290px}.hero-content>p{font-size:14px}}@media(max-width:800px){.module-grid{grid-template-columns:1fr}.module-card{display:grid;grid-template-columns:240px 1fr;align-items:start}.module-graphic{grid-column:1;grid-row:1/4;height:100%;min-height:300px}.card-heading{grid-column:2;padding-top:24px}.card-rows{grid-column:2}.card-link{grid-column:2}.module-item summary{padding-block:16px}.card-heading h3{font-size:29px}.module-item h4{font-size:13px}.module-heading{display:block}.module-heading>p{max-width:530px;margin-top:25px}.flow-heading{gap:30px}.flow-heading>p{max-width:245px;font-size:13px}.product-flow{min-height:730px}.hero-art{height:440px}.token-one{left:0;top:0}.token-two{right:-20px;bottom:50px}.report-token div>i{width:45px}.report-token div>i:last-child{width:30px}.hero-content>p{font-size:13px}.hero .button{font-size:11px;padding-inline:15px;gap:10px}.hero{min-height:700px;padding-inline:30px}header{padding-inline:25px}nav{gap:20px;font-size:12px}.brand{width:155px}}
@media(max-width:650px){html{scroll-padding-top:85px}header{height:72px;padding-inline:22px}.brand{width:145px}nav{display:none}.button.small{font-size:11px;padding:10px 13px;gap:10px}.hero{display:flex;flex-direction:column;align-items:stretch;padding:42px 25px 78px;gap:0;min-height:0}.hero .eyebrow{font-size:9px}h1{font-size:clamp(30px,7.25vw,46px);letter-spacing:-1.1px;margin:20px 0}.hero-content>p{font-size:14px;max-width:490px}.hero-actions{gap:23px;margin-top:25px}.hero .button{font-size:11px;padding:15px 17px;gap:9px}.hero-actions .text-link{font-size:12px}.hero-art{height:430px;min-height:0;margin-top:28px;overflow:visible}.hero-art>img{width:77%;right:3%;top:-30px;max-width:420px}.art-tag{font-size:9px;bottom:10px;right:10px;padding:11px 14px}.art-orbit{width:270px;height:270px;top:50px;right:0}.token-one{top:30px;left:0}.token-two{right:0;bottom:90px}.report-token{padding:12px 14px}.report-token b{font-size:10px}.hero-rings{inset:10% 0}.hero-bottom{left:25px;right:25px;bottom:20px;font-size:7px;gap:15px}.wrap{padding-inline:25px}.product-flow{padding-block:65px 45px;min-height:0}.flow-heading{display:block}.flow-heading h2{font-size:42px;letter-spacing:-1px}.flow-heading>p{max-width:440px;font-size:14px;margin-top:22px}.flow-scene{width:155%;margin:40px 0 20px -27.5%;overflow:visible}.flow-scene svg{width:100%}.flow-phone{transform:translate(70px,0)}.flow-desktop{transform:translate(-50px,0)}.flow-labels{display:none}.flow-caption{margin-top:0;gap:20px;align-items:flex-start}.flow-caption p{font-size:12px}.flow-caption>span{font-size:9px;white-space:nowrap}.modules{padding-block:65px}.module-heading{margin-bottom:30px}.module-heading h2{font-size:34px}.module-heading>p{font-size:13px}.module-grid{gap:25px}.module-card{display:block;border-radius:16px}.module-graphic{height:215px;min-height:0}.card-heading{padding:24px 25px 18px}.card-heading h3{font-size:30px}.card-rows{padding-inline:25px}.module-item h4{font-size:14px}.module-item summary{padding-block:19px}.card-link{margin:5px 25px 25px}.pricing{padding-block:70px}.pricing h2{font-size:clamp(27px,6.3vw,39px);letter-spacing:-1px;overflow-wrap:anywhere}.pricing-bottom{flex-direction:column;align-items:flex-start;gap:25px;margin-top:30px}.pricing-bottom p{font-size:14px}.button{font-size:13px;padding:16px 20px}.contact{padding-block:65px}.contact-logo{width:170px}.contact h2{font-size:64px;letter-spacing:-1.5px}.contact p{font-size:14px}.contact p br{display:none}.footer-top{align-items:flex-start;gap:25px}.footer-top img{width:145px}.footer-top>div{flex-direction:column;gap:15px;font-size:11px}.footer-bottom{flex-wrap:wrap;gap:20px;font-size:9px}.motion-control{font-size:9px}.reading-progress{height:2px}}@media(max-width:380px){header{padding-inline:18px}.brand{width:125px}.hero{padding-inline:20px}.hero-art{height:330px}.hero-art>img{width:85%;top:-12px}.art-tag{font-size:8px;right:0;bottom:-3px}.wrap{padding-inline:20px}.hero .button{font-size:10px;padding-inline:12px;gap:6px}.eyebrow{font-size:9px}.token-one{top:0;padding:10px}.token-two{bottom:45px;padding:10px}.tiny-check{width:24px;height:24px;font-size:16px}.report-token b{font-size:8px}.report-token div>i{width:35px}.flow-heading h2{font-size:36px}.contact h2{font-size:56px}.footer-top img{width:120px}.card-heading,.card-rows{padding-inline:20px}.module-item h4{font-size:13px}.module-graphic{height:195px}.module-heading h2{font-size:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}.hero-art>img{transform:none}.flow-phone,.flow-desktop{transition:none}}
@media(max-width:650px){.flow-scene{width:130%;margin-left:-15%}.flow-phone{transform:translate(50px,0)}.flow-desktop{transform:translate(-80px,0)}}
@media(min-width:801px){.module-grid{align-items:stretch}.module-card{display:flex;flex-direction:column}.module-graphic{flex-shrink:0}.card-link{margin-top:auto}.card-rows{padding-bottom:6px}}

/* v4: poistettu teematunniste ja koristeelliset nuolet. */
.art-tag{display:none}

/* Sovellus: yhtenäinen esittelypinta, ei sivuttaista kuvakolumnia. */
.application{padding:88px 0 0;background:#e3edf1;overflow:hidden}
.application>.wrap{max-width:1120px}
.application-copy{max-width:820px;margin:0 auto;text-align:center}
.application h2{font-size:clamp(32px,4.4vw,58px);line-height:1.14;letter-spacing:-1.5px;margin:22px auto 26px;max-width:820px;text-wrap:balance}
.application h2 span{display:block}
.application-copy>p{max-width:690px;margin:auto;font-size:16px;line-height:1.8;color:var(--gray)}
.application-copy>p a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.store-links{display:flex;justify-content:center;flex-wrap:wrap;gap:16px;margin-top:26px}
.store-links a{display:block;width:145px;transition:transform .2s}
.store-links a:hover{transform:translateY(-3px)}
.application-image{width:min(100%,600px);margin:38px auto 0}
.application-image img{width:100%;height:auto}
@media(max-width:650px){.application{padding-top:58px}.application h2{font-size:clamp(30px,7.5vw,43px);letter-spacing:-1px;margin:20px 0 24px}.application-copy>p{font-size:15px;line-height:1.75;text-align:left}.application-image{margin-top:28px;width:min(100%,440px)}.store-links{gap:12px}.store-links a{width:calc((100% - 12px)/2);max-width:145px}}

/* Hero: erilliset ruudukon rivit pitävät kortit irti puhelinkuvasta. */
.hero-art{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;gap:24px;height:auto;min-height:0;width:100%;max-width:580px;justify-self:center;perspective:none;transform-style:flat}
.hero-art>img{position:relative;grid-row:2;grid-column:1;width:min(100%,420px);max-width:100%;height:auto;inset:auto;justify-self:center;transform:none;translate:none;rotate:none;animation:hero-phones-fade 1.2s ease both;will-change:auto}
.hero-art .report-token{position:relative;inset:auto;grid-column:1;width:max-content;max-width:100%;padding:14px 18px;gap:12px;animation:hero-card-drift 7s ease-in-out infinite;transform:none}
.hero-art .token-one{grid-row:1;justify-self:start}
.hero-art .token-two{grid-row:3;justify-self:end;animation-delay:-3.5s}
.hero-art .report-token b{font-size:11px}
.hero-art .report-token div>i{width:75px}
.hero-art .report-token div>i:last-child{width:45px}
@keyframes hero-card-drift{50%{transform:translateY(-5px)}}
@keyframes hero-phones-fade{from{opacity:0}to{opacity:1}}
@media(max-width:950px) and (min-width:651px){.hero{grid-template-columns:1fr;gap:38px;padding-top:50px}.hero-content{max-width:650px}.hero-art{max-width:500px}.hero-art>img{width:min(100%,360px)}}
@media(max-width:650px){.hero-art{margin-top:38px;max-width:440px;gap:20px}.hero-art>img{width:min(100%,340px)}.hero-art .report-token{padding:12px 16px}.hero-art .report-token b{font-size:10px}}

/* Alkuperäisen Invertion-footerin rakenne ja animaatio. */
.original-footer{position:relative;isolation:isolate;background:var(--blue);color:white;padding:15px 0 24px;overflow:hidden}
.original-footer:after{content:'';position:absolute;top:0;left:0;right:0;height:15px;background:url('assets/footer-wave.svg') repeat-x top left/auto 15px;pointer-events:none}
.footer-pattern{position:absolute;inset:auto 0 0;height:350px;background:url('assets/footer-animation.gif') repeat-x bottom left/auto 350px;opacity:.5;z-index:-1;pointer-events:none}
.footer-inner{position:relative}
.footer-nav{display:flex;justify-content:center;flex-wrap:wrap;gap:24px 32px;padding:55px 25px;border-bottom:1px solid #ffcc0080;font-size:16px;font-weight:700}
.footer-nav a{color:var(--yellow)}.footer-nav a:hover{color:white}
.footer-brand{text-align:center;padding:64px 25px 54px}
.footer-brand>a{display:block;width:min(270px,100%);margin:auto}
.footer-brand img{width:100%;height:auto}
.footer-brand>p{font-size:14px;line-height:1.55;max-width:295px;margin:20px auto 0}
.footer-policies{display:flex;flex-direction:column;align-items:center;gap:16px;margin-top:56px;color:#cecef4;font-size:14px}
.cookie-settings{border:0;padding:0;background:none;color:inherit;font:inherit;text-decoration:underline;text-underline-offset:4px}
.footer-policies a:hover,.cookie-settings:hover{color:white}
.footer-credits{text-align:center;padding:30px 24px 0;font-size:12px;line-height:1.7;color:#c5c5f2}
.footer-credits p+p{font-size:10px;margin-top:5px}.footer-credits .motion-control{margin-top:16px}
.cookie-dialog{border:1px solid #c9d2db;border-radius:16px;padding:32px;width:min(480px,calc(100% - 32px));color:var(--ink);background:white}.cookie-dialog::backdrop{background:#0008}.cookie-dialog h2{font-size:28px;letter-spacing:-.5px}.cookie-dialog p{font-size:16px;line-height:1.7;margin:20px 0 25px}.motion-off .footer-pattern{display:none}
@media(max-width:650px){.footer-nav{display:flex;gap:22px 25px;padding:38px 25px;font-size:14px}.footer-brand{padding:42px 25px}.footer-brand>a{width:240px}.footer-policies{margin-top:38px}.footer-credits{padding-top:20px}.footer-pattern{height:280px;background-size:auto 280px}}
@media(prefers-reduced-motion:reduce){.footer-pattern{display:none}}

/* Tuotekuvitukset kokonaisina kaikilla leveyksillä. */
.hero-art>img{object-fit:contain;filter:none}
.flow-scene{width:100%;max-width:1400px;margin:40px auto 20px;padding-inline:20px}
.flow-phone,.flow-desktop{transform:none}
@media(max-width:650px){.flow-scene{width:100%;margin:28px auto 20px;padding-inline:8px}.flow-phone,.flow-desktop{transform:none}.flow-scene svg{width:100%;height:auto}}
