/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.relative{position:relative}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.grid{display:grid}.table{display:table}}.hashtagHeader{justify-content:space-between;align-items:center;gap:18px;margin:0 0 15px;display:flex}.hashtagHeader h3{color:var(--forest);margin:0;font:400 28px Georgia,serif}.hashtagHeader small{color:#788078;letter-spacing:.13em;margin-top:5px;font-size:8px;display:block}.hashtagHeader a{letter-spacing:.11em;color:var(--gold);font-size:9px;font-weight:700}.hashtagGallery{grid-template-columns:repeat(6,1fr);gap:8px;margin:0 0 36px;display:grid}.hashtagGallery a,.hashtagGallery button{aspect-ratio:1;cursor:pointer;background:#dfe4df;border:0;padding:0;display:block;overflow:hidden}.hashtagGallery img{object-fit:cover;width:100%;height:100%;transition:transform .35s;display:block}.hashtagGallery a:hover img,.hashtagGallery button:hover img{transform:scale(1.05)}:is(.hashtagGallery a:focus-visible,.hashtagGallery button:focus-visible){outline:4px solid var(--gold);outline-offset:2px}@media (max-width:600px){.hashtagGallery{scroll-snap-type:x mandatory;display:flex;overflow-x:auto}.hashtagGallery a,.hashtagGallery button{scroll-snap-align:start;flex:0 0 125px}.hashtagHeader h3{font-size:23px}}.facebookFrame{aspect-ratio:9/16;background:#f0f2f5;position:relative;overflow:hidden}.facebookFrame iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.socialLinks{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}.socialLinks a{min-height:155px!important;padding:20px!important}.socialHeading{gap:10px!important;height:32px!important}.socialLogo{width:30px!important;height:30px!important}.socialLinks strong{margin:20px 0 16px!important;font-size:18px!important}.socialLinks b{font-size:9px!important}@media (max-width:800px){.socialLinks{scroll-snap-type:x mandatory;padding-bottom:8px;display:flex!important;overflow-x:auto!important}.socialLinks a{scroll-snap-align:start;flex:0 0 225px!important}.socialSection .sectionTitle{margin-bottom:24px}}.footerContacts{flex-direction:column;grid-column:1/-1;align-items:flex-start;gap:13px;display:flex}.footerContacts .phoneLink{color:#e1c58e;font-size:18px;font-weight:700}.videoReviews{max-width:1180px;margin:0 auto;padding:20px 30px 110px}.videoReviews .sectionTitle p{color:#667069;max-width:680px;margin:14px auto 0;line-height:1.7}.videoReviewGrid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.videoReviewGrid article{border:1px solid var(--line);background:#fff;min-width:0;box-shadow:0 16px 45px #17271f0d}.tiktokFrame{aspect-ratio:9/16;background:#101010;position:relative;overflow:hidden}.tiktokFrame iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.videoReviewMeta{justify-content:space-between;align-items:center;gap:14px;padding:18px 20px;display:flex}.videoReviewMeta b{color:var(--forest);overflow-wrap:anywhere;font:400 16px Georgia,serif}.videoReviewMeta a{letter-spacing:.1em;color:var(--gold);flex:none;font-size:9px;font-weight:700}@media (max-width:800px){.videoReviews{padding:10px 12px 75px}.videoReviews .sectionTitle{text-align:left}.videoReviewGrid{scroll-snap-type:x mandatory;gap:12px;padding-bottom:8px;display:flex;overflow-x:auto}.videoReviewGrid article{scroll-snap-align:start;flex:0 0 min(82vw,340px)}.videoReviewMeta{padding:16px}.videoReviewMeta a{font-size:8px}}.villaDetails{grid-template-columns:1.05fr .95fr;align-items:stretch;max-width:1180px;margin:0 auto 120px;padding:0 30px;display:grid}.villaDetails>img{object-fit:cover;width:100%;height:100%;min-height:650px}.villaCopy{background:var(--forest);color:#fff;flex-direction:column;justify-content:center;padding:64px 55px;display:flex}.villaCopy>span,.locationSection>div>span{letter-spacing:.25em;color:#d9bd88;font-size:11px}.villaCopy h2{margin:16px 0 20px;font-size:44px}.villaCopy>p{color:#d8e0da;margin:0 0 30px;line-height:1.75}.villaStats{border-block:1px solid #ffffff26;grid-template-columns:repeat(3,1fr);margin-bottom:28px;display:grid}.villaStats div{padding:22px 8px 20px}.villaStats b{color:#e1c58e;font:400 30px Georgia,serif;display:block}.villaStats span{letter-spacing:.13em;text-transform:uppercase;color:#c7d1ca!important;font-size:9px!important}.villaCopy ul{grid-template-columns:1fr 1fr;gap:13px 22px;margin:0;padding:0;list-style:none;display:grid}.villaCopy li{color:#e5ebe7;padding-left:17px;font-size:12px;line-height:1.5;position:relative}.villaCopy li:before{content:"◆";color:var(--gold);font-size:7px;position:absolute;top:1px;left:0}.reviewsSection{max-width:1040px;margin:0 auto;padding:100px 30px}.reviewCards{grid-template-columns:1fr 1fr;gap:18px;display:grid}.reviewCards a{border:1px solid var(--line);background:#fff;flex-direction:column;align-items:flex-start;min-height:270px;padding:38px;transition:transform .25s,box-shadow .25s;display:flex}.reviewCards a:hover{transform:translateY(-4px);box-shadow:0 18px 50px #17271f15}.reviewCards a>span{letter-spacing:.24em;color:var(--gold);font-size:10px}.reviewCards strong{color:var(--forest);margin:32px 0 12px;font:400 42px Georgia,serif}.reviewCards p{color:#68716b;flex:1;line-height:1.6}.reviewCards b{letter-spacing:.12em;color:var(--forest);font-size:11px}.locationSection{background:#fff;grid-template-columns:1.15fr .85fr;max-width:1180px;margin:20px auto 120px;padding:0 30px;display:grid}.locationSection>img{object-fit:cover;width:100%;height:100%;min-height:520px}.locationSection>div{flex-direction:column;justify-content:center;align-items:flex-start;padding:65px 52px;display:flex}.locationSection h2{margin:16px 0;font-size:44px}.locationSection p{color:#667069;margin:0 0 30px;line-height:1.75}@media (max-width:800px){.villaDetails{grid-template-columns:1fr;margin-bottom:70px;padding:0 12px}.villaDetails>img{min-height:360px}.villaCopy{padding:42px 24px}.villaCopy h2{font-size:36px}.villaCopy ul{grid-template-columns:1fr}.reviewsSection{padding:70px 12px}.reviewCards{grid-template-columns:1fr}.reviewCards a{min-height:230px;padding:30px}.locationSection{grid-template-columns:1fr;margin:0 12px 75px;padding:0}.locationSection>img{min-height:300px}.locationSection>div{padding:42px 24px}.locationSection h2{font-size:36px}}.gallerySection{max-width:1180px;margin:0 auto;padding:45px 30px 120px}.galleryIntro{text-align:center;max-width:760px;margin:0 auto 36px}.galleryIntro>span{letter-spacing:.25em;color:var(--gold);font-size:11px}.galleryIntro p{color:#667069;line-height:1.7}.galleryGrid{grid-template-columns:repeat(12,1fr);grid-auto-rows:210px;gap:12px;display:grid}.galleryGrid button{cursor:pointer;text-align:left;background:#dfe4df;border:0;grid-column:span 6;padding:0;position:relative;overflow:hidden}.galleryGrid button:first-child{grid-area:span 2/1/auto/-1}.galleryGrid img{object-fit:cover;width:100%;height:100%;transition:transform .5s;display:block}.galleryGrid button:after{content:"";background:linear-gradient(#0000,#102219bb);position:absolute;inset:45% 0 0}.galleryGrid button:hover img{transform:scale(1.035)}.galleryGrid button:focus-visible{outline:4px solid var(--gold);outline-offset:3px}.galleryGrid span{color:#fff;letter-spacing:.08em;z-index:2;font-size:12px;position:absolute;bottom:16px;left:18px;right:18px}.lightbox{z-index:1000;background:#07130fef;flex-direction:column;justify-content:center;align-items:center;padding:55px 24px 25px;display:flex;position:fixed;inset:0}.lightbox img{object-fit:contain;max-width:min(1200px,92vw);max-height:78vh;box-shadow:0 20px 80px #0008}.lightbox p{color:#fff;letter-spacing:.08em;margin:16px 0 0}.lightboxClose{color:#fff;background:#14251ccc;border:1px solid #fff6;border-radius:50%;width:44px;height:44px;font-size:28px;line-height:1;position:fixed;top:18px;right:24px}@media (max-width:800px){.gallerySection{padding:35px 12px 75px}.galleryGrid{grid-template-columns:repeat(2,1fr);grid-auto-rows:160px;gap:7px}.galleryGrid button{grid-column:span 1}.galleryGrid button:first-child{grid-area:span 2/1/auto/-1}.galleryGrid span{font-size:9px;bottom:10px;left:10px}.lightbox{padding-inline:12px}}.grid>button,.grid>.blank{min-height:94px!important}.grid>button{justify-content:space-between!important}.grid button small{font-weight:700}.grid .isAvailable small{color:#43815a}.grid .isBooked small{color:#a39d94}.summary{grid-template-columns:1.25fr 1.25fr 1fr 1fr!important;padding:28px 30px!important}.summaryControls{grid-column:1/3;grid-template-columns:1fr 1fr;gap:12px;display:grid!important}.summaryControls label{color:#bbc9c0;letter-spacing:.13em;text-transform:uppercase;flex-direction:column;gap:8px;font-size:10px;display:flex}.summaryControls select{width:100%;color:var(--ink);background:#fff;border:1px solid #ffffff45;padding:11px 34px 11px 12px;font-size:14px}.summary strong{font-size:24px}.summary .primary{grid-column:3/-1}.summary>small{line-height:1.5}@media (max-width:800px){.grid>button,.grid>.blank{min-height:72px!important}.summary{grid-template-columns:1fr 1fr!important;gap:20px 12px!important;padding:24px 18px!important}.summaryControls,.summary .primary{grid-column:1/-1}}:root{--ink:#18251e;--cream:#f6f2e9;--gold:#b99354;--forest:#274436;--line:#d9d0bf}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);margin:0;font-family:Arial,Noto Sans Thai,sans-serif}a{color:inherit;text-decoration:none}nav{z-index:5;color:#fff;border-bottom:1px solid #fff3;justify-content:space-between;align-items:center;width:100%;height:76px;padding:0 6vw;display:flex;position:absolute}.brand{letter-spacing:.13em;font:600 17px Georgia,serif}.brand span{color:#d9bd88}.links{align-items:center;gap:25px;font-size:13px;display:flex}.links button{color:#fff;background:0 0;border:1px solid #fff9;border-radius:99px;padding:8px 12px}header{text-align:center;color:#fff;background:radial-gradient(circle at 50% 35%,#53775b88,#0000 36%),linear-gradient(145deg,#162a20,#31523e 55%,#17271f);flex-direction:column;justify-content:center;align-items:center;min-height:760px;padding:120px 8vw 70px;display:flex;position:relative;overflow:hidden}.heroGlow{border:1px solid #ffffff20;border-radius:50%;width:650px;height:650px;position:absolute;box-shadow:0 0 0 100px #ffffff05,0 0 0 200px #ffffff04}.eyebrow{letter-spacing:.28em;color:#ddc697;z-index:1;font-size:12px}h1{z-index:1;max-width:1050px;margin:30px auto;font:400 clamp(45px,7vw,92px)/1.02 Georgia,serif}header p{color:#e5e7df;z-index:1;max-width:640px;font-size:18px;line-height:1.7}.primary{background:var(--gold);color:#fff;letter-spacing:.08em;z-index:1;border-radius:2px;justify-content:center;align-items:center;padding:16px 27px;font-size:13px;font-weight:700;display:inline-flex}.facts{z-index:3;background:#fff;grid-template-columns:repeat(3,1fr);max-width:1000px;margin:-55px auto 80px;display:grid;position:relative;box-shadow:0 20px 60px #1d2b2120}.facts div{text-align:center;border-right:1px solid #eee;padding:36px}.facts div:last-child{border:0}.facts b{color:var(--forest);font:400 38px Georgia,serif;display:block}.facts span{text-transform:uppercase;letter-spacing:.12em;color:#6b726d;font-size:12px}.booking{max-width:1180px;margin:0 auto;padding:70px 30px 120px}.sectionTitle{text-align:center;margin-bottom:35px}.sectionTitle>span{letter-spacing:.25em;color:var(--gold);font-size:11px}h2{margin:12px 0;font:400 clamp(35px,5vw,58px) Georgia,serif}.status{color:#9c765c;font-size:12px}.status.live{color:#3b7c50}.controls{gap:15px;margin:25px 0;display:flex}.controls label{letter-spacing:.08em;align-items:center;gap:10px;font-size:12px;display:flex}.controls select{border:1px solid var(--line);background:#fff;padding:10px 36px 10px 12px}.calendar{border:1px solid var(--line);background:#fff}.monthbar{justify-content:space-between;align-items:center;padding:22px;display:flex}.monthbar h3{margin:0;font:400 27px Georgia,serif}.monthbar button{color:var(--forest);background:0 0;border:0;padding:0 20px;font-size:33px}.week,.grid{grid-template-columns:repeat(7,1fr);display:grid}.week{border-block:1px solid var(--line);background:#f1ede4}.week span{text-align:center;letter-spacing:.15em;padding:12px;font-size:10px}.grid>button,.grid>.blank{text-align:left;background:#fff;border:1px solid #e5dfd2;border-top:0;border-left:0;flex-direction:column;gap:8px;min-height:118px;padding:12px;display:flex;position:relative}.grid button:hover{background:#f6f3eb}.grid button b{font:400 17px Georgia,serif}.grid button small{letter-spacing:.08em;color:#788078;font-size:9px}.grid button em{color:var(--forest);font:700 13px Arial}.grid .special{background:#f8f0df}.grid .special:after{content:"";background:var(--gold);border-radius:50%;width:6px;height:6px;position:absolute;top:10px;right:10px}.grid .isBooked{color:#aaa;background:repeating-linear-gradient(135deg,#f4f0e9,#f4f0e9 6px,#ece6dc 6px 12px)}.grid .selected{outline:3px solid var(--gold);outline-offset:-3px;background:#fff8e8}.summary{background:var(--forest);color:#fff;grid-template-columns:1fr 1fr 1.3fr auto;align-items:center;gap:24px;padding:25px 30px;display:grid}.summary div span{color:#bbc9c0;letter-spacing:.13em;text-transform:uppercase;margin-bottom:7px;font-size:10px;display:block}.summary div b{font:400 17px Georgia,serif}.summary strong{color:#e1c58e;font:400 26px Georgia,serif}.summary .primary{white-space:nowrap}.summary .disabled{opacity:.4;pointer-events:none}.summary>small{color:#aab8af;grid-column:1/-1}.festival{text-align:center;color:#fff;background:#b99153;padding:90px 20px}.festival>span{letter-spacing:.25em;font-size:12px}.festival h2{margin:20px;font-size:72px}.festival p{font-size:18px}.socialSection{max-width:1120px;margin:0 auto;padding:25px 30px 120px}.socialSection .sectionTitle p{color:#667069;max-width:650px;margin:14px auto 0;line-height:1.7}.socialLinks{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.socialLinks a{border:1px solid var(--line);background:#fff;flex-direction:column;align-items:flex-start;min-height:210px;padding:32px;transition:transform .25s,box-shadow .25s,border-color .25s;display:flex}.socialLinks a:hover{border-color:#b99354;transform:translateY(-4px);box-shadow:0 18px 50px #17271f18}.socialLinks a:focus-visible{outline:4px solid var(--gold);outline-offset:3px}.socialHeading{align-items:center;gap:14px;height:42px;display:flex}.socialLogo{object-fit:contain;width:38px;height:38px;display:block}.socialLinks span{letter-spacing:.24em;color:var(--gold);font-size:10px}.socialLinks strong{color:var(--forest);overflow-wrap:anywhere;margin:34px 0 26px;font:400 24px Georgia,serif}.socialLinks b{letter-spacing:.1em;color:var(--forest);margin-top:auto;font-size:10px}footer{color:#d8dfda;background:#14251c;grid-template-columns:1fr auto;gap:25px;padding:60px 6vw;display:grid}footer p{color:#718078;grid-column:1/-1;font-size:11px}@media (max-width:800px){nav{padding:0 20px}.links a{display:none}header{min-height:680px}.facts{margin:-30px 15px 40px}.facts div{padding:22px 8px}.booking{padding:50px 12px}.grid>button,.grid>.blank{min-height:78px;padding:7px}.grid button small{font-size:7px}.grid button em{font-size:10px}.summary{grid-template-columns:1fr 1fr}.summary .primary{grid-column:1/-1}.controls{justify-content:space-between}.festival h2{font-size:42px}.socialSection{padding:5px 12px 75px}.socialLinks{grid-template-columns:1fr}.socialLinks a{min-height:170px;padding:26px}.socialLinks strong{margin:24px 0 20px}.socialSection .sectionTitle{text-align:left}footer{grid-template-columns:1fr}footer p{grid-column:1}}
