/* ===== GEO home modules (auto-generated) ===== */
.geo-h1-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.geo-sec{width:90%;max-width:1600px;margin:0 auto;padding:56px 0;box-sizing:border-box;font-family:Arial,"Microsoft JhengHei","PingFang TC",sans-serif;color:#5c5c5c;line-height:1.9}
.geo-sec--alt{width:100%;max-width:none;background:#f5f8fc;padding:56px 0}
.geo-sec--alt>.geo-wrap{width:90%;max-width:1600px;margin:0 auto}
.geo-sec *,.geo-sec--alt *{box-sizing:border-box}
.geo-h2{font-size:30px;line-height:1.5;color:#00479d;font-weight:700;margin:0 0 14px;text-align:center;letter-spacing:.5px}
.geo-h2--left{text-align:left}
.geo-h2::after{content:"";display:block;width:64px;height:3px;background:#00479d;margin:16px auto 0;border-radius:2px}
.geo-h2--left::after{margin-left:0}
.geo-sub{font-size:16px;color:#7d7d7d;text-align:center;max-width:1000px;margin:0 auto 34px}
.geo-sub--left{text-align:left;margin-left:0}
.geo-grid{display:grid;gap:22px}
.geo-grid--3{grid-template-columns:repeat(3,1fr)}
.geo-grid--5{grid-template-columns:repeat(3,1fr)}
.geo-grid--2{grid-template-columns:1.15fr 1fr;align-items:start}
.geo-card{position:relative;background:#fff;border:1px solid #e6ecf5;border-radius:10px;padding:26px 24px 24px;transition:box-shadow .25s ease,transform .25s ease;display:flex;flex-direction:column}
.geo-card:hover{box-shadow:0 12px 30px rgba(0,71,157,.12);transform:translateY(-3px)}
.geo-card--flat:hover{box-shadow:0 12px 30px rgba(0,71,157,.12);transform:none}
.geo-badge{display:inline-block;font-size:13px;font-weight:700;color:#00479d;background:#e8f0fb;border-radius:20px;padding:3px 12px;margin-bottom:12px;align-self:flex-start;letter-spacing:1px}
.geo-h3{font-size:19px;line-height:1.6;color:#1c3f7c;font-weight:700;margin:0 0 10px}
.geo-h3--center{text-align:center}
.geo-card p{margin:0 0 10px;font-size:15px;color:#5c5c5c}
.geo-card p:last-child{margin-bottom:0}
.geo-link{margin-top:auto;padding-top:12px;font-size:14px;color:#00479d;text-decoration:none;font-weight:700;border-top:1px dashed #dde6f3}
.geo-link:hover{color:#0a63c9;text-decoration:underline}
.geo-ico{width:44px;height:44px;border-radius:10px;background:#e8f0fb;color:#00479d;display:flex;align-items:center;justify-content:center;margin-bottom:14px}
.geo-ico svg{width:24px;height:24px;fill:currentColor}
.geo-list{margin:0;padding:0;list-style:none}
.geo-list li{position:relative;padding-left:18px;margin-bottom:8px;font-size:14px;color:#5c5c5c}
.geo-list li::before{content:"";position:absolute;left:0;top:11px;width:7px;height:7px;background:#00479d;border-radius:50%}
.geo-video{margin:0;border-radius:10px;overflow:hidden;border:1px solid #e6ecf5;background:#000}
.geo-video video{display:block;width:100%;height:auto;max-height:420px;background:#000}
.geo-video figcaption{background:#fff;padding:12px 16px;font-size:14px;color:#7d7d7d}
.geo-shots{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:26px}
.geo-shots img{width:100%;height:170px;object-fit:cover;border-radius:8px;display:block;border:1px solid #e6ecf5}
.geo-dl{margin:12px 0 0;font-size:14px}
.geo-dl div{display:flex;gap:10px;padding:7px 0;border-top:1px dashed #e6ecf5}
.geo-dl dt{flex:0 0 84px;margin:0;color:#00479d;font-weight:700}
.geo-dl dd{margin:0;flex:1;color:#5c5c5c}
.geo-faq{max-width:1100px;margin:0 auto}
.geo-faq details{background:#fff;border:1px solid #e6ecf5;border-radius:8px;margin-bottom:12px;padding:0 20px}
.geo-faq summary{list-style:none;cursor:pointer;position:relative;padding:16px 34px 16px 0;font-size:16px;font-weight:700;color:#1c3f7c}
.geo-faq summary::-webkit-details-marker{display:none}
.geo-faq summary::after{content:"+";position:absolute;right:4px;top:14px;font-size:22px;font-weight:400;color:#00479d;line-height:1}
.geo-faq details[open] summary::after{content:"\2212"}
.geo-faq details[open] summary{border-bottom:1px dashed #e6ecf5}
.geo-faq .geo-ans{padding:14px 0 18px;font-size:15px;color:#5c5c5c}
.geo-faq .geo-ans p{margin:0}
.geo-note{font-size:13px;color:#9a9a9a;margin-top:18px;text-align:center}
@media only screen and (max-width:1200px){
.geo-grid--5{grid-template-columns:repeat(2,1fr)}
.geo-grid--2{grid-template-columns:1fr}
.geo-shots{grid-template-columns:repeat(2,1fr)}
}
@media only screen and (max-width:768px){
.geo-sec{padding:38px 0}
.geo-h2{font-size:22px}
.geo-sub{font-size:15px;margin-bottom:24px}
.geo-grid--3,.geo-grid--5{grid-template-columns:1fr}
.geo-card{padding:20px 18px}
.geo-shots img{height:130px}
.geo-video video{max-height:none}
.geo-dl div{flex-direction:column;gap:2px}
.geo-dl dt{flex:none}
}
