@charset "UTF-8";
:root{--green:#234d43;--ink:#233e35;--cream:#faf8f2;--muted:#758078;--pink:#e5c5c4;--line:#dde1d9}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Arial,"PingFang SC","Microsoft YaHei",sans-serif;font-size:15px;line-height:1.7}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea{outline-offset:5px}button{cursor:pointer}img{display:block;max-width:100%}.site-header{position:sticky;top:0;z-index:10;height:96px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:#faf8f2f5;border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.wordmark{display:flex;gap:12px;font-size:23px;letter-spacing:2px;font-weight:700;align-items:center;line-height:1.2}.mark{font-family:Georgia,serif;font-size:44px;font-weight:400;letter-spacing:-6px}.mark span{font-size:21px;position:relative;top:8px;color:#c88990;letter-spacing:0}.wordmark-sub{display:block;font-size:9px;letter-spacing:3px;margin-top:7px;font-weight:400}nav{display:flex;gap:29px;font-size:14px}nav a{border-bottom:1px solid transparent}nav a:hover,nav a[aria-current]{border-color:var(--green)}.nav-actions{display:flex;align-items:center;gap:22px}.language{font-size:12px;letter-spacing:1px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:24px;padding:15px 23px;background:var(--green);border:1px solid var(--green);border-radius:2px;color:white;font-size:14px;transition:background .2s,transform .2s}.button:hover{background:#18382f;transform:translateY(-1px)}.button.small{padding:10px 17px;gap:28px;font-size:13px}.menu-button{display:none;background:none;border:0;color:var(--green);font-size:23px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:620px;max-width:1700px;margin:auto}.hero-copy{padding:80px 5vw 65px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:600;margin:0 0 24px;color:var(--green)}h1{font-size:clamp(38px,4.5vw,67px);font-weight:500;letter-spacing:-1.5px;line-height:1.2;margin:0 0 28px}body[data-lang=en] h1,body[data-lang=en] h2{font-family:Georgia,serif;letter-spacing:-1px}.hero-description{max-width:450px;font-size:15px;color:#6c796f;line-height:1.9;margin:0 0 32px}.hero-actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap}.text-link{display:inline-block;font-size:13px;border-bottom:1px solid #879b90;padding:3px 0}.hero-footnote{margin-top:54px;font-size:11px;color:#849086;display:flex;align-items:center;gap:9px;letter-spacing:1px}.tiny-dot{width:6px;height:6px;border-radius:50%;background:#bb7e87}.hero-art{position:relative;margin:26px 26px 26px 0;background:#e4c3cb;display:flex;align-items:center;border-radius:2px;overflow:hidden}.hero-art>img{width:100%;height:auto;object-fit:contain;loading:eager}.image-label{position:absolute;bottom:17px;left:20px;right:20px;display:flex;justify-content:space-between;background:#faf8f2ed;border:1px solid #fff9;padding:13px 17px;font-size:10px;letter-spacing:1px}.image-label span:first-child{font-family:Georgia,serif;font-size:16px;font-style:italic}.ticker{display:flex;align-items:center;justify-content:space-around;padding:24px 5%;background:#eff0e9;border-block:1px solid #dce2d8;gap:15px;font-size:11px;letter-spacing:3px}.ticker i{font-size:21px;color:#b88186;font-style:normal}.section{padding:86px 5%;max-width:1600px;margin:auto}.section-top{display:flex;justify-content:space-between;gap:40px;align-items:flex-end;margin-bottom:39px}.section-top .eyebrow{margin-bottom:17px}h2{margin:0;font-size:clamp(30px,3.3vw,48px);line-height:1.3;font-weight:500;letter-spacing:-.8px}.section-description{max-width:350px;line-height:1.8;font-size:14px;color:#7b847b;margin:0 0 7px}.content-grid{display:grid;gap:22px}.layout-one{grid-template-columns:1fr}.layout-two{grid-template-columns:repeat(2,minmax(0,1fr))}.layout-three{grid-template-columns:repeat(3,minmax(0,1fr))}.layout-four{grid-template-columns:repeat(4,minmax(0,1fr))}.layout-carousel{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:16px}.layout-carousel>article{min-width:330px;max-width:420px;scroll-snap-align:start;flex:0 0 32%}.content-card{min-width:0}.image-open{padding:0;width:100%;border:0;background:#f0e9e7;position:relative;display:block;overflow:hidden;aspect-ratio:4/3}.image-open>img{width:100%;height:100%;object-fit:contain;transition:transform .5s}.image-open:hover>img{transform:scale(1.02)}.image-expand{position:absolute;bottom:12px;right:12px;width:29px;height:29px;background:#fff9;display:grid;place-items:center;border-radius:50%;color:var(--ink)}.card-copy{position:relative;padding:21px 28px 12px 0}.card-index{position:absolute;right:0;top:25px;font-size:11px;color:#9a9f97}h3{font-size:20px;font-weight:500;line-height:1.4;margin:0 0 10px}.card-copy p{font-size:13px;color:#788276;line-height:1.9;margin:0 0 15px}.section-gallery{background:#edece4;max-width:none}.section-gallery .section-top,.section-gallery .content-grid{max-width:1440px;margin-left:auto;margin-right:auto}.section-gallery .image-open{background:#e0e3de;aspect-ratio:3/4}.section-services .content-card{display:grid;grid-template-columns:150px 1fr;border:1px solid var(--line);background:#ffffff60;padding:20px;gap:24px;align-items:center}.section-services .image-open{aspect-ratio:1}.section-services .card-copy{padding-top:8px}.section-services .card-index{display:none}.section-process{background:var(--green);color:#f8f4e8;max-width:none}.section-process .eyebrow{color:#c7d1bf}.section-process .section-description{color:#c5cbbb}.section-process .content-grid{grid-template-columns:repeat(4,1fr);gap:30px}.step{border-top:1px solid #ffffff35;padding-top:24px}.step-no{font-family:Georgia,serif;font-size:34px;color:#dec3bd;display:block;margin-bottom:24px}.step p{font-size:13px;color:#c4ccbe;margin:10px 0 5px;line-height:1.9}.section-catalogue .image-open{aspect-ratio:3/4;background:white}.section-catalogue .image-open img{object-fit:contain}.section-catalogue .button{margin-top:28px}.section-about{border-top:1px solid var(--line)}.section-about .content-grid{gap:50px}.section-about .image-open{aspect-ratio:16/10;background:#eee5e0}.section-about .about-card:last-child .image-open{padding:50px;background:#f1e9e7}.stats{padding:30px 5%;display:flex;justify-content:space-around;gap:25px;border-bottom:1px solid var(--line)}.stats strong{font-family:Georgia,serif;font-weight:400;font-size:34px;display:block}.stats span{font-size:12px;color:var(--muted)}.contact-section{background:#eee3df;padding:80px 5%;display:grid;grid-template-columns:1fr 1fr;gap:8vw}.contact-copy h2{font-size:clamp(30px,3.7vw,50px)}.contact-copy>p:not(.eyebrow){color:#72796c;font-size:14px;max-width:410px}.contact-links{margin-top:33px;max-width:420px}.contact-links>a,.contact-links>div{display:grid;grid-template-columns:1fr auto;position:relative;padding:13px 25px 14px 0;border-bottom:1px solid #c8cfc2}.contact-links small{display:block;grid-column:1/-1;font-size:11px;color:#7c8176}.contact-links strong{font-weight:400;font-size:22px}.contact-links span{position:absolute;right:0;top:25px}.inquiry-form{padding:32px;background:#faf8f2;border:1px solid #e2d8cf;border-radius:3px}.inquiry-form>p{font-size:12px;color:#7b8376;margin-top:0}.inquiry-form label{display:block;font-size:12px;margin:15px 0;color:#5b6d5f}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}input,textarea{border:0;border-bottom:1px solid #bec9bb;background:transparent;width:100%;border-radius:0;padding:11px 0;color:var(--ink);font-size:14px}textarea{resize:vertical;min-height:110px}.inquiry-form .consent{display:flex;align-items:flex-start;gap:9px;font-size:11px;margin:18px 0}.consent input{width:13px;height:13px;flex-shrink:0;margin-top:4px}.consent a{text-decoration:underline}.inquiry-form .honeypot{position:absolute;left:-10000px}.inquiry-form .button{width:100%}#form-status{min-height:20px;margin:10px 0 0;color:var(--green)}footer{padding:60px 5% 25px;background:var(--cream)}.footer-top{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:30px;border-bottom:1px solid var(--line);padding-bottom:32px}.footer-brand{font-family:Georgia,serif;font-size:26px;letter-spacing:2px}.footer-brand span{display:block;font:9px Arial;letter-spacing:2px;margin-top:8px}.footer-top p{font-size:12px;color:#818779}.footer-values{letter-spacing:1px}.footer-nav{display:grid;grid-template-columns:1fr 1fr;gap:15px;font-size:12px;padding:10px 0}.footer-logo{align-self:center;width:100%;max-width:330px}.privacy{max-width:850px;font-size:11px;color:#8b9084;margin:22px 0}.privacy p{margin-top:7px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#8c9486}.floating-contact{position:fixed;right:20px;bottom:20px;z-index:8;padding:12px 19px;border-radius:30px;background:var(--green);color:#fff;font-size:12px;box-shadow:0 4px 15px #0001}.preview-banner{background:#ffe9ac;padding:8px 5%;font-size:13px}.preview-banner a{text-decoration:underline;margin-left:25px}.preview-note{font-size:12px;color:#93621c}dialog{width:min(1050px,96vw);max-height:94vh;border:0;padding:32px;border-radius:4px;background:var(--cream)}dialog::backdrop{background:#172a22d9}#image-close{position:absolute;top:5px;right:12px;border:0;background:none;font-size:30px;color:var(--ink)}#image-full{width:100%;object-fit:contain;max-height:78vh}#image-caption{margin:15px 0 0;font-size:13px}.carousel-controls{display:flex;gap:10px;margin-top:15px}.carousel-controls button{border:1px solid #bac7b7;background:none;padding:8px 20px}
@media(min-width:1700px){.hero-copy{padding-left:80px}.hero{min-height:660px}}
@media(max-width:1000px){nav{gap:18px;font-size:12px}.site-header{padding:0 4%;height:80px}.nav-actions{gap:15px}.wordmark{font-size:19px}.hero-copy{padding:55px 4vw}.hero{min-height:510px}.hero-art{margin:20px 20px 20px 0}.hero-actions{gap:18px}.section{padding:65px 4%}.section-services .content-card{grid-template-columns:100px 1fr;padding:16px;gap:16px}.section-services h3{font-size:17px}.contact-section{padding:60px 4%;gap:4vw}.inquiry-form{padding:23px}}
@media(max-width:760px){.site-header{height:74px}.wordmark{font-size:17px;gap:7px}.wordmark-sub{font-size:7px;letter-spacing:2px}.mark{font-size:34px}.nav-actions .button{display:none}.menu-button{display:block}nav{display:none;position:absolute;left:0;right:0;top:73px;padding:22px 5%;background:var(--cream);border-bottom:1px solid var(--line);flex-direction:column;gap:18px;font-size:15px}nav.open{display:flex}.hero{grid-template-columns:1fr}.hero-copy{padding:44px 6% 35px}.hero h1{font-size:42px;letter-spacing:-1px}.hero-description{font-size:14px}.hero-footnote{margin-top:30px}.hero-art{margin:0 5% 24px}.image-label{font-size:8px;padding:9px 12px}.ticker{padding:18px 4%;font-size:8px;letter-spacing:1px;flex-wrap:wrap;gap:12px}.ticker i{font-size:13px}.section{padding:54px 5%}.section-top{display:block;margin-bottom:28px}.section-description{margin-top:20px;max-width:none}.section-top .eyebrow{margin-bottom:13px}h2{font-size:33px}.layout-three,.layout-four,.layout-two{grid-template-columns:1fr}.section-gallery .content-grid{grid-template-columns:1fr}.section-gallery .image-open{aspect-ratio:4/3}.section-services .content-grid{grid-template-columns:1fr}.section-services .content-card{grid-template-columns:110px 1fr}.section-process .content-grid{grid-template-columns:1fr 1fr;gap:20px}.step-no{font-size:28px;margin-bottom:13px}.step h3{font-size:16px}.step p{font-size:12px}.section-catalogue .content-grid{grid-template-columns:1fr 1fr;gap:16px}.section-catalogue h3{font-size:15px}.section-about .content-grid{gap:20px}.contact-section{grid-template-columns:1fr;padding:50px 5%;gap:28px}.contact-copy h2{font-size:34px}.contact-links{max-width:none}.inquiry-form{padding:25px}.form-row{grid-template-columns:1fr;gap:0}.footer-top{grid-template-columns:1fr;gap:18px}.footer-logo{width:260px}.footer-bottom{display:block}.footer-bottom span{display:block;margin:5px 0}.stats{flex-wrap:wrap;justify-content:flex-start}.stats>div{width:42%}.floating-contact{right:12px;bottom:12px;padding:10px 15px}.layout-carousel>article{min-width:270px}.section-catalogue .card-copy{padding-right:0}.section-catalogue .card-index{display:none}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
