@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&display=swap";:root{--font-serif:"Source Han Serif SC", "Noto Serif CJK SC", "Songti SC", "STSong", serif;--font-sans:"Source Han Sans SC", "Noto Sans CJK SC", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-en:"Cormorant Garamond", Georgia, serif;--color-heading:#5e6857;--color-body:#4a4a46;--color-muted:#4a4a46d6;color:var(--color-body);font-family:var(--font-sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#f7f2ea}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;min-height:100vh;margin:0;overflow-x:hidden}a{color:inherit;text-decoration:none}.site-shell{background:linear-gradient(#ffffff6b,#f7f2eaf5 54%,#f7f2ea),radial-gradient(circle at 86% 12%,#dde5d46b,#0000 22rem),radial-gradient(circle at 12% 70%,#ebdfcd85,#0000 18rem),#f7f2ea;min-height:100vh;position:relative;overflow:hidden}.site-shell:before,.site-shell:after{content:"";pointer-events:none;height:820px;position:absolute;top:0;left:0;right:0}.site-shell:before{z-index:0;filter:saturate(.76)contrast(.94)brightness(1.12);background-color:#0000;background-image:-webkit-linear-gradient(270deg,#2a271a14,#f7f2ea14 56%,#f7f2ea 100%),-webkit-image-set(url(/assets/hero-studio.webp) 1x type("image/webp"),url(/assets/hero-studio.jpg) 1x type("image/jpeg"));background-image:linear-gradient(#2a271a14,#f7f2ea14 56%,#f7f2ea 100%),image-set("/assets/hero-studio.webp" 1x type("image/webp"),"/assets/hero-studio.jpg" 1x type("image/jpeg"));background-position:68% 42%;background-repeat:repeat,repeat;background-size:cover;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box}.site-shell:after{z-index:0;-webkit-backdrop-filter:blur(.6px);backdrop-filter:blur(.6px);background:linear-gradient(90deg,#f7f2eafc 0%,#f7f2eaf0 25%,#f7f2eaad 44%,#f7f2ea38 66%,#f7f2ea0a 100%),linear-gradient(#ffffff85 0%,#ffffff05 52%,#f7f2ea 100%),radial-gradient(at 22% 34%,#ffffffe0,#0000 27rem),radial-gradient(at 62% 94%,#f7f2ead1,#0000 18rem)}.header,main,.footer{z-index:1;position:relative}.header{grid-template-columns:minmax(210px,1fr) auto minmax(118px,1fr);align-items:center;gap:28px;width:min(1420px,100% - 72px);margin:0 auto;padding:28px 0 12px;display:grid}.brand,.footer-brand{align-items:center;gap:12px;display:inline-flex}.leaf-logo{fill:none;width:44px;height:44px;stroke:var(--color-heading);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.6px;flex:none}.brand strong,.footer-brand strong{color:#535d4d;font-family:var(--font-serif);letter-spacing:.08em;font-size:clamp(1.18rem,1.7vw,1.55rem);font-weight:500;line-height:1.25;display:block}.brand small,.footer-brand small{color:#4a4a46c2;font-family:var(--font-en);letter-spacing:.12em;text-transform:none;margin-top:4px;font-size:.82rem;font-weight:500;display:block}.nav{color:#4a4a46db;font-family:var(--font-sans);letter-spacing:.08em;white-space:nowrap;justify-content:center;gap:clamp(22px,4vw,72px);font-weight:300;display:flex}.nav a{color:inherit;letter-spacing:inherit;padding:10px 0 16px;font-size:.96rem;position:relative}.nav a:after{content:"";background:#6f7f65;width:0;height:2px;margin:auto;transition:width .18s;position:absolute;bottom:0;left:0;right:0}.nav a:hover:after,.nav a.active:after{width:34px}.nav-cta{color:#fff;letter-spacing:.06em;background:#6f7f65;border-radius:999px;justify-self:end;padding:13px 28px;font-weight:400;transition:transform .18s,box-shadow .18s,background-color .18s;box-shadow:0 12px 26px #3f46381f}.button{letter-spacing:.06em;border-radius:999px;justify-content:center;align-items:center;gap:10px;min-height:48px;font-size:.98rem;font-weight:400;transition:transform .18s,box-shadow .18s,background-color .18s;display:inline-flex}.button:hover,.nav-cta:hover{transform:translateY(-3px);box-shadow:0 18px 34px #3f463829}.button.primary{color:#fff;background:#6f7f65;padding:0 34px}.button.secondary{color:var(--color-body);padding:0 10px}.play-dot{background:#ffffff6b;border:1px solid #3f463870;border-radius:50%;width:42px;height:42px;position:relative}.play-dot:after{content:"";border-top:7px solid #0000;border-bottom:7px solid #0000;border-left:9px solid #6f7f65;width:0;height:0;position:absolute;top:50%;left:53%;transform:translate(-50%,-50%)}.hero{grid-template-columns:minmax(460px,.92fr) minmax(320px,1.08fr);align-items:center;gap:32px;width:min(1420px,100% - 72px);min-height:690px;margin:0 auto;padding:44px 0 110px;display:grid;position:relative}.hero:before,.hero:after{display:none}.hero-copy{max-width:660px;padding-left:clamp(0px,5vw,78px);animation:.9s both fadeUp}.hero h1{color:var(--color-heading);font-family:var(--font-serif);letter-spacing:.06em;margin:0 0 34px;font-size:clamp(4.4rem,7.2vw,7.6rem);font-weight:500;line-height:1.18}.hero h1 span{white-space:nowrap;display:block}.hero-kicker{color:#4a4a46c7;font-family:var(--font-serif);letter-spacing:.14em;margin:0 0 30px;font-size:clamp(1rem,1.65vw,1.36rem);font-weight:400;line-height:1.8}.hero-body{color:#4a4a46d6;letter-spacing:.04em;margin:0 0 42px;font-size:clamp(1rem,1.4vw,1.22rem);font-weight:300;line-height:1.9}.hero-actions{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.hero-visual-space{min-height:430px}.services{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffb8;border:1px solid #ffffffc7;border-radius:24px 24px 0 0;grid-template-columns:repeat(4,minmax(0,1fr));width:min(1420px,100% - 72px);margin:-82px auto 0;padding:44px 36px;display:grid;box-shadow:0 26px 70px #3f46381a}.service-card{border-right:1px solid #6f7f652e;grid-template-columns:82px 1fr;gap:20px;min-height:164px;padding:10px 34px;transition:transform .18s,box-shadow .18s,background-color .18s;display:grid}.service-card:last-child{border-right:0}.service-card:hover{background:#ffffff94;border-radius:22px;transform:translateY(-4px);box-shadow:0 20px 42px #3f46381a}.service-icon-wrap{background:#dde5d4a3;border-radius:50%;place-items:center;width:70px;height:70px;display:grid}.service-icon{fill:none;stroke:#81926e;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.2px;width:42px;height:42px}.service-card h2{color:var(--color-heading);font-family:var(--font-serif);letter-spacing:.06em;margin:2px 0 12px;font-size:1.24rem;font-weight:500;line-height:1.35}.service-card p{color:#4a4a46db;letter-spacing:.03em;max-width:17em;margin:0 0 20px;font-weight:400;line-height:1.85}.service-card a{color:#4a4a46e6;letter-spacing:.05em;font-size:.94rem;font-weight:400}.quote-section{background:linear-gradient(90deg,#f4eadbdb,#ffffff85);justify-content:center;align-items:center;gap:28px;width:min(1420px,100% - 72px);margin:0 auto;padding:36px 32px;display:flex}.quote-mark{color:#c1a777;font-family:var(--font-en);font-size:4rem;line-height:.8}.quote-section p{color:#515a4c;font-family:var(--font-serif);letter-spacing:.08em;text-align:center;margin:0;font-size:clamp(1.08rem,2vw,1.5rem);font-weight:500;line-height:1.9}.quote-leaf{fill:none;stroke:#6f7f65;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.2px;opacity:.78;width:98px;height:42px}.about,.assessment-section,.booking{width:min(1180px,100% - 72px);margin:92px auto 0}.section-eyebrow{color:#65745d;font-family:var(--font-en);letter-spacing:.24em;margin-bottom:12px;font-size:.86rem;font-weight:500}.about{background:#ffffff8a;border:1px solid #ffffffc2;border-radius:30px;grid-template-columns:minmax(240px,.72fr) minmax(0,1.28fr);align-items:center;gap:58px;padding:52px 56px;display:grid;box-shadow:0 24px 64px #3f463814}.about-heading{align-content:center;min-height:230px;display:grid}.about-heading h2{margin:22px 0 12px;font-size:clamp(2.1rem,3.4vw,3.15rem)}.about-heading p{color:#4a4a4694;font-family:var(--font-en);letter-spacing:.12em;margin:0;font-size:1.08rem}.about-copy{border-left:1px solid #6f7f652e;gap:18px;padding-left:42px;display:grid}.about-copy p{color:#4a4a46e0;letter-spacing:.035em;margin:0;font-size:1.08rem;font-weight:400;line-height:1.95}.about h2,.assessment-section h2,.booking h2{color:var(--color-heading);font-family:var(--font-serif);letter-spacing:.07em;font-size:clamp(2rem,3.6vw,3.3rem);font-weight:500;line-height:1.32}.assessment-section{scroll-margin-top:32px}.assessment-section h2{margin:0 0 28px}.assessment-card{background:linear-gradient(104deg,#ffffff47,#ffffff1a),linear-gradient(104deg,#ffe08a 0%,#ffb2a1 48.7%,#8ee6d1 49%,#9fc8ff 100%);border:1px solid #ffffffc7;border-radius:30px;grid-template-columns:repeat(2,minmax(0,1fr));min-height:320px;display:grid;position:relative;overflow:hidden;box-shadow:0 24px 64px #3f463814}.assessment-card:after{content:"";transform-origin:50%;background:linear-gradient(#0000,#ffffffbd 18%,#545c5233 50%,#ffffffb8 82%,#0000);width:1px;position:absolute;top:-18%;bottom:-18%;left:50%;transform:rotate(14deg)}.assessment-card:before{content:"";pointer-events:none;background:linear-gradient(90deg,#ffffff8a,#ffffff47),radial-gradient(circle at 18% 24%,#ffffff7a,#0000 12rem),radial-gradient(circle at 84% 72%,#ffffff61,#0000 13rem);position:absolute;inset:0}.assessment-pane{z-index:1;flex-direction:column;justify-content:center;align-items:flex-start;min-height:320px;padding:54px 58px;display:flex;position:relative}.assessment-pane:first-child{padding-right:76px}.assessment-pane:last-child{padding-left:72px}.assessment-label{color:#474d45b3;font-family:var(--font-en);letter-spacing:.24em;margin:0 0 14px;font-size:.82rem;font-weight:500}.assessment-pane h3{color:var(--color-heading);font-family:var(--font-serif);letter-spacing:.06em;margin:0 0 18px;font-size:clamp(1.7rem,3vw,2.56rem);font-weight:500}.assessment-pane p:not(.assessment-label){color:#4a4a46e0;letter-spacing:.035em;max-width:29em;margin:0 0 30px;font-size:1.02rem;line-height:1.9}.assessment-button{color:#fff;letter-spacing:.06em;background:#ef6f61;border-radius:999px;justify-content:center;align-items:center;min-height:46px;padding:0 28px;font-size:.96rem;font-weight:400;transition:transform .18s,box-shadow .18s,background-color .18s;display:inline-flex;box-shadow:0 14px 28px #bc58492e}.assessment-button:hover{transform:translateY(-3px);box-shadow:0 18px 34px #3f463829}.assessment-pane:last-child .assessment-button{background:#3f8fa3;box-shadow:0 14px 28px #3f8fa32e}.booking{background:linear-gradient(110deg,#dde5d4d1,#ffffffad),#ffffffb8;border-radius:32px;grid-template-columns:1fr auto;align-items:center;gap:34px;margin-bottom:92px;padding:54px 60px;display:grid;box-shadow:0 24px 64px #3f463817}.booking h2{margin:0 0 18px}.booking p{color:#4a4a46e0;letter-spacing:.035em;max-width:680px;margin:0;font-size:1.05rem;font-weight:400;line-height:1.9}.booking-page{z-index:1;align-content:center;gap:42px;width:min(1180px,100% - 72px);min-height:100vh;margin:0 auto;padding:52px 0;display:grid;position:relative}.booking-brand{align-items:center;gap:12px;width:fit-content;display:inline-flex}.booking-brand strong{color:#535d4d;font-family:var(--font-serif);letter-spacing:.08em;font-size:clamp(1.18rem,1.7vw,1.55rem);font-weight:500;display:block}.booking-brand small{color:#4a4a46c2;font-family:var(--font-en);letter-spacing:.12em;margin-top:4px;font-size:.82rem;display:block}.booking-panel{background:linear-gradient(120deg,#ffffffb3,#dde5d475),#ffffff9e;border:1px solid #ffffffc7;border-radius:32px;grid-template-columns:minmax(0,.95fr) minmax(320px,1.05fr);align-items:start;gap:46px;padding:58px;display:grid;box-shadow:0 24px 64px #3f463817}.booking-panel h1{color:var(--color-heading);font-family:var(--font-serif);letter-spacing:.08em;margin:0 0 22px;font-size:clamp(2.6rem,5vw,5rem);font-weight:500}.booking-panel p{color:#4a4a46d1;letter-spacing:.035em;max-width:34em;margin:0;font-size:1.08rem;line-height:1.95}.contact-list{gap:14px;display:grid}.contact-item{background:#ffffff8f;border:1px solid #6f7f6529;border-radius:18px;gap:8px;padding:20px 22px;display:grid}.contact-item span{color:#4a4a4694;letter-spacing:.12em;font-size:.88rem}.contact-item strong{color:#4f5d4a;letter-spacing:.04em;font-size:1.12rem;font-weight:500}.booking-panel .button{width:fit-content}.footer{color:#4a4a46b3;border-top:1px solid #6f7f6529;justify-content:space-between;align-items:center;gap:24px;width:min(1420px,100% - 72px);margin:0 auto;padding:32px 0 44px;display:flex}.footer p{margin:0}@keyframes fadeUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes slowFloat{0%,to{transform:translate(0,0)rotate(0)}50%{transform:translateY(-12px)rotate(1deg)}}@media (width<=1180px){.header{grid-template-columns:1fr auto}.nav{order:3;grid-column:1/-1;justify-content:space-between;gap:18px;padding-bottom:2px;overflow-x:auto}.hero{grid-template-columns:1fr;min-height:auto;padding-top:38px}.hero-copy{max-width:720px;padding-left:0}.hero-visual-space{min-height:390px}.services{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:-48px}.service-card:nth-child(2n){border-right:0}.service-card:nth-child(-n+2){border-bottom:1px solid #6f7f6529}}@media (width<=760px){.site-shell:before,.site-shell:after{height:610px}.site-shell:before{background-position:58% 0}.site-shell:after{background:linear-gradient(#f7f2eae6 0%,#f7f2ea9e 40%,#f7f2ea 100%),radial-gradient(at 42% 18%,#ffffffb8,#0000 20rem)}.header,.hero,.services,.quote-section,.about,.assessment-section,.booking,.booking-page,.footer{width:min(100% - 32px,680px)}.header{grid-template-columns:1fr;gap:16px;padding-top:20px}.brand{align-items:flex-start}.leaf-logo{width:38px;height:38px}.nav{flex-wrap:wrap;justify-content:flex-start;gap:4px 22px;margin-right:0;padding-right:0;overflow:visible}.nav a{padding:8px 0 12px;font-size:.94rem}.nav-cta{display:none}.hero{gap:0;padding:32px 0 28px}.hero h1{letter-spacing:.045em;margin-bottom:20px;font-size:clamp(3rem,14vw,4.8rem)}.hero-kicker{font-size:1rem;line-height:1.8}.hero-body{margin-bottom:30px;font-size:1rem}.hero-actions{align-items:stretch}.button.primary{width:100%;padding:0 22px}.button.secondary{justify-content:flex-start;width:100%;padding-left:0}.hero-visual-space{display:none}.services{border-radius:22px;grid-template-columns:1fr;margin-top:18px;padding:22px}.service-card,.service-card:nth-child(2n){border-bottom:1px solid #6f7f6529;border-right:0;grid-template-columns:62px 1fr;min-height:0;padding:22px 4px}.service-card:last-child{border-bottom:0}.service-icon-wrap{width:54px;height:54px}.service-icon{width:34px;height:34px}.service-card h2{font-size:1.14rem}.service-card p{max-width:none;margin-bottom:14px;line-height:1.75}.quote-section{border-radius:0 0 22px 22px;flex-direction:column;gap:8px;padding:34px 22px}.quote-mark{height:38px}.about{border-radius:24px;margin-top:64px;padding:30px 24px;display:block}.about h2,.assessment-section h2,.booking h2{font-size:clamp(2rem,11vw,2.7rem)}.about h2{margin:0 0 22px}.about-heading{min-height:0}.about-heading p{margin-bottom:24px}.about-copy{border-left:0;gap:16px;padding-left:0}.assessment-section{margin-top:48px}.assessment-card{background:linear-gradient(174deg,#ffffff4d,#ffffff1a),linear-gradient(174deg,#ffe08a 0%,#ffb2a1 48.7%,#8ee6d1 49%,#9fc8ff 100%);border-radius:24px;grid-template-columns:1fr;min-height:0}.assessment-card:after{width:auto;height:1px;inset:50% -14% auto;transform:rotate(-6deg)}.assessment-pane,.assessment-pane:last-child{min-height:0;padding:34px 24px}.assessment-pane:first-child{padding-right:24px}.assessment-pane h3{font-size:clamp(1.7rem,9vw,2.28rem)}.assessment-pane p:not(.assessment-label){max-width:none;font-size:1rem}.about p,.booking p{font-size:1rem;line-height:1.95}.booking{border-radius:24px;grid-template-columns:1fr;margin-top:48px;margin-bottom:58px;padding:34px 24px}.booking-page{gap:28px;padding:30px 0 54px}.booking-panel{border-radius:24px;grid-template-columns:1fr;gap:28px;padding:34px 24px}.booking-panel h1{font-size:clamp(2.5rem,14vw,4.2rem)}.footer{flex-direction:column;align-items:flex-start;padding-bottom:32px}}@media (width<=420px){.brand strong,.footer-brand strong{font-size:1.06rem}.brand small,.footer-brand small{font-size:.58rem}.hero h1{letter-spacing:.035em;font-size:2.9rem}.hero-visual-space{height:330px}.service-card{gap:14px}}
