@charset "UTF-8";
:root{--paper:#faf8f3;--white:#fffdf9;--ink:#342e29;--wine:#792f32;--muted:#786f66;--line:#ded7ca;--sand:#f0eadf;--serif:"Noto Serif SC","Songti SC","STSong","SimSun",serif;--sans:"PingFang SC","Microsoft YaHei",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.85 var(--sans);-webkit-font-smoothing:antialiased}body.dialog-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;touch-action:manipulation}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}img{display:block;max-width:100%;height:auto}figure,h1,h2,h3,p{margin:0}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--wine);outline-offset:5px}main:focus{outline:0}[hidden]{display:none!important}.section-wrap{width:min(1240px,100%);padding-inline:56px;margin-inline:auto}.eyebrow{font:500 10px/1.8 var(--sans);letter-spacing:2.4px;color:var(--wine)}h1,h2,h3{font-family:var(--serif);font-weight:400}h1{font-size:46px;line-height:1.55;letter-spacing:3px}h2{font-size:34px;line-height:1.6;letter-spacing:1px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:28px;min-height:48px;padding:12px 22px;border:1px solid transparent;line-height:1.6;letter-spacing:1px;font-size:13px;transition:background .2s}.button-wine{background:var(--wine);color:var(--white);border-color:var(--wine)}.button-wine:hover{background:#5f2427}.button-outline{background:transparent;border-color:#b9a995;color:var(--wine)}.button-outline:hover{background:#eee6d9}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;border:0;border-bottom:1px solid #b5a18b;padding:0 0 5px;background:none;color:var(--wine);font:13px/1.9 var(--sans)}.text-link:hover{border-color:var(--wine)}
.site-header{max-width:1440px;margin:auto;padding:32px 56px 0}.header-top{position:relative;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;min-height:70px}.brand{display:inline-flex;flex-direction:column;align-items:center;flex-shrink:0;color:var(--wine)}.brand-cn{font:400 32px/1.4 var(--serif);letter-spacing:6px}.brand-cn>span{padding-inline:4px}.brand-en{font:9px/1.7 Georgia,serif;letter-spacing:2.8px;padding-top:7px}.header-location,.header-tagline{font-size:10px;letter-spacing:1.7px;color:#8b7e70}.header-tagline{text-align:right;letter-spacing:2px}.site-navigation{display:flex;align-items:center;justify-content:center;gap:43px;margin-top:27px;padding:18px 0;border-block:1px solid var(--line)}.site-navigation a{font-size:12px;letter-spacing:2px;position:relative;padding:2px 0}.site-navigation a::after{content:"";position:absolute;bottom:-7px;left:0;right:2px;height:1px;background:var(--wine);transform:scaleX(0);transition:transform .2s}.site-navigation a:hover,.site-navigation a[aria-current]{color:var(--wine)}.site-navigation a:hover::after,.site-navigation a[aria-current]::after{transform:scaleX(1)}.menu-toggle{display:none}
.home-intro{text-align:center;padding-top:45px;padding-bottom:27px}.home-intro h1{font-size:40px;letter-spacing:3px;margin:15px 0 12px}.home-intro h1 em{font-style:normal;color:var(--wine)}.home-intro>p:last-child{color:var(--muted);font-size:13px;letter-spacing:.7px}.home-visual{max-width:1152px}.home-photo{display:block}.home-photo>img{width:100%;height:auto;background:var(--sand)}.home-photo-caption{display:flex;justify-content:space-between;align-items:center;padding-top:13px;font:12px/1.8 var(--serif);letter-spacing:1px;color:var(--muted)}.home-photo-caption>span{font:11px/1.8 var(--sans);color:var(--wine)}.home-photo-caption>span>span{margin-left:13px}.home-note{text-align:center;padding-top:37px;padding-bottom:58px}.home-note>p{font:16px/2 var(--serif);color:#71675d;letter-spacing:1px}.home-links{display:flex;justify-content:center;gap:42px;margin-top:25px}.home-links .text-link{font-size:12px}
.page-heading{text-align:center;padding-top:55px;padding-bottom:45px}.page-heading h1{margin-top:14px}.page-lead{font-size:14px;color:var(--muted);max-width:620px;margin:15px auto 0;line-height:2}.next-page{display:flex;justify-content:space-between;align-items:center;gap:28px;border-top:1px solid var(--line);padding-top:42px;padding-bottom:46px}.next-page h2{font-size:27px;margin-top:8px}.next-page .button{flex-shrink:0}
.gallery-section{padding-bottom:60px}.gallery-instruction{text-align:right;font-size:12px;color:var(--muted);margin-bottom:23px}.gallery-instruction span{color:var(--wine);margin-left:9px}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:38px 28px}.gallery-item{background:none;border:0;padding:0;text-align:left;min-width:0;position:relative}.gallery-landscape{grid-column:span 2}.gallery-image{position:relative;display:block;overflow:hidden;background:var(--sand)}.gallery-image img{width:100%;height:auto;transition:transform .35s}.gallery-item:hover .gallery-image img{transform:scale(1.025)}.image-expand{position:absolute;right:12px;bottom:12px;display:grid;place-items:center;background:var(--white);color:var(--wine);width:32px;height:32px;border-radius:50%;font-size:19px;box-shadow:0 1px 8px #30292312}.gallery-caption{display:flex;align-items:flex-start;gap:12px;padding-top:14px}.gallery-number{font:12px/1.9 Georgia,serif;color:#a28c73}.gallery-caption strong{display:block;font:15px/1.8 var(--serif);letter-spacing:.3px}.gallery-caption small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.gallery-note{text-align:center;color:var(--muted);font-size:12px;margin-top:39px}
.packages{padding-bottom:58px}.package-common{border-block:1px solid var(--line);padding:18px 0;margin-bottom:30px;display:flex;align-items:center;gap:28px;justify-content:space-between}.package-common>p{font:16px/1.8 var(--serif);color:var(--wine);white-space:nowrap}.package-common ul{display:flex;flex-wrap:wrap;list-style:none;gap:8px 23px;margin:0;padding:0;font-size:12px;color:var(--muted)}.package-common li::before{content:"·";color:#aa8d6f;margin-right:8px}.package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.package{display:flex;flex-direction:column;padding:30px 26px 27px;border:1px solid var(--line);background:var(--white)}.package-featured{border-color:#bda68b;background:#f1eadd}.package h2{font-size:29px;letter-spacing:2px;margin-top:15px}.price{font:54px/1.3 Georgia,serif;color:var(--wine);margin-top:10px;letter-spacing:-1px}.price>span{font-size:22px;margin-right:7px;vertical-align:top;display:inline-block;padding-top:10px}.package-summary{font-size:12px;color:var(--muted);margin-top:10px;min-height:44px}.package dl{border-top:1px solid var(--line);padding-top:17px;margin:18px 0 25px;flex:1}.package dl>div{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:5px 0;font-size:12px}.package dt{color:var(--muted)}.package dd{margin:0;white-space:nowrap}.package .button{font-size:12px;width:100%;gap:12px;padding-inline:17px}.package-bottom{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:24px}.package-bottom p{font-size:12px;color:var(--muted);line-height:1.9}.package-bottom button{flex-shrink:0;font-size:12px}.experience{background:var(--sand);padding:52px 0}.section-title{margin-bottom:30px}.section-title h2{margin:8px 0 12px}.section-title>p:last-child{font-size:13px;color:var(--muted)}.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:27px}.steps article{border-top:1px solid #c8bca9;padding-top:17px}.steps article>span{font:20px/1.5 Georgia,serif;color:#a48d71}.steps h3{font-size:18px;margin-top:10px}.steps p{font-size:12px;color:var(--muted);margin-top:9px;line-height:2}.faq{display:grid;grid-template-columns:1fr 1.7fr;gap:60px;padding-top:58px;padding-bottom:55px}.faq h2{font-size:29px;margin-top:12px}.faq-heading>p:last-child{font-size:13px;color:var(--muted);margin-top:18px;line-height:2}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;padding:18px 0;font-size:13px}summary::-webkit-details-marker{display:none}summary>span{font-size:21px;color:var(--wine);line-height:1;transition:transform .2s}details[open] summary>span{transform:rotate(45deg)}details>p{font-size:13px;line-height:2;color:var(--muted);padding:0 22px 20px 0}
.team-section{padding-top:8px;padding-bottom:60px}.team-profile{display:grid;grid-template-columns:minmax(0,.93fr) minmax(0,1fr);align-items:center;gap:85px;max-width:1020px;margin:0 auto 88px}.team-photo img{width:100%;height:auto;background:var(--sand)}.team-photo figcaption{font:9px/1.8 Georgia,serif;letter-spacing:1.7px;color:#978671;text-align:center;margin-top:13px}.team-profile-reverse .team-photo{grid-column:2;grid-row:1}.team-profile-reverse .team-copy{grid-column:1;grid-row:1}.team-copy h2{font-size:32px;line-height:1.65;margin:18px 0 23px;letter-spacing:1.5px}.team-copy>p:not(.eyebrow){font-size:14px;line-height:2.1;color:var(--muted);margin-top:15px}.role-list{list-style:none;padding:18px 0 0;margin:24px 0 0;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:9px 16px;color:var(--wine);font-size:11px}.role-list li::before{content:"·";margin-right:7px;color:#b09b80}.team-statement{border-top:1px solid var(--line);padding-top:42px;display:flex;align-items:center;justify-content:center;gap:45px}.team-statement>img{width:130px;height:130px;mix-blend-mode:multiply}.team-statement h2{font-size:28px;margin:10px 0 13px}.team-statement>div>p:last-child{font-size:13px;line-height:2.1;color:var(--muted)}
.inquiry{display:grid;grid-template-columns:1fr 1.2fr;gap:90px;padding-top:10px;padding-bottom:66px}.inquiry-copy h2{font-size:34px;line-height:1.65;margin:16px 0 20px}.inquiry-copy>p:not(.eyebrow){color:var(--muted);font-size:13px;line-height:2.1}.inquiry-steps{list-style:none;margin:30px 0 28px;padding:17px 0;border-block:1px solid var(--line)}.inquiry-steps li{font-size:13px;display:flex;align-items:center;gap:15px;padding:7px 0}.inquiry-steps li>span{font:13px Georgia,serif;color:#a38a6c}.inquiry-copy>.inquiry-reminder{font-size:12px;color:#95816c;margin-bottom:22px}.inquiry-copy>.text-link{font-size:12px}#inquiry-form{background:#f0e9dd;padding:28px 30px}.form-intro{font:22px/1.7 var(--serif);letter-spacing:1px}.selected-package{font-size:12px;color:var(--wine);margin:9px 0 22px}label{display:block;font-size:12px;letter-spacing:.5px}input,select,textarea{font-size:14px;display:block;width:100%;border:1px solid #cdbda9;border-radius:0;padding:11px 12px;min-height:46px;background:#fffdf8;color:var(--ink);margin-top:8px;min-width:0}textarea{resize:vertical;line-height:1.8}input::placeholder,textarea::placeholder{font-size:12px;color:#978b7d}input:disabled{color:#978b7d;background:#e8e0d4;opacity:.7}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}.form-row>label,.date-field{min-width:0}.checkbox-label{display:flex;align-items:center;gap:7px;letter-spacing:0;font-size:11px;color:var(--muted);margin-top:10px;cursor:pointer}.checkbox-label>input{display:inline-block;width:15px;height:15px;min-height:15px;margin:0;accent-color:var(--wine)}#inquiry-form>label{margin-top:18px}.optional{font-size:11px;color:#8c7b68;margin-left:6px}#inquiry-form>.button{width:100%;margin-top:22px}.form-note{font-size:11px;line-height:1.9;color:#7e705e;margin-top:13px}
.site-footer{max-width:1328px;margin:auto;padding:33px 56px 20px;border-top:1px solid var(--line)}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-bottom:28px}.site-footer .brand-cn{font-size:24px;letter-spacing:4px}.site-footer .brand-en{font-size:7px;letter-spacing:2px;padding-top:5px}.footer-top>p{font-size:12px;color:#7c6f60;line-height:2;text-align:center}.footer-top>p>span{font-size:11px;color:#958574}.footer-top>.text-link{font-size:12px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:17px;font-size:10px;letter-spacing:.5px;color:#968674}.footer-bottom a:hover{color:var(--wine)}.mobile-cta{display:none}.skip-link{position:fixed;top:0;left:15px;z-index:100;background:var(--wine);color:white;padding:10px 16px;transform:translateY(-130%)}.skip-link:focus{transform:translateY(0)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
dialog{border:0;padding:0;max-width:calc(100vw - 28px);max-height:94vh;max-height:94svh;color:var(--ink);box-shadow:0 20px 90px #0004}dialog::backdrop{background:#211a15d9}.dialog-close{position:absolute;z-index:2;right:13px;top:13px;width:40px;height:40px;display:grid;place-items:center;border:1px solid #d0c1ac;background:var(--white);color:var(--wine);border-radius:50%;font:28px/1 Arial,sans-serif;padding:0}.image-dialog{width:900px;background:var(--paper);overflow:auto}.image-stage{display:flex;align-items:center;justify-content:center;background:#f1ece3;min-height:160px}.image-stage img{width:auto;height:auto;max-width:100%;max-height:76vh;max-height:76svh;object-fit:contain}.image-dialog.is-pricing{width:760px}.is-pricing .image-stage{max-height:80vh;max-height:80svh;overflow:auto;display:block}.is-pricing .image-stage img{width:100%;max-height:none}.image-dialog-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 18px}.image-dialog-bar>div{flex:1;text-align:center}.image-dialog-bar p{font:14px/1.7 var(--serif);color:var(--wine)}#image-counter{font-size:11px;color:var(--muted);display:block;margin-top:4px}.image-nav{width:42px;height:42px;flex-shrink:0;border:1px solid #cdbca7;background:transparent;color:var(--wine);font-size:20px}.image-nav:hover{background:var(--sand)}.inquiry-dialog{width:560px;background:var(--paper);padding:38px 34px 25px}.inquiry-dialog h2{font-size:27px;margin-top:12px}.dialog-description{font-size:12px;color:var(--muted);line-height:1.9;margin-top:13px}.inquiry-dialog textarea{font-size:13px;line-height:1.9;margin-top:23px;background:var(--white)}.inquiry-dialog>.button{width:100%;margin-top:18px}.copy-status{font-size:12px;color:var(--wine);line-height:1.8;min-height:24px;margin-top:12px}.is-copied{background:#4f6248;border-color:#4f6248}
@media(min-width:1500px){.home-visual{max-width:1220px}.home-intro{padding-top:55px}}
@media(max-width:1100px){.section-wrap{padding-inline:36px}.site-header{padding-inline:36px}.header-location,.header-tagline{font-size:9px}.team-profile{gap:48px}.team-copy h2{font-size:29px}.team-copy>p:not(.eyebrow){font-size:13px}.role-list{font-size:10px;gap:7px 12px}.inquiry{gap:45px}.package{padding:25px 20px}.package-common{gap:15px}.package-common ul{gap:7px 14px}.site-footer{padding-inline:36px}}
@media(max-width:900px){html{scroll-padding-top:100px}.site-header{position:sticky;top:0;background:#faf8f3f5;backdrop-filter:blur(10px);z-index:20;padding:0 25px;border-bottom:1px solid var(--line)}.header-top{display:flex;min-height:87px;justify-content:space-between}.header-location,.header-tagline{display:none}.brand-cn{font-size:25px;letter-spacing:4px}.brand-en{font-size:7px;letter-spacing:2.2px;padding-top:5px}.menu-toggle{display:flex;align-items:center;gap:13px;padding:12px 0 12px 15px;min-width:76px;min-height:44px;border:0;background:none;color:var(--wine);font-size:12px;letter-spacing:1px}.menu-lines{display:block;width:21px;height:13px;border-top:1px solid currentColor;border-bottom:1px solid currentColor;position:relative}.menu-lines::after{content:"";position:absolute;left:0;right:0;top:5px;height:1px;background:currentColor}.site-navigation{position:absolute;top:87px;left:0;right:0;margin:0;padding:18px 25px 24px;background:var(--paper);border-top:0;box-shadow:0 10px 18px #3029230c;flex-direction:column;align-items:stretch;gap:0;visibility:hidden;opacity:0;pointer-events:none;transform:translateY(-8px);transition:opacity .18s,transform .18s,visibility .18s}.site-navigation.is-open{visibility:visible;opacity:1;pointer-events:auto;transform:translateY(0)}.site-navigation>a{padding:13px 5px;font-size:14px;border-bottom:1px solid var(--line);letter-spacing:2px}.site-navigation>a:last-child{border-bottom:0}.site-navigation a::after{display:none}.site-navigation a[aria-current]::before{content:"·";margin-right:10px}.team-profile{gap:38px}.team-copy h2{font-size:27px}.package-common{display:block}.package-common ul{margin-top:10px}.package-grid{gap:13px}.package{padding:24px 16px}.package-summary{min-height:50px}.package .button{padding-inline:12px;font-size:11px}.inquiry{gap:35px;grid-template-columns:1fr 1.3fr}.inquiry-copy h2{font-size:29px}#inquiry-form{padding:25px}.faq{gap:35px;grid-template-columns:1fr 1.7fr}.footer-top{gap:20px}.footer-top>p{font-size:11px}}
@media(max-width:600px){.section-wrap{padding-inline:22px}h1{font-size:31px;letter-spacing:1px}h2{font-size:28px}.eyebrow{font-size:9px;letter-spacing:1.7px}.site-header{padding-inline:22px}.header-top{min-height:82px}.site-navigation{top:82px;padding-inline:22px}.brand-cn{font-size:23px;letter-spacing:3.5px}.brand-en{font-size:7px;letter-spacing:1.8px}.home-intro{padding-top:32px;padding-bottom:22px}.home-intro h1{font-size:35px;line-height:1.5;letter-spacing:2px;margin:15px 0 14px}.home-intro h1 em{display:block}.home-intro>p:last-child{font-size:12px;line-height:1.9;max-width:300px;margin:auto;letter-spacing:0}.home-visual{padding-inline:0}.home-photo-caption{padding:12px 22px 0;font-size:11px;gap:10px;letter-spacing:0}.home-photo-caption>span{font-size:10px}.home-photo-caption>span>span{margin-left:4px}.home-note{padding-top:29px;padding-bottom:35px}.home-note>p{font-size:13px;line-height:2;letter-spacing:0}.home-links{gap:22px;margin-top:22px;flex-wrap:wrap}.home-links .text-link{font-size:11px;gap:12px}.page-heading{padding-top:33px;padding-bottom:29px}.page-heading h1{margin-top:11px;line-height:1.6}.page-lead{font-size:12px;line-height:2;max-width:340px;margin-top:12px}.next-page{display:block;padding-top:30px;padding-bottom:35px}.next-page h2{font-size:24px;margin-top:9px}.next-page .button{font-size:12px;margin-top:22px;min-width:200px}.gallery-section{padding-bottom:35px}.gallery-instruction{font-size:11px;margin-bottom:18px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:27px 14px}.gallery-caption{padding-top:10px;gap:6px}.gallery-number{font-size:10px;line-height:2}.gallery-caption strong{font-size:12px;line-height:1.8;letter-spacing:0}.gallery-caption small{font-size:10px;line-height:1.8;margin-top:3px}.image-expand{right:7px;bottom:7px;width:28px;height:28px;font-size:17px}.gallery-note{font-size:11px;text-align:left;margin-top:26px;line-height:1.9}.packages{padding-bottom:35px}.package-common{padding:15px 0;margin-bottom:23px}.package-common>p{font-size:15px}.package-common ul{display:grid;grid-template-columns:1fr 1fr;gap:7px 9px;font-size:11px}.package-common li::before{margin-right:5px}.package-grid{grid-template-columns:1fr;gap:18px}.package{padding:25px}.package h2{font-size:29px;margin-top:13px}.price{font-size:51px;margin-top:4px}.package-summary{font-size:12px;min-height:0;margin-top:9px}.package dl{margin:20px 0 20px;padding-top:12px}.package dl>div{font-size:13px;padding-block:6px}.package .button{font-size:13px;padding-inline:18px}.package-bottom{display:block;margin-top:20px}.package-bottom p{font-size:11px}.package-bottom button{margin-top:17px;font-size:12px}.experience{padding:34px 0}.section-title h2{margin:8px 0 11px}.section-title>p:last-child{font-size:12px;line-height:2}.steps{grid-template-columns:1fr 1fr;gap:27px 23px}.steps article{padding-top:13px}.steps h3{font-size:17px;margin-top:8px}.steps p{font-size:12px;line-height:1.9}.faq{grid-template-columns:1fr;gap:25px;padding-top:34px;padding-bottom:36px}.faq h2{font-size:27px;line-height:1.6;margin-top:10px}.faq-heading>p:last-child{font-size:12px;margin-top:15px}.faq-heading>p:last-child br{display:none}summary{font-size:13px;padding-block:17px;gap:15px}details>p{font-size:12px;padding-right:10px;line-height:2}.team-section{padding-top:5px;padding-bottom:35px}.team-profile{grid-template-columns:1fr;gap:29px;margin-bottom:44px;max-width:420px}.team-photo{width:100%;max-width:340px;margin:auto}.team-photo figcaption{font-size:8px;letter-spacing:1.4px;margin-top:11px}.team-profile-reverse .team-photo,.team-profile-reverse .team-copy{grid-column:auto;grid-row:auto}.team-copy{padding-inline:4px}.team-copy h2{font-size:29px;line-height:1.6;letter-spacing:1px;margin:13px 0 18px}.team-copy>p:not(.eyebrow){font-size:13px;line-height:2.1;margin-top:13px}.role-list{font-size:11px;gap:7px 13px;margin-top:21px;padding-top:14px}.team-statement{gap:18px;padding-top:28px;align-items:flex-start}.team-statement>img{width:78px;height:78px;margin-top:32px}.team-statement .eyebrow{font-size:8px;letter-spacing:1px;line-height:1.9}.team-statement h2{font-size:23px;line-height:1.6;margin:9px 0 12px}.team-statement>div>p:last-child{font-size:12px;line-height:2}.team-statement br{display:none}.inquiry{grid-template-columns:1fr;gap:30px;padding-top:5px;padding-bottom:35px}.inquiry-copy h2{font-size:29px;margin:13px 0 17px}.inquiry-copy>p:not(.eyebrow){font-size:12px;line-height:2}.inquiry-copy>p br{display:none}.inquiry-steps{margin:21px 0 17px;padding:12px 0}.inquiry-steps li{font-size:12px;gap:13px;padding:5px 0}.inquiry-copy>.inquiry-reminder{font-size:11px;margin-bottom:15px}.inquiry-copy>.text-link{font-size:12px}#inquiry-form{padding:25px 20px}.form-intro{font-size:23px}.selected-package{font-size:11px;line-height:1.9;margin-bottom:20px}.form-row{grid-template-columns:1fr;gap:17px}label{font-size:12px}input,select,textarea{font-size:16px;padding:11px 12px}input::placeholder,textarea::placeholder{font-size:12px}.checkbox-label{font-size:12px;min-height:25px;gap:9px}.checkbox-label>input{width:17px;height:17px}.optional{font-size:11px}.form-note{font-size:11px;line-height:1.9}.site-footer{padding:26px 22px 18px}.footer-top{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;padding-bottom:22px}.site-footer .brand{align-items:flex-start}.site-footer .brand-cn{font-size:22px;letter-spacing:3px}.site-footer .brand-en{font-size:7px;letter-spacing:1.4px}.footer-top>p{text-align:left;grid-column:1/-1;grid-row:2;font-size:12px}.footer-top>p br{display:none}.footer-top>p span{font-size:11px;display:block}.footer-top>.text-link{font-size:11px;gap:14px}.footer-bottom{font-size:10px;display:grid;grid-template-columns:1fr auto;gap:11px;padding-top:15px}.footer-bottom>a:first-of-type{grid-column:1;grid-row:2}.footer-bottom>a:last-child{grid-column:2;grid-row:1}.mobile-cta{display:flex;position:fixed;z-index:15;left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));background:var(--paper);padding:5px;border:1px solid #d7caba;box-shadow:0 3px 20px #342e2912;transition:transform .2s,visibility .2s}.mobile-cta>a{display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:12px;min-height:45px;padding:9px 15px}.mobile-cta>a:first-child{flex:1;color:var(--wine)}.mobile-cta>a:first-child>span{font-size:10px}.mobile-cta>a:last-child{flex:1.1;background:var(--wine);color:var(--white)}.inquiry-visible .mobile-cta{visibility:hidden;transform:translateY(140%);pointer-events:none}.inquiry-dialog{padding:36px 23px 23px;width:calc(100vw - 28px)}.inquiry-dialog h2{font-size:25px;margin-top:10px}.dialog-description{font-size:12px}.inquiry-dialog textarea{font-size:13px;line-height:1.9}.image-dialog-bar{gap:10px;padding:12px}.image-dialog-bar p{font-size:12px}.image-nav{width:40px;height:40px}.dialog-close{width:38px;height:38px;right:10px;top:10px}.copy-status{font-size:11px}.is-pricing .image-stage{max-height:78svh}}
@media(max-width:360px){.section-wrap{padding-inline:18px}.site-header{padding-inline:18px}.home-visual{padding-inline:0}.home-intro h1{font-size:31px}.page-heading h1{font-size:28px}.home-links{gap:17px}.home-links .text-link{font-size:10px;gap:8px}.gallery-grid{gap-inline:11px}.gallery-caption strong{font-size:11px}.gallery-caption small{font-size:9px}.gallery-number{display:none}.package{padding:23px}.package-common ul{font-size:10px}.mobile-cta>a{padding-inline:12px;font-size:11px;gap:8px}.team-statement{gap:12px}.team-statement>img{width:64px;height:64px}.team-statement h2{font-size:21px}.footer-top>.text-link{font-size:10px;gap:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

.mobile-break{display:none}@media(max-width:600px){.mobile-break{display:block}.home-intro>p:last-child{text-wrap:balance}}
.team-statement .team-proof{padding-top:16px}.team-proof .text-link{font-size:12px}@media(max-width:600px){.team-proof .text-link{font-size:11px;gap:12px}}

/* Brand and contact details for the local contact draft. */
.brand{flex-direction:row;gap:14px}.brand-wordmark{display:inline-flex;flex-direction:column;align-items:center}.brand-mark{width:58px;height:58px;flex-shrink:0;object-fit:contain;mix-blend-mode:multiply}.site-footer .brand-mark{width:46px;height:46px}.page-contact .inquiry{align-items:start}.wechat-contact h2{font-size:30px;margin:14px 0 15px}.wechat-lead{font-size:13px;color:var(--muted);line-height:2}.wechat-card{max-width:330px;margin:22px 0 0;padding:14px 14px 18px;border:1px solid var(--line);background:#fff}.wechat-code-window{position:relative;display:block;width:100%;aspect-ratio:1;overflow:hidden;background:#fff}.wechat-code-window img{position:absolute;width:122.891566%;max-width:none;height:auto;left:-11.445783%;top:-47.590361%;user-select:auto;-webkit-touch-callout:default}.wechat-card figcaption{font:15px/1.9 var(--serif);text-align:center;margin:0 0 14px;color:var(--wine)}.wechat-image-actions{display:flex;justify-content:center;gap:23px}.wechat-image-actions .text-link{font-size:11px;gap:12px}.wechat-help{font-size:11px;color:var(--muted);line-height:1.9;margin-top:13px;max-width:330px}.contact-details{max-width:370px;margin:19px 0 0;padding:5px 0;border-block:1px solid var(--line)}.contact-details>div{display:flex;align-items:center;gap:12px;min-height:47px}.contact-details dt{font-size:12px;color:var(--muted);width:62px;flex-shrink:0}.contact-details dd{display:flex;justify-content:space-between;align-items:center;gap:10px;flex:1;min-width:0;margin:0;font-size:14px}.contact-details dd>a{display:flex;align-items:center;justify-content:space-between;width:100%;color:var(--wine);letter-spacing:1px}.contact-details dd>a>span{font-size:12px}.contact-copy{font-size:11px;padding:8px 10px;min-height:40px;min-width:57px;background:none;border:0;color:var(--wine);white-space:nowrap}#wechat-account{user-select:all;overflow-wrap:anywhere;min-width:0;font-size:13px}.contact-copy-status{font-size:11px;min-height:22px;color:var(--wine);line-height:1.8;margin-top:5px}.inquiry-copy>.inquiry-reminder{margin-top:17px}.form-description{font-size:12px;color:var(--muted);line-height:1.9;margin-top:9px}
@media(max-width:900px){.brand{gap:10px}.brand-mark{width:48px;height:48px}.wechat-contact h2{font-size:27px}.contact-details>div{gap:8px}.contact-details dt{width:53px}.contact-details dd{gap:5px}}
@media(max-width:600px){.brand{gap:8px}.brand-mark{width:44px;height:44px}.site-footer .brand{align-items:center}.site-footer .brand-mark{width:40px;height:40px}.site-footer .brand-wordmark{align-items:flex-start}.wechat-contact h2{font-size:28px}.wechat-lead{font-size:12px}.wechat-card{max-width:310px;margin-top:19px}.wechat-help{font-size:11px}.contact-details{max-width:100%;margin-top:17px}.contact-details dd{font-size:14px}.contact-details dt{width:58px}.form-description{font-size:11px}.wechat-contact{scroll-margin-top:105px}.inquiry-dialog #show-wechat{margin-top:10px}}
@media(max-width:360px){.brand-mark{width:40px;height:40px}.site-footer .brand-mark{width:35px;height:35px}.contact-details dt{width:51px}.wechat-card{padding:10px 10px 16px}.wechat-contact h2{font-size:25px}.wechat-image-actions{gap:18px}.wechat-image-actions .text-link{gap:8px}.contact-copy{padding-inline:6px;min-width:52px}}

/* Selected photographs: grouped on desktop, one at a time on phones. */
.carousel-frame{position:relative;background:var(--sand)}.carousel-stage{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);width:100%;aspect-ratio:3/2;overflow:hidden;isolation:isolate;touch-action:pan-y pinch-zoom}.carousel-stage.is-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.carousel-slide{position:relative;display:block;min-width:0;min-height:0;height:100%;margin:0}.carousel-slide>a{display:flex;align-items:center;justify-content:center;width:100%;height:100%;outline-offset:-6px}.carousel-slide img{width:100%;height:100%;max-height:100%;object-fit:contain;user-select:none;-webkit-user-drag:none}.carousel-slide.is-active{animation:carousel-reveal .65s ease both}.carousel-frame>.carousel-controls{position:absolute;inset:0;pointer-events:none}.carousel-arrow{position:absolute;z-index:2;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:42px;height:42px;padding:0;border:1px solid #d4c7b7;border-radius:50%;background:#fffdf9ed;color:var(--wine);font:22px/1 Georgia,serif;pointer-events:auto;box-shadow:0 2px 12px #342e2910}.carousel-arrow:hover{background:var(--white)}.carousel-prev{left:14px}.carousel-next{right:14px}.carousel-bottom .home-photo-caption{align-items:flex-start;gap:15px;padding:13px 0 0}.home-photo-caption>a{flex-shrink:0;font:11px/1.9 var(--sans);color:var(--wine)}.home-photo-caption>a>span{margin-left:12px}#carousel-caption{font:12px/1.9 var(--serif);color:var(--muted);letter-spacing:.7px}.carousel-utility{position:relative;display:flex;align-items:center;justify-content:center;min-height:44px;margin-top:5px;padding-inline:70px}.carousel-pagination{display:flex;justify-content:center;align-items:center;gap:0;flex-wrap:wrap}.carousel-dot{display:grid;place-items:center;width:24px;height:40px;padding:0;border:0;background:none}.carousel-dot::after{content:"";width:6px;height:6px;border:1px solid var(--wine);border-radius:50%;opacity:.6;transition:background .2s,opacity .2s}.carousel-dot[aria-current="true"]::after,.carousel-dot[aria-pressed="true"]::after,.carousel-dot.is-active::after{background:var(--wine);opacity:1}.carousel-toggle{position:absolute;right:0;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;min-width:63px;padding:7px 3px;border:0;background:none;color:var(--wine);font-size:11px}.carousel-toggle-icon{font-size:13px;line-height:1}.carousel-fallback{position:absolute;inset:0;display:grid;place-items:center;padding:24px;background:var(--sand);color:var(--muted);font-size:13px;text-align:center}
@keyframes carousel-reveal{from{opacity:.25}to{opacity:1}}
/* Native columns preserve the photograph and card as one unbroken piece. */
.gallery-grid.gallery-masonry{display:block;column-count:3;column-gap:28px;column-fill:balance}.gallery-masonry>.gallery-item{display:inline-block;width:100%;margin:0 0 32px;vertical-align:top;break-inside:avoid;-webkit-column-break-inside:avoid;page-break-inside:avoid}.gallery-masonry .gallery-image img{aspect-ratio:auto;height:auto}.gallery-masonry .gallery-caption{break-inside:avoid}
@media(max-width:900px){.gallery-grid.gallery-masonry{column-count:2;column-gap:24px}}
@media(max-width:600px){.carousel-stage{aspect-ratio:1}.carousel-stage.is-pair{grid-template-columns:minmax(0,1fr);gap:0}.carousel-bottom{padding-inline:22px}.carousel-arrow{width:38px;height:38px;font-size:20px}.carousel-prev{left:9px}.carousel-next{right:9px}.carousel-bottom .home-photo-caption{gap:10px;padding-top:12px}.home-photo-caption>a{font-size:10px}.home-photo-caption>a>span{margin-left:5px}#carousel-caption{font-size:11px;letter-spacing:0}.carousel-utility{padding-inline:64px;min-height:42px;margin-top:3px}.carousel-dot{width:24px;height:40px}.carousel-toggle{font-size:10px;min-width:60px}.gallery-grid.gallery-masonry{column-count:2;column-gap:14px}.gallery-masonry>.gallery-item{margin-bottom:25px}}
@media(max-width:360px){.carousel-bottom{padding-inline:18px}.carousel-utility{padding-inline:59px}.carousel-dot{width:22px}.carousel-toggle{gap:5px;min-width:54px}.gallery-grid.gallery-masonry{column-gap:11px}}
@media(prefers-reduced-motion:reduce){.carousel-slide.is-active{animation:none!important}}
