#sec-hero{position:relative;background:url("images/bg-world-map.webp") top center;background-size:cover;padding:240px 0 220px;margin:-72px 0 0;color:#fff}
#sec-hero .row{display:flex;align-items:start;gap:48px;position:relative;z-index:1}
#sec-hero .cta-group{margin:40px 0 0}
#sec-hero .col-info{width:510px}
#sec-hero .col-info h1{font-size:48px;font-weight:400;line-height:1.2}
#sec-hero .col-info p{font-size:20px;padding-left:15px;margin:8px 0 0}
#sec-hero .col-info p:first-of-type{margin:32px 0 0}
#sec-hero .col-visual{width:610px}
#sec-hero .col-visual picture{width:100%;aspect-ratio:1320 / 866}
#sec-hero .col-visual picture img{width:100%;height:100%;object-fit:cover}
@media (max-width:769px){
    #sec-hero{padding:160px 0 80px;margin:-64px 0 0}
    #sec-hero .row{flex-wrap:wrap}
    #sec-hero .cta-group{justify-content:center}
    #sec-hero .col-info{width:100%;text-align:center}
    #sec-hero .col-info h1{font-size:24px}
    #sec-hero .col-info h1 small{font-size:24px}
    #sec-hero .col-info h1 em{font-size:48px}
    #sec-hero .col-visual{width:100%;max-width:420px;margin:0 auto}
}

#sec-capability .cap-top{display:flex;justify-content:space-between;align-items:center;gap:48px}
#sec-capability .cap-top .col-info{width:700px}
#sec-capability .cap-top .col-info h2{font-size:36px;font-weight:700}
#sec-capability .cap-top .col-info .intro{font-size:22px;font-weight:400;padding-left:15px;margin:8px 0 0}
#sec-capability .cap-top .col-info ul.points{font-size:19px;font-weight:400;margin:24px 0 0;color:rgb(var(--rgb-color-primary))}
#sec-capability .cap-top .col-info ul.points li{display:flex;justify-content:start;align-items:center;gap:4px}
#sec-capability .cap-top .col-info ul.points li+li{margin:8px 0 0}
#sec-capability .cap-top .col-info .cta-group{margin:32px 0 0}
#sec-capability .cap-top .col-info .safe-tip{background-color:#f0f9ff;padding:16px;border-radius:16px;border-left:4px solid #3b82f6;margin:24px 0 0}
#sec-capability .cap-top .col-visual{width:420px;display:flex;justify-content:space-between;align-items:center}
#sec-capability .cap-top .col-visual picture{border-radius:20px;overflow:hidden}
#sec-capability .cap-top .col-visual .vis-left{width:36%}
#sec-capability .cap-top .col-visual .vis-left picture{width:100%}
#sec-capability .cap-top .col-visual .vis-left picture img{width:100%}
#sec-capability .cap-top .col-visual .vis-left picture+picture{margin:24px 0 0}
#sec-capability .cap-top .col-visual .vis-right{width:63%}
#sec-capability .cap-top .col-visual .vis-right picture{width:100%}
#sec-capability .cap-top .col-visual .vis-right picture img{width:100%}
#sec-capability .cap-grid{display:flex;justify-content:space-around;align-items:stretch;flex-wrap:wrap;gap:12px;margin-top:120px}
#sec-capability .cap-grid .cap-card{width:380px;padding:15px;border-radius:20px;overflow:hidden;box-shadow:6px 6px 9px rgba(0,0,0,.2);text-align:center}
#sec-capability .cap-grid .cap-card h3{font-size:18px;font-weight:700;margin:8px 0 0}
#sec-capability .cap-grid .cap-card p{font-size:16px;color:#647589;margin:8px 0 0}
@media (max-width:769px){
    #sec-capability .cap-top{justify-content:center;flex-wrap:wrap}
    #sec-capability .cap-top .col-info h2{font-size:27px}
    #sec-capability .cap-top .col-info .intro{font-size:16px}
    #sec-capability .cap-top .col-info ul.points{font-size:17px}
    #sec-capability .cap-top .col-visual{width:100%;max-width:320px}
}

