:root{--ink:#18231f;--forest:#213a31;--sage:#91a895;--paper:#f2efe7;--cream:#fbf8f0;--gold:#c69959}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;padding-top:44px;background:var(--paper);color:var(--ink);font-family:"Noto Sans Thai","Thonburi","Helvetica Neue",Arial,sans-serif}a{color:inherit}::selection{background:var(--gold);color:var(--ink)}
.language-bar{position:fixed;z-index:50;top:0;left:0;right:0;height:44px;display:flex;align-items:center;justify-content:flex-end;gap:18px;padding:0 4vw;background:rgba(24,35,31,.97);color:var(--cream);border-bottom:1px solid rgba(251,248,240,.18);font-size:10px;letter-spacing:.14em;text-transform:uppercase}.language-bar>span{margin-right:auto;color:rgba(251,248,240,.52)}.language-bar a{text-decoration:none;padding:5px 0;border-bottom:1px solid transparent}.language-bar a:hover,.language-bar a:focus-visible{color:var(--gold)}.language-bar a.active{color:var(--gold);border-color:var(--gold)}
.hero{position:relative;min-height:calc(100svh - 44px);overflow:hidden;display:grid;grid-template-rows:auto 1fr auto;padding:28px 4vw 34px;background:var(--forest);color:var(--cream)}.hero:before{content:"";position:absolute;inset:12px;border:1px solid rgba(251,248,240,.23);pointer-events:none}.hero:after{content:"";position:absolute;width:46vw;height:46vw;min-width:440px;min-height:440px;left:50%;top:50%;border-radius:50%;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(145,168,149,.15),transparent 68%);pointer-events:none}.masthead{position:relative;z-index:2;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 10px;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.monogram{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(251,248,240,.46);border-radius:50%;font-family:Georgia,serif;font-size:16px;letter-spacing:-.03em}.edition{justify-self:end}.hero-copy{position:relative;z-index:2;align-self:center;text-align:center;padding:80px 20px 70px}.eyebrow,.card-kicker,.contact-kicker{margin:0 0 20px;color:var(--gold);font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.hero h1{max-width:1100px;margin:0 auto 26px;font-family:"Avenir Next Condensed","Arial Narrow","Roboto Condensed",sans-serif;font-size:clamp(58px,10.5vw,154px);font-weight:600;font-stretch:condensed;font-variant-caps:small-caps;line-height:.84;letter-spacing:.1em}.primary-title{display:inline-flex;align-items:center;gap:12px;margin-top:24px;border-bottom:1px solid rgba(251,248,240,.38);padding:0 4px 7px;font-family:"Th Sarabun New","Noto Sans Thai",serif;font-size:clamp(28px,3vw,44px);text-decoration:none}.primary-title:hover{color:#e7c28c;border-color:var(--gold)}.referral-title{display:block;width:fit-content;margin:12px auto 0;color:rgba(251,248,240,.68);font-size:clamp(17px,1.7vw,24px);text-decoration:none}.referral-title:hover{color:var(--cream)}.legacy-title{display:inline-flex;align-items:center;gap:8px;width:fit-content;margin:30px auto 0;color:rgba(251,248,240,.76);font-size:11px;font-weight:600;letter-spacing:.1em;text-decoration:none;text-transform:uppercase}.legacy-title:hover{color:var(--gold)}.hero-footer{position:relative;z-index:2;display:flex;align-items:center;gap:16px;justify-content:center;color:rgba(251,248,240,.66);font-size:10px;letter-spacing:.12em;text-transform:uppercase}.hero-footer i{width:55px;height:1px;background:var(--gold)}
.intro{display:grid;grid-template-columns:1fr 2.2fr;gap:50px;padding:110px 8vw 120px;border-bottom:1px solid rgba(24,35,31,.2)}.section-number{margin:8px 0 0;color:#6d756e;font-size:10px;letter-spacing:.14em;text-transform:uppercase}.intro-copy{max-width:920px;margin:0;font-family:"Th Sarabun New","Noto Sans Thai",serif;font-size:clamp(34px,4.2vw,62px);line-height:1.25}
.services{display:grid;grid-template-columns:1fr 1fr}.service-card{scroll-margin-top:68px;padding:34px 4.5vw 60px;display:flex;flex-direction:column;min-height:760px}.logical-card{background:var(--cream)}.referral-card{background:var(--sage)}.directory-card{grid-column:1/-1;min-height:680px;background:#d9d2c2}.card-topline{display:flex;justify-content:space-between;padding-bottom:22px;border-bottom:1px solid rgba(24,35,31,.28);font-size:10px;letter-spacing:.12em;text-transform:uppercase}.card-body{max-width:590px;margin:auto 0 0;padding-top:90px}.card-body h2,.contact h2,.directory-heading h2{margin:0;font-family:"Th Sarabun New","Noto Sans Thai",serif;font-size:clamp(50px,5.6vw,88px);font-weight:400;line-height:1.02}.card-body>p:not(.card-kicker){max-width:520px;margin:34px 0;color:#425049;font-size:clamp(16px,1.4vw,19px);line-height:1.75}.referral-card .card-kicker{color:#5b3822}.referral-card .card-body>p:not(.card-kicker){color:#293a32}.text-link{display:inline-flex;gap:30px;align-items:center;padding-bottom:8px;border-bottom:1px solid currentColor;font-size:12px;font-weight:600;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}
.directory-body{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;align-items:end;margin-top:auto;padding-top:80px}.directory-heading>p:not(.card-kicker){max-width:470px;margin:32px 0 0;color:#465048;font-size:17px;line-height:1.75}.legacy-links{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(24,35,31,.35)}.legacy-links :is(a,button){position:relative;display:grid;grid-template-columns:1fr auto;gap:6px 18px;padding:17px 40px 17px 0;border:0;border-bottom:1px solid rgba(24,35,31,.24);background:transparent;color:var(--ink);font:inherit;text-align:left;text-decoration:none;cursor:pointer}.legacy-links :is(a,button):nth-child(odd){margin-right:22px}.legacy-links :is(a,button):nth-child(even){margin-left:22px}.legacy-links :is(a,button):hover{padding-left:10px;background:rgba(251,248,240,.24)}.legacy-links :is(a,button)>span:first-child{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.legacy-links strong{grid-column:1;color:#5d665f;font-size:15px;font-weight:400}.legacy-links .arrow{position:absolute;top:18px;right:8px}
.contact{scroll-margin-top:68px;padding:110px 8vw 130px}.contact-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:9vw;margin-top:70px}.contact-details{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end}.contact-details p{max-width:500px;margin:0 0 36px;color:#4c574f;font-size:18px;line-height:1.75}.email-button{display:flex;justify-content:space-between;width:100%;max-width:390px;padding:20px 22px;background:var(--forest);color:var(--cream);font-size:12px;letter-spacing:.1em;text-decoration:none;text-transform:uppercase}.email-address{margin-top:18px;color:#5e685f;font-family:Georgia,serif;font-size:18px;text-underline-offset:4px}footer{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;min-height:240px;padding:45px 5vw;background:var(--ink);color:var(--cream)}.footer-mark{font-family:Georgia,serif;font-size:70px;line-height:.8}footer p{margin:0;text-align:center;font-size:18px}footer p span{color:rgba(251,248,240,.52);font-size:10px;letter-spacing:.08em;text-transform:uppercase}footer a{justify-self:end;font-size:10px;letter-spacing:.1em;text-decoration:none;text-transform:uppercase}a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
@media(max-width:760px){.hero{padding:25px 25px 30px}.masthead{grid-template-columns:1fr 1fr}.masthead-label{display:none}.hero-copy{padding-left:0;padding-right:0}.hero h1{font-size:clamp(62px,22vw,105px);line-height:.82}.hero-footer{gap:10px;font-size:8px}.intro{grid-template-columns:1fr;padding:78px 7vw 84px}.services{grid-template-columns:1fr}.service-card{min-height:650px;padding:28px 7vw 54px}.directory-card{grid-column:auto}.directory-body{grid-template-columns:1fr;gap:60px;padding-top:74px}.legacy-links{grid-template-columns:1fr}.legacy-links :is(a,button):nth-child(n){margin-left:0;margin-right:0}.contact{padding:82px 7vw 90px}.contact-grid{grid-template-columns:1fr;gap:60px;margin-top:54px}footer{grid-template-columns:1fr auto;min-height:210px}footer p{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
