/* 所有選擇器限定於共用頁尾或浮動工具，不影響 Banner。 */
.nx_site_footer{position:relative;isolation:isolate;overflow:hidden;width:100%;min-height:clamp(560px,35vw,760px);background:#e9f2f5;color:#244c60;font-family:Manrope,"Microsoft JhengHei",sans-serif}
.nx_site_footer *{box-sizing:border-box}
.nx_footer_backdrop{position:absolute;z-index:-2;inset:0;pointer-events:none}
.nx_footer_backdrop img{width:100%;height:100%;object-fit:cover;object-position:60% center}
.nx_site_footer::before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:linear-gradient(0deg,rgba(5,29,44,.88),transparent 28%),linear-gradient(90deg,rgba(249,253,255,.91),rgba(246,252,255,.78) 34%,transparent 49%,transparent 72%,rgba(246,252,255,.75) 87%)}
.nx_footer_content{display:grid;grid-template-columns:26% 18% 34% 22%;padding:clamp(40px,4.5vw,95px) clamp(28px,4.5vw,96px) 170px;gap:0}
.nx_footer_brand{padding-right:25px}
.nx_footer_brand>a{display:block;width:min(100%,290px);margin:-22px 0 -8px}
.nx_footer_brand img{display:block;width:100%;height:auto;object-fit:contain}
.nx_footer_idea{font-size:clamp(14px,1vw,21px);letter-spacing:.18em;margin:12px 0 22px}
.nx_footer_english{font-size:clamp(10px,.7vw,14px);line-height:1.9;letter-spacing:.18em}
.nx_footer_rule{display:block;width:50px;height:1px;background:#91b2c1;margin:25px 0}
.nx_footer_promise{font-size:clamp(12px,.85vw,17px);letter-spacing:.1em}
.nx_footer_brand small{font-size:10px;letter-spacing:.18em;color:#547d8c}
.nx_footer_nav{border-left:1px solid #a5c0cd;padding-left:clamp(16px,2vw,40px);display:flex;flex-direction:column;gap:24px}
.nx_footer_nav a{display:flex;gap:20px;text-decoration:none;color:inherit;align-items:flex-start;transition:color .25s}
.nx_footer_nav a>span:first-child{font-size:15px;color:#658b9c;letter-spacing:.1em}
.nx_footer_nav b{font-size:12px;letter-spacing:.18em;font-weight:500;display:block}
.nx_footer_nav em{display:block;font-style:normal;font-size:12px;letter-spacing:.12em;margin-top:5px}
.nx_footer_nav i{font-style:normal;opacity:0;transform:translate(-5px,5px);transition:opacity .25s,transform .25s}
.nx_footer_nav a:hover,.nx_footer_nav a:focus-visible{color:#007c86}
.nx_footer_nav a:hover i,.nx_footer_nav a:focus-visible i{opacity:1;transform:none}
.nx_footer_invitation{border-left:1px solid #a5c0cd;padding-left:clamp(18px,2vw,40px);align-self:start}
.nx_footer_invitation>span{letter-spacing:.2em;font-size:12px}
.nx_footer_invitation h2{font:400 clamp(20px,1.5vw,32px)/1.4 Manrope,sans-serif;letter-spacing:.16em;margin:15px 0 28px;color:inherit}
.nx_footer_invitation a{display:flex;align-items:center;gap:18px;color:inherit;text-decoration:none;font-size:13px;letter-spacing:.15em}
.nx_footer_invitation i{display:grid;place-items:center;width:64px;height:64px;flex-shrink:0;border:1px solid #507b8e;border-radius:50%;font-size:26px;font-style:normal;transition:background .3s,color .3s,transform .3s}
.nx_footer_invitation a:hover i{background:#0f4c5c;color:white;transform:rotate(-35deg)}
.nx_footer_bottom{position:absolute;bottom:28px;left:4.5%;right:185px;display:flex;align-items:center;justify-content:space-between;gap:24px;color:#f3fafc}
.nx_footer_bottom>small{font-size:12px;letter-spacing:.06em}
.nx_footer_social{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin-left:auto}
.nx_footer_social a{color:inherit;display:flex;align-items:center;gap:7px;text-decoration:none;font-size:11px}
.nx_footer_social img{object-fit:contain}
.nx_footer_endnote{font-size:9px;line-height:1.8;letter-spacing:.17em}
.nx_site_footer a:focus-visible{outline:2px solid #007f88;outline-offset:6px}
@media(max-width:1100px){.nx_footer_content{grid-template-columns:31% 22% 20% 27%;padding-bottom:210px}.nx_footer_nav a{gap:12px}.nx_footer_brand>a{margin-top:-12px}.nx_footer_invitation a{gap:10px}.nx_footer_invitation i{width:48px;height:48px}}
@media(max-width:700px){.nx_site_footer{min-height:850px}.nx_footer_content{grid-template-columns:1fr 1fr;padding:36px 24px 290px;gap:28px 15px}.nx_footer_brand{grid-column:1/-1;padding:0}.nx_footer_brand>a{width:230px;margin:-20px 0 -8px}.nx_footer_idea{margin-bottom:14px}.nx_footer_rule,.nx_footer_promise,.nx_footer_brand>small{display:none}.nx_footer_nav{padding-left:0;border:0;gap:20px}.nx_footer_space{display:none}.nx_footer_invitation{padding-left:16px}.nx_footer_invitation h2{font-size:17px;letter-spacing:.08em}.nx_footer_invitation a{flex-direction:column;align-items:flex-start}.nx_footer_backdrop{inset:auto 0 0;height:380px}.nx_footer_backdrop img{object-fit:cover;object-position:61% bottom}.nx_site_footer::before{background:linear-gradient(180deg,#f0f7fa 0%,rgba(240,247,250,.97) 46%,rgba(240,247,250,.35) 65%,rgba(4,31,46,.5) 91%)}.nx_footer_bottom{position:relative;bottom:auto;left:auto;right:auto;padding:24px 24px 90px;flex-wrap:wrap;background:rgba(5,34,47,.64)}.nx_footer_social{margin:0;gap:18px}.nx_footer_endnote{display:none}.nx_footer_bottom>small{width:100%;font-size:10px}}
/* 圖示列固定於視窗，不改變內容寬度。 */
.nx_floating_links{position:fixed;z-index:150;right:24px;bottom:max(24px,env(safe-area-inset-bottom));display:flex;flex-direction:column;align-items:flex-end;gap:9px;font-family:Manrope,"Microsoft JhengHei",sans-serif}
.nx_social_links{display:flex;flex-direction:row;align-items:center;gap:10px;max-width:calc(100vw - 48px);overflow-x:auto;padding:12px 10px 30px;border:1px solid #bed8df;border-radius:22px;background:rgba(244,250,252,.97);box-shadow:0 12px 35px #123e5026;}
.nx_social_links[hidden]{display:none}
.nx_floating_toggle{cursor:pointer;font-family:inherit}
.nx_floating_social{flex-shrink:0;position:relative;display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:rgba(250,254,255,.96);color:#164c5b;border:1px solid #bed8df;border-radius:50%;box-shadow:0 5px 24px #123e5017;text-decoration:none;transition:transform .25s,background .25s}
.nx_floating_social img{object-fit:contain;width:26px;height:26px}
.nx_floating_initial{font-size:12px;font-weight:700}
.nx_floating_label{position:absolute;top:54px;left:50%;transform:translateX(-50%);max-width:62px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#0f4c5c;pointer-events:none;font-size:10px;line-height:16px}
.nx_floating_social:hover,.nx_floating_social:focus-visible{transform:translateY(-3px);background:#d5f8f2}
.nx_floating_social:hover .nx_floating_label,.nx_floating_social:focus-visible .nx_floating_label{opacity:1}
.nx_floating_contact{display:flex;align-items:center;gap:14px;background:#e5f7f5;color:#0b4c59;border:1px solid #83b8bf;border-radius:40px;padding:7px 7px 7px 20px;font-size:12px;font-weight:700;letter-spacing:.08em;text-decoration:none;box-shadow:0 5px 25px #0b354321}
.nx_floating_contact i{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#008d91;color:white;font-style:normal;font-size:21px;transition:transform .25s}
.nx_floating_contact:hover i{transform:scale(1.06)}
.nx_floating_links a:focus-visible,.nx_floating_toggle:focus-visible{outline:3px solid #00a8a8;outline-offset:3px}
@media(max-width:700px){.nx_floating_links{right:12px;bottom:max(14px,env(safe-area-inset-bottom))}.nx_floating_contact{font-size:12px;padding-left:14px;gap:8px}.nx_floating_contact i{width:36px;height:36px}.nx_floating_social{width:44px;height:44px}.nx_social_links{max-width:calc(100vw - 24px);gap:12px}.nx_floating_label{top:49px}}
@media(prefers-reduced-motion:reduce){.nx_site_footer *,.nx_floating_links *{transition:none!important;animation:none!important}}

