/* Editorial surfaces for the general AI template. */
.tpl-general_ai { --gai-brand:#2563eb; --gai-safe:color-mix(in srgb,var(--gai-brand) 35%,#101b29); --gai-deep:color-mix(in srgb,var(--gai-brand) 30%,#101b29); color:#243343; }
@supports (color:rgb(from red r g b / 1)) { .tpl-general_ai { --gai-brand:rgb(from var(--primary) r g b / 1); } }
.tpl-general_ai .ga-hero { background:linear-gradient(120deg,var(--gai-deep),color-mix(in srgb,var(--gai-brand) 30%,#192c40)); }
.tpl-general_ai .ga-hero h1,.tpl-general_ai .ga-hero h1 em { color:#fff; }
.tpl-general_ai .ga-hero .ga-sub { color:#e4effa; font-size:16px; line-height:1.85; }
.tpl-general_ai .ga-section.soft { background:#f7f8f9; border-color:#e8ebee; }
.tpl-general_ai .ga-head small,.tpl-general_ai .ga-news-card .ga-news-read,.tpl-general_ai .ga-more { color:var(--gai-safe); }
.tpl-general_ai .ga-btn.primary { background:var(--gai-safe); border-color:var(--gai-safe); color:#fff; }
.tpl-general_ai .ga-grid { display:flex; flex-wrap:wrap; gap:20px; }
.tpl-general_ai .ga-grid > .ga-card,.tpl-general_ai .ga-grid > .ga-info { flex:1 1 300px; min-width:0; }
.tpl-general_ai .ga-card { display:flex; flex-direction:column; }
.tpl-general_ai .ga-card .ga-body { flex:1; padding:22px 24px 26px; }
.tpl-general_ai .ga-image { height:210px; padding:20px; background:#f5f8fb; border-bottom:1px solid #e6edf3; }
.tpl-general_ai .ga-image img { width:100%; height:100%; object-fit:contain; }
.tpl-general_ai #advantages .ga-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr)); gap:16px; }
.tpl-general_ai #advantages .ga-grid > .ga-info { min-height:0; }
.tpl-general_ai #advantages .ga-proof { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr)); gap:16px; }
.tpl-general_ai .ga-card h3,.tpl-general_ai .ga-info h3 { font-size:19px; line-height:1.5; overflow-wrap:anywhere; }
.tpl-general_ai .ga-card p,.tpl-general_ai .ga-info p,.tpl-general_ai .ga-about-copy p { font-size:15px; line-height:1.85; color:#506779; font-weight:400; overflow-wrap:anywhere; }
.tpl-general_ai .ga-cta { background:color-mix(in srgb,var(--gai-brand) 5%,#fff); color:#243343; border:1px solid #e0e5e9; }
.tpl-general_ai .ga-cta h2,.tpl-general_ai .ga-cta p { color:#243343; }
.tpl-general_ai .site-footer { background:var(--gai-deep); color:#e0e7ee; }
.tpl-general_ai .site-footer h3,.tpl-general_ai .site-footer summary { color:#fff; }
.tpl-general_ai .site-footer a,.tpl-general_ai .site-footer p,.tpl-general_ai .site-footer li { color:#e0e7ee; font-size:14px; line-height:1.85; }
.tpl-general_ai .ga-footer-directory { border-top:1px solid rgba(255,255,255,.22); padding-top:18px; }
.tpl-general_ai .ga-footer-directory summary { cursor:pointer; font-weight:650; }
.tpl-general_ai .ga-footer-directory .footer-stations { width:100%; padding-left:0; padding-right:0; }
.tpl-general_ai .ga-hero h1 { font-weight: 750; letter-spacing: -.025em; }
.tpl-general_ai .ga-sub { line-height: 1.8; }
.tpl-general_ai .ga-section { padding-top: 76px; padding-bottom: 76px; }
.tpl-general_ai .ga-head h2 { color: #172b45; font-weight: 750; letter-spacing: -.02em; }
.tpl-general_ai .ga-head p { line-height: 1.75; }
.tpl-general_ai .ga-card, .tpl-general_ai .ga-info { border-color: #e2e9f2; box-shadow: 0 6px 24px rgba(24, 48, 78, .045); }
.tpl-general_ai .ga-card p, .tpl-general_ai .ga-info p { line-height: 1.8; }
.tpl-general_ai .ga-news { gap: 18px; }
.tpl-general_ai .ga-news .ga-news-card { display: flex; flex-direction: column; align-items: flex-start; min-width: 0; padding: 24px 26px; border: 1px solid #e2e9f2; border-radius: 14px; background: #fff; box-shadow: 0 6px 24px rgba(24, 48, 78, .045); text-decoration: none; transition: transform .2s, box-shadow .2s, border-color .2s; }
.tpl-general_ai .ga-news a.ga-news-card:hover { transform: translateY(-3px); border-color: #b7ceee; box-shadow: 0 12px 30px rgba(24, 48, 78, .09); }
.tpl-general_ai .ga-news-card small { color: #637b98; font-size: 12px; font-weight: 600; letter-spacing: .03em; }
.tpl-general_ai .ga-news-card strong { display: block; margin-top: 12px; color: #1d304a; font-size: 18px; font-weight: 700; line-height: 1.55; overflow-wrap: anywhere; }
.tpl-general_ai .ga-news-card p { display: -webkit-box; overflow: hidden; -webkit-line-clamp: 3; -webkit-box-orient: vertical; margin: 10px 0 0; color: #607086; font-size: 14px; font-weight: 400; line-height: 1.8; }
.tpl-general_ai .ga-news-card .ga-news-read { margin-top: auto; padding-top: 20px; color: #245caa; font-size: 13px; font-weight: 650; }
.tpl-general_ai .ga-news-more { margin-top: 24px; text-align: center; }
.tpl-general_ai .ga-news-more a { display: inline-flex; gap: 12px; align-items: center; padding: 11px 18px; border: 1px solid #ccd9e9; border-radius: 8px; background: #fff; color: #285b99; font-size: 14px; font-weight: 600; text-decoration: none; }
.tpl-general_ai .ga-news-more a:hover { border-color: #7098ce; }
.tpl-general_ai .ga-archive-header { padding: 62px 0; border-bottom: 1px solid #dce7f3; background: linear-gradient(125deg, #f1f6fc, #e7f0fa); }
.tpl-general_ai .ga-archive-intro { display: flex; justify-content: space-between; align-items: end; gap: 28px; }
.tpl-general_ai .ga-archive-kicker { color: #2c66ad; font-size: 12px; font-weight: 750; letter-spacing: .14em; }
.tpl-general_ai .ga-archive-header h1 { margin: 10px 0; color: #152c48; font-size: clamp(30px, 3vw, 40px); line-height: 1.3; }
.tpl-general_ai .ga-archive-header p { margin: 0; color: #61758d; line-height: 1.7; }
.tpl-general_ai .ga-archive-search { display: flex; width: min(100%, 360px); padding: 5px; border: 1px solid #d8e2ee; border-radius: 10px; background: #fff; }
.tpl-general_ai .ga-archive-search input { flex: 1; min-width: 0; padding: 10px 12px; border: 0; outline: none; font: inherit; }
.tpl-general_ai .ga-archive-search button { padding: 10px 18px; border: 0; border-radius: 7px; background: #245caa; color: #fff; cursor: pointer; }
.tpl-general_ai .ga-archive-section { padding: 48px 0 72px; background: #f7f9fc; }
.tpl-general_ai .ga-archive-wrap { max-width: 1200px; }
.tpl-general_ai .ga-archive-heading { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; margin-bottom: 20px; }
.tpl-general_ai .ga-archive-heading h2 { margin: 0; color: #1d304a; font-size: 21px; }
.tpl-general_ai .ga-archive-heading > span { color: #788ba2; font-size: 13px; }
.tpl-general_ai .ga-archive-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin: 0; padding: 0; list-style: none; }
.tpl-general_ai .ga-archive-card { display: flex; flex-direction: column; height: 100%; padding: 25px 26px; border: 1px solid #e2e9f2; border-radius: 14px; background: #fff; text-decoration: none; transition: border-color .2s, box-shadow .2s; }
.tpl-general_ai .ga-archive-card:hover { border-color: #b7ceee; box-shadow: 0 10px 26px rgba(24, 48, 78, .07); }
.tpl-general_ai .ga-archive-meta { display: flex; gap: 14px; color: #7388a1; font-size: 12px; }
.tpl-general_ai .ga-archive-card h3 { margin: 13px 0 0; color: #1d304a; font-size: 18px; line-height: 1.55; overflow-wrap: anywhere; }
.tpl-general_ai .ga-archive-card p { display: -webkit-box; overflow: hidden; -webkit-line-clamp: 3; -webkit-box-orient: vertical; margin: 10px 0 0; color: #65768b; font-size: 14px; line-height: 1.8; }
.tpl-general_ai .ga-archive-read { margin-top: auto; padding-top: 20px; color: #245caa; font-size: 13px; font-weight: 650; }
.tpl-general_ai .ga-archive-empty { padding: 44px 24px; border: 1px solid #e2e9f2; border-radius: 14px; background: #fff; color: #718096; text-align: center; }
.tpl-general_ai .site-footer { padding-top: 58px; }
.tpl-general_ai .footer-grid { gap: 36px; padding-bottom: 34px; }
.tpl-general_ai .footer-col h3 { margin: 0 0 15px; font-size: 15px; line-height: 1.5; }
.tpl-general_ai .footer-intro, .tpl-general_ai .footer-col li { line-height: 1.8; }
.tpl-general_ai .footer-stations { padding-top: 22px; padding-bottom: 22px; border-top: 1px solid rgba(255,255,255,.1); }
.tpl-general_ai .footer-station-links { display: flex; flex-wrap: wrap; gap: 8px 16px; }
.tpl-general_ai.page-article_detail .article-main { border: 1px solid #e6edf5; }
.tpl-general_ai.page-article_detail .article-body { color: #34445a; }
.tpl-general_ai.page-article_detail .article-body a { color: #245caa; text-decoration: underline; text-underline-offset: 3px; }
.tpl-general_ai a:focus-visible, .tpl-general_ai button:focus-visible, .tpl-general_ai input:focus-visible { outline: 3px solid #80aaf0; outline-offset: 3px; }
@media (max-width: 700px) {
  .tpl-general_ai .ga-news .ga-news-card { padding: 21px; }
  .tpl-general_ai .ga-section { padding-top: 48px; padding-bottom: 48px; }
  .tpl-general_ai .ga-archive-header { padding: 42px 0; }
  .tpl-general_ai .ga-archive-intro { flex-direction: column; align-items: stretch; }
  .tpl-general_ai .ga-archive-search { width: 100%; }
  .tpl-general_ai .ga-archive-section { padding: 32px 0 50px; }
  .tpl-general_ai .ga-archive-list { grid-template-columns: 1fr; }
  .tpl-general_ai .ga-archive-card { padding: 21px; }
  .tpl-general_ai .footer-grid { gap: 26px; }
}
