/* Shared Nature Nest identity. Loaded before both Elementor and shortcode UI styles. */
:root {
 --nnm-public-calendar-available: #ffffff;
 --nnm-public-calendar-unavailable: #dedede;
 --nnm-public-calendar-booked: #e8dcc9;
 --nnm-public-calendar-ink: #342b23;
 --nnm-public-calendar-muted: #555555;
 --nnm-public-calendar-divider: #827462;
 --nnm-brand-primary: #765a34; --nnm-brand-primary-hover: #5d4528;
 --nnm-public-action-hover: var(--nnm-brand-primary-hover);
 --nnm-brand-action: var(--nnm-brand-primary); --nnm-brand-action-hover: var(--nnm-brand-primary-hover);
 --nnm-brand-accent: #e8dcc9; --nnm-brand-background: #f9f6f1; --nnm-brand-surface: #ffffff;
 --nnm-brand-text: #342b23; --nnm-brand-muted-text: #55483b; --nnm-brand-border: #b8a58d;
 --nnm-link: var(--nnm-brand-primary); --nnm-danger-text: var(--nnm-color-danger);
 --nnm-on-primary: #ffffff; --nnm-secondary: #e8dcc9; --nnm-on-secondary: #342b23;

 --nnm-color-primary: var(--nnm-brand-action); --nnm-color-primary-strong: var(--nnm-brand-action-hover);
 --nnm-color-text: var(--nnm-brand-text); --nnm-color-muted: var(--nnm-brand-muted-text); --nnm-color-border: var(--nnm-brand-border);
 --nnm-color-success: #654b2c; --nnm-color-success-bg: #f0e7d8;
 --nnm-color-info: var(--nnm-on-secondary); --nnm-color-info-bg: var(--nnm-secondary);
 --nnm-color-pending: #6b5018; --nnm-color-pending-bg: #faf0d9;
 --nnm-color-warning: #735314; --nnm-color-warning-bg: #fff3d9;
 --nnm-color-danger: #8c352a; --nnm-color-danger-bg: var(--nnm-brand-surface); --nnm-on-danger: #ffffff;
 --nnm-color-neutral: var(--nnm-brand-muted-text); --nnm-color-neutral-bg: var(--nnm-brand-background);
 --nnm-focus: #211b16; --nnm-focus-halo: #ffffff;    --nnm-shadow: rgba(52,43,35,.18); --nnm-overlay: rgba(52,43,35,.48);
}

/* Public maintenance state needs only the shared identity stylesheet. */
.nnm-booking-maintenance { box-sizing: border-box; max-width: 720px; margin: 32px auto; padding: clamp(20px, 5vw, 48px); border: 1px solid var(--nnm-brand-border, #d8cbb9); border-radius: 20px; background: var(--nnm-brand-surface, #fffaf3); color: var(--nnm-brand-text, #30281f); overflow-wrap: anywhere; line-height: 1.65; }
.nnm-booking-maintenance h2 { color: inherit; font-size: clamp(24px, 5vw, 36px); line-height: 1.25; }
.nnm-booking-maintenance__brand { color: var(--nnm-brand-action, #765a34); font-weight: 700; letter-spacing: .08em; }
.nnm-booking-maintenance__contact { display: flex; flex-wrap: wrap; gap: 12px 24px; }
.nnm-booking-maintenance__contact a { color: var(--nnm-brand-action, #765a34); min-height: 44px; display: inline-flex; align-items: center; }
.nnm-booking-maintenance a:focus-visible { outline: 3px solid #30281f; outline-offset: 4px; }
