/* Scoped to the activity block in both editorial and legacy homepages. */
.kha-section{--kha-navy:var(--khe-navy,#12344b);--kha-paper:var(--khe-paper,#fbf9f4);--kha-gold:var(--khe-gold,#a68950);position:relative;padding:56px 0 60px;background:var(--kha-paper);color:var(--kha-navy);font-family:var(--kh-body-font,"Noto Sans TC","Microsoft JhengHei",sans-serif);font-size:16px;line-height:1.8;text-align:left}
.kha-section,.kha-section *{box-sizing:border-box}
.kha-section .kha-container{width:min(1200px,calc(100% - 96px));margin-inline:auto}
.kha-section .kha-header{margin:0 0 26px;padding-left:18px;border-left:3px solid var(--kha-gold)}
.kha-section .kha-header h2{font-family:var(--kh-title-font,"Noto Serif TC","PMingLiU",serif);font-weight:700;font-size:clamp(26px,2.4vw,34px);line-height:1.5;letter-spacing:.035em;color:var(--kha-navy);margin:0;padding:0}
.kha-section .kha-header p{margin:12px 0 0;max-width:840px;font-size:16px;line-height:1.9;color:#526470;white-space:pre-line;overflow-wrap:anywhere}
.kha-section .kha-banner{display:block;margin:0 0 26px;overflow:hidden;border:1px solid var(--kha-gold);border-radius:10px;background:#fff;box-shadow:0 7px 24px #12344b08}
.kha-section .kha-banner img,.kha-section img.kha-banner{display:block;width:100%;max-width:100%;height:auto;object-fit:contain;object-position:center;margin:0;border:0;border-radius:0;box-shadow:none}
.kha-section img.kha-banner{margin:0 0 26px;border:1px solid var(--kha-gold);border-radius:10px}
.kha-section .kha-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch;margin:0;padding:0;list-style:none}
.kha-section .kha-card{min-width:0;display:flex;flex-direction:column;align-items:flex-start;position:relative;padding:26px 25px 24px;background:#fff;border:1px solid #a6895059;border-top:3px solid var(--kha-gold);border-radius:10px;box-shadow:0 7px 24px #12344b07;margin:0;overflow-wrap:anywhere}
.kha-section .kha-badge{display:inline-flex;align-items:center;align-self:flex-start;max-width:100%;font-size:12px;font-weight:600;letter-spacing:.04em;line-height:1.7;color:#70582c;background:#f5efdf;padding:4px 10px;border-radius:4px;margin:0 0 14px}
.kha-section .kha-title{font-family:var(--kh-title-font,"Noto Serif TC","PMingLiU",serif);font-size:23px;font-weight:700;letter-spacing:.015em;line-height:1.55;color:var(--kha-navy);margin:0 0 13px;padding:0;max-width:100%;overflow-wrap:anywhere}
.kha-section .kha-description{font-size:15px;font-weight:400;line-height:1.9;color:#576874;margin:0 0 23px;white-space:pre-line;max-width:100%;overflow-wrap:anywhere}
.kha-section .kha-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;align-self:stretch;min-height:48px;padding:11px 17px;margin-top:auto;border:1px solid var(--kha-navy);border-radius:5px;background:var(--kha-navy);color:#fff;font:600 15px/1.6 var(--kh-body-font,"Noto Sans TC","Microsoft JhengHei",sans-serif);text-decoration:none;text-align:center;max-width:100%;white-space:normal;overflow-wrap:anywhere;cursor:pointer;transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease}
.kha-section .kha-button>[aria-hidden=true]{flex-shrink:0}
.kha-section .kha-button:visited{color:#fff}
.kha-section .kha-button:hover{color:#fff;background:#244d66;border-color:#244d66;box-shadow:0 4px 12px #12344b1c;text-decoration:none}
.kha-section .kha-button:focus-visible{outline:3px solid #227a9c;outline-offset:4px}
.kha-section .kha-note{font-size:12px;font-weight:400;line-height:1.75;color:#677680;margin:12px 0 0;max-width:100%;overflow-wrap:anywhere}
.kha-section .kha-note a{color:var(--kha-navy);text-decoration:underline;text-underline-offset:3px}
.kha-section .kha-note a:focus-visible{outline:3px solid #227a9c;outline-offset:3px}
.kha-section [hidden]{display:none!important}
@media(max-width:1199px){
 .kha-section .kha-container{width:calc(100% - 64px)}
 .kha-section .kha-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
}
@media(max-width:767px){
 .kha-section{padding:35px 0 40px}
 .kha-section .kha-container{width:calc(100% - 40px)}
 .kha-section .kha-header{padding-left:14px;margin-bottom:21px}
 .kha-section .kha-header h2{font-size:26px}
 .kha-section .kha-header p{font-size:15px;margin-top:10px}
 .kha-section .kha-banner,.kha-section img.kha-banner{margin-bottom:20px;border-radius:7px}
 .kha-section .kha-grid{grid-template-columns:minmax(0,1fr);gap:17px}
 .kha-section .kha-card{padding:23px 21px 22px}
 .kha-section .kha-title{font-size:22px}
 .kha-section .kha-description{margin-bottom:21px}
}
@media(prefers-reduced-motion:reduce){.kha-section .kha-button{transition:none}}
