/* mobee public theme — company #28 — generated 2026-07-21T15:42:48+02:00 */
html.public-layout-root {
  --pc-page-bg: #fbf9f5;
  --pc-card-bg: #ffffff;
  --pc-accent: #4e4e4e;
  --pc-accent-hover: #454545;
  --pc-topbar-bg: #fbf9f5;
  --pc-body-text: #4e4e4e;
  --pc-on-accent-text: #ffffff;
  --pc-accent-r: 78;
  --pc-accent-g: 78;
  --pc-accent-b: 78;
  --pc-body-text-r: 78;
  --pc-body-text-g: 78;
  --pc-body-text-b: 78;
  --pc-on-accent-r: 255;
  --pc-on-accent-g: 255;
  --pc-on-accent-b: 255;
  --pc-font-body: 'Outfit', ui-sans-serif, system-ui, sans-serif;
  --pc-letter-spacing: 0.025em;
}
/*
 * Public pages — Qcorner variant (reference: qcorner.it Elementor kit).
 * Warm cream + rice paper texture, sage links, charcoal pill CTAs.
 * Colors via --pc-* from generated company CSS.
 * @see App\Services\PublicPagesCompanyThemeCssGenerator
 */
html.public-layout-root body.min-h-screen {
 background-color: var(--pc-page-bg);
 color: var(--pc-body-text);
 font-family: var(--pc-font-body, var(--font-sans));
 font-weight: 400;
 letter-spacing: var(--pc-letter-spacing, normal);
 font-feature-settings: "kern" 1, "liga" 1;
}
html.public-layout-root body.min-h-screen :where(button, input, select, textarea) {
 font-family: inherit;
 letter-spacing: inherit;
}
html.public-layout-root body > div.min-h-screen,
html.public-layout-root body > div.min-h-dvh {
 background-color: var(--pc-page-bg);
 background-image:
 url("/img/themes/qcorner/ricepaper.webp"),
 radial-gradient(
 ellipse 130% 85% at 50% -15%,
 color-mix(in srgb, #a3b3a7 16%, var(--pc-page-bg)) 0%,
 transparent 58%
 );
 background-repeat: repeat, no-repeat;
 background-size: 420px auto, auto;
 background-blend-mode: multiply, normal;
}
html.public-layout-root .public-themed-page {
 background-color: var(--pc-page-bg);
 background-image:
 url("/img/themes/qcorner/ricepaper.webp"),
 radial-gradient(
 ellipse 120% 70% at 50% -10%,
 color-mix(in srgb, #c4b8a3 22%, var(--pc-page-bg)) 0%,
 transparent 52%
 );
 background-repeat: repeat, no-repeat;
 background-size: 420px auto, auto;
 background-blend-mode: multiply, normal;
}
html.public-layout-root .public-themed-card {
 background-color: var(--pc-card-bg);
 border-radius: 0.75rem;
 border: 1px solid #f0f0f0;
 box-shadow:
 0 1px 0 color-mix(in srgb, var(--pc-on-accent-text) 40%, var(--pc-card-bg)),
 0 20px 44px -32px color-mix(in srgb, var(--pc-body-text) 12%, transparent),
 0 6px 18px -8px color-mix(in srgb, #a3b3a7 10%, transparent);
}
html.public-layout-root .public-themed-topbar {
 background-color: color-mix(in srgb, var(--pc-topbar-bg) 92%, transparent);
 border-bottom: 1px solid #f0f0f0;
 box-shadow: 0 6px 24px -18px color-mix(in srgb, var(--pc-body-text) 7%, transparent);
}
html.public-layout-root .public-themed-topbar a,
html.public-layout-root .public-themed-topbar span {
 color: var(--pc-body-text);
}
/* Hub landing: plate on wrap (not on img — padding on replaced elements collapses badly). */
html.public-layout-root .public-hub-logo-wrap {
 display: inline-flex;
 align-items: center;
 justify-content: center;
 border-radius: 1.25rem;
 padding: 1rem 1.375rem;
 background-color: rgb(255 255 255 / 0.94);
 border: 1px solid rgb(255 255 255 / 0.35);
 box-shadow:
  0 16px 40px -18px rgb(0 0 0 / 0.55),
  0 0 0 1px rgb(255 255 255 / 0.08);
}
html.public-layout-root .public-hub-logo {
 display: block;
 height: 5rem;
 width: auto;
 max-width: min(14rem, 72vw);
 object-fit: contain;
}
@media (min-width: 640px) {
 html.public-layout-root .public-hub-logo {
  height: 6rem;
  max-width: 16rem;
 }
}
html.public-layout-root.public-theme-qcorner .public-hub-logo-wrap {
 padding: 1.125rem 1.625rem;
 background-color: var(--pc-topbar-bg);
 border: 1px solid #f0f0f0;
 box-shadow:
  0 18px 44px -20px rgb(0 0 0 / 0.5),
  0 1px 0 rgb(255 255 255 / 0.65) inset;
}
html.public-layout-root.public-theme-qcorner .public-hub-logo {
 height: 5.5rem;
 max-width: min(15rem, 72vw);
}
@media (min-width: 640px) {
 html.public-layout-root.public-theme-qcorner .public-hub-logo {
  height: 6.75rem;
  max-width: 17rem;
 }
}
html.public-layout-root .public-themed-accent {
 background-color: var(--pc-card-bg);
 color: var(--pc-accent);
 border: 2px solid var(--pc-accent);
 border-radius: 9999px;
 letter-spacing: 0.1em;
 text-transform: uppercase;
 font-size: 0.75rem;
 font-weight: 700;
 box-shadow: none;
 transition:
 background-color 0.22s ease,
 color 0.22s ease,
 border-color 0.22s ease,
 transform 0.2s ease;
}
html.public-layout-root .public-themed-accent:hover:not(:disabled) {
 background-color: var(--pc-accent);
 color: var(--pc-on-accent-text);
 border-color: var(--pc-accent);
 transform: translateY(-1px);
 box-shadow: 0 4px 18px -6px color-mix(in srgb, var(--pc-accent) 35%, transparent);
}
html.public-layout-root .public-themed-accent:disabled {
 background-color: #f0f0f0;
 color: #a1a1aa;
 border-color: #e4e4e7;
 box-shadow: none;
 transform: none;
 cursor: not-allowed;
}
html.public-layout-root .public-themed-accent-bg {
 background-color: var(--pc-accent);
 color: var(--pc-on-accent-text);
 transition: background-color 0.22s ease;
}
html.public-layout-root .public-themed-step-done {
 background-color: color-mix(in srgb, #a3b3a7 75%, var(--pc-on-accent-text));
 color: var(--pc-on-accent-text);
 box-shadow: 0 0 0 1px color-mix(in srgb, #a3b3a7 30%, transparent);
}
html.public-layout-root .public-themed-step-active {
 background-color: var(--pc-accent);
 color: var(--pc-on-accent-text);
 box-shadow: 0 0 0 2px color-mix(in srgb, var(--pc-accent) 25%, transparent);
}
html.public-layout-root .public-themed-link {
 color: #8c998f;
 text-underline-offset: 0.28em;
 text-decoration-thickness: 1px;
 text-decoration-color: color-mix(in srgb, #a3b3a7 55%, transparent);
}
html.public-layout-root .public-themed-link:hover {
 color: var(--pc-accent);
 text-decoration-color: color-mix(in srgb, var(--pc-accent) 45%, transparent);
}
html.public-layout-root .public-themed-accent-text {
 color: #8c998f;
}
html.public-layout-root .public-themed-input-focus:focus {
 border-color: color-mix(in srgb, #a3b3a7 55%, transparent);
 outline: 1px solid color-mix(in srgb, #a3b3a7 28%, transparent);
 outline-offset: 1px;
 box-shadow: 0 0 0 3px color-mix(in srgb, #a3b3a7 12%, transparent);
}
/* Public menu — subsection bands (accent tint, left-aligned) */
html.public-layout-root .public-menu-subsection-band {
 text-align: start;
 background-color: color-mix(in srgb, var(--pc-accent) 22%, var(--pc-card-bg));
 color: var(--pc-body-text);
 border-inline-start: 3px solid color-mix(in srgb, var(--pc-accent) 58%, transparent);
 transition: background-color 0.2s ease, border-color 0.2s ease;
}
html.public-layout-root .public-menu-subsection-band:hover {
 background-color: color-mix(in srgb, var(--pc-accent) 30%, var(--pc-card-bg));
 border-inline-start-color: color-mix(in srgb, var(--pc-accent) 72%, transparent);
}
html.public-layout-root .public-menu-subsection-band.public-menu-subsection-band--open {
 background-color: color-mix(in srgb, var(--pc-accent) 36%, var(--pc-card-bg));
 border-inline-start-color: var(--pc-accent);
}
html.public-layout-root .public-menu-subsection-band__chevron {
 color: color-mix(in srgb, var(--pc-accent) 78%, var(--pc-body-text));
}
html.public-layout-root .public-menu-subsection-band__label {
 color: color-mix(in srgb, var(--pc-accent) 52%, var(--pc-body-text));
}
/* Public menu — welcome popup (themed, no inner scroll) */
html.public-layout-root .public-menu-opening-popup-backdrop {
 background-color: color-mix(in srgb, var(--pc-body-text) 58%, transparent);
 -webkit-backdrop-filter: blur(6px);
 backdrop-filter: blur(6px);
}
html.public-layout-root .public-menu-opening-popup {
 color: var(--pc-body-text);
}
html.public-layout-root .public-menu-opening-popup__title {
 color: var(--pc-body-text);
}
html.public-layout-root .public-menu-opening-popup__description {
 color: color-mix(in srgb, var(--pc-body-text) 78%, var(--pc-card-bg));
}
html.public-layout-root .public-menu-opening-popup__close {
 background-color: color-mix(in srgb, var(--pc-body-text) 6%, var(--pc-card-bg));
 color: var(--pc-body-text);
 border: 1px solid color-mix(in srgb, var(--pc-body-text) 12%, transparent);
}
html.public-layout-root .public-menu-opening-popup__close:hover {
 background-color: color-mix(in srgb, var(--pc-body-text) 12%, var(--pc-card-bg));
}
html.public-layout-root .public-menu-opening-popup__image-wrap {
 background-color: color-mix(in srgb, var(--pc-body-text) 4%, var(--pc-card-bg));
}
html.public-layout-root .public-booking .public-themed-card > div:first-child {
 border-bottom: 1px solid #f0f0f0;
}
@supports not (background-color: color-mix(in srgb, red 50%, blue)) {
 html.public-layout-root body > div.min-h-screen,
 html.public-layout-root body > div.min-h-dvh,
 html.public-layout-root .public-themed-page {
 background-image: url("/img/themes/qcorner/ricepaper.webp");
 background-repeat: repeat;
 background-size: 420px auto;
 }
 html.public-layout-root .public-themed-topbar {
 background-color: var(--pc-topbar-bg);
 border-bottom: 1px solid #f0f0f0;
 }
 html.public-layout-root .public-themed-card {
 border: 1px solid #f0f0f0;
 box-shadow: 0 18px 40px -28px rgba(var(--pc-body-text-r), var(--pc-body-text-g), var(--pc-body-text-b), 0.12);
 }
 html.public-layout-root .public-themed-step-done {
 background-color: #a3b3a7;
 color: var(--pc-on-accent-text);
 }
 html.public-layout-root .public-menu-subsection-band {
 background-color: rgba(var(--pc-accent-r), var(--pc-accent-g), var(--pc-accent-b), 0.16);
 color: var(--pc-body-text);
 border-inline-start: 3px solid rgba(var(--pc-accent-r), var(--pc-accent-g), var(--pc-accent-b), 0.55);
 }
 html.public-layout-root .public-menu-subsection-band:hover {
 background-color: rgba(var(--pc-accent-r), var(--pc-accent-g), var(--pc-accent-b), 0.22);
 border-inline-start-color: rgba(var(--pc-accent-r), var(--pc-accent-g), var(--pc-accent-b), 0.68);
 }
 html.public-layout-root .public-menu-subsection-band.public-menu-subsection-band--open {
 background-color: rgba(var(--pc-accent-r), var(--pc-accent-g), var(--pc-accent-b), 0.28);
 border-inline-start-color: var(--pc-accent);
 }
 html.public-layout-root .public-menu-subsection-band__chevron {
 color: var(--pc-accent);
 }
 html.public-layout-root .public-menu-subsection-band__label {
 color: var(--pc-body-text);
 }
 html.public-layout-root .public-menu-opening-popup-backdrop {
 background-color: rgba(var(--pc-body-text-r), var(--pc-body-text-g), var(--pc-body-text-b), 0.58);
 }
}
