@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500&family=Manrope:wght@400;500&family=Noto+Serif+TC:wght@400;500&family=Pinyon+Script&display=swap');
:root{--ink:#fffdf5;--serif:'Cormorant Garamond',Georgia,serif;--sans:Manrope,Arial,sans-serif}html[lang=zh-Hant]{--serif:'Noto Serif TC',serif}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:#7fa8b4;font-family:var(--sans);-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}a:focus-visible,button:focus-visible{outline:1px solid currentColor;outline-offset:6px}p,h1,h2{margin:0}.ocean,.veil{position:fixed;inset:0;pointer-events:none}.ocean{overflow:hidden}.ocean img{width:100%;height:100%;object-fit:cover;animation:drift 32s ease-in-out infinite alternate;will-change:transform}.veil{background:linear-gradient(180deg,#12334430,transparent 28%,#10384935 50%,#123447bd)}@keyframes drift{from{transform:scale(1.025) translateX(-.3%)}to{transform:scale(1.10) translateX(.3%)}}body.paused .ocean img{animation-play-state:paused}.page{position:relative;min-height:100svh;display:flex;flex-direction:column;padding-bottom:96px}header{display:flex;align-items:center;justify-content:space-between;padding:27px 4.5%;gap:24px}.wordmark{font:40px/1.1 'Pinyon Script',cursive;white-space:nowrap}.header-links{display:flex;align-items:center;gap:28px;font-size:11px;letter-spacing:.6px}.contact-link{display:inline-flex;align-items:center;gap:9px}.link-icon{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}.sound{display:grid;place-items:center;min-height:44px;min-width:44px;padding:10px}.sound svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}.sound .waves{display:none}.sound.audible .waves{display:block}.sound.audible .muted{display:none}main{flex:1;display:grid;align-content:end;justify-items:center;align-items:end;width:min(650px,76%);margin:0 auto;padding-top:70px;padding-bottom:24px;min-height:calc(100svh - 216px);text-align:center}.slide{display:none;grid-area:1/1;width:100%;flex-direction:column;align-items:center;pointer-events:none}.slide.active{display:flex;pointer-events:auto}.slide.leaving{display:flex;opacity:0;animation:leave .65s ease both}.slide.arriving{animation:arrive 1.15s cubic-bezier(.22,1,.36,1) .5s both}@keyframes leave{from{opacity:1}to{opacity:0}}@keyframes arrive{from{opacity:0}to{opacity:1}}.eyebrow{font:9px/1.8 var(--sans);letter-spacing:2.7px;text-transform:uppercase;opacity:.85;margin-bottom:12px}h1,h2{font:400 43px/1.1 var(--serif);letter-spacing:.015em}.body{font:400 21px/1.45 var(--serif);max-width:560px;margin-top:23px}.services{list-style:none;padding:0;margin:22px 0 0;font:400 18px/1.45 var(--serif)}.services li{margin-top:7px}.services li:first-child{margin-top:0}.services em{font-style:italic;opacity:.85}.services .young-note{display:block;font-size:15px;margin-top:2px;opacity:.8}.bio{font-size:22px;line-height:1.45}.bio p+p{margin-top:15px}.credentials{font:9px/1.8 var(--sans);letter-spacing:1.2px;margin-top:21px;opacity:.85}.fee{font:400 39px/1.1 var(--serif);margin-top:25px}.fee span{font-size:19px}.fee-note{font:18px/1.5 var(--serif);max-width:400px;margin-top:16px}.contact-details{font:12px/1.7 var(--sans);margin-top:22px;letter-spacing:.25px}.email{display:inline-block;font-size:15px;border-bottom:1px solid #fff8;padding-bottom:3px;margin-bottom:7px}.etransfer{font:12px/1.6 var(--sans);margin-top:12px}.etransfer a{text-decoration:underline;text-underline-offset:4px}.wechat{margin-top:20px;display:flex;align-items:center;gap:14px;text-align:left;padding:0}.qr-thumb{display:block;width:58px;height:58px;overflow:hidden;border:4px solid white;background:white;border-radius:2px}.qr-thumb img{width:100%;height:100%;object-fit:cover;object-position:center 52%;transform:scale(1.4)}.wechat-label{font:11px/1.7 var(--sans)}.wechat-label strong{display:block;font-weight:400;font-size:13px}.arrow{position:fixed;top:66%;width:44px;height:44px;padding:12px;z-index:3;transform:translateY(-50%);opacity:.8;display:grid;place-items:center}.arrow svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.15;stroke-linecap:round;stroke-linejoin:round}.arrow:hover{opacity:1}.previous{left:max(12px,calc(50% - 380px))}.next{right:max(12px,calc(50% - 380px))}footer{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:center;align-items:center;gap:18px;z-index:3;padding:15px 20px calc(16px + env(safe-area-inset-bottom,0px));min-height:76px}.play-toggle{display:flex;align-items:center;gap:8px;font-size:10px;letter-spacing:.3px;min-height:44px;padding:8px}.play-toggle svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round}.slide-tabs{display:flex}.slide-tabs button{width:44px;height:44px;display:grid;place-items:center}.slide-tabs span{height:1px;width:23px;background:#fff6;transition:background .3s}.slide-tabs [aria-pressed=true] span{background:#fff;height:2px}.counter{font:9px var(--sans);opacity:.7;letter-spacing:2px}.skip{position:fixed;top:-100px;left:10px;z-index:10;background:#173b4b;padding:12px}.skip:focus{top:10px}dialog{border:0;border-radius:4px;padding:28px;background:#f8f7f2;color:#193844;width:min(420px,90vw);max-height:90svh}dialog::backdrop{background:#0e293b9c;backdrop-filter:blur(8px)}dialog h2{font:28px var(--serif)}dialog p{font-size:12px;margin:12px 0}dialog img{width:100%;max-height:65svh;object-fit:contain}dialog .close{position:absolute;right:10px;top:8px;font-size:28px;min-width:44px;min-height:44px}dialog a{font-size:12px;text-decoration:underline;text-underline-offset:4px}.download-line{display:flex;justify-content:space-between;gap:10px;margin-top:12px}html[lang=zh-Hant] .services{font-size:16px;line-height:1.65}html[lang=zh-Hant] .bio{font-size:17px;line-height:1.8}html[lang=zh-Hant] h1,html[lang=zh-Hant] h2{font-size:35px}html[lang=zh-Hant] .fee-note{font-size:17px}
@media(max-width:700px){.page{padding-bottom:100px}header{padding:20px 6%;gap:14px}.wordmark{font-size:31px}.header-links{font-size:12px;gap:15px;letter-spacing:0}.sound{min-width:40px;padding:8px}main{width:78%;padding-top:65px;padding-bottom:20px;min-height:calc(100svh - 200px)}h1,h2{font-size:39px}.eyebrow{font-size:10px;letter-spacing:1.8px;margin-bottom:12px}.services{font-size:18px;line-height:1.45;margin-top:22px}.services li{margin-top:10px}.services .young-note{font-size:15px}.body,.bio{font-size:20px;line-height:1.5;margin-top:23px}.credentials{font-size:10px;letter-spacing:.8px}.fee-note{font-size:18px}.email{font-size:15px}.contact-details,.etransfer{font-size:13px}.wechat-label{font-size:12px}.wechat-label strong{font-size:14px}.previous{left:2px}.next{right:2px}.arrow{top:50%}.arrow svg{width:18px;height:18px}.play-toggle{font-size:12px}footer{gap:12px;background:linear-gradient(transparent,#12344770)}.counter{font-size:10px}html[lang=zh-Hant] .bio{font-size:16px;line-height:1.75}html[lang=zh-Hant] .services{font-size:16px}html[lang=zh-Hant] h1,html[lang=zh-Hant] h2{font-size:31px}.header-links .contact-label{display:none}}
@media(max-width:360px){header{padding-left:5%;padding-right:5%}.header-links{gap:8px}.wordmark{font-size:28px}main{width:76%}.services{font-size:17px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.slide.leaving{display:none}.ocean img{will-change:auto}}

/* A compact lower composition, grounded against the darker water. */
.veil{background:linear-gradient(180deg,#12334425,transparent 30%,#10384935 52%,#12344799 73%,#102d3bdd 100%)}
.page{padding-bottom:80px}
main{width:min(540px,76%);padding-bottom:14px;min-height:calc(100svh - 194px)}
h1,h2{font-size:32px;line-height:1.15}
.eyebrow{font-size:8px;letter-spacing:2px;margin-bottom:9px}
.body,.bio{font-size:17px;line-height:1.4;max-width:480px;margin-top:16px}
.bio p+p{margin-top:10px}
.services{font-size:15px;line-height:1.4;margin-top:16px}
.services li{margin-top:5px}.services .young-note{font-size:13px}
.credentials{font-size:8px;margin-top:14px;letter-spacing:.7px}
.fee{font-size:31px;margin-top:18px}.fee span{font-size:16px}
.fee-note{font-size:16px;line-height:1.4;margin-top:12px}
.contact-details{margin-top:16px;font-size:11px}.email{font-size:13px}
.etransfer{font-size:11px;margin-top:9px}.wechat{margin-top:14px}.qr-thumb{width:48px;height:48px}
.wechat-label{font-size:10px}.wechat-label strong{font-size:12px}
.slide{text-shadow:0 1px 12px #0b283d35}
html[lang=zh-Hant] h1,html[lang=zh-Hant] h2{font-size:28px}
html[lang=zh-Hant] .services{font-size:14px;line-height:1.55}
html[lang=zh-Hant] .bio{font-size:14px;line-height:1.65}
html[lang=zh-Hant] .fee-note{font-size:14px}
@media(max-width:700px){
 .page{padding-bottom:86px}main{width:78%;min-height:calc(100svh - 176px);padding-bottom:12px;padding-top:40px}
 h1,h2{font-size:29px}.eyebrow{font-size:9px;letter-spacing:1.5px}
 .services{font-size:16px;line-height:1.4}.services li{margin-top:6px}.services .young-note{font-size:13px}
 .body,.bio{font-size:17px;line-height:1.45}.credentials{font-size:9px}
 .fee-note{font-size:16px}.contact-details,.etransfer{font-size:12px}.email{font-size:14px}
 .wechat-label{font-size:11px}.wechat-label strong{font-size:12px}
 html[lang=zh-Hant] .bio{font-size:15px;line-height:1.65}html[lang=zh-Hant] .services{font-size:15px}
 html[lang=zh-Hant] h1,html[lang=zh-Hant] h2{font-size:27px}
}

/* Slightly larger reading sizes while retaining the low, compact composition. */
.body,.bio{font-size:19px;line-height:1.45}.services{font-size:17px;line-height:1.45}
.eyebrow,.credentials{font-size:10px}.header-links{font-size:12px}
.fee-note{font-size:18px}.contact-details,.etransfer{font-size:13px}.email{font-size:15px}
.wechat-label{font-size:12px}.wechat-label strong{font-size:13px}
html[lang=zh-Hant] .bio,html[lang=zh-Hant] .services,html[lang=zh-Hant] .fee-note{font-size:16px}
@media(max-width:700px){.body,.bio{font-size:18px;line-height:1.5}.services{font-size:17px}.eyebrow,.credentials{font-size:10px}.fee-note{font-size:17px}.contact-details,.etransfer{font-size:13px}.email{font-size:15px}html[lang=zh-Hant] .bio,html[lang=zh-Hant] .services,html[lang=zh-Hant] .fee-note{font-size:16px}}
