:root{--lec-ink:#173c41;--lec-teal:#125b61;--lec-paper:#f7f6ef;--lec-gold:#f6d394}html{scroll-behavior:smooth;scroll-padding-top:100px}.lec-page{margin:0;background:var(--lec-paper);color:var(--lec-ink);font-family:Inter,"Noto Sans TC","Microsoft JhengHei",sans-serif;font-size:16px;line-height:1.7}.lec-page *{box-sizing:border-box}.lec-page a{color:inherit;text-decoration:none}.lec-page a:focus-visible,.lec-page summary:focus-visible{outline:3px solid #d4853f;outline-offset:5px}.lec-header{min-height:92px;padding:16px 4vw;display:flex;align-items:center;justify-content:space-between;gap:24px;background:#f7f6ef}.lec-brand img{width:185px;max-height:64px;object-fit:contain}.lec-header nav{display:flex;gap:24px;flex-wrap:wrap;font-size:14px}.lec-account{font-size:14px;border:1px solid #b7c8c7;border-radius:8px;padding:10px 16px;white-space:nowrap}.lec-skip{position:absolute;left:12px;top:-100px;background:white;z-index:10}.lec-skip:focus{top:8px}.lec-hero{position:relative;min-height:640px;height:calc(100svh - 92px);max-height:950px;display:flex;align-items:center;color:#fff;overflow:hidden;background:#16494f}.lec-landscape{position:absolute;width:100%;height:100%;object-fit:cover}.lec-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,41,46,.84),rgba(9,41,46,.35) 48%,transparent 80%)}.lec-hero-copy{position:relative;z-index:1;margin:0 7vw;max-width:690px}.lec-kicker{font-size:13px;letter-spacing:.2em;font-weight:600}.lec-hero h1{font-size:clamp(40px,4.6vw,76px);line-height:1.27;letter-spacing:-.04em;margin:25px 0}.lec-hero p{font-size:18px;line-height:1.95;color:#edf1ed}.lec-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin:32px 0 18px}.lec-button{display:inline-flex;padding:14px 24px;border-radius:7px;background:var(--lec-gold);color:#193e42!important;font-weight:700}.lec-quiet{font-size:14px}.lec-small{font-size:14px}.lec-scene-note{position:absolute;right:4vw;bottom:30px;z-index:1;font-size:14px}.lec-section{padding:85px 7vw;max-width:1600px;margin:auto}.lec-section-top{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:36px}.lec-section h2{font-size:clamp(27px,3vw,42px);line-height:1.4;margin:12px 0}.lec-section-top p{max-width:360px;color:#536d70}.lec-places{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.lec-place{padding:28px;min-height:260px;background:#fff;border:1px solid #d6dfda;border-radius:10px;display:flex;flex-direction:column;transition:transform .2s,border-color .2s}.lec-place:hover{transform:translateY(-4px);border-color:#50888a}.lec-place-top{display:flex;justify-content:space-between;font-size:14px;color:#536d70;gap:12px}.lec-place h3{font-size:25px;margin:24px 0 8px}.lec-place p{margin:0 0 24px;color:#536d70}.lec-tag{font-size:13px;padding-top:16px;border-top:1px solid #e7ece8;margin-top:auto}.lec-invitation{display:grid;grid-template-columns:1.1fr 1fr;gap:8vw;background:#173f45;color:white;max-width:none}.lec-invitation p{color:#d4e2df;max-width:530px}.lec-mission{border:1px solid #507076;padding:34px;border-radius:10px}.lec-mission h3{font-size:27px}.lec-mission a{color:#f6d394}.lec-faq{display:grid;grid-template-columns:1fr 1.5fr;gap:6vw}.lec-faq details{padding:20px 0;border-bottom:1px solid #cdd9d4}.lec-faq summary{cursor:pointer;font-size:18px;font-weight:600}.lec-faq p{color:#536d70}.lec-footer{border-top:1px solid #cdd9d4;padding:30px 7vw;display:flex;justify-content:space-between;gap:20px;font-size:14px;flex-wrap:wrap}.main-header-menu>.menu-item>a{color:#173c41}.lec-cubi{position:fixed;right:20px;bottom:20px;z-index:50;background:#173f45;color:#fff;border:1px solid #73938f;border-radius:14px;padding:16px;max-width:290px;box-shadow:0 10px 40px #173c4126}.lec-cubi summary{cursor:pointer;font-weight:700}.lec-cubi p{font-size:14px}.lec-cubi a{display:inline-block;color:#f6d394;font-size:14px}.lec-cubi[open]{padding:20px}.lec-cubi summary::marker{color:#f6d394}@media(max-width:1000px){.lec-header{flex-wrap:wrap;gap:12px}.lec-header nav{order:3;width:100%;gap:20px;overflow-x:auto;flex-wrap:nowrap;white-space:nowrap}.lec-places{grid-template-columns:repeat(2,1fr)}.lec-hero{min-height:620px}.lec-brand img{width:160px}.lec-section{padding:65px 6vw}}@media(max-width:600px){.lec-header{padding:14px 5vw}.lec-hero{height:76svh;min-height:560px}.lec-hero h1{font-size:42px}.lec-landscape{object-position:58% center}.lec-hero:after{background:linear-gradient(90deg,#09292eca,#09292e40)}.lec-hero-copy{margin:0 6vw}.lec-hero p{font-size:16px}.lec-actions{align-items:start;flex-direction:column;gap:14px}.lec-scene-note{display:none}.lec-places,.lec-invitation,.lec-faq{grid-template-columns:1fr}.lec-section-top{display:block}.lec-place{min-height:230px}.lec-cubi{right:12px;bottom:12px;max-width:250px}.lec-footer{padding-bottom:95px}.lec-mission{margin-top:22px}.lec-kicker{letter-spacing:.13em}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.lec-place{transition:none}}
.lec-academy{max-width:980px;margin:auto;padding:50px 24px;font-family:"Microsoft JhengHei",sans-serif;color:#173c41;font-size:17px;line-height:1.9}.lec-academy>.lec-kicker{display:block;margin-top:30px}.lec-academy h1{font-size:clamp(32px,4vw,54px);line-height:1.4}.lec-academy nav{display:flex;flex-wrap:wrap;gap:12px;margin:30px 0}.lec-academy nav a{padding:8px 14px;border:1px solid #b7c8c7;border-radius:6px}.lec-academy article{padding:42px 0;border-top:1px solid #b7c8c7;scroll-margin-top:40px}.lec-academy blockquote{margin:24px 0;padding:20px 26px;border-left:4px solid #bd8751;background:#edf2ec}.lec-practice{padding:20px;background:#fff6e5;border-radius:8px}.lec-public-note{padding:18px;background:#edf2ec;color:#173c41}
@media(max-width:600px){.lec-header nav{flex-wrap:wrap;gap:8px 17px;overflow:visible}}

/* The town continues through every interactive surface. */
.lec-page{background-color:#e8efda;background-image:linear-gradient(90deg,#49674608 1px,transparent 1px),linear-gradient(#49674608 1px,transparent 1px);background-size:24px 24px}
.lec-header{border-bottom:8px solid #567e52;box-shadow:0 5px 0 #a28155;position:relative;z-index:2;background:#f4edda}
.lec-header nav a{padding:6px 9px;border-bottom:3px solid #aa8d61;background:#e8ddc4}.lec-header nav a:hover{background:#d5e2bb;border-color:#557d50}
.lec-account,.lec-button{border-radius:0;border:3px solid #435c42;box-shadow:inset 3px 3px 0 #ffffff65,inset -3px -3px 0 #00000016,4px 4px 0 #344c3c;transform:translate(0,0)}
.lec-account{background:#e1ebc5}.lec-button:hover,.lec-account:hover{transform:translate(-2px,-2px);box-shadow:inset 3px 3px 0 #ffffff65,6px 6px 0 #344c3c}.lec-button:active{transform:translate(3px,3px);box-shadow:1px 1px 0 #344c3c}
.lec-hero{border-bottom:12px solid #668e50}.lec-hero h1{text-shadow:4px 4px 0 #183c3f}.lec-kicker{display:inline-block;background:#f3e4bc;color:#395448;padding:5px 10px;border-left:5px solid #af8955}.lec-hero .lec-kicker{background:#153f45d9;color:#fff;border-color:#e8be72}
.lec-place{position:relative;border-radius:0;border:3px solid #80966a;border-top:9px solid #709752;background:#fcf8eb;box-shadow:6px 6px 0 #a99472;padding:22px;overflow:hidden}.lec-place:hover{transform:translateY(-5px);border-color:#426b48;box-shadow:6px 11px 0 #a99472}.lec-place h3{margin-top:17px}.lec-place-top{font-weight:bold;color:#425d45}.lec-voxel{width:100%;height:160px;display:block;margin:-8px 0 12px;background:linear-gradient(#d9eddf 72%,#c3d8ae 72%);border-bottom:3px solid #a0b68b;overflow:visible}.lec-tag{border-top:3px dashed #c6cfb2;color:#486241}
.lec-invitation{background-color:#254d40;background-image:linear-gradient(90deg,#ffffff04 2px,transparent 2px),linear-gradient(#ffffff04 2px,transparent 2px);background-size:32px 32px;border-top:9px solid #a38858;border-bottom:9px solid #a38858}.lec-mission{border:5px solid #b99b68;border-radius:0;background:#f4e5bd;color:#344d3a;box-shadow:8px 8px 0 #15372c}.lec-invitation .lec-mission p{color:#485b40}.lec-mission a{color:#235d4e;text-decoration:underline}.lec-mission>span{font-weight:bold;letter-spacing:.08em}
.lec-faq details{padding:18px;background:#faf5e6;border:2px solid #b4bd9a;border-left:7px solid #789354;margin-bottom:12px}.lec-footer{background:#ded8bc;border-top:6px solid #7a925b}.lec-cubi{border:4px solid #8bad97;border-radius:0;box-shadow:5px 5px 0 #173c41}.lec-cubi summary:before{content:"";display:inline-block;width:24px;height:20px;margin-right:9px;vertical-align:middle;background:linear-gradient(90deg,transparent 20%,#7ce1db 20% 35%,transparent 35% 65%,#7ce1db 65% 80%,transparent 80%),#142f37;border:4px solid #ead6a1;box-shadow:2px 2px 0 #a48a59}
.lec-academy article{border-top:6px solid #8aa166}.lec-academy nav a,.lec-practice{border-radius:0;border:2px solid #a1b18a;box-shadow:3px 3px 0 #c5c4a3}.lec-page .friend-memory,.lec-page .friend-library,.lec-page .friend-conversation button,.lec-page .friend-library button,.lec-page #friend-input,.lec-page #friend-log article{border-radius:0}.lec-page .friend-conversation{background:#faf5e6;border-top:8px solid #789354}.lec-page .friend-conversation button,.lec-page .friend-library button{border:2px solid #6f8969;box-shadow:2px 2px 0 #a4ab85}.lec-page .friend-library{border:4px solid #8aa166;box-shadow:7px 7px 0 #b6a580}.lec-page .friend-scene{border-bottom:9px solid #8e734f}.lec-page .friend-heading h2{border-left:7px solid #829d5e;padding-left:12px}
@media(max-width:600px){.lec-header nav{gap:8px;font-size:13px}.lec-header nav a{padding:5px 8px}.lec-hero h1{font-size:36px}.lec-voxel{height:150px}.lec-place{margin-right:6px}.lec-cubi{max-width:240px;padding:10px}.lec-mission{padding:24px}.lec-header{gap:10px}.lec-hero{min-height:580px}}
@media(prefers-reduced-motion:reduce){.lec-place:hover,.lec-button:hover,.lec-account:hover{transform:none}}

.lec-dating .lec-hero{min-height:570px;height:76svh;max-height:760px}.lec-dating .lec-hero h1{font-size:clamp(34px,4vw,62px)}.lec-join{padding:13px 20px;border:2px solid #eee5c7;background:#214c43;font-weight:bold}.lec-service-link{display:inline-block;font-size:15px;text-decoration:underline!important;text-underline-offset:5px;color:#fff4d8!important}.lec-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:35px}.lec-steps article{border-top:4px solid #83a067;padding:24px 0}.lec-steps article>span{font-weight:bold;color:#6c805d}.lec-steps h3{font-size:24px}.lec-steps p{color:#53644e}.lec-steps a{text-decoration:underline;color:#21584d}.lec-matchmaking{display:grid;grid-template-columns:1.2fr 1fr;gap:60px;background:#254d40;color:#faf4dd;max-width:none;border-block:8px solid #a08a60;scroll-margin-top:20px}.lec-consult{align-self:center;padding:30px;border:2px solid #a7bba1;background:#315b48}.lec-consult h3{font-size:25px}.lec-extras{padding-top:38px;padding-bottom:38px}.lec-extras h2{font-size:21px;margin:0 0 8px}.lec-extras p,.lec-extras small{font-size:13px;color:#62735b}.lec-extras nav{display:flex;gap:24px;flex-wrap:wrap;margin:22px 0}.lec-extras nav a{display:flex;align-items:center;gap:7px;font-size:14px}.lec-extras nav a:hover{text-decoration:underline}.lec-extras nav span{display:grid;place-items:center;width:30px;height:30px;background:#d6dfc4;border:1px solid #839777;color:#345c46;font-size:20px}.lec-dating .lec-footer{padding-bottom:30px}@media(max-width:700px){.lec-steps,.lec-matchmaking{grid-template-columns:1fr;gap:22px}.lec-dating .lec-hero{height:auto;min-height:590px}.lec-dating .lec-hero h1{font-size:34px}.lec-dating .lec-hero-copy{padding:32px 0}.lec-dating .lec-actions{gap:15px}.lec-extras nav{gap:16px}.lec-service-link{font-size:14px}}
