.top{overflow-wrap:anywhere;min-width:0}.top .hero{height:100svh;min-height:max(640px, calc(var(--h1top) + 2.3 * var(--h1) + 360px));--h1:clamp(40px, 4.7vw, 100px);--h1top:25vh;position:relative}.top .hero h1{z-index:1;left:var(--pad);top:var(--h1top);font-family:var(--min);font-weight:900;font-size:var(--h1);line-height:1.14;position:absolute}.top .hero h1 .row{display:block;overflow:hidden}.top .hero h1 .row>span{transition:transform 1.1s cubic-bezier(.2,.8,.1,1);display:block;transform:translateY(105%)}.top .hero.on h1 .row>span{transform:none}.top .hero h1 .row:nth-child(2)>span{transition-delay:.12s}.top .hero-copy{z-index:1;left:calc(var(--pad) + 2px);top:calc(var(--h1top) + 2.3 * var(--h1) + 36px);max-width:min(30em, calc(100% - 2 * var(--pad)));position:absolute}.top .hero .sub{font-size:var(--fs-lead);color:var(--muted);opacity:0;line-height:2.1;transition:opacity 1s .7s}.top .hero.on .sub{opacity:1}.top .hero .scene{left:max(43%, calc(var(--pad) + 7.6 * var(--h1) + 40px));right:var(--pad);top:calc(var(--hdr) + 10px);position:absolute;bottom:13%}.top .hero .scene svg{width:100%;height:100%;display:block;overflow:visible}.top .hero .bay{fill:#c9d3ee}.top .hero .ink{stroke:var(--sumi);stroke-width:2.5px;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke;fill:none}.top .hero .ink.thin{stroke-width:1.5px}.top .hero .ink.side{fill:#d9d4cc}.top .hero .ink.top{fill:#fff}.top .hero .road{fill:none;stroke:var(--beni);stroke-width:5px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1 2;stroke-dashoffset:1px}.top .hero.on .road{animation:2.2s cubic-bezier(.4,.1,.3,1) .45s forwards road}@keyframes road{to{stroke-dashoffset:0}}.top .stats{background:var(--tint);height:240svh;position:relative}.top .stats .in{height:100svh;position:sticky;top:0;overflow:hidden}.top .stats .n{font-family:var(--min);white-space:nowrap;opacity:0;font-weight:900;line-height:1;transition:opacity .6s,transform .8s;position:absolute;transform:translateY(24px)}.top .stats .n.on{opacity:1;transform:none}.top .stats .n b{font-variant-numeric:tabular-nums;font-weight:900}.top .stats .n small{color:var(--beni);margin-left:6px;font-size:.34em}.top .stats .n small.pre{color:var(--sumi);margin:0 8px 0 0}.top .stats .n i{font-style:normal;font-family:var(--sans);color:var(--muted);letter-spacing:.06em;margin-bottom:10px;font-size:clamp(14px,6px + .6vw,20px);font-weight:700;display:block}.top .stats .note{right:var(--pad);font-family:var(--min);color:var(--ai);font-size:clamp(18px,6px + .9vw,28px);font-weight:700;position:absolute;bottom:8vh}.top .who{padding:18vh 0 16vh;overflow:hidden}.top .who h2{font-family:var(--min);padding:0 var(--pad);margin-bottom:6vh;font-size:clamp(30px,3vw,44px);font-weight:900}.top .mq{overflow:hidden}.top .mq .mv{white-space:nowrap;width:max-content;font-family:var(--kaku);font-size:64px;font-weight:900;line-height:1.5;display:flex}.top .mq span{padding-right:80px}.top .mq .o{color:#0000;-webkit-text-stroke:1.5px var(--ai)}.top .mq.a .mv{animation:70s linear infinite mq}.top .mq.b .mv{animation:80s linear infinite mq2}@keyframes mq{to{transform:translate(-50%)}}@keyframes mq2{0%{transform:translate(-50%)}to{transform:none}}.top .wl{position:absolute;left:-9999px}.top .ind{padding:10vh var(--pad) 0;grid-template-columns:minmax(260px,30%) 1fr;gap:60px;display:grid}.top .ind p:first-child{grid-column:2;max-width:40em}.top .ind p:first-child b{font-family:var(--min);color:var(--ai);margin-bottom:8px;font-size:18px;display:block}.top .ind p:nth-child(2){color:var(--muted);grid-column:2;margin-top:12px}.top .ind p.fk{grid-column:2;margin-top:22px}.top .ledger{padding:18vh var(--pad) 0}.top .ledger .g{grid-template-columns:minmax(260px,30%) 1fr;gap:60px;margin-bottom:16vh;display:grid}.top .ledger .rows .v{display:block}.top .ledger .tag{font-size:var(--fs-small);letter-spacing:.08em;color:var(--ai);border:1px solid var(--ai);vertical-align:2px;margin-right:12px;padding:0 7px;font-weight:700;line-height:1.8;display:inline-block}.top .ledger a.v:hover{color:var(--ai)}.top .ledger .more{margin-top:30px;display:inline-block}.top .faq>li{padding:0;display:block}.top .faq details summary{cursor:pointer;font-family:var(--min);grid-template-columns:40px 1fr 24px;gap:10px;padding:22px 0;font-size:19px;font-weight:700;line-height:1.6;list-style:none;display:grid}.top .faq details summary::-webkit-details-marker{display:none}.top .faq details summary:after{content:"";border-right:2px solid var(--ai);border-bottom:2px solid var(--ai);width:14px;height:14px;margin-top:8px;transition:transform .3s;transform:rotate(45deg)}.top .faq details[open] summary:after{margin-top:14px;transform:rotate(225deg)}.top .faq .q{color:var(--beni)}.top .faq details p{color:var(--muted);max-width:44em;padding:0 34px 26px 50px}@media (max-width:760px){.top .hero{height:auto;min-height:0;padding:calc(var(--hdr) + 6px) 0 112px;flex-direction:column;display:flex}.top .hero .scene{width:100%;aspect-ratio:var(--ar);order:-1;position:static}.top .hero .road{stroke-width:8px}.top .hero .ink{stroke-width:2px}.top .hero .ink.thin{stroke-width:1px}.top .hero-copy{max-width:none;margin:18px var(--pad) 0;position:static}.top .hero .sub{font-size:14px}.top .hero h1{margin:4svh var(--pad) 0;font-size:11vw;position:static}.top .stats .n i{margin-bottom:6px;font-size:11px}.top .stats .note{left:var(--pad);right:auto;bottom:calc(5vh + 54px + env(safe-area-inset-bottom));font-size:15px}.top .who{padding:9vh 0 8vh}.top .who h2{margin-bottom:3vh;font-size:26px}.top .mq{display:none}.top .wl{padding:0 var(--pad);position:static}.top .wl li{font-family:var(--kaku);border-top:1px solid var(--rule);padding:16px 0;font-size:20px;font-weight:900;line-height:1.5}.top .wl li:nth-child(2n){color:var(--ai)}.top .wl li:last-child{border-bottom:1px solid var(--rule)}.top .ind{grid-template-columns:1fr;gap:0;padding-top:6vh}.top .ind p:first-child,.top .ind p:nth-child(2),.top .ind p.fk{grid-column:1}.top .ledger{padding:11vh var(--pad) 0}.top .ledger .g{grid-template-columns:1fr;gap:24px;margin-bottom:10vh}.top .faq details summary{grid-template-columns:28px 1fr 20px;padding:18px 0;font-size:16px}.top .faq details p{padding:0 0 20px 38px;font-size:14px}}@media (prefers-reduced-motion:reduce){.top .hero h1 .row>span{transition:none;transform:none!important}.top .hero .sub{opacity:1;transition:none}.top .hero .road,.top .hero.on .road{stroke-dashoffset:0;animation:none}.top .mq .mv{animation:none!important}.top .stats .n{transition:none}}.top .ledger .g.faq-g{display:block}@media (max-width:760px){.top .stats .n small{font-size:.28em}.top .ledger .tag{font-size:11px}}.top .top-hero-actions{flex-wrap:wrap;align-items:center;gap:18px 28px;margin-top:28px;display:flex}.top .top-hero-actions .btn,.top .top-contact .btn{min-height:56px;padding:14px 40px;font-size:22px}.top .top-price-link{color:var(--ai);text-underline-offset:5px;text-decoration:underline}.top .top-overview{padding:10vh var(--pad)}.top .top-overview>.h2,.top .svc>.h2,.top .why>.h2{margin-bottom:36px}.top .top-facts{table-layout:fixed}.top .top-facts th{width:26%}.top .top-facts td{white-space:pre-line}.top .top-facts li+li{margin-top:8px}.top .top-facts td>p{margin-top:12px}.top .top-contact{margin-top:28px}.top .svc,.top .why{padding:12vh var(--pad) 0}.top .top-service-grid,.top .top-why-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.top .top-service-grid>li,.top .top-why-grid>li{min-width:0}.top .top-service-card,.top .top-why-card{border:1px solid var(--rule);min-width:0;height:100%;box-shadow:none;border-radius:12px;flex-direction:column;align-items:flex-start;gap:18px;padding:24px;display:flex}.top .top-service-card .il,.top .top-why-card .il{object-fit:contain;width:100%;height:180px}.top .top-why-card .photo{object-fit:cover;border-radius:6px;width:100%;height:180px}.top .top-service-card .h3,.top .top-why-card .h3{font-size:clamp(22px,1.8vw,28px)}.top .top-service-card p,.top .top-why-card p{max-width:38em}.top .top-service-card .hook{font-weight:700}.top .top-card-open{border-top:1px solid var(--rule);color:var(--ai);justify-content:space-between;align-self:stretch;align-items:center;gap:12px;margin-top:auto;padding-top:14px;font-weight:700;display:flex}.top .top-card-plus{background:var(--ai);color:#fff;flex:none;place-items:center;width:32px;height:32px;font-size:20px;line-height:1;display:grid}.top .top-service-card{transition:border-color .15s}.top .top-service-card:hover,.top .top-service-card:focus-visible{border-color:var(--ai)}.top .top-service-card:focus-visible{outline:2px solid var(--ai);outline-offset:4px}.top .top-sheet{border:1px solid var(--rule);width:min(760px,100vw - 48px);max-width:none;height:85dvh;max-height:85dvh;box-shadow:none;background:var(--paper);color:var(--sumi);border-radius:12px;margin:auto;padding:0;position:fixed;inset:0;overflow:hidden}.top .top-sheet:not([open]){display:none}.top .top-sheet[open]{flex-direction:column;animation:.2s ease-out both top-sheet-in;display:flex}.top .top-sheet[open][data-closing]{animation:.12s ease-in both top-sheet-out}.top .top-sheet::backdrop{background:#0e1b3ead}.top .top-sheet-head{border-bottom:1px solid var(--rule);flex:none;justify-content:space-between;align-items:flex-start;gap:24px;padding:20px 28px;display:flex}.top .top-sheet-head h2{min-width:0;font-family:var(--min);font-size:clamp(22px,2.4vw,28px);font-weight:700}.top .top-sheet-head button{flex:none;width:44px;height:44px;font-size:28px;line-height:1}.top .top-sheet-scroll{overscroll-behavior:contain;flex:1;min-width:0;min-height:0;padding:28px;overflow:auto}.top .top-sheet-scroll>.h3{margin-bottom:24px}.top .top-sheet-offerings li{border-bottom:1px solid var(--rule);padding-block:12px}.top .top-sheet-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px 24px;margin-top:32px;display:flex}.top .top-page-link{border:1px solid var(--ai);color:var(--ai);padding:14px 20px;font-weight:700;display:inline-block}.top .top-sheet-actions .btn{min-height:56px;padding:14px 24px;font-size:20px}@keyframes top-sheet-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes top-sheet-out{0%{opacity:1}to{opacity:0}}@media (max-width:760px){.top .top-facts th{width:31%}.top .top-service-grid,.top .top-why-grid{grid-template-columns:minmax(0,1fr)}.top .top-overview{padding-block:8vh}.top .svc,.top .why{padding-top:9vh}.top .top-sheet{width:calc(100vw - 32px);height:calc(100vh - 128px);max-height:calc(100vh - 128px)}@supports (height:100dvh){.top .top-sheet{height:calc(100dvh - 128px);max-height:calc(100dvh - 128px)}}.top .top-sheet-head{gap:12px;padding:14px 18px}.top .top-sheet-scroll{padding:24px 18px}.top .top-sheet-actions{flex-direction:column;align-items:stretch}.top .top-sheet-actions>a{text-align:center;padding:14px 18px;font-size:16px}}@media (prefers-reduced-motion:reduce){.top .top-sheet[open],.top .top-sheet[open][data-closing]{animation:none}.top .top-service-card{transition:none}}
