*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f5f7fb;color:#10203d;font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue","Noto Sans JP",sans-serif;font-size:16px;line-height:1.8}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #ffb83d;outline-offset:5px}header{background:#fff;border-bottom:1px solid #e1e7f0}nav{max-width:1240px;margin:auto;padding:22px 32px;display:flex;justify-content:space-between;align-items:center;gap:20px}.brand{text-decoration:none;font-size:23px;font-weight:800;letter-spacing:-.7px}.brand span{color:#2854e8}.navlinks{display:flex;gap:28px;font-size:14px;font-weight:600}.navlinks a{text-decoration:none}.hero{background:#1535ad;color:white;overflow:hidden}.hero-inner{max-width:1240px;margin:auto;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;padding:75px 32px 60px;gap:45px}.eyebrow{font-size:14px;font-weight:700;letter-spacing:.16em}.hero h1{font-size:clamp(36px,4.3vw,62px);line-height:1.35;letter-spacing:-.04em;margin:20px 0 24px}.hero p{max-width:490px;color:#dce5ff}.cta{display:inline-flex;background:#fff;color:#1938b3;padding:12px 23px;border-radius:8px;text-decoration:none;font-weight:700;margin-top:18px}.hero-screens{display:flex;align-items:center;justify-content:center;gap:18px}.hero-screens img{width:30%;max-height:390px;object-fit:contain;filter:drop-shadow(0 16px 20px #07186266);border-radius:14px}.hero-screens img:nth-child(2){transform:translateY(-20px)}main{max-width:1240px;margin:auto;padding:70px 32px}h2{font-size:34px;line-height:1.4;margin:10px 0 14px;letter-spacing:-.04em}.section-top{display:flex;justify-content:space-between;align-items:end;margin-bottom:32px}.muted{color:#5a6983}.count{font-weight:700;color:#2854e8}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.app{background:#fff;border:1px solid #e1e7f0;border-radius:18px;overflow:hidden;scroll-margin-top:30px}.app-head{padding:28px 30px 22px}.title-row{display:flex;gap:15px;align-items:center}.icon{width:57px;height:57px;border-radius:13px}.category{font-size:14px;color:#596b86}h3{margin:0;font-size:23px;line-height:1.4}.tagline{font-size:23px;font-weight:700;margin:20px 0 10px;line-height:1.5;letter-spacing:-.03em}.desc{color:#52627c;margin:0;min-height:86px}.tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.tag{font-size:13px;background:#edf2ff;color:#234ab5;border-radius:5px;padding:4px 9px}.screens{background:#edf1f8;padding:26px 24px;display:flex;gap:16px;overflow:auto;align-items:center}.shot{border:0;background:none;padding:0;cursor:pointer;display:block;text-decoration:none;flex:0 0 calc((100% - 32px)/3)}.shot img{width:100%;height:300px;object-fit:contain;display:block;border-radius:7px}.links{display:flex;gap:12px;padding:22px 30px;flex-wrap:wrap}.store,.website{padding:10px 17px;text-decoration:none;font-size:14px;font-weight:700;border-radius:7px}.store{background:#10203d;color:white}.website{border:1px solid #ccd6e6;color:#2449bd}.note{font-size:14px;color:#5a6983;margin-top:24px}.contact{margin-top:72px;background:#10203d;color:white;border-radius:18px;padding:48px;display:grid;grid-template-columns:1.1fr 1fr;gap:45px}.contact h2{font-size:32px}.contact p{color:#c6d2e8}.contact-actions{display:flex;flex-direction:column;align-items:start;justify-content:center;gap:15px}.contact-actions a{margin:0}.contact-actions .secondary{color:white;background:transparent;border:1px solid #7d90b2}.email{font-size:16px;overflow-wrap:anywhere}footer{border-top:1px solid #dce3ee;padding:28px 32px;font-size:14px;color:#5a6983;display:flex;gap:20px;justify-content:space-between;max-width:1240px;margin:auto}dialog{border:0;border-radius:14px;background:#111827;padding:16px;max-width:94vw;max-height:94vh;color:#fff}dialog::backdrop{background:#071126d9}dialog img{max-width:85vw;max-height:78vh;object-fit:contain;display:block;margin:auto}dialog button{display:block;margin:0 0 12px auto;background:white;border:0;border-radius:5px;padding:8px 18px;font-size:14px;cursor:pointer}.detail{max-width:850px}.detail .screens .shot img{height:380px}.detail-copy{white-space:pre-line;background:white;border-radius:16px;padding:34px;margin-top:28px}.back{color:#2449bd}.detail-title{margin:32px 0}.detail .desc{min-height:0}@media(max-width:760px){nav{padding:18px 20px;align-items:start}.brand{font-size:20px}.navlinks{gap:14px;font-size:13px}.hero-inner{grid-template-columns:1fr;padding:45px 24px;gap:40px}.hero h1{font-size:38px}.hero-screens img{max-height:280px}.grid{grid-template-columns:1fr}main{padding:45px 20px}.section-top{align-items:start;gap:15px}h2{font-size:29px}.app-head{padding:24px}.shot img{height:260px}.screens{padding:22px 18px;gap:10px}.shot{flex-basis:calc((100% - 20px)/3)}.links{padding:20px 24px}.contact{grid-template-columns:1fr;padding:28px;gap:15px;margin-top:45px}.contact h2{font-size:28px}footer{flex-direction:column;padding:24px 20px;gap:6px}.detail .screens .shot img{height:260px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:#fff}nav{max-width:1440px}.navlinks{align-items:center}.hero{background:linear-gradient(115deg,#fff 2%,#edf8ff 44%,#bde5ff 100%);color:#10203d}.hero-inner{max-width:1440px;grid-template-columns:.85fr 1.25fr;padding:56px 32px 0;gap:25px;min-height:450px}.hero-copy{padding-bottom:52px;z-index:2}.hero h1{font-size:clamp(32px,3.25vw,48px);margin-top:16px}.hero p{color:#354563}.hero .eyebrow{color:#267aff;font-size:12px}.hero .cta{background:#267aff;color:white;border-radius:25px}.hero-screens{gap:0;align-self:end;padding-top:24px;padding-left:10px;transform:translateY(38px)}.hero-screens img{width:23%;max-height:400px;border:6px solid #111a25;border-radius:25px;background:#fff;filter:drop-shadow(0 12px 12px #49628744);margin-left:-12px;object-fit:contain}.hero-screens img:nth-child(1){transform:rotate(-13deg) translateY(62px)}.hero-screens img:nth-child(2){transform:rotate(-8deg) translateY(18px)}.hero-screens img:nth-child(3){transform:translateY(-15px);z-index:1}.hero-screens img:nth-child(4){transform:rotate(7deg) translateY(12px)}.hero-screens img:nth-child(5){transform:rotate(13deg) translateY(55px)}main{max-width:1440px;padding:35px 32px}.section-top{margin-bottom:18px}.section-top p{margin:5px 0;font-size:16px}h2{font-size:30px;margin:6px 0}.consumer{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.work{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.app{background:linear-gradient(150deg,#fff,#f5fbff);border-color:#e8f0f7;box-shadow:0 3px 15px #b4cde11c;border-radius:18px;display:flex;flex-direction:column}.app-head{padding:18px 14px 10px}.title-row{gap:10px;align-items:start}.icon{width:49px;height:49px;border-radius:12px}h3{font-size:17px}.short-title{font-size:13px;color:#425574;margin:5px 0 0;line-height:1.5}.consumer .screens{padding:8px 17px 0;background:transparent;overflow:hidden;justify-content:center}.consumer .shot{flex:1}.consumer .shot img{height:310px;border:4px solid #1e2530;border-radius:22px;object-fit:contain;background:white}.desc{font-size:14px;line-height:1.7;padding:12px 16px 0;min-height:0;flex:1}.links{padding:15px 14px 18px;gap:9px;justify-content:center;flex-direction:column;align-items:center}.store{padding:8px 14px;background:#080808;text-align:center;font-size:14px;border-radius:7px;width:max-content}.website{padding:2px 0;border:0;border-radius:0;font-size:14px;text-decoration:underline;text-underline-offset:4px}.work-section{margin-top:38px}.work .app-head{padding:20px}.work h3{font-size:21px}.work .icon{width:62px;height:62px}.work .screens{padding:5px 20px;background:transparent;gap:9px;overflow:hidden}.work .shot img{height:245px;border:4px solid #1e2530;border-radius:16px;background:#fff}.work .desc{padding:10px 20px}.work .links{padding-top:12px}.about{margin:40px -32px 0;padding:40px;background:linear-gradient(110deg,#edf4ff,#d5edff);border-top:1px solid #e1ecfa}.about p{margin-bottom:0;color:#465a77}.contact{margin-top:35px;padding:35px 40px}.contact .note{color:#c6d2e8}.detail .screens{background:#edf1f8}.detail .shot img{border:0}.detail .desc{padding:0}.detail .website{padding:10px}.detail .links{flex-direction:row}.detail .contact{grid-template-columns:1fr}.navlinks a{white-space:nowrap}@media(max-width:1100px){.consumer{grid-template-columns:repeat(3,minmax(0,1fr))}.consumer .shot img{height:330px}.work .shot img{height:205px}.hero h1{font-size:36px}.hero-inner{min-height:390px}.hero-screens img{border-width:4px;border-radius:18px}}@media(max-width:760px){.hero-inner{grid-template-columns:1fr;gap:0;padding:35px 22px 0}.hero-copy{padding-bottom:0}.hero h1{font-size:34px}.hero p{font-size:16px}.hero-screens{width:100%;max-width:550px;margin:auto;transform:translateY(38px);padding-top:35px}.hero-screens img{max-height:280px;border-radius:16px}.consumer{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.consumer .shot img{height:280px}.work{grid-template-columns:1fr}.work .shot img{height:290px}.app-head{padding:16px 12px 8px}.title-row{flex-direction:column}.work .title-row{flex-direction:row}.icon{width:48px;height:48px}.short-title{font-size:14px}.desc{padding:12px;font-size:14px}.links{padding:14px 8px}.store{font-size:13px;padding:8px 12px}.section-top p{font-size:15px}main{padding:30px 18px}h2{font-size:26px}.navlinks{gap:14px}.navlinks a:nth-child(2){display:none}.about{margin:30px -18px 0;padding:30px 22px}.contact{padding:28px;grid-template-columns:1fr}.contact h2{font-size:26px}}@media(max-width:380px){.consumer{grid-template-columns:1fr}.title-row{flex-direction:row}.consumer .shot img{height:350px}.navlinks{font-size:12px}.hero h1{font-size:30px}}@media(min-width:761px) and (max-width:1100px){.hero-inner{grid-template-columns:1fr 1fr;min-height:390px}.hero h1{font-size:30px}.hero p{font-size:15px}.hero-copy{padding-bottom:36px}.hero .eyebrow{font-size:11px;letter-spacing:.1em}.hero-screens img{width:25%;margin-left:-16px}.hero-screens{padding-top:0;transform:translateY(30px)}}@media(max-width:760px){nav{padding:18px;gap:12px}.navlinks{gap:12px;font-size:12px}.navlinks a:first-child,.navlinks a:nth-child(3){display:none}.navlinks a:nth-child(2){display:block}.brand{font-size:19px}.hero p br{display:none}.hero p{max-width:440px}}@media(min-width:1101px){.consumer .shot img{height:300px}}
@media(max-width:760px){.hero h1{font-size:clamp(25px,6.4vw,34px)}}

