/* First Light v1.0.2: responsive counter strip, visually compact without hiding text. */
.gctc-wa-public,.gctc-wa-public *{box-sizing:border-box!important}
.gctc-wa-public{
 display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
 align-items:center!important;gap:0!important;
 width:100%!important;max-width:395px!important;min-width:0!important;
 min-height:48px!important;margin:0!important;padding:6px 10px!important;
 border:1px solid rgba(91,126,143,.22)!important;border-radius:13px!important;
 background:rgba(255,255,255,.65)!important;color:#41667c!important;
 backdrop-filter:blur(7px);box-shadow:0 5px 15px rgba(52,88,106,.04);
}
.gctc-wa-public .gctc-wa-public-item{
 display:flex!important;flex-direction:column!important;justify-content:center!important;
 align-items:flex-start!important;gap:2px!important;
 min-width:0!important;min-height:0!important;max-width:100%!important;
 padding:0 9px!important;margin:0!important;border-right:1px solid rgba(91,126,143,.23)!important;
 overflow-wrap:anywhere!important;
}
.gctc-wa-public .gctc-wa-public-item:first-child{padding-left:0!important}
.gctc-wa-public .gctc-wa-public-item:last-child{padding-right:0!important;border-right:0!important}
.gctc-wa-public .gctc-wa-public-item strong{
 display:block!important;width:100%!important;min-width:0!important;
 margin:0!important;padding:0!important;line-height:1.12!important;
 font:800 clamp(15px,1.18vw,20px)/1.12 Arial,"Noto Sans TC",sans-serif!important;
 color:#365c71!important;font-variant-numeric:tabular-nums;
 white-space:normal!important;overflow-wrap:anywhere!important;
}
.gctc-wa-public .gctc-wa-public-item span{
 display:block!important;max-width:100%!important;margin:0!important;
 font:600 clamp(10px,.71vw,12px)/1.25 "Noto Sans TC","Microsoft JhengHei",sans-serif!important;
 color:#657f8c!important;white-space:normal!important;overflow-wrap:anywhere!important;
}
/* Keep counters beside both CTA buttons on desktop, in their existing row. */
@media(min-width:981px){
 .tg-site .tg-copy .tg-actions{display:flex!important;align-items:stretch!important;flex-wrap:wrap!important;gap:clamp(7px,.75vw,12px)!important}
 .tg-site .tg-copy .tg-actions>.tg-button{flex:0 0 auto!important}
 .tg-site .tg-copy .tg-actions>.gctc-wa-public{flex:1 1 290px!important;width:auto!important;min-width:275px!important;max-width:395px!important;align-self:stretch!important}
}
/* Short desktop windows: reduce wasted whitespace, not useful content. */
@media(min-width:981px) and (max-height:900px){
 .tg-site .tg-stage{gap:clamp(7px,1vh,13px)!important;padding-top:clamp(10px,1.5vh,18px)!important;padding-bottom:clamp(9px,1.2vh,15px)!important}
 .tg-site .tg-copy h1{font-size:clamp(37px,3.5vw,57px)!important;line-height:1.12!important}
 .tg-site .tg-copy .tg-eyebrow{margin-bottom:clamp(7px,1vh,11px)!important}
 .tg-site .tg-copy .tg-sub{margin-top:clamp(8px,1.25vh,14px)!important;line-height:1.35!important}
 .tg-site .tg-copy .tg-intro{margin-top:6px!important;line-height:1.5!important}
 .tg-site .tg-copy .tg-actions{margin-top:clamp(9px,1.4vh,15px)!important}
 .tg-site .tg-mentor{max-height:clamp(240px,38vh,325px)!important;padding:clamp(12px,1.2vw,18px)!important}
 .tg-site .tg-path{min-height:100px!important;padding:clamp(8px,.8vw,13px)!important}
 .tg-site .tg-path h2{margin:3px 0!important;font-size:clamp(17px,1.4vw,23px)!important}
 .tg-site .tg-path p{line-height:1.35!important}
 .tg-site .tg-path b{margin-top:4px!important}
}
/* Tablet: counters may wrap to their own row; allow enough height for all content. */
@media(min-width:601px) and (max-width:1200px){
 .tg-site .tg-copy .tg-actions>.gctc-wa-public{flex-basis:100%!important;max-width:460px!important}
}
/* On phones, span both button columns; never squeeze counter labels offscreen. */
@media(max-width:600px){
 .tg-site .tg-copy .tg-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important}
 .tg-site .tg-copy .tg-actions>.tg-button{min-width:0!important;width:100%!important}
 .tg-site .tg-copy .tg-actions>.gctc-wa-public{grid-column:1/-1!important;min-width:0!important;max-width:100%!important;min-height:47px!important;padding:6px 8px!important}
 .tg-site .gctc-wa-public .gctc-wa-public-item{padding:0 6px!important}
 .tg-site .gctc-wa-public .gctc-wa-public-item strong{font-size:clamp(14px,4vw,17px)!important}
 .tg-site .gctc-wa-public .gctc-wa-public-item span{font-size:clamp(9px,2.6vw,11px)!important}
 /* The original mobile homepage uses fixed card heights. Do not clip copy. */
 .tg-site .tg-path{height:auto!important;min-height:115px!important;overflow:visible!important}
 .tg-site .tg-path p{max-height:none!important;overflow:visible!important}
 .tg-site .tg-mentor{max-height:none!important;overflow:visible!important}
 .tg-site .tg-mentor p{max-height:none!important;overflow:visible!important}
}
/* For narrow / short screens allow vertical scrolling rather than overlapping cards. */
@media(max-width:1200px) and (max-height:740px){
 body.page-id-7,body.page-id-7 .wp-site-blocks,body.page-id-7 .wp-site-blocks>main,
 body.page-id-7 .wp-block-post-content,body.page-id-7 main>.wp-block-group.alignfull.has-global-padding{
   height:auto!important;min-height:100svh!important;overflow:visible!important;
 }
 .tg-site{height:auto!important;min-height:100svh!important;overflow:visible!important;grid-template-rows:auto auto auto!important}
 .tg-site .tg-stage{height:auto!important;min-height:0!important;overflow:visible!important}
 .tg-site .tg-main{min-height:0!important}
 .tg-site .tg-footer{height:auto!important;min-height:48px!important}
}
/* Very short phones cannot contain all sections in one viewport: use normal flow. */
@media(max-width:600px) and (max-height:740px){
 .tg-site .tg-stage{display:block!important;height:auto!important;min-height:0!important;overflow:visible!important;padding:18px 12px 15px!important}
 .tg-site .tg-main{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:14px!important;min-height:0!important}
 .tg-site .tg-copy{align-self:stretch!important;max-width:100%!important}
 .tg-site .tg-mentor{width:100%!important;margin:14px 0 0!important}
 .tg-site .tg-paths{margin:14px 0 0!important}
}
@media(max-width:600px) and (max-height:740px){
 html:has(body.page-id-7){height:auto!important;overflow-y:auto!important}
 body.page-id-7.page-id-7{height:auto!important;min-height:100svh!important;overflow-y:auto!important}
 body.page-id-7.page-id-7 .wp-site-blocks,
 body.page-id-7.page-id-7 .wp-site-blocks>main,
 body.page-id-7.page-id-7 .wp-block-post-content,
 body.page-id-7.page-id-7 main>.wp-block-group.alignfull.has-global-padding{
   height:auto!important;min-height:0!important;overflow:visible!important;
 }
 .tg-site.tg-site{display:flex!important;flex-direction:column!important;height:auto!important;min-height:100svh!important;overflow:visible!important}
 .tg-site.tg-site>.tg-header{flex:0 0 auto!important}
 .tg-site.tg-site>.tg-stage{flex:0 0 auto!important}
 .tg-site.tg-site>.tg-footer{flex:0 0 auto!important;height:auto!important;min-height:72px!important;margin-top:auto!important}
}
@media(max-width:600px) and (max-height:740px){
 html:has(body.page-id-7){overflow-x:clip!important}
 body.page-id-7.page-id-7{overflow-x:hidden!important}
 .tg-site.tg-site,.tg-site.tg-site>.tg-stage{overflow-x:clip!important;overflow-y:visible!important}
}
