@font-face{font-family:P;src:url(/assets/r7/pre.woff2) format("woff2");font-weight:100 900}*{box-sizing:border-box;margin:0;padding:0}body{font-family:P,sans-serif;color:#141a26;background:#fff;word-break:keep-all;overflow-x:hidden;line-height:1.5}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}
:root{--b:#0a4c8a;--s:#4f5562;--ln:#e3e7ee}
.w{max-width:1280px;margin:0 auto;padding:0 58px}
.ic{fill:none;stroke:#1c2333;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex:none}
header{height:90px;border-bottom:1px solid var(--ln)}header .w{display:flex;align-items:center;height:100%}header .lo img{height:50px}
nav{display:flex;gap:40px;margin-left:auto;font-size:20px;font-weight:600}.sep{width:1px;height:30px;background:#d5d9e0;margin:0 32px}.tel{display:flex;gap:8px;align-items:center;font-weight:700;font-size:20px}.tel .ic{width:20px;stroke-width:2;fill:#1c2333}
.hb{margin-left:28px;background:var(--b);color:#fff;font-weight:700;font-size:19px;padding:12px 18px;border-radius:6px}
.btn{display:inline-flex;gap:14px;align-items:center;justify-content:center;font-weight:700;font-size:20px;height:64px;padding:0 30px;border-radius:7px;background:var(--b);color:#fff;border:2px solid var(--b)}.btn.o{background:#fff;color:#141a26;border:2px solid #a9b0bc}
.ey{display:flex;align-items:center;gap:18px;color:var(--b);font-weight:700;font-size:19px;letter-spacing:.06em}.ey:after{content:"";width:56px;height:2px;background:#b8c9de}
h1{font-size:63px;font-weight:800;line-height:1.36;letter-spacing:-.03em;margin-top:22px}h1 em,h2 em{font-style:normal;color:var(--b)}
h2{font-size:51px;font-weight:800;letter-spacing:-.03em;line-height:1.35}
.hero .w{display:grid;grid-template-columns:1fr 352px;gap:0;padding-top:58px;padding-bottom:42px;align-items:start}.hero .w{grid-template-columns:600px 1fr}.hero p.l{font-size:22px;color:var(--s);margin:10px 0 36px}.hero .bt{display:flex;gap:20px}
.lp{margin-top:6px;margin-left:50px;border-radius:12px;background:#fff;box-shadow:0 24px 50px rgba(20,30,60,.13),0 2px 6px rgba(0,0,0,.06);border:1px solid #edf0f4;height:316px;position:relative;padding:58px 36px 0;text-align:center}.lp:before{content:"";position:absolute;left:22px;top:12px;width:11px;height:11px;border-radius:50%;background:#111;box-shadow:16px 0 #ccc,32px 0 #ddd}.lp:after{content:"";position:absolute;left:0;right:0;top:36px;height:1px;background:#eceff3}.lp img{width:400px;margin:12px auto 0}.lp small{display:block;font-size:15px;letter-spacing:.3em;color:#3c4250;margin-top:28px;font-weight:600}
.vals{background:#f7f8fc;border-top:1px solid #eef0f5;border-bottom:1px solid #eef0f5}.vals .w{display:grid;grid-template-columns:repeat(3,1fr);padding-top:30px;padding-bottom:30px}.vals .w>div{display:flex;gap:22px;align-items:center;padding-left:28px;border-left:1px solid #dfe3ea}.vals .w>div:first-child{border:0}.vals h3{font-size:22px;font-weight:800}.vals p{font-size:16px;color:var(--s)}
.svc{padding:46px 0 34px}.svc h2{margin-top:14px}.tabs{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--ln);border-radius:6px;margin-top:30px;background:#f8f9fb}.tabs span{display:flex;gap:16px;align-items:center;justify-content:center;height:68px;font-size:22px;font-weight:700;border-left:1px solid var(--ln);position:relative}.tabs span:first-child{border:0;background:var(--b);color:#fff;border-radius:6px 0 0 6px}.tabs span:first-child .ic{stroke:#fff}.tabs span:first-child:after{content:"";position:absolute;bottom:-9px;left:50%;margin-left:-9px;border:9px solid transparent;border-bottom:0;border-top-color:var(--b)}
.sg{display:grid;grid-template-columns:390px 1fr;gap:40px;margin-top:22px}.sl>div{display:flex;gap:24px;align-items:center;padding:18px 0;border-bottom:1px solid var(--ln)}.sl>div:last-child{border:0}.sl .bx{width:56px;height:56px;border-radius:8px;background:#f3f5f9;display:flex;align-items:center;justify-content:center}.sl h3{font-size:23px;font-weight:800}.sl p{font-size:16px;color:var(--s)}.sg figure{margin:0}.sg figcaption{text-align:right;font-size:16px;color:var(--s);margin-top:8px;padding-right:60px}
.pm{background:#f2f5fa}.pm .w{display:grid;grid-template-columns:620px 1fr;gap:56px;align-items:center;padding-top:36px;padding-bottom:16px}.pm p{font-size:22px;color:var(--s);margin:18px 0 30px}.chips{display:flex;gap:12px}.chips span{display:flex;gap:10px;align-items:center;border:1px solid #d9dee6;background:#fff;border-radius:8px;padding:9px 14px;font-weight:700;font-size:16px}
.ba{background:#f8f4f3}.ba .w{display:grid;grid-template-columns:330px 1fr;gap:40px;padding-top:40px;padding-bottom:40px}.ba .w>div:first-child{border-right:1px solid #e2dcd9;padding-right:20px}.ba h2{font-size:49px}.ba p{font-size:21px;color:var(--s);margin:20px 0 34px}.lk{font-weight:800;font-size:22px;border-bottom:2px solid #141a26;padding-bottom:8px;display:inline-block}.bah{font-weight:800;font-size:19px;border-left:3px solid var(--b);padding-left:10px;margin-bottom:6px}
.tb{padding:40px 0 20px}table{width:100%;border-collapse:separate;border-spacing:0;margin-top:26px;border:1px solid var(--ln);border-radius:8px;overflow:hidden;font-size:19px}th,td{padding:0 24px;height:46px;border-bottom:1px solid #eef0f4;text-align:left}thead th{height:48px;color:#fff;font-size:21px;font-weight:700;text-align:center}thead th .ic{stroke:#fff;vertical-align:-6px;margin-right:12px}thead th:nth-child(2){background:#0b4a86}thead th:nth-child(3){background:#2366a8}thead th:nth-child(4){background:#336fa9}thead th:first-child{background:#fff;width:150px}tbody th{font-weight:700;width:150px;white-space:nowrap}td{border-left:1px solid #eef0f4;color:#232a36}tr:last-child td,tr:last-child th{border:0;height:76px}tr:last-child td{border-left:1px solid #eef0f4}.tbt{display:flex;justify-content:center;align-items:center;height:44px;border:1.5px solid #5d87b7;border-radius:6px;color:var(--b);font-weight:700;font-size:18px}
.ps{padding:24px 0 30px}.ps h2{margin-top:10px}.p4{display:grid;grid-template-columns:repeat(4,1fr);margin-top:24px}.p4>div{position:relative}.p4 .t{display:flex;gap:16px;align-items:center}.p4 .c{width:54px;height:54px;border-radius:50%;background:#f1f4f8;display:flex;align-items:center;justify-content:center}.p4 b{display:block;font-size:22px;font-weight:800;line-height:1.3}.p4 p{font-size:18px;color:var(--s);margin:12px 0 0 54px;line-height:1.65}.p4>div:not(:last-child):after{content:"";position:absolute;top:28px;right:24px;width:44px;height:2px;background:#d7dce4}
.fq{padding:12px 0 22px}.fq h2{margin-top:10px}.fg{display:grid;grid-template-columns:1fr 200px;gap:40px;margin-top:18px}.fg .q a{display:flex;justify-content:space-between;align-items:center;height:46px;border:1px solid var(--ln);border-radius:6px;padding:0 22px;font-size:20px;font-weight:600;margin-bottom:7px}.fg .bs{display:grid;gap:22px;align-content:start}.fg .btn{height:54px;font-size:19px;border-radius:6px}
.cf .w>div{background:#f5f6f8;border-radius:10px;display:grid;grid-template-columns:300px 1fr;padding:30px 30px}.cf .l{border-right:1px solid #dfe2e7;padding-right:20px}.cf h2{font-size:37px;line-height:1.4}.cf .l p{font-size:18px;color:var(--s);margin:14px 0 24px}.cf .l div{display:flex;gap:14px;align-items:center;font-size:21px;font-weight:600;margin-bottom:10px}.cf .r{padding-left:30px}.row{display:grid;grid-template-columns:100px 1fr;align-items:center;gap:20px;margin-bottom:10px;font-size:18px;font-weight:700}.row i{color:#c01f1f;font-style:normal}.op{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.op span{border:1px solid #cfd4dc;background:#fff;border-radius:6px;height:40px;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:16px}.in{background:#fff;border:1px solid #cfd4dc;border-radius:6px;height:40px;padding:0 14px;display:flex;align-items:center;font-weight:400;font-size:15px;color:#6b7280}.in.t{height:66px;align-items:flex-start;padding-top:8px}.ag{margin-left:120px;font-size:15px;font-weight:600;display:flex;gap:8px;align-items:center}.ag:before{content:"";width:14px;height:14px;border:1px solid #9aa1ad;border-radius:3px;background:#fff}.ag u{color:#4a5568;font-weight:400}.cf .btn{margin:10px 0 0 120px;width:calc(100% - 120px);height:42px;font-size:18px;border-radius:6px}
footer .w{display:flex;align-items:center;height:76px;font-size:16px;color:#232a36}footer img{height:36px;margin-right:30px}footer span{border-left:1px solid #c9ced6;padding:0 28px;flex:none}footer span:last-child{margin-left:auto}
@media(max-width:760px){.w{padding:0 20px}.ey{font-size:13px}.ey:after{width:32px}thead th{font-size:15px;white-space:nowrap}#gnb,.sep{display:none}header{height:62px}header .lo img{height:30px}.tel{margin-left:auto;font-size:14px}.tel .ic{width:16px}.hb{margin-left:12px;padding:8px 12px;font-size:13px}
.hero .w{grid-template-columns:1fr;padding-top:36px;padding-bottom:32px}h1{font-size:34px}.hero p.l{font-size:16px;margin:8px 0 24px}.hero .bt{gap:10px}.btn{height:52px;padding:0 18px;font-size:15px;flex:1}.lp{margin:32px 0 0;height:auto;padding:52px 20px 28px}.lp img{width:220px}.lp small{font-size:10px;margin-top:18px}
.vals .w{grid-template-columns:1fr;padding-top:8px;padding-bottom:8px}.vals .w>div{border-left:0;border-top:1px solid #dfe3ea;padding:16px 0}h2{font-size:28px}.ba h2{font-size:28px}
.tabs span{font-size:13px;height:54px;gap:6px;flex-direction:column}.tabs span .ic{width:20px}.sg,.pm .w,.ba .w,.fg,.cf .w>div{grid-template-columns:1fr}.sg{gap:20px}.sl h3{font-size:17px}.sg figcaption{padding-right:0}
.pm .w{gap:20px;padding-top:28px;padding-bottom:32px}.pm .w>img{order:2}.pm p{font-size:16px;margin:12px 0 18px}.chips{flex-wrap:wrap;gap:8px}
.ba .w{gap:24px;padding-top:32px;padding-bottom:32px}.ba .w>div:first-child{border:0;padding:0}.ba p{font-size:16px;margin:12px 0 18px}
.tw{overflow-x:auto}table{min-width:640px;font-size:14px}th,td{padding:0 12px}
.p4{grid-template-columns:1fr 1fr;gap:24px 14px}.p4>div:after{display:none!important}.p4 p{margin-left:0;font-size:14px}.p4 b{font-size:16px}.p4 .c{width:44px;height:44px}.p4 .t{gap:10px}
.fg{gap:14px}.fg .q a{font-size:15px;height:auto;min-height:44px;padding:8px 16px}.cf .w>div{padding:24px 20px}.cf .l{border:0;padding:0 0 20px;border-bottom:1px solid #dfe2e7}.cf .r{padding:20px 0 0}.row{grid-template-columns:1fr;gap:8px;margin-bottom:14px}.op{grid-template-columns:1fr 1fr;gap:8px}.ag,.cf .btn{margin-left:0;width:100%}.cf .btn{height:48px}
footer .w{flex-wrap:wrap;height:auto;padding:24px 20px;gap:8px 0}footer img{width:100%;max-width:120px;height:auto;margin-bottom:8px}footer span{border:0;padding:0 16px 0 0}footer span:last-child{margin-left:0}}
/* ===== common additions (r7_more) ===== */
header.r7h{position:sticky;top:0;z-index:50;background:#fff}header .lo img{width:auto}nav{gap:34px}nav a[aria-current]{color:var(--b)}.m-only,.mt{display:none}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.sl h3 a:hover,.lk:hover{color:var(--b)}
.more{display:flex;gap:34px;margin-top:28px;flex-wrap:wrap}.more .lk{font-size:18px}
.tbm{display:none}
/* form */
.cf button,.cf input,.cf textarea{font:inherit}.op button{border:1px solid #cfd4dc;background:#fff;border-radius:6px;height:40px;font-weight:600;font-size:16px;cursor:pointer;color:#141a26}.op button.on{border-color:var(--b);background:#eef4fb;color:var(--b)}
input.in,textarea.in{width:100%;color:#141a26;outline-color:var(--b)}textarea.in{resize:vertical;display:block}input.in::placeholder,textarea.in::placeholder{color:#6b7280}
.ag:before{display:none}.ag input{width:16px;height:16px;accent-color:var(--b)}
.fb{display:flex;gap:12px;margin:10px 0 0 120px}.cf .fb .btn{margin:0;flex:1;width:auto}.fn{margin:8px 0 0 120px;font-size:14px;color:var(--s)}
/* footer */
footer{border-top:1px solid var(--ln);margin-top:40px}footer .fl{display:flex;flex-wrap:wrap;gap:8px 26px;height:auto;padding-top:22px;padding-bottom:4px;font-size:15px;color:var(--s)}footer .fl a:hover{color:var(--b)}
.nat-bar{display:none}
/* case */
.cs .w{grid-template-columns:560px 1fr}.cs h1{font-size:52px}.cs .chips{margin:0 0 30px;flex-wrap:wrap}
.bw{display:block;position:relative;border-radius:12px;background:#fff;border:1px solid #e6e9ef;box-shadow:0 24px 50px rgba(20,30,60,.13);padding-top:30px;overflow:hidden}.bw>i{position:absolute;left:16px;top:10px;width:10px;height:10px;border-radius:50%;background:#111;box-shadow:15px 0 #ccc,30px 0 #ddd}.bw img{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:top}
.dv{position:relative;margin-left:40px;padding-bottom:30px}.ph{position:absolute;right:-10px;bottom:0;width:150px;border:6px solid #141a26;border-radius:22px;overflow:hidden;background:#fff;box-shadow:0 18px 40px rgba(20,30,60,.25)}.ph img{width:100%;aspect-ratio:9/18;object-fit:cover;object-position:top}
.cp .n{font-size:30px;font-weight:800;color:var(--b);flex:none}.cp h3{font-size:16px;color:var(--b)}.cp p{font-size:17px;color:#232a36}.cp .w>div{align-items:flex-start}
.fc{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:28px}.fc>div{display:flex;gap:18px;align-items:flex-start;border:1px solid var(--ln);border-radius:10px;padding:22px;background:#fff}.fc .bx{width:52px;height:52px;border-radius:8px;background:#f3f5f9;display:flex;align-items:center;justify-content:center;flex:none}.fc p{font-size:17px;font-weight:600;line-height:1.55}
.case .pm .w{grid-template-columns:600px 1fr;padding-top:50px;padding-bottom:50px}.ck{list-style:none;margin-top:22px}.ck li{position:relative;padding:12px 0 12px 34px;border-bottom:1px solid #dde3ec;font-size:18px}.ck li:before{content:"";position:absolute;left:4px;top:19px;width:14px;height:8px;border:solid var(--b);border-width:0 0 2.5px 2.5px;transform:rotate(-45deg)}
.oc{padding:50px 0 20px}.og{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:24px}.og b{display:block;font-size:21px;margin-top:14px}.og a:hover b{color:var(--b)}
.cb{margin-top:30px}.cb .r p{font-size:19px;color:#232a36;margin-bottom:6px}.cb .fb{margin-left:0}.cb .l{display:flex;align-items:center}
/* board */
.bd{padding:46px 0 30px}.bdh{display:flex;justify-content:space-between;align-items:center}.crumb{font-size:15px;color:var(--s)}.bd h1{font-size:46px;margin-top:14px}.bd .sub{font-size:19px;color:var(--s);margin-top:6px}
.btabs{display:flex;border-bottom:1px solid var(--ln);margin-top:34px}.btabs a{padding:0 40px;height:56px;display:flex;align-items:center;font-size:19px;font-weight:700;color:#3b4250;border-bottom:3px solid transparent;margin-bottom:-1px}.btabs a.on{color:var(--b);border-bottom-color:var(--b)}
.btool{display:flex;justify-content:space-between;align-items:center;margin:28px 0 18px;gap:20px}.bcat{display:flex;gap:10px;flex-wrap:wrap}.bcat button{font:inherit;height:42px;padding:0 20px;border:1px solid #cfd4dc;border-radius:6px;background:#fff;font-size:16px;font-weight:600;cursor:pointer;color:#141a26}.bcat button.on{background:var(--b);border-color:var(--b);color:#fff}
.bsr{display:flex;align-items:center;border:1px solid #cfd4dc;border-radius:6px;height:44px;width:400px;padding:0 6px 0 16px}.bsr input{flex:1;border:0;font:inherit;font-size:16px;outline:0;min-width:0}.bsr button{border:0;background:none;width:40px;height:40px;cursor:pointer;display:flex;align-items:center;justify-content:center}
table.bt{border:0;border-top:2px solid #141a26;border-radius:0;margin-top:0;font-size:17px}table.bt th,table.bt td{height:56px;border-bottom:1px solid #e6e9ef;border-left:0;text-align:center}table.bt thead th{color:#141a26;background:#f5f7fa!important;font-size:17px;height:50px;width:auto}table.bt td.tt{text-align:left}table.bt td.tt a:hover{color:var(--b);text-decoration:underline}table.bt .no{width:90px}table.bt .ca{width:150px;color:var(--b);font-weight:600}table.bt .wr{width:120px;color:var(--s)}table.bt .dt{width:140px;color:var(--s)}table.bt tr:last-child td{height:56px;border-bottom:1px solid #e6e9ef}table.bt tbody th{width:auto}
nav.pg{display:flex;justify-content:center;gap:8px;margin-top:28px}nav.pg button{font:inherit;width:42px;height:42px;border:1px solid #cfd4dc;border-radius:6px;background:#fff;cursor:pointer;font-weight:600}nav.pg button.on{background:var(--b);color:#fff;border-color:var(--b)}.bempty{text-align:center;padding:40px;color:var(--s)}
.bv h1{font-size:42px}.meta{display:flex;align-items:center;gap:0;margin-top:16px;font-size:16px;color:var(--s);padding-bottom:22px;border-bottom:1px solid var(--ln)}.meta>*{padding:0 18px;border-left:1px solid #d5d9e0}.meta>*:first-child{border:0;padding-left:0}.tg{background:var(--b);color:#fff!important;border-radius:4px;padding:5px 12px!important;font-weight:700;font-size:14px;margin-right:18px}
.ab{padding:30px 0 10px;font-size:18px;line-height:1.85;color:#232a36}.ab h2{font-size:28px;margin:34px 0 12px}.ab h3{font-size:22px;margin:26px 0 10px}.ab p{margin:0 0 14px}.ab ul,.ab ol{margin:0 0 16px 22px}.ab li{margin:4px 0}.ab img{max-width:100%;height:auto;border-radius:8px;margin:14px 0}.ab a{color:var(--b);text-decoration:underline}.ab table{font-size:16px;margin:14px 0}.ab th,.ab td{height:auto;padding:10px 14px}.ab thead th{background:#f5f7fa!important;color:#141a26}.ab .table-wrap{overflow-x:auto}.ab figure{margin:14px 0}.ab .gal{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.pn{border:0;border-top:1px solid #141a26;border-radius:0;margin-top:30px;font-size:17px}.pn th,.pn td{height:56px;border-left:0;border-bottom:1px solid #e6e9ef}.pn th{width:130px!important;background:#f5f7fa;text-align:center}.pn td.dt{width:140px;color:var(--s);text-align:right}.pn tr:last-child th,.pn tr:last-child td{height:56px;border-bottom:1px solid #e6e9ef}.pn td{border-left:0!important}.pn a:hover{color:var(--b)}
.ba2{display:flex;justify-content:space-between;margin-top:28px}.ba2 .btn{height:54px;font-size:18px;min-width:200px}
.fcat{margin-top:28px}.fl2{margin-top:22px;display:grid;gap:12px}.fi{border:1px solid #d5dbe4;border-radius:8px;background:#fff}.fi summary{list-style:none;display:flex;align-items:center;gap:16px;padding:0 24px;min-height:64px;font-size:19px;font-weight:700;cursor:pointer}.fi summary::-webkit-details-marker{display:none}.fi summary b{color:var(--b);font-size:20px}.fi summary i{margin-left:auto;width:16px;height:16px;position:relative;flex:none}.fi summary i:before,.fi summary i:after{content:"";position:absolute;left:0;top:7px;width:16px;height:2px;background:#141a26}.fi summary i:after{transform:rotate(90deg)}.fi[open] summary i:after{display:none}.fi[open]{border-color:var(--b)}.fi>div{border-top:1px solid #e6e9ef;background:#f7f9fc;padding:20px 24px 22px 60px;font-size:17px;color:#2b3240;line-height:1.75;border-radius:0 0 8px 8px}
.bw2{border-top:2px solid #141a26;margin-top:30px}.frow{display:grid;grid-template-columns:160px 1fr;border-bottom:1px solid #e6e9ef;align-items:center;min-height:70px}.frow>span{background:#f5f7fa;height:100%;display:flex;align-items:center;padding:0 24px;font-weight:700;font-size:17px}.frow i{color:#c01f1f;font-style:normal;margin-left:4px}.frow select,.frow input{margin:0 20px;height:44px;border:1px solid #cfd4dc;border-radius:6px;padding:0 14px;font:inherit;font-size:16px;max-width:420px;width:calc(100% - 40px)}.frow input{max-width:none}.frow.tall{align-items:stretch}.ed{margin:14px 20px;border:1px solid #cfd4dc;border-radius:6px}.tbar{display:flex;gap:18px;padding:10px 14px;border-bottom:1px solid #e6e9ef;font-size:15px}.ed textarea{width:100%;height:240px;border:0;padding:14px;font:inherit;font-size:16px;resize:none}.dn{font-size:15px;color:var(--s);margin-top:12px}.ba2 span.btn{cursor:default}
@media(max-width:1100px) and (min-width:761px){.w{padding:0 32px}nav{gap:20px;font-size:17px}.sep{margin:0 16px}.tel{font-size:17px}}
@media(max-width:760px){
body{padding-bottom:62px;font-size:16px}
header .w{position:relative}.tel{margin-left:auto}.hb{margin-left:10px}.mt{display:flex;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;margin-left:8px;border:0;background:none;padding:0 10px;cursor:pointer}.mt i{display:block;height:2px;background:#141a26;border-radius:2px}
#gnb{position:absolute;left:0;right:0;top:62px;flex-direction:column;gap:0;background:#fff;border-bottom:1px solid var(--ln);box-shadow:0 14px 24px rgba(20,30,60,.1);font-size:17px;padding:6px 20px 14px}#gnb.open{display:flex}#gnb a{padding:13px 0;border-bottom:1px solid #f0f2f5}.m-only{display:block}
.hero .w{padding-top:30px}.hero h1{font-size:33px;line-height:1.32;margin-top:14px}.hero p.l{font-size:16.5px}.lp{border-radius:14px}.lp img{width:78%;max-width:300px}
.vals .w{grid-template-columns:repeat(3,1fr);gap:8px;padding:14px 20px}.vals .w>div{border:1px solid #e3e7ee!important;border-radius:10px;background:#fff;flex-direction:column;align-items:flex-start;gap:8px;padding:14px 10px!important}.vals .ic{width:28px;height:28px}.vals h3{font-size:15px}.vals p{font-size:12.5px;line-height:1.45}
.svc{padding:36px 0 26px}.tabs{margin-top:20px}.tabs span{font-size:13.5px}.sl>div{gap:14px;padding:14px 0}.sl .bx{width:48px;height:48px;flex:none}.sl .bx .ic{width:26px}.sl p{font-size:14.5px}.sg figure{margin:0 -20px}.sg figure img{width:100%}.sg figcaption{text-align:center;font-size:13px}
.pm h2,.ba h2{font-size:28px}.pm .w>img{margin:0 -12px;max-width:calc(100% + 24px);width:calc(100% + 24px)}.chips span{font-size:14px;padding:8px 12px}
.ba .w>div:last-child img{width:100%}.bah{font-size:15px}.lk{font-size:17px}
.tb{padding:36px 0 14px}.tw{display:none}.tbm{display:grid;gap:12px;margin-top:20px}.tc{border:1px solid var(--ln);border-radius:10px;overflow:hidden;background:#fff}.tc>b{display:block;background:#0b4a86;color:#fff;font-size:17px;padding:12px 16px}.tc:nth-child(2)>b{background:#2366a8}.tc:nth-child(3)>b{background:#336fa9}.tc dl{display:grid;grid-template-columns:82px 1fr;padding:6px 16px;font-size:14.5px}.tc dt{font-weight:700;padding:9px 0;border-bottom:1px solid #eef0f4}.tc dd{padding:9px 0;border-bottom:1px solid #eef0f4;color:#232a36}.tc dl>*:nth-last-child(-n+2){border:0}.tc .tbt{margin:4px 16px 16px;font-size:15px}
.ps{padding:30px 0 26px}.p4{gap:10px}.p4>div{background:#f5f7fb;border-radius:10px;padding:16px 14px}.p4 .t{flex-direction:column;align-items:flex-start}.p4 .c{background:#fff}.p4 p{margin-top:8px;line-height:1.55}.more{gap:12px 22px;margin-top:20px}.more .lk{font-size:15px}
.fq{padding:20px 0 26px}.fg .bs{grid-template-columns:1fr 1fr;gap:10px}.fg .btn{height:50px;font-size:15px;padding:0 10px}
.cf h2{font-size:26px}.cf .l p{font-size:15px}.cf .l div{font-size:17px}.op button{font-size:14.5px;height:44px}.in{font-size:14px}.ag{font-size:14px}.fb,.fn{margin-left:0}.fb{flex-direction:column;gap:8px}.cf .fb .btn{height:50px;flex:none;width:100%}.fn{font-size:13px}
footer{margin-top:28px}footer .fl{padding:18px 20px 0;gap:6px 16px;font-size:14px}footer .w:not(.fl){font-size:14px}
.nat-bar{display:grid;grid-template-columns:1fr 1fr 1.3fr;position:fixed;left:0;right:0;bottom:0;z-index:60;height:58px;background:#fff;border-top:1px solid var(--ln);box-shadow:0 -6px 18px rgba(20,30,60,.08)}.nat-bar a{display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px;border-left:1px solid var(--ln)}.nat-bar a:first-child{border:0;background:#fee500;color:#191600}.nat-bar a:last-child{background:var(--b);color:#fff}
.cs .w{grid-template-columns:1fr}.cs h1{font-size:30px}.cs .chips{margin-bottom:20px}.dv{margin:30px 0 0;padding-bottom:24px}.ph{width:28%;right:-6px;border-width:4px;border-radius:16px}
.cp .w{grid-template-columns:1fr!important;gap:10px}.cp .w>div{flex-direction:row!important}.cp p{font-size:14.5px}.cp .n{font-size:22px}
.fc{grid-template-columns:1fr;gap:10px;margin-top:20px}.fc>div{padding:14px;gap:14px;align-items:center}.fc .bx{width:44px;height:44px}.fc p{font-size:15px}
.case .pm .w{grid-template-columns:1fr;padding-top:30px;padding-bottom:30px}.case .pm .w>.bw{order:2}.ck li{font-size:15px;padding:10px 0 10px 30px}.ck li:before{top:16px}
.oc{padding:34px 0 10px}.og{gap:14px}.og b{font-size:15px;margin-top:10px}
.cb .r p{font-size:15px}.cb .l{padding-bottom:14px!important}
.bd{padding:28px 0 20px}.bdh{flex-direction:column;align-items:flex-start;gap:6px}.crumb{font-size:13px}.bd h1,.bv h1{font-size:27px;line-height:1.35;margin-top:10px}.bd .sub{font-size:15px}
.btabs{margin-top:22px;margin-left:-20px;margin-right:-20px;padding:0 20px}.btabs a{padding:0 4px;flex:1;justify-content:center;font-size:15px;height:50px;white-space:nowrap}
.btool{flex-direction:column;align-items:stretch;margin:18px 0 12px;gap:12px}.bcat{gap:6px}.bcat button{height:40px;padding:0 13px;font-size:14px}.bsr{width:100%}
table.bt,table.bt tbody,table.bt tr,table.bt td{display:block}table.bt{border-top-width:2px;min-width:0;font-size:15px}table.bt thead{display:none}table.bt tr{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;padding:14px 2px;border-bottom:1px solid #e6e9ef}table.bt td{height:auto;border:0!important;padding:0;text-align:left;width:auto!important}table.bt .no,table.bt .wr{display:none}table.bt td.tt{grid-column:1/-1;font-weight:600;font-size:16px;line-height:1.45}table.bt td.ca,table.bt td.dt{font-size:13px}table.bt tr:last-child td{height:auto}
nav.pg button{width:40px;height:40px}
.meta{flex-wrap:wrap;gap:8px 0;font-size:13.5px}.meta>*{padding:0 10px}.tg{margin-right:10px}.ab{font-size:16px;line-height:1.8}.ab h2{font-size:21px}.ab h3{font-size:18px}.ab table{min-width:0;font-size:14px}
.pn{min-width:0;font-size:14.5px}.pn th{width:74px!important;padding:0 8px}.pn td{padding:10px}.pn td.dt{display:none}
.ba2{gap:10px}.ba2 .btn{min-width:0;flex:1;height:50px;font-size:15px}
.fi summary{font-size:15.5px;padding:12px 16px;gap:10px;min-height:56px}.fi>div{padding:14px 16px 16px 16px;font-size:14.5px}
.frow{grid-template-columns:1fr}.frow>span{height:auto;padding:10px 14px}.frow select,.frow input{margin:12px 14px;width:calc(100% - 28px)}.ed{margin:12px 14px}
}
@media(max-width:420px){.tel span{display:none}.tel{padding:10px}.tel .ic{width:20px}.hb{padding:9px 10px;font-size:13px}.hero h1{font-size:30px}.vals p{display:none}.vals h3{font-size:14px}.p4 b{font-size:15px}.cs h1{font-size:27px}.bd h1,.bv h1{font-size:24px}}
@media(max-width:370px){header .lo img{height:26px}.hb{margin-left:4px}.mt{margin-left:2px}.hero h1{font-size:28px}.btn{font-size:14px;padding:0 12px}.tabs span{font-size:12.5px}.bcat button{padding:0 10px}}
table.bt thead th.ca{color:#141a26}
.hb{display:inline-flex;align-items:center;min-height:40px}
/* ===== pages ===== */
.tabs.t4{grid-template-columns:repeat(4,1fr)}.tabs a{display:flex;gap:14px;align-items:center;justify-content:center;height:68px;font-size:20px;font-weight:700;border-left:1px solid var(--ln);position:relative}.tabs a:first-child{border:0;background:var(--b);color:#fff;border-radius:6px 0 0 6px}.tabs a:first-child .ic{stroke:#fff}.tabs a:hover{color:var(--b)}.tabs a:first-child:hover{color:#fff}
.sec{padding:56px 0}.sec.bg{background:#f2f5fa}.sec.bg2{background:#f8f4f3}.sec h2{margin-top:12px;font-size:42px}.lead{font-size:19px;color:var(--s);margin-top:12px;max-width:880px}.note{font-size:15px;color:var(--s);margin-top:18px}
.pg h1{font-size:50px}.pg .l.s{font-size:18px;margin-top:-20px}.pg .lp{margin-top:20px}
.fc.c2{grid-template-columns:1fr 1fr}.fc.c3{grid-template-columns:repeat(3,1fr)}.fc h3{font-size:19px;font-weight:800;margin-bottom:6px}.fc>div p{font-size:16px;font-weight:400;color:var(--s)}.fc>div>div p:only-child{color:#232a36;font-weight:600}.fc a{color:var(--b);font-weight:700;font-size:15px}
.p4.st{gap:16px}.p4.st>div{background:#fff;border:1px solid var(--ln);border-radius:10px;padding:22px}.sec.bg .p4.st>div{background:#fff}.p4.st>div:after{display:none}.sn{display:inline-flex;width:44px;height:44px;border-radius:50%;background:var(--b);color:#fff;font-weight:800;align-items:center;justify-content:center;margin-bottom:12px}.p4.st b,.p4.st strong{font-size:19px}.p4.st p{margin:6px 0 0;font-size:16px}.p4.st span:not(.sn){display:block}
.g2{display:grid;grid-template-columns:380px 1fr;gap:50px;align-items:start}.g2 .fl2{margin-top:0}
.gtw{overflow-x:auto;margin-top:26px}.gt{margin:0;font-size:17px}.gt th,.gt td{height:auto;padding:14px 20px;line-height:1.5}.gt thead th{background:var(--b)!important;color:#fff;font-size:17px;text-align:left;width:auto}.gt tbody th{background:#f7f9fc;width:auto;white-space:normal}.gt tr:last-child td,.gt tr:last-child th{height:auto}
.stc{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:26px}.stc>div{background:#fff;border:1px solid var(--ln);border-radius:12px;padding:24px;box-shadow:0 10px 24px rgba(20,30,60,.06)}.stc small{display:block;font-size:16px;color:var(--s);font-weight:600}.stc b{display:block;font-size:32px;font-weight:800;color:var(--b);margin:6px 0}.stc span{font-size:15px;color:var(--s)}
.stc.hs{grid-template-columns:1fr;margin:6px 0 0 40px;gap:12px}.stc.hs>div{padding:18px 24px}.stc.hs b{font-size:28px}
.chipg{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.chipg span{border:1px solid #cfd8e6;background:#fff;border-radius:8px;padding:12px 18px;font-weight:700}
.tx2{display:grid;grid-template-columns:1fr 520px;gap:50px;align-items:center}.prose p{font-size:17.5px;line-height:1.85;color:#2b3240;margin-top:14px}.prose b{color:var(--b)}
.mk{margin:0}.mk img{width:100%;border-radius:12px}.mk figcaption{text-align:right;font-size:14px;color:var(--s);margin-top:6px}.hero .mk{margin-left:40px}
.ctc{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:26px}.ctc a{display:block;background:#fff;border:1px solid var(--ln);border-radius:12px;padding:22px;transition:.2s}.ctc a:hover{border-color:var(--b)}.ctc small{display:block;color:var(--b);font-weight:800;font-size:14px;letter-spacing:.06em}.ctc b{display:block;font-size:19px;margin:8px 0 10px;word-break:break-all}.ctc span{font-size:15px;color:var(--s)}.ctc.v{grid-template-columns:1fr 1fr;margin:6px 0 0 40px}
.wd{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:24px}.wd>div{background:#fff;border:1px solid var(--ln);border-radius:12px;padding:26px 18px;text-align:center}.wd .bx{width:56px;height:56px;border-radius:50%;background:#eef3fa;display:flex;align-items:center;justify-content:center;margin:0 auto 12px}.wd b{font-size:18px;letter-spacing:.06em}
.og.o3{grid-template-columns:repeat(3,1fr)}.og.o4{grid-template-columns:repeat(4,1fr);gap:14px}.og small{display:block;color:var(--s);font-size:15px;margin-top:2px}.lc{display:flex;align-items:center;gap:14px;border:1px solid var(--ln);border-radius:12px;padding:20px;background:#fff}.lc b{margin:0!important;font-size:17px!important}.lc .bx{width:48px;height:48px;border-radius:8px;background:#f3f5f9;display:flex;align-items:center;justify-content:center;flex:none}
.pj{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:24px}.pjc{display:block;background:#fff;border:1px solid var(--ln);border-radius:12px;padding:12px 12px 16px}.pjc .bw{box-shadow:none}.pn2{display:inline-block;color:var(--b);font-weight:800;margin-top:12px;font-size:15px}.pjc b{display:block;font-size:17px;margin-top:2px}.pjc small{display:block;font-size:13px;color:var(--s)}.pjc em{display:block;font-style:normal;font-weight:800;font-size:13px;color:var(--b);margin-top:8px}
.mg{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-left:40px}.mg img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:12px;box-shadow:0 14px 30px rgba(20,30,60,.12)}
.mc{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-top:24px}.mc figure{margin:0;background:#fff;border:1px solid var(--ln);border-radius:12px;overflow:hidden}.mc img{width:100%;aspect-ratio:4/3;object-fit:cover}.mc figcaption{padding:16px 18px}.mc b{display:block;font-size:18px}.mc span{font-size:15px;color:var(--s)}
.quote{font-size:30px;line-height:1.5;text-align:center;font-weight:600}.quote b{color:var(--b)}
.crg{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:24px}.crc{display:block;border:1px solid var(--ln);border-radius:12px;padding:24px;background:#fff}.crc.nx{background:var(--b);color:#fff;border-color:var(--b)}.crc.nx .pn2,.crc.nx .cat{color:#cfe0f5}.crc.nx .chips span{background:transparent;color:#fff;border-color:#6d97c7}.crh{display:flex;justify-content:space-between;align-items:center}.crh small{font-size:13px;font-weight:800;letter-spacing:.08em;color:var(--s)}.crc.nx .crh small{color:#cfe0f5}.crc h3{font-size:23px;margin-top:8px}.crc .cat{font-size:14px;color:var(--s);letter-spacing:.04em;margin:4px 0 14px}.crc .chips{flex-wrap:wrap;gap:8px}.crc .chips span{font-size:14px;padding:6px 10px}.crc em{display:block;font-style:normal;font-weight:800;margin-top:16px}
.chap{display:flex;gap:10px;flex-wrap:wrap;margin:6px 0 0;padding:20px 0;border-top:1px solid var(--ln)}.chap a{border:1px solid #cfd4dc;border-radius:30px;padding:10px 20px;font-weight:700;font-size:16px}.chap a:hover{border-color:var(--b);color:var(--b)}
.opt{gap:18px}.oc2{background:#fff;border:1px solid var(--ln);border-radius:12px;padding:26px}.tagb{display:inline-block;background:var(--b);color:#fff;font-weight:800;border-radius:6px;padding:4px 12px;font-size:16px;letter-spacing:.06em}.oc2 h3{font-size:22px;margin-top:12px}.oc2>p{font-size:16px;color:var(--s);margin-top:6px}.oc2 .ck li{font-size:16px}
.demo-note{margin:20px 0 0;background:#fff7e0;border:1px solid #f0d98a;border-radius:8px;padding:12px 16px;font-size:15px}
.nf{padding:90px 0}.nf h1{font-size:46px;margin:14px 0 6px}.nf .bt{display:flex;gap:14px;margin:26px 0 40px}
.ctb .ctc{margin-top:22px}.sec .ey+h2{margin-top:12px}
@media(max-width:1100px) and (min-width:761px){.pj{grid-template-columns:repeat(3,1fr)}.tx2{grid-template-columns:1fr 1fr}.wd{grid-template-columns:repeat(3,1fr)}.ctc{grid-template-columns:1fr 1fr}}
@media(max-width:760px){
.tabs.t4{grid-template-columns:1fr 1fr}.tabs a{font-size:13.5px;height:54px;gap:6px}.tabs a .ic{width:20px}.tabs a:nth-child(3){border-left:0}.tabs a:nth-child(n+3){border-top:1px solid var(--ln)}.tabs a:first-child{border-radius:6px 0 0 0}.tabs a:first-child:after{display:none}
.sec{padding:36px 0}.sec h2{font-size:26px;line-height:1.35}.lead{font-size:15.5px}.note{font-size:13.5px}
.pg h1{font-size:30px}.pg .l.s{font-size:15px;margin-top:-14px}.hero .mk,.mg,.stc.hs,.ctc.v{margin:26px 0 0}
.fc.c2,.fc.c3{grid-template-columns:1fr}.fc h3{font-size:16.5px}.fc>div p{font-size:14.5px}
.p4.st{grid-template-columns:1fr 1fr}.p4.st>div{padding:14px}.sn{width:36px;height:36px;font-size:14px}.p4.st b,.p4.st strong{font-size:15.5px}.p4.st p{font-size:13.5px}
.g2,.tx2{grid-template-columns:1fr;gap:20px}.gt{min-width:0;font-size:14px}.gt th,.gt td{padding:10px 12px}.gt thead th{font-size:14px;white-space:normal}
.stc{grid-template-columns:1fr;gap:10px}.stc>div{padding:16px 18px}.stc b{font-size:24px}.chipg span{padding:8px 12px;font-size:14px}
.prose p{font-size:15.5px;line-height:1.8}.mk figcaption{font-size:12px}
.ctc,.ctc.v{grid-template-columns:1fr 1fr;gap:10px}.ctc a{padding:14px}.ctc b{font-size:15px}.ctc small{font-size:12px}.ctc span{font-size:13px}
.wd{grid-template-columns:repeat(3,1fr);gap:8px}.wd>div{padding:14px 6px}.wd .bx{width:44px;height:44px}.wd b{font-size:13px;letter-spacing:0}
.og.o3,.og.o4{grid-template-columns:1fr 1fr;gap:10px}.lc{padding:12px;gap:10px}.lc .bx{width:38px;height:38px}.lc b{font-size:14px!important}.og.o3 a:last-child:nth-child(odd){grid-column:1/-1}
.pj{grid-template-columns:1fr 1fr;gap:10px}.pjc{padding:8px 8px 12px}.pjc b{font-size:15px}.pjc:last-child{grid-column:1/-1}
.mc{grid-template-columns:1fr 1fr;gap:10px}.mc figcaption{padding:10px}.mc b{font-size:14.5px}.mc span{font-size:12.5px;line-height:1.45;display:block}
.quote{font-size:19px}.crg{grid-template-columns:1fr;gap:10px}.crc{padding:18px}.crc h3{font-size:19px}
.chap{gap:8px;padding:14px 0}.chap a{font-size:13.5px;padding:9px 13px;min-height:40px;display:inline-flex;align-items:center}
.oc2{padding:18px}.oc2 h3{font-size:18px}.oc2 .ck li{font-size:14.5px}
.nf{padding:50px 0}.nf h1{font-size:30px}.nf .bt{flex-direction:column}
}
.nf .bt .btn{flex:none}
.p4.st{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}@media(max-width:760px){.p4.st{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.og.opt{grid-template-columns:1fr}}
.h1s{display:block;font-size:22px;font-weight:700;color:var(--b);letter-spacing:-.01em;line-height:1.4;margin-bottom:6px}@media(max-width:760px){.h1s{font-size:16px;margin-bottom:4px}}
/* ===== motion + backgrounds (v4) ===== */
.ba{background:#eef3f9}
.vbg{position:absolute;inset:0;z-index:0;overflow:hidden;background:#0d2a55 center/cover no-repeat}
.vbg video{width:100%;height:100%;object-fit:cover;display:block}
.vbg:after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(9,26,56,.86),rgba(23,78,134,.62))}
.hero{position:relative;overflow:hidden;color:#fff;background:#0d2a55}.hero .w{position:relative;z-index:1}
.hero h1,.hero .h1s{color:#fff}.hero h1 em{color:#9cc4ee}.hero p.l{color:#d5e2f2}.hero .ey{color:#9cc4ee}.hero .ey:after{background:#9cc4ee}
.hero .btn.o{background:transparent;color:#fff;border-color:rgba(255,255,255,.6)}.hero .btn{border-color:#2f6fb5;background:#2f6fb5}
.svc{background:#fff linear-gradient(#e8eef6 1px,transparent 1px) 0 0/100% 40px,#fff;background-image:linear-gradient(rgba(23,78,134,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(23,78,134,.05) 1px,transparent 1px);background-size:40px 40px}
.pm{background:linear-gradient(160deg,#f3f6fa,#e4ecf6)}
.ba{position:relative;overflow:hidden;background-image:radial-gradient(rgba(23,78,134,.12) 1px,transparent 1.2px);background-size:22px 22px;background-color:#eef3f9}
.ba:before{content:"SANORA WEB";position:absolute;right:-2vw;bottom:-3vw;font:800 clamp(80px,14vw,220px)/1 P,sans-serif;letter-spacing:-.04em;color:transparent;-webkit-text-stroke:1px rgba(23,78,134,.14);pointer-events:none;white-space:nowrap}
.ba .w{position:relative}
.tb{background:#f3f6fa}
.fq{background:#fff;background-image:radial-gradient(rgba(23,78,134,.08) 1px,transparent 1.2px);background-size:26px 26px}
.cf{background:linear-gradient(180deg,#eef3f9,#fff)}


.pm,.svc,.fq{position:relative;overflow:hidden}.pm .w,.svc .w,.fq .w{position:relative;z-index:1}
/* deep blue band (process) */
.ps{position:relative;background:#fff}
.ps .bd{position:absolute;inset:0;z-index:0;background:#0d2a55;overflow:hidden}
.ps .w{position:relative;z-index:1}
.ps.dk h2,.ps.dk .ey,.ps.dk .more a{color:#fff}.ps.dk .ey:after{background:#9cc4ee}
.ps.dk .p4>div{background:rgba(255,255,255,.96);border-radius:12px;padding:20px 18px;color:#141a26}
/* reveals: only with JS */

.js .rv.on{opacity:1;transform:none}
.js .hero .ld{opacity:0;transform:translateY(40px)}
.rdy .hero .ld{animation:ldu .8s cubic-bezier(.2,.8,.2,1) forwards;animation-delay:var(--d,0s)}
@keyframes ldu{to{opacity:1;transform:none}}
.lp img{animation:flt 6s ease-in-out infinite}.sg figure img,.pm .w>img{animation:flt 7s ease-in-out infinite}
@keyframes flt{50%{transform:translateY(-10px)}}

.sl>div:hover,.p4>div:hover,.og a:hover,.crc:hover,.pjc:hover{transform:translateY(-6px);box-shadow:0 18px 36px -14px rgba(23,78,134,.35)}
.sl>div{padding-left:10px;padding-right:10px;border-radius:8px}
.tabs a{cursor:pointer;transition:background .25s,color .25s}
.js .tabs a:first-child{background:none;color:inherit}.js .tabs a:first-child .ic{stroke:currentColor}.js .tabs a:first-child:after{display:none}
.js .tabs a.on{background:var(--b);color:#fff}.js .tabs a.on .ic{stroke:#fff}
.sl.sw{animation:sw .4s cubic-bezier(.2,.8,.2,1)}@keyframes sw{from{opacity:0;transform:scale(.97) translateY(8px)}}
.sl>div[hidden]{display:none}
/* pins */
.pin{position:relative}.pin>.stk{position:sticky;top:0;height:100vh;height:100svh;overflow:hidden;display:flex;flex-direction:column;justify-content:center}
.pin>.stk.hero{justify-content:flex-start}
.pin .pm .w,.pm.stk .w{display:block;position:relative;max-width:1280px;width:100%}
.pm.stk .w>img{display:block;width:min(1040px,92vw);margin:0 auto;border-radius:12px;box-shadow:0 40px 80px -30px rgba(13,42,85,.45);animation:none;will-change:transform}
.pm.stk .w>div{position:absolute;left:58px;bottom:-10px;max-width:420px;background:#fff;padding:26px 28px;border-radius:12px;box-shadow:0 24px 50px -20px rgba(13,42,85,.35)}
.pm.stk{perspective:1200px}
.ps.stk .p4{display:flex;flex-wrap:nowrap;gap:22px;will-change:transform}.ps.stk .p4>div{flex:0 0 min(400px,74vw);min-height:210px}
.ba h2 .ln{display:block;will-change:transform}
@media(max-width:760px){.pm.stk .w>div{position:relative;left:auto;bottom:auto;margin:16px 20px 0;padding:18px}.ba:before{-webkit-text-stroke-width:.6px}}
@media(prefers-reduced-motion:reduce){.lp img,.sg figure img{animation-duration:12s}.rdy .hero .ld{animation-duration:.5s}}
#svi{position:fixed;inset:0;z-index:2147483647;background:#07090d;display:flex;align-items:center;justify-content:center;cursor:pointer;user-select:none;animation:sviOut .3s 1.5s forwards}
#svi .t{position:relative;width:min(560px,88vw);border-radius:12px;background:#0d1117;border:1px solid rgba(231,234,239,.14);box-shadow:0 30px 80px rgba(0,0,0,.55);overflow:hidden;animation:sviTo .22s .85s forwards}
#svi .b{height:34px;display:flex;align-items:center;gap:7px;padding:0 13px;background:#161b22}#svi .b i{width:11px;height:11px;border-radius:50%;background:#e7eaef;opacity:.3}#svi .b span{margin-left:8px;font:700 12px/1 ui-monospace,Menlo,Consolas,monospace;color:#8b949e}
#svi .c{padding:18px 20px 22px;font:600 15px/1.8 ui-monospace,Menlo,Consolas,"Liberation Mono",monospace;color:#e7eaef;min-height:8.6em}
#svi .c b{display:block;width:max-content;max-width:100%;white-space:pre;font-weight:600;clip-path:inset(0 100% 0 0)}#svi .c b em{color:#8fb0e8}#svi .c .k{color:#9cc4ee}
#svi .c .l1{animation:sviTy .14s steps(15,end) .05s forwards}#svi .c .l2{animation:sviTy .14s steps(15,end) .24s forwards}#svi .c .l3{animation:sviTy .01s .44s forwards}#svi .c .l4{animation:sviTy .18s steps(19,end) .52s forwards}
#svi .c .cu{opacity:0;clip-path:none;animation:sviBl .3s steps(1,end) .7s infinite}
#svi .lg{position:absolute;left:50%;top:50%;width:min(420px,70vw);transform:translate(-50%,-46%) scale(.9);opacity:0;animation:sviLg .35s cubic-bezier(.2,.8,.2,1) .95s forwards}#svi .lg img{display:block;width:100%;height:auto;filter:brightness(0) invert(1)}
#svi.x{animation:sviOut .22s forwards!important}
@keyframes sviTy{to{clip-path:inset(0 0 0 0)}}@keyframes sviBl{50%{opacity:0}}@keyframes sviTo{to{opacity:0;transform:scale(.96)}}@keyframes sviLg{to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes sviOut{to{opacity:0;visibility:hidden;pointer-events:none}}
@media(min-width:900px){#svi .t{width:640px}#svi .c{font-size:18px}}
.pm.dkv{background:#0d2a55}.pm.dkv .w>div h2{color:#141a26}
.ps .vbg{opacity:1}.ps .vbg:after{background:rgba(9,26,56,.72)}
.ps.stk .p4>div:after{display:none!important}
/* ===== v5: smooth + depth ===== */
.lp{background:none!important;box-shadow:none!important;border:0!important;padding:40px 0 0!important;height:auto!important;will-change:transform}
.lp:before,.lp:after{display:none!important}
.lp img{filter:drop-shadow(0 0 28px rgba(120,170,235,.55))}.lp small{color:#bcd3ee!important}
.vbg:after{background:radial-gradient(ellipse at 50% 40%,transparent 30%,rgba(5,14,32,.7) 100%),linear-gradient(100deg,rgba(9,26,56,.86),rgba(23,78,134,.55))}
.dp{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.dp>*{position:absolute;will-change:transform}
.dp .g{width:60vw;height:60vw;max-width:820px;max-height:820px;border-radius:50%;background:radial-gradient(circle,rgba(70,140,220,.32) 0,rgba(70,140,220,.12) 35%,transparent 68%)}
.dp .g1{left:-18vw;top:-20vw}.dp .g2{right:-20vw;bottom:-28vw;background:radial-gradient(circle,rgba(23,78,134,.38),transparent 66%)}
.dp .gp{left:-30%;right:-30%;bottom:-10%;height:70%;perspective:600px;perspective-origin:50% 0}
.dp .gp i{position:absolute;inset:0;transform:rotateX(64deg);transform-origin:50% 0;background-image:linear-gradient(rgba(140,190,245,.22) 1px,transparent 1px),linear-gradient(90deg,rgba(140,190,245,.22) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:linear-gradient(transparent,#000 30%,#000 60%,transparent);mask-image:linear-gradient(transparent,#000 30%,#000 60%,transparent);animation:gpm 6s linear infinite}
@keyframes gpm{to{background-position:0 64px,0 64px}}
.dp canvas{inset:0;width:100%;height:100%}
.lt .dp .g{background:radial-gradient(circle,rgba(47,111,181,.14),transparent 66%)}.lt .dp .gp i{background-image:linear-gradient(rgba(23,78,134,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(23,78,134,.09) 1px,transparent 1px)}
.svc,.fq,.cf,.chk{position:relative;overflow:hidden}.svc>.w,.fq>.w,.cf>.w,.chk>.w,.hero>.w,.ps>.w,.pm>.w{position:relative;z-index:1}
.js .rv{opacity:0;transform:translate3d(0,18px,0);transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1.1s cubic-bezier(.16,1,.3,1);transition-delay:var(--d,0s)}
.js .rv.on{opacity:1;transform:none}
.js .hero .ld{transform:translate3d(0,22px,0)}.rdy .hero .ld{animation:ldu 1.1s cubic-bezier(.16,1,.3,1) forwards;animation-delay:var(--d,0s)}
.sl>div,.p4>div,.og a,.crc,.pjc,.chk .ck4 li{transition:transform .6s cubic-bezier(.16,1,.3,1)}
.sl>div:hover,.p4>div:hover,.og a:hover,.crc:hover,.pjc:hover,.chk .ck4 li:hover{transform:translate3d(0,-6px,0);box-shadow:0 18px 36px -14px rgba(23,78,134,.35)}
/* site check */
.chk{background:#0d2a55;color:#fff;padding:90px 0}
.chk .w{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}
.chk .ey{color:#9cc4ee}.chk .ey:after{background:#9cc4ee}.chk h2{color:#fff;font-size:46px;margin:14px 0 12px}.chk h2 em{color:#9cc4ee}.chk p.l{color:#d5e2f2;font-size:18px}
.ck4{list-style:none;padding:0;margin:28px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ck4 li{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);border-radius:10px;padding:16px 18px;color:#d5e2f2;font-size:15px;line-height:1.6}.ck4 b{display:block;color:#fff;font-size:17px;margin-bottom:4px}.ck4 b span{color:#9cc4ee;margin-right:8px}
.chf{background:#fff;color:#141a26;border-radius:14px;padding:30px;box-shadow:0 40px 80px -30px rgba(0,0,0,.5)}
.chf label{display:block;font-weight:700;font-size:18px;margin-bottom:10px}.chf input{width:100%;height:54px;border:1px solid #cfd4dc;border-radius:8px;padding:0 16px;font:inherit;font-size:17px}
.chf .chb{display:grid;gap:10px;margin-top:14px}.chf .btn{width:100%;margin:0}.chf .fn{margin-top:12px;font-size:14px;color:var(--s)}
#sv-ask{position:fixed;right:24px;bottom:24px;z-index:60;font-weight:700}#sv-ask summary{list-style:none;cursor:pointer;background:var(--b);color:#fff;border-radius:30px;padding:14px 22px;box-shadow:0 12px 30px -10px rgba(23,78,134,.6)}#sv-ask summary::-webkit-details-marker{display:none}
#sv-ask .sv-ask-p{position:absolute;right:0;bottom:60px;display:grid;gap:8px;background:#fff;padding:12px;border-radius:12px;box-shadow:0 18px 40px -12px rgba(13,42,85,.4);min-width:200px}#sv-ask .sv-ask-p a{padding:10px 14px;border-radius:8px;background:#f3f6fa;color:#141a26}#sv-ask .sv-ask-p a.k{background:#fee500}
@media(max-width:760px){#sv-ask{display:none}.chk{padding:56px 0}.chk .w{grid-template-columns:1fr;gap:28px}.chk h2{font-size:30px}.ck4{grid-template-columns:1fr}.chf{padding:20px}.dp .gp i{background-size:44px 44px}.dp .g{width:90vw;height:90vw}}
@media(prefers-reduced-motion:reduce){.dp .gp i{animation-duration:14s}}
.fl a.sm{font-size:12px;opacity:.75}
.qlk{margin-top:14px}.hero .qlk a{color:#9cc4ee}
.qt{padding:70px 0;background:#eef3f9}.qt h2{font-size:40px;margin:12px 0 10px}.qtb{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}.qtb .btn{margin:0;width:auto;flex:none}
.hc{padding:70px 0;background:#fff}.hc .og{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:24px}.hc .og a{display:block}.hc .og img{width:100%;display:block}.hc .og b{display:block;margin-top:10px;font-size:18px}
@media(max-width:760px){.qt h2{font-size:28px}.qtb .btn{width:100%}.hc{padding:46px 0}.hc .og{grid-template-columns:1fr}}
.qcta{display:grid;gap:12px;align-content:center}.qc{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:72px;padding:0 24px;border:1px solid #cfd8e6;border-radius:12px;background:#fff;color:#141a26;transition:transform .6s cubic-bezier(.16,1,.3,1)}.qc b{font-size:19px}.qc span{color:var(--b);font-weight:600;font-size:15px}.qc.k{background:#fee500;border-color:#fee500}.qc.k span{color:#141a26}.qc:hover{transform:translate3d(0,-4px,0)}
.cht{font-size:17px;font-weight:700;line-height:1.6}
@media(max-width:760px){.qc{min-height:60px;padding:0 16px;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px}.qc b{font-size:16px}.qc span{font-size:13px}}
/* v6 */

.home .lp{width:34%;max-width:440px;margin-left:auto!important;margin-right:4%!important;padding:30px 0 0!important}.home .lp img{width:100%!important;height:auto;max-width:none;margin:0 auto!important;filter:drop-shadow(0 0 22px rgba(120,170,235,.4))}
.home .hero .w{grid-template-columns:1fr 1fr!important;align-items:center}@media(max-width:760px){.home .hero .w{grid-template-columns:1fr!important}.home .lp{width:72%;margin:26px auto 0!important;padding:0!important}}.home .ps{background:#0d2a55}.home .ps .vbg{transform:none!important}.home .dev{position:relative;width:min(980px,90vw);margin:0 auto;aspect-ratio:16/9.6;will-change:transform}.home .dev .lap{position:absolute;left:0;top:0;width:84%}.home .dev .lap .scr{position:relative;border:10px solid #10151f;border-bottom-width:14px;border-radius:16px 16px 6px 6px;background:#000;aspect-ratio:16/10;overflow:hidden;box-shadow:0 40px 70px -30px rgba(0,0,0,.6)}.home .dev .scr img{display:block;width:100%;height:100%;object-fit:cover;object-position:top;animation:none!important}.home .dev .base{display:block;height:14px;margin:0 -6%;background:linear-gradient(#c9d2de,#8794a8);border-radius:0 0 18px 18px;box-shadow:0 26px 40px -18px rgba(0,0,0,.6)}.home .dev .phn{position:absolute;right:0;bottom:0;width:22%}.home .dev .phn .scr{border:7px solid #10151f;border-radius:26px;aspect-ratio:390/844;overflow:hidden;background:#000;box-shadow:0 30px 60px -20px rgba(0,0,0,.65)}.home .pm.stk .w>div,.home .pm .w>div{background:rgba(9,26,56,.78)!important;border:1px solid rgba(255,255,255,.16);color:#fff;box-shadow:none!important}.home .pm .w>div h2,.home .pm.dkv .w>div h2{color:#fff!important}.home .pm .w>div p{color:#d5e2f2}.home .pm .chips span{background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.2)}.home .pm .chips .ic{stroke:#fff}.home .bf{position:relative;border-radius:14px;overflow:hidden;box-shadow:0 30px 60px -30px rgba(13,42,85,.45);border:1px solid #dfe6f0;background:#fff}.home .bf img{display:block;width:100%;animation:none!important}.home .ba .w>div>img{border-radius:12px;box-shadow:0 24px 50px -28px rgba(13,42,85,.45)}@media(max-width:760px){.home .dev{width:94vw}.home .dev .lap .scr{border-width:6px;border-bottom-width:9px;border-radius:10px 10px 4px 4px}.home .dev .phn .scr{border-width:4px;border-radius:14px}}.home .pm .w>.dev,.home .pm.stk .w>.dev{position:relative!important;left:auto!important;bottom:auto!important;max-width:none!important;width:min(980px,86vw);background:none!important;border:0!important;padding:0!important;margin:0 auto;border-radius:0}
.home .lp{width:420px!important;max-width:none}@media(max-width:760px){.home .lp{width:64vw!important;max-width:280px}.home .pm .w>.dev,.home .pm.stk .w>.dev{width:92vw}}@media(max-width:760px){.home .lp{margin-top:40px!important}}
body.subbg .hero .w{align-items:center}
@media(min-width:761px){body.subbg:not(.pg-services) .hero .w{grid-template-columns:1fr 1fr}}

/* boards_qa (coding bot 11/4) */
.r7h .lo{display:inline-flex;align-items:center;min-height:40px}
.r7h .tel{min-height:40px}
#gnb>a:not(.m-only){display:inline-flex;align-items:center;min-height:40px}
footer .fl{row-gap:0!important}
footer .fl a{display:inline-flex;align-items:center;min-height:40px}
footer .w span a{display:inline-flex;align-items:center;min-height:40px}
table.pn td a{display:inline-flex;align-items:center;min-height:44px}
.pj.n4{grid-template-columns:repeat(4,1fr)}@media(max-width:1100px){.pj.n4{grid-template-columns:1fr 1fr}}
.crg.n4{grid-template-columns:repeat(2,1fr)}@media(max-width:760px){.crg.n4{grid-template-columns:1fr}}

/* 11/4 home works: 4 cards */
.hc .og.og4{grid-template-columns:repeat(4,1fr);gap:18px}
@media(max-width:1000px){.hc .og.og4{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.hc .og.og4{grid-template-columns:1fr}}
/* iOS fix 11/4: overflow-x:hidden on body makes iOS Safari treat body as a scroll container (scroll-to-top bounce/stuck, sticky header glitch). clip = no scroll container */
html,body{overflow:visible!important}
@supports (overflow:clip){body>main,body>footer,body>header,.pin{overflow-x:clip}}
/* transparent example images (site-wide) */
figure.bf:has(>img.tp),figure.mk:has(>img.tp){background:none!important;border:0!important;box-shadow:none!important;border-radius:0!important;overflow:visible}
img.tp{border-radius:0!important;box-shadow:none!important;height:auto;filter:drop-shadow(0 18px 24px rgba(13,42,85,.18))}
/* dark video-bg sections: headings white regardless of JS/pin state (mobile had black h2 on navy) */
section.ps:not(.lt) h2,section.ps:not(.lt)>.w>.ey,section.ps:not(.lt) .more a{color:#fff}
section.ps:not(.lt)>.w>.ey:after{background:#9cc4ee}
section.ps:not(.lt) .p4>div{background:rgba(255,255,255,.96);border-radius:12px;color:#141a26}
/* pm (TOPWHEEL dark): no half-transparent bordered box behind text */
.home .pm .w>div:not(.dev),.home .pm.stk .w>div:not(.dev){background:none!important;border:0!important;box-shadow:none!important;border-radius:0!important;text-shadow:0 2px 14px rgba(5,16,38,.55)}
.home .pm.stk .w>div:not(.dev){background:radial-gradient(ellipse at 30% 60%,rgba(7,22,48,.55),rgba(7,22,48,0) 72%)!important}
/* === sweep14 11:55 === */
/* 1 contact cards: dark title on white card */
.hero .ctc a b,.hero .ctc.v a b{color:#0b2a55!important}
/* 2 work-* chips: readable text */
.hero.cs .chips span{color:#0b2a55!important}
/* 3 home pm 1280: text above mockup, mockup narrower */
@media(min-width:1000px){.home .pm.stk .w>.dev{width:min(700px,56%)!important;margin-left:0!important;z-index:1}.home .pm.stk .w>div:not(.dev){z-index:3}}
/* 8 footer tap targets */
footer .fl a{display:inline-flex;align-items:center;min-height:44px;min-width:44px;padding:0 6px}
footer span a{display:inline-flex;align-items:center;min-height:44px}
/* 9,10 small text >=12px */
.hero small,.lp small{font-size:12px!important}
.sec small,.pc small,.prc small{font-size:12px!important}
small{font-size:max(12px,.75em)}
/* 11 ba link tap */
.ba a.lk,a.lk{display:inline-flex;align-items:center;min-height:44px}
/* 12 home chk cards: no translucent box, divider lines only */
.home .chk .ck4 li,.home .chk li{background:none!important;border:0!important;border-top:1px solid rgba(255,255,255,.18)!important;border-radius:0!important;box-shadow:none!important;backdrop-filter:none!important}
.home .chk .ck4 li:hover{transform:none;box-shadow:none}
/* 13 ba outlined deco text off */
.ba:before{display:none!important}
/* 14 vals single heading */
.vals .w>h2.vl{grid-column:1/-1;font-size:22px;margin:0 0 4px}
.vals.cp .w>div p{display:block!important;font-size:15px;margin:4px 0 0}
@media(min-width:1000px){.home .pm:not(.stk) .w{display:grid!important;grid-template-columns:1.15fr .85fr!important;gap:48px!important;align-items:center}.home .pm:not(.stk) .w>.dev{width:100%!important;max-width:100%!important;margin:0!important;z-index:1}.home .pm .w>div:not(.dev){position:relative;z-index:3}}
@supports (height:100lvh){.pin>.stk{height:100lvh}}
/* iOS 27 scroll anchoring off: sticky hero + toolbar resize made Safari shift scroll ~70-110px at top (coder 11/4 13:5x) */
html,body{overflow-anchor:none}
/* touch: hero is a normal section, no scroll-linked motion (entrance .ld / h1 mask excluded) (coder 11/4 14:0x) */
/* contact block: clean white card, calm grid behind */
.cf .w>div{background:#fff!important;border:1px solid #e3e9f1;border-radius:16px!important;box-shadow:0 24px 48px -28px rgba(13,42,85,.28),0 2px 6px rgba(13,42,85,.04)}
.cf .dp .gp,.cf .dp .g{opacity:.35}

/* designer 11/4 12:2x */
section.hero .x-ar{color:#fff}
section.hero .x-c2 .x-pl{background:#2f6fd6}
.x-c1 .x-pl{background:#4b5563}
section.hero .x-pl{font-size:11px}
@media(min-width:768px){section small{font-size:13px}}
/* phones (pointer:coarse): pin sections (hero, pm/show, ba/band, ps/process) - static bg (poster, no video, no drift), compositor-only foreground, no blur/shadow */
@media (pointer:coarse){.home .vbg,.home .vbg video{transform:none!important;filter:none!important;-webkit-mask-image:none!important;mask-image:none!important;animation:none!important;will-change:auto!important}
.home .vbg video{display:block;width:100%;height:100%;object-fit:cover}
.home .dp>*,.home .dp .gp i{animation:none!important;transform:none}
.home .dp .gp i{transform:rotateX(64deg)!important;-webkit-mask-image:none;mask-image:none;opacity:.6}
.home .pin .stk{perspective:none}
.home .pm .dev,.home .pm .w>div:not(.dev),.home .ps .p4,.home section.ba h2 .ln,.home .hero .w>div:first-child,.home .hero .lp{will-change:transform,opacity}
.home .pin *,.home section.ba *{box-shadow:none!important;text-shadow:none!important;filter:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}}

/* touch: IO motion (no pins/sticky), fixed header, PROCESS swipe row */
@media (pointer:coarse){.home .pin{height:auto!important;position:static!important}.home .pin>.stk,.home .stk{position:relative!important;top:auto!important;height:auto!important;min-height:0}
.home .hero{min-height:calc(100svh - 62px)}
header.r7h{position:fixed!important;top:0;left:0;right:0;width:100%}body{padding-top:62px}
.js-io .c1io{opacity:0;transform:translate3d(0,56px,0);transition:transform .8s cubic-bezier(.16,1,.3,1) var(--iod,0s),opacity .8s ease var(--iod,0s);will-change:transform,opacity}
.js-io .c1io.c1in{opacity:1;transform:translate3d(0,0,0)}
.js-io .pm .dev.c1io{transform:translate3d(0,40px,0) scale(.88)}.js-io .pm .dev.c1io.c1in{transform:translate3d(0,0,0) scale(1)}
.home .ps .p4{display:flex!important;width:auto!important;max-width:100%!important;flex-wrap:nowrap;grid-template-columns:none;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;gap:14px;transform:none!important;scrollbar-width:none;padding-bottom:6px}
.home .ps .p4::-webkit-scrollbar{display:none}
.home .ps .p4>div{flex:0 0 82%;scroll-snap-align:start;min-width:0}}
@media (pointer:coarse) and (min-width:761px){body{padding-top:90px}.home .hero{min-height:calc(100svh - 90px)}}
@media (pointer:coarse) and (prefers-reduced-motion:reduce){.js-io .c1io{opacity:1!important;transform:none!important;transition:none!important}}

/* PC layout fix 11/4 15:2x (desktop mouse only; phones/touch untouched) */
@media (min-width:1025px) and (hover:hover) and (pointer:fine){
.home .pin>.stk.hero{justify-content:center;padding-bottom:90px}
.home .hero .w{padding-top:0;padding-bottom:0;align-items:center;width:100%}
.home .pin .pm .w{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:56px;align-items:center;margin:0 auto;padding-top:90px;padding-bottom:0}
.home .pin .pm.stk .w>.dev{width:100%!important;max-width:720px!important;justify-self:center;transform-origin:50% 50%}
.home .og a .bw{display:block}
footer{padding-bottom:84px}
.home .pm .chips span{white-space:nowrap}
}
