/*
Theme Name: AREA21
Author: AREA21
Description: ห้องพัก AREA21 เขาค้อ พร้อมปฏิทินห้องว่างของรีสอร์ท
Version: 1.3.1
Requires at least: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: area21
*/
:root{--area21-gold:#a58b52;--area21-ink:#26352f;--area21-muted:#71766f;--area21-line:#e8e7e1}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{-webkit-font-smoothing:antialiased}.wp-site-blocks{background:#fff;min-height:100vh;overflow:clip}.wp-site-blocks>*:not(:first-child),.area21-home>*{margin-block-start:0}a{text-underline-offset:.22em}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--area21-gold);outline-offset:4px}img{max-width:100%}.area21-wrap{width:min(1160px,calc(100% - 80px));margin-inline:auto}.area21-header{padding-block:19px;background:#fff;border-bottom:1px solid var(--area21-line)}.area21-header-row,.area21-footer-row{display:flex;align-items:center;justify-content:space-between;gap:24px}.area21-header-row>*,.area21-footer-row>*{margin:0}.area21-brand p{margin:0}.area21-brand-name{font-size:24px;font-weight:600;letter-spacing:.055em;line-height:1.3}.area21-brand-name a{text-decoration:none;color:var(--area21-ink)}.area21-brand-place{font-size:9px;letter-spacing:.28em;color:var(--area21-muted)}.area21-nav{display:flex;align-items:center;gap:30px}.area21-nav p{margin:0;font-size:13px}.area21-nav a{text-decoration:none;color:var(--area21-ink)}.area21-nav a:hover{color:var(--area21-gold)}
.area21-hero{min-height:340px!important;padding:45px 24px;background:#52614f;text-align:center}.area21-hero .wp-block-cover__inner-container{width:100%;max-width:1100px}.area21-hero h1{color:#fff;font-size:clamp(34px,4.8vw,60px);font-weight:500;line-height:1.45;letter-spacing:.025em;margin:0;text-shadow:0 2px 15px #0004}.area21-gold-rule{width:76px!important;max-width:76px!important;height:3px;border:0;background:var(--area21-gold);opacity:1;margin:22px auto 0!important}.area21-rooms{padding-block:58px 68px;background:#fff}.area21-room-heading{text-align:center;margin-bottom:28px}.area21-room-heading h2{font-size:clamp(22px,2.45vw,31px);font-weight:500;line-height:1.7;margin:0;color:var(--area21-ink)}.area21-room-heading p{margin:10px 0 0;color:var(--area21-muted);font-size:14px}
.area21-room-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px 34px}.area21-room-grid>*{margin:0!important}.area21-room-card{display:block;min-width:0;background:#fff;text-align:center}.area21-room-card>*{margin-block-start:0}.area21-room-photo{margin:0!important;overflow:hidden}.area21-room-photo img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover}.area21-room-detail{padding:20px 6px 0}.area21-room-detail h3{margin:0;color:var(--area21-gold);font-size:22px;font-weight:600;line-height:1.45}.area21-room-description{font-size:13px;line-height:1.9;color:var(--area21-muted);min-height:25px;margin:8px 0 0}.area21-room-link{margin:12px 0 0;font-size:13px}.area21-room-link a{color:#75623a}.area21-rooms-note{font-size:12px;line-height:1.9;text-align:center;color:var(--area21-muted);margin-top:36px}
.editor-styles-wrapper .area21-room-card{display:block!important}.editor-styles-wrapper .area21-home,.editor-styles-wrapper .area21-header,.editor-styles-wrapper .area21-footer{background:#fff}.area21-about{padding:52px 0;text-align:center;border-top:1px solid var(--area21-line)}.area21-about h2,.area21-contact h2{font-size:27px;font-weight:500;margin:0 0 16px}.area21-about p{max-width:720px;margin:0 auto;color:var(--area21-muted);font-size:15px;line-height:2}.area21-contact{padding:48px 24px 56px;text-align:center;background:#faf9f5;border-block:1px solid var(--area21-line)}.area21-contact p{font-size:14px;color:var(--area21-muted)}.area21-contact .wp-block-buttons{justify-content:center;gap:12px;margin-top:23px}.area21-contact .wp-block-button__link{background:#806a38;color:#fff;border-color:#806a38;border-radius:3px;font-size:14px;padding:13px 24px}.area21-contact .is-style-outline .wp-block-button__link{background:transparent;color:#66552e}.area21-contact-note{font-size:12px!important}.area21-footer{padding:29px 0;background:#fff}.area21-footer-copy,.area21-staff-link{font-size:12px;color:var(--area21-muted)}.area21-staff-link a{color:inherit}.area21-page-content{padding-block:54px 80px;min-height:55vh}.area21-page-content .wp-block-post{padding-block:24px;border-bottom:1px solid var(--area21-line)}
.area21-calendar-jump{margin:20px 0 0!important}.area21-calendar-jump a{display:inline-block;color:#fff;background:#806a38;border:1px solid #806a38;border-radius:3px;text-decoration:none;font-size:14px;padding:11px 23px}.area21-calendar-section{margin-top:58px;padding-top:42px;border-top:1px solid var(--area21-line)}.area21-calendar-section h2{text-align:center;font-size:28px;font-weight:500;line-height:1.6;margin:0 0 12px}.area21-calendar-intro{text-align:center;font-size:14px;color:var(--area21-muted);margin:0 0 22px}@media(max-width:900px){.area21-wrap{width:calc(100% - 48px)}.area21-room-grid{gap:32px 22px}.area21-room-detail h3{font-size:20px}.area21-hero{min-height:320px!important}}
@media(max-width:640px){.area21-wrap{width:calc(100% - 36px)}.area21-header{padding:17px 0}.area21-header-row{gap:15px;flex-wrap:wrap;justify-content:center}.area21-brand-name{font-size:22px}.area21-brand{text-align:center}.area21-nav{gap:24px}.area21-nav p{font-size:12px}.area21-hero{min-height:270px!important}.area21-hero h1{font-size:36px}.area21-rooms{padding-block:39px 46px}.area21-calendar-section{margin-top:40px;padding-top:30px}.area21-room-grid{grid-template-columns:1fr;gap:36px;max-width:440px;margin-inline:auto}.area21-room-description{min-height:0}.area21-room-heading h2{font-size:23px}.area21-about{padding:38px 0}.area21-about h2,.area21-contact h2{font-size:24px}.area21-contact .wp-block-buttons{flex-direction:column;align-items:stretch;max-width:330px;margin-inline:auto}.area21-contact .wp-block-button__link{width:100%}.area21-footer-row{flex-wrap:wrap;justify-content:center;gap:15px}.area21-footer-copy{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.area21-calendar{border:1px solid #dedfd6;border-radius:12px;padding:26px;background:#fff;box-shadow:0 10px 35px #20372a08;min-width:0;color:var(--area21-ink)}.area21-calendar-loading{padding:40px;text-align:center;color:var(--area21-muted)}.area21-calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px}.area21-calendar-navigation{display:flex;align-items:center;gap:20px}.area21-calendar-month{font-size:24px;font-weight:600;line-height:1.5;margin:0;min-width:205px;text-align:center}.area21-calendar button{font:inherit;cursor:pointer}.area21-calendar-arrow{border:1px solid #dbe1d7;border-radius:50%;width:40px;height:40px;background:#f3f6ef;color:#315b42;font-size:28px!important;line-height:1}.area21-calendar button:disabled{cursor:default;opacity:.42}.area21-calendar-refresh{border:1px solid #b6a274;background:#fcfaf4;color:#715b2e;font-size:13px!important;border-radius:6px;padding:10px 15px}.area21-calendar-status{font-size:13px;line-height:1.8;margin:19px 0 0;color:#4e6857}.area21-calendar[data-state=error] .area21-calendar-status,.area21-calendar[data-state=stale] .area21-calendar-status{color:#935f25}.area21-calendar-updated{font-size:11px;line-height:1.8;color:var(--area21-muted);margin:3px 0 20px}.area21-calendar-layout{display:grid;grid-template-columns:minmax(0,1.23fr) minmax(280px,.9fr);gap:28px;align-items:start}.area21-calendar-table{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:5px;margin:0}.area21-calendar-table th{font-size:12px;font-weight:500;color:#77816e;padding:6px 0 11px}.area21-calendar-table td{padding:0;vertical-align:top}.area21-calendar-day{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;width:100%;min-height:74px;padding:9px 1px;border:1px solid transparent;border-radius:8px;background:#f2f2ed;color:#74786f;line-height:1.3}.area21-calendar-day.is-all{background:#edf5e6;color:#365b26;border-color:#dce9cf}.area21-calendar-day.is-partial{background:#fbf1d8;color:#755619;border-color:#eee0b6}.area21-calendar-day.is-full{background:#f9e9e4;color:#9c4a37;border-color:#efd4ca}.area21-calendar-day.is-closed{background:#eceeea;color:#6a7067;border-color:#dfe2da}.area21-calendar-day.is-selected{outline:2px solid #8b743c;outline-offset:1px;box-shadow:0 2px 7px #6a53231a}.area21-calendar-day.is-today .area21-calendar-date{text-decoration:underline;text-underline-offset:5px;text-decoration-color:#8b743c}.area21-calendar-day:not(:disabled):hover{filter:brightness(.97);border-color:#9e9f81}.area21-calendar-date{font-size:19px;font-weight:600}.area21-calendar-count{font-size:10px;white-space:nowrap}.area21-calendar-legend{list-style:none;display:flex;flex-wrap:wrap;gap:10px 17px;margin:19px 0 0!important;padding:0;font-size:11px;color:#69745e;line-height:1.7}.area21-calendar-legend li{display:flex;align-items:center;gap:6px}.area21-calendar-dot{width:10px;height:10px;border-radius:3px;background:#eceeea}.is-all .area21-calendar-dot{background:#9ebf7c}.is-partial .area21-calendar-dot{background:#d7b65c}.is-full .area21-calendar-dot{background:#cc8a75}.is-closed .area21-calendar-dot{background:#a3aaa0}.area21-calendar-hint{font-size:11px;line-height:1.8;color:var(--area21-muted);margin:17px 0 0}.area21-calendar-details{border:1px solid #e3e5db;border-radius:9px;background:#fafbf7;padding:18px}.area21-calendar-selected{font-size:19px;font-weight:600;line-height:1.7;margin:0;color:#34583b}.area21-calendar-summary{font-size:12px;color:#7a755d;line-height:1.8;margin:3px 0 15px}.area21-calendar-room-list{list-style:none;padding:0;margin:0!important}.area21-calendar-room{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 0;border-top:1px solid #e4e7dd}.area21-calendar-room-main{min-width:0;display:flex;flex-direction:column;gap:3px}.area21-calendar-room-name{font-size:13px;font-weight:600;color:#45543c;text-decoration:none;overflow-wrap:anywhere}.area21-calendar-room-name:hover{text-decoration:underline}.area21-calendar-room-price{font-size:10px;color:#86816e;line-height:1.6}.area21-calendar-room-status{font-size:10px;line-height:1.5;padding:4px 8px;border-radius:4px;background:#eceee8;color:#697361;white-space:nowrap}.is-available .area21-calendar-room-status{background:#e7f0dc;color:#3d662d}.is-booked .area21-calendar-room-status{background:#f3e4df;color:#9a523d}.is-closed .area21-calendar-room-status{background:#e7e9e4;color:#72776c}.area21-calendar-contact{font-size:12px;line-height:1.9;color:var(--area21-muted);text-align:center;margin-top:20px}.area21-calendar-contact a{color:#75623a}.area21-room-page-photo{margin-block:25px}.area21-room-page-photo img{display:block;width:100%;max-width:100%;height:auto;border-radius:8px}.area21-page-content .wp-block-button__link{background:#806a38;color:#fff;border-color:#806a38;border-radius:3px;font-size:14px;padding:13px 24px}.area21-page-content .is-style-outline .wp-block-button__link{background:transparent;color:#66552e}
@media(max-width:900px){.area21-calendar{padding:20px}.area21-calendar-layout{gap:18px;grid-template-columns:minmax(0,1fr) minmax(260px,.9fr)}.area21-calendar-navigation{gap:12px}.area21-calendar-month{font-size:21px;min-width:190px}.area21-calendar-day{min-height:64px}.area21-calendar-table{border-spacing:3px}}
@media(max-width:700px){.area21-calendar{padding:16px 11px;border-radius:8px}.area21-calendar-toolbar{flex-wrap:wrap;justify-content:center;gap:12px}.area21-calendar-navigation{justify-content:space-between;width:100%;gap:6px}.area21-calendar-month{font-size:22px;min-width:0}.area21-calendar-refresh{padding:8px 15px}.area21-calendar-layout{grid-template-columns:1fr;gap:22px}.area21-calendar-status,.area21-calendar-updated{text-align:center}.area21-calendar-day{min-height:64px;gap:6px;border-radius:5px}.area21-calendar-date{font-size:17px}.area21-calendar-count{font-size:9px}.area21-calendar-table th{font-size:11px}.area21-calendar-details{padding:17px}.area21-calendar-room-name{font-size:14px}.area21-calendar-room-price,.area21-calendar-room-status{font-size:11px}.area21-calendar-legend{gap:9px 14px;font-size:10px}.area21-calendar-hint{text-align:center}}
