@font-face{font-family:'IBM Plex Sans Thai';src:url('/fonts/IBMPlexSansThai-Regular.ttf')}@font-face{font-family:'IBM Plex Sans Thai';src:url('/fonts/IBMPlexSansThai-SemiBold.ttf');font-weight:600 800}
:root{--teal:#0f766e;--teal-dark:#134e4a;--mint:#f0fdfa;--foam:#d9f2ed;--blue:#0369a1;--ink:#18302f;--muted:#526c69;--white:#fff;--line:#a8d8cf;--error:#b4232b;--shadow:0 22px 55px rgba(19,78,74,.13)}[hidden]{display:none!important}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--mint);color:var(--ink);font-family:'IBM Plex Sans Thai',sans-serif;font-size:16px;line-height:1.65}body.dialog-open{overflow:hidden}a{color:inherit}.skip-link{position:fixed;left:16px;top:10px;z-index:100;transform:translateY(-150%);padding:10px 16px;background:var(--ink);color:white}.skip-link:focus{transform:none}.coursebar{min-height:34px;padding:6px clamp(18px,4vw,64px);display:flex;justify-content:space-between;background:var(--teal-dark);color:white;font-size:12px}.coursebar a{text-decoration:none}.nav{height:88px;padding:0 clamp(18px,4vw,64px);display:flex;align-items:center;justify-content:space-between;background:rgba(240,253,250,.95);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10;backdrop-filter:blur(12px)}.brand{font-size:25px;font-weight:600;text-decoration:none;letter-spacing:-.04em}.brand span{color:var(--teal)}.nav>div{display:flex;align-items:center;gap:28px}.nav>div>a{text-decoration:none}.nav button{min-height:44px;display:flex;align-items:center;gap:8px;padding:8px 15px;border:1px solid var(--teal);border-radius:999px;background:transparent;color:var(--teal-dark);font:600 14px inherit;cursor:pointer}.nav svg{width:18px;fill:none;stroke:currentColor;stroke-width:1.8}.nav button[aria-pressed=true]{background:var(--teal-dark);color:white}.hero{min-height:720px;display:grid;grid-template-columns:minmax(360px,.82fr) 1.18fr;padding:clamp(18px,4vw,64px);gap:clamp(30px,6vw,90px);align-items:center}.hero-copy{padding-block:60px}.eyebrow{margin:0 0 22px;color:var(--teal);font-size:12px;font-weight:600;letter-spacing:.13em;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(58px,7.2vw,112px);line-height:1.15;letter-spacing:normal;font-weight:400;margin:0 0 34px}h1 em{color:var(--teal);font-style:normal}.hero-copy>p:not(.eyebrow){max-width:480px;font-size:18px;color:var(--muted)}.hero-copy>a{display:inline-flex;gap:60px;align-items:center;margin-top:20px;padding:12px 0;border-bottom:1px solid var(--teal-dark);font-weight:600;text-decoration:none}.hero figure{margin:0;position:relative;height:min(72vh,700px);min-height:540px;border-radius:180px 12px 12px 12px;overflow:hidden;box-shadow:var(--shadow)}.hero figure img{width:100%;height:100%;object-fit:cover}.hero figcaption{position:absolute;left:24px;right:24px;bottom:24px;padding:18px 22px;display:flex;justify-content:space-between;gap:20px;background:rgba(255,255,255,.92);backdrop-filter:blur(10px)}.hero figcaption span{font-weight:600}.hero figcaption small{color:var(--muted)}.directory{padding:120px clamp(18px,5vw,78px);background:white}.section-head{display:grid;grid-template-columns:1.25fr .75fr;gap:8vw;align-items:end;margin-bottom:60px}.section-head h2,.inquiry h2{margin:0;font-size:clamp(46px,5.5vw,80px);line-height:1.18;letter-spacing:normal;font-weight:400}.section-head>p{max-width:480px;color:var(--muted)}.filters{display:grid;grid-template-columns:repeat(4,1fr) auto;gap:10px;padding:16px;background:var(--foam);border:1px solid var(--line);border-radius:16px}.filters label{font-size:12px;font-weight:600;color:var(--teal-dark)}select,input,textarea{width:100%;min-height:44px;margin-top:5px;padding:10px 12px;border:1px solid #85b6ad;border-radius:7px;background:white;color:var(--ink);font:inherit}.filters button,.empty-state button{align-self:end;min-height:44px;padding:10px 18px;border:1px solid var(--teal-dark);border-radius:7px;background:transparent;color:var(--teal-dark);font:600 14px inherit;cursor:pointer}.result-bar{min-height:68px;display:flex;align-items:center;justify-content:space-between}.result-bar p{margin:0;font-weight:600}.result-bar span{color:var(--teal);font-size:13px}.property-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:24px}.property-card{grid-column:span 4;display:flex;flex-direction:column;min-width:0;border:1px solid #c6dfda;background:var(--mint);transition:transform .2s ease,box-shadow .2s ease}.property-card:nth-child(1),.property-card:nth-child(5){grid-column:span 8;display:grid;grid-template-columns:1.25fr .75fr}.property-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.card-media{position:relative;height:250px;overflow:hidden;background:#b7d9d2}.property-card:nth-child(1) .card-media,.property-card:nth-child(5) .card-media{height:100%;min-height:390px}.card-media::before{content:'';position:absolute;inset:0;background:linear-gradient(155deg,transparent 30%,rgba(10,56,51,.36));z-index:1}.card-media img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.property-card:hover img{transform:scale(1.025)}.favorite{position:absolute;right:14px;top:14px;z-index:2;width:44px;height:44px;display:grid;place-items:center;border:0;border-radius:50%;background:white;color:var(--teal-dark);cursor:pointer;box-shadow:0 5px 18px rgba(0,0,0,.15)}.favorite svg{width:20px;fill:none;stroke:currentColor;stroke-width:2}.favorite[aria-pressed=true] svg{fill:var(--teal);color:var(--teal)}.card-body{padding:24px;display:flex;flex-direction:column;flex:1}.card-meta{display:flex;justify-content:space-between;color:var(--teal);font-size:12px;font-weight:600}.card-body h3{font-size:26px;line-height:1.25;font-weight:500;margin:12px 0 6px}.location{color:var(--muted)}.features{display:flex;flex-wrap:wrap;gap:8px 16px;margin:22px 0;color:var(--muted);font-size:13px}.price{margin-top:auto;font-size:24px;font-weight:600}.card-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}.card-actions button{min-height:44px;border:1px solid var(--teal);border-radius:7px;background:transparent;color:var(--teal-dark);font:600 14px inherit;cursor:pointer}.card-actions .interest{background:var(--blue);border-color:var(--blue);color:white}.empty-state{padding:80px 20px;text-align:center;background:var(--mint);border:1px dashed var(--line)}.empty-state svg{width:58px;fill:none;stroke:var(--teal);stroke-width:1.3}.empty-state h3{font-size:28px;margin-bottom:8px}.notice{padding:20px;background:#fff5c9}.inquiry{padding:120px clamp(18px,7vw,110px);display:grid;grid-template-columns:1fr 1fr;gap:10vw;background:var(--teal-dark);color:white}.inquiry .eyebrow{color:#82e4d5}.inquiry>div>p:not(.eyebrow){max-width:510px;color:#c4ddd8}.policy{font-size:13px}.policy a{text-decoration-thickness:2px}.inquiry form{padding:32px;background:white;color:var(--ink);border-radius:12px}.inquiry label{display:block;margin-bottom:17px;font-size:13px;font-weight:600}.consent{display:flex!important;gap:10px;font-weight:400!important}.consent input{width:auto;min-height:auto;margin-top:4px}.trap{position:absolute;left:-9999px}.inquiry button{width:100%;min-height:50px;padding:12px 18px;display:flex;justify-content:space-between;border:0;border-radius:7px;background:var(--blue);color:white;font:600 16px inherit;cursor:pointer}.inquiry button:disabled{opacity:.55}.form-status{min-height:28px;margin:12px 0 0}.form-status.success{color:#096b49}.form-status.error{color:var(--error)}dialog{width:min(880px,calc(100% - 32px));max-height:90vh;padding:0;border:0;border-radius:16px;background:white;color:var(--ink);box-shadow:0 30px 90px rgba(8,42,39,.35);overflow:auto}dialog::backdrop{background:rgba(9,39,36,.68);backdrop-filter:blur(5px)}.dialog-close{position:sticky;float:right;right:18px;top:18px;z-index:2;width:44px;height:44px;border:0;border-radius:50%;background:white;font-size:30px;cursor:pointer;box-shadow:0 4px 16px rgba(0,0,0,.15)}.dialog-layout{display:grid;grid-template-columns:1.05fr .95fr;min-height:560px}.dialog-layout img{width:100%;height:100%;object-fit:cover}.dialog-copy{padding:60px 42px 42px}.dialog-copy .eyebrow{margin-bottom:10px}.dialog-copy h2{font-size:42px;line-height:1.2;margin-bottom:8px}.dialog-copy>p{color:var(--muted)}.dialog-facts{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin:28px 0;background:var(--line);border:1px solid var(--line)}.dialog-facts div{padding:14px;background:var(--mint)}.dialog-facts small,.dialog-facts strong{display:block}.dialog-interest{width:100%;min-height:48px;border:0;border-radius:7px;background:var(--blue);color:white;font:600 15px inherit;cursor:pointer}footer{padding:50px clamp(18px,5vw,78px);display:flex;justify-content:space-between;align-items:end;background:#0b3835;color:white}footer .brand span{color:#99f6e4}footer p{font-size:12px;margin:0}:focus-visible{outline:3px solid #f0b429;outline-offset:3px}@media(max-width:980px){.hero{grid-template-columns:1fr}.hero-copy{padding-bottom:0}.hero figure{height:600px}.filters{grid-template-columns:1fr 1fr}.filters button{align-self:auto}.property-card,.property-card:nth-child(1),.property-card:nth-child(5){grid-column:span 6;display:flex}.property-card:nth-child(1) .card-media,.property-card:nth-child(5) .card-media{height:250px;min-height:0}.inquiry{gap:5vw}}@media(max-width:680px){.coursebar span,.nav>div>a{display:none}.nav{height:72px}.nav>div{gap:8px}.hero{padding:45px 18px 70px;min-height:0}.hero-copy{padding:0}.hero figure{height:460px;min-height:0;border-radius:100px 8px 8px}.hero figcaption{left:12px;right:12px;bottom:12px;display:block}.hero figcaption small{display:block}.directory{padding-block:80px}.section-head{grid-template-columns:1fr}.filters{grid-template-columns:1fr}.property-grid{display:block}.property-card{margin-bottom:20px}.inquiry{grid-template-columns:1fr;padding-block:80px}.inquiry form{padding:22px}.dialog-layout{grid-template-columns:1fr}.dialog-layout img{height:300px}.dialog-copy{padding:32px 22px}.dialog-copy h2{font-size:34px}footer{align-items:start;gap:24px;flex-direction:column}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
