:root{--primary:#2D6A4F;--primary-dk:#1b4332;--primary-lt:#d8f3dc;--secondary:#74C69D;--dark:#1B2E24;--body-bg:#f0fdf4;--text:#1a2e24;--text-muted:#52796f;--border:#95d5b2;--white:#fff;--success:#28a745;--shadow-sm:0 2px 8px rgba(45,106,79,.08);--shadow-md:0 8px 28px rgba(45,106,79,.15);--shadow-lg:0 16px 48px rgba(45,106,79,.2);--radius:10px;--radius-lg:18px;--font:"Noto Sans Thai","Sarabun",sans-serif;--transition:all .3s ease;}
*,*::before,*::after{box-sizing:border-box;margin:0;}html{scroll-behavior:smooth;}
body{font-family:var(--font);background:var(--body-bg);color:var(--text);line-height:1.7;overflow-x:hidden;}
img{max-width:100%;height:auto;}a{color:var(--primary);transition:var(--transition);}
h1,h2,h3,h4,h5,h6{font-weight:700;color:var(--dark);line-height:1.3;}
.section-title{font-size:clamp(1.5rem,3vw,2.2rem);}
.section-subtitle{color:var(--text-muted);max-width:600px;margin:0 auto;}
.section-divider{width:50px;height:4px;background:var(--primary);border-radius:2px;margin:1rem auto 1.5rem;}
.section-divider.amber{background:var(--text-muted);}
.section-pad{padding:5rem 0;}.section-pad-sm{padding:3.5rem 0;}
.text-primary-custom{color:var(--primary)!important;}.text-secondary-custom{color:#457b9d!important;}
.btn{border-radius:6px;font-weight:700;transition:var(--transition);}
.btn-primary-custom{background:var(--primary);color:#fff;border:none;padding:.75rem 2rem;box-shadow:0 4px 15px rgba(29,53,87,.3);}
.btn-primary-custom:hover{background:var(--primary-dk);transform:translateY(-2px);color:#fff;}
.btn-cta-phone{background:var(--primary);color:#fff;border:2px solid var(--primary);padding:.85rem 2.2rem;box-shadow:0 4px 15px rgba(29,53,87,.3);}
.btn-cta-phone:hover{background:var(--primary-dk);border-color:var(--primary-dk);transform:translateY(-3px);color:#fff;}
.btn-cta-line{background:#06c755;color:#fff;border:2px solid #06c755;padding:.85rem 2.2rem;}
.btn-cta-line:hover{background:#05b34c;transform:translateY(-3px);color:#fff;}
.btn-cta-nav,.btn-line-nav{border-radius:6px;font-size:.82rem;}
.btn-line-nav{background:#06c755;color:#fff;border:none;border-radius:6px;}.btn-line-nav:hover{background:#05b34c;color:#fff;}
.site-navbar{background:#fff;border-bottom:2px solid var(--border);padding:.75rem 0;}
.site-navbar.scrolled{background:rgba(255,255,255,.97);backdrop-filter:blur(10px);}
.navbar-brand{font-size:1.2rem;font-weight:700;color:var(--primary)!important;}.brand-icon{color:var(--primary);margin-right:.4rem;}
.nav-link{font-weight:600;font-size:.9rem;color:var(--dark)!important;padding:.5rem .8rem!important;border-radius:6px;transition:var(--transition);}
.nav-link:hover,.nav-link.active{background:var(--primary-lt);color:var(--primary)!important;}
.hero-section{background:linear-gradient(135deg,var(--dark) 0%,var(--primary) 60%,#40916c 100%);min-height:85vh;display:flex;align-items:center;position:relative;overflow:hidden;padding:5rem 0 4rem;}
.hero-section::before{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width=60 height=60 viewBox=0 0 60 60 xmlns=http://www.w3.org/2000/svg%3E%3Cg fill=none fill-rule=evenodd%3E%3Cg fill=%23ffffff fill-opacity=0.03%3E%3Cpath d=M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z/%3E%3C/g%3E%3C/g%3E%3C/svg%3E") repeat;}
.hero-badge{display:inline-block;background:rgba(116,198,157,.2);border:1px solid rgba(116,198,157,.5);color:#d8f3dc;font-size:.73rem;font-weight:800;letter-spacing:2px;padding:.4rem 1.2rem;border-radius:6px;text-transform:uppercase;margin-bottom:1.25rem;}
.hero-title{font-size:clamp(2rem,5vw,3.5rem);color:#fff;font-weight:800;line-height:1.2;margin-bottom:1rem;}
.hero-title .highlight{color:#74C69D;}
.hero-subtitle{font-size:1.1rem;color:rgba(255,255,255,.85);margin-bottom:2rem;}
.hero-cta-group{display:flex;gap:1rem;flex-wrap:wrap;}
.hero-promo-box{background:rgba(241,250,238,.08);backdrop-filter:blur(15px);border:1px solid rgba(241,250,238,.2);border-radius:var(--radius-lg);padding:2rem;color:#fff;box-shadow:var(--shadow-lg);}
.promo-flash{font-size:.7rem;letter-spacing:2px;text-transform:uppercase;color:#74C69D;font-weight:800;}
.promo-big-price{font-size:3.5rem;font-weight:800;color:#74C69D;line-height:1;}
.promo-save-label{font-size:.9rem;color:rgba(255,255,255,.75);}
.promo-checkmarks{list-style:none;padding:0;margin:1rem 0;}
.promo-checkmarks li{padding:.3rem 0;font-size:.93rem;}
.promo-checkmarks li::before{content:"✓ ";color:#74C69D;font-weight:700;}
.promo-footnote-small{font-size:.7rem;color:rgba(255,255,255,.4);margin-top:.75rem;}
.hero-scroll-hint{color:rgba(255,255,255,.4);font-size:.82rem;margin-top:2rem;}
.feature-card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:2rem;text-align:center;border:1px solid var(--border);transition:var(--transition);height:100%;}
.feature-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);border-color:var(--primary);}
.feature-icon{width:70px;height:70px;border-radius:var(--radius);background:var(--primary-lt);color:var(--primary);font-size:1.8rem;display:flex;align-items:center;justify-content:center;margin:0 auto 1.25rem;transition:var(--transition);}
.feature-card:hover .feature-icon{background:var(--primary);color:#fff;}
.feature-card h5{font-size:1rem;font-weight:700;margin-bottom:.5rem;}
.feature-card p{font-size:.9rem;color:var(--text-muted);margin:0;}
.problem-section{background:#fff;}
.problem-item{display:flex;gap:1rem;align-items:flex-start;background:var(--primary-lt);border-radius:var(--radius);padding:1.25rem;border-left:4px solid var(--primary);transition:var(--transition);}
.problem-item:hover{transform:translateX(6px);box-shadow:var(--shadow-sm);}
.problem-icon{color:var(--primary);font-size:1.4rem;flex-shrink:0;margin-top:.1rem;}
.service-section{background:var(--dark);color:#fff;}
.service-card{background:rgba(255,255,255,.06);border-radius:var(--radius);border:1px solid rgba(168,212,216,.15);padding:1.75rem;text-align:center;transition:var(--transition);}
.service-card:hover{background:rgba(241,250,238,.08);border-color:rgba(241,250,238,.3);transform:translateY(-4px);}
.service-card .icon{font-size:2.5rem;color:#74C69D;margin-bottom:1rem;}
.service-card h5{color:#d8f3dc;font-size:1rem;}
.service-card p{color:rgba(255,255,255,.65);font-size:.88rem;}
.timeline{position:relative;padding-left:2rem;}
.timeline::before{content:"";position:absolute;left:.5rem;top:0;bottom:0;width:2px;background:var(--border);}
.timeline-item{position:relative;margin-bottom:2rem;}
.timeline-item::before{content:"";position:absolute;left:-1.6rem;top:.4rem;width:12px;height:12px;border-radius:3px;background:var(--primary);}
.timeline-item h6{font-weight:700;color:var(--dark);}
.timeline-item p{color:var(--text-muted);font-size:.9rem;}
.stat-box{text-align:center;padding:1.5rem;}
.stat-number{font-size:2.8rem;font-weight:800;color:var(--primary);line-height:1;}
.stat-label{font-size:.9rem;color:var(--text-muted);margin-top:.3rem;}
.cta-section{background:linear-gradient(135deg,var(--dark) 0%,var(--primary) 100%);color:#fff;padding:5rem 0;text-align:center;}
.cta-section h2{font-size:clamp(1.8rem,4vw,2.8rem);color:#d8f3dc;}
.cta-section p{color:rgba(255,255,255,.8);}
.keyword-section{background:var(--primary-lt);}
.keyword-tag{display:inline-block;margin:.3rem;background:#fff;border:1px solid var(--border);color:var(--primary);padding:.4rem 1rem;border-radius:6px;font-size:.88rem;font-weight:500;transition:var(--transition);}
.keyword-tag:hover{background:var(--primary);color:#fff;border-color:var(--primary);text-decoration:none;}
.blog-card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow-sm);overflow:hidden;border:1px solid var(--border);transition:var(--transition);height:100%;}
.blog-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);}
.blog-card img{width:100%;height:200px;object-fit:cover;}
.blog-card-body{padding:1.25rem;}
.blog-card-cat{font-size:.75rem;font-weight:700;color:var(--primary);text-transform:uppercase;letter-spacing:.5px;}
.blog-card-title{font-size:1rem;font-weight:700;margin:.5rem 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.blog-card-excerpt{font-size:.88rem;color:var(--text-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.faq-accordion .accordion-button{font-weight:600;color:var(--dark);background:#fff;}
.faq-accordion .accordion-button:not(.collapsed){background:var(--primary-lt);color:var(--primary);box-shadow:none;}
.faq-accordion .accordion-item{border:1px solid var(--border);margin-bottom:.5rem;border-radius:var(--radius)!important;overflow:hidden;}
.faq-accordion .accordion-body{font-size:.93rem;color:var(--text-muted);}
.location-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:.75rem;}
.location-link{display:block;text-align:center;padding:.75rem .5rem;background:#fff;border:1px solid var(--border);border-radius:var(--radius);font-size:.85rem;font-weight:500;color:var(--text);text-decoration:none;transition:var(--transition);}
.location-link:hover{background:var(--primary);color:#fff;border-color:var(--primary);transform:translateY(-2px);}
.site-breadcrumb{background:var(--primary-lt);padding:.6rem 0;font-size:.85rem;}
.site-breadcrumb .breadcrumb-item a{color:var(--primary);}
.area-hero{background:linear-gradient(135deg,var(--dark) 0%,var(--primary) 100%);color:#fff;padding:3rem 0;}
.area-hero h1{color:#d8f3dc;}
.area-cta-box{background:var(--primary-lt);border:1px solid var(--border);border-radius:var(--radius);padding:2rem;}
.contact-card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:2rem;}
.contact-info-item{display:flex;gap:1rem;margin-bottom:1.25rem;}
.contact-info-icon{width:48px;height:48px;border-radius:var(--radius);background:var(--primary-lt);color:var(--primary);display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0;}
.site-footer{background:var(--dark);color:rgba(255,255,255,.8);padding:4rem 0 2rem;}
.footer-brand{color:#F1FAEE;font-size:1.3rem;font-weight:800;margin-bottom:.75rem;}
.footer-tagline{color:#74C69D;font-size:.9rem;font-weight:600;margin-bottom:.75rem;}
.footer-heading{color:#74C69D;font-size:.8rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;margin-bottom:1rem;}
.footer-links{list-style:none;padding:0;margin:0;}
.footer-links li{margin-bottom:.4rem;}
.footer-links a{color:rgba(255,255,255,.55);text-decoration:none;font-size:.88rem;transition:var(--transition);}
.footer-links a:hover{color:#74C69D;padding-left:4px;}
.footer-contact-btn{display:flex;align-items:center;gap:.5rem;padding:.6rem 1.2rem;border-radius:6px;font-size:.9rem;font-weight:600;text-decoration:none;margin-bottom:.6rem;background:var(--primary);color:#fff;transition:var(--transition);}
.footer-contact-btn:hover{background:var(--primary-dk);transform:translateX(4px);color:#fff;}
.footer-contact-btn.line{background:#06c755;}.footer-contact-btn.line:hover{background:#05b34c;}
.footer-promo-box{background:rgba(241,250,238,.06);border:1px solid rgba(241,250,238,.15);border-radius:var(--radius);padding:1.5rem;}
.footer-promo-box .promo-badge{font-size:.7rem;letter-spacing:1.5px;color:#74C69D;font-weight:700;text-transform:uppercase;}
.footer-promo-box .promo-price{font-size:2.5rem;font-weight:800;color:#74C69D;}
.footer-promo-box .promo-note{font-size:.85rem;color:rgba(255,255,255,.65);}
.footer-promo-box .promo-footnote{font-size:.68rem;color:rgba(255,255,255,.35);margin:.5rem 0 0;}
.footer-divider{border-color:rgba(255,255,255,.1);margin:2rem 0 1.25rem;}
.float-cta{position:fixed;bottom:1.5rem;right:1.5rem;display:flex;flex-direction:column;gap:.6rem;z-index:9999;}
.float-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;border-radius:6px;font-weight:700;font-size:.9rem;text-decoration:none;box-shadow:0 4px 20px rgba(0,0,0,.3);transition:var(--transition);}
.float-phone{background:var(--primary);color:#fff;}.float-phone:hover{background:var(--primary-dk);transform:scale(1.05);color:#fff;}
.float-line{background:#06c755;color:#fff;}.float-line:hover{background:#05b34c;transform:scale(1.05);color:#fff;}
@media(min-width:992px){.float-cta{display:none;}}
.admin-sidebar{width:260px;background:var(--dark);min-height:100vh;color:#fff;position:fixed;top:0;left:0;z-index:100;overflow-y:auto;}
.admin-content{margin-left:260px;min-height:100vh;}
.admin-topbar{background:#fff;border-bottom:1px solid var(--border);padding:.75rem 1.5rem;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:99;}
.sidebar-brand{padding:1.25rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.08);font-weight:700;font-size:1.1rem;}
.sidebar-brand small{display:block;font-size:.7rem;color:rgba(255,255,255,.35);font-weight:400;}
.sidebar-nav{list-style:none;padding:.75rem 0;margin:0;}
.sidebar-nav .nav-section{padding:.5rem 1.5rem .25rem;font-size:.67rem;color:rgba(255,255,255,.3);letter-spacing:1px;text-transform:uppercase;}
.sidebar-nav li a{display:flex;align-items:center;gap:.65rem;padding:.65rem 1.5rem;color:rgba(255,255,255,.65);text-decoration:none;font-size:.88rem;transition:all .2s;}
.sidebar-nav li a:hover,.sidebar-nav li a.active{background:rgba(116,198,157,.1);color:#74C69D;border-left:3px solid #74C69D;}
.sidebar-nav li a i{width:18px;text-align:center;}
.stat-card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:1.25rem;border-left:4px solid var(--primary);}
.stat-card.amber{border-left-color:#a8dadc;}.stat-card.green{border-left-color:#28a745;}.stat-card.red{border-left-color:#dc3545;}
.stat-card .val{font-size:1.8rem;font-weight:800;color:var(--dark);}
.stat-card .lbl{font-size:.8rem;color:var(--text-muted);}
.admin-card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:1.5rem;margin-bottom:1.5rem;}
.admin-card .admin-card-title{font-weight:700;border-bottom:2px solid var(--primary);padding-bottom:.75rem;margin-bottom:1rem;}
.table th{font-size:.8rem;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);font-weight:600;}
.badge-status-published{background:#1d355720;color:var(--primary);padding:.25rem .65rem;border-radius:6px;font-size:.75rem;}
.badge-status-draft{background:#6c757d20;color:#6c757d;padding:.25rem .65rem;border-radius:6px;font-size:.75rem;}
.bg-primary-custom{background:var(--primary)!important;}.rounded-custom{border-radius:var(--radius)!important;}
.badge-amber{background:#a8dadc;color:var(--dark);padding:.3rem .75rem;border-radius:6px;font-size:.75rem;font-weight:700;}
.page-hero{background:linear-gradient(135deg,var(--dark) 0%,var(--primary) 100%);padding:3rem 0;color:#fff;}
.page-hero h1{color:#d8f3dc;font-size:clamp(1.5rem,3vw,2.2rem);}
.page-hero p{color:rgba(255,255,255,.8);}
@keyframes fadeInUp{from{opacity:0;transform:translateY(30px);}to{opacity:1;transform:translateY(0);}}
.fade-in-up{animation:fadeInUp .6s ease forwards;}.fade-in-up.delay-1{animation-delay:.15s;opacity:0;}.fade-in-up.delay-2{animation-delay:.3s;opacity:0;}.fade-in-up.delay-3{animation-delay:.45s;opacity:0;}
@media(max-width:768px){.hero-section{min-height:auto;padding:3rem 0;}.section-pad{padding:3rem 0;}.hero-cta-group{flex-direction:column;}.hero-cta-group .btn{width:100%;justify-content:center;}}
