/* GetBooking brand: shared by the marketing site and the sign-in/sign-up pages. */
:root {
    --gb-ink: #1D1426;
    --gb-ink-soft: #3A3044;
    --gb-muted: #6B6275;
    --gb-line: #E9E1DC;
    --gb-cream: #FBF7F2;
    --gb-paper: #FFFFFF;
    --gb-blush: #F7E6EC;
    --gb-accent: #D9366B;
    --gb-accent-dark: #B8245A;
    --gb-accent-soft: rgba(217, 54, 107, 0.12);
    --gb-gold: #F2B84B;
    --gb-ok: #1F8A5B;
    --gb-bad: #C2362F;
    --gb-radius: 14px;
    --gb-radius-sm: 9px;
    --gb-shadow: 0 1px 2px rgba(29, 20, 38, 0.06), 0 8px 24px rgba(29, 20, 38, 0.08);
    --gb-shadow-lg: 0 2px 6px rgba(29, 20, 38, 0.08), 0 24px 60px rgba(29, 20, 38, 0.16);
    --gb-font: ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    --gb-display: ui-serif, "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;
}

.gb { font-family: var(--gb-font); color: var(--gb-ink); background: var(--gb-cream); line-height: 1.6; -webkit-font-smoothing: antialiased; }
.gb *, .gb *::before, .gb *::after { box-sizing: border-box; }
.gb a { color: inherit; }
.gb :focus-visible { outline: 3px solid var(--gb-accent-soft); outline-offset: 2px; border-radius: 6px; }

.gb-logo { display: inline-flex; align-items: center; gap: 0.5rem; font-weight: 800; font-size: 1.2rem; letter-spacing: -0.02em; text-decoration: none; color: var(--gb-ink); }
.gb-logo-mark { width: 26px; height: 26px; border-radius: 8px; background: var(--gb-accent); position: relative; flex-shrink: 0; }
.gb-logo-mark::after { content: ""; position: absolute; inset: 7px 7px auto auto; width: 7px; height: 7px; border-radius: 50%; background: var(--gb-gold); }
.gb-logo.on-dark { color: #fff; }

.gb-btn { display: inline-flex; align-items: center; justify-content: center; gap: 0.5rem; padding: 0.8rem 1.35rem; border-radius: 999px; border: 1px solid transparent; font: inherit; font-weight: 650; font-size: 0.95rem; line-height: 1; text-decoration: none; cursor: pointer; transition: background .15s, transform .15s, box-shadow .15s, border-color .15s; }
.gb-btn:hover { transform: translateY(-1px); }
.gb-btn-primary, .gb a.gb-btn-primary { background: var(--gb-accent); color: #fff; box-shadow: 0 6px 18px rgba(217, 54, 107, 0.28); }
.gb-btn-primary:hover { background: var(--gb-accent-dark); }
.gb-btn-ghost { background: transparent; color: var(--gb-ink); border-color: var(--gb-line); }
.gb-btn-ghost:hover { border-color: var(--gb-ink); }
.gb-btn-block { width: 100%; }

.gb-eyebrow { display: inline-block; font-size: 0.78rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--gb-accent); }

.gb-lang { appearance: none; -webkit-appearance: none; background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath fill='%236B6275' d='M0 0l5 6 5-6z'/%3E%3C/svg%3E") no-repeat right 0.5rem center; border: 1px solid var(--gb-line); border-radius: 999px; padding: 0.35rem 1.6rem 0.35rem 0.75rem; font: inherit; font-size: 0.8rem; color: var(--gb-muted); cursor: pointer; }

.pricing-extras { padding: 3rem 0; }
.extras-table { width: 100%; max-width: 640px; border-collapse: collapse; }
.extras-table th, .extras-table td { text-align: left; padding: 0.6rem 0.5rem; border-bottom: 1px solid var(--gb-line); }