/* Keep every app screenshot in the proportions of an iPhone. */
.platforms{display:flex;flex-wrap:wrap;gap:6px 12px;margin-top:12px;min-height:22px}.platform{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:#486385;line-height:1.4;white-space:nowrap}.platform svg{width:17px;height:19px;flex:none}.hero-device{margin:16px 0 0}.hero-device .platform{display:inline-flex;padding:7px 10px;border:1px solid #d8e4f2;border-radius:999px;background:#fff;font-weight:700}.hero-device .platform svg{width:15px;height:18px}.consumer .screens{align-items:center;min-height:322px}.consumer .shot{flex:none;width:138px;max-width:100%}.consumer .shot img{display:block;width:100%;height:auto;aspect-ratio:9/19.5;object-fit:contain;border-radius:21px}.work .screens{justify-content:center;align-items:center;min-height:258px}.work .shot{flex:0 1 113px;max-width:calc((100% - 18px)/3)}.work .shot img{width:100%;height:auto;aspect-ratio:9/19.5;object-fit:contain;border-radius:16px}.hero-screens img{height:auto;aspect-ratio:9/19.5;object-fit:contain;max-width:175px;width:23%;max-height:none}.detail .screens{justify-content:center}.detail .shot{flex:0 1 175px}.detail .shot img{width:100%;height:auto;aspect-ratio:9/19.5;object-fit:contain}.consumer .app-head{min-height:117px}.work .app-head{min-height:127px}@media(max-width:1100px){.consumer .shot{width:148px}.consumer .screens{min-height:344px}.hero-screens img{width:25%}}@media(max-width:760px){.consumer .shot{width:128px}.consumer .screens{min-height:296px}.work .shot{flex-basis:128px}.work .screens{min-height:293px}.platforms{gap:5px 9px}.platform{font-size:12px}.consumer .app-head{min-height:156px}.hero-screens img{width:23%;max-width:110px}.detail .shot{flex-basis:115px}}
/* Let the source iPhone screenshot define the inside of its frame. */
.hero-screens img,.consumer .shot img,.work .shot img,.detail .shot img{height:auto;aspect-ratio:auto;object-fit:initial;max-height:none;vertical-align:top}

.step-spotlight{display:grid;grid-template-columns:.9fr 1.6fr;gap:28px;align-items:center;background:#edf6ff;border-radius:20px;padding:32px;margin-top:30px}.step-spotlight-copy h2{font-size:30px;margin:15px 0}.step-spotlight-copy p{color:#48617e;font-size:16px;line-height:1.85}.step-spotlight-copy .links{padding:18px 0 0;align-items:start}.step-feature-posters{display:flex;gap:14px}.step-feature-posters figure{margin:0;width:calc((100% - 28px)/3)}.step-feature-posters .shot{width:100%;display:block}.step-feature-posters img{height:auto;width:100%;border-radius:10px;box-shadow:0 10px 20px #183b601a}.step-feature-posters figcaption{text-align:center;font-size:14px;font-weight:600;margin-top:12px}.step-release-note{grid-column:1/-1;margin:0;color:#5a6983;font-size:14px}@media(max-width:760px){.step-spotlight{grid-template-columns:1fr;padding:24px 18px;gap:24px}.step-spotlight-copy h2{font-size:27px}.step-feature-posters{gap:8px}.step-feature-posters figure{width:calc((100% - 16px)/3)}.step-feature-posters figcaption{font-size:12px}.step-spotlight-copy p br{display:none}}

.step-feature-posters img{border:4px solid #172131;border-radius:20px;box-shadow:0 10px 20px #183b6015}.step-feature-posters figure{background:transparent}.step-spotlight{background:#edf4fb}.hero-screens img[src*="hero-stepshare"],.hero-screens img[src*="hero-easy-family-call"]{background:#f4f7fb}@media(max-width:760px){.step-feature-posters img{border-width:3px;border-radius:14px}}

.app#amaoto-led .screens{padding:0}.app#amaoto-led .shot{flex:1}.app#amaoto-led .shot img{height:245px;object-fit:cover}.app#amaoto-led .desc{min-height:86px}
@media(max-width:760px){.app#amaoto-led .shot img{height:230px}}

/* App images on the home page link to their introduction pages. */
.hero-screens>.app-image-link{display:block;flex:0 0 23%;max-width:175px;line-height:0;margin-left:-12px;text-decoration:none}
.hero-screens>.app-image-link img{display:block;width:100%;max-width:none;height:auto}
.hero-screens>.app-image-link:nth-child(1){transform:rotate(-13deg) translateY(62px)}
.hero-screens>.app-image-link:nth-child(2){transform:rotate(-8deg) translateY(18px)}
.hero-screens>.app-image-link:nth-child(3){transform:translateY(-15px);z-index:1}
.hero-screens>.app-image-link:nth-child(4){transform:rotate(7deg) translateY(12px)}
.hero-screens>.app-image-link:nth-child(5){transform:rotate(13deg) translateY(55px)}
.app-icon-link{display:block;flex:0 0 auto;line-height:0}
@media(min-width:761px) and (max-width:1100px){.hero-screens>.app-image-link{flex-basis:25%;margin-left:-16px}}
@media(max-width:760px){.hero-screens>.app-image-link{flex-basis:23%;max-width:110px;margin-left:-12px}}

/* Keep the hero phones fully visible on small screens and add restrained motion. */
.hero{position:relative;isolation:isolate}
.hero::before{content:"";position:absolute;z-index:0;pointer-events:none;width:min(44rem,70vw);aspect-ratio:1;right:2%;top:-44%;border-radius:50%;background:radial-gradient(circle,#78caff88 0%,#78caff24 48%,transparent 72%);animation:kst-hero-halo 9s ease-in-out infinite alternate}
.hero-inner{position:relative;z-index:1}
.hero-copy{animation:kst-hero-copy-in .75s cubic-bezier(.2,.75,.25,1) both}
@keyframes kst-hero-copy-in{from{opacity:0;translate:0 14px}to{opacity:1;translate:0 0}}
@keyframes kst-hero-halo{from{translate:0 0;scale:1;opacity:.65}to{translate:-5% 9%;scale:1.08;opacity:1}}
@media(min-width:761px){
  .hero-inner{padding-bottom:68px}
  .hero-screens{transform:translateY(-42px);padding-top:16px}
  .hero-screens>.app-image-link{flex-basis:20%;max-width:145px;margin-left:-8px}
  .hero-screens>.app-image-link:nth-child(1){transform:rotate(-10deg) translateY(24px)}
  .hero-screens>.app-image-link:nth-child(2){transform:rotate(-6deg) translateY(8px)}
  .hero-screens>.app-image-link:nth-child(3){transform:translateY(-14px);z-index:1}
  .hero-screens>.app-image-link:nth-child(4){transform:rotate(6deg) translateY(8px)}
  .hero-screens>.app-image-link:nth-child(5){transform:rotate(10deg) translateY(24px)}
}
@media(max-width:760px){
  .hero::before{width:26rem;right:-8rem;top:auto;bottom:-10rem}
  .hero-inner{padding:35px 20px 72px;gap:0}
  .hero-copy{padding-bottom:0}
  .hero-screens{width:100%;max-width:420px;min-height:0;margin:16px auto 0;padding:18px 0 28px;transform:none;align-self:center;overflow:visible}
  .hero-screens>.app-image-link{flex-basis:31%;max-width:126px;margin-left:0}
  .hero-screens>.app-image-link img{width:100%;max-width:none;border-width:4px;border-radius:18px}
  .hero-screens>.app-image-link:nth-child(1){transform:rotate(-9deg) translateY(12px)}
  .hero-screens>.app-image-link:nth-child(2){transform:rotate(-2deg) translateY(-5px) scale(1.04)}
  .hero-screens>.app-image-link:nth-child(3){transform:rotate(8deg) translateY(12px)}
  .hero-screens>.app-image-link:nth-child(4),.hero-screens>.app-image-link:nth-child(5){display:none}
}
@media(prefers-reduced-motion:reduce){
  .hero::before,.hero-copy,.hero-screens>.app-image-link{animation:none!important}
}
@media(max-width:380px){.navlinks a:nth-child(4){display:none}}

/* Language choice links on localized homepages. */
.hero-locale{display:inline-flex;align-items:center;margin:12px 0 0 12px;padding:7px 12px;border:1px solid #a9bce3;border-radius:999px;color:#2449bd;background:#ffffffd9;text-decoration:none;font-size:13px;font-weight:600;line-height:1.2;vertical-align:middle}.hero-locale:hover{background:#fff}.hero-locale:focus-visible{outline-color:#ffcc58}

/* Let the phone screens rise into the hero before their gentle float begins. */
.hero-screens>.app-image-link img{animation:kst-hero-phone-rise .65s cubic-bezier(.16,.72,.28,1) both}
.hero-screens>.app-image-link:nth-child(2) img{animation-delay:.58s}
.hero-screens>.app-image-link:nth-child(3) img{animation-delay:1.16s}
.hero-screens>.app-image-link:nth-child(4) img{animation-delay:1.74s}
.hero-screens>.app-image-link:nth-child(5) img{animation-delay:2.32s}
@keyframes kst-hero-phone-rise{0%{opacity:0;transform:translateY(64px) scale(.96)}72%{opacity:1;transform:translateY(-6px) scale(1)}100%{opacity:1;transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:reduce){.hero-screens>.app-image-link img{animation:none!important}}


/* FEATURED carousel: timed rotation with accessible manual controls. */
.step-spotlight[data-featured-carousel] .featured-viewport{grid-column:1/-1;min-width:0;overflow:hidden;touch-action:pan-y}
.featured-track{display:flex;align-items:stretch;transition:transform .45s cubic-bezier(.22,.75,.25,1);will-change:transform}
.featured-slide{display:grid;grid-template-columns:.9fr 1.6fr;align-items:center;gap:28px;flex:0 0 100%;min-width:100%;box-sizing:border-box}
.featured-slide .step-release-note{grid-column:1/-1}
.step-feature-posters[data-image-count="1"]{justify-content:center}
.step-feature-posters[data-image-count="1"] figure{width:min(44%,320px)}
.step-feature-posters[data-image-count="1"] figure[data-orientation="landscape"]{width:100%}
.step-feature-posters[data-image-count="2"] figure{width:calc((100% - 14px)/2)}
.featured-controls{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;padding-top:8px}
.featured-arrow{display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid #c6d5e4;border-radius:50%;background:#fff;color:#244968;font:32px/1 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;cursor:pointer}
.featured-indicators{display:flex;align-items:center;justify-content:center;gap:8px}
.featured-dot{width:9px;height:9px;padding:0;border:0;border-radius:99px;background:#a9bbcb;cursor:pointer;transition:width .2s,background-color .2s}
.featured-dot[aria-pressed="true"]{width:22px;background:#2875b9}
.featured-pause{min-height:38px;padding:7px 13px;border:1px solid #c6d5e4;border-radius:999px;background:#fff;color:#244968;font:inherit;font-size:13px;cursor:pointer}
.featured-arrow:focus-visible,.featured-dot:focus-visible,.featured-pause:focus-visible{outline:3px solid #2978c8;outline-offset:3px}
.featured-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:760px){.featured-slide{grid-template-columns:1fr;gap:22px}.step-feature-posters[data-image-count="1"] figure{width:min(52%,280px)}.step-feature-posters[data-image-count="1"] figure[data-orientation="landscape"]{width:100%}.featured-controls{gap:9px}.featured-indicators{gap:6px}.featured-pause{font-size:12px}}
@media(prefers-reduced-motion:reduce){.featured-track,.featured-dot{transition:none!important}}
