:root{color-scheme:dark;background:#0a1221;color:#e6e9ed;font-family:Georgia,'Times New Roman',serif;font-synthesis:none}*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{background:radial-gradient(ellipse at 50% 42%,#142237 0,#0a1221 70%);-webkit-font-smoothing:antialiased}main{width:min(680px,calc(100% - 40px));min-height:100vh;min-height:100svh;margin:0 auto;padding:42px 0;display:flex;flex-direction:column;align-items:center;justify-content:center}h1{margin:0;font-size:35px;line-height:1.2;font-weight:400;letter-spacing:-.9px;text-align:center}h1 span{font-size:.57em;font-style:italic;color:#c6cdd7;margin:0 1px}figure{margin:30px 0 0;max-width:100%;text-align:center}img{display:block;width:auto;height:auto;max-width:100%;max-height:calc(100svh - 208px);object-fit:contain;margin:0 auto}figcaption{margin-top:26px;font-size:19px;line-height:1.4;letter-spacing:.3px;font-weight:400;color:#d3dbe5}::selection{background:#b88736;color:#fff}@media(max-width:600px){main{width:calc(100% - 36px);padding:32px 0}h1{font-size:31px;letter-spacing:-.7px}figure{margin-top:28px}img{max-height:calc(100svh - 180px)}figcaption{margin-top:23px;font-size:17px;letter-spacing:.2px}}@media(max-height:440px){main{padding:24px 0}h1{font-size:27px}figure{margin-top:17px}img{max-height:none;max-width:520px;width:100%}figcaption{font-size:16px;margin-top:17px}}

.team{width:min(920px,calc(100% - 64px));margin:0 auto;padding:46px 0 74px;border-top:1px solid #2a3545;text-align:center}.team h2{font-size:25px;line-height:1.3;font-weight:400;letter-spacing:-.3px;color:#d3dbe5;margin:0 0 36px}.team-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px}.team-member h3{font-size:21px;line-height:1.35;font-weight:400;letter-spacing:-.3px;margin:0 0 12px;color:#e6e9ed}.team-member p{font:11px/1.8 Arial,Helvetica,sans-serif;color:#b7c3d2;margin:0 auto;max-width:185px}.team-member:first-child h3{color:#d7a34a}@media(max-width:700px){.team{width:calc(100% - 48px);padding:35px 0 53px}.team h2{font-size:23px;margin-bottom:30px}.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 24px}.team-member h3{font-size:20px;margin-bottom:9px}.team-member p{font-size:10px;max-width:165px}}@media(max-width:340px){.team{width:calc(100% - 36px)}.team-grid{gap:30px 16px}.team-member h3{font-size:18px}}



/* Bilingual team details; Chinese personal names are phonetic renderings. */
.team-member .name-zh{display:block;margin-top:6px;font-family:'Noto Serif CJK SC','Songti SC','STSong','SimSun',serif;font-size:15px;line-height:1.5;font-weight:400;letter-spacing:0}.team-member .role-zh{display:block;margin-top:6px;font-family:'Noto Sans CJK SC','PingFang SC','Microsoft YaHei',Arial,sans-serif;font-size:11px;line-height:1.65;color:#d3dbe5}@media(max-width:700px){.team-member .name-zh{font-size:13px;margin-top:5px}.team-member .role-zh{font-size:10px;margin-top:5px}}

/* Keep the team close to the caption instead of filling a viewport first. */
main{min-height:0;padding-bottom:18px}.team{padding-top:26px}@media(max-width:700px){.team{padding-top:22px}}@media(max-width:600px){main{padding-bottom:14px}}

.weddings-link{display:inline-flex;align-items:center;gap:24px;margin-top:16px;padding-bottom:5px;border-bottom:1px solid #b88736;color:#c99745;font:11px/1.6 Arial,Helvetica,sans-serif}.weddings-link span{font-size:16px}.weddings-link:focus-visible{outline:2px solid #c99745;outline-offset:6px}

/* Small front-door navigation; the original lunar composition is unchanged. */
.front-door-nav{display:flex;justify-content:center;gap:28px;flex-wrap:wrap}.about-us{width:min(920px,calc(100% - 64px));margin:0 auto;padding:44px 0 66px;border-top:1px solid #2a3545;scroll-margin-top:28px}.about-us h2{font-size:30px;line-height:1.3;font-weight:400;margin:0 0 32px;text-align:center}.about-columns{display:grid;grid-template-columns:1fr 1.15fr;gap:60px}.about-us h3{font-size:25px;line-height:1.3;font-weight:400;color:#e6e9ed;margin:10px 0 22px}.about-us p{font:13px/1.85 Arial,Helvetica,sans-serif;color:#b7c3d2;margin:0 0 18px}.about-us .about-label{font-size:10px;letter-spacing:.1em;color:#c99745;margin-bottom:10px}.about-studio .weddings-link{margin-top:4px}.about-us .about-back{margin-top:25px}a:focus-visible{outline:2px solid #c99745;outline-offset:6px}
@media(max-width:700px){.about-us{width:calc(100% - 48px);padding:32px 0 48px}.about-columns{grid-template-columns:1fr;gap:25px}.about-us h2{font-size:27px;margin-bottom:27px}.about-us h3{font-size:23px;margin-bottom:18px}.front-door-nav{gap:24px}}

/* About Us contains both the people and the studio story. */
.team.about-us .team-grid{margin-bottom:52px}.team.about-us .about-columns{text-align:left}.team.about-us .team-member h3{font-size:21px;margin:0 0 12px}.team.about-us .team-member p{font-size:11px;line-height:1.8;margin:0 auto}.team.about-us .team-member:first-child h3{color:#d7a34a}.team.about-us h2{font-size:25px}.offerings{width:min(920px,calc(100% - 64px));margin:0 auto;padding:48px 0 60px;border-top:1px solid #2a3545;scroll-margin-top:28px}.offerings h2{font-size:30px;line-height:1.3;font-weight:400;margin:10px 0 20px}.offerings h3{font-size:24px;line-height:1.35;font-weight:400;margin:0 0 16px}.offerings p{font:13px/1.85 Arial,Helvetica,sans-serif;color:#b7c3d2;margin:0 0 18px}.offerings .about-label{font-size:10px;letter-spacing:.1em;color:#c99745}.section-intro,.packages>p{max-width:620px}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px 60px;margin:36px 0}.service-grid article{padding-top:24px;border-top:1px solid #2a3545}.service-grid .weddings-link{margin-top:0}.packages .about-back{display:flex;width:max-content;margin-top:40px}@media(max-width:700px){.team.about-us .team-grid{margin-bottom:40px}.team.about-us .team-member h3{font-size:20px;margin-bottom:9px}.team.about-us .team-member p{font-size:10px}.offerings{width:calc(100% - 48px);padding:34px 0 44px}.offerings h2{font-size:27px}.service-grid{grid-template-columns:1fr;gap:26px;margin:28px 0}.front-door-nav{gap:24px}.front-door-nav .weddings-link{gap:14px}}

/* Services first, with an adjacent inquiry-led package column. */
.offerings-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;width:min(920px,calc(100% - 64px));margin:0 auto;border-top:1px solid #2a3545}.offerings-grid>.offerings{width:100%;border-top:0;margin:0}.offerings-grid>.offerings h2{min-height:78px}.offerings-grid .service-grid{grid-template-columns:1fr;gap:30px}.offerings-grid .section-intro{min-height:73px}@media(max-width:700px){.offerings-grid{display:block;width:calc(100% - 48px)}.offerings-grid>.offerings h2,.offerings-grid .section-intro{min-height:0}.offerings-grid>.packages{border-top:1px solid #2a3545}.offerings-grid .service-grid{gap:26px}}

/* Echo the lunar caption while retaining clear link affordances. */
.front-door-nav{margin-top:26px;gap:12px 24px}.front-door-nav .weddings-link{margin-top:0;padding:4px 0;font:16px/1.4 Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:.3px;text-transform:none;color:#d3dbe5}.front-door-nav .weddings-link:hover{color:#c99745;border-bottom-color:#c99745}
@media(max-width:600px){.front-door-nav{margin-top:23px}.front-door-nav .weddings-link{font-size:15px;letter-spacing:.2px}}
@media(max-height:440px){.front-door-nav{margin-top:17px}}

/* One studio story beneath the existing team roles. */
.about-story{max-width:720px;margin-inline:auto;text-align:left}.about-actions{display:flex;flex-wrap:wrap;gap:12px 28px}.about-actions .weddings-link{margin-top:4px}

/* Public studio details stay within the final Talk to Us area. */
.about-us .public-contact{display:flex;flex-wrap:wrap;gap:8px 24px;margin:18px 0 0}.public-contact a{color:inherit;text-underline-offset:3px;overflow-wrap:anywhere}

/* Matte gold wordmark. */
h1{color:#c99745}

/* The lowercase wordmark uses the self-hosted SIL OFL Allura font. */
@font-face{font-family:Allura;src:url('fonts/Allura-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
h1{font-family:Allura,'Snell Roundhand','Segoe Script',cursive;font-size:62px;line-height:1.25;letter-spacing:0;word-spacing:.04em;text-transform:none;font-weight:400;color:#c99745}
.lunar-composition{padding:0;width:100%}
@media(max-width:600px){h1{font-size:clamp(43px,12vw,58px);letter-spacing:0}}

/* Chinese brand expression sits beside the lowercase cursive wordmark. */
h1{display:flex;align-items:center;justify-content:center;gap:18px}
h1 .brand-name{font:inherit;color:inherit;letter-spacing:inherit;margin:0;white-space:nowrap}
h1 .brand-seal{flex:none;font:400 16px/1.2 'Songti SC','STSong','Noto Serif CJK SC',serif;letter-spacing:.1em;margin:0;padding:10px 8px;border:1px solid currentColor;color:#c99745;white-space:nowrap}
@media(max-width:600px){h1{font-size:clamp(38px,11vw,58px);gap:12px}h1 .brand-seal{font-size:13px;letter-spacing:.08em;padding:8px 6px}}
