
@import url('https://fonts.googleapis.com/css2?family=Kanit:wght@300;400;500;600&family=Montserrat:wght@400;500;600;700&display=swap');
:root{--ink:#18231f;--muted:#6d756f;--cream:#f6f3ed;--white:#fff;--accent:#9c7850;--line:#e7e1d7;--dark:#17201d}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Kanit,Arial,sans-serif;background:#fff;line-height:1.75}a{color:inherit;text-decoration:none}.container{width:min(1180px,92%);margin:auto}.topbar{background:var(--dark);color:#dce2dd;font-size:12px}.topbar-in{height:34px;display:flex;justify-content:space-between;align-items:center}.nav-wrap{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.nav{height:82px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px}.brand img{width:145px;height:auto;max-height:48px;object-fit:contain}.brand span{display:flex;flex-direction:column;line-height:1.15}.brand b{font-size:21px;font-weight:600}.brand small{font:600 9px Montserrat,sans-serif;letter-spacing:2px;color:var(--accent);margin-top:5px}.menu{display:flex;gap:5px;align-items:center}.menu a{font:600 12px Montserrat,sans-serif;letter-spacing:1.2px;padding:30px 15px;position:relative}.menu a:after{content:"";position:absolute;bottom:20px;left:15px;right:15px;height:2px;background:var(--accent);transform:scaleX(0);transition:.25s}.menu a:hover:after,.menu a.active:after{transform:scaleX(1)}.menu-toggle{display:none;border:0;background:transparent;font-size:28px}.hero{min-height:620px;background-size:cover;background-position:center;display:flex;align-items:center;position:relative}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,18,15,.72),rgba(10,18,15,.12))}.hero-content{position:relative;color:white;max-width:680px;padding:90px 0}.eyebrow{font:600 12px Montserrat,sans-serif;letter-spacing:3px;color:#e6c79d}.hero h1{font-size:clamp(38px,5vw,66px);line-height:1.15;margin:15px 0}.hero p{font-size:18px;color:#f4f4f4;max-width:600px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 22px;background:var(--accent);color:white;border:1px solid var(--accent);border-radius:2px;font-weight:500;margin:8px 5px 0 0;transition:.2s}.btn:hover{filter:brightness(.92);transform:translateY(-1px)}.btn.outline{background:transparent;border-color:white}.section{padding:82px 0}.section.cream{background:var(--cream)}.section-head{text-align:center;max-width:760px;margin:0 auto 42px}.section-head .eyebrow{color:var(--accent)}.section-head h2{font-size:36px;line-height:1.25;margin:8px 0 12px}.section-head p{color:var(--muted);margin:0}.about-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:55px;align-items:center}.about-img{width:100%;height:460px;object-fit:cover;border-radius:2px}.kicker{font:600 11px Montserrat,sans-serif;letter-spacing:2px;color:var(--accent)}h2,h3{line-height:1.3}.about-copy h2{font-size:39px;margin:10px 0 20px}.about-copy p{color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{background:#fff;border:1px solid var(--line);overflow:hidden;transition:.25s}.card:hover{transform:translateY(-5px);box-shadow:0 16px 40px rgba(20,30,25,.09)}.card-img{width:100%;height:255px;object-fit:cover}.card-body{padding:22px}.card-body h3{margin:3px 0 6px;font-size:23px}.en{font:600 10px Montserrat,sans-serif;letter-spacing:2px;color:var(--accent)}.card-body p{color:var(--muted);font-size:15px}.read{font-weight:600;color:var(--accent);font-size:14px}.service-card{padding:30px;background:#fff;border:1px solid var(--line)}.service-icon{font-size:28px;color:var(--accent)}.service-card h3{font-size:19px;margin:8px 0}.service-card p{color:var(--muted);font-size:14px}.news-card .card-img{height:210px}.news-meta{font:500 10px Montserrat,sans-serif;color:#8b918d;letter-spacing:.8px}.cta{background:var(--dark);color:white;padding:62px 0}.cta-in{display:flex;justify-content:space-between;align-items:center;gap:25px}.cta h2{font-size:32px;margin:0 0 5px}.cta p{margin:0;color:#cfd6d2}.page-hero{padding:90px 0;background:var(--dark);color:white}.page-hero h1{font-size:48px;margin:0 0 8px}.page-hero p{margin:0;color:#ccd4d0}.prose{max-width:850px;margin:auto}.prose p{color:var(--muted)}.detail-hero{width:100%;height:min(68vh,650px);object-fit:cover}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.gallery img{width:100%;height:270px;object-fit:cover}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:35px}.contact-box{background:var(--cream);padding:35px}.contact-box h3{margin-top:0}.form{display:grid;gap:14px}.form input,.form textarea{width:100%;border:1px solid #dcd7ce;padding:13px 15px;font:inherit;background:#fff}.form textarea{min-height:160px;resize:vertical}.notice{padding:13px 16px;background:#eaf3eb;border-left:3px solid #63866d;margin-bottom:20px}.footer{background:#111815;color:#d3dad6;padding-top:55px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.2fr;gap:50px;padding-bottom:45px}.footer h4{font:600 11px Montserrat,sans-serif;letter-spacing:2px;color:#fff}.footer a{display:block;color:#aeb9b4;margin:5px 0}.footer-brand{font-size:26px;color:white}.copyright{text-align:center;border-top:1px solid #29322e;padding:15px;font-size:12px;color:#87918c}.copyright a{display:inline}.admin-note{font-size:12px;color:#888}.list{padding-left:20px}.list li{margin:8px 0}.article{max-width:850px;margin:auto}.article img{max-width:100%;height:auto}.article h2{font-size:30px}.article h3{font-size:23px}.table-wrap{overflow:auto}.simple-table{width:100%;border-collapse:collapse}.simple-table th,.simple-table td{padding:12px;border-bottom:1px solid var(--line);text-align:left}.simple-table th{font-size:12px}
@media(max-width:900px){.topbar-in{font-size:10px}.brand img{width:110px}.brand b{font-size:17px}.nav{height:70px}.menu-toggle{display:block}.menu{display:none;position:absolute;top:70px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:10px 4%;flex-direction:column;align-items:stretch}.menu a{padding:12px 8px}.menu a:after{bottom:5px;left:8px;right:auto;width:35px}.menu-open .menu{display:flex}.hero{min-height:560px}.about-grid,.contact-grid{grid-template-columns:1fr}.cards{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:1fr 1fr}.cta-in{display:block}.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.topbar-in span:first-child{display:none}.hero{min-height:520px}.hero-content{padding:70px 0}.hero h1{font-size:39px}.hero p{font-size:16px}.section{padding:58px 0}.section-head h2,.about-copy h2{font-size:30px}.cards,.gallery,.footer-grid{grid-template-columns:1fr}.card-img{height:230px}.page-hero{padding:65px 0}.page-hero h1{font-size:37px}.about-img{height:320px}.contact-grid{gap:18px}}

/* Enhanced detail pages, image galleries and service backgrounds */
.page-hero-image{background-size:cover;background-position:center;min-height:430px;display:flex;align-items:center;position:relative;overflow:hidden}.page-hero-image:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,20,17,.78),rgba(12,20,17,.28) 60%,rgba(12,20,17,.08));}.page-hero-image .container{position:relative;z-index:1}.page-hero-image h1{max-width:850px}.lightbox-trigger{cursor:zoom-in}.detail-hero.lightbox-trigger{display:block;transition:transform .25s,box-shadow .25s}.detail-hero.lightbox-trigger:hover{transform:scale(1.005);box-shadow:0 18px 45px rgba(20,30,25,.14)}.gallery img{cursor:zoom-in;border-radius:2px;transition:transform .25s,box-shadow .25s}.gallery img:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(20,30,25,.16)}.article-detail .lead{font-size:19px;color:#59645e}.article-actions{margin-top:38px;padding-top:25px;border-top:1px solid var(--line)}.dark-outline{color:var(--ink)!important;border-color:var(--ink)!important}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card-bg{position:relative;min-height:270px;overflow:hidden;background:#fff;border:1px solid var(--line);padding:0}.service-card-photo{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.28;filter:saturate(.72) contrast(.96);transform:scale(1.01);transition:opacity .3s,transform .3s}.service-card-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.58) 0%,rgba(255,255,255,.76) 52%,rgba(255,255,255,.93) 100%)}.service-card-bg:hover .service-card-photo{opacity:.38;transform:scale(1.05)}.service-card-content{position:relative;z-index:2;padding:32px;height:100%}.service-card-content p{max-width:380px}.service-card-content .read{display:inline-block;margin-top:5px}.service-card-content h3,.service-card-content p,.service-card-content .read,.service-card-content .service-icon{position:relative;z-index:2}.service-card-content h3{color:var(--ink)}.service-card-content p{color:#4f5954}.service-card-content .read{color:#a06f36}.service-card-content .service-icon{color:var(--accent)}.lightbox{position:fixed;inset:0;background:rgba(8,12,10,.9);z-index:99999;display:none;align-items:center;justify-content:center;padding:30px}.lightbox.open{display:flex}.lightbox img{max-width:94vw;max-height:88vh;object-fit:contain;box-shadow:0 20px 80px rgba(0,0,0,.45)}.lightbox-close{position:absolute;top:15px;right:22px;width:44px;height:44px;border:1px solid rgba(255,255,255,.5);border-radius:50%;background:rgba(0,0,0,.2);color:#fff;font-size:28px;line-height:40px;cursor:pointer}.lightbox-caption{position:absolute;bottom:16px;left:50%;transform:translateX(-50%);color:#fff;font-size:13px;background:rgba(0,0,0,.45);padding:5px 12px;border-radius:20px;max-width:90%;text-align:center}
@media(max-width:900px){.service-grid{grid-template-columns:1fr 1fr}.page-hero-image{min-height:390px}}@media(max-width:600px){.service-grid{grid-template-columns:1fr}.page-hero-image{min-height:360px}.lightbox{padding:15px}.lightbox img{max-width:96vw;max-height:82vh}}

.article-gallery-block{margin-top:45px;padding-top:25px;border-top:1px solid var(--line)}.article-gallery-block h3{margin:6px 0 18px}.article-gallery-block .gallery{margin-top:10px}

/* Lightbox page-lock: only active while an image is open */
body.lightbox-open{position:fixed;left:0;right:0;width:100%;overflow:hidden;}
.lightbox{pointer-events:none;}
.lightbox.open{pointer-events:auto;}


/* Footer background: attached house image with readable dark overlay */
.footer{position:relative;background-size:cover;background-position:center 58%;background-repeat:no-repeat;isolation:isolate;overflow:hidden;}
.footer:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,14,12,.88),rgba(7,14,12,.76) 48%,rgba(7,14,12,.84));z-index:-1;}
.footer > *{position:relative;z-index:1;}
.footer-grid{background:transparent;}
.footer h4,.footer-brand,.footer p,.footer a{color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.45);}
.footer a{opacity:.92;}
.footer a:hover{opacity:1;}
.copyright{border-top-color:rgba(255,255,255,.22);color:#f0f3f1;text-shadow:0 1px 3px rgba(0,0,0,.45);}
.copyright a{color:#fff;}
@media(max-width:600px){.footer{background-position:center center;}.footer:before{background:rgba(7,14,12,.86);}}

/* Homepage three-image automatic hero slider */
.hero-slider{isolation:isolate;overflow:hidden;background:#18231f}.hero-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transition:opacity 1s ease;z-index:-2}.hero-slide.is-active{opacity:1}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,18,15,.72),rgba(10,18,15,.12));z-index:-1;pointer-events:none}.hero-slider:before{display:none}.hero-slider .hero-content{z-index:1}.hero-dots{position:absolute;z-index:2;bottom:28px;left:50%;transform:translateX(-50%);display:flex;gap:10px}.hero-dot{width:11px;height:11px;padding:0;border:1px solid #fff;border-radius:50%;background:rgba(255,255,255,.45);cursor:pointer}.hero-dot.is-active{background:#fff;transform:scale(1.2)}.hero-slide-admin{margin:20px 0 28px;padding:20px;border:1px solid #e5e1da;background:#faf9f6}.hero-slide-admin h2{margin:0 0 5px}.hero-slide-field{display:flex;flex-direction:column;gap:8px;padding:12px;border:1px solid #e7e1d7;background:#fff}.hero-slide-preview{width:100%;height:150px;object-fit:cover;border:1px solid #ddd}.hero-slide-field input[type=file]{width:100%;font-size:13px}.hero-slide-field small{overflow-wrap:anywhere;color:#6d756f}
@media(prefers-reduced-motion:reduce){.hero-slide{transition:none}}

/* News and house share controls */
.home-news-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:28px}.home-news-head .section-head{margin:0;text-align:left}.view-all-link{color:var(--accent);font-weight:700;white-space:nowrap}.home-news-layout{display:grid;grid-template-columns:minmax(280px,.95fr) minmax(0,1.8fr);gap:18px}.home-news-lead,.home-news-card{background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;min-width:0}.home-news-media{display:block;position:relative;overflow:hidden;background:#ddd}.home-news-media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s}.home-news-media:hover img{transform:scale(1.03)}.home-news-lead .home-news-media{height:390px}.home-news-small-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.home-news-card .home-news-media{height:170px}.home-news-overlay{position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.8));display:flex;flex-direction:column;justify-content:end;padding:14px;color:#fff}.home-news-overlay h3{font-size:16px;line-height:1.55;margin:0}.home-news-lead .home-news-overlay h3{font-size:22px}.home-news-date{font-size:11px;margin-top:5px;opacity:.9}.share-tools{display:flex;gap:8px;align-items:center;padding:9px 12px;border-top:1px solid #eee}.share-button{padding:5px 11px;border:1px solid #d8ddd8;background:#fff;color:#48554d;font:inherit;font-size:12px;cursor:pointer;border-radius:3px}.share-button:hover{border-color:var(--accent);color:var(--accent)}.share-toast{position:fixed;left:50%;bottom:22px;z-index:999999;transform:translate(-50%,15px);padding:10px 16px;background:#17231e;color:#fff;border-radius:4px;opacity:0;pointer-events:none;transition:.2s}.share-toast.show{opacity:1;transform:translate(-50%,0)}
.model-showcase{padding:34px 0;border-bottom:1px solid var(--line)}.model-showcase:last-child{border-bottom:0}.model-showcase-head{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:16px}.model-showcase-head h2{font-size:30px;margin:4px 0}.model-showcase-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(240px,.8fr);gap:14px}.model-main-photo,.model-thumbs a{display:block;overflow:hidden;background:#e5e2dc}.model-main-photo{height:440px}.model-main-photo img,.model-thumbs img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s}.model-main-photo:hover img,.model-thumbs a:hover img{transform:scale(1.035)}.model-thumbs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:12px}.model-thumbs a{min-height:135px}.model-showcase-info{display:flex;align-items:start;justify-content:space-between;gap:20px;margin-top:16px}.model-showcase-info p{margin:0;max-width:760px;color:var(--muted)}.model-showcase-info .share-tools{border:0;padding:0;white-space:nowrap}.news-all-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.news-all-grid .card-img{display:block;width:100%;height:220px;object-fit:cover}.news-all-grid .card{display:flex;flex-direction:column}.news-all-grid .card-body{flex:1}
@media(max-width:900px){.home-news-layout{grid-template-columns:1fr}.home-news-lead .home-news-media{height:360px}.home-news-small-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.model-main-photo{height:360px}.model-showcase-grid{grid-template-columns:minmax(0,1.2fr) minmax(200px,.8fr)}.news-all-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.home-news-head{align-items:center}.home-news-lead .home-news-media{height:300px}.home-news-small-grid{gap:9px}.home-news-card .home-news-media{height:130px}.home-news-overlay{padding:9px}.home-news-overlay h3{font-size:13px}.home-news-lead .home-news-overlay h3{font-size:18px}.model-showcase-head h2{font-size:24px}.model-showcase-grid{grid-template-columns:1fr}.model-main-photo{height:280px}.model-thumbs{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:110px}.model-showcase-info{display:block}.model-showcase-info .share-tools{margin-top:12px}.news-all-grid{grid-template-columns:1fr}}

.footer-social{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;padding:22px 15px}.footer-social a{display:inline-flex;align-items:center;justify-content:center;border-radius:30px;background:#244a59;color:white;text-decoration:none;padding:9px 17px;font-weight:600}.footer-social a:hover{background:#b88647}.line-qr-card{margin-top:25px;padding:20px;border:1px solid #ddd;border-radius:12px;text-align:center}.line-qr-placeholder{width:210px;height:210px;max-width:100%;margin:auto;background:#f3fff4;border:7px solid #06c755;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#087e37;gap:10px}.line-qr-placeholder strong{font-size:38px}.line-qr-placeholder small{font-size:12px}