
body{margin:0;background:#FFFFFF}
a{color:#1A1A1A}a:hover{color:#3B2CE8}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.disp{font-family:'Space Grotesk','Helvetica Neue',Arial,sans-serif}
.hdr{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:24px;align-items:center}
.nav{display:flex;gap:clamp(20px,3vw,44px);flex-wrap:wrap;justify-content:center}
.nav a{text-decoration:none;font-size:15px;font-weight:500;padding:10px 0}
.nav a:hover{color:#3B2CE8}
.sq{width:56px;height:56px;border:0;border-radius:0;background:#3B2CE8;color:#FFFFFF;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0}
.sq:hover{background:#2A1DC4}
.sq-line{width:56px;height:56px;border:1.5px solid #1A1A1A;background:#FFFFFF;color:#1A1A1A;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box}
.overlay{position:fixed;inset:0;z-index:50;background:#FFFFFF;opacity:0;visibility:hidden;transition:opacity .5s ease,visibility 0s linear .5s}
.overlay.open{opacity:1;visibility:visible;transition:opacity .5s ease,visibility 0s}
.ov-in{max-width:1440px;height:100%;margin:0 auto;display:flex;flex-direction:column;box-sizing:border-box;padding:24px clamp(20px,4vw,56px)}
.ov-foot{display:flex;justify-content:center;gap:24px;flex-wrap:wrap;font-size:14px;opacity:0;transition:opacity .5s ease .45s}
.overlay.open .ov-foot{opacity:1}
.overlay .olink{opacity:0;transform:translateY(18px);transition:opacity .5s ease,transform .6s cubic-bezier(.2,.7,.2,1),color .3s ease}
.overlay.open .olink{opacity:1;transform:none}
.overlay.open .olink:nth-child(1){transition-delay:.08s}.overlay.open .olink:nth-child(2){transition-delay:.13s}.overlay.open .olink:nth-child(3){transition-delay:.18s}.overlay.open .olink:nth-child(4){transition-delay:.23s}.overlay.open .olink:nth-child(5){transition-delay:.28s}
.burger{position:relative}
.burger .bl{position:absolute;left:18px;width:20px;height:1.6px;background:currentColor;border-radius:2px;transition:transform .5s cubic-bezier(.65,0,.25,1),opacity .3s ease}
.burger .bl:nth-child(1){top:21px}.burger .bl:nth-child(2){top:27.2px}.burger .bl:nth-child(3){top:33.4px}
.burger:hover .bl:nth-child(1){transform:translateY(-1.5px)}.burger:hover .bl:nth-child(3){transform:translateY(1.5px)}
.burger.x .bl:nth-child(1){transform:translateY(6.2px) rotate(45deg)}
.burger.x .bl:nth-child(2){opacity:0;transform:scaleX(.2)}
.burger.x .bl:nth-child(3){transform:translateY(-6.2px) rotate(-45deg)}
.olink{font-family:'Space Grotesk','Helvetica Neue',Arial,sans-serif;font-size:clamp(40px,6vw,80px);font-weight:500;letter-spacing:-0.04em;line-height:1.08;text-decoration:none;color:#1A1A1A}
.olink:hover{color:#3B2CE8}
.line{display:flex;align-items:baseline;justify-content:center;gap:0.24em;white-space:nowrap}
.stack{display:inline-grid;grid-template-columns:100%;justify-items:start;overflow:hidden;padding:0.06em 0 0.28em;margin:-0.06em 0 -0.28em;color:#3B2CE8;transition:width .75s cubic-bezier(.65,0,.25,1)}
.w{grid-area:1/1;white-space:nowrap;transition:transform .75s cubic-bezier(.65,0,.25,1),opacity .45s ease}
.w.now{transform:none;opacity:1}
.w.next{transform:translateY(110%);opacity:0}
.w.past{transform:translateY(-110%);opacity:0}
.stack.verb{color:inherit}
.logo-word{height:1.08em;width:3.13em;vertical-align:-0.24em;display:inline-block}
.measure{position:absolute;left:0;top:0;visibility:hidden;pointer-events:none;white-space:nowrap;display:flex}
.vp{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;cursor:grab;user-select:none;-webkit-user-select:none}
.vp::-webkit-scrollbar{display:none}
.vp:active{cursor:grabbing}
.strack{display:flex;align-items:center;gap:16px;width:max-content;padding-bottom:44px;transition:min-height 1.1s cubic-bezier(.45,0,.2,1)}
.pf{position:relative;margin:0;flex:none;transition:opacity .5s ease}
.pf-a{display:block;color:inherit;text-decoration:none;cursor:pointer}
.pf-a:hover{color:inherit}
.pf img{display:block;width:auto;-webkit-user-drag:none;transition:height 1.1s cubic-bezier(.45,0,.2,1)}
.pf figcaption{position:absolute;left:0;top:100%;padding-top:10px;white-space:nowrap;font-size:12px;line-height:1.35;opacity:0;transform:translateY(-4px);transition:opacity .4s ease,transform .4s ease;pointer-events:none}
.pf figcaption span{display:block}
.pf figcaption .loc{color:#6B6B6B}
.vp:hover .pf{opacity:.35}
.vp:hover .pf:hover{opacity:1}
.pf:hover figcaption{opacity:1;transform:none}
.vp.dragging .pf{opacity:1}
.vp.dragging .pf figcaption{opacity:0}
.v-small{min-height:clamp(170px,17vw,250px)}
.v-small .h-s{height:clamp(70px,7vw,105px)}.v-small .h-m{height:clamp(100px,10vw,150px)}.v-small .h-l{height:clamp(140px,14vw,210px)}
.v-bottom{align-items:flex-end;min-height:clamp(240px,24vw,360px)}
.v-bottom .h-s{height:clamp(110px,11vw,165px)}.v-bottom .h-m{height:clamp(160px,16vw,240px)}.v-bottom .h-l{height:clamp(230px,23vw,350px)}
.v-large{min-height:clamp(300px,32vw,480px)}
.v-large .h-s{height:clamp(150px,15vw,230px)}.v-large .h-m{height:clamp(210px,22vw,330px)}.v-large .h-l{height:clamp(290px,31vw,470px)}
.v-even{min-height:clamp(220px,22vw,330px)}
.v-even .h-s,.v-even .h-m,.v-even .h-l{height:clamp(190px,19vw,290px)}
.viewlbl{display:inline-flex;align-items:center;gap:16px;background:none;border:0;padding:0;cursor:pointer;font:inherit;font-size:14px;font-weight:500;color:#1A1A1A;text-transform:lowercase}
.viewlbl .vtxt{opacity:0;transform:translateX(8px);transition:opacity .35s ease,transform .35s ease}
.viewlbl:hover .vtxt,.viewlbl:focus-visible .vtxt{opacity:1;transform:none;color:#3B2CE8}
.viewlbl:hover .sq-line{border-color:#3B2CE8;color:#3B2CE8}
.sq-line{transition:border-color .3s ease,color .3s ease}
.bar{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:16px}
.ttl{background:none;border:0;padding:0;cursor:pointer;color:#1A1A1A;display:inline-flex;align-items:flex-end;gap:14px;text-transform:lowercase}
.ttl:hover{color:#3B2CE8}
.dd{display:flex;flex-direction:column;align-items:center;gap:2px;margin-bottom:24px}
.ddi{background:none;border:0;cursor:pointer;font-family:'Space Grotesk','Helvetica Neue',Arial,sans-serif;font-size:clamp(24px,2.6vw,36px);font-weight:500;letter-spacing:-0.03em;padding:4px 8px;text-transform:lowercase}
.ddi:hover{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:2px}
.aud{display:grid}
.sec-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,80px);align-items:end}
.sec-title{margin:0;font-size:clamp(48px,6.4vw,96px);font-weight:500;letter-spacing:-0.05em;line-height:.95}
.sec-intro{justify-self:end;margin:0;font-size:clamp(15px,1.2vw,17px);line-height:1.55;color:#5C5C5C;max-width:40ch;padding-bottom:.5em}
.sec-rule{height:1px;background:#E2E2DF;margin:clamp(28px,3.4vw,48px) 0 clamp(40px,5vw,72px)}
.hw{max-width:1440px;margin:0 auto;padding:clamp(96px,11vw,160px) clamp(20px,4vw,56px);box-sizing:border-box}
.tl-meta{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:13px;color:#6B6B6B;margin-bottom:28px}
.tl-scroll{overflow-x:auto;scrollbar-width:none;margin:0 calc(-1 * clamp(20px,4vw,56px));padding:0 clamp(20px,4vw,56px)}
.tl-scroll::-webkit-scrollbar{display:none}
.tlw{position:relative;min-width:1080px}
.tl{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(9,minmax(0,1fr))}
.tl-line{position:absolute;left:7px;width:calc(800% / 9);top:36px;height:2px;background:#E2E2DF}
.tl-fill{position:absolute;left:0;top:0;bottom:0;background:#3B2CE8;transition:width .7s cubic-bezier(.45,0,.2,1)}
.tl li{position:relative}
.tlb{width:100%;background:none;border:0;padding:0 12px 0 0;margin:0;cursor:pointer;display:flex;flex-direction:column;align-items:flex-start;gap:10px;text-align:left;font:inherit;color:#A3A3A0;text-transform:lowercase;transition:color .35s ease}
.tl-n{font-family:'Space Grotesk','Helvetica Neue',Arial,sans-serif;font-size:14px;line-height:18px;font-weight:500;font-variant-numeric:tabular-nums}
.tl-dot{width:14px;height:14px;border-radius:999px;background:#FFFFFF;border:2px solid #CFCFCC;box-sizing:border-box;margin:2px 0 6px;transition:all .35s ease;position:relative;z-index:1}
.tl-t{font-family:'Space Grotesk','Helvetica Neue',Arial,sans-serif;font-size:clamp(16px,1.3vw,19px);font-weight:500;letter-spacing:-0.02em;line-height:1.2;min-height:2.4em}
.tl-d{font-size:12px;color:#A3A3A0}
.tlb:hover{color:#1A1A1A}
.tlb:hover .tl-dot{border-color:#1A1A1A}
.tlb.past .tl-dot{background:#3B2CE8;border-color:#3B2CE8}
.tlb.on{color:#1A1A1A}
.tlb.on .tl-dot{background:#3B2CE8;border-color:#3B2CE8;transform:scale(1.45);box-shadow:0 0 0 6px #E9E8FD}
.tlb.on .tl-d{color:#3B2CE8}
.tl-detail{position:relative;display:grid;margin-top:clamp(40px,5vw,72px);padding-top:clamp(32px,4vw,48px);border-top:1px solid #EFEFEC}
.tld{grid-area:1/1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,80px);opacity:0;transform:translateY(12px);transition:opacity .45s ease,transform .45s ease;pointer-events:none}
.tld.on{opacity:1;transform:none;transition-delay:.1s;pointer-events:auto}
.tl-dl{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.tl-big{margin:0;font-size:clamp(32px,4vw,60px);font-weight:500;letter-spacing:-0.045em;line-height:1.02}
.tl-chip{display:inline-flex;align-items:center;min-height:30px;padding:0 14px;border-radius:999px;background:#F2F2EF;font-size:13px;font-weight:500}
.tl-arrows{grid-area:2/1;display:flex;gap:10px;margin-top:32px}
.tl-arr{width:48px;height:48px;border-radius:999px;border:1.5px solid #E2E2DF;background:#FFFFFF;color:#1A1A1A;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .3s ease}
.tl-arr:hover{border-color:#1A1A1A}
.tl-arr[disabled]{opacity:.35;cursor:default}
.hw-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.hws{width:100%;background:none;border:0;padding:4px 0;margin:0;cursor:pointer;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.2fr);align-items:baseline;text-align:left;font-family:'Space Grotesk','Helvetica Neue',Arial,sans-serif;text-transform:lowercase;color:#CFCFCC;transition:color .4s ease}
.hws .hw-n,.hws .hw-t{font-size:clamp(28px,3.4vw,50px);font-weight:500;letter-spacing:-0.04em;line-height:1.12}
.hws .hw-n{font-variant-numeric:tabular-nums}
.hws .hw-t{transition:transform .5s cubic-bezier(.45,0,.2,1)}
.hws:hover{color:#9A9A96}
.hws.on{color:#1A1A1A}
.hws.on .hw-t{transform:translateX(8px)}
.plan-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,5vw,80px);align-items:center}
.plan-lead{margin:0;font-size:clamp(15px,1.2vw,17px);line-height:1.55;color:#5C5C5C;max-width:40ch}
.plan-go{justify-self:end;display:inline-flex;align-items:center;gap:14px;min-height:64px;padding:0 34px;border-radius:999px;background:#3B2CE8;color:#FFFFFF;text-decoration:none;font-size:17px;font-weight:500;transition:background .3s ease,gap .3s ease}
.plan-go:hover{background:#2A1DC4;color:#FFFFFF;gap:20px}
@media (max-width:900px){.plan-body{grid-template-columns:minmax(0,1fr)}.plan-go{justify-self:start}}
.pl{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.2fr);align-items:baseline;padding:4px 0;text-decoration:none;font-family:'Space Grotesk','Helvetica Neue',Arial,sans-serif;color:#CFCFCC;transition:color .4s ease}
.pl .hw-n,.pl .hw-t{font-size:clamp(28px,3.4vw,50px);font-weight:500;letter-spacing:-0.04em;line-height:1.12}
.pl .hw-t{transition:transform .5s cubic-bezier(.45,0,.2,1)}
.pl:hover,.pl:focus-visible{color:#1A1A1A}
.pl:hover .hw-t,.pl:focus-visible .hw-t{transform:translateX(8px)}
@media (max-width:900px){.tld{grid-template-columns:minmax(0,1fr)}.sec-head,.hw-body{grid-template-columns:minmax(0,1fr)}.sec-intro{justify-self:start}.hws{grid-template-columns:3ch minmax(0,1fr);gap:12px}}
.zoomwrap{position:relative;height:270vh;background:#FFFFFF}
.zsticky{position:sticky;top:0;height:100vh;min-height:620px;overflow:hidden;color:#FFFFFF;touch-action:pan-y;user-select:none;-webkit-user-select:none}
.zpan{position:absolute;top:0;left:0;width:130%;height:100%;transition:transform 1.4s cubic-bezier(.45,0,.2,1)}
.zimg{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.85);transform:scale(1.15);will-change:transform;-webkit-user-drag:none}
.zdark{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,10,14,.72) 0%,rgba(10,10,14,.58) 45%,rgba(10,10,14,.74) 100%);opacity:0}
.zmask{position:absolute;inset:0;background:#FFFFFF;mix-blend-mode:screen;display:flex;align-items:center;justify-content:center;will-change:transform,opacity;pointer-events:none}
.ztext{color:#000000;font-family:'Space Grotesk','Helvetica Neue',Arial,sans-serif;font-weight:700;font-size:clamp(52px,10.5vw,180px);line-height:.92;letter-spacing:-0.055em;text-align:center;padding:0 16px}
.hcontent{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;padding:clamp(40px,6vh,80px) 0;box-sizing:border-box;opacity:0;pointer-events:none;will-change:opacity,transform}
.hrow-vp{overflow:visible;padding-left:clamp(20px,16vw,240px)}
.hrow{display:flex;gap:clamp(48px,7vw,120px);width:max-content;transition:transform 1s cubic-bezier(.45,0,.2,1)}
.hh{background:none;border:0;padding:0;margin:0;cursor:pointer;font-family:'Space Grotesk','Helvetica Neue',Arial,sans-serif;font-size:clamp(44px,6.4vw,104px);font-weight:500;letter-spacing:-0.045em;line-height:1.05;color:#FFFFFF;white-space:nowrap;text-transform:lowercase;opacity:.28;transition:opacity 1s ease}
.hh:hover{opacity:.55}
.hh.on{opacity:1;cursor:default}
.hline{display:flex;align-items:center;gap:20px;margin:clamp(40px,6vw,88px) 0 clamp(40px,5vw,72px);padding:0 clamp(20px,2vw,32px);font-size:14px}
.hrule{flex:1;height:1px;background:rgba(255,255,255,.35)}
.hnum{font-variant-numeric:tabular-nums;min-width:2ch}
.hlabel{font-weight:500}
.hbody{margin-left:50%;padding-right:clamp(20px,6vw,120px);display:flex;flex-direction:column;gap:32px}
.hdesc{display:grid}
.hd{grid-area:1/1;margin:0;font-size:clamp(17px,1.35vw,20px);line-height:1.5;max-width:38ch;opacity:0;transform:translateY(12px);transition:opacity .7s ease,transform .7s ease;pointer-events:none}
.hd.on{opacity:1;transform:none;transition-delay:.25s;pointer-events:auto}
.harrows{display:flex;align-items:center;gap:10px}
.harr{width:48px;height:48px;border-radius:999px;border:1px solid rgba(255,255,255,.5);background:transparent;color:#FFFFFF;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .3s ease,color .3s ease}
.harr:hover{background:#FFFFFF;color:#1A1A1A}
@media (max-width:900px){.hbody{margin-left:0;padding-left:clamp(20px,4vw,56px)}.hrow-vp{padding-left:clamp(20px,4vw,56px)}}
.steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:40px}
.calc{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:72px;align-items:center}
.ftr{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 26px;border-radius:999px;text-decoration:none;font-size:15px;font-weight:500}
.btn-blue{background:#3B2CE8;color:#FFFFFF}.btn-blue:hover{background:#2A1DC4;color:#FFFFFF}
.btn-white{background:#FFFFFF;color:#3B2CE8}.btn-white:hover{background:#E9E8FD;color:#3B2CE8}
.btn-ghost{background:rgba(255,255,255,0.16);color:#FFFFFF}.btn-ghost:hover{background:rgba(255,255,255,0.26);color:#FFFFFF}
.replay{background:#F2F2EF;border:0;border-radius:999px;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:#1A1A1A}
.replay:hover{color:#3B2CE8}
.flink{color:inherit;text-decoration:none}.flink:hover{color:inherit;text-decoration:underline}
.ft{background:#FFFFFF;color:#1A1A1A;transition:background-color 1.1s cubic-bezier(.45,0,.2,1),color 1.1s cubic-bezier(.45,0,.2,1)}
.ft.blue{background:#1800AD;color:#FFFFFF}
.pg{transition:background-color 1.1s cubic-bezier(.45,0,.2,1)}
.pg.blue{background:#1800AD !important}
#process,#plan{transition:background-color 1.1s cubic-bezier(.45,0,.2,1),color 1.1s cubic-bezier(.45,0,.2,1)}
.pg.blue #process,.pg.blue #plan{background:#1800AD !important;color:#FFFFFF}
#process .sec-intro,#plan .plan-lead,.hw-lead,.hw-points li,.tlb,.tl-d,.hw-count,.tl-meta,.tl-chip,.sec-rule,.tl-line,.tl-detail,.plan-go{transition:color 1.1s ease,background-color 1.1s ease,border-color 1.1s ease}
.pg.blue #process .sec-intro,.pg.blue #plan .plan-lead,.pg.blue .hw-points li,.pg.blue .hw-count,.pg.blue .tl-meta{color:rgba(255,255,255,.72)}
.pg.blue .tlb,.pg.blue .tl-d{color:rgba(255,255,255,.55)}
.pg.blue .tlb.on,.pg.blue .hw-lead{color:#FFFFFF}
.pg.blue .sec-rule,.pg.blue .tl-line{background:rgba(255,255,255,.22)}
.pg.blue .tl-detail{border-top-color:rgba(255,255,255,.18)}
.pg.blue .tl-chip{background:rgba(255,255,255,.14);color:#FFFFFF}
.pg.blue .plan-go{background:#FFFFFF;color:#1800AD}
.pg.blue .plan-go:hover{background:#E8E5FB;color:#1800AD}
.ftbtn{background:#1800AD;color:#FFFFFF;transition:background-color 1.1s ease,color 1.1s ease}
.ftbtn:hover{color:#FFFFFF;background:#12008A}
.ft.blue .ftbtn{background:#FFFFFF;color:#1800AD}
.ft.blue .ftbtn:hover{background:#E8E5FB;color:#1800AD}
.ftghost{background:rgba(24,0,173,.08);color:#1800AD;transition:background-color 1.1s ease,color 1.1s ease}
.ftghost:hover{color:#1800AD;background:rgba(24,0,173,.14)}
.ft.blue .ftghost{background:rgba(255,255,255,.16);color:#FFFFFF}
.ft.blue .ftghost:hover{background:rgba(255,255,255,.26);color:#FFFFFF}
.ftlogo{position:relative;display:block;height:48px}
.ftlogo img{position:absolute;left:0;top:0;height:48px;width:auto;transition:opacity 1.1s ease}
.ftlogo .lg-w{opacity:0}
.ft.blue .lg-w{opacity:1}.ft.blue .lg-b{opacity:0}
:focus-visible{outline:2px solid #3B2CE8;outline-offset:3px}
@media (prefers-reduced-motion: reduce){.ft,.ftbtn,.ftghost,.ftlogo img,.overlay,.overlay .olink,.burger .bl{transition:none}.tl-fill,.tld,.tlb,.tl-dot{transition:none}.hwd,.hws,.hws .hw-t{transition:none}.w,.stack,.pf img,.strack,.hrow,.zpan,.hd{transition:none}.zoomwrap{height:auto}.zsticky{position:relative}.zmask{display:none}.zimg{transform:none}.zdark{opacity:1}.hcontent{opacity:1;pointer-events:auto}}
@media (max-width:1000px){.aud{grid-template-columns:minmax(0,1fr);gap:40px}.steps{grid-template-columns:repeat(2,minmax(0,1fr))}.calc{grid-template-columns:minmax(0,1fr)}.ftr{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:720px){.hdr{grid-template-columns:minmax(0,1fr) auto}.nav{grid-column:1 / -1;grid-row:2;justify-content:flex-start;gap:4px 20px}.steps,.ftr{grid-template-columns:minmax(0,1fr)}.bar{grid-template-columns:minmax(0,1fr) auto}.bar .count{display:none}}

.dd[hidden]{display:none}
