:root{--color-primary-50:#eef5f3;--color-primary-100:#cfe3df;--color-primary-200:#a6cbc4;--color-primary-300:#74ada3;--color-primary-400:#4a9186;--color-primary-500:#2f7c71;--color-primary-600:#26665d;--color-primary-700:#1d5049;--color-primary-800:#163d38;--color-primary-900:#0f2b27;--color-primary-rgb:47, 124, 113;--focus-ring:0 0 0 3px rgba(var(--color-primary-rgb), .18);--color-accent-50:#fdf6ef;--color-accent-100:#f8e8d6;--color-accent-200:#eecfae;--color-accent-300:#ddac7e;--color-accent-400:#cb9160;--color-accent-500:#b87a4a;--color-accent-600:#9c6339;--color-neutral-0:#fff;--color-neutral-50:#faf8f5;--color-neutral-100:#f4f1ec;--color-neutral-200:#e9e4dc;--color-neutral-300:#dad3c8;--color-neutral-400:#b0a99d;--color-neutral-500:#8b847a;--color-neutral-600:#6b655c;--color-neutral-700:#4d4842;--color-neutral-800:#35312c;--color-neutral-900:#211e1a;--color-success:#40c057;--color-success-light:#d3f9d8;--color-error:#e03131;--color-error-light:#ffe0e0;--color-warning:#f59f00;--color-warning-light:#fff3bf;--color-info:#339af0;--color-info-light:#d0ebff;--color-booked:#2b8a3e;--color-booked-light:#e3f6e9;--color-blocked:#c92a2a;--color-blocked-light:#ffe3e3;--color-available:#adb5bd;--color-available-light:#fff;--color-cancelled:#e03131;--color-cancelled-light:#ffe0e0;--font-heading:"Fraunces", Georgia, "Times New Roman", serif;--font-body:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--weight-light:300;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--line-height-tight:1.25;--line-height-normal:1.5;--line-height-relaxed:1.75;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--border-light:1px solid var(--color-neutral-200);--border-medium:1px solid var(--color-neutral-300);--shadow-xs:0 1px 2px #0000000a;--shadow-sm:0 2px 8px #0000000f;--shadow-md:0 4px 16px #00000014;--shadow-lg:0 8px 32px #0000001a;--shadow-xl:0 16px 48px #0000001f;--transition-fast:.15s ease;--transition-normal:.25s ease;--transition-slow:.4s ease;--z-dropdown:100;--z-modal-backdrop:200;--z-modal:300;--z-toast:400}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-body);font-weight:var(--weight-regular);line-height:var(--line-height-normal);color:var(--color-neutral-800);background-color:var(--color-neutral-50);min-height:100vh}#root{min-height:100vh}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:var(--weight-semibold);line-height:var(--line-height-tight);color:var(--color-neutral-900);font-optical-sizing:auto;font-variation-settings:"SOFT" 0, "WONK" 0;letter-spacing:-.01em}h1{font-size:var(--text-4xl)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}p{line-height:var(--line-height-relaxed);color:var(--color-neutral-600)}a{color:var(--color-primary-600);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--color-primary-800)}img{max-width:100%;display:block}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-medium);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;border:none;line-height:1;text-decoration:none;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:focus-visible{outline:2px solid var(--color-primary-700);outline-offset:2px}.btn-primary{background:var(--color-primary-600);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-700)}.btn-primary:active:not(:disabled){background:var(--color-primary-800)}.btn-secondary{background:var(--color-neutral-0);color:var(--color-neutral-700);border:var(--border-medium)}.btn-secondary:hover:not(:disabled){background:var(--color-neutral-50);border-color:var(--color-neutral-400)}.btn-danger{background:var(--color-error);color:#fff}.btn-danger:hover:not(:disabled){background:#c92a2a}.btn-ghost{color:var(--color-neutral-600);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--color-neutral-100);color:var(--color-neutral-800)}.btn-sm{padding:var(--space-2) var(--space-4);font-size:var(--text-xs)}.btn-lg{padding:var(--space-4) var(--space-8);font-size:var(--text-base)}.form-group{gap:var(--space-2);flex-direction:column;display:flex}.form-label{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-neutral-700)}.form-input,.form-select{padding:var(--space-3) var(--space-4);font-family:var(--font-body);font-size:var(--text-base);color:var(--color-neutral-800);background:var(--color-neutral-0);border:var(--border-medium);border-radius:var(--radius-md);transition:all var(--transition-fast);outline:none;width:100%}.form-input:focus,.form-select:focus{border-color:var(--color-primary-400);box-shadow:var(--focus-ring)}.form-input::placeholder{color:var(--color-neutral-400)}.form-error{font-size:var(--text-xs);color:var(--color-error)}.card{background:var(--color-neutral-0);border:var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.card-padded{padding:var(--space-6)}.card-hover:hover{box-shadow:var(--shadow-md);transition:all var(--transition-normal);transform:translateY(-2px)}.badge{padding:var(--space-1) var(--space-3);font-size:var(--text-xs);font-weight:var(--weight-medium);border-radius:var(--radius-full);align-items:center;line-height:1.4;display:inline-flex}.badge-booked{background:var(--color-booked-light);color:var(--color-booked)}.badge-blocked{background:var(--color-blocked-light);color:var(--color-neutral-700)}.badge-available{background:var(--color-available-light);color:#2b8a3e}.badge-cancelled{background:var(--color-cancelled-light);color:var(--color-cancelled)}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:var(--z-modal-backdrop);padding:var(--space-4);animation:fadeIn var(--transition-fast) ease;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--color-neutral-0);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);width:100%;max-width:480px;max-height:90vh;z-index:var(--z-modal);animation:slideUp var(--transition-normal) ease;overflow-y:auto}.modal-header{padding:var(--space-6);border-bottom:var(--border-light);justify-content:space-between;align-items:center;display:flex}.modal-header h3{font-size:var(--text-lg)}.modal-body{padding:var(--space-6)}.modal-footer{justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:var(--border-light);background:var(--color-neutral-50);display:flex}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.animate-fade-in{animation:fadeIn var(--transition-normal) ease}.animate-slide-up{animation:slideUp var(--transition-normal) ease}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.text-center{text-align:center}.text-right{text-align:right}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.toast-container{top:var(--space-6);right:var(--space-6);z-index:var(--z-toast);gap:var(--space-3);flex-direction:column;display:flex;position:fixed}.toast{align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);background:var(--color-neutral-0);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);border-left:4px solid var(--color-primary-500);animation:slideInRight var(--transition-normal) ease;min-width:300px;display:flex}.toast-success{border-left-color:var(--color-success)}.toast-error{border-left-color:var(--color-error)}.toast-info{border-left-color:var(--color-info)}@media (width<=768px){h1{font-size:var(--text-3xl)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}.btn-lg{padding:var(--space-3) var(--space-6)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-property:color,background-color,border-color,box-shadow,opacity!important;transition-duration:.15s!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.whatsapp-float{z-index:var(--z-dropdown);border-radius:var(--radius-full);color:#fff;width:3.5rem;height:3.5rem;box-shadow:var(--shadow-lg);transition:background-color var(--transition-fast), box-shadow var(--transition-fast);background:#25d366;place-items:center;display:grid;position:fixed;bottom:clamp(1rem,3vw,1.5rem);right:clamp(1rem,3vw,1.5rem)}.whatsapp-float:hover{color:#fff;box-shadow:var(--shadow-xl);background:#1da851}.whatsapp-float:focus-visible{outline:2px solid var(--color-primary-700);outline-offset:2px}.home{--home-display:clamp(3rem, 7.5vw, 5rem);--home-h2:clamp(1.75rem, 3.4vw, 2.5rem);--home-lead:clamp(1.25rem, 1.9vw, 1.5rem);--home-gutter:clamp(1.25rem, 5vw, 2.5rem);--home-section-y:clamp(4rem, 9vw, 7rem);--home-shell:86rem;background:var(--color-neutral-50);color:var(--color-neutral-700)}.home-shell{width:100%;max-width:var(--home-shell);padding-inline:var(--home-gutter);margin:0 auto}.home-measure-wide>*{max-width:60rem}.home-skip{z-index:var(--z-toast);position:absolute;left:-9999px}.home-skip:focus{left:var(--home-gutter);top:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-neutral-0);border-radius:var(--radius-md);box-shadow:var(--shadow-md)}[data-reveal]{opacity:0;transition:opacity .38s}[data-reveal].is-visible{opacity:1}@media (prefers-reduced-motion:reduce){[data-reveal]{opacity:1}}.home-section{padding-block:var(--home-section-y)}.home-eyebrow{align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:var(--weight-medium);letter-spacing:.09em;text-transform:uppercase;color:var(--color-primary-600);margin-bottom:var(--space-3);display:inline-flex}.home-eyebrow svg{color:var(--color-primary-500);flex-shrink:0}.home-h2{font-size:var(--home-h2);color:var(--color-neutral-900);margin-bottom:var(--space-4);max-width:20ch}.home-section-lead,:where(.home-section) p{font-size:var(--text-lg);color:var(--color-neutral-600)}:where(.home-section) p+p{margin-top:var(--space-4)}.home-topbar{z-index:var(--z-dropdown);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--color-neutral-200);background:#faf8f5e0;position:sticky;top:0}.home-topbar-inner{justify-content:space-between;align-items:center;gap:var(--space-4);padding-block:var(--space-3);display:flex}.home-wordmark{align-items:center;gap:var(--space-3);display:flex}.home-mark{border-radius:var(--radius-md);background:var(--color-primary-700);width:2.75rem;height:2.75rem;color:var(--color-neutral-0);font-family:var(--font-heading);font-size:var(--text-lg);font-weight:var(--weight-semibold);font-variation-settings:"SOFT" 0, "WONK" 0;letter-spacing:.02em;flex-shrink:0;place-items:center;display:grid}.home-wordmark-text{flex-direction:column;line-height:1.2;display:flex}.home-wordmark-name{font-family:var(--font-heading);font-size:var(--text-xl);font-weight:var(--weight-semibold);color:var(--color-neutral-900);white-space:nowrap}.home-wordmark-role{font-size:var(--text-sm);letter-spacing:.06em;text-transform:uppercase;color:var(--color-neutral-500)}.home-topbar-actions{align-items:center;gap:var(--space-5);display:flex}.home-topbar-phone{align-items:center;gap:var(--space-2);font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-neutral-700);display:inline-flex}.home-topbar-phone:hover{color:var(--color-primary-700)}.home-topbar .btn{font-size:var(--text-base)}.home-hero{background:radial-gradient(60rem 40rem at 82% 8%, var(--color-primary-50), transparent 68%), radial-gradient(46rem 34rem at 4% 92%, var(--color-accent-50), transparent 62%);padding-block:clamp(1.25rem, 3.5vw, 2.5rem) var(--home-section-y)}.home-hero-inner{grid-template-columns:1.15fr .85fr;align-items:center;gap:clamp(2rem,5vw,4rem);display:grid}.home-hero-title{font-size:var(--home-display);color:var(--color-neutral-900);margin-bottom:var(--space-5);line-height:1.02}.home-hero-title-role{margin-top:var(--space-3);font-family:var(--font-body);font-size:clamp(1.125rem,1.8vw,1.375rem);font-weight:var(--weight-medium);letter-spacing:.02em;color:var(--color-primary-700);display:block}.home-hero-lead{font-size:var(--home-lead);line-height:var(--line-height-relaxed);color:var(--color-neutral-700);max-width:32ch}.home-hero-sub{margin-top:var(--space-2);font-size:var(--text-lg);color:var(--color-neutral-500)}.home-hero-trust{margin-top:var(--space-5);gap:var(--space-2);flex-direction:column;list-style:none;display:flex}.home-hero-trust li{align-items:center;gap:var(--space-3);font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-neutral-700);display:flex}.home-hero-trust svg{color:var(--color-primary-600);flex-shrink:0}.home-hero-how{margin-top:var(--space-5)}.home-hero-how-label{font-size:var(--text-sm);font-weight:var(--weight-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--color-neutral-500);margin-bottom:var(--space-2)}.home-hero-chips{gap:var(--space-2);flex-wrap:wrap;list-style:none;display:flex}.home-hero-chip{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--color-neutral-0);border:1px solid var(--color-neutral-300);border-radius:var(--radius-full);font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-neutral-700);display:inline-flex}.home-hero-chip svg{color:var(--color-primary-600)}.home-hero-actions{align-items:center;gap:var(--space-4) var(--space-5);margin-top:var(--space-8);flex-wrap:wrap;display:flex}.home-photo-wrap{width:fit-content;margin-inline:auto;position:relative}.home-float{z-index:1;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-neutral-0);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-neutral-800);white-space:nowrap;display:flex;position:absolute}.home-float svg{color:var(--color-primary-600);flex-shrink:0}.home-float-tl{top:var(--space-6);left:calc(-1 * var(--space-5))}.home-float-br{bottom:var(--space-8);right:calc(-1 * var(--space-5))}.home-float-title{font-weight:var(--weight-semibold);color:var(--color-neutral-900);display:block}.home-float-sub{font-size:var(--text-xs);color:var(--color-primary-700);margin-top:2px;display:block}a.home-float{transition:border-color var(--transition-fast), box-shadow var(--transition-fast)}a.home-float:hover{border-color:var(--color-primary-300);box-shadow:var(--shadow-xl)}.home-float-room{bottom:var(--space-8);right:calc(-1 * var(--space-4))}.home-portrait{border-radius:var(--radius-lg);box-shadow:var(--shadow-md);position:relative;overflow:hidden}.home-portrait img{object-fit:cover;width:100%;height:100%}.home-portrait-tall{aspect-ratio:4/5;max-height:34rem;margin-inline:auto}.home-portrait-tall img{object-position:center 46%}.home-portrait-square{aspect-ratio:4/5;max-width:22rem}.home-bridge{background:var(--color-primary-50);border-block:1px solid var(--color-primary-100);text-align:center}.home-bridge-inner{grid-template-columns:minmax(6rem,9rem) minmax(0,42rem) minmax(6rem,9rem);justify-content:center;align-items:center;gap:clamp(1.5rem,4vw,3.5rem);display:grid}.home-bridge-copy>*{max-width:42rem;margin-inline:auto}.home-bridge-art svg{width:100%;height:auto}@media (width>=901px){.home-bridge-copy .home-bridge-mark{display:none}}@media (width<=900px){.home-bridge-inner{grid-template-columns:minmax(0,42rem)}.home-bridge-art{display:none}}.home-bridge-mark{width:3rem;height:3rem;margin-bottom:var(--space-6);border-radius:var(--radius-full);background:var(--color-neutral-0);border:1px solid var(--color-primary-100);color:var(--color-primary-600);place-items:center;display:grid}.home-bridge-text{font-family:var(--font-heading);font-size:clamp(1.375rem,2.6vw,1.875rem);line-height:1.45;font-weight:var(--weight-regular);color:var(--color-neutral-800)}.home-bridge-text+.home-bridge-text{margin-top:var(--space-5);color:var(--color-neutral-600)}.home-band{background:var(--color-primary-900);color:var(--color-primary-100);padding-block:clamp(3rem,7vw,5rem)}.home-band-title{font-size:var(--home-h2);color:var(--color-neutral-0);margin-bottom:var(--space-8);max-width:22ch}.home-creds{gap:var(--space-6) var(--space-8);grid-template-columns:repeat(auto-fit,minmax(min(11rem,100%),1fr));list-style:none;display:grid}.home-cred{border-top:1px solid var(--color-primary-700);padding-top:var(--space-5)}.home-cred-icon{color:var(--color-primary-300);margin-bottom:var(--space-3)}.home-cred-value{font-family:var(--font-heading);font-size:clamp(1.6rem,3vw,2.1rem);font-weight:var(--weight-semibold);font-variation-settings:"SOFT" 0, "WONK" 0;letter-spacing:-.01em;color:var(--color-neutral-0);line-height:1.1}.home-cred-detail{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--color-primary-200)}.home-services{gap:var(--space-5);margin-top:var(--space-8);grid-template-columns:repeat(auto-fill,minmax(min(24rem,100%),1fr));list-style:none;display:grid}.home-service{background:var(--color-neutral-0);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);grid-template-columns:8.5rem 1fr;display:grid;overflow:hidden}.home-service:hover{border-color:var(--color-primary-300);box-shadow:var(--shadow-md)}.home-service-media{height:100%}.home-service-media img{object-fit:cover;width:100%;height:100%}.home-service-content{padding:var(--space-5) var(--space-6)}.home-service-title{font-size:var(--text-lg);margin-bottom:var(--space-2);color:var(--color-neutral-900)}.home-service-body{font-size:var(--text-sm);line-height:var(--line-height-relaxed);color:var(--color-neutral-600)}.home-about{background:var(--color-primary-50);border-block:1px solid var(--color-primary-100)}.home-about-inner{grid-template-columns:20rem 1fr;align-items:start;gap:clamp(2rem,5vw,4rem);display:grid}.home-about-copy p{max-width:62ch}.home-room{max-width:22rem;position:relative}.home-room:before{content:"";top:var(--space-4);left:calc(-1 * var(--space-4));border-radius:var(--radius-lg);background:var(--color-accent-100);width:100%;height:100%;position:absolute}.home-room .home-portrait{position:relative}.home-room-caption{left:var(--space-3);top:var(--space-3);z-index:1;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--color-neutral-700);box-shadow:var(--shadow-xs);background:#ffffffeb;display:inline-flex;position:absolute}.home-space-features{gap:var(--space-4) var(--space-6);margin-top:var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr));list-style:none;display:grid}.home-space-features li{align-items:flex-start;gap:var(--space-3);font-size:var(--text-base);color:var(--color-neutral-700);display:flex}.home-space-features svg{color:var(--color-primary-600);flex-shrink:0;margin-top:3px}.home-space-quote{margin-top:var(--space-6);padding-left:var(--space-4);border-left:3px solid var(--color-accent-400);font-family:var(--font-heading);font-size:var(--text-xl);color:var(--color-neutral-800)}.home-steps{gap:var(--space-8) var(--space-6);margin-top:var(--space-8);grid-template-columns:repeat(3,1fr);list-style:none;display:grid}.home-step{border-top:1px solid var(--color-neutral-300);padding-top:var(--space-5)}.home-step-top{justify-content:space-between;align-items:center;display:flex}.home-step-num{font-family:var(--font-heading);font-size:var(--text-3xl);font-weight:var(--weight-semibold);font-variation-settings:"SOFT" 0, "WONK" 0;color:var(--color-primary-200);line-height:1}.home-step-icon{color:var(--color-primary-600)}.home-step-title{font-size:var(--text-lg);margin-top:var(--space-4);color:var(--color-neutral-900)}.home-step-body{margin-top:var(--space-2);font-size:var(--text-base);color:var(--color-neutral-600)}.home-practical{background:var(--color-primary-50);border-block:1px solid var(--color-primary-100)}.home-first{background:var(--color-neutral-0)}.home-details{gap:var(--space-6) var(--space-8);margin-top:var(--space-8);grid-template-columns:repeat(auto-fit,minmax(min(17rem,100%),1fr));display:grid}.home-detail{column-gap:var(--space-4);row-gap:var(--space-1);padding-top:var(--space-4);border-top:1px solid var(--color-neutral-300);grid-template-columns:auto 1fr;display:grid}.home-detail-icon{color:var(--color-primary-600);grid-row:span 2;margin-top:2px}.home-detail-label{font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--color-neutral-500)}.home-detail-value{font-size:var(--text-base);color:var(--color-neutral-800)}.home-detail-line{display:block}.home-map{margin-top:var(--space-10);border:1px solid var(--color-neutral-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.home-map iframe{border:0;width:100%;height:clamp(16rem,40vw,22rem);display:block}.home-faq-list{margin-top:var(--space-8);border-top:1px solid var(--color-neutral-300)}.home-faq-item{border-bottom:1px solid var(--color-neutral-300)}.home-faq-q{justify-content:space-between;align-items:center;gap:var(--space-4);padding-block:var(--space-5);font-family:var(--font-heading);font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--color-neutral-900);cursor:pointer;transition:color var(--transition-fast);list-style:none;display:flex}.home-faq-q::-webkit-details-marker{display:none}.home-faq-q:hover{color:var(--color-primary-700)}.home-faq-icon{color:var(--color-primary-600);flex-shrink:0}.home-faq-icon-open,.home-faq-item[open] .home-faq-icon-closed{display:none}.home-faq-item[open] .home-faq-icon-open{display:block}.home-faq-a{padding-bottom:var(--space-5);max-width:60ch;font-size:var(--text-base);color:var(--color-neutral-600)}.home-cta .home-band-title{margin-bottom:var(--space-6)}.home-cta-lead{font-size:var(--home-lead);line-height:var(--line-height-relaxed);color:var(--color-primary-200);max-width:46ch}.home-cta-actions{gap:var(--space-4);margin-top:var(--space-8);flex-wrap:wrap;display:flex}.home-cta .btn-primary{background:var(--color-primary-500)}.home-cta .btn-primary:hover{background:var(--color-primary-600)}.home-btn-whatsapp{color:var(--color-neutral-0);border:1px solid var(--color-primary-400);background:0 0}.home-btn-whatsapp:hover{background:var(--color-primary-800);border-color:var(--color-primary-300)}.home-footer{background:var(--color-primary-900);border-top:1px solid var(--color-primary-800);padding-block:var(--space-8)}.home-footer-inner{justify-content:space-between;gap:var(--space-6);flex-wrap:wrap;display:flex}.home-footer-name{font-family:var(--font-heading);font-size:var(--text-lg);color:var(--color-neutral-0)}.home-footer-line{font-size:var(--text-sm);color:var(--color-primary-200)}.home-footer-line a{color:var(--color-primary-200);white-space:nowrap}.home-footer-line a:hover{color:var(--color-neutral-0)}.home-footer-copy{font-size:var(--text-xs);color:var(--color-primary-300);align-self:flex-end}@media (width<=900px){.home-hero-inner,.home-about-inner{grid-template-columns:1fr}.home-hero-media{order:-1}.home-portrait-tall{aspect-ratio:1;max-width:18rem;max-height:none}.home-portrait-square{max-width:16rem}.home-room{width:fit-content;margin-inline:auto}}@media (width<=700px){.home-steps{gap:var(--space-5);grid-template-columns:1fr}}@media (width<=560px){.home-topbar-inner,.home-wordmark{gap:var(--space-2)}.home-mark{width:2.25rem;height:2.25rem;font-size:var(--text-base)}.home-wordmark-name{font-size:var(--text-lg)}.home-topbar-actions{gap:var(--space-1)}.home-topbar-phone{justify-content:center;width:2.5rem;height:2.5rem}.home-topbar .btn{min-height:2.5rem;padding:var(--space-2) var(--space-3);font-size:var(--text-sm)}.home-topbar-phone span,.home-wordmark-role{display:none}.home-h2,.home-band-title{max-width:none}.home-hero-actions .btn,.home-cta-actions .btn{width:100%}.home-creds{grid-template-columns:repeat(2,1fr)}.home-service{grid-template-columns:6.5rem 1fr}.home-service-content{padding:var(--space-4) var(--space-5)}.home-space-features{grid-template-columns:1fr}.home-float{padding:var(--space-2) var(--space-3);font-size:var(--text-xs);gap:var(--space-2)}.home-footer-inner{flex-direction:column}.home-footer{padding-bottom:calc(var(--space-8) + 4rem)}.home-footer-copy{align-self:flex-start}}@media (width<=359px){.home-wordmark-name{display:none}}.mini-calendar{-webkit-user-select:none;user-select:none}.mini-calendar-header{margin-bottom:var(--space-4);justify-content:space-between;align-items:center;display:flex}.mini-calendar-month{font-family:var(--font-heading);font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--color-neutral-800)}.mini-calendar-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.mini-calendar-day-name{text-align:center;font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--color-neutral-400);text-transform:uppercase;letter-spacing:.05em;padding:var(--space-2) 0}.mini-calendar-cell{aspect-ratio:1;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--color-neutral-900);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.mini-calendar-cell:hover:not(.disabled):not(.empty){background:var(--color-primary-50);color:var(--color-primary-600)}.mini-calendar-cell.selected{background:linear-gradient(135deg, var(--color-primary-500), var(--color-primary-600));color:#fff;font-weight:var(--weight-semibold);box-shadow:0 2px 8px rgba(var(--color-primary-rgb), .25)}.mini-calendar-cell.today:not(.selected){border:2px solid var(--color-primary-400);color:var(--color-primary-600);font-weight:var(--weight-semibold)}.mini-calendar-cell.disabled{color:var(--color-neutral-300);cursor:not-allowed}.mini-calendar-cell.empty{cursor:default}.admin-calendar{width:100%}.admin-calendar-nav{margin-bottom:var(--space-6);justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.admin-calendar-nav-left{align-items:center;gap:var(--space-2);display:flex}.admin-calendar-title{font-size:var(--text-xl);font-weight:var(--weight-semibold);color:var(--color-neutral-800)}.admin-calendar-empty{text-align:center;padding:var(--space-12) var(--space-6);color:var(--color-neutral-500)}.day-view{gap:var(--space-3);flex-direction:column;display:flex}.day-view-slot{align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);border:1px solid #0000;display:flex}.day-view-slot:hover{transform:translate(4px)}.day-view-slot-available{background:var(--color-available-light);border-color:var(--color-neutral-300)}.day-view-slot-available:hover{border-color:var(--color-primary-400)}.day-view-slot-booked{background:var(--color-booked-light);border-color:#2b8a3e4d}.day-view-slot-booked:hover{border-color:var(--color-booked)}.day-view-slot-blocked{background:var(--color-blocked-light);border-color:#c92a2a4d}.day-view-slot-blocked:hover{border-color:var(--color-blocked)}.day-view-slot-cancelled{background:var(--color-cancelled-light);border-color:var(--color-neutral-300);opacity:.7}.day-view-slot-time{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-neutral-700);font-variant-numeric:tabular-nums;min-width:110px}.day-view-slot-label{font-size:var(--text-base);color:var(--color-neutral-700);flex:1}.week-view{gap:var(--space-3);grid-template-columns:repeat(5,1fr);display:grid}.week-view-day{background:var(--color-neutral-0);border:var(--border-light);border-radius:var(--radius-md);overflow:hidden}.week-view-day-header{padding:var(--space-3) var(--space-4);background:var(--color-neutral-50);border-bottom:var(--border-light);justify-content:space-between;align-items:center;display:flex}.week-view-day-name{font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--color-neutral-500)}.week-view-day-num{font-size:var(--text-lg);font-weight:var(--weight-bold);color:var(--color-neutral-800)}.week-view-slots{padding:var(--space-2);flex-direction:column;gap:2px;display:flex}.week-view-no-slots{padding:var(--space-3);text-align:center;font-size:var(--text-xs);color:var(--color-neutral-400)}.week-view-slot{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);font-size:var(--text-xs);flex-direction:column;gap:2px;display:flex}.week-view-slot:hover{transform:scale(1.02)}.week-view-slot-available{background:var(--color-available-light);border:1px solid var(--color-neutral-300)}.week-view-slot-booked{background:var(--color-booked-light);border:1px solid #2b8a3e33}.week-view-slot-blocked{background:var(--color-blocked-light);border:1px solid #c92a2a33}.week-view-slot-time{font-weight:var(--weight-semibold);color:var(--color-neutral-600);font-variant-numeric:tabular-nums}.week-view-slot-label{color:var(--color-neutral-700);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.month-view-header{margin-bottom:var(--space-2);grid-template-columns:repeat(7,1fr);display:grid}.month-view-day-name{text-align:center;font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--color-neutral-400);text-transform:uppercase;letter-spacing:.05em;padding:var(--space-2)}.month-view-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.month-view-cell{justify-content:center;align-items:center;gap:var(--space-1);padding:var(--space-3);border-radius:var(--radius-sm);min-height:64px;transition:all var(--transition-fast);background:var(--color-neutral-0);flex-direction:column;display:flex}.month-view-cell.working{cursor:pointer}.month-view-cell.working:hover{background:var(--color-primary-50)}.month-view-cell.today{border:2px solid var(--color-primary-400)}.month-view-cell.empty{background:0 0}.month-view-cell:not(.working):not(.empty){opacity:.4}.month-view-cell-day{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-neutral-700)}.month-view-cell-dots{gap:4px;display:flex}.month-view-dot{border-radius:50%;width:8px;height:8px;display:inline-block}.month-view-dot.booked{background:var(--color-booked)}.month-view-dot.blocked{background:var(--color-blocked)}.month-view-legend{gap:var(--space-6);margin-top:var(--space-4);padding-top:var(--space-4);border-top:var(--border-light);justify-content:center;display:flex}.month-view-legend-item{align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--color-neutral-500);display:flex}@media (width<=768px){.week-view{grid-template-columns:1fr}.week-view-day-header{gap:var(--space-2);flex-direction:row}.admin-calendar-nav{flex-direction:column;align-items:flex-start}.month-view-cell{min-height:48px;padding:var(--space-2)}}.timeslot-picker{animation:fadeIn var(--transition-normal) ease}.timeslot-group+.timeslot-group{margin-top:var(--space-6)}.timeslot-title{font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-neutral-500);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-4)}.timeslot-grid{gap:var(--space-3);grid-template-columns:repeat(2,1fr);display:grid}@media (width>=640px){.timeslot-grid{grid-template-columns:repeat(3,1fr)}}.timeslot-btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-4);background:var(--color-neutral-0);border:2px solid var(--color-neutral-200);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-neutral-700);display:flex}.timeslot-btn:hover{border-color:var(--color-primary-400);background:var(--color-primary-50);color:var(--color-primary-700)}.timeslot-btn-selected{border-color:var(--color-primary-500);background:var(--color-primary-50);color:var(--color-primary-700);box-shadow:var(--focus-ring)}.timeslot-dash{color:var(--color-neutral-400);font-size:var(--text-sm)}.timeslot-empty{text-align:center;padding:var(--space-10) var(--space-6);color:var(--color-neutral-500);animation:fadeIn var(--transition-normal) ease}.timeslot-empty-icon{margin-bottom:var(--space-3);opacity:.6;font-size:2.5rem}.timeslot-empty p{font-size:var(--text-base);color:var(--color-neutral-500);margin:0}.timeslot-empty-hint{font-size:var(--text-sm)!important;color:var(--color-neutral-400)!important;margin-top:var(--space-1)!important}@media (width<=480px){.timeslot-grid{grid-template-columns:1fr}}.booking-form{max-width:460px;margin:0 auto}.booking-form-summary{align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);background:linear-gradient(135deg, var(--color-primary-50), var(--color-accent-50));border-radius:var(--radius-md);margin-bottom:var(--space-6);border:1px solid var(--color-primary-100);display:flex}.booking-form-summary-icon{font-size:1.5rem}.booking-form-summary-date{font-weight:var(--weight-semibold);color:var(--color-neutral-800);font-size:var(--text-base);margin:0}.booking-form-summary-time{font-size:var(--text-sm);color:var(--color-primary-600);font-weight:var(--weight-medium);margin:var(--space-1) 0 0 0}.booking-form-fields{gap:var(--space-5);flex-direction:column;display:flex}.form-input-error{border-color:var(--color-error)!important}.form-input-error:focus{box-shadow:0 0 0 3px #e031311f!important}.booking-form-error-banner{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--color-error-light);color:var(--color-error);border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--weight-medium);display:flex}.booking-form-actions{justify-content:space-between;align-items:center;gap:var(--space-3);margin-top:var(--space-2);display:flex}.booking-page{min-height:100vh;padding:var(--space-6);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.booking-page-bg{z-index:0;background:linear-gradient(135deg, var(--color-neutral-50) 0%, var(--color-primary-50) 45%, var(--color-accent-50) 100%);position:fixed;inset:0}.booking-page-bg-circle{opacity:.15;border-radius:50%;position:absolute}.circle-1{background:var(--color-primary-300);width:600px;height:600px;animation:20s ease-in-out infinite float;top:-200px;right:-100px}.circle-2{background:var(--color-accent-300);width:400px;height:400px;animation:15s ease-in-out infinite reverse float;bottom:-100px;left:-100px}.circle-3{background:var(--color-primary-200);width:300px;height:300px;animation:25s ease-in-out infinite float;top:40%;left:60%}@keyframes float{0%,to{transform:translate(0)scale(1)}25%{transform:translate(20px,-30px)scale(1.05)}50%{transform:translate(-10px,20px)scale(.95)}75%{transform:translate(15px,10px)scale(1.02)}}.booking-page-container{z-index:1;width:100%;max-width:520px;position:relative}.booking-header{text-align:center;margin-bottom:var(--space-8)}.booking-header-avatar{width:110px;height:110px;margin:0 auto var(--space-4);border-radius:var(--radius-full);object-fit:cover;box-shadow:0 4px 16px rgba(var(--color-primary-rgb), .25);border:3px solid var(--color-primary-100)}.booking-header-title{font-size:var(--text-3xl);margin-bottom:var(--space-1);color:var(--color-neutral-900)}.booking-header-subtitle{font-size:var(--text-lg);color:var(--color-primary-600);font-weight:var(--weight-medium);margin:0}.booking-progress{margin-bottom:var(--space-6);justify-content:space-between;display:flex;position:relative}.booking-progress:before{content:"";background:var(--color-neutral-200);height:2px;position:absolute;top:14px;left:28px;right:28px}.booking-progress-step{align-items:center;gap:var(--space-2);z-index:1;flex-direction:column;display:flex;position:relative}.booking-progress-dot{width:30px;height:30px;font-size:var(--text-xs);font-weight:var(--weight-semibold);background:var(--color-neutral-200);color:var(--color-neutral-500);transition:all var(--transition-normal);border-radius:50%;justify-content:center;align-items:center;display:flex}.booking-progress-step.active .booking-progress-dot{background:var(--color-primary-500);color:#fff;box-shadow:0 2px 8px rgba(var(--color-primary-rgb), .25)}.booking-progress-step.current .booking-progress-dot{box-shadow:0 0 0 4px rgba(var(--color-primary-rgb), .18), 0 2px 8px rgba(var(--color-primary-rgb), .25)}.booking-progress-label{font-size:var(--text-xs);color:var(--color-neutral-400);font-weight:var(--weight-medium)}.booking-progress-step.active .booking-progress-label{color:var(--color-primary-600)}.booking-content{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffeb;min-height:400px}.booking-step-title{font-size:var(--text-2xl);margin-bottom:var(--space-2);text-align:center}.booking-step-desc{text-align:center;margin-bottom:var(--space-6);font-size:var(--text-base)}.booking-schedule-info{margin-top:var(--space-6);padding:var(--space-4);background:var(--color-neutral-50);border-radius:var(--radius-md);gap:var(--space-2);flex-direction:column;display:flex}.booking-schedule-info p{font-size:var(--text-sm);color:var(--color-neutral-600);margin:0}.booking-back-btn{margin-top:var(--space-4)}.booking-confirmed{text-align:center;padding:var(--space-4) 0}.booking-confirmed-icon{margin-bottom:var(--space-4);font-size:3rem;animation:2s ease-in-out infinite pulse}.booking-confirmed-title{font-size:var(--text-2xl);margin-bottom:var(--space-3);color:var(--color-primary-700)}.booking-confirmed-desc{margin-bottom:var(--space-6);font-size:var(--text-base)}.booking-confirmed-details{padding:var(--space-5);margin-bottom:var(--space-6);text-align:left}.booking-confirmed-row{padding:var(--space-2) 0;justify-content:space-between;align-items:center;display:flex}.booking-confirmed-row+.booking-confirmed-row{border-top:var(--border-light)}.booking-confirmed-label{font-size:var(--text-sm);color:var(--color-neutral-500)}.booking-confirmed-value{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-neutral-800)}.booking-footer{text-align:center;margin-top:var(--space-8)}.booking-footer p{font-size:var(--text-xs);color:var(--color-neutral-400)}@media (width<=480px){.booking-page{padding:var(--space-4)}.booking-progress-label{display:none}.booking-header-title{font-size:var(--text-2xl)}}.contact{min-height:100vh;padding-inline:clamp(1rem,5vw,2.5rem);padding-block:var(--space-6) var(--space-16);background:radial-gradient(50rem 34rem at 85% 0%, var(--color-primary-50), transparent 70%), radial-gradient(40rem 30rem at 0% 100%, var(--color-accent-50), transparent 65%), var(--color-neutral-50);color:var(--color-neutral-700)}.contact-shell{max-width:32rem;margin:0 auto}.contact-back{align-items:center;gap:var(--space-2);padding-block:var(--space-2);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-neutral-600);display:inline-flex}.contact-back:hover{color:var(--color-primary-700)}.contact-header{text-align:center;margin:var(--space-2) 0 var(--space-6)}.contact-avatar{width:88px;height:88px;margin:0 auto var(--space-3);border-radius:var(--radius-full);object-fit:cover;border:3px solid var(--color-primary-100)}.contact-name{font-family:var(--font-heading);font-size:var(--text-xl);font-weight:var(--weight-semibold);color:var(--color-neutral-900)}.contact-role{font-size:var(--text-sm);letter-spacing:.06em;text-transform:uppercase;color:var(--color-neutral-500)}.contact-card{background:var(--color-neutral-0);border:var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:clamp(1.25rem,5vw,2.25rem);display:block}.contact-title{color:var(--color-neutral-900);margin-bottom:var(--space-2);font-size:clamp(1.75rem,5vw,2.25rem)}.contact-title:focus{outline:none}.contact-lead{font-size:var(--text-lg);color:var(--color-neutral-600);margin-bottom:var(--space-6)}.contact-form{gap:var(--space-6);flex-direction:column;display:flex}.contact-label{font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--color-neutral-800)}.contact-reach{gap:var(--space-3);border:0;flex-direction:column;min-width:0;margin:0;padding:0;display:flex}.contact-reach legend{padding:0}.contact-hint{margin-top:var(--space-1);font-size:var(--text-sm);color:var(--color-neutral-500)}.contact-optional{font-size:var(--text-sm);color:var(--color-neutral-500);font-weight:400}.contact-textarea{resize:vertical;min-height:5.5rem;line-height:1.5}.contact-form .form-input[aria-invalid=true]{border-color:var(--color-error)}.contact-trap{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.contact-failed{padding:var(--space-3) var(--space-4);background:var(--color-error-light);border-left:3px solid var(--color-error);border-radius:var(--radius-sm);font-size:var(--text-base);color:var(--color-neutral-800)}.contact-actions{gap:var(--space-3);flex-direction:column;display:flex}.contact-submit{width:100%}.contact-note{text-align:center;font-size:var(--text-sm);color:var(--color-neutral-500)}.contact-sent{text-align:center;flex-direction:column;align-items:center;display:flex}.contact-sent-icon{color:var(--color-primary-600);margin-bottom:var(--space-3)}.contact-alt{margin-top:var(--space-6);text-align:center;font-size:var(--text-base);color:var(--color-neutral-600)}.contact-alt a,.contact-failed a{font-weight:var(--weight-medium);color:var(--color-primary-700);text-underline-offset:2px;white-space:nowrap;text-decoration:underline}.login-page{min-height:100vh;padding:var(--space-6);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.login-page-bg{background:linear-gradient(135deg,#1d776d 0%,#0e4940 50%,#17635b 100%);position:fixed;inset:0}.login-bg-circle{opacity:.08;background:#fff;border-radius:50%;position:absolute}.login-bg-circle.circle-1{width:500px;height:500px;top:-150px;right:-100px}.login-bg-circle.circle-2{width:350px;height:350px;bottom:-100px;left:-50px}.login-container{z-index:1;text-align:center;width:100%;max-width:400px;position:relative}.login-logo{width:72px;height:72px;margin:0 auto var(--space-6);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fff;border-radius:var(--radius-xl);font-family:var(--font-heading);font-size:var(--text-2xl);font-weight:var(--weight-bold);background:#ffffff26;border:1px solid #fff3;justify-content:center;align-items:center;display:flex}.login-title{color:#fff;font-size:var(--text-3xl);margin-bottom:var(--space-2)}.login-subtitle{color:#ffffffb3;margin-bottom:var(--space-8);font-size:var(--text-base)}.login-form{gap:var(--space-5);text-align:left;flex-direction:column;display:flex}.login-error{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--color-error-light);color:var(--color-error);border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--weight-medium);display:flex}.login-submit{width:100%}.login-demo-note{text-align:center;font-size:var(--text-xs);color:var(--color-neutral-400);margin:0}.login-demo-note code{background:var(--color-neutral-100);border-radius:var(--radius-sm);font-size:var(--text-xs);padding:2px 6px}.block-modal-info{gap:var(--space-2);padding:var(--space-4);background:var(--color-neutral-50);border-radius:var(--radius-md);margin-bottom:var(--space-5);border:1px solid var(--color-neutral-200);flex-direction:column;display:flex}.block-modal-info-row{justify-content:space-between;align-items:center;display:flex}.block-modal-info-label{font-size:var(--text-sm);color:var(--color-neutral-500);font-weight:var(--weight-medium)}.block-modal-info-value{font-size:var(--text-sm);color:var(--color-neutral-800);font-weight:var(--weight-semibold)}.text-optional{font-weight:var(--weight-regular);color:var(--color-neutral-400);font-size:var(--text-xs)}.modal-tabs{border-bottom:var(--border-light);background:var(--color-neutral-50);display:flex}.modal-tab{padding:var(--space-3) var(--space-4);cursor:pointer;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-neutral-500);transition:all var(--transition-fast);text-align:center;background:0 0;border:none;flex:1}.modal-tab:hover{color:var(--color-neutral-800);background:#00000005}.modal-tab.active{color:var(--color-primary-600);border-bottom:2px solid var(--color-primary-500);background:var(--color-neutral-0);font-weight:var(--weight-semibold)}.modal-error-message{color:var(--color-error);font-size:var(--text-xs);margin-top:var(--space-2);font-weight:var(--weight-medium)}.admin-page{background:var(--color-neutral-50);min-height:100vh;display:flex}.admin-sidebar{background:var(--color-neutral-0);border-right:var(--border-light);flex-direction:column;width:280px;height:100vh;display:flex;position:sticky;top:0;overflow-y:auto}.admin-sidebar-header{align-items:center;gap:var(--space-3);padding:var(--space-6);border-bottom:var(--border-light);display:flex}.admin-sidebar-logo{background:linear-gradient(135deg, var(--color-primary-500), var(--color-primary-700));color:#fff;border-radius:var(--radius-md);width:44px;height:44px;font-family:var(--font-heading);font-size:var(--text-base);font-weight:var(--weight-bold);flex-shrink:0;justify-content:center;align-items:center;display:flex}.admin-sidebar-name{font-family:var(--font-heading);font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--color-neutral-900);margin:0}.admin-sidebar-role{font-size:var(--text-xs);color:var(--color-neutral-500);margin:0}.admin-sidebar-nav{padding:var(--space-4);gap:var(--space-6);flex-direction:column;flex:1;display:flex}.admin-sidebar-section-title{font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--color-neutral-400);padding:0 var(--space-3);margin-bottom:var(--space-2);display:block}.admin-sidebar-section{gap:var(--space-1);flex-direction:column;display:flex}.admin-sidebar-btn{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-neutral-600);cursor:pointer;transition:all var(--transition-fast);text-align:left;background:0 0;border:none;width:100%;display:flex}.admin-sidebar-btn:hover{background:var(--color-neutral-50);color:var(--color-neutral-800)}.admin-sidebar-btn.active{background:var(--color-primary-50);color:var(--color-primary-700);font-weight:var(--weight-semibold)}.admin-sidebar-btn-icon{font-size:var(--text-base)}.admin-stats{gap:var(--space-2);padding:0 var(--space-3);grid-template-columns:repeat(3,1fr);display:grid}.admin-stat{text-align:center;padding:var(--space-3);background:var(--color-neutral-50);border-radius:var(--radius-md)}.admin-stat-num{font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--color-primary-600);display:block}.admin-stat-label{font-size:var(--text-xs);color:var(--color-neutral-500)}.admin-sidebar-footer{padding:var(--space-4);border-top:var(--border-light);justify-content:space-between;align-items:center;display:flex}.admin-sidebar-user{align-items:center;gap:var(--space-2);display:flex}.admin-sidebar-avatar{background:var(--color-primary-100);width:32px;height:32px;color:var(--color-primary-700);font-size:var(--text-sm);font-weight:var(--weight-semibold);border-radius:50%;justify-content:center;align-items:center;display:flex}.admin-sidebar-user-email{font-size:var(--text-xs);color:var(--color-neutral-500);text-overflow:ellipsis;max-width:120px;overflow:hidden}.admin-main{padding:var(--space-8);flex:1;overflow-x:auto}.admin-main-header{margin-bottom:var(--space-6);justify-content:space-between;align-items:center;display:flex}.admin-main-title{font-size:var(--text-2xl);font-weight:var(--weight-semibold);color:var(--color-neutral-900)}.admin-main-actions{gap:var(--space-3);display:flex}.admin-calendar-wrapper{background:var(--color-neutral-0);border:var(--border-light);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--shadow-sm)}.admin-legend{gap:var(--space-6);margin-top:var(--space-6);padding:var(--space-4);display:flex}.admin-legend-item{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-neutral-600);display:flex}.admin-legend-color{border-radius:var(--radius-sm);width:16px;height:16px}.booking-detail-grid{gap:var(--space-1);flex-direction:column;display:flex}.booking-detail-row{padding:var(--space-3) 0;border-bottom:var(--border-light);justify-content:space-between;align-items:center;display:flex}.booking-detail-row:last-child{border-bottom:none}.booking-detail-label{font-size:var(--text-sm);color:var(--color-neutral-500);font-weight:var(--weight-medium)}.booking-detail-value{font-size:var(--text-sm);color:var(--color-neutral-800);font-weight:var(--weight-semibold)}@media (width<=768px){.admin-page{flex-direction:column}.admin-sidebar{border-right:none;border-bottom:var(--border-light);width:100%;height:auto;position:static}.admin-sidebar-nav{gap:var(--space-4);flex-direction:row;overflow-x:auto}.admin-sidebar-section{flex-direction:row;min-width:max-content}.admin-sidebar-section-title,.admin-stats{display:none}.admin-main{padding:var(--space-4)}.admin-main-header{gap:var(--space-3);flex-direction:column;align-items:flex-start}}
