#root{width:100%;margin:0 auto}.App{width:100%;min-height:100vh;overflow-x:hidden}.booking-widget{position:fixed;right:24px;z-index:1000;display:flex;flex-direction:column;align-items:flex-end;gap:12px}.booking-fab{width:58px;height:58px;border-radius:999px;background:var(--bg-strong);color:var(--text-inverse);border:1px solid rgba(255,255,255,.14);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg);transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.booking-fab svg{width:22px;height:22px}.booking-fab:hover{transform:translateY(-2px);box-shadow:0 24px 44px #18181b33;background:#2563eb}.booking-fab--active{background:#2563eb}.booking-popup{width:300px;padding:1.35rem;background:linear-gradient(180deg,rgba(255,255,255,.08),transparent 28%),var(--surface-1);border:1px solid var(--glass-border);border-radius:24px;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:var(--shadow-lg);position:relative}.booking-popup:after{content:"";position:absolute;right:24px;bottom:-8px;width:16px;height:16px;background:inherit;border-right:1px solid var(--glass-border);border-bottom:1px solid var(--glass-border);transform:rotate(45deg)}.booking-popup__close{position:absolute;top:10px;right:12px;background:transparent;border:none;color:var(--text-muted);font-size:1.2rem;line-height:1;padding:4px}.booking-popup__close:hover{color:var(--text-primary)}.booking-popup__avatar{width:42px;height:42px;border-radius:999px;display:grid;place-items:center;background:var(--surface-accent);color:var(--accent-primary);margin-bottom:.9rem}.booking-popup__avatar svg{width:20px;height:20px}.booking-popup__title{font-family:var(--font-heading);font-size:1.35rem;color:var(--text-primary);margin-bottom:.45rem}.booking-popup__text{font-size:.96rem;line-height:1.65;color:var(--text-secondary);margin-bottom:1rem}.booking-popup__cta{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:48px;padding:.85rem 1.2rem;border-radius:999px;background:var(--accent-primary);color:var(--text-inverse);font-weight:600;box-shadow:var(--shadow-sm);transition:transform .18s ease,background .18s ease}.booking-popup__cta:hover{transform:translateY(-1px);background:#1d4ed8;color:var(--text-inverse)}:root[data-theme=dark] .booking-fab{background:linear-gradient(135deg,#60a5faf0,#a78bfad6);color:#07111f;border-color:#bfdbfe3d;box-shadow:0 18px 42px #0000006b,0 0 28px #60a5fa38}:root[data-theme=dark] .booking-fab:hover,:root[data-theme=dark] .booking-fab--active{background:linear-gradient(135deg,#7dd3fc,#a78bfa);box-shadow:0 22px 48px #00000075,0 0 34px #7dd3fc4d}:root[data-theme=dark] .booking-popup{background:linear-gradient(180deg,rgba(96,165,250,.11),transparent 34%),linear-gradient(135deg,rgba(167,139,250,.08),transparent 48%),#081221f0;border-color:#94a3b833;box-shadow:0 22px 58px #00000075,0 0 0 1px #60a5fa0f,0 0 34px #60a5fa1f}:root[data-theme=dark] .booking-popup:after{border-color:#94a3b833}:root[data-theme=dark] .booking-popup__avatar{background:radial-gradient(circle at 30% 20%,rgba(255,255,255,.2),transparent 24%),#60a5fa24;color:#93c5fd;border:1px solid rgba(147,197,253,.18)}:root[data-theme=dark] .booking-popup__cta{background:linear-gradient(135deg,#60a5fa,#a78bfa);color:#07111f;box-shadow:0 16px 34px #60a5fa38}:root[data-theme=dark] .booking-popup__cta:hover{background:linear-gradient(135deg,#7dd3fc,#c4b5fd);color:#07111f}@media (max-width: 768px){.booking-widget{right:16px}.booking-popup{width:min(280px,calc(100vw - 32px))}}@media (max-width: 479px){:root{font-size:14px}h1{font-size:2rem!important}h2{font-size:1.5rem!important}h3{font-size:1.2rem!important}button{min-height:44px;min-width:44px}section{padding:1rem!important}}@media (max-width: 767px){header{padding:1rem 1.5rem!important}.container{padding-left:1rem;padding-right:1rem}p{font-size:1rem;line-height:1.6}button{font-size:.9rem;padding:.8rem 1.5rem}[class*=Grid]{grid-template-columns:1fr!important;gap:1rem!important}section{margin-bottom:2rem!important}body{overflow-x:hidden}}@media (min-width: 768px) and (max-width: 991px){[class*=Grid]{grid-template-columns:repeat(2,1fr)!important}h1{font-size:3rem!important}h2{font-size:2.2rem!important}.container{max-width:100%;padding:0 2rem}}@media (min-width: 992px) and (max-width: 1199px){[class*=Grid]{grid-template-columns:repeat(3,1fr)!important}.container{max-width:960px}}@media (min-width: 1200px){.container{max-width:1140px}}@media (hover: none) and (pointer: coarse){a,button,[role=button]{min-height:44px;min-width:44px;padding:.75rem 1.5rem}*:hover{transform:none!important}*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (max-width: 767px) and (orientation: landscape){section{min-height:auto!important;padding-top:2rem!important;padding-bottom:2rem!important}header{position:fixed!important;top:0;left:0;right:0;z-index:9999}main{padding-top:80px}}@media print{*{background:#fff!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}a[href]:after{content:" (" attr(href) ")"}nav,button,.booking-widget{display:none!important}section{page-break-inside:avoid}}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
