.project-directory .header{justify-content:space-between}
.directory-main{padding-top:clamp(36px,5vw,76px);padding-bottom:36px}
.directory-heading{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:38px}
.directory-heading h1{font-family:Georgia,serif;font-size:clamp(36px,4.5vw,68px);font-weight:400;line-height:1.2;margin:12px 0 0;letter-spacing:-.035em}
.directory-heading h1 em{color:#887154;font-weight:400}
.directory-heading p{max-width:300px;font-size:16px;line-height:1.7;color:#71685d;margin:0}
.project-card{display:grid;grid-template-columns:1.35fr 1fr;background:#ede7dd;text-decoration:none;color:inherit;overflow:hidden}
.project-cover{position:relative;min-width:0;overflow:hidden}
.project-cover img{display:block;width:100%;height:100%;min-height:370px;max-height:490px;object-fit:cover;transition:transform .5s}
.project-image-note{position:absolute;bottom:16px;left:20px;color:white;background:#30291fde;padding:6px 10px;font-size:12px;line-height:1.5}
.project-card-copy{padding:clamp(28px,4vw,62px);display:flex;flex-direction:column;align-items:start}
.project-card-copy h2{font-family:Georgia,serif;font-size:clamp(32px,3.8vw,58px);font-weight:400;line-height:1.15;letter-spacing:-.03em;margin:24px 0}
.project-card-copy h2 em{color:#887154}
.project-card-copy p{font-size:18px;margin:0 0 8px}
.project-meta{font-size:14px;color:#71685d}
.project-enter{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #c9bfaf;width:100%;padding-top:20px;margin-top:36px;font-size:16px}
.project-card:hover .project-cover img{transform:scale(1.025)}
.project-card:focus-visible{outline:3px solid #887154;outline-offset:6px}
.directory-help{display:flex;gap:20px;justify-content:space-between;align-items:center;padding:26px 0;font-size:16px}
.directory-help p{margin:0;color:#71685d}.directory-help a{color:inherit;text-underline-offset:5px}
.directory-footer{display:flex;justify-content:space-between;gap:20px;padding-top:20px;padding-bottom:30px;border-top:1px solid #d6cec1;font-size:14px;color:#71685d}
.directory-contact{font-size:14px;color:inherit}
.project-context{display:flex;justify-content:space-between;gap:20px;padding-top:18px;padding-bottom:18px;font-size:14px}
.project-context a{color:inherit;text-underline-offset:4px}.project-context span{color:#71685d}
@media(max-width:700px){.directory-heading{display:block}.directory-heading p{margin-top:18px}.project-card{grid-template-columns:1fr}.project-cover img{min-height:0;height:240px}.project-card-copy h2{margin:18px 0}.project-card-copy{padding:26px}.project-enter{margin-top:26px}.directory-help{align-items:start;flex-direction:column;gap:8px}.directory-contact{display:none}.project-context{flex-wrap:wrap;gap:8px}}
@media(prefers-reduced-motion:reduce){.project-cover img{transition:none}}

/* Editorial project cover: one continuous photograph, not a boxed listing. */
.project-directory{background:#f5f2ec}
.project-directory .header{background:transparent;position:relative;border-bottom:1px solid #ddd5c9}
.directory-main{padding-top:32px;padding-bottom:12px}
.directory-heading{margin-bottom:30px;align-items:center}
.directory-heading h1,html[lang=th] .directory-heading h1{font-family:Georgia,serif;font-size:clamp(32px,4vw,62px);margin-top:10px;line-height:1.2}
html[lang=th] .project-card-copy h2{font-family:Georgia,serif;font-size:clamp(48px,5.6vw,84px);line-height:1.04}
html[lang=th] .project-card-copy h2 em,html[lang=th] .directory-heading h1 em{font-style:italic}
@media(max-width:700px){html[lang=th] .project-card-copy h2{font-size:clamp(42px,11vw,65px)}}
.directory-heading .eyebrow{font-size:12px;letter-spacing:.18em}
.directory-heading p{font-size:14px;line-height:1.8}
.project-card{position:relative;display:grid;grid-template-columns:1fr;min-height:520px;height:min(66vw,650px);isolation:isolate;background:#302920;border-radius:2px 2px 48px 2px}
.project-cover{position:absolute;inset:0;z-index:-2}
.project-cover img{height:100%;width:100%;max-height:none;min-height:0;object-position:center 54%;transform:scale(1.005);transition:transform 1.2s cubic-bezier(.2,.65,.3,1),filter .8s}
.project-card::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(24,20,16,.64),transparent 78%),linear-gradient(0deg,rgba(24,20,16,.88),transparent 80%)}
.project-card-copy{padding:46px 50px 42px;justify-content:end;color:#fff9ef;position:relative;width:100%;align-self:stretch}
.project-card-copy>.eyebrow{position:absolute;top:32px;left:50px;font-size:12px;letter-spacing:.18em;color:#fff9ef}
.project-card-copy h2{font-size:clamp(48px,5.6vw,84px);line-height:1.04;letter-spacing:-.04em;margin:0 0 22px}
.project-card-copy h2 em{color:#e3ceb0;font-weight:400}
.project-card-copy p{font-size:16px;line-height:1.5;margin:0 0 5px;color:#fff9ef}
.project-meta{color:#e5d9ca;font-size:14px}
.project-enter{width:auto;position:absolute;right:50px;bottom:48px;align-items:center;gap:24px;margin:0;padding:0;border:0;font-size:16px}
.project-enter>span:last-child{display:grid;place-items:center;border:1px solid #ffffff80;width:64px;height:64px;border-radius:50%;font-size:26px;transition:background .35s,color .35s,transform .35s}
.project-image-note{left:auto;right:32px;top:26px;bottom:auto;z-index:2;background:#241c16b3;color:#fff5e7;font-size:12px}
.project-card:hover .project-cover img,.project-card:focus-visible .project-cover img{transform:scale(1.035)}
.project-card:hover .project-enter>span:last-child,.project-card:focus-visible .project-enter>span:last-child{background:#f6eddf;color:#372a20;transform:rotate(45deg)}
.project-card:active .project-enter>span:last-child{transform:rotate(45deg) scale(.94)}
.project-card:focus-visible{outline:3px solid #887154;outline-offset:6px}
.directory-help{padding:24px 0 32px;font-size:14px}
.directory-help a,.directory-contact{display:inline-block;text-decoration:none;border-bottom:1px solid #a89780;padding:5px 0;transition:color .25s,border-color .25s}
.directory-help a:hover,.directory-contact:hover{color:#96734b;border-color:transparent}
.project-directory #language{border:1px solid #c9beaf;border-radius:50%;width:44px;height:44px;transition:background .25s,color .25s}
.project-directory #language:hover{background:#45372b;color:white}
.directory-footer{font-size:12px}
@media(prefers-reduced-motion:no-preference){.directory-heading{animation:directory-arrive .65s both}.project-card{animation:directory-arrive .85s .08s both}@keyframes directory-arrive{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}}
@media(max-width:700px){.directory-main{padding-top:24px}.directory-heading{margin-bottom:24px}.directory-heading h1{font-size:clamp(32px,7.5vw,46px);line-height:1.25}.directory-heading p{margin-top:12px}.project-card{height:590px;min-height:0;border-bottom-right-radius:32px}.project-cover img{height:100%;object-position:56% center}.project-card-copy{padding:28px 24px 116px}.project-card-copy>.eyebrow{left:24px;top:26px;font-size:12px}.project-card-copy h2{font-size:clamp(42px,11vw,65px);margin-bottom:20px}.project-enter{bottom:28px;left:24px;right:24px;justify-content:space-between}.project-enter>span:last-child{width:52px;height:52px}.project-image-note{top:56px;right:auto;left:24px;padding:3px 7px}.directory-help{gap:4px}.directory-footer{flex-wrap:wrap}.project-card::before{background:linear-gradient(0deg,#211b15ed,rgba(30,24,18,.05) 95%)}}
@media(prefers-reduced-motion:reduce){.project-card *{transition:none!important}.project-card:hover .project-cover img{transform:none}}

/* Immersive project directory */
.project-immersive{background:#29221c;color:#f6efe4}.project-immersive .preview-bar{display:none}
.immersive-hero{position:relative;min-height:100svh;isolation:isolate;overflow:hidden;background:#282019}
.immersive-image{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center 52%;transform:scale(1.01)}
.immersive-shade{position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(24,19,15,.63),rgba(24,19,15,.1) 62%),linear-gradient(0deg,rgba(24,19,15,.76),transparent 54%)}
.immersive-header{position:absolute;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:26px clamp(24px,5.5vw,86px);border-bottom:1px solid rgba(255,248,237,.34);color:#fffaf2}
.immersive-brand{display:flex;align-items:center;gap:11px;color:inherit;text-decoration:none;font:24px Georgia,serif;line-height:1}
.immersive-brand img{filter:brightness(0) invert(1);width:36px;height:auto}.immersive-brand small{display:block;font:9px/1.4 system-ui,sans-serif;letter-spacing:.15em;margin-top:6px}
.immersive-header nav{display:flex;align-items:center;gap:clamp(16px,2.4vw,36px)}.immersive-header nav a{color:inherit;text-decoration:none;font-size:12px;letter-spacing:.05em;transition:opacity .25s}.immersive-header nav a:hover{opacity:.64}
.immersive-header #language{font:12px system-ui,sans-serif;color:inherit;border:0;background:transparent;padding:0;min-width:auto;height:auto;cursor:pointer}
.immersive-copy{position:absolute;left:clamp(24px,5.5vw,86px);bottom:clamp(100px,14vw,180px);max-width:740px}.immersive-copy .eyebrow{color:#eee0cb;font-size:11px;letter-spacing:.18em}
.immersive-copy h1,html[lang=th] .immersive-copy h1{font:400 clamp(54px,8.7vw,136px)/.89 Georgia,serif;letter-spacing:-.065em;margin:24px 0}.immersive-copy h1 em{color:#e0c69e;font-weight:400}.immersive-copy p{font-size:16px;line-height:1.7;color:#fff9ef;margin:0;max-width:290px}
.immersive-enter{position:absolute;right:clamp(24px,5.5vw,86px);bottom:clamp(48px,5.5vw,88px);display:flex;align-items:center;gap:20px;color:#fffaf2;text-decoration:none;font-size:14px;letter-spacing:.02em}.immersive-enter>span:last-child{font-size:26px;transition:transform .35s}.immersive-enter:hover>span:last-child{transform:translate(5px,-5px)}
.scroll-cue{position:absolute;left:clamp(24px,5.5vw,86px);bottom:40px;display:flex;align-items:center;gap:12px;color:#f5eadd}.scroll-cue>span{width:54px;height:1px;background:#f5eadd}.scroll-cue small{font-size:9px;letter-spacing:.16em}
.project-rail{padding:clamp(64px,10vw,144px) clamp(24px,5.5vw,86px) 46px;background:#f3eee5;color:#332a22}.rail-heading{display:flex;justify-content:space-between;align-items:end;padding-bottom:24px;border-bottom:1px solid #cfc4b5}.rail-heading p{margin:0;font:clamp(20px,2.7vw,37px)/1.18 Georgia,serif;max-width:430px;text-align:right}.rail-heading .eyebrow{font-size:11px;letter-spacing:.18em}
.rail-project{display:grid;grid-template-columns:minmax(220px,.85fr) 1.15fr;gap:clamp(28px,5vw,78px);align-items:end;padding:32px 0 42px;color:inherit;text-decoration:none;border-bottom:1px solid #cfc4b5}.rail-project figure{margin:0;position:relative;overflow:hidden;aspect-ratio:1.32}.rail-project img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .75s cubic-bezier(.2,.65,.3,1)}.rail-project figcaption{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;padding:12px 14px;color:#fffaf2;background:linear-gradient(transparent,#1f1913b3);font-size:10px;letter-spacing:.1em}.rail-project>div{padding-bottom:8px}.rail-project h2{font:400 clamp(40px,6vw,88px)/.92 Georgia,serif;letter-spacing:-.06em;margin:0 0 24px}.rail-project h2 em{color:#8f7252;font-weight:400}.rail-project p{font-size:15px;color:#72675b;margin:0 0 45px}.text-action{display:inline-block;font-size:13px;border-bottom:1px solid #75614d;padding-bottom:5px;transition:color .25s,border-color .25s}.rail-project:hover img{transform:scale(1.045)}.rail-project:hover .text-action{color:#9d7954;border-color:transparent}
.rail-footer{display:flex;justify-content:space-between;gap:24px;padding-top:20px;color:#756b60;font-size:13px}.rail-footer a{color:inherit;text-underline-offset:5px}.immersive-footer{display:flex;justify-content:space-between;gap:24px;padding:22px clamp(24px,5.5vw,86px);font-size:11px;letter-spacing:.04em;color:#d5c6b5;background:#29221c}
@media(prefers-reduced-motion:no-preference){.immersive-copy,.immersive-enter{animation:immersive-enter .8s .15s both}.immersive-header{animation:immersive-enter .55s both}@keyframes immersive-enter{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}}
@media(max-width:700px){.immersive-hero{min-height:720px}.immersive-image{object-position:58% center}.immersive-header{padding:20px 24px}.immersive-brand{font-size:20px}.immersive-brand img{width:31px}.immersive-brand small{font-size:8px}.immersive-header nav{gap:15px}.immersive-header nav a{font-size:11px}.immersive-copy{left:24px;right:24px;bottom:157px}.immersive-copy h1,html[lang=th] .immersive-copy h1{font-size:clamp(52px,15vw,76px);line-height:.95;margin:18px 0}.immersive-copy p{font-size:14px}.immersive-enter{left:24px;right:24px;bottom:74px;justify-content:space-between;font-size:13px}.scroll-cue{left:24px;bottom:30px}.scroll-cue small{font-size:8px}.project-rail{padding:58px 24px 34px}.rail-heading{display:block}.rail-heading p{font-size:25px;text-align:left;margin-top:18px}.rail-project{grid-template-columns:1fr;gap:25px;padding:25px 0 33px}.rail-project figure{aspect-ratio:1.34}.rail-project h2{font-size:54px;margin-bottom:18px}.rail-project p{margin-bottom:24px}.rail-footer{display:block;line-height:1.8}.rail-footer a{display:inline-block;margin-top:6px}.immersive-footer{padding:20px 24px;font-size:10px}}
@media(prefers-reduced-motion:reduce){.immersive-header,.immersive-copy,.immersive-enter{animation:none}.rail-project img,.immersive-enter>span:last-child{transition:none}}

/* Project page: the navigation belongs to the opening visual. */
body.project-detail .preview-bar{display:none}
body.project-detail .header{position:absolute;z-index:12;top:0;left:0;right:0;height:94px;padding-inline:clamp(24px,5.5vw,86px);background:linear-gradient(180deg,rgba(24,19,15,.44),transparent);backdrop-filter:none;border-bottom:1px solid rgba(255,248,237,.32);color:#fffaf2}
body.project-detail .brand{color:#fffaf2}body.project-detail .brand img{filter:brightness(0) invert(1)}body.project-detail .header nav a{color:#fffaf2}body.project-detail .header nav a:after{background:#fffaf2}
body.project-detail .nav-actions{color:#fffaf2}body.project-detail #language{color:#fffaf2;border:0;background:transparent;width:auto;height:auto;padding:0}body.project-detail .nav-contact{border:0;padding:0;color:#fffaf2;background:transparent}
body.project-detail main{position:relative}body.project-detail .project-context{display:none}
body.project-detail .hero{min-height:100svh;background:#33291f}body.project-detail .hero-copy{padding-top:190px;padding-bottom:128px}body.project-detail .hero-image:after{background:linear-gradient(90deg,rgba(25,21,17,.78),rgba(25,21,17,.38) 44%,rgba(25,21,17,.04) 78%),linear-gradient(0deg,rgba(25,21,17,.64),transparent 54%)}
body.project-detail .hero .button.dark{background:transparent;border-color:#fffaf2;color:#fffaf2;min-width:0;padding:13px 0;border-width:0 0 1px;border-radius:0}body.project-detail .hero .button.dark:hover{background:transparent;color:#e6c9a3;transform:none}
@media(max-width:760px){body.project-detail .header{height:78px;padding-inline:24px}body.project-detail .header nav{top:78px;background:#30271f}body.project-detail .hero{min-height:720px}body.project-detail .hero-copy{padding-top:155px;padding-bottom:170px}body.project-detail .nav-contact{display:none}}
