:root{--navy:#123452;--blue:#176bb0;--ink:#23394b;--pale:#eaf3f9;--line:#c4d9e7;--page:760px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:#edf3f7;color:var(--ink);font-family:"Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;font-size:16px;line-height:1.8}a{color:var(--blue);text-underline-offset:5px}button,a,summary{-webkit-tap-highlight-color:transparent}button,a:focus-visible,summary:focus-visible{outline-offset:5px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #2187c8}button,summary{font:inherit}button{cursor:pointer}h1,h2,h3{word-break:auto-phrase;text-wrap:balance;line-break:strict}img{display:block;max-width:100%;height:auto;width:100%}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:8px;left:8px;transform:translateY(-160%);z-index:100;background:white;padding:10px 18px}.skip-link:focus{transform:translateY(0)}
.topbar{max-width:var(--page);margin:auto;min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 24px;background:#fff;border-bottom:1px solid var(--line)}.brand{text-decoration:none;color:var(--navy);font-size:17px;font-weight:600;letter-spacing:.03em}.availability{font-size:12px;color:#526b80;background:#edf3f7;padding:4px 10px;white-space:nowrap;border-radius:20px}
main{max-width:var(--page);margin:auto;background:#fff;box-shadow:0 12px 50px #1234520b}.lp-section{position:relative;scroll-margin-top:20px}.artwork{position:relative}.image-cta{position:absolute;z-index:2;display:block;border-radius:100px;text-decoration:none;background:transparent}.image-cta:hover{background:#ffffff12;box-shadow:none}.image-cta:focus-visible{outline:4px solid #ffb947;outline-offset:4px}.hero-hit{left:9.2%;top:85%;width:81.6%;height:6.8%}.final-hit{left:6.5%;top:81%;width:87%;height:9%}
.transcript{border-bottom:1px solid var(--line);background:#f6fafc}.transcript summary{min-height:52px;cursor:pointer;list-style-position:inside;padding:12px 24px;font-size:14px;color:#45647b}.transcript summary:hover{background:#eaf3f9}.transcript-body{padding:0 28px 20px;font-size:16px;line-height:1.9}.transcript-body p{margin:0 0 14px}.transcript[open] summary{border-bottom:1px solid var(--line);margin-bottom:20px}
.brand-rail,.section-nav{display:none}.consultation{padding:64px 42px 48px;text-align:center;background:linear-gradient(#f0f7fb,#fff);border-top:1px solid var(--line)}.eyebrow{letter-spacing:.08em;font-size:14px;color:var(--blue)}.consultation h2{font-size:32px;line-height:1.5;font-weight:400;margin:18px 0 24px}.consultation>p{margin:16px auto;max-width:560px}.solid-button{display:flex;min-height:58px;align-items:center;justify-content:center;gap:18px;padding:16px 24px;border:0;border-radius:32px;background:linear-gradient(110deg,#0b79bd,#115b98);color:#fff;text-decoration:none;font-size:18px;line-height:1.5;transition:filter .2s}.solid-button:hover{filter:brightness(1.1)}.consultation .solid-button{max-width:460px;margin:28px auto 18px}.availability-note{font-size:14px;color:#60758a}.sp{display:none}footer{text-align:center;background:#123452;color:#eaf3f9;padding:32px 24px 36px;font-size:13px}footer p{margin:4px 0}footer a{color:#fff;display:inline-flex;align-items:center;min-height:44px;margin:10px 0}footer small{display:block;font-size:12px;opacity:.75}
.sticky-bar{display:none}dialog{max-width:480px;width:calc(100% - 40px);border:1px solid #c4d9e7;border-radius:14px;padding:40px 32px;color:var(--ink);box-shadow:0 24px 90px #001a3a45}dialog::backdrop{background:#051c34a8;backdrop-filter:blur(3px)}dialog form{margin:0}dialog h2{font-size:23px;line-height:1.6;font-weight:400}dialog p{font-size:16px}dialog .solid-button{width:100%;margin-top:24px}.dialog-x{position:absolute;right:8px;top:8px;border:0;background:none;width:44px;height:44px;line-height:1;font-size:28px;color:var(--navy)}
@media(min-width:1260px){.brand-rail{display:block;position:fixed;left:calc((100vw - 760px)/4 - 112px);top:24%;width:224px;padding:12px;color:var(--navy)}.rail-line{display:block;width:44px;height:3px;background:var(--blue);margin-bottom:24px}.rail-kicker{font-size:12px;letter-spacing:.04em}.rail-message{font-family:"Yu Mincho",serif;font-size:27px;line-height:1.65;margin:20px 0}.rail-description{font-size:14px;line-height:2}.rail-cta{display:flex;align-items:center;justify-content:space-between;min-height:48px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:14px;text-decoration:none;margin-top:30px}.section-nav{display:flex;position:fixed;right:calc((100vw - 760px)/4 - 94px);top:27%;width:188px;flex-direction:column;gap:9px;padding:12px}.section-nav a{display:flex;align-items:center;gap:13px;min-height:38px;text-decoration:none;color:#637a8e;font-size:13px}.section-nav a span{font-family:Georgia,serif;font-size:14px;color:#8aa6ba}.section-nav a:hover,.section-nav a.active{color:var(--blue)}.section-nav a.active span{color:var(--blue)}}
@media(max-width:760px){body{padding-bottom:80px}.topbar{padding:12px 16px;min-height:59px}.brand{font-size:14px;letter-spacing:0}.availability{font-size:11px;padding:3px 7px}.transcript summary{padding:12px 20px}.transcript-body{padding:0 22px 20px}.consultation{padding:44px 24px 34px}.consultation h2{font-size:29px}.sp{display:initial}.consultation .solid-button{font-size:17px}.sticky-bar{display:flex;align-items:center;justify-content:center;gap:12px;position:fixed;bottom:0;left:0;right:0;z-index:20;min-height:76px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#ffffffed;border-top:1px solid #c4d9e7;backdrop-filter:blur(8px);box-shadow:0 -5px 20px #1234520a}.sticky-bar>span{font-size:12px;color:var(--navy);white-space:nowrap}.sticky-bar>a{flex:1;max-width:400px;display:flex;justify-content:center;align-items:center;gap:12px;min-height:50px;border-radius:28px;background:var(--blue);color:white;text-decoration:none;font-size:15px}.sticky-bar.is-at-cta{visibility:hidden}dialog{padding:34px 24px}dialog h2{font-size:21px}.hero-hit{min-height:44px}.final-hit{min-height:44px}}
@media(max-width:370px){.brand{font-size:13px}.availability{font-size:10px}.sticky-bar>span{display:none}.sticky-bar>a{font-size:16px}}
.transcript:not([open]) .transcript-body{display:none}
/* mato-button-depth: one opaque blue material; top light, colored soft shadow and a thin bottom edge. */
.solid-button,.sticky-bar>a{
  border:1px solid #12669f;
  background:linear-gradient(to bottom,#ffffff26 0%,#ffffff00 34%),linear-gradient(to bottom,#2086c4 0%,#136bab 55%,#10578f 100%);
  box-shadow:inset 0 1.5px 0 #d9f0ffcc,inset -1px -2px 3px #c1e7ff52,0 3px 0 #104e7d,0 7px 14px #104e7d29;
  text-shadow:0 1px 1px #104e7d80;
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;
}
@media(hover:hover){.solid-button:hover,.sticky-bar>a:hover{transform:translateY(-1px);filter:brightness(1.04);box-shadow:inset 0 1.5px 0 #d9f0ffcc,inset -1px -2px 3px #c1e7ff52,0 4px 0 #104e7d,0 9px 18px #104e7d33}}
.solid-button:active,.sticky-bar>a:active{transform:translateY(2px);box-shadow:inset 0 1px 0 #d9f0ff99,inset -1px -2px 3px #c1e7ff3d,0 1px 0 #104e7d,0 3px 7px #104e7d26}
.image-cta:active{background:#104e7d15;box-shadow:inset 0 2px 6px #104e7d40}
/* Match the full silhouettes of the regenerated image buttons. */
.hero-hit{left:7%;top:83.4%;width:86%;height:8.3%}
.final-hit{left:5.8%;top:80%;width:88.4%;height:10%}
@media(min-width:1260px){.rail-message{font-size:24px;word-break:keep-all}.rail-kicker{text-wrap:balance}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
