/* An interactive field behind a quiet, readable contact composition. */
#finale.interactive-finale{background:#211c18;border:0;padding:100px 0 34px;overflow:hidden;isolation:isolate;color:#f5ead8;min-height:670px}
#finale.interactive-finale::before{display:none}
.finale-canvas,.finale-vignette{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.finale-canvas{z-index:0}
.finale-vignette{z-index:1;background:radial-gradient(ellipse at 50% 35%,#211c18e8 0%,#211c18b8 30%,#211c1820 70%),linear-gradient(0deg,#211c18e8,transparent 30%)}
#finale .shell{z-index:2;width:min(1200px,calc(100% - 64px));pointer-events:none}
#finale a,#finale button{pointer-events:auto}
#finale .finale-eyebrow{font:400 12px/1.6 "PingFang SC","PingFang TC",-apple-system,BlinkMacSystemFont,"Microsoft YaHei",sans-serif;letter-spacing:.28em;color:#c6b498;margin-bottom:24px}
#finale .statement-line{font-family:"PingFang SC","PingFang TC",-apple-system,BlinkMacSystemFont,"Microsoft YaHei",sans-serif;font-size:clamp(30px,3.8vw,58px);font-weight:700;line-height:1.45;color:#f5ead8;letter-spacing:.015em}
#finale .statement-line.accent{color:#e17b68;margin-top:6px}
#finale .statement-sub{color:#c8bbab;font-size:clamp(13px,1.05vw,16px);line-height:1.9;margin:24px auto 0;max-width:680px}
#finale .finale-actions{gap:16px;margin-top:34px}
#finale .btn-contact{border-radius:8px;min-width:260px;padding:16px 22px;border:1px solid #eadbc62b;cursor:pointer;box-shadow:0 8px 24px #0002;color:#f5ead8;transition:background .2s,transform .2s,border-color .2s}
#finale .btn-contact.wx{background:#35483c}
#finale .btn-contact.tel{background:#773b30}
#finale .btn-contact .ct small{font-size:10px;letter-spacing:.025em;color:#e0d2c0}
#finale .btn-contact .ct strong{font-size:19px;line-height:1.6;color:#fff4e2}
#finale .btn-contact .ci{background:#ffffff0d;border:1px solid #ffffff1c;border-radius:50%;width:38px;height:38px}
#finale .btn-contact:hover{transform:translateY(-3px);border-color:#d9c5a77a;box-shadow:0 12px 26px #0003}
#finale .btn-contact:focus-visible{outline:2px solid #f5ead8;outline-offset:5px}
#finale .finale-foot{margin-top:76px;padding-top:26px;border-top:1px solid #e6d9c52b;gap:24px}
#finale .foot-seal{width:46px;height:46px;font-size:23px;background:#a43e32;box-shadow:none}
#finale .foot-mark{color:#e9dcc7;font-size:18px;font-weight:600}
#finale .foot-tag{color:#a99b88;font-size:11px;max-width:480px}
#finale .copy{color:#a99b88;font-size:10px;max-width:340px;line-height:1.8}
@media(max-width:680px){#finale.interactive-finale{padding:64px 0 28px;min-height:0}#finale .shell{width:calc(100% - 40px)}#finale .statement-line{font-size:clamp(25px,6.5vw,36px)}#finale .statement-sub{max-width:320px;font-size:13px}#finale .finale-eyebrow{font-size:10px;letter-spacing:.2em}#finale .finale-actions{max-width:360px;margin:28px auto 0;gap:12px}#finale .btn-contact{width:100%;justify-content:flex-start;padding:14px 20px}#finale .finale-foot{margin-top:48px}#finale .foot-brand{flex-direction:row;text-align:left}#finale .foot-tag{max-width:245px}#finale .copy{font-size:10px}}
@media(prefers-reduced-motion:reduce){#finale .scale-in,#finale .reveal{opacity:1;transform:none}#finale .btn-contact{transition:none}#finale .btn-contact:hover{transform:none}}
/* Blue light echoes the opening scene; content stays above the moving field. */
#finale.interactive-finale{background:#dceaf7;color:#173b60;min-height:590px;padding-top:96px}
.finale-vignette{background:radial-gradient(ellipse at 50% 30%,#eaf3facc,transparent 70%),linear-gradient(0deg,#d8e7f2b0,transparent 40%)}
#finale .statement-line{color:#173b60}
#finale .statement-line.accent{color:#346a9b}
#finale .finale-actions{margin-top:40px}
#finale .btn-contact{border:1px solid #315f892b;box-shadow:0 8px 24px #183f6610}
#finale .btn-contact.wx{background:#204b77;color:#fff}
#finale .btn-contact.tel{background:#f2f7fc;color:#244766}
#finale .btn-contact.wx .ct small{color:#dce9f5}
#finale .btn-contact.wx .ct strong{color:#fff}
#finale .btn-contact.tel .ct small{color:#52708e}
#finale .btn-contact.tel .ct strong{color:#244766}
#finale .btn-contact.tel .ci{background:#204b7709;border-color:#204b7720}
#finale .btn-contact:hover{border-color:#497499;box-shadow:0 12px 26px #183f6620}
#finale .btn-contact:focus-visible{outline-color:#204b77}
#finale .finale-foot{border-top-color:#315f8929}
#finale .foot-seal{background:#204b77;color:#fff;transform:none}
#finale .foot-mark{color:#244766}
#finale .foot-tag,#finale .copy{color:#526c85}
@media(max-width:680px){#finale.interactive-finale{padding-top:64px;min-height:0}#finale .finale-actions{margin-top:30px}}
/* Spiral star field with clear foreground text. */
#finale.interactive-finale{background:#071321;color:#eaf3ff}
.finale-vignette{background:radial-gradient(ellipse at 50% 28%,#071321a6,transparent 68%),linear-gradient(0deg,#071321ed,transparent 45%)}
#finale .statement-line{color:#f1f6ff;text-shadow:0 2px 18px #071321}
#finale .statement-line.accent{color:#a8cff7}
#finale .btn-contact.wx{background:#255b90;border-color:#82b6e45c}
#finale .btn-contact.tel{background:#e7f0fa;border-color:#eff7ff}
#finale .btn-contact:focus-visible{outline-color:#c3e1ff}
#finale .finale-foot{border-top-color:#aacded30}
#finale .foot-mark{color:#dcecff}
#finale .foot-tag,#finale .copy{color:#adbed2}
.foot-logo{position:relative;width:86px;height:52px;flex:none;overflow:hidden;background:white;border-radius:7px}
.foot-logo img{position:absolute;width:100px;height:100px;max-width:none;left:-7px;top:-24px}
.footer-legal{text-align:right;max-width:540px}
#finale .copy{max-width:none}
.footer-records{display:flex;gap:8px 16px;flex-wrap:wrap;justify-content:flex-end;margin-top:8px;font:11px/1.7 "PingFang SC","PingFang TC",-apple-system,BlinkMacSystemFont,"Microsoft YaHei",sans-serif;color:#b6c9df}
.footer-records a:hover{text-decoration:underline;color:#fff}
.footer-records a:focus-visible{outline:2px solid #c3e1ff;outline-offset:4px}
@media(max-width:680px){.footer-legal{text-align:center}.footer-records{justify-content:center}.foot-logo{width:72px;height:44px}.foot-logo img{width:84px;height:84px;left:-6px;top:-20px}}

/* Consistent type across copyright and registration details. */
#finale .footer-legal{max-width:620px;font:400 11px/1.8 "PingFang SC","PingFang TC",-apple-system,BlinkMacSystemFont,"Microsoft YaHei",sans-serif;color:#b6c9df}
#finale .footer-legal .copy,#finale .footer-records{font:inherit;color:inherit}
#finale .footer-records{gap:4px 12px;margin-top:6px}

/* Preserve the supplied white mark and its transparent background. */
#finale .foot-logo{background:transparent;border-radius:0}
#finale .foot-logo img{width:167.32%;height:auto;left:-35.21%;top:50%;transform:translateY(-46.22%)}

/* Keep both legal lines aligned to the same right edge. */
#finale .footer-legal{margin-left:auto;text-align:right}
#finale .footer-legal .copy{text-align:right}
#finale .footer-records{justify-content:flex-end}
@media(max-width:680px){#finale .footer-legal{width:100%;max-width:100%}}