#sec-overview .ov-head{text-align:center;max-width:900px;margin:0 auto 32px}
#sec-overview .ov-head h2{font-size:34px;font-weight:700;line-height:1.35}
#sec-overview .ov-head .intro{font-size:18px;line-height:1.8;margin:14px 0 0;color:#374151}
#sec-overview .ov-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:24px 0 60px}
#sec-overview .ov-card{position:relative;padding:24px 22px;border-radius:14px;background:#fff;border:1px solid rgba(4,15,66,.08);box-shadow:0 8px 28px rgba(4,15,66,.06);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
#sec-overview .ov-card::before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:3px;border-radius:0 3px 3px 0;background:linear-gradient(180deg,rgb(var(--rgb-color-primary)),#ffd51e);opacity:0;transition:opacity .2s ease}
#sec-overview .ov-card:hover{transform:translateY(-3px);box-shadow:0 16px 40px rgba(4,15,66,.1);border-color:rgba(230,168,0,.35)}
#sec-overview .ov-card:hover::before{opacity:1}
#sec-overview .ov-card h3{font-size:18px;font-weight:600;margin:0 0 12px;line-height:1.4;color:#040f42}
#sec-overview .ov-card p{font-size:15px;line-height:1.75;margin:0;color:#374151}
#sec-overview .ov-card p strong{color:#040f42}
#sec-overview .ov-card a{color:rgb(var(--rgb-color-primary));font-weight:600;text-decoration:underline;text-underline-offset:3px}
#sec-overview .ov-card a:hover{color:#c49200}
#sec-overview .ov-body{max-width:880px;margin:0 auto}
#sec-overview .ov-body h3{font-size:22px;font-weight:600;margin:48px 0 16px;line-height:1.35;color:#040f42}
#sec-overview .ov-body h3:first-of-type{margin-top:8px}
#sec-overview .ov-body p{font-size:16px;line-height:1.85;margin:0 0 16px;color:#2a2e4a}
#sec-overview .ov-body p:last-child{margin-bottom:0}
#sec-overview .ov-body strong{color:#040f42}
#sec-overview .ov-body ul.list-solid{margin:8px 0 0;padding:0;list-style:none}
#sec-overview .ov-body ul.list-solid li{position:relative;padding:14px 16px 14px 48px;margin-bottom:10px;border-radius:10px;background:rgba(255,255,255,.75);border:1px solid rgba(4,15,66,.06);font-size:15px;line-height:1.7;color:#2a2e4a}
#sec-overview .ov-body ul.list-solid li:last-child{margin-bottom:0}
#sec-overview .ov-body ul.list-solid li::before{content:"";position:absolute;left:16px;top:50%;transform:translateY(-50%);width:22px;height:22px;border-radius:50%;background:linear-gradient(135deg,#ffd51e,rgb(var(--rgb-color-primary)));box-shadow:0 2px 8px rgba(230,168,0,.35)}
#sec-overview .ov-body ul.list-solid li::after{content:"\2713";position:absolute;left:21px;top:50%;transform:translateY(-50%);font-size:11px;line-height:1;color:#fff;font-weight:700}
#sec-overview .ov-quote{position:relative;margin:48px auto 0;max-width:880px;padding:22px 22px 22px 24px;border-radius:14px;background:linear-gradient(135deg,rgba(230,168,0,.12),rgba(255,213,30,.08));border:1px solid rgba(230,168,0,.35);font-size:16px;line-height:1.85;color:#2a2e4a;box-shadow:0 10px 32px rgba(230,168,0,.12)}
#sec-overview blockquote.ov-quote{margin-left:auto;margin-right:auto;border:none}
#sec-overview .ov-quote::before{content:"";position:absolute;left:0;top:12px;bottom:12px;width:4px;border-radius:0 4px 4px 0;background:linear-gradient(180deg,rgb(var(--rgb-color-primary)),#ffd51e)}
#sec-overview .ov-quote strong{color:#040f42}
#sec-overview .ov-faq{max-width:880px;margin:48px auto 0}
#sec-overview .ov-faq .faq-item{background:#f0f4f8;border-radius:6px;padding:16px 18px}
#sec-overview .ov-faq .faq-item+.faq-item{margin-top:14px}
#sec-overview .ov-faq .faq-q{font-size:16px;font-weight:600;color:#040f42;border-bottom:1px solid rgba(4,15,66,.08);padding-bottom:12px;margin-bottom:12px;position:relative;padding-right:42px}
#sec-overview .ov-faq .faq-q::after{content:"?";position:absolute;right:0;top:0;width:28px;height:28px;line-height:28px;text-align:center;color:#c6d0db;background:#fff;border-radius:50%;font-size:18px;box-shadow:0 2px 6px rgba(0,0,0,.06)}
#sec-overview .ov-faq .faq-a{font-size:15px;line-height:1.85;color:#2a2e4a}
@media (max-width:992px){
    #sec-overview .ov-columns{grid-template-columns:1fr}
}
@media (max-width:769px){
    #sec-overview .ov-card{padding:20px 18px}
    #sec-overview .ov-body h3{font-size:19px;margin-top:40px}
    #sec-overview .ov-body ul.list-solid li{padding-left:44px}
}

#sec-story{background:#f4f9fc}
#sec-story .story-wrap{display:flex;justify-content:space-around;align-items:center;gap:64px}
#sec-story .story-cell{width:520px;display:flex;justify-content:center;align-items:center;flex-direction:column;gap:8px;text-align:center}
#sec-story .story-cell:nth-of-type(3){flex-direction:column-reverse}
#sec-story .story-cell h3{font-size:36px;font-weight:600;margin:24px 0 0}
#sec-story .story-cell:nth-of-type(3) picture{margin:24px 0 0}
#sec-story .story-cell:nth-of-type(3) h3{margin:0}
#sec-story .story-cell p{font-size:16px;color:#647589;padding:8px 15px}
#sec-story .story-sep{width:1px;align-self:stretch;background:#e5e7eb}
@media (max-width:769px){
    #sec-story .story-wrap{flex-wrap:wrap}
    #sec-story .story-cell h3{font-size:24px}
    #sec-story .story-cell:nth-of-type(3){flex-direction:column}
    #sec-story .story-cell:nth-of-type(3) picture{margin:0}
    #sec-story .story-cell h3{margin:12px 0 0!important}
    #sec-story .story-sep{display:none}
}
