/* Residence atelier. Page-scoped art direction, shared interactions stay native. */
body.home.atelier{--gutter:6%;--section:112px;--sage:#7b886e;background:#f4f3ee}
body.atelier .site-header{padding:22px var(--gutter);min-height:96px;background:#f4f3ee;gap:24px}
body.atelier .brand img{width:205px}
body.atelier .main-nav{font-size:11px;gap:30px}
body.atelier .edition-chip{font-size:9px;letter-spacing:.16em;min-height:32px;padding:8px 14px;border-radius:2px;background:linear-gradient(130deg,#ffffff80,#e2e6da40);border-color:#bbc3b340}
body.atelier .display-heading{font-size:clamp(43px,4.8vw,74px);line-height:1.09;letter-spacing:-.065em}
body.atelier .display-heading em{font-weight:400;letter-spacing:-.04em}
body.atelier .key-button{background:linear-gradient(115deg,#33493d,#20352c 68%);box-shadow:inset 0 0 0 1px #6e8070,inset 0 0 0 3px #eff0e113,0 6px 14px #20352c18;gap:28px}
body.atelier .key-button.pale{background:linear-gradient(115deg,#fafbf5,#e1e6d9)}
body.atelier .button-arrow{background:linear-gradient(130deg,#fbfcf4,#b4bfaa 45%,#dce2d4 74%,#a9b49f);border-color:#e7eddf}
body.atelier .reading-progress{position:fixed;inset:0 auto auto 0;height:2px;background:#8b9a7a;width:100%;transform:scaleX(0);transform-origin:left;z-index:100;pointer-events:none}
@supports(animation-timeline:scroll()){body.atelier .reading-progress{animation:residence-progress linear;animation-timeline:scroll()}}
@keyframes residence-progress{to{transform:scaleX(1)}}
body.atelier .key-hero{padding:44px var(--gutter) 0;min-height:0;border-radius:0;background:radial-gradient(ellipse at 26% 66%,#b6c3a625,transparent 50%),var(--paper)}
body.atelier .hero-copy{width:100%;max-width:1060px;margin:auto;text-align:center}
body.atelier .hero-copy .edition-chip{margin:0 0 24px}
body.atelier .hero-copy h1{font-size:clamp(48px,5.3vw,82px);line-height:1.09;font-weight:300;letter-spacing:-.064em;margin:0 0 23px}
body.atelier .hero-copy h1 em{font-size:1.15em;color:#718064;font-weight:400}
body.atelier .hero-lead{font-size:14px;line-height:1.85;color:#62705e;margin:0}




















body.atelier .hero-foot{position:relative;inset:auto;max-width:1280px;margin:30px auto 0;padding:18px 0 24px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #20352c1c;gap:18px;color:var(--muted)}
body.atelier .hero-foot .fine-link{font-size:10px;border:0;gap:24px}
body.atelier .hero-foot-signature{font-size:8px;letter-spacing:.17em}
body.atelier .hero-foot-signature i{font-style:normal;padding:0 15px;color:#95a187}
body.atelier .hero-foot button{color:#52634a;background:transparent;border:1px solid #9baa8b3b;backdrop-filter:none;font-size:9px;min-height:36px}
body.atelier .company-deck{padding:100px var(--gutter) 45px;border-radius:100px 0 0 0;background:radial-gradient(ellipse at 50% 55%,#798a6040,transparent 67%),repeating-linear-gradient(90deg,transparent 0,transparent calc(20% - 1px),#e2e8d409 calc(20% - 1px),#e2e8d409 20%),#20352c}
body.atelier .deck-heading .edition-chip{background:#ffffff07;color:#e6edda;border-color:#e6edda26}
body.atelier .deck-heading .display-heading{font-size:clamp(44px,4.8vw,73px);margin-bottom:23px}
body.atelier .deck-heading>p:last-child{font-size:14px}
body.atelier .residence-deck{max-width:1110px;margin:66px auto 70px;padding:0 25px;gap:3px}
body.atelier .pass-surface{border-radius:13px 13px 3px 13px;background:linear-gradient(125deg,#fffef7,#dfe6d5);padding:9px 9px 0;box-shadow:inset 0 0 0 2px #fbfff3}
body.atelier .pass-top{height:38px;font-size:8px;letter-spacing:.11em}
body.atelier .residence-pass figure{height:278px;border-radius:7px 7px 1px 1px}
body.atelier .residence-pass figcaption{font-size:8px}
body.atelier .pass-copy{padding:26px 22px}
body.atelier .pass-copy h3{font-size:25px}
body.atelier .pass-copy>p{font-size:12px;line-height:1.8}
body.atelier .pass-copy .fine-link{font-size:11px}
body.atelier .deck-end{padding-top:30px}
body.atelier .deck-end>span{font-size:10px}
body.atelier .value-section{background:radial-gradient(ellipse at 26% 62%,#b7c5a729,transparent 56%),#f4f3ee;padding-top:100px;padding-bottom:104px}
body.atelier .value-section .section-heading{margin-bottom:54px;align-items:center}
body.atelier .value-section .residence{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:7%;align-items:center;grid-template-areas:"portal invitation"}
body.atelier .value-section .invitation{grid-area:invitation;padding:0}
body.atelier .value-section .experience{grid-area:portal;min-width:0;max-width:none}
body.atelier .value-section .display-heading{font-size:clamp(40px,4.5vw,69px)}
body.atelier .intro{max-width:400px;font-size:14px;color:#65705f;line-height:1.9}
body.atelier .key-selection{margin-top:35px}
body.atelier .choose-label{font-size:9px;letter-spacing:.12em}
body.atelier .keys{gap:9px}
body.atelier .key-control{min-height:159px;border-radius:34px 2px 2px 2px;background:linear-gradient(130deg,#fefef8,#e1e7d8);box-shadow:inset 0 0 0 1px #ffffffc9,0 10px 18px -14px #20352c40;padding:13px 11px}
body.atelier .key-control img{width:100%;height:auto;max-height:none;margin:13px 0 19px}
body.atelier .key-control[aria-pressed=true]{background:linear-gradient(130deg,#405741,#233c2b);color:#f4f3ee}
body.atelier .key-control[aria-pressed=true] .key-number{color:#d0dbc2}
body.atelier .key-label{font-size:11px}
body.atelier .key-number{font-size:9px}
body.atelier .portal{border-radius:70px 3px 3px 3px;box-shadow:0 35px 45px -32px #20352c80,0 0 0 8px #dfe4d6,0 0 0 9px #a6b69a70}
body.atelier .portal-caption{font-size:9px;letter-spacing:.13em;margin-bottom:23px}
body.atelier .portal-footer{font-size:9px;line-height:1.8;gap:18px}
body.atelier .door-invitation p{font-size:34px}
body.atelier .door-invitation>span:first-child{font-size:9px}
body.atelier .door-invitation small{font-size:10px}
body.atelier .value-copy{padding:26px 23px}
body.atelier .value-copy h2{font-size:clamp(25px,2.3vw,36px)}
body.atelier .value-copy li{font-size:12px}
body.atelier .perspective-switch{padding-top:96px;padding-bottom:95px;background:radial-gradient(ellipse at 68% 60%,#afc09532,transparent 50%),#eef0e7;border-radius:0 90px 0 0}
body.atelier .center-heading .display-heading{font-size:clamp(40px,4.6vw,70px)}
body.atelier .center-heading>p:last-child{font-size:14px}
body.atelier .switch-journey{margin-top:58px;max-width:1120px;gap:2%;grid-template-columns:1fr .6fr 1fr}
body.atelier .everyday-panel,body.atelier .residence-panel{border-radius:36px 4px 4px 4px;padding:28px;box-shadow:inset 0 0 0 1px #a6b19822,0 17px 38px #20352c0b;background:linear-gradient(145deg,#fafbf7,#e2e7d9)}
body.atelier .residence-panel{border-radius:4px 4px 36px 4px;background:linear-gradient(145deg,#fcfdf8,#e5ecd9)}
body.atelier .panel-eyebrow{font-size:9px}
body.atelier .switch-journey h3{font-size:30px}
body.atelier .switch-journey article>p{font-size:12px}
body.atelier .switch-key img{height:auto}
body.atelier .switch-media-label{font-size:9px}
body.atelier .switch-footnote{font-size:11px;margin-top:43px!important}
body.atelier .site-footer{margin:0;padding:36px var(--gutter);background:#e8ece0;border-top:1px solid #d4dbc9}
body.atelier .site-footer .brand img{width:185px}
body.atelier .site-footer>div>span{font-size:10px}
@media(min-width:1600px){body.home.atelier{--gutter:8%;--section:130px}body.atelier .hero-copy h1{font-size:82px}}
@media(max-width:1100px){body.home.atelier{--gutter:5%;--section:90px}body.atelier .hero-foot-signature{display:none}body.atelier .value-section .residence{gap:5%}body.atelier .key-control{padding:12px 8px;min-height:137px}body.atelier .key-label{font-size:10px}body.atelier .residence-pass figure{height:235px}body.atelier .pass-copy{padding:22px 17px}body.atelier .pass-copy h3{font-size:23px}body.atelier .everyday-panel,body.atelier .residence-panel{padding:23px}body.atelier .switch-journey h3{font-size:26px}}
@media(max-width:760px){
 body.home.atelier{--gutter:6%;--section:72px}
 body.atelier .site-header{min-height:80px;padding:20px var(--gutter);gap:8px}
 body.atelier .brand img{width:171px}
 body.atelier .main-nav{gap:8px 24px;font-size:12px}
 body.atelier .edition-chip{font-size:8px;letter-spacing:.11em;padding:7px 10px;min-height:30px}
 body.atelier .display-heading{font-size:clamp(39px,8.8vw,57px)}
 body.atelier .key-hero{padding:30px var(--gutter) 0;min-height:0}
 body.atelier .hero-copy h1{font-size:clamp(36px,7.9vw,58px);line-height:1.15;margin-bottom:20px}
 body.atelier .hero-copy .edition-chip{font-size:7px;letter-spacing:.09em;margin-bottom:24px}
 body.atelier .hero-lead{font-size:12px;line-height:1.85}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 body.atelier .hero-foot{margin-top:25px;padding:13px 0 21px;gap:15px;align-items:center}
 body.atelier .hero-foot .fine-link{font-size:9px;gap:14px;max-width:160px;line-height:1.6}
 body.atelier .hero-foot button{font-size:8px;gap:9px;max-width:128px;line-height:1.5;text-align:left;padding:7px 9px;flex-shrink:0}
 body.atelier .company-deck{border-radius:55px 0 0 0;padding:68px var(--gutter) 35px}
 body.atelier .deck-heading .display-heading{font-size:clamp(39px,9vw,60px)}
 body.atelier .deck-heading>p:last-child{font-size:12px}
 body.atelier .residence-deck{grid-template-columns:1fr;padding:0 8px;max-width:410px;gap:30px;margin:38px auto 43px}
 body.atelier .residence-pass figure{height:310px}
 body.atelier .pass-copy{padding:23px 22px}
 body.atelier .pass-copy h3{font-size:28px}
 body.atelier .pass-copy>p{font-size:12px}
 body.atelier .deck-end>span{font-size:9px}
 body.atelier .value-section{padding-top:68px;padding-bottom:72px}
 body.atelier .value-section .section-heading{margin-bottom:33px}
 body.atelier .value-section .residence{display:flex;flex-direction:column;gap:40px}
 body.atelier .value-section .invitation,body.atelier .value-section .experience{width:100%}
 body.atelier .value-section .display-heading{font-size:48px}
 body.atelier .intro{font-size:13px}
 body.atelier .key-control{min-height:145px;padding:13px 11px}
 body.atelier .key-control img{width:100%;height:auto;margin:14px 0 22px}
 body.atelier .key-label{font-size:11px}
 body.atelier .portal{border-radius:48px 3px 3px 3px;box-shadow:0 28px 35px -28px #20352c80,0 0 0 6px #dfe4d6,0 0 0 7px #a6b69a70}
 body.atelier .value-copy{padding:25px}
 body.atelier .value-copy h2{font-size:32px}
 body.atelier .value-copy li{font-size:13px}
 body.atelier .portal-footer{font-size:9px}
 body.atelier .perspective-switch{border-radius:0 55px 0 0;padding-top:68px;padding-bottom:61px}
 body.atelier .center-heading .display-heading{font-size:clamp(35px,8.4vw,53px)}
 body.atelier .center-heading>p:last-child{font-size:12px}
 body.atelier .switch-journey{grid-template-columns:1fr;gap:31px;margin-top:36px}
 body.atelier .everyday-panel,body.atelier .residence-panel{padding:25px}
 body.atelier .everyday-panel>h3{font-size:25px}
 body.atelier .switch-journey article>p{font-size:11px}
 body.atelier .switch-key{height:209px}
 body.atelier .switch-word{margin-top:0}
 body.atelier .switch-footnote{margin-top:29px!important;font-size:10px}
 body.atelier .site-footer{padding:31px var(--gutter)}
}
@media(max-width:380px){body.atelier .hero-copy h1{font-size:34px}body.atelier .hero-lead{font-size:11px}body.atelier .residence-pass figure{height:255px}body.atelier .pass-copy{padding:22px 19px}body.atelier .pass-copy h3{font-size:26px}body.atelier .pass-top{font-size:7px}body.atelier .key-label{font-size:9px}body.atelier .key-control{padding:12px 9px;min-height:129px}body.atelier .value-copy{padding:23px}body.atelier .value-copy h2{font-size:28px}body.atelier .everyday-panel{padding:23px 19px;grid-template-columns:1fr 1fr;gap:0 17px}body.atelier .everyday-panel>h3{font-size:21px}body.atelier .switch-journey article>p{font-size:10px}}
@media(prefers-reduced-motion:reduce){body.atelier .reading-progress{display:none}body.atelier .residence-pass,body.atelier .residence-pass img{transition:none!important}}
body.atelier.motion-paused .reading-progress{display:none}

/* Invitation and landscape share a compact grid. */
body.atelier .hero-scene{position:relative;display:grid;grid-template-columns:0.85fr 1.15fr;gap:24px;max-width:1240px;height:360px;margin:40px auto 0;isolation:isolate}
body.atelier .hero-landscape{position:relative;inset:auto;grid-column:2;grid-row:1;height:100%;min-width:0;border:1px solid #d3dace;border-radius:18px;margin:0;z-index:0;box-shadow:0 16px 30px -24px #15372d80}
body.atelier .hero-landscape img{object-position:50% 43%;width:100%;height:100%;object-fit:cover}
body.atelier .hero-landscape:after{background:linear-gradient(0deg,#172e287a,transparent 50%)}
body.atelier .hero-landscape figcaption{position:absolute;bottom:25px;left:26px;right:26px;display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:.16em;color:#fff;z-index:1}
body.atelier .hero-invite{position:relative;inset:auto;grid-column:1;grid-row:1;display:flex;flex-direction:column;justify-content:center;width:auto;padding:36px 32px;background:radial-gradient(ellipse at 65% 22%,#fafcf5,#e6ebdf 62%,#dae2d2);border:1px solid #fff;border-radius:18px;box-shadow:inset 0 0 0 1px #c7d0c273,0 16px 30px -24px #15372d60;backdrop-filter:none;z-index:1}
body.atelier .invite-edition{display:block;font-size:9px;letter-spacing:.16em;border:0;padding:0;color:#596d50}
body.atelier .hero-invite>p{font-size:clamp(46px,5vw,64px);letter-spacing:-.06em;margin:24px 0;line-height:1}
body.atelier .hero-invite>p em{font-weight:400;font-size:1.16em}
body.atelier .invite-date{font-size:12px;display:flex;justify-content:space-between;align-items:center;margin:0 0 18px;color:#526549}
body.atelier .invite-date>span{font-size:8px;border:1px solid #9aab8a55;border-radius:20px;padding:5px 9px;letter-spacing:.04em}
body.atelier .hero-invite .key-button{display:flex;font-size:12px;min-height:54px;padding-left:20px;gap:12px}
body.atelier .hero-invite .button-arrow{width:42px;min-height:42px}
body.atelier .key-button{border:1px solid #ffffff21;border-radius:10px;padding:5px 5px 5px 24px;gap:27px;background:linear-gradient(115deg,#365740,#20372d 72%);box-shadow:inset 0 1px 0 #9aaf8766,inset 0 -2px 0 #132c1f,0 7px 16px -9px #20352c80;clip-path:none;overflow:visible;font-weight:300;letter-spacing:-.02em;transition:box-shadow .25s,transform .25s}
body.atelier .key-button.pale{background:linear-gradient(115deg,#fafbf5,#dfe7d6);border-color:#ffffff88;box-shadow:inset 0 1px 0 #fff,0 8px 18px -12px #12271988}
body.atelier .button-arrow{width:48px;min-height:46px;border-radius:7px;border:1px solid #dfe6d580;background:linear-gradient(135deg,#eef2e6,#afbe9e 52%,#d3ddc5);box-shadow:inset 0 1px 0 #ffffffa8,inset 0 -1px 0 #71816555;font-size:24px;flex-shrink:0;transition:background .25s,box-shadow .25s}
body.atelier .key-button.compact{min-height:46px;gap:21px;font-size:11px;padding-left:20px;border-radius:9px}
body.atelier .compact .button-arrow{width:34px;min-height:34px;border-radius:6px;font-size:20px}
body.atelier .key-button:focus-visible{outline:2px solid #81966a;outline-offset:5px}
@media(hover:hover){body.atelier .key-button:hover{transform:translateY(-2px);box-shadow:inset 0 1px 0 #b8c9a58c,inset 0 -2px 0 #132c1f,0 12px 23px -12px #20352c99}body.atelier .key-button:hover .button-arrow{background:linear-gradient(135deg,#fff,#c7d6b4);box-shadow:inset 0 1px 0 white,0 0 18px #c6d6b326}}
@media(max-width:1100px){body.atelier .hero-scene{gap:18px;height:340px}body.atelier .hero-invite{padding:30px 26px}body.atelier .hero-invite>p{font-size:52px}}
@media(max-width:760px){
body.atelier .hero-scene{grid-template-columns:1fr;height:auto;min-height:0;padding:0;gap:16px;margin-top:31px}
body.atelier .hero-landscape{grid-column:1;grid-row:1;height:290px;border-radius:15px}
body.atelier .hero-landscape figcaption{left:20px;right:20px;bottom:20px;font-size:8px}
body.atelier .hero-landscape figcaption>span:last-child{display:none}
body.atelier .hero-invite{grid-column:1;grid-row:2;margin:0;width:100%;padding:24px;border-radius:15px}
body.atelier .hero-invite .invite-edition{font-size:8px;line-height:1.8}
body.atelier .hero-invite>p{font-size:46px;margin:28px 0 16px}
body.atelier .hero-invite .key-button{font-size:12px;padding-left:20px}
body.atelier .hero-invite .button-arrow{width:44px;min-height:42px}
}
@media(max-width:380px){body.atelier .hero-landscape{height:250px}body.atelier .hero-invite{padding:22px}body.atelier .hero-invite>p{font-size:40px}}
@media(prefers-reduced-motion:reduce){body.atelier .key-button{transition:none}}

/* Selected story copy only: native text, preserved em/br and natural word wrapping. */
body.atelier [data-scroll-text] .scroll-word{display:inline;font:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0;color:inherit}
@supports(color:color-mix(in srgb,black 50%,white)){
 body.atelier.js-motion [data-scroll-text][data-scroll-ready] .scroll-word{color:color-mix(in srgb,currentColor calc(var(--word-progress,1)*100%),var(--scroll-muted,#62705e))}
}
body.atelier [data-kinetic] .kinetic-word{display:inline-block;vertical-align:baseline;font:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0;clip-path:inset(-.18em -.22em -.24em -.22em)}
body.atelier [data-kinetic] .kinetic-ink{display:inline-block;font:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0;transform:none;filter:none;opacity:1}
body.atelier.js-motion [data-kinetic][data-kinetic-ready].is-visible:not([data-kinetic-settled]) .kinetic-ink{animation:residence-heading-in .9s cubic-bezier(.16,1,.3,1) var(--kinetic-delay,0ms) both}
@keyframes residence-heading-in{from{opacity:.12;transform:translate3d(0,110%,0);filter:blur(5px)}to{opacity:1;transform:translate3d(0,0,0);filter:blur(0)}}
body.atelier.motion-paused [data-scroll-text] .scroll-word{color:inherit!important}
body.atelier.motion-paused [data-kinetic] .kinetic-word{clip-path:none!important}
body.atelier.motion-paused [data-kinetic] .kinetic-ink{animation:none!important;transform:none!important;filter:none!important;opacity:1!important}
@media(prefers-reduced-motion:reduce){
 body.atelier [data-scroll-text] .scroll-word{color:inherit!important}
 body.atelier [data-kinetic] .kinetic-word{clip-path:none!important}
 body.atelier [data-kinetic] .kinetic-ink{animation:none!important;transform:none!important;filter:none!important;opacity:1!important}
}
