/* Mrs.love cat — shared ESraku structure, pearl / blush / rose theme. */
:root {
  --site-bg: #fff9f7;
  --site-panel: rgba(255,255,255,.92);
  --site-panel-strong: #fff;
  --site-ink: #493b3e;
  --site-text: #493b3e;
  --site-muted: #76666a;
  --site-line: #e5c5c8;
  --site-accent: #b85c76;
  --site-accent-strong: #a34d65;
  --site-accent-soft: #f6e5e3;
  --site-shadow: 0 10px 28px rgba(168,88,107,.07);
  --main-blue: #b85c76;
  --main-blue-soft: #f6e5e3;
  --accent-pink: #b85c76;
  --accent-pink-dark: #a34d65;
  --accent-pink-soft: #f6e5e3;
  --text-main: #493b3e;
  --text-sub: #76666a;
  --heading: #a8586b;
  --gold: #b85c76;
  --white-card: rgba(255,255,255,.92);
}
body { background: #fff9f7 !important; isolation: isolate; }
body::before {
  content: ""; position: fixed; inset: 0; z-index: -1; pointer-events: none;
  background: url("assets/background-bokeh.png") center / cover no-repeat;
}
.site-shell { display: flex; flex-direction: column; }
.site-hero-wide { margin: 0 !important; padding: 0; border-radius: 0; max-width: none; }
.site-hero-wide .site-hero-main { aspect-ratio: 2 / 1; min-height: 0 !important; height: auto !important; border-radius: 0; }
.site-hero-wide .public-hero-thumb { object-fit: contain; }
.site-nav-bar { position: relative; border-color: var(--site-line); box-shadow: 0 3px 12px rgba(168,88,107,.05); }
.nav-brand-mark { color: #a8586b; font-style: italic; }
.site-nav-link:hover { background: #f6e5e3; }
.site-header-pill { background: #fff9f7; box-shadow: 0 6px 16px rgba(184,92,118,.08); }
.site-content { max-width: 1200px; width: 100%; padding: 48px 24px 72px; }
.site-section { margin-bottom: 64px; }
.site-section-title, .site-section-title-main, .site-page-title { color: #a8586b; }
.site-hero-simple { margin-bottom: 0; background: rgba(255,249,247,.55); }
.site-card { border-color: var(--site-line); }
.site-cta, .public-card-reserve-btn, .public-reserve-actions button[type="submit"] {
  background: #b85c76; color: #fff; border-color: #b85c76;
  box-shadow: 0 6px 16px rgba(184,92,118,.14);
}
.site-cta:hover, .public-card-reserve-btn:hover, .public-reserve-actions button[type="submit"]:hover {
  background: #a34d65; color: #fff; box-shadow: 0 8px 18px rgba(184,92,118,.20);
}
.site-pill, .site-section-foot .site-section-link,
.public-top-schedule-actions .site-pill, .site-pill.public-reserve-day-control {
  background: #fff; border-color: #e5c5c8; color: #a34d65;
  box-shadow: 0 4px 12px rgba(184,92,118,.07);
}
.site-pill:hover, .site-section-foot .site-section-link:hover,
.site-pill.public-reserve-day-control:hover { background: #f6e5e3; color: #a34d65; border-color: #b85c76; }
.site-schedule-tab, .site-schedule-tab strong, .site-schedule-tab small,
.site-schedule-tab span, .site-schedule-tab-nav { color: #a34d65; }
.site-schedule-tab.current, .site-schedule-tab.public-reserve-time-day.current {
  background: #b85c76; color: #fff; box-shadow: none;
}
.site-schedule-tab.current strong, .site-schedule-tab.current span, .site-schedule-tab.current small { color: #fff; }
.site-area-filter .site-pill { background: #fff; color: #a34d65; border-color: #e5c5c8; box-shadow: none; }
.site-area-filter .site-pill.current { background: #b85c76; color: #fff; border-color: #b85c76; }
.public-pricing-band { background: #f6e5e3; color: #a34d65; }
.public-pricing-price { color: #a34d65; }
.public-pricing-group-copy { border-top-color: #e5c5c8; }
.public-pricing-section { border-color: #e5c5c8; background: rgba(255,255,255,.94); }
.public-reserve-choice { background: #fff; border-color: #e5c5c8; color: #493b3e; }
.public-reserve-choice:has(input:checked) { background: #f6e5e3; border-color: #b85c76; box-shadow: inset 0 0 0 1px #b85c76; }
input, select, textarea { accent-color: #b85c76; }
.public-reserve-day-actions select { border-color: #e5c5c8; }
.public-reserve-actions button:disabled { opacity: .5; box-shadow: none; }
.public-photo-blog-modal-trigger.site-card { padding: 0; }
.public-top-photo-blog-card, .public-top-story-card { color: #fff; }
.public-top-photo-blog-card .site-overlay-card-body,
.public-top-story-card .site-overlay-card-body { background: linear-gradient(transparent,rgba(91,50,64,.84)); }
.public-top-photo-blog-card h3, .public-top-story-card h3 { color: #fff; }
.site-footer { border-color: #e5c5c8; }
.sticky-bar-btn:hover { background: #f6e5e3; }
.sticky-bar-line, .sticky-bar-tel { color: #a34d65; }
.sticky-bar-reserve { color: #b85c76; }
.web-reserve-media-item input[type="radio"] { accent-color: #b85c76; }
:is(a,button,input,select,textarea,summary):focus-visible { outline: 2px solid #b85c76; outline-offset: 4px; }
.preview-note { padding: 7px 12px; text-align: center; font: 11px/1.6 -apple-system,BlinkMacSystemFont,sans-serif; color: #76666a; background: #fff9f7; border-bottom: 1px solid #e5c5c8; }
.preview-complete { text-align: center; padding: 48px 24px; }
@media (max-width: 760px) {
  .site-content { padding: 30px 14px 54px; }
  .site-section { margin-bottom: 44px; }
  .site-nav-bar-inner { padding: 12px; }
  .preview-note { font-size: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; scroll-behavior: auto !important; transition: none !important; }
}
