/*
Theme Name: MyHouse Thailand Theme
Theme URI: https://myhousethailand.com/
Author: BDD / MyHouse Thailand
Description: Clean real estate and build-your-home WordPress theme for MyHouse Thailand. Designed for the My House Thailand Tools plugin, Properties and House Planner shortcodes.
Version: 1.0.13-safe-contact-price
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: myhouse-thailand
Tags: real-estate, custom-background, custom-logo, featured-images, translation-ready
*/

:root {
  --mht-bg: #f7f3ed;
  --mht-card: #ffffff;
  --mht-text: #1f2a37;
  --mht-muted: #6b7280;
  --mht-primary: #17324d;
  --mht-primary-2: #244d73;
  --mht-accent: #c99b5c;
  --mht-border: #e7ded2;
  --mht-whatsapp: #25d366;
  --mht-radius: 22px;
  --mht-shadow: 0 18px 45px rgba(31,42,55,.10);
}

* { box-sizing: border-box; }
body {
  margin: 0;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--mht-text);
  background: var(--mht-bg);
  line-height: 1.6;
}
a { color: inherit; text-decoration: none; }
img { max-width: 100%; height: auto; }

.mht-container { width: min(1480px, calc(100% - 48px)); margin: 0 auto; }
.mht-container-narrow { width: min(1180px, calc(100% - 48px)); margin: 0 auto; }
.mht-site-header { position: sticky; top: 0; z-index: 50; background: rgba(247,243,237,.92); backdrop-filter: blur(14px); border-bottom: 1px solid var(--mht-border); }
.mht-header-inner { display: flex; align-items: center; justify-content: space-between; min-height: 76px; gap: 20px; }
.mht-brand { display:flex; align-items:center; gap:12px; font-weight:800; letter-spacing:-.03em; font-size:22px; }
.mht-logo-mark { width:42px; height:42px; border-radius:14px; background: linear-gradient(135deg,var(--mht-primary),var(--mht-accent)); display:grid; place-items:center; color:white; font-weight:900; }
.mht-nav { display:flex; align-items:center; gap:18px; font-size:15px; color:#334155; }
.mht-nav a { padding:10px 8px; border-radius:12px; }
.mht-nav a:hover { background:#fff; }
.mht-btn { display:inline-flex; align-items:center; justify-content:center; gap:9px; padding:13px 18px; border-radius:999px; background: var(--mht-primary); color:#fff; font-weight:700; border:0; box-shadow: 0 10px 22px rgba(23,50,77,.16); }
.mht-btn:hover { background: var(--mht-primary-2); transform: translateY(-1px); }
.mht-btn-accent { background: var(--mht-accent); color:#1f2937; }
.mht-btn-light { background:#fff; color:var(--mht-primary); border:1px solid var(--mht-border); box-shadow:none; }
.mht-btn-whatsapp { background:var(--mht-whatsapp); color:#053916; }

.mht-hero { padding: 72px 0 42px; }
.mht-hero-grid { display:grid; grid-template-columns: minmax(0, 1.05fr) minmax(520px, .95fr); gap:44px; align-items:center; }
.mht-kicker { display:inline-flex; gap:8px; align-items:center; padding:8px 12px; border:1px solid var(--mht-border); border-radius:999px; background:#fff; color:var(--mht-primary); font-weight:700; font-size:13px; }
.mht-hero h1 { font-size: clamp(42px, 7vw, 78px); line-height:.95; letter-spacing:-.07em; margin:18px 0; color:var(--mht-primary); }
.mht-hero p { font-size:19px; color:var(--mht-muted); max-width: 720px; }
.mht-hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:26px; }
.mht-hero-card { background:#fff; border-radius: 34px; padding:14px; box-shadow: var(--mht-shadow); position:relative; }
.mht-hero-photo { min-height:540px; border-radius:26px; background: linear-gradient(160deg,rgba(23,50,77,.15),rgba(201,155,92,.18)), url('assets/css/hero-placeholder.svg'); background-size: cover; background-position:center; overflow:hidden; }
.mht-floating-panel { margin: -78px auto 18px; position:relative; width:min(360px, calc(100% - 44px)); background:rgba(255,255,255,.96); border:1px solid var(--mht-border); border-radius:24px; padding:18px; box-shadow:0 18px 40px rgba(0,0,0,.12); text-align:left; }
.mht-floating-panel strong { display:block; font-size:18px; line-height:1.2; color:var(--mht-primary); letter-spacing:-.02em; }
.mht-floating-panel span { display:block; margin-top:4px; color:var(--mht-muted); font-size:14px; line-height:1.35; }
.mht-mini-stats { display:grid; grid-template-columns: repeat(3,1fr); gap:10px; margin-top:14px; }
.mht-mini-stat { background:#f8fafc; border-radius:16px; padding:12px 10px; min-height:62px; display:flex; flex-direction:column; justify-content:center; font-size:12px; line-height:1.25; color:var(--mht-muted); }
.mht-mini-stat b { display:block; margin-bottom:3px; font-size:18px; line-height:1; color:var(--mht-text); }

.mht-choice-section { padding: 28px 0 64px; }
.mht-choice-grid { display:grid; grid-template-columns: repeat(3,1fr); gap:18px; }
.mht-choice-card { background:#fff; border:1px solid var(--mht-border); border-radius: var(--mht-radius); padding:26px; box-shadow:0 12px 30px rgba(31,42,55,.06); transition:.2s ease; }
.mht-choice-card:hover { transform:translateY(-4px); box-shadow:var(--mht-shadow); }
.mht-choice-icon { width:52px; height:52px; border-radius:18px; display:grid; place-items:center; background:#f3eadc; color:var(--mht-primary); font-size:24px; }
.mht-choice-card h3 { margin:18px 0 8px; font-size:24px; color:var(--mht-primary); }
.mht-choice-card p { color:var(--mht-muted); margin:0 0 18px; }

.mht-section { padding:64px 0; }
.mht-section-head { display:flex; justify-content:space-between; gap:22px; align-items:end; margin-bottom:26px; }
.mht-section h2 { font-size: clamp(30px, 4vw, 48px); line-height:1.05; letter-spacing:-.05em; margin:0; color:var(--mht-primary); }
.mht-section-head p { color:var(--mht-muted); max-width:540px; margin:0; }
.mht-shortcode-box { background:#fff; border:1px dashed var(--mht-border); border-radius:26px; padding:22px; box-shadow:0 12px 30px rgba(31,42,55,.05); }

.mht-build-band { background:var(--mht-primary); color:#fff; border-radius:34px; padding:36px; display:grid; grid-template-columns: 1fr auto; gap:22px; align-items:center; overflow:hidden; position:relative; }
.mht-build-band:before { content:""; position:absolute; inset:auto -80px -120px auto; width:300px; height:300px; border-radius:50%; background:rgba(201,155,92,.3); }
.mht-build-band h2 { color:#fff; margin:0 0 10px; }
.mht-build-band p { color:rgba(255,255,255,.78); margin:0; max-width:650px; }

.mht-page { padding:54px 0; min-height:60vh; }
.mht-page-card { background:#fff; border:1px solid var(--mht-border); border-radius:30px; padding:min(42px,6vw); box-shadow:var(--mht-shadow); }
.mht-entry-title { margin:0 0 22px; font-size: clamp(34px,5vw,58px); color:var(--mht-primary); letter-spacing:-.05em; line-height:1; }

.mht-site-footer { padding:42px 0; border-top:1px solid var(--mht-border); color:var(--mht-muted); }
.mht-footer-inner { display:flex; justify-content:space-between; gap:18px; flex-wrap:wrap; }

@media (max-width: 1080px) {
  .mht-hero-grid { grid-template-columns: minmax(0,1fr) minmax(420px,.9fr); gap:28px; }
  .mht-hero-photo { min-height:440px; }
}

@media (max-width: 880px) {
  .mht-nav { display:none; }
  .mht-container { width: min(100% - 28px, 1480px); }
  .mht-hero-grid, .mht-choice-grid, .mht-build-band { grid-template-columns:1fr; }
  .mht-hero { padding-top:42px; }
  .mht-hero-photo { min-height:330px; }
  .mht-floating-panel { margin-top:-58px; width:min(340px, calc(100% - 30px)); }
  .mht-section-head { display:block; }
}

/* v1.0.3 wider premium layout */
.mht-container{width:min(1500px,calc(100% - 48px));}
.mht-hero{grid-template-columns:minmax(520px,1fr) minmax(520px,1fr);gap:72px;}
.mht-hero-title{font-size:clamp(3.4rem,5.4vw,6rem);}
.mht-hero-visual{transform:none;}
@media(max-width:1100px){.mht-hero{grid-template-columns:1fr;gap:38px}.mht-container{width:min(100% - 28px,900px)}}


/* v1.0.4 One Pager + Customizer Hero */
html{scroll-behavior:smooth;scroll-padding-top:92px;}
body.home .mht-site-header{background:rgba(247,243,237,.84)}
.mht-onepage{overflow:hidden;}
.mht-full-hero{padding:64px 0 56px;min-height:calc(100vh - 76px);display:flex;align-items:center;}
.mht-full-hero .mht-hero-grid{grid-template-columns:minmax(460px, .92fr) minmax(620px, 1.08fr);gap:60px;}
.mht-hero-copy{padding-left:max(0px,calc((100vw - 1500px)/2));}
.mht-hero-copy h1{font-size:clamp(52px,6.8vw,104px);max-width:880px;}
.mht-hero-copy p{font-size:clamp(18px,1.45vw,23px);max-width:760px;}
.mht-route-actions{gap:14px;margin-top:32px;}
.mht-route-btn{display:inline-flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--mht-border);border-radius:999px;padding:14px 22px;font-weight:900;color:var(--mht-primary);box-shadow:0 12px 28px rgba(31,42,55,.08);transition:.18s ease;}
.mht-route-btn span{display:grid;place-items:center;width:28px;height:28px;border-radius:999px;background:#f3eadc;color:#8a6331;font-size:12px;}
.mht-route-btn:hover{transform:translateY(-2px);box-shadow:var(--mht-shadow);}
.mht-hero-video-card{padding:12px;border-radius:38px;}
.mht-media-frame{position:relative;min-height:620px;border-radius:30px;overflow:hidden;background:#13253a;}
.mht-media-frame iframe,.mht-hero-iframe,.mht-hero-video{position:absolute;inset:0;width:100%;height:100%;border:0;object-fit:cover;display:block;}
.mht-media-frame .mht-hero-photo{position:absolute;inset:0;min-height:0;border-radius:0;background-size:cover;background-position:center;}
.mht-media-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.20));pointer-events:none;}
.mht-hero-video-card .mht-floating-panel{margin:-92px auto 20px;}
.mht-two-col{display:grid;grid-template-columns:minmax(360px,.8fr) minmax(560px,1.2fr);gap:34px;align-items:center;}
.mht-two-col h2{font-size:clamp(38px,5vw,68px);}
.mht-two-col p{font-size:18px;color:var(--mht-muted);max-width:620px;}
.mht-soft-section{background:rgba(255,255,255,.42);border-block:1px solid rgba(231,222,210,.8);}
.mht-build-band-large{min-height:340px;padding:54px;grid-template-columns:1fr auto;}
.mht-build-band-large h2{font-size:clamp(38px,5vw,72px);max-width:880px;}
.mht-build-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end;}
.mht-kicker-dark{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.2);}
.mht-services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.mht-services-grid div{background:#fff;border:1px solid var(--mht-border);border-radius:22px;padding:24px;font-weight:800;color:var(--mht-primary);box-shadow:0 10px 24px rgba(31,42,55,.05);}
.mht-contact-card{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;background:#fff;border:1px solid var(--mht-border);border-radius:34px;padding:42px;box-shadow:var(--mht-shadow);}
.mht-contact-card h2{font-size:clamp(38px,5vw,72px);margin:14px 0 10px;color:var(--mht-primary);letter-spacing:-.055em;line-height:.98;}
.mht-contact-card p{color:var(--mht-muted);font-size:18px;margin:0;}
.mht-contact-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end;}
@media(max-width:1200px){.mht-full-hero .mht-hero-grid{grid-template-columns:1fr;}.mht-hero-copy{padding-left:0}.mht-media-frame{min-height:520px}.mht-two-col{grid-template-columns:1fr}.mht-build-band-large,.mht-contact-card{grid-template-columns:1fr}.mht-build-actions,.mht-contact-actions{justify-content:flex-start}.mht-services-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.mht-full-hero{padding:36px 0}.mht-media-frame{min-height:340px;border-radius:24px}.mht-hero-video-card{border-radius:28px}.mht-route-btn{width:100%;justify-content:flex-start}.mht-services-grid{grid-template-columns:1fr}.mht-build-band-large,.mht-contact-card{padding:28px}.mht-reverse-mobile>:first-child{order:2}.mht-reverse-mobile>:last-child{order:1}}


/* v1.0.5 Calm hero: video focus + route panel under media */
.mht-full-hero{padding:58px 0 50px;min-height:calc(100vh - 76px);}
.mht-full-hero .mht-hero-grid{grid-template-columns:minmax(440px,.86fr) minmax(640px,1.14fr);gap:56px;align-items:center;}
.mht-hero-copy h1{font-size:clamp(44px,5.2vw,82px);line-height:.98;max-width:760px;letter-spacing:-.06em;}
.mht-hero-copy p{font-size:clamp(18px,1.25vw,21px);max-width:690px;}
.mht-hero-note{margin-top:28px;display:inline-flex;flex-direction:column;gap:2px;background:rgba(255,255,255,.72);border:1px solid var(--mht-border);border-radius:22px;padding:16px 18px;box-shadow:0 10px 24px rgba(31,42,55,.06);}
.mht-hero-note span{font-weight:900;color:var(--mht-primary);}
.mht-hero-note small{color:var(--mht-muted);font-size:14px;}
.mht-media-frame{min-height:590px;border-radius:30px;}
.mht-hero-video-card{padding:12px;border-radius:38px;}
.mht-hero-video-card .mht-floating-panel.mht-route-panel{margin:-84px auto 20px;width:min(560px,calc(100% - 52px));padding:18px;border-radius:26px;}
.mht-route-panel-label{display:block;margin:0 0 12px!important;text-transform:uppercase;letter-spacing:.12em;font-size:11px!important;font-weight:900;color:#8a6331!important;}
.mht-route-panel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.mht-route-panel-grid a{display:flex;flex-direction:column;justify-content:center;gap:3px;min-height:82px;padding:16px 14px;border:1px solid var(--mht-border);border-radius:18px;background:#fff;color:var(--mht-primary);transition:.18s ease;}
.mht-route-panel-grid a:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(31,42,55,.10);border-color:#d7c7b4;}
.mht-route-panel-grid strong{font-size:20px;line-height:1;letter-spacing:-.03em;}
.mht-route-panel-grid small{font-size:13px;color:var(--mht-muted);line-height:1.2;}
.mht-route-actions{display:none!important;}
.mht-mini-stats{display:none!important;}
@media(max-width:1200px){
  .mht-full-hero .mht-hero-grid{grid-template-columns:1fr;gap:34px;}
  .mht-media-frame{min-height:500px;}
}
@media(max-width:760px){
  .mht-full-hero{padding:36px 0 42px;}
  .mht-hero-copy h1{font-size:clamp(40px,12vw,58px);}
  .mht-media-frame{min-height:330px;border-radius:24px;}
  .mht-hero-video-card .mht-floating-panel.mht-route-panel{margin:-54px auto 14px;width:calc(100% - 28px);padding:14px;border-radius:22px;}
  .mht-route-panel-grid{grid-template-columns:1fr;gap:8px;}
  .mht-route-panel-grid a{min-height:62px;}
}


/* v1.0.6 Homepage Builder compatibility */
.mht-site-header .mht-header-inner > .mht-btn-accent{display:none!important;}
.mht-route-section .mht-btn[href="#buy"], .mht-route-section .mht-btn[href="#rent"]{cursor:pointer;}


/* v1.0.8 compact premium scale + mobile video first */
:root{--mht-section-y:52px;}
.mht-full-hero{min-height:auto!important;padding:42px 0 38px!important;}
.mht-full-hero .mht-hero-grid{gap:42px!important;}
.mht-hero-copy h1{font-size:clamp(40px,4.6vw,72px)!important;line-height:.99!important;}
.mht-hero-copy p{font-size:clamp(16px,1.05vw,19px)!important;}
.mht-hero-note{margin-top:20px!important;padding:13px 15px!important;border-radius:18px!important;}
.mht-media-frame{min-height:500px!important;}
.mht-hero-video-card .mht-floating-panel.mht-route-panel{margin:-70px auto 16px!important;}
.mht-section{padding:var(--mht-section-y) 0!important;}
.mht-section h2{font-size:clamp(28px,3.4vw,44px)!important;}
.mht-two-col{gap:26px!important;}
.mht-shortcode-box{padding:18px!important;border-radius:22px!important;}
.mht-build-band-large{min-height:260px!important;padding:36px!important;}
.mht-contact-card{padding:34px!important;}
@media(max-width:760px){
  body{padding-bottom:78px;}
  .mht-full-hero{padding:18px 0 28px!important;}
  .mht-full-hero .mht-hero-grid{display:flex!important;flex-direction:column!important;gap:16px!important;}
  .mht-hero-card{order:1!important;}
  .mht-hero-copy{order:2!important;}
  .mht-media-frame{min-height:260px!important;border-radius:22px!important;}
  .mht-hero-video-card{padding:8px!important;border-radius:26px!important;}
  .mht-hero-video-card .mht-floating-panel.mht-route-panel{margin:-42px auto 8px!important;width:calc(100% - 22px)!important;padding:12px!important;}
  .mht-route-panel-label{margin-bottom:8px!important;font-size:10px!important;}
  .mht-route-panel-grid{grid-template-columns:repeat(3,1fr)!important;gap:7px!important;}
  .mht-route-panel-grid a{min-height:58px!important;padding:10px 8px!important;text-align:center;align-items:center;}
  .mht-route-panel-grid strong{font-size:16px!important;}
  .mht-route-panel-grid small{font-size:11px!important;}
  .mht-hero-copy h1{font-size:clamp(30px,9vw,42px)!important;margin-top:12px!important;}
  .mht-hero-copy p{font-size:15px!important;line-height:1.55!important;}
  .mht-hero-note{margin-top:14px!important;width:100%;box-sizing:border-box;}
  .mht-section{padding:38px 0!important;}
}

/* v1.0.10: clean rent section, no rental cards on home */
.mht-centered-section{max-width:820px;text-align:center;margin:0 auto;}
.mht-centered-section p{max-width:680px;margin-left:auto;margin-right:auto;}
.mht-rent-clean-section .mht-btn{margin-top:14px;}


/* v1.0.11 home flow fix: Buy/Rent as clean route cards, no listing blocks on the home route area */
.mht-buy-rent-clean{padding-top:38px!important;padding-bottom:28px!important;}
.mht-buy-rent-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:stretch;}
.mht-home-route-card{background:#fff;border:1px solid var(--mht-border);border-radius:32px;padding:34px;box-shadow:0 18px 42px rgba(31,42,55,.08);display:flex;flex-direction:column;min-height:300px;position:relative;overflow:hidden;}
.mht-home-route-card:after{content:"";position:absolute;right:-70px;bottom:-80px;width:210px;height:210px;border-radius:50%;background:rgba(201,155,92,.12);pointer-events:none;}
.mht-home-route-card h2{font-size:clamp(30px,3vw,46px);margin:8px 0 12px;letter-spacing:-.045em;}
.mht-home-route-card p{color:var(--mht-muted);font-size:17px;line-height:1.6;max-width:620px;margin:0 0 28px;}
.mht-home-route-card .mht-btn{margin-top:auto;align-self:flex-start;padding:12px 20px;font-size:14px;position:relative;z-index:1;}
.mht-home-route-rent{background:#fbf7f0;}
.mht-home-route-buy{background:#fff;}
@media(max-width:860px){.mht-buy-rent-grid{grid-template-columns:1fr}.mht-home-route-card{min-height:0;padding:26px;border-radius:26px}.mht-home-route-card h2{font-size:30px}.mht-home-route-card p{font-size:15px}}



