:root{--primary:#0ea394;--primary-deep:#0b7a6e;--primary-tint:#e3fbf5;--secondary:#2f86eb;--secondary-deep:#1f66bd;--secondary-tint:#e9f1ff;--coral:#ff7a50;--coral-deep:#b8451c;--coral-tint:#ffe9de;--violet:#8b7cf6;--violet-deep:#5b4fd1;--violet-tint:#efeaff;--accent:#22c3ac;--cta:#b8451c;--cta-deep:#0b7a6e;--success:#2cc16f;--bg:#fffcf6;--surface:#fff;--ink:#17332f;--muted:#6b7280;--line:#ecf3f1;--radius:18px;--shadow:0 10px 28px #17332f0f;--shadow-hover:0 16px 36px #0b7a6e29;--font:"Be Vietnam Pro", system-ui, sans-serif;--font-display:"Baloo 2", "Be Vietnam Pro", system-ui, sans-serif;--header-h:4.35rem;--max:75rem;--grad-hero:linear-gradient(160deg, #fffcf6 0%, #eafbf6 55%, #eaf2ff 100%);--grad-cta:linear-gradient(120deg, var(--primary-tint) 0%, var(--coral-tint) 100%);--grad-btn:linear-gradient(135deg, var(--primary-deep), var(--primary))}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font);color:var(--ink);background:var(--bg);margin:0;line-height:1.7}img,svg{max-width:100%;display:block}a{color:inherit}button,input,textarea,select{font:inherit}h1,h2,h3,p,blockquote{margin:0}h1,h2,h3{font-family:var(--font-display);letter-spacing:0;font-weight:800;line-height:1.2}.skip-link{z-index:80;background:var(--ink);color:#fff;border-radius:12px;padding:.5rem .9rem;position:absolute;top:-3rem;left:1rem}.skip-link:focus{top:.75rem}.wrap{width:min(calc(100% - 2rem), var(--max));margin-inline:auto}.section{scroll-margin-top:calc(var(--header-h) + .8rem);padding:4.25rem 0}.section--tint{background:var(--primary-tint)}.eyebrow{border:2px dashed var(--primary);color:var(--primary-deep);background:#fff;border-radius:999px;align-items:center;gap:.4rem;margin-bottom:.7rem;padding:.3rem .85rem;font-size:.78rem;font-weight:700;display:inline-flex;transform:rotate(-2deg)}.section-title{font-size:clamp(1.55rem,2.6vw,2.15rem)}.lede{max-width:38rem;color:var(--muted);margin-top:.7rem}.page-hero{padding:3rem 0 1.5rem}.page-hero h1{font-size:clamp(1.8rem,4vw,2.6rem)}.header{z-index:50;background:color-mix(in srgb, var(--surface) 86%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);position:sticky;top:0}.header__inner{min-height:var(--header-h);align-items:center;gap:.85rem;display:flex;position:relative}.logo{font-family:var(--font-display);align-items:center;gap:.55rem;font-weight:800;text-decoration:none;display:flex}.logo__mark{background:linear-gradient(135deg, var(--primary), var(--secondary));color:#fff;border-radius:46% 54% 61% 39%/44% 39% 61% 56%;place-items:center;width:2.15rem;height:2.15rem;font-size:.9rem;display:grid}.nav-toggle{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:12px;width:2.6rem;height:2.6rem}.nav-toggle span,.nav-toggle span:before,.nav-toggle span:after{background:var(--ink);border-radius:2px;width:1.05rem;height:2px;margin-inline:auto;display:block;position:relative}.nav-toggle span:before,.nav-toggle span:after{content:"";position:absolute;left:0}.nav-toggle span:before{top:-6px}.nav-toggle span:after{top:6px}.nav{inset:calc(var(--header-h) - .35rem) 0 auto;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px;flex-direction:column;gap:.15rem;padding:.75rem;display:none;position:absolute}.nav.is-open{display:flex}.nav a{color:var(--muted);border-radius:999px;padding:.55rem .7rem;font-weight:700;text-decoration:none}.nav a:hover,.nav a[aria-current=location]{color:var(--primary-deep);background:var(--primary-tint)}.header-cta{margin-left:auto}@media (width>=960px){.nav-toggle{display:none}.nav{box-shadow:none;background:0 0;border:0;flex-direction:row;align-items:center;gap:.15rem;margin-left:auto;padding:0;display:flex;position:static}.nav a{font-size:.92rem}.header-cta{margin-left:0}}.btn{background:var(--grad-btn);color:#fff;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:.4rem;min-height:2.9rem;padding:.65rem 1.3rem;font-weight:700;text-decoration:none;transition:transform .18s,box-shadow .18s,filter .18s;display:inline-flex;box-shadow:0 12px 22px #0b7a6e3d}.btn:hover{filter:brightness(1.05);transform:translateY(-3px)}.btn:active{transform:translateY(0)}.btn:disabled,.btn[aria-disabled=true]{opacity:.45;pointer-events:none;box-shadow:none}.btn--ghost{color:var(--ink);border:2px solid var(--line);box-shadow:none;background:#fff}.btn--ghost:hover{border-color:var(--primary);filter:none}.btn.is-copied,.btn--success{background:var(--success);box-shadow:0 8px 18px #20bf6b38}.btn-row{flex-wrap:wrap;gap:.7rem;margin-top:1.35rem;display:flex}.hero{background:var(--grad-hero);padding:2.8rem 0 3.6rem;position:relative;overflow:hidden}.hero:before,.hero:after{content:"";filter:blur(2px);opacity:.55;z-index:0;border-radius:42% 58% 63% 37%/45% 55%;position:absolute}.hero:before{background:var(--primary-tint);width:18rem;height:18rem;top:-7rem;right:-5rem}.hero:after{background:var(--coral-tint);width:12rem;height:12rem;bottom:-5rem;left:-4rem}.hero__grid{z-index:1;gap:2rem;display:grid;position:relative}@media (width>=900px){.hero__grid{grid-template-columns:1.1fr .9fr;align-items:center}}.hero h1{font-size:clamp(2rem,4.6vw,3.15rem)}.hero h1 em{color:var(--coral-deep);font-style:normal;display:inline-block;position:relative}.hero h1 em:after{content:"";background:var(--coral);opacity:.45;z-index:-1;border-radius:999px;height:.3em;position:absolute;bottom:-.12em;left:0;right:0}.hero-visual{gap:1rem;display:grid}.stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin-top:1.5rem;display:grid}.stat{background:var(--primary-tint);border-radius:16px;padding:.85rem .7rem}.stat:nth-child(2){background:var(--secondary-tint)}.stat:nth-child(3){background:var(--coral-tint)}.stat strong{font-family:var(--font-display);color:var(--primary-deep);font-size:1.1rem;display:block}.stat:nth-child(2) strong{color:var(--secondary-deep)}.stat:nth-child(3) strong{color:var(--coral-deep)}.stat span,.stats-note{color:var(--muted);font-size:.78rem}.stats-note{margin-top:.55rem;font-style:italic}.art{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px;padding:.55rem .7rem;position:relative;overflow:hidden}.art svg{width:100%;height:auto;display:block}.coupon{background:var(--surface);box-shadow:var(--shadow);border-radius:22px;padding:1.25rem}.coupon__top{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.coupon__label{color:var(--muted);font-size:.8rem}.coupon__off{background:var(--coral);color:#fff;border-radius:999px;padding:.25rem .75rem;font-size:.85rem;font-weight:800}.coupon__code{border:2px dashed color-mix(in srgb, var(--primary) 45%, var(--line));background:var(--bg);font-family:var(--font-display);letter-spacing:.12em;color:var(--primary-deep);text-align:center;border-radius:16px;margin:.9rem 0 1rem;padding:1rem;font-size:1.7rem;font-weight:800}.coupon .btn{width:100%}.coupon__hint{color:var(--muted);text-align:center;margin-top:.7rem;font-size:.82rem}.tabs{flex-wrap:wrap;gap:.5rem;margin:1.4rem 0 1.2rem;display:flex}.tabs button{border:2px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:999px;padding:.5rem 1rem;font-weight:700;transition:background .18s,color .18s,transform .18s}.tabs button:hover{transform:translateY(-1px)}.tabs button[aria-selected=true]{background:var(--ink);color:#fff;border-color:var(--ink)}.app-group{gap:.9rem;display:grid}.app-group[hidden]{display:none}.app-group+.app-group{margin-top:2.5rem}.app-group__head{align-items:center;gap:.65rem;display:flex}.app-group__icon{border-radius:999px;place-items:center;width:2.2rem;height:2.2rem;font-size:.95rem;font-weight:800;display:grid}.app-grid{gap:1.25rem;display:grid}@media (width>=640px){.app-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=980px){.app-grid{grid-template-columns:repeat(3,1fr)}}.app-card{border-radius:22px;flex-direction:column;gap:.65rem;padding:1.35rem;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 16px 34px #17332f12}.app-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-6px)}.app-card--zh,.app-card--zh .app-group__icon{background:var(--primary-tint)}.app-card--zh .app-card__off,.app-group__icon--zh{color:var(--primary-deep)}.app-card--en,.app-card--de,.app-card--other,.app-group__icon--en,.app-group__icon--de,.app-group__icon--other{background:var(--violet-tint)}.app-card--en .app-card__off,.app-card--de .app-card__off,.app-card--other .app-card__off,.app-group__icon--en,.app-group__icon--de,.app-group__icon--other{color:var(--violet-deep)}.app-card--ko,.app-group__icon--ko{background:var(--coral-tint)}.app-card--ko .app-card__off,.app-group__icon--ko{color:var(--coral-deep)}.app-card--ja,.app-group__icon--ja{background:var(--secondary-tint)}.app-card--ja .app-card__off,.app-group__icon--ja{color:var(--secondary-deep)}.app-card__top{justify-content:space-between;align-items:center;display:flex}.app-card__logo{background:#fff;border-radius:12px;justify-content:center;align-items:center;height:2.75rem;padding:.25rem .6rem;display:flex}.app-card__logo img{object-fit:contain;max-width:5.5rem;max-height:2rem}.app-card__off{background:#fff;border-radius:999px;padding:.3rem .75rem;font-size:.82rem;font-weight:800}.app-card__bottom{justify-content:space-between;align-items:center;gap:.6rem;margin-top:auto;display:flex}.app-card__mark{background:#fff;border-radius:46% 54% 61% 39%/44% 39% 61% 56%;flex:none;place-items:center;width:2.75rem;height:2.75rem;font-weight:800;display:grid}.app-card p{color:var(--muted);flex:1;font-size:.94rem}.app-card .btn{min-height:2.5rem;color:var(--ink);box-shadow:none;background:#fff;border:2px solid #0000;padding:.5rem 1.1rem;font-size:.9rem}.app-card .btn:hover{border-color:var(--line)}.steps{gap:1.25rem;margin-top:1rem;display:grid;position:relative}@media (width>=800px){.steps{grid-template-columns:repeat(3,1fr)}.steps:before{content:"";border-top:3px dashed color-mix(in srgb, var(--primary-deep) 28%, transparent);z-index:0;position:absolute;top:2.5rem;left:4rem;right:4rem}}.step{z-index:1;background:var(--surface);box-shadow:var(--shadow);border-radius:22px;padding:1.35rem;position:relative}.step__icon{width:3.35rem;height:3.35rem;font-family:var(--font-display);color:#fff;border-radius:46% 54% 61% 39%/44% 39% 61% 56%;place-items:center;margin-bottom:.9rem;font-size:1.15rem;font-weight:800;display:grid}.step--1 .step__icon{background:var(--grad-btn)}.step--2 .step__icon{background:linear-gradient(135deg, var(--secondary-deep), var(--violet-deep))}.step--3 .step__icon{background:linear-gradient(135deg, var(--coral-deep), var(--coral))}.step h3{margin-bottom:.35rem;font-size:1.08rem}.step p{color:var(--muted)}.benefits{gap:1rem;display:grid}@media (width>=800px){.benefits{grid-template-columns:repeat(4,1fr)}}.benefit{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:18px;padding:1.2rem;transition:transform .2s,box-shadow .2s}.benefit:hover{box-shadow:var(--shadow-hover);transform:translateY(-4px)}.benefit svg{width:1.8rem;height:1.8rem;margin-bottom:.7rem}.benefit h3{margin-bottom:.35rem;font-size:1.02rem}.benefit p{color:var(--muted);font-size:.92rem}.quotes{align-items:start;gap:1.4rem;display:grid}@media (width<=799px){.quotes{scroll-snap-type:x mandatory;padding-bottom:.4rem;display:flex;overflow-x:auto}.quote-wrap{scroll-snap-align:start;flex:0 0 86%}}@media (width>=800px){.quotes{grid-template-columns:repeat(3,1fr)}}.quote-wrap{padding-bottom:.6rem;position:relative}.quote{border-radius:20px;padding:1.2rem}.quote-wrap:after{content:"";border-radius:4px;width:16px;height:16px;position:absolute;bottom:.1rem;left:2rem;transform:rotate(45deg)}.quote-wrap--teal .quote,.quote-wrap--teal:after{background:var(--primary-tint)}.quote-wrap--blue .quote,.quote-wrap--blue:after{background:var(--secondary-tint)}.quote-wrap--amber .quote,.quote-wrap--amber:after{background:var(--coral-tint)}.quote p{font-size:.98rem}.quote footer{align-items:center;gap:.7rem;margin-top:1rem;display:flex}.avatar{background:#fff;border-radius:999px;place-items:center;width:2.5rem;height:2.5rem;font-size:.78rem;font-weight:800;display:grid}.avatar--teal{color:var(--primary-deep)}.avatar--blue{color:var(--secondary-deep)}.avatar--amber{color:var(--coral-deep)}.quote strong{color:var(--ink);display:block}.quote small{color:var(--muted)}.post-grid{gap:1rem;display:grid}@media (width>=800px){.post-grid{grid-template-columns:repeat(3,1fr)}}.post-card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:18px;transition:transform .2s,box-shadow .2s;overflow:hidden}.post-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-6px)}.post-cover{place-items:center;height:8.5rem;display:grid}.post-cover--ticket{background:linear-gradient(135deg, var(--primary-tint), var(--secondary-tint))}.post-cover--phone{background:linear-gradient(135deg, var(--secondary-tint), var(--primary-tint))}.post-cover--books{background:linear-gradient(135deg, var(--violet-tint), var(--primary-tint))}.post-card__body{padding:1.1rem 1.15rem 1.25rem}.post-meta{color:var(--muted);justify-content:space-between;gap:.6rem;margin-bottom:.45rem;font-size:.78rem;display:flex}.post-card h3{font-size:1.08rem}.post-card h3 a{text-decoration:none}.post-card h3 a:hover{color:var(--primary-deep)}.post-card p{color:var(--muted);margin:.45rem 0 .9rem;font-size:.92rem}.article{padding-bottom:4rem}.article__body{max-width:44rem}.article__body p+p{color:var(--ink);margin-top:1rem}.faq-list{gap:.75rem;margin-top:1.4rem;display:grid}.faq-item{background:var(--surface);box-shadow:var(--shadow);border-radius:18px}.faq-item h3{font-family:var(--font);margin:0;font-weight:700}.faq-item button{text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:1rem;width:100%;padding:1rem 1.15rem;display:flex}.faq-item__icon{border:2px solid var(--line);width:1.75rem;height:1.75rem;color:var(--ink);border-radius:999px;flex:none;place-items:center;display:grid}.faq-item button[aria-expanded=true] .faq-item__icon{background:var(--primary-deep);border-color:var(--primary-deep);color:#fff}.faq-item__icon svg{width:.8rem;height:.8rem}.faq-item__icon .faq-item__icon-minus,.faq-item button[aria-expanded=true] .faq-item__icon-plus{display:none}.faq-item button[aria-expanded=true] .faq-item__icon-minus{display:block}.faq-panel{grid-template-rows:0fr;transition:grid-template-rows .22s;display:grid}.faq-panel.is-open{grid-template-rows:1fr}.faq-panel__inner{overflow:hidden}.faq-panel p{color:var(--muted);padding:0 1.15rem 1rem}.cta-band{background:var(--grad-cta);padding:3.6rem 0}.cta-band .wrap{gap:1.4rem;display:grid}@media (width>=800px){.cta-band .wrap{grid-template-columns:1.1fr .9fr;align-items:center}}.footer{color:#dff5f0;background:#0d2a26;border-radius:32px 32px 0 0;padding:3rem 0 1.6rem}.footer a{color:#fff;text-decoration:none}.footer .logo{gap:.75rem;font-size:1.4rem}.footer .logo__mark{width:3.1rem;height:3.1rem;font-size:1.3rem}.footer a:hover{color:var(--primary)}.footer__grid{gap:1.4rem;display:grid}@media (width>=800px){.footer__grid{grid-template-columns:1.4fr 1fr;align-items:start}}.footer p,.footer li{color:#9fd8cd;font-size:.92rem}.footer ul{gap:.75rem;margin:.9rem 0 0;padding:0;list-style:none;display:grid}.footer__contact{align-items:center;gap:.65rem;display:flex}.footer__contact-icon{background:#ffffff1f;border-radius:999px;flex:none;place-items:center;width:2.15rem;height:2.15rem;display:grid}.footer__contact-icon svg{width:1rem;height:1rem}.footer__bottom{text-align:center;border-top:1px solid #ffffff1f;justify-content:center;margin-top:1.8rem;padding-top:1.1rem;font-size:.84rem;display:flex}.form{gap:.85rem;max-width:36rem;display:grid}.form label{gap:.3rem;font-weight:650;display:grid}.form input,.form textarea,.form select{border:1px solid var(--line);background:var(--surface);border-radius:12px;padding:.7rem .85rem}.form input:focus,.form textarea:focus{outline:2px solid color-mix(in srgb, var(--primary) 50%, transparent);border-color:var(--primary)}.prose{max-width:44rem}.prose p+p,.prose ul{margin-top:.85rem}.toast{z-index:60;background:var(--ink);color:#fff;opacity:0;pointer-events:none;border-radius:12px;padding:.7rem 1rem;transition:opacity .2s,transform .2s;position:fixed;bottom:1rem;right:1rem;transform:translateY(8px)}.toast.is-on{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}
