:root{--color-primary: #1f5c4a;--color-accent: #d4a32c;--color-bg: #f7faf8;--color-text: #1c2622;--font-heading: "Niramit", serif;--font-body: "Sarabun", sans-serif}*{box-sizing:border-box}html{height:100%}body{margin:0;min-height:100vh;display:flex;flex-direction:column;font-family:var(--font-body);color:var(--color-text);background:var(--color-bg)}h1,h2,h3,.brand{font-family:var(--font-heading)}.page-shell-v19{display:flex;flex:1 0 auto;width:100%}.sidebar-nav-v19{order:2;width:220px;flex-shrink:0;background:var(--color-primary);color:#fff;padding:1.75rem 1.25rem;display:flex;flex-direction:column;gap:1.75rem}.sidebar-top-v19{display:flex;align-items:center;justify-content:space-between}.sidebar-nav-v19 .brand{color:#fff;text-decoration:none;font-size:1.2rem}.sidebar-nav-v19 nav{display:flex;flex-direction:column;gap:.25rem}.sidebar-nav-v19 nav a{color:#fff;text-decoration:none;opacity:.9;padding:.6rem .5rem;border-radius:8px}.sidebar-nav-v19 nav a:hover{opacity:1;background:#ffffff24}.nav-toggle-v19{display:none}.nav-toggle-v19-label{display:none;flex-direction:column;justify-content:space-between;width:22px;height:16px;cursor:pointer}.nav-toggle-v19-label span{display:block;height:3px;width:100%;background:#fff;border-radius:2px}@media(max-width:900px){.page-shell-v19{flex-direction:column}.sidebar-nav-v19{order:0;width:100%;padding:1rem 1.5rem;gap:.5rem}.nav-toggle-v19-label{display:flex}.sidebar-nav-v19 nav{display:none}.nav-toggle-v19:checked~.sidebar-nav-v19 nav{display:flex}}.content-col-v19{order:1;flex:1;display:flex;flex-direction:column;min-width:0}main{flex:1 0 auto;width:100%}.wrap{max-width:900px;margin:0 auto;padding:0 1.5rem}.breadcrumb{font-size:.85rem;color:#56635c;margin:1.5rem auto 0;max-width:900px;padding:0 1.5rem}.breadcrumb a{color:var(--color-primary);text-decoration:none}.site-footer{text-align:center;padding:1.5rem;color:#56635c;font-size:.9rem}.cta{display:inline-block;background:var(--color-accent);color:#241c04;padding:.6rem 1.3rem;border-radius:999px;text-decoration:none;font-weight:700}.hero-banner-v19{position:relative;max-width:900px;margin:1.5rem auto 0;padding:0 1.5rem}.hero-banner-v19 img{width:100%;height:340px;object-fit:cover;border-radius:16px;display:block}.hero-rating-badge{position:absolute;top:1.5rem;right:2.5rem;background:#fff;border-radius:12px;padding:.6rem 1rem;box-shadow:0 6px 16px #0000002e;font-size:.85rem;font-weight:700;color:var(--color-primary)}.hero-text-v19{max-width:900px;margin:1.5rem auto 0;padding:0 1.5rem}.hero-text-v19 h1{font-size:2.3rem;margin:0 0 .5rem;color:var(--color-primary)}@media(max-width:560px){.hero-banner-v19 img{height:220px}.hero-rating-badge{right:2rem;top:1rem;font-size:.75rem}.hero-text-v19 h1{font-size:1.8rem}}.itinerary-timeline{position:relative;padding-left:2rem}.itinerary-timeline:before{content:"";position:absolute;left:8px;top:6px;bottom:6px;width:2px;background:#d8e3de}.itinerary-day{position:relative;margin-bottom:1.75rem}.itinerary-day:before{content:"";position:absolute;left:-2rem;top:4px;width:18px;height:18px;border-radius:999px;background:var(--color-accent);border:3px solid #fff;box-shadow:0 0 0 2px var(--color-accent)}.itinerary-day h3{margin:0 0 .35rem;color:var(--color-primary)}.itinerary-day p{margin:0;line-height:1.75}.section{padding:3rem 0}.section-soft{background:#eef4f0}.section h2{text-align:center;font-size:1.85rem;margin-bottom:.5rem}.card-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem}.card-grid>.card{flex:1 1 240px;max-width:300px;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 4px #00000014}.card-grid>.card img{width:100%;height:160px;object-fit:cover;display:block}.attractions-grid{display:grid;grid-template-columns:repeat(4,1fr)}.attractions-grid>.card{max-width:none}@media(max-width:900px){.attractions-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.attractions-grid{grid-template-columns:1fr}}.card-grid>.card .card-body{padding:1rem}.card-grid>.card h3{margin:0 0 .35rem;font-size:1.02rem}.card-grid>.card p{margin:0;font-size:.88rem;line-height:1.65;color:#4a544e}.faq-item{border-bottom:1px solid #dbe6e1;padding:1.1rem 0}.faq-item h3{margin:0 0 .4rem;font-size:1.05rem;color:var(--color-primary)}.faq-item p{margin:0;line-height:1.7}.banner-img{width:100%;height:340px;object-fit:cover;border-radius:16px;margin-bottom:1.5rem;display:block}@media(max-width:560px){.banner-img{height:220px}}
