.hero h1 .accent{color:#7db9ec}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.hero .btn-primary{background:var(--orange);color:#fff;box-shadow:0 12px 30px rgba(232,101,79,.35)}
.hero .btn-primary:hover{transform:translateY(-3px);box-shadow:0 18px 38px rgba(232,101,79,.45)}
.hero .btn-ghost{border:1px solid rgba(255,255,255,.4);color:#fff}
.hero .btn-ghost:hover{background:rgba(255,255,255,.1)}
.sec-head .en{font-family:var(--latin);font-weight:700;font-size:14px;letter-spacing:.18em;color:var(--blue);display:block;margin-bottom:12px}
@media (max-width:860px){
.flow{grid-template-columns:1fr 1fr}
}
@media (max-width:520px){
.flow{grid-template-columns:1fr}
}
.fl:not(:last-child)::after{content:"";position:absolute;top:32px;left:50%;width:100%;height:2px;background:linear-gradient(90deg,var(--blue),rgba(26,109,196,.25));z-index:1}
.midcta::before{content:"";position:absolute;inset:0;background:radial-gradient(600px 320px at 50% 0%,rgba(47,143,224,.3),transparent 60%)}
.midcta-inner{position:relative;z-index:2}
.midcta .btn:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(0,0,0,.25)}
h1 .ln{display:inline-block}
@media (max-width:768px){
.flow{grid-template-columns:1fr !important;gap:14px}
.fl{padding:0;margin-bottom:14px}
.fl:not(:last-child)::after{display:none !important}
}
.aicols{padding:44px 0 30px;background:#f7fafd}
.aicols .wrap{max-width:1160px;margin:0 auto;padding:0 20px}
.aicols h2{font-size:22px;font-weight:900;color:#0a2540;text-align:center;margin:0 0 22px}
.aicols-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:10px 18px}
.aicols-grid a{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid #e1ebf5;border-radius:12px;padding:9px 14px 9px 9px;font-size:14px;font-weight:700;color:#0a2540;text-decoration:none;line-height:1.5;transition:border-color .15s,box-shadow .15s}
.aicols-grid a:hover{border-color:#1a6dc4;box-shadow:0 4px 12px rgba(26,109,196,.10)}
.aicols-grid a .thumb{width:66px;height:44px;object-fit:cover;border-radius:8px;flex:0 0 auto;background:#eef4fa}
.aicols-grid a .t{flex:1 1 auto}
.aicols-grid a::after{content:"→";color:#1a6dc4;flex:0 0 auto}
.aicols .list-link{text-align:center;margin:20px 0 0}
.aicols .list-link a{font-size:14px;font-weight:700;color:#1a6dc4;text-decoration:none;margin:0 12px}
.aicols .list-link a:hover{text-decoration:underline}
@media (max-width:760px){
.aicols{padding:32px 0 24px}
.aicols h2{font-size:19px}
.aicols-grid{grid-template-columns:1fr}
}
.crumb{background:var(--bg);border-bottom:1px solid var(--line);padding:12px 0;font-size:13.5px;color:var(--gray)}
.hero{background:linear-gradient(120deg,#0a2540,#143a63 60%,#1a6dc4);color:#fff;position:relative;overflow:hidden;padding:34px 0 36px}
.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(720px 420px at 80% 16%,rgba(47,143,224,.28),transparent 62%)}
.hero-inner{position:relative;z-index:2;max-width:860px}
.hero .eyebrow{display:inline-block;font-family:var(--latin);font-weight:700;font-size:13px;letter-spacing:.14em;color:#fff;border:1px solid rgba(255,255,255,.45);padding:5px 14px;border-radius:99px;margin-bottom:12px}
.hero h1{font-family:var(--serif);font-weight:800;font-size:48px;line-height:1.3;margin-bottom:12px}
.hero h1 .accent{color:#ffd34f}
.hero .lead{font-size:clamp(14px,1.3vw,15px);color:rgba(255,255,255,.92);line-height:1.7;max-width:720px;margin-bottom:18px}
.hero .btn{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-weight:700;font-size:15.5px;padding:12px 28px;border-radius:99px;transition:.3s}
section{padding:52px 0}
.sec-head{text-align:center;margin-bottom:32px}
.sec-head h2{font-family:var(--serif);font-weight:800;font-size:clamp(23px,3.2vw,32px);line-height:1.5;color:var(--navy)}
.sec-head p{margin-top:14px;color:var(--ink);font-size:17px;max-width:700px;margin-left:auto;margin-right:auto;line-height:1.85}
.flow{display:grid;grid-template-columns:repeat(5,1fr);gap:0;position:relative}
.fl{position:relative;padding:0 14px;text-align:center}
.fl .circle{width:64px;height:64px;border-radius:50%;background:#fff;border:2px solid var(--blue);color:var(--blue);font-family:var(--latin);font-weight:700;font-size:20px;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;position:relative;z-index:2}
@media (max-width:860px){
.fl:not(:last-child)::after{display:none}
.fl{margin-bottom:26px}
}
.fl h4{font-size:16px;font-weight:700;color:var(--navy);margin-bottom:8px}
.fl p{font-size:13.5px;color:var(--gray);margin:0;line-height:1.8}
.midcta{background:linear-gradient(160deg,var(--blue),var(--navy));color:#fff;text-align:center;position:relative;overflow:hidden;padding:84px 0}
.midcta h2{font-family:var(--serif);font-weight:800;font-size:clamp(23px,3.6vw,36px);line-height:1.5;margin-bottom:16px}
.midcta p{color:rgba(255,255,255,.88);font-size:15.5px;max-width:600px;margin:0 auto 32px;line-height:2}
.midcta .btn{display:inline-flex;align-items:center;gap:8px;text-decoration:none;font-weight:700;font-size:16px;padding:17px 40px;border-radius:99px;background:#fff;color:var(--navy);transition:.3s}
@media (max-width:768px){
.flow{grid-template-columns:1fr !important;gap:14px}
.fl{padding:0;margin-bottom:14px}
.fl:not(:last-child)::after{display:none !important}
}
#ai-menu{padding:66px 0}
#ai-menu .aicat-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin:0 auto 44px;max-width:880px}
#ai-menu .aicat-nav a{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1.5px solid #cdd9e5;border-radius:999px;padding:9px 18px 9px 12px;font-size:14.5px;font-weight:700;color:var(--navy);text-decoration:none;transition:.2s;line-height:1}
#ai-menu .aicat-nav a:hover{border-color:var(--blue);background:var(--blue-pale);transform:translateY(-2px)}
#ai-menu .aicat-nav .ci{font-family:var(--latin);font-weight:800;font-size:12px;letter-spacing:.02em;color:#fff;background:linear-gradient(135deg,#1a6dc4,#2f8fe0);width:24px;height:24px;border-radius:7px;display:flex;align-items:center;justify-content:center}
#ai-menu .aicat{scroll-margin-top:90px;margin-top:40px}
#ai-menu .aicat:first-of-type{margin-top:0}
#ai-menu .aicat-head{display:flex;align-items:center;gap:16px;padding:0 0 16px;margin-bottom:22px;border-bottom:2px solid var(--blue-pale)}
#ai-menu .aicat-head .acn{flex-shrink:0;font-family:var(--latin);font-weight:800;font-size:20px;color:#fff;width:46px;height:46px;border-radius:13px;background:linear-gradient(135deg,#1a6dc4,#2f8fe0);display:flex;align-items:center;justify-content:center;letter-spacing:.02em}
#ai-menu .aicat-head h3{font-family:var(--serif);font-weight:800;font-size:21px;color:var(--navy);margin:0;line-height:1.3}
#ai-menu .aicat-head p{font-size:14.5px;color:var(--gray);margin:3px 0 0;line-height:1.5}
#ai-menu .aimenu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
#ai-menu .aimenu{position:relative;background:#fff;border:1.5px solid #dce5ee;border-radius:14px;padding:20px 22px;transition:.3s;overflow:hidden}
#ai-menu .aimenu::before{content:"";position:absolute;left:0;top:0;width:4px;height:100%;background:linear-gradient(180deg,#1a6dc4,#e8a33d);opacity:0;transition:.3s}
#ai-menu .aimenu:hover{transform:translateY(-4px);border-color:var(--blue);box-shadow:0 14px 34px rgba(10,37,64,.12)}
#ai-menu .aimenu:hover::before{opacity:.9}
#ai-menu .aimenu h4{font-family:var(--serif);font-weight:800;font-size:16.5px;color:var(--navy);margin:0 0 10px;line-height:1.4;display:flex;align-items:baseline;gap:8px}
#ai-menu .aimenu h4::before{content:"AI";flex-shrink:0;font-family:var(--latin);font-weight:700;font-size:11px;letter-spacing:.04em;color:var(--blue);background:var(--blue-pale);border-radius:5px;padding:3px 6px;line-height:1;transform:translateY(-1px)}
#ai-menu .aimenu p{font-size:14.5px;color:var(--ink);line-height:1.8;margin:0}
@media (max-width:980px){
#ai-menu .aimenu-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:768px){
#ai-menu{padding:46px 0}
#ai-menu .aicat-nav{margin-bottom:32px;gap:8px}
#ai-menu .aicat-nav a{font-size:13px;padding:8px 14px 8px 10px}
#ai-menu .aicat-head{gap:12px}
#ai-menu .aicat-head .acn{width:40px;height:40px;font-size:17px}
#ai-menu .aicat-head h3{font-size:18px}
#ai-menu .aimenu-grid{grid-template-columns:1fr;gap:12px}
#ai-menu .aimenu{padding:18px 18px}
}
@media (max-width:640px){
.hero h1{font-size:clamp(26px,7vw,34px) !important;line-height:1.38}
}
.hero-visual img{width:100%;height:auto;display:block}
.lp-cv{background:#12283f;padding:34px 0}
.lp-cv .wrap{max-width:1080px;margin:0 auto;padding:0 20px;text-align:center}
.lp-cv .cvb-t{color:#fff;font-size:20px;font-weight:800;margin:0 0 6px}
.lp-cv .cvb-s{color:#c6d4e2;font-size:13.5px;line-height:1.8;margin:0 0 16px}
.lp-cv .cvb-btns{display:flex;gap:16px;justify-content:center;align-items:center;flex-wrap:wrap}
.lp-cv .cvb-btn{display:inline-flex;align-items:center;justify-content:center;background:#ffb547;color:#111;font-weight:800;font-size:15px;padding:13px 30px;border-radius:999px;text-decoration:none}
.lp-cv .cvb-btn:hover{opacity:.9}
.lp-voice{background:#f4f8fc;padding:56px 0}
.lp-voice .wrap{max-width:1080px;margin:0 auto;padding:0 20px}
.lp-voice .lpv-h{text-align:center;font-size:26px;font-weight:800;color:#12283f;margin:0 0 8px}
.lp-voice .lpv-lead{text-align:center;font-size:13.5px;color:#5c6b7a;margin:0 0 26px}
.lp-voice .lpv-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.lp-voice .lpv-card{background:#fff;border:1px solid #dde7f0;border-radius:14px;padding:22px 24px}
.lp-voice .lpv-head{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.lp-voice .lpv-avatar{flex:0 0 auto;width:40px;height:40px;border-radius:50%;background:#eaf3fb;display:flex;align-items:center;justify-content:center}
.lp-voice .lpv-who{font-size:12px;color:#5c6b7a;line-height:1.5}
.lp-voice .lpv-who b{display:block;font-size:13.5px;color:#12283f}
.lp-voice .lpv-quote{font-size:14px;line-height:1.9;color:#33414e;margin:0}
.lp-voice .lpv-more{text-align:center;margin:22px 0 0}
.lp-voice .lpv-more a{color:#1a6dc4;font-weight:700;font-size:14px;text-decoration:none}
.lp-voice .lpv-more a:hover{text-decoration:underline}
@media (max-width:880px){
.lp-voice .lpv-grid{grid-template-columns:1fr}
}
@keyframes clients-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.lpv-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block}
.natcli{background:#fff;padding:32px 20px 6px}
.natcli .in{max-width:1000px;margin:0 auto}
.natcli h2{text-align:center;font-size:clamp(13.5px,1.5vw,16px);font-weight:700;color:#46535f;margin:0 0 20px;line-height:1.7}
.natcli .row{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:14px 26px}
.natcli .row img{height:44px;width:auto;object-fit:contain}
@media (max-width:640px){
.natcli{padding:22px 16px 4px}
.natcli .row{gap:10px 16px}
.natcli .row img{height:32px}
}
.hero.hero--light{background:#f5f9fd;color:var(--ink);position:relative;overflow:hidden;padding:44px 0 22px}
.hero.hero--light::before{content:"";position:absolute;right:-150px;top:-180px;width:440px;height:440px;border-radius:50%;background:#e2effa}
.hero.hero--light::after{content:"";position:absolute;left:-110px;bottom:-170px;width:300px;height:300px;border-radius:50%;background:#eaf3fb}
.hero.hero--light .hero-inner{max-width:1100px;display:grid;grid-template-columns:1.08fr .92fr;gap:40px;align-items:center;position:relative;z-index:2}
.hero.hero--light .eyebrow{display:inline-flex;align-items:center;gap:10px;border:0;padding:0;border-radius:0;color:var(--blue);font-family:var(--latin);font-weight:700;font-size:13px;letter-spacing:.16em;margin-bottom:14px}
.hero.hero--light .eyebrow::before{content:"";display:inline-block;width:30px;height:2px;background:var(--blue)}
.hero.hero--light h1{color:#12283f}
.hero.hero--light h1 .accent{color:var(--blue)}
.hero.hero--light .lead{color:#46535f}
.hero.hero--light .btn-ghost{border:1.5px solid #9fb6cc;color:#12283f;background:#fff}
.hero.hero--light .btn-ghost:hover{background:#eef5fb;border-color:var(--blue);color:var(--blue)}
.hero--light .hero-visual{max-width:400px;margin-left:auto;width:100%}
.hero--light .hero-visual svg{width:100%;height:auto;display:block}
.hero--light .hv-caption{display:flex;align-items:center;justify-content:center;gap:13px;font-size:15.5px;font-weight:700;color:#12283f;letter-spacing:.03em;margin-top:14px;line-height:1.5;text-align:center}
.hero--light .hv-caption::before,.hero--light .hv-caption::after{content:"";width:3px;height:21px;background:linear-gradient(180deg,var(--blue) 55%,#ffd34f 55%);border-radius:2px;flex-shrink:0}
.hero--light .hv-caption::before{transform:rotate(-30deg)}
.hero--light .hv-caption::after{transform:rotate(30deg)}
@media (max-width:880px){
.hero.hero--light .hero-inner{grid-template-columns:1fr;gap:0}
.hero--light .hero-visual{display:none}
}
@media (max-width:640px){
.hero.hero--light{padding:34px 0 22px}
.hero--light .hv-caption{font-size:14px;gap:11px}
.hero--light .hv-caption::before,.hero--light .hv-caption::after{height:18px}
}
.hero.hero--light{text-align:left}
.hero.hero--light .hero-copy>p{color:#46535f;margin:0 0 18px;max-width:none}
.hero.hero--light+section,
.sol-hero.hero--light+section,
.ct-hero.hero--light+.ct-wrap,
.hero.hero--light+.wk-wrap{padding-top:50px !important}
