html{scroll-behavior:smooth;}
*{box-sizing:border-box;margin:0;padding:0;}
:root{
  --g:#2A6B4F;--glight:#E6F5ED;--gdark:#1E5C42;--gsoft:#4CAF80;
  --bg:#FAFAF7;--white:#fff;--dark:#1a1a1a;--mid:#555;--border:#E0DEDA;
}
body{font-family:'Inter',sans-serif;background:var(--bg);color:var(--dark);}

/* ── LANG SWITCHER ── */
.lang-bar{display:flex;align-items:center;gap:0;background:var(--white);border-bottom:1.5px solid var(--border);padding:0 2rem;position:sticky;top:0;z-index:200;}
.lang-tab{padding:14px 18px;font-size:13px;font-weight:500;color:#888;cursor:pointer;border-bottom:2.5px solid transparent;margin-bottom:-1.5px;transition:color .15s,border-color .15s;white-space:nowrap;background:none;border-top:none;border-left:none;border-right:none;font-family:'Inter',sans-serif;}
.lang-tab.active{color:var(--g);border-bottom-color:var(--g);}
.lang-tab:hover{color:var(--dark);}

/* ── NAV ── */
.eh-nav{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 2rem;background:var(--bg);border-bottom:0.5px solid var(--border);}
.eh-logo{font-family:'DM Serif Display',serif;font-size:20px;color:var(--dark);}
.eh-logo span{color:var(--g);}
.eh-nav-links{display:flex;gap:1.5rem;list-style:none;align-items:center;}
.eh-nav-links a{font-size:13px;font-weight:500;color:#555;text-decoration:none;}
.eh-nav-cta{background:var(--g);color:#fff !important;padding:8px 18px;border-radius:6px;font-size:13px;font-weight:500;text-decoration:none;border:none;cursor:pointer;font-family:'Inter',sans-serif;}

/* ── HERO ── */
.eh-hero{display:grid;grid-template-columns:1fr 1fr;min-height:520px;align-items:center;}
.eh-hero-left{padding:4rem 2rem;}
.eh-eyebrow{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--g);margin-bottom:1.25rem;}
.eh-eyebrow-dot{width:6px;height:6px;border-radius:50%;background:var(--g);flex-shrink:0;}
.eh-h1{font-family:'DM Serif Display',serif;font-size:46px;line-height:1.1;color:var(--dark);letter-spacing:-1px;margin-bottom:1.25rem;}
.eh-h1 em{font-style:italic;color:var(--g);}
.eh-sub{font-size:15px;line-height:1.75;color:var(--mid);max-width:380px;margin-bottom:2rem;}
.eh-btn-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap;}
.eh-btn-p{background:var(--g);color:#fff;padding:12px 24px;border-radius:7px;font-size:14px;font-weight:500;text-decoration:none;border:none;cursor:pointer;font-family:'Inter',sans-serif;}
.eh-btn-s{color:var(--g);font-size:14px;font-weight:500;text-decoration:none;display:inline-flex;align-items:center;gap:6px;cursor:pointer;background:none;border:none;font-family:'Inter',sans-serif;}
.eh-hero-right{height:520px;padding:1.5rem 1.5rem 1.5rem 0.5rem;}
.eh-img-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:6px;height:100%;}
.eh-img-block{border-radius:10px;overflow:hidden;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;font-size:11px;font-weight:500;color:rgba(255,255,255,.8);letter-spacing:.3px;position:relative;}
.eh-img-block:first-child{grid-row:span 2;}
.ph-1{background:#2A6B4F;}.ph-2{background:#3D7A62;}.ph-3{background:#1E5C42;}
.ph-icon{font-size:26px;opacity:.5;}
.eh-badge{position:absolute;bottom:16px;left:16px;background:#fff;border-radius:8px;padding:10px 14px;display:flex;align-items:center;gap:8px;box-shadow:0 2px 12px rgba(0,0,0,.1);}
.eh-badge-icon{width:32px;height:32px;background:var(--glight);border-radius:6px;display:flex;align-items:center;justify-content:center;color:var(--g);font-size:16px;}
.eh-badge-t{font-size:11px;font-weight:600;color:var(--dark);line-height:1.3;}
.eh-badge-s{font-size:10px;color:#777;}

/* ── STATS ── */
.eh-stats{display:grid;grid-template-columns:repeat(3,1fr);background:var(--dark);padding:2.5rem 2rem;}
.eh-stat{text-align:center;border-right:.5px solid rgba(255,255,255,.1);padding:0 2rem;}
.eh-stat:last-child{border-right:none;}
.eh-stat-num{font-family:'DM Serif Display',serif;font-size:40px;color:#fff;line-height:1;margin-bottom:6px;}
.eh-stat-num span{color:var(--gsoft);}
.eh-stat-label{font-size:12px;color:rgba(255,255,255,.45);line-height:1.5;}

/* ── USP ── */
.eh-usp{background:var(--white);border-top:.5px solid var(--border);border-bottom:.5px solid var(--border);padding:5rem 2rem;}
.eh-usp-inner{display:grid;grid-template-columns:1fr 1.4fr;gap:4rem;align-items:start;max-width:960px;margin:0 auto;}
.eh-host-card{background:#F4F9F6;border-radius:14px;overflow:hidden;border:.5px solid #D4E8DC;}
.eh-host-img{height:240px;background:var(--g);display:flex;align-items:center;justify-content:center;}
.eh-host-avatar{width:80px;height:80px;border-radius:50%;background:rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;font-size:32px;color:rgba(255,255,255,.65);}
.eh-host-info{padding:1.25rem;}
.eh-host-tag{font-size:9px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;background:var(--glight);color:var(--gdark);padding:3px 8px;border-radius:3px;display:inline-block;margin-bottom:6px;}
.eh-host-name{font-family:'DM Serif Display',serif;font-size:20px;color:var(--dark);margin-bottom:4px;}
.eh-host-role{font-size:12px;color:var(--g);font-weight:600;margin-bottom:10px;}
.eh-host-desc{font-size:13px;line-height:1.7;color:#666;}
.eh-pills{display:flex;gap:6px;margin-top:12px;flex-wrap:wrap;}
.eh-pill{background:var(--glight);color:var(--gdark);font-size:11px;font-weight:600;padding:4px 10px;border-radius:20px;}
.eh-usp-right h2{font-family:'DM Serif Display',serif;font-size:34px;line-height:1.2;letter-spacing:-.5px;color:var(--dark);margin-bottom:1.25rem;}
.eh-usp-right h2 em{font-style:italic;color:var(--g);}
.eh-checks{list-style:none;display:flex;flex-direction:column;gap:12px;margin-bottom:1.75rem;}
.eh-checks li{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.6;color:#444;}
.eh-check-icon{width:20px;height:20px;background:var(--glight);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px;color:var(--g);font-size:11px;font-weight:700;}

/* ── STORY ── */
.eh-story{padding:5.5rem 2rem;background:var(--white);border-top:.5px solid var(--border);border-bottom:.5px solid var(--border);}
.eh-story-inner{display:grid;grid-template-columns:0.85fr 1.15fr;gap:3.5rem;align-items:center;max-width:1080px;margin:0 auto;}
.eh-story-photos{position:relative;height:420px;}
.eh-story-photo{position:absolute;border-radius:14px;background-size:cover;background-position:center;box-shadow:0 14px 34px rgba(0,0,0,.14);border:6px solid #fff;overflow:hidden;}
.eh-bg-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;}
.eh-story-photo-1{width:72%;height:76%;top:0;left:0;z-index:1;}
.eh-story-photo-2{width:60%;height:58%;bottom:0;right:0;z-index:2;}
.eh-story-photo-cap{position:absolute;bottom:10px;left:10px;background:rgba(0,0,0,.55);color:#fff;font-size:10px;font-weight:500;padding:4px 9px;border-radius:4px;letter-spacing:.2px;}
.eh-story-title{font-family:'DM Serif Display',serif;font-size:34px;line-height:1.2;letter-spacing:-.5px;color:var(--dark);margin-bottom:1.25rem;}
.eh-story-title em{font-style:italic;color:var(--g);}
.eh-story-text p{font-size:14.5px;line-height:1.8;color:var(--mid);margin-bottom:1rem;}
.eh-story-highlight{font-family:'DM Serif Display',serif;font-style:italic;font-size:18px;color:var(--dark);border-left:3px solid var(--g);padding-left:1rem;margin-top:1.5rem;}

/* ── SERVICES ── */
.eh-services-section{padding:5rem 2rem;background:var(--bg);}
.eh-sec-label{font-size:11px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--g);margin-bottom:.75rem;}
.eh-sec-title{font-family:'DM Serif Display',serif;font-size:36px;color:var(--dark);line-height:1.15;letter-spacing:-.5px;max-width:520px;margin-bottom:1rem;}
.eh-sec-body{font-size:15px;line-height:1.75;color:var(--mid);max-width:520px;margin-bottom:2.5rem;}
.eh-svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.eh-svc-card{background:var(--white);border:.5px solid var(--border);border-radius:12px;padding:1.5rem;}
.eh-svc-icon{width:40px;height:40px;background:var(--glight);border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--g);font-size:18px;margin-bottom:1rem;}
.eh-svc-title{font-size:14px;font-weight:600;color:var(--dark);margin-bottom:6px;}
.eh-svc-desc{font-size:13px;line-height:1.65;color:#666;}

/* ── GALLERY ── */
.eh-gallery{background:var(--white);padding:5rem 2rem;border-top:.5px solid var(--border);border-bottom:.5px solid var(--border);}
.eh-gal-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:200px 200px;gap:10px;margin-top:2rem;}
.eh-gal-item{border-radius:10px;overflow:hidden;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;font-size:11px;font-weight:500;color:rgba(255,255,255,.75);position:relative;}
.eh-gal-item:first-child{grid-column:span 2;}
.g1{background:#2A6B4F;}.g2{background:#3D7A62;}.g3{background:#1E5C42;}.g4{background:#4A8B72;}.g5{background:#2E6B52;}
.eh-gal-label{position:absolute;bottom:10px;left:10px;background:rgba(0,0,0,.4);color:#fff;font-size:10px;font-weight:500;letter-spacing:.5px;padding:3px 8px;border-radius:4px;}

/* ── PROCESS ── */
.eh-process{padding:5rem 2rem;background:var(--white);border-top:.5px solid var(--border);}
.eh-process-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:2rem;}
.eh-step{padding:1.5rem 1rem 1.5rem 0;}
.eh-step-num{font-family:'DM Serif Display',serif;font-size:28px;color:#D4E8DC;margin-bottom:4px;}
.eh-step-title{font-size:13px;font-weight:600;color:var(--dark);margin-bottom:4px;}
.eh-step-desc{font-size:12px;line-height:1.65;color:#777;}

/* ── TESTIMONIALS ── */
.eh-testi{padding:5rem 2rem;background:var(--bg);}
.eh-testi-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:2rem;}
.eh-testi-card{background:var(--white);border:.5px solid var(--border);border-radius:12px;padding:1.5rem;}
.eh-quote-mark{font-family:'DM Serif Display',serif;font-size:40px;color:#D4E8DC;line-height:1;margin-bottom:8px;}
.eh-quote-text{font-size:14px;line-height:1.75;color:#444;font-style:italic;margin-bottom:1rem;}
.eh-quote-author{display:flex;align-items:center;gap:10px;}
.eh-author-av{width:32px;height:32px;border-radius:50%;background:var(--glight);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:var(--g);flex-shrink:0;}
.eh-author-name{font-size:13px;font-weight:600;color:var(--dark);}
.eh-author-origin{font-size:11px;color:#999;}

/* ── CTA ── */
.eh-cta{background:var(--dark);padding:5rem 2rem;text-align:center;}
.eh-cta-tag{display:inline-block;background:rgba(42,107,79,.3);color:var(--gsoft);font-size:11px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;padding:4px 12px;border-radius:4px;margin-bottom:1.25rem;}
.eh-cta-title{font-family:'DM Serif Display',serif;font-size:42px;color:#fff;line-height:1.15;letter-spacing:-.5px;max-width:520px;margin:0 auto 1.25rem;}
.eh-cta-title em{font-style:italic;color:var(--gsoft);}
.eh-cta-sub{font-size:15px;color:rgba(255,255,255,.45);max-width:380px;margin:0 auto 2rem;line-height:1.7;}
.eh-cta-form{display:flex;gap:10px;max-width:420px;margin:0 auto;}
.eh-cta-input{flex:1;background:rgba(255,255,255,.08);border:.5px solid rgba(255,255,255,.15);border-radius:7px;padding:11px 16px;font-size:14px;color:#fff;outline:none;font-family:'Inter',sans-serif;}
.eh-cta-input::placeholder{color:rgba(255,255,255,.3);}
.eh-cta-btn{background:var(--g);color:#fff;border:none;border-radius:7px;padding:11px 22px;font-size:14px;font-weight:500;cursor:pointer;font-family:'Inter',sans-serif;white-space:nowrap;}

/* ── FAQ ── */
.eh-faq{padding:5rem 2rem;background:var(--bg);border-top:.5px solid var(--border);}
.eh-faq-list{max-width:720px;margin:2rem auto 0;display:flex;flex-direction:column;gap:10px;}
.eh-faq-item{background:var(--white);border:.5px solid var(--border);border-radius:12px;overflow:hidden;}
.eh-faq-q{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:1.1rem 1.4rem;cursor:pointer;font-size:14.5px;font-weight:600;color:var(--dark);}
.eh-faq-icon{flex-shrink:0;width:22px;height:22px;border-radius:50%;background:var(--glight);color:var(--g);display:flex;align-items:center;justify-content:center;font-size:13px;transition:transform .2s;}
.eh-faq-item.open .eh-faq-icon{transform:rotate(45deg);}
.eh-faq-a{max-height:0;overflow:hidden;transition:max-height .25s ease;}
.eh-faq-item.open .eh-faq-a{max-height:300px;}
.eh-faq-a p{font-size:13.5px;line-height:1.75;color:var(--mid);padding:0 1.4rem 1.1rem;}

/* ── FOOTER ── */
.eh-footer{background:#111;padding:2rem;display:flex;align-items:center;justify-content:space-between;}
.eh-footer-logo{font-family:'DM Serif Display',serif;font-size:16px;color:rgba(255,255,255,.5);}
.eh-footer-logo span{color:var(--gsoft);}
.eh-footer-copy{font-size:12px;color:rgba(255,255,255,.25);}

/* ── APPLY MODAL ── */
.eh-modal-overlay{display:none;position:fixed;inset:0;background:rgba(17,17,17,.55);z-index:1000;align-items:center;justify-content:center;padding:1.5rem;}
.eh-modal-overlay.open{display:flex;}
.eh-modal{background:var(--white);border-radius:16px;max-width:520px;width:100%;max-height:90vh;overflow-y:auto;padding:2rem;position:relative;box-shadow:0 20px 60px rgba(0,0,0,.25);}
.eh-modal-close{position:absolute;top:1.25rem;right:1.25rem;width:32px;height:32px;border-radius:50%;background:var(--glight);color:var(--gdark);border:none;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;font-family:'Inter',sans-serif;}
.eh-modal-title{font-family:'DM Serif Display',serif;font-size:26px;color:var(--dark);letter-spacing:-.3px;margin-bottom:.5rem;padding-right:2rem;}
.eh-modal-sub{font-size:13.5px;color:var(--mid);line-height:1.6;margin-bottom:1.75rem;}
.eh-form-row{margin-bottom:1.1rem;}
.eh-form-row label{display:block;font-size:12.5px;font-weight:600;color:var(--dark);margin-bottom:6px;}
.eh-form-row input,.eh-form-row select{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:8px;font-size:14px;font-family:'Inter',sans-serif;color:var(--dark);outline:none;background:var(--white);}
.eh-form-row input:focus,.eh-form-row select:focus{border-color:var(--g);}
.eh-form-phone{display:flex;gap:8px;}
.eh-form-phone select{flex:0 0 110px;}
.eh-form-phone input{flex:1;}
.eh-modal-submit{width:100%;background:var(--g);color:#fff;border:none;border-radius:8px;padding:13px;font-size:14.5px;font-weight:600;cursor:pointer;font-family:'Inter',sans-serif;margin-top:.5rem;}
.eh-modal-submit:disabled{opacity:.6;cursor:default;}
.eh-form-success{display:none;text-align:center;padding:1.5rem 0;}
.eh-form-success.show{display:block;}
.eh-form-success-icon{width:56px;height:56px;border-radius:50%;background:var(--glight);color:var(--g);display:flex;align-items:center;justify-content:center;font-size:26px;margin:0 auto 1rem;}
.eh-form-success p{font-size:14px;color:var(--mid);line-height:1.7;}

/* ── NON-LATIN FONT OVERRIDES ── */
.lang-zh .cjk{font-family:'Noto Sans SC',sans-serif;}
.lang-zh .serif-h{font-family:'Noto Sans SC',sans-serif;letter-spacing:0;font-weight:500;}
.lang-id .cjk,.lang-th .cjk,.lang-lo .cjk{font-family:'Noto Sans Thai','Noto Sans Lao','Inter',sans-serif;}
.lang-th{font-family:'Noto Sans Thai',sans-serif;}
.lang-th .eh-h1,.lang-th .eh-usp-right h2,.lang-th .eh-sec-title,.lang-th .eh-cta-title,.lang-th .eh-host-name{font-family:'Noto Sans Thai',sans-serif;font-size:clamp(22px,3vw,30px);line-height:1.5;letter-spacing:0;}
.lang-th .eh-h1 em,.lang-th .eh-usp-right h2 em,.lang-th .eh-cta-title em{font-style:normal;font-weight:600;}
.lang-lo{font-family:'Noto Sans Lao',sans-serif;}
.lang-lo .eh-h1,.lang-lo .eh-usp-right h2,.lang-lo .eh-sec-title,.lang-lo .eh-cta-title,.lang-lo .eh-host-name{font-family:'Noto Sans Lao',sans-serif;font-size:clamp(20px,2.8vw,28px);line-height:1.6;letter-spacing:0;}
.lang-lo .eh-h1 em,.lang-lo .eh-usp-right h2 em,.lang-lo .eh-cta-title em{font-style:normal;font-weight:600;color:var(--g);}
.lang-zh .eh-h1,.lang-zh .eh-usp-right h2,.lang-zh .eh-sec-title,.lang-zh .eh-cta-title,.lang-zh .eh-host-name{font-family:'Noto Sans SC',sans-serif;font-size:clamp(24px,3.5vw,38px);line-height:1.3;letter-spacing:0;font-weight:500;}
.lang-zh .eh-h1 em,.lang-zh .eh-usp-right h2 em,.lang-zh .eh-cta-title em{font-style:normal;font-weight:600;color:var(--g);}
.lang-th *,.lang-lo *,.lang-zh *{line-height:inherit;}
.lang-th .eh-sub,.lang-th .eh-svc-desc,.lang-th .eh-quote-text,.lang-th .eh-sec-body,.lang-th .eh-checks li,.lang-th .eh-host-desc,.lang-th .eh-cta-sub,.lang-th .eh-stat-label,.lang-th .eh-step-desc,.lang-th .eh-svc-title,.lang-th .eh-author-name,.lang-th .eh-author-origin,.lang-th .eh-host-role,.lang-th .eh-host-tag,.lang-th .eh-pill,.lang-th .eh-badge-t,.lang-th .eh-badge-s,.lang-th .eh-footer-copy{font-family:'Noto Sans Thai',sans-serif;line-height:1.9;}
.lang-lo .eh-sub,.lang-lo .eh-svc-desc,.lang-lo .eh-quote-text,.lang-lo .eh-sec-body,.lang-lo .eh-checks li,.lang-lo .eh-host-desc,.lang-lo .eh-cta-sub,.lang-lo .eh-stat-label,.lang-lo .eh-step-desc,.lang-lo .eh-svc-title,.lang-lo .eh-author-name,.lang-lo .eh-author-origin,.lang-lo .eh-host-role,.lang-lo .eh-host-tag,.lang-lo .eh-pill,.lang-lo .eh-badge-t,.lang-lo .eh-badge-s,.lang-lo .eh-footer-copy{font-family:'Noto Sans Lao',sans-serif;line-height:1.9;}
.lang-zh .eh-sub,.lang-zh .eh-svc-desc,.lang-zh .eh-quote-text,.lang-zh .eh-sec-body,.lang-zh .eh-checks li,.lang-zh .eh-host-desc,.lang-zh .eh-cta-sub,.lang-zh .eh-stat-label,.lang-zh .eh-step-desc,.lang-zh .eh-svc-title,.lang-zh .eh-author-name,.lang-zh .eh-author-origin,.lang-zh .eh-host-role,.lang-zh .eh-host-tag,.lang-zh .eh-pill,.lang-zh .eh-badge-t,.lang-zh .eh-badge-s,.lang-zh .eh-footer-copy{font-family:'Noto Sans SC',sans-serif;line-height:1.9;}

/* ── RESPONSIVE ── */
@media(max-width:768px){
  .eh-hero{grid-template-columns:1fr;}
  .eh-hero-right{height:300px;padding:0 1rem 1rem;}
  .eh-h1{font-size:32px;}
  .eh-usp-inner{grid-template-columns:1fr;}
  .eh-story-inner{grid-template-columns:1fr;}
  .eh-story-photos{height:320px;margin-bottom:1rem;}
  .eh-svc-grid{grid-template-columns:1fr 1fr;}
  .eh-gal-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto;}
  .eh-gal-item:first-child{grid-column:span 2;}
  .eh-testi-grid{grid-template-columns:1fr;}
  .eh-process-steps{grid-template-columns:1fr 1fr;}
  .eh-stats{grid-template-columns:1fr;}
  .eh-stat{border-right:none;border-bottom:.5px solid rgba(255,255,255,.1);padding:1rem 0;}
  .eh-stat:last-child{border-bottom:none;}
  .lang-bar{overflow-x:auto;padding:0 1rem;}
  .eh-nav{padding:1rem;}
  .eh-nav-links{display:none;}
  .eh-hero-left,.eh-services-section,.eh-gallery,.eh-process,.eh-testi,.eh-cta,.eh-usp,.eh-story{padding-left:1rem;padding-right:1rem;}
  .eh-cta-form{flex-direction:column;}
}
