:root{--sand-50: #fdf8f0;--sand-100: #f5e6d0;--sand-200: #e8cd9e;--sand-300: #d4a96a;--sand-400: #c08a3e;--sand-500: #a06e2e;--sand-600: #7d5523;--clay-50: #fdf2ee;--clay-100: #f8d5c8;--clay-200: #f0aa94;--clay-300: #e67a5e;--clay-400: #d45636;--clay-500: #b44124;--clay-600: #8a311a;--sky-50: #eff6ff;--sky-100: #dbeafe;--sky-200: #bfdbfe;--sky-500: #3b82f6;--sky-600: #2563eb;--sage-50: #f4f7f2;--sage-100: #dce8d4;--sage-200: #b8d0a8;--sage-500: #6b8f54;--sage-600: #52703e;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--shadow-sm: 0 1px 2px rgba(0,0,0,.05);--shadow: 0 1px 3px rgba(0,0,0,.1), 0 1px 2px rgba(0,0,0,.06);--shadow-md: 0 4px 6px rgba(0,0,0,.07), 0 2px 4px rgba(0,0,0,.06);--shadow-lg: 0 10px 15px rgba(0,0,0,.1), 0 4px 6px rgba(0,0,0,.05);--shadow-xl: 0 20px 25px rgba(0,0,0,.1), 0 10px 10px rgba(0,0,0,.04);--radius: 8px;--radius-lg: 12px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;color:var(--gray-800);background:var(--sand-50);line-height:1.6}a{color:var(--clay-500);text-decoration:none;transition:color .15s}a:hover{color:var(--clay-600);text-decoration:underline}img{max-width:100%;height:auto}nav{background:#fff;border-bottom:1px solid var(--sand-100);padding:0 24px;height:56px;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:50;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffe6}nav>a:first-child{font-size:1.25rem;font-weight:700;color:var(--clay-500);letter-spacing:-.02em}nav>a:first-child:hover{text-decoration:none}nav>div{display:flex;align-items:center;gap:4px}nav a{padding:8px 14px;border-radius:var(--radius);font-size:.875rem;font-weight:500;color:var(--gray-600);transition:all .15s}nav a:hover{background:var(--sand-100);color:var(--clay-500);text-decoration:none}main{max-width:1024px;margin:0 auto;padding:40px 24px 80px}section{margin-bottom:40px}h1{font-size:2.5rem;font-weight:800;letter-spacing:-.03em;color:var(--gray-900);margin-bottom:8px;line-height:1.2}h2{font-size:1.5rem;font-weight:700;letter-spacing:-.02em;color:var(--gray-800);margin-top:32px;margin-bottom:12px;line-height:1.3}h3{font-size:1.125rem;font-weight:600;color:var(--gray-700);margin-top:24px;margin-bottom:8px}p{margin-bottom:12px;color:var(--gray-600)}main>div>section:first-child{text-align:center;padding:48px 0 32px}main>div>section:first-child h1{font-size:3rem;background:linear-gradient(135deg,var(--clay-400),var(--sand-400));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:16px}main>div>section:first-child p{font-size:1.125rem;max-width:600px;margin:0 auto 12px}hr{border:none;border-top:1px solid var(--sand-100);margin:32px 0}button,.btn,input[type=submit]{display:inline-flex;align-items:center;justify-content:center;padding:10px 20px;font-size:.875rem;font-weight:600;font-family:inherit;line-height:1;border:none;border-radius:var(--radius);cursor:pointer;transition:all .15s;background:var(--clay-400);color:#fff}button:hover{background:var(--clay-500);transform:translateY(-1px);box-shadow:var(--shadow-md)}button:active{transform:translateY(0)}button:disabled{opacity:.5;cursor:not-allowed}button[type=button]{background:var(--gray-100);color:var(--gray-700)}button[type=button]:hover{background:var(--gray-200)}.btn-ghost{background:transparent;color:var(--clay-500)}.btn-ghost:hover{background:var(--clay-50)}.btn-sm{padding:6px 12px;font-size:.8125rem}.btn-danger{background:#dc2626}.btn-danger:hover{background:#b91c1c}form{display:flex;flex-direction:column;gap:12px;max-width:480px}input,textarea,select{padding:10px 14px;font-size:.9375rem;font-family:inherit;border:1px solid var(--gray-200);border-radius:var(--radius);background:#fff;color:var(--gray-800);transition:border-color .15s,box-shadow .15s;outline:none;width:100%}input:focus,textarea:focus,select:focus{border-color:var(--clay-300);box-shadow:0 0 0 3px #d456361a}label{font-size:.875rem;font-weight:500;color:var(--gray-700);display:flex;flex-direction:column;gap:4px}textarea{resize:vertical;min-height:80px}.card{background:#fff;border:1px solid var(--sand-100);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow-sm);transition:box-shadow .2s}.card:hover{box-shadow:var(--shadow-md)}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.stat-card{background:#fff;border:1px solid var(--sand-100);border-radius:var(--radius-lg);padding:20px;text-align:center;box-shadow:var(--shadow-sm)}.stat-card .stat-value{font-size:2rem;font-weight:800;color:var(--clay-400);line-height:1}.stat-card .stat-label{font-size:.8125rem;color:var(--gray-500);margin-top:4px;text-transform:capitalize}table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--sand-100);border-radius:var(--radius-lg);overflow:hidden;font-size:.875rem}thead{background:var(--sand-50)}th{padding:12px 16px;text-align:left;font-weight:600;font-size:.8125rem;text-transform:uppercase;letter-spacing:.04em;color:var(--gray-500);border-bottom:1px solid var(--sand-100)}td{padding:12px 16px;border-bottom:1px solid var(--sand-50);color:var(--gray-700)}tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--sand-50)}ul,ol{padding-left:20px;margin-bottom:12px}li{margin-bottom:6px;color:var(--gray-600)}.alert{padding:12px 16px;border-radius:var(--radius);font-size:.875rem;font-weight:500;margin-bottom:16px}.alert-info{background:var(--sky-50);color:var(--sky-600);border:1px solid var(--sky-200)}.alert-warning{background:#fff3cd;color:#856404;border:1px solid #ffc107}.alert-error{background:#fee2e2;color:#dc2626;border:1px solid #fecaca}.tabs{display:flex;gap:4px;margin-bottom:24px;flex-wrap:wrap}.tabs button{background:transparent;color:var(--gray-500);padding:8px 16px;font-size:.875rem;border-radius:var(--radius);font-weight:500}.tabs button:hover{background:var(--sand-100);color:var(--clay-500);transform:none;box-shadow:none}.tabs button.active{background:var(--clay-400);color:#fff}.tabs button.active:hover{background:var(--clay-500)}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.gallery-item{aspect-ratio:4/3;background:var(--sand-100);border-radius:var(--radius-lg);display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;border:1px solid var(--sand-200);color:var(--gray-400);font-size:.875rem}.gallery-item:hover{border-color:var(--clay-300);box-shadow:var(--shadow-md);transform:translateY(-2px)}.gallery-icon{font-size:2.5rem;margin-bottom:8px}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:1000;cursor:pointer;animation:fadeIn .2s}.lightbox-inner{max-width:90vw;max-height:90vh;text-align:center;color:#fff}.lightbox-placeholder{width:480px;height:360px;background:var(--gray-700);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center}.lightbox-placeholder span{font-size:4rem}.lightbox-caption{margin-top:12px;font-size:1.125rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.guidebook-section{background:#fff;border:1px solid var(--sand-100);border-radius:var(--radius-lg);padding:24px;margin-bottom:16px}.guidebook-section h3{margin-top:0;color:var(--clay-500)}.guidebook-section ul,.guidebook-section ol{margin-bottom:0}.badge{display:inline-block;padding:2px 10px;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.badge-new,.badge-pending{background:var(--sky-50);color:var(--sky-600)}.badge-approved,.badge-confirmed{background:#dcfce7;color:#166534}.badge-declined,.badge-cancelled{background:#fee2e2;color:#991b1b}.badge-checked_in{background:var(--sage-100);color:var(--sage-600)}.badge-checked_out{background:var(--gray-100);color:var(--gray-500)}code{background:var(--gray-100);padding:2px 6px;border-radius:4px;font-size:.8125rem;color:var(--clay-500)}pre{background:var(--gray-800);color:var(--sand-100);padding:16px;border-radius:var(--radius);overflow-x:auto;font-size:.8125rem;line-height:1.5;margin-bottom:16px}blockquote{border-left:3px solid var(--clay-300);padding-left:16px;margin:16px 0;color:var(--gray-600)}@media(max-width:640px){main{padding:24px 16px 60px}h1{font-size:1.75rem}main>div>section:first-child h1{font-size:2rem}nav{padding:0 12px}nav a{padding:6px 10px;font-size:.8125rem}.card-grid{grid-template-columns:1fr}table{font-size:.8125rem}th,td{padding:8px 10px}}.availability-calendar{max-width:400px;margin:0 auto;background:#fff;border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow-md)}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;font-weight:600;font-size:1.05rem}.calendar-header button{background:none;border:1px solid var(--gray-200);border-radius:var(--radius);padding:4px 12px;cursor:pointer;font-size:1rem;color:var(--gray-600);transition:all .15s}.calendar-header button:hover{background:var(--gray-100);color:var(--gray-800)}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.calendar-day-header{text-align:center;font-size:.75rem;font-weight:600;color:var(--gray-500);padding:6px 0;text-transform:uppercase}.calendar-day{text-align:center;padding:8px 0;font-size:.875rem;border-radius:var(--radius);transition:background .15s}.calendar-day.available{color:var(--gray-700)}.calendar-day.booked{background:var(--clay-100);color:var(--clay-600);font-weight:500}.calendar-day.today{outline:2px solid var(--sage-500);outline-offset:-2px}.calendar-day.empty{background:none}.calendar-legend{display:flex;justify-content:center;gap:20px;margin-top:14px;font-size:.8125rem;color:var(--gray-500)}.legend-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:4px;vertical-align:middle}.legend-dot.available{background:var(--gray-200);border:1px solid var(--gray-300)}.legend-dot.booked{background:var(--clay-200)}
