/* Small warm embers and occasional silk petals; shared by every Thai page. */
#moon-atmosphere{position:fixed;inset:0;width:100%;height:100%;pointer-events:none!important;z-index:18;opacity:.75;contain:strict}
#moon-atmosphere[hidden]{display:none!important}
body[data-ready=false] .site-footer{visibility:hidden}
.moon-carousel{position:relative;isolation:isolate;outline:none;overflow:hidden;--carousel-duration:7000ms;background:#04121e}
.moon-carousel:focus-visible{outline:2px solid #e9cb8d;outline-offset:-3px}
.moon-carousel-viewport{overflow:hidden;touch-action:pan-y pinch-zoom;contain:paint}
.moon-carousel-track{display:flex;width:100%;transform:translate3d(calc(var(--position,1)*-100% + var(--drag,0px)),0,0);transition:transform 680ms cubic-bezier(.22,.75,.16,1);align-items:stretch}
.moon-carousel[data-animating=true] .moon-carousel-track{will-change:transform}
.moon-carousel-track.is-dragging,.moon-carousel-track.is-snapping{transition:none!important}
.moon-carousel-slide{flex:0 0 100%;min-width:0;overflow:hidden}
.moon-carousel-slide>.moon-hero{height:100%;width:100%;user-select:none}
.moon-carousel-slide .moon-hero .hero-copy{animation:none;padding-bottom:88px}
.moon-carousel-slide .featured-original img{-webkit-user-drag:none}
.moon-carousel-controls{position:absolute;left:var(--gutter,32px);right:var(--gutter,32px);bottom:19px;z-index:8;display:flex;align-items:center;gap:24px;min-height:44px}
.carousel-count{display:flex;align-items:baseline;gap:7px;font-variant-numeric:tabular-nums;color:#94acba;letter-spacing:.05em;font-size:11px}
.carousel-count>b{font-size:20px;font-weight:500;color:#f5d89f}
.moon-carousel .carousel-dots{display:flex;align-items:center;gap:10px;margin:0;margin-right:auto}
.moon-carousel .carousel-dots button{width:31px;height:44px;padding:18px 0;border:0;background:transparent;border-radius:0;position:relative;cursor:pointer;color:#d1b776}
.moon-carousel .carousel-dots button:before{content:'';display:block;position:absolute;inset:20px 0;background:#8ca5ab44;border-radius:4px}
.moon-carousel .carousel-dots button.active{width:76px}
.moon-carousel .carousel-dots button>span{position:absolute;inset:20px 0;background:linear-gradient(90deg,#63e9c7,#eacd91);border-radius:4px;transform:scaleX(0);transform-origin:left}
.moon-carousel .carousel-dots button.active>span{animation:moon-slide-progress var(--carousel-duration) linear both;animation-play-state:paused}
.moon-carousel[data-autoplay=running] .carousel-dots button.active>span{animation-play-state:running}
.moon-carousel .moon-hero-image{animation:none}
.moon-carousel-slide[data-active=true] .moon-hero-image{animation:moon-camera-drift 8s ease-out both}
.moon-carousel[data-autoplay=paused] .moon-hero-image{animation-play-state:paused}
.carousel-buttons{display:flex;gap:8px}.carousel-buttons button{display:grid;place-items:center;width:43px;height:43px;border:1px solid #afc9cd45;color:#e4edea;background:#071e29a6;border-radius:50%;cursor:pointer;backdrop-filter:blur(6px);transition:background .2s,border-color .2s,transform .2s}
.carousel-buttons button:hover{background:#225246aa;border-color:#8cdbc4;transform:translateY(-1px)}.carousel-buttons svg{width:20px;height:20px}
.carousel-buttons button:focus-visible,.carousel-dots button:focus-visible{outline:2px solid #f1d397;outline-offset:3px}
.banner-sheen{position:absolute;inset:0 auto 0 0;width:32%;max-width:330px;z-index:6;pointer-events:none;opacity:0;background:linear-gradient(104deg,transparent 12%,#f5d6a011 27%,#fff6d443 46%,#fffef057 49%,#fbe2b32b 53%,transparent 78%);transform:translate3d(-130%,0,0) skewX(-17deg)}
.moon-hero,.provider-banner{isolation:isolate}
@keyframes moon-slide-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes moon-camera-drift{from{transform:scale(1)}to{transform:scale(1.035)}}
@media(max-width:850px){.moon-carousel-controls{left:22px;right:22px}.carousel-buttons button{width:40px;height:40px}.moon-carousel-slide .moon-hero .hero-copy{padding-bottom:84px}}
@media(max-width:600px){#moon-atmosphere{opacity:.62}.moon-carousel-slide .moon-hero .hero-copy{padding-bottom:22px}.moon-carousel-controls{position:relative;inset:auto;min-height:49px;padding:0 19px 7px;gap:14px;background:linear-gradient(0deg,#04121e,#04121ef5)}.carousel-count{font-size:10px;gap:5px}.carousel-count>b{font-size:16px}.moon-carousel .carousel-dots{gap:7px}.moon-carousel .carousel-dots button{width:13px}.moon-carousel .carousel-dots button.active{width:40px}.carousel-buttons{gap:6px}.carousel-buttons button{width:35px;height:35px;backdrop-filter:none}.carousel-buttons svg{width:17px;height:17px}.banner-sheen{width:38%;max-width:190px}}
@media(max-width:360px){.moon-carousel-controls{gap:10px;padding-inline:16px}.carousel-buttons{gap:5px}.carousel-buttons button{width:33px;height:33px}.carousel-count{letter-spacing:0}.moon-carousel .carousel-dots{gap:6px}.moon-carousel .carousel-dots button.active{width:31px}}
@media(prefers-reduced-motion:reduce){#moon-atmosphere,.banner-sheen{display:none!important}.moon-carousel-track{transition:none!important}.moon-carousel .carousel-dots button.active>span{animation:none!important;transform:scaleX(1)}.moon-carousel .moon-hero-image{animation:none!important}.carousel-buttons button{transition:none}}
