:root{--color-bg-primary: #EDE8DF;--color-bg-secondary: #D0BBA0;--color-text-primary: #1E2E2A;--color-text-secondary: #384120;--color-accent-soft: #A8A399;--color-accent-jungle: #2A3B36;--color-accent-terracotta: #853016;--color-accent-brown: #81472F;--font-display: "Kenao Sans Serif", "Didot", "Playfair Display", serif;--font-body: "Avenir Next Thai Traditional", "Avenir Next", "Helvetica Neue", sans-serif;--font-accent: "Daydream", "Cursive", serif;--font-ui: "DM Sans", sans-serif;--spacing-container: 1440px;--spacing-section: 8rem;--spacing-mobile-section: 3.5rem;--transition-slow: .6s ease-out;--transition-ui: .3s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--color-bg-primary);color:var(--color-text-primary);font-family:var(--font-body);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:400;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-primary);line-height:1.2}h1{font-size:clamp(2.5rem,5vw,4rem);letter-spacing:.08em}h2{font-size:clamp(2rem,3.5vw,2.8rem);margin-bottom:2.5rem;letter-spacing:.08em}p{margin-bottom:1.5rem;font-weight:400;max-width:70ch}a{color:inherit;text-decoration:none;transition:opacity var(--transition-ui)}a:hover{opacity:.7}img{max-width:100%;display:block}.container{max-width:var(--spacing-container);margin:0 auto;padding:0 2rem}.font-accent{font-family:var(--font-accent);font-size:1.2rem;color:var(--color-text-secondary);font-style:italic;letter-spacing:0;text-transform:none}.text-center{text-align:center}.text-center p{margin-left:auto;margin-right:auto}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.grid{display:grid}.gap-4{gap:1rem}.gap-8{gap:2rem}.btn{display:inline-block;padding:1rem 2.5rem;font-family:var(--font-display);text-transform:uppercase;font-size:.9rem;letter-spacing:.1em;border:1px solid var(--color-text-primary);background:transparent;color:var(--color-text-primary);cursor:pointer;transition:all var(--transition-ui)}.btn:hover,.btn-primary{background:var(--color-text-primary);color:var(--color-bg-primary)}.btn-primary:hover{background:transparent;color:var(--color-text-primary)}.section-padding{padding-top:var(--spacing-section);padding-bottom:var(--spacing-section)}@media(max-width:768px){.section-padding{padding-top:var(--spacing-mobile-section);padding-bottom:var(--spacing-mobile-section)}}
