
:root{--bg:#fff;--bg2:#f2f7fa;--ink:#0d2233;--mute:#526675;--line:#d8e3ea;--green:#2f9e1f;--blue:#2b8fc7;--hero:#0d2233;--heroink:#fff;
box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}


html{scroll-padding-top:calc(88px + env(safe-area-inset-top,0px));scroll-behavior:smooth}
*,*::before,*::after{box-sizing:inherit}
body{margin:0;background:var(--bg);color:var(--ink);font:400 1.0625rem/1.65 Montserrat,system-ui,sans-serif}
h1,h2,h3{font-family:Montserrat,"Segoe UI",sans-serif;line-height:1.15;margin:0;letter-spacing:-.02em}
a{color:inherit}
a:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.w{max-width:1100px;margin:0 auto;padding:0 24px}
header{position:sticky;top:env(safe-area-inset-top,0px);z-index:9;background:var(--bg);border-bottom:1px solid var(--line)}
header .w{display:flex;align-items:center;justify-content:space-between;height:84px}
header img{height:56px;display:block}
nav{display:flex;gap:26px;font-weight:500;font-size:.97rem}
nav a{text-decoration:none;color:var(--mute)}nav a:hover{color:var(--ink)}
.hero{background:var(--hero);color:var(--heroink);position:relative;overflow:hidden;padding:104px 0 96px}
.hero>svg{position:absolute;right:-140px;top:50%;width:720px;height:720px;transform:translateY(-50%);opacity:.9}
.hero .in{position:relative;max-width:660px}
.hero h1{font-size:clamp(2.5rem,7vw,4.6rem);font-weight:700}
.hero h1 span{color:var(--green)}
.hero p{font-size:1.2rem;color:#c3d3de;margin:26px 0 36px;max-width:540px}
.btn{display:inline-block;padding:14px 26px;border-radius:6px;font-weight:600;text-decoration:none;font-size:1rem}
.b1{background:var(--green);color:#06210a}.b2{border:1.5px solid #6c8798;color:#fff;margin-left:10px}
.hero .b1{background:#4cc636}
.sec{padding:88px 0}.alt{background:var(--bg2)}
.sec h2{font-size:clamp(1.8rem,4vw,2.5rem);margin-bottom:14px}
.lead{color:var(--mute);max-width:620px;margin:0 0 48px}
.svc{display:grid;grid-template-columns:90px 1fr 1.3fr;gap:28px;padding:34px 0;border-top:1px solid var(--line);align-items:start}
.svc:last-child{border-bottom:1px solid var(--line)}
.ic{width:64px;height:64px;border-radius:14px;background:var(--bg2);display:grid;place-items:center}
.alt .ic{background:var(--bg)}
.ic svg{width:32px;height:32px;stroke:var(--blue);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.svc h3{font-size:1.4rem}
.svc ul{margin:0;padding-left:1.1em;color:var(--mute)}.svc li{margin:3px 0}
.about{display:grid;grid-template-columns:1.4fr 1fr;gap:56px;align-items:start}
.about p{color:var(--mute);margin:0 0 16px}
.facts{border-left:4px solid var(--green);padding-left:24px;display:grid;gap:22px}
.facts b{display:block;font:700 2.2rem/1 Montserrat,sans-serif;color:var(--blue);margin-bottom:4px}
.facts span{color:var(--mute);font-size:.95rem}
.vals{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.vals li{list-style:none;border:1px solid var(--line);border-radius:99px;padding:5px 16px;font-size:.92rem;font-weight:500}
.vals{padding:0}
.wing{display:grid;grid-template-columns:1.3fr 1fr;gap:48px;align-items:center;background:var(--hero);color:var(--heroink);border-radius:16px;padding:48px}
.wing h2{margin-bottom:12px}.wing p{color:#c3d3de;margin:0 0 22px}
.wing ul{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.wing li{padding:12px 14px;border:1px solid #2a4356;border-radius:8px;font-size:.96rem}
.wing .tag{color:#7fd96c;font-weight:600;font-size:.95rem;margin-bottom:8px;display:block}
.contact{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.office{border:1px solid var(--line);border-top:4px solid var(--blue);border-radius:10px;padding:28px;background:var(--bg)}
.office:nth-child(2){border-top-color:var(--green)}
.office h3{font-size:1.25rem;margin-bottom:4px}.office .r{color:var(--mute);font-size:.94rem;margin-bottom:14px}
.office p{margin:6px 0}
.chan{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.chan a{border:1.5px solid var(--line);padding:11px 20px;border-radius:6px;text-decoration:none;font-weight:600;background:var(--bg)}
.chan a:hover{border-color:var(--blue)}
footer{background:var(--hero);color:#a9bdca;padding:40px 0;font-size:.93rem}
footer .w{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:center}
footer img{height:38px;background:#fff;border-radius:6px;padding:4px 8px}
@media(max-width:820px){nav{display:none}.svc,.about,.wing,.contact{grid-template-columns:1fr}.svc{gap:14px}.wing{padding:30px 22px}.hero{padding:72px 0}.hero>svg{right:-300px;opacity:.5}.b2{margin:12px 0 0}}
@media(prefers-reduced-motion:no-preference){.hero>svg path{stroke-dasharray:1200;stroke-dashoffset:1200;animation:d 2.2s .2s ease-out forwards}.hero>svg path:nth-child(2){animation-delay:.5s}.hero>svg path:nth-child(3){animation-delay:.8s}.hero>svg path:nth-child(4){animation-delay:1.1s}}
@keyframes d{to{stroke-dashoffset:0}}
.more{margin-top:14px}.more summary,.q summary{cursor:pointer;font-weight:600;color:var(--blue)}
.more ul{margin-top:8px;padding-left:1.1em}
.faq{display:grid;gap:10px;max-width:820px}.q{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:16px 20px}
.q summary{color:var(--ink);font-size:1.05rem}.q p{margin:10px 0 0;color:var(--mute)}

.hero.sub{padding:64px 0 56px}.crumb{font-size:.92rem;color:#9fb6c5;margin:0 0 14px!important}.crumb a{text-decoration:none}
.hero.sub h1{font-size:clamp(2rem,5vw,3.2rem)}.hero.sub p{margin:18px 0 28px}
.cols{display:grid;grid-template-columns:1.4fr 1fr;gap:56px}.tick{list-style:none;padding:0;margin:18px 0 0}
.tick li{padding:10px 0 10px 30px;border-bottom:1px solid var(--line);position:relative}.tick li::before{content:"";position:absolute;left:4px;top:19px;width:12px;height:7px;border-left:3px solid var(--green);border-bottom:3px solid var(--green);transform:rotate(-45deg)}
.cols h2{font-size:1.5rem}.cols p{color:var(--mute)}.rl a{display:block;padding:6px 0;color:var(--blue);font-weight:600;text-decoration:none}
.gg{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}.gc{border:1px solid var(--line);border-radius:10px;padding:24px;background:var(--bg);text-decoration:none;display:block}
.gc h3{font-size:1.15rem;margin-bottom:8px}.gc p{color:var(--mute);margin:0;font-size:.97rem}
.art{max-width:720px}.art h2{font-size:1.5rem;margin:34px 0 10px}.art p,.art li{color:var(--mute)}
.cta{text-align:center}.cta p{color:var(--mute);margin:0 auto 26px;max-width:520px}
footer .fl{display:flex;flex-wrap:wrap;gap:8px 20px;width:100%}footer .fl a{color:#a9bdca;text-decoration:none}footer .fl a:hover{color:#fff}
@media(max-width:820px){nav{display:flex;gap:14px;font-size:.86rem}header img{height:44px}.cols{grid-template-columns:1fr;gap:30px}}

.svc .more ul{list-style:none;padding:0;margin:12px 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px}
.svc .more li{margin:0;border-radius:8px;border-left:4px solid var(--blue);background:color-mix(in srgb,var(--blue) 12%,var(--bg));color:var(--ink);font-size:.93rem;font-weight:500}
.svc .more li:nth-child(even){border-left-color:var(--green);background:color-mix(in srgb,var(--green) 14%,var(--bg))}
.svc .more li>a{display:block;padding:9px 12px;color:inherit;text-decoration:none}.svc .more li>a:hover{text-decoration:underline}
.svc .more li:not(:has(>a)){padding:9px 12px}

.svc .more{grid-column:1/-1}
.svc .more ul{grid-template-columns:repeat(3,1fr)}
@media(max-width:560px){.svc .more ul{grid-template-columns:1fr}}

:root{--bg:#fff;--bg2:#f4f8fc;--ink:#1c2b3a;--mute:#5a6b7b;--line:#dde6ee;--green:#278a19;--blue:#1e88c7;--hero:#eaf4fb;--heroink:#1c2b3a}
header{box-shadow:0 1px 10px rgba(20,60,90,.07)}
.hero{background:linear-gradient(135deg,#e6f3fc 0%,#fff 75%)}.hero>svg{opacity:.3}
.hero p,.hero .crumb{color:var(--mute)}.hero .b1,.b1{background:#278a19;color:#fff}.b2{border-color:var(--blue);color:var(--blue)}
.wing{background:linear-gradient(135deg,#1e88c7,#156a9d);color:#fff}.wing p{color:#e3f1fa}.wing li{border-color:rgba(255,255,255,.35)}.wing .tag{color:#d4f5cc}.wing .b1{background:#fff;color:#156a9d}
footer{background:var(--bg2);color:var(--mute);border-top:1px solid var(--line)}footer img{background:none;padding:0}footer .fl a{color:var(--mute)}footer .fl a:hover{color:var(--blue)}
.i{width:1.15em;height:1.15em;flex:none;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.btn{display:inline-flex;align-items:center;gap:8px}
.svc .more li>a,.svc .more li:not(:has(>a)){display:flex;align-items:center;gap:10px}.svc .more li .i{color:var(--blue)}.svc .more li:nth-child(even) .i{color:var(--green)}
.office h3,.office p{display:flex;align-items:center;gap:10px}.office h3 .i{color:var(--green)}.office p .i{color:var(--blue)}
.chan a{display:inline-flex;align-items:center;gap:10px}.wing li{display:flex;align-items:center;gap:10px}.rl a{display:flex;align-items:center;gap:8px}
.soc{display:flex;gap:10px}.soc a{width:38px;height:38px;border-radius:50%;background:var(--bg);border:1px solid var(--line);display:grid;place-items:center}
summary{list-style:none}summary::-webkit-details-marker{display:none}summary::after{content:"";width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .2s;flex:none;margin:-3px 0 0 4px}
details[open]>summary::after{transform:rotate(-135deg);margin-top:3px}
.q summary{display:flex;justify-content:space-between;align-items:center;gap:12px}.more summary{display:inline-flex;align-items:center}

:root{--blue:#0047B0;--green:#E03600;--cyan:#00C3FF;--bg2:#f3f7fd;--hero:#e8f1ff;--line:#dbe4f2}
.hero{background:linear-gradient(135deg,#e8f1ff 0%,#fff 75%)}.hero .b1,.b1{background:#E03600;color:#fff}.b2{border-color:var(--blue);color:var(--blue)}
.wing{background:linear-gradient(135deg,#0047B0,#002f85)}.wing .b1{background:#fff;color:#0047B0}.wing .tag{color:#7fdcff}
.top{background:#0047B0;color:#fff;font-size:.85rem}.top .w{display:flex;justify-content:space-between;align-items:center;gap:8px 16px;min-height:42px;flex-wrap:wrap;padding-top:6px;padding-bottom:6px}
.top a{color:#fff;text-decoration:none}.top .i{margin-right:6px;vertical-align:-.2em}.top span{display:flex;gap:6px 20px;flex-wrap:wrap}.top .inq{background:#E03600;padding:5px 16px;border-radius:99px;font-weight:600}
.stats{background:#fff;border-bottom:1px solid var(--line)}.stats .w{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding-top:30px;padding-bottom:30px;text-align:center}
.stats b{display:block;font:800 2.1rem/1 Montserrat,sans-serif;color:var(--blue);margin-bottom:6px}.stats span{color:var(--mute);font-size:.9rem}
.why{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:34px}.why>div{border:1px solid var(--line);border-radius:12px;padding:26px 22px;background:var(--bg)}
.ic2{width:52px;height:52px;border-radius:12px;background:#e8f1ff;display:grid;place-items:center;color:var(--blue);margin-bottom:16px}.ic2 .i{width:26px;height:26px}
.why h3{font-size:1.05rem;margin-bottom:8px}.why p{margin:0;color:var(--mute);font-size:.94rem}
#wing{padding-top:0}.about{grid-template-columns:1fr;max-width:760px}
footer{padding:56px 0 0}footer .w{display:block}.fg{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:36px}
footer h4{margin:0 0 14px;font:700 .95rem Montserrat,sans-serif;color:var(--ink)}footer .fc a,footer .fc p{display:block;color:var(--mute);text-decoration:none;margin:0 0 8px;font-size:.93rem}footer .fc a:hover{color:var(--blue)}
footer .fc .soc{margin-top:14px}.fbar{border-top:1px solid var(--line);margin-top:40px;padding:18px 0;font-size:.88rem;color:var(--mute)}
@media(max-width:820px){.stats .w,.why{grid-template-columns:1fr 1fr}.fg{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.fg,.why{grid-template-columns:1fr}}
footer .fc .soc a{display:grid;place-items:center;margin:0;width:38px;height:38px;color:inherit}footer .fc .soc{align-items:center}
.totop{position:fixed;right:20px;bottom:calc(20px + env(safe-area-inset-bottom,0px));width:48px;height:48px;border-radius:50%;border:0;background:#0047B0;color:#fff;box-shadow:0 6px 18px rgba(0,40,110,.3);display:grid;place-items:center;cursor:pointer;z-index:30;opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .25s,transform .25s,visibility .25s}
.totop.show{opacity:1;visibility:visible;transform:none}.totop:hover{background:#E03600}.totop .i{width:22px;height:22px;transform:rotate(-90deg)}
@media(prefers-reduced-motion:reduce){.totop{transition:none}}
footer .fc a.fsvc{color:#E03600;font-weight:600}footer .fc a.fsvc:hover{color:#0047B0}
