/* PostHog visual base; original Thailand festival field-guide composition. */
.bmft-homepage{--fg-cream:#eeefe9;--fg-ink:#23251d;--fg-body:#4d4f46;--fg-line:#bfc1b7;--fg-orange:#f7a501;--fg-white:#fcfcfa;max-width:1280px;margin:0 auto;padding:0 32px 80px;font-family:"IBM Plex Sans",sans-serif;overflow-wrap:break-word;min-width:0}
.bmft-homepage :where(h1,h2,h3,p,li,td,th,summary){color:var(--fg-ink);font-family:"IBM Plex Sans",sans-serif!important}
.bmft-homepage p,.bmft-homepage li{font-size:18px!important;line-height:1.72!important;color:var(--fg-body)!important}
.bmft-homepage p{margin:0 0 18px!important}.bmft-homepage ul{margin:16px 0 24px;padding-left:22px}.bmft-homepage li{margin:8px 0}.bmft-homepage strong{font-weight:600}
.bmft-homepage h1{font-size:clamp(38px,4vw,56px)!important;font-weight:700!important;line-height:1.12!important;letter-spacing:-.045em!important;margin:0 0 24px!important;max-width:640px}
.bmft-homepage h2{font-size:clamp(28px,3vw,38px)!important;line-height:1.18!important;letter-spacing:-.025em!important;font-weight:700!important;margin:0 0 28px!important;padding:0!important;border:0!important;scroll-margin-top:100px}
.bmft-homepage h3{font-size:21px!important;line-height:1.3!important;font-weight:600!important;letter-spacing:-.015em;margin:0 0 14px!important}
.bmft-homepage a{color:#765000!important}.bmft-homepage a:hover{color:#23251d!important}.bmft-homepage :where(a,summary,[tabindex]):focus-visible{outline:3px solid #895500!important;outline-offset:4px!important}
.bmft-homepage .fg-eyebrow,.bmft-homepage .bmft-eyebrow{font-size:12px!important;font-weight:600!important;line-height:1.5!important;letter-spacing:.1em;text-transform:uppercase;color:var(--fg-body)!important;margin-bottom:18px!important}
.fg-hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:26px;align-items:center;padding:66px 0 54px}
.fg-hero-copy{min-width:0;position:relative;z-index:1}.fg-hero-copy>p:not(.bmft-eyebrow):not(.bmft-season){max-width:530px}.bmft-homepage .bmft-season{font-size:14px!important;line-height:1.5!important;margin:0 0 24px!important;color:var(--fg-body)!important}
.fg-image{margin:0;min-width:0}.fg-image img{width:100%;height:auto!important;max-width:100%;display:block;border-radius:6px}.fg-image figcaption{font-size:13px;line-height:1.5;color:#626459;margin-top:10px}
.fg-hero-art{margin-right:-22px}.fg-hero-art img{border-radius:0}.fg-hero-art figcaption{margin-left:20px;font-size:13px}
.fg-actions{display:flex;gap:14px 20px;align-items:center;flex-wrap:wrap;margin-top:26px}.bmft-homepage .fg-primary{display:inline-flex;align-items:center;justify-content:center;min-height:48px;background:var(--fg-orange);color:var(--fg-ink)!important;border:1px solid #dd9001;border-radius:6px;padding:12px 18px;text-decoration:none!important;font-size:16px;font-weight:600;line-height:1.4}.fg-primary:hover{background:#dd9001}.fg-text-link{font-size:16px;font-weight:600;text-decoration:none!important;padding:12px 0}
.fg-section-nav{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:10px 30px;padding:16px 0;background:var(--fg-cream);border-top:1px solid var(--fg-line);border-bottom:1px solid var(--fg-line)}.fg-section-nav a{display:inline-flex;align-items:center;min-height:40px;color:var(--fg-ink)!important;font-size:15px;font-weight:600;text-decoration:none;padding:0 4px}.fg-section-nav a:hover{text-decoration:underline;text-underline-offset:6px}
.fg-opening{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:48px;align-items:center;margin-top:64px}.fg-opening-copy{min-width:0}.fg-edition-cover{max-width:260px;transform:rotate(2deg)}.fg-edition-cover img{border:1px solid var(--fg-line)}.fg-edition-cover figcaption{max-width:240px}
.fg-takeaways{margin-bottom:24px;padding:24px;background:var(--fg-white);border:1px solid var(--fg-line);border-radius:6px}.fg-takeaways>p{font-size:26px!important;color:var(--fg-ink)!important;font-weight:600}.fg-takeaways ul{list-style:none;padding:0;margin:18px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:18px 28px}.fg-takeaways li{margin:0;font-size:16px!important;line-height:1.6!important}.fg-takeaways li:first-child{grid-column:1/-1;padding-bottom:18px;border-bottom:1px solid #dcdfd2}.fg-takeaways li:first-child strong{font-size:19px;color:var(--fg-ink)}
.fg-comparison{margin-top:80px}.bmft-homepage .fg-scroll-hint{display:none;font-size:14px!important;line-height:1.5!important;margin:0 0 -10px!important}.bmft-homepage .bmft-table-wrap{overflow-x:auto;max-width:100%;border:1px solid var(--fg-line);border-radius:6px;background:var(--fg-white);margin:24px 0}.bmft-homepage table{width:100%;min-width:760px;border-collapse:collapse;margin:0}.bmft-homepage td,.bmft-homepage th{font-size:16px!important;line-height:1.55!important;padding:17px 20px;vertical-align:top;text-align:left;border:0;border-bottom:1px solid #dcdfd2;color:var(--fg-ink)}.bmft-homepage th{background:#e5e7e0;font-size:13px!important;letter-spacing:.025em;font-weight:600}.bmft-homepage tbody tr:last-child td{border-bottom:0}.bmft-homepage .fg-gaia-row{background:#d9eddf}.fg-table-link{display:inline-block;min-height:40px;font-weight:600;text-underline-offset:5px}.fg-table-link:after{content:" ↗";font-weight:400;display:inline-block;margin-left:5px}
.fg-method{margin:42px 0 24px;max-width:930px}.bmft-homepage .fg-method h2{font-size:24px!important;margin-bottom:16px!important}.bmft-homepage .fg-method p{font-size:16px!important;line-height:1.65!important}.bmft-homepage .fg-method .fg-eyebrow{font-size:12px!important}.fg-full-contents{max-width:930px;font-size:15px;border:1px solid var(--fg-line);border-radius:6px;padding:14px 20px}.fg-full-contents summary{cursor:pointer;font-weight:600;min-height:28px}.fg-full-contents ul{columns:2;column-gap:36px;list-style:none;padding:0;margin:14px 0 0}.fg-full-contents li{break-inside:avoid;font-size:15px!important;margin:6px 0}.fg-full-contents a{display:inline-block;padding:5px 0}
.fg-festival{margin-top:96px;scroll-margin-top:96px}.fg-festival-heading{max-width:980px;margin-bottom:30px}.fg-festival-heading .fg-eyebrow{margin-bottom:12px!important}.bmft-homepage .fg-festival-heading h2{font-size:42px!important;margin:0!important;max-width:980px}.fg-best-for{display:block;font-size:22px;font-weight:400;letter-spacing:-.01em;line-height:1.35;margin-top:12px;color:var(--fg-body)}
.fg-festival-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:48px;align-items:start}.fg-festival-rail{min-width:0;position:sticky;top:92px}.fg-festival-rail>.fg-image img{border:1px solid var(--fg-line)}.fg-festival-body{min-width:0}.fg-festival-body .fg-note{margin-bottom:28px}.fg-facts{display:grid;grid-template-columns:1fr 1fr;gap:16px 22px;list-style:none;padding:24px!important;margin:20px 0 0!important;border:1px solid var(--fg-line);border-radius:6px;background:var(--fg-white)}.bmft-homepage .fg-facts li{font-size:15px!important;line-height:1.55!important;margin:0!important;min-width:0}.fg-facts strong{display:block;font-size:12px;letter-spacing:.03em;color:var(--fg-body);margin-bottom:6px}.fg-facts a{overflow-wrap:anywhere}.fg-review-link{display:inline-flex;align-items:center;min-height:44px;margin-top:18px;font-size:16px;font-weight:600;text-decoration:none!important}
.fg-festival-reverse .fg-festival-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}.fg-festival-reverse .fg-festival-rail{grid-column:2;grid-row:1}.fg-festival-reverse .fg-festival-body{grid-column:1;grid-row:1}.fg-suits{padding:20px;background:#e5e7e0;border-radius:6px}.fg-suits h3{font-size:16px!important}.fg-suits p:last-child{margin:0!important}
.fg-festival-featured{border:1px solid #9b9c92;border-radius:8px;padding:30px;background:var(--fg-white)}.fg-festival-featured .fg-festival-heading h2{font-size:46px!important}.fg-festival-featured .fg-festival-grid{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:36px}.fg-festival-featured .fg-facts{background:var(--fg-cream);border-color:#dcdfd2}.fg-festival-featured .fg-suits{background:#d9eddf}
.bmft-homepage .bmft-booking{background:var(--fg-cream);border:1px solid var(--fg-line);border-radius:6px;padding:24px;margin:28px 0 0}.bmft-homepage .bmft-booking p,.bmft-homepage .bmft-booking strong{color:var(--fg-ink)!important}.bmft-homepage .bmft-booking .bmft-booking-title{font-size:23px!important;font-weight:600!important;line-height:1.3!important}.bmft-homepage .bmft-booking .bmft-button{display:inline-flex;min-height:48px;justify-content:center;align-items:center;border:1px solid #dd9001;border-radius:6px;padding:12px 18px;background:var(--fg-orange);color:var(--fg-ink)!important;text-decoration:none;font-weight:600;font-size:16px;line-height:1.4}.bmft-homepage .bmft-booking .bmft-button:hover{background:#dd9001}.bmft-homepage .bmft-booking .bmft-official-link{display:inline-block;color:#765000!important;font-size:15px;margin-top:16px}.bmft-homepage .bmft-booking .bmft-price-note{font-size:14px!important;line-height:1.55!important;margin:14px 0 0!important}
.fg-buying,.fg-planning,.fg-faq,.fg-finale{margin-top:96px}.fg-buying>p{max-width:780px}.fg-choice-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:24px;margin-top:32px;align-items:start}.fg-choice{background:var(--fg-white);border:1px solid var(--fg-line);border-radius:6px;padding:24px;min-width:0}.fg-choice:first-child{grid-column:1;grid-row:1/4}.fg-choice:nth-child(n+2){grid-column:2}.fg-choice .bmft-table-wrap{margin-bottom:0;border:0;border-radius:0}.fg-choice table{min-width:0}.fg-choice td,.fg-choice th{padding:13px 6px}.fg-choice p{font-size:16px!important;line-height:1.7!important}.fg-choice p:last-child{margin-bottom:0!important}
.fg-planning-heading{display:grid;grid-template-columns:1fr 350px;gap:48px;align-items:center;margin-bottom:30px}.fg-planning-heading .fg-image{max-width:350px}.fg-planning-heading img{border:1px solid var(--fg-line)}.fg-checklist{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;list-style:none!important;padding:0!important;counter-reset:before-go}.fg-checklist>li{background:var(--fg-white);border:1px solid var(--fg-line);border-radius:6px;padding:24px;margin:0!important;counter-increment:before-go}.fg-checklist>li:before{content:"0" counter(before-go);display:block;font-size:13px;font-weight:600;margin-bottom:20px;color:#626459}.fg-checklist h3{font-size:19px!important}.fg-checklist p{font-size:16px!important;line-height:1.7!important}.fg-checklist>li:nth-child(4){grid-column:1/3}.fg-camping-note{max-width:520px;margin:34px auto 0}.fg-camping-note img{border:1px solid var(--fg-line)}
.fg-faq{display:grid;grid-template-columns:.75fr 1.25fr;gap:16px 64px;align-items:start}.fg-faq>.fg-eyebrow,.fg-faq>h2{grid-column:1}.fg-faq>h2{grid-row:2}.fg-faq-list{grid-column:2;grid-row:1/4;min-width:0}.fg-faq-item{border-top:1px solid var(--fg-line);padding:0 0 18px}.fg-faq-item:last-child{border-bottom:1px solid var(--fg-line)}.fg-faq-item summary{font-size:19px!important;line-height:1.45!important;list-style:none;cursor:pointer;position:relative;padding:22px 34px 4px 0;min-height:54px}.fg-faq-item summary::-webkit-details-marker{display:none}.fg-faq-item summary:after{content:"+";position:absolute;right:4px;top:20px;font-size:26px;font-weight:400}.fg-faq-item[open] summary:after{content:"−"}.fg-faq-item p{margin:16px 0 0!important;font-size:17px!important;line-height:1.7!important}
.fg-finale{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}.fg-finale-copy ul{columns:2;column-gap:26px}.fg-finale-copy li{font-size:15px!important;line-height:1.6!important;break-inside:avoid}.fg-finale-art img{border:1px solid var(--fg-line)}.fg-finale .bmft-booking{background:var(--fg-white)}
@media(min-width:1450px){.fg-hero-art{margin-right:-50px}.fg-hero{gap:0}}
@media(max-width:1000px){.bmft-homepage{padding:0 24px 64px}.fg-hero{grid-template-columns:1fr 1fr;gap:18px;padding-top:48px}.fg-hero-art{margin-right:0}.fg-festival-grid,.fg-festival-reverse .fg-festival-grid,.fg-festival-featured .fg-festival-grid{gap:28px}.fg-section-nav{gap:20px}.fg-section-nav a{font-size:14px}.fg-facts{grid-template-columns:1fr;padding:20px!important}.fg-festival-featured{padding:24px}.fg-planning-heading{grid-template-columns:1fr 300px;gap:24px}.fg-checklist{grid-template-columns:repeat(2,minmax(0,1fr))}.fg-checklist>li:nth-child(4){grid-column:auto}.fg-checklist>li:last-child{grid-column:1/-1}.fg-faq{gap:16px 32px}}
@media(max-width:760px){.bmft-homepage{padding:0 20px 48px}.fg-hero{display:flex;flex-direction:column;align-items:stretch;padding:38px 0 30px;gap:28px}.bmft-homepage h1{font-size:40px!important;max-width:560px}.fg-hero-copy>p:not(.bmft-eyebrow):not(.bmft-season){max-width:none}.fg-hero-art{max-width:600px;margin:0 auto}.fg-hero-art figcaption{margin-left:0}.fg-section-nav{position:static;flex-wrap:wrap;gap:4px 18px;padding:12px 0}.fg-section-nav a{font-size:14px;min-height:40px}.fg-opening{grid-template-columns:1fr;margin-top:40px;gap:26px}.fg-edition-cover{max-width:260px;margin:0 auto;transform:none}.fg-comparison{margin-top:56px}.fg-takeaways{padding:20px}.fg-full-contents ul{columns:1}.fg-festival,.fg-buying,.fg-planning,.fg-faq,.fg-finale{margin-top:64px}.bmft-homepage .fg-festival-heading h2,.fg-festival-featured .fg-festival-heading h2{font-size:34px!important}.fg-best-for{font-size:20px;margin-top:10px}.fg-festival-grid,.fg-festival-reverse .fg-festival-grid,.fg-festival-featured .fg-festival-grid{display:flex;flex-direction:column;gap:32px}.fg-festival-rail{position:static;width:100%;max-width:600px}.fg-facts{grid-template-columns:1fr 1fr}.fg-festival-featured{padding:22px}.fg-festival-body{width:100%}.fg-choice-grid{display:block;margin-top:26px}.fg-choice{margin-bottom:20px}.fg-planning-heading{grid-template-columns:1fr;gap:20px}.fg-planning-heading .fg-image{max-width:500px}.fg-checklist{grid-template-columns:1fr}.fg-checklist>li:last-child{grid-column:auto}.fg-faq{display:block}.fg-faq-list{margin-top:32px}.fg-finale{display:flex;flex-direction:column;gap:30px}.fg-finale-art{width:100%;max-width:600px}.fg-finale-copy ul{columns:1}.bmft-homepage .fg-faq-item p{font-size:17px!important}.fg-camping-note{margin-top:28px}}
@media(max-width:390px){.bmft-homepage{padding:0 16px 42px}.bmft-homepage h1{font-size:35px!important}.fg-takeaways ul{grid-template-columns:1fr}.fg-takeaways li:first-child{grid-column:auto}.fg-facts{grid-template-columns:1fr}.fg-festival-featured{padding:18px}.bmft-homepage .fg-festival-heading h2,.fg-festival-featured .fg-festival-heading h2{font-size:30px!important}.fg-best-for{font-size:18px}.fg-choice,.fg-checklist>li{padding:20px}.bmft-homepage .bmft-booking{padding:20px}.fg-actions{gap:8px 16px}.fg-primary{width:100%}}
@media(prefers-reduced-motion:no-preference){.fg-hero-copy{animation:fg-arrive .5s ease-out both}.fg-hero-art{animation:fg-arrive .65s ease-out .08s both}@keyframes fg-arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}}

@media(max-width:820px){.bmft-homepage .fg-scroll-hint{display:block}}

/* Keep the article's section navigation below the sticky site header. */
body.bmft-site .fg-section-nav{top:calc(var(--bmft-header-offset) + var(--bmft-admin-offset));z-index:40}
body.bmft-site .bmft-homepage h2{scroll-margin-top:calc(var(--bmft-header-offset) + var(--bmft-admin-offset) + 100px)}
@media(max-width:760px){body.bmft-site .bmft-homepage h2{scroll-margin-top:calc(var(--bmft-header-offset) + var(--bmft-admin-offset) + 24px)}}
