.ltgtm-booking{--ltgtm-brand-primary:var(--e-global-color-primary,var(--wp--preset--color--primary,currentColor));--ltgtm-brand-secondary:var(--e-global-color-secondary,var(--wp--preset--color--secondary,var(--ltgtm-brand-primary)));--ltgtm-brand-accent:var(--e-global-color-accent,var(--wp--preset--color--tertiary,var(--ltgtm-brand-secondary)));--ltgtm-brand-text:var(--e-global-color-text,var(--wp--preset--color--contrast,currentColor));display:grid;gap:24px;max-width:1180px;padding-block:clamp(18px,3vw,42px)}
.ltgtm-booking .ltgtm-section-head{align-items:center;background:linear-gradient(120deg,color-mix(in srgb,var(--ltgtm-brand-primary) 10%,transparent),color-mix(in srgb,var(--ltgtm-brand-accent) 7%,transparent));border:1px solid color-mix(in srgb,var(--ltgtm-brand-primary) 20%,transparent);border-radius:clamp(16px,var(--ltgtm-radius),24px);box-shadow:0 14px 38px color-mix(in srgb,var(--ltgtm-brand-primary) 10%,transparent);display:grid;gap:20px;grid-template-columns:minmax(0,1fr) auto;margin:0;padding:clamp(20px,3vw,32px)}
.ltgtm-booking .ltgtm-section-head h2{font-family:var(--e-global-typography-primary-font-family,inherit);font-size:var(--e-global-typography-primary-font-size,inherit);font-style:var(--e-global-typography-primary-font-style,inherit);font-weight:var(--e-global-typography-primary-font-weight,inherit);letter-spacing:var(--e-global-typography-primary-letter-spacing,inherit);line-height:var(--e-global-typography-primary-line-height,inherit);text-decoration:var(--e-global-typography-primary-text-decoration,inherit);text-transform:var(--e-global-typography-primary-text-transform,inherit)}
.ltgtm-booking .ltgtm-eyebrow{color:var(--ltgtm-brand-primary);margin-bottom:8px}
.ltgtm-booking .ltgtm-steps{counter-reset:booking-step;display:grid;gap:8px;grid-template-columns:repeat(4,minmax(88px,1fr))}
.ltgtm-booking .ltgtm-steps li{align-items:center;background:color-mix(in srgb,var(--ltgtm-brand-secondary) 8%,transparent);border:1px solid color-mix(in srgb,var(--ltgtm-brand-secondary) 24%,transparent);border-radius:999px;color:var(--ltgtm-brand-text);display:flex;gap:8px;justify-content:center;min-height:42px;padding:8px 14px;transition:background .2s ease,box-shadow .2s ease,transform .2s ease;white-space:nowrap}
.ltgtm-booking .ltgtm-steps li.is-active{background:var(--ltgtm-brand-primary);border-color:var(--ltgtm-brand-primary);box-shadow:0 8px 20px color-mix(in srgb,var(--ltgtm-brand-primary) 28%,transparent);color:var(--wp--preset--color--base,#fff);transform:translateY(-1px)}
.ltgtm-booking .ltgtm-steps li.is-complete{background:color-mix(in srgb,var(--ltgtm-brand-accent) 18%,transparent);border-color:color-mix(in srgb,var(--ltgtm-brand-accent) 45%,transparent)}
.ltgtm-booking .ltgtm-booking-form{gap:24px}
.ltgtm-booking .ltgtm-panel{background:linear-gradient(155deg,color-mix(in srgb,var(--ltgtm-brand-primary) 4%,transparent),transparent 42%);border:1px solid color-mix(in srgb,var(--ltgtm-brand-primary) 18%,transparent);border-top:4px solid var(--ltgtm-brand-primary);border-radius:clamp(16px,var(--ltgtm-radius),24px);box-shadow:0 20px 55px color-mix(in srgb,var(--ltgtm-brand-primary) 10%,transparent);padding:clamp(20px,3vw,34px)}
.ltgtm-booking .ltgtm-panel h3{color:var(--ltgtm-brand-text)}
.ltgtm-booking .ltgtm-panel>.ltgtm-fields{gap:18px;grid-template-columns:repeat(3,minmax(0,1fr))}
.ltgtm-booking label>span{margin-bottom:8px}
.ltgtm-booking input,.ltgtm-booking select,.ltgtm-booking textarea{border-color:color-mix(in srgb,var(--ltgtm-brand-primary) 22%,transparent);border-radius:12px;min-height:52px;padding:12px 15px;transition:border-color .2s ease,box-shadow .2s ease}
.ltgtm-booking input:focus,.ltgtm-booking select:focus,.ltgtm-booking textarea:focus{border-color:var(--ltgtm-brand-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--ltgtm-brand-primary) 14%,transparent)}
.ltgtm-booking .ltgtm-choice>span{background:linear-gradient(145deg,color-mix(in srgb,var(--ltgtm-brand-secondary) 7%,transparent),transparent);border:1px solid color-mix(in srgb,var(--ltgtm-brand-secondary) 24%,transparent);border-radius:16px;box-shadow:0 10px 24px color-mix(in srgb,var(--ltgtm-brand-secondary) 7%,transparent);padding:12px;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.ltgtm-booking .ltgtm-choice:hover>span{transform:translateY(-2px)}
.ltgtm-booking .ltgtm-choice>input:checked+span{border-color:var(--ltgtm-brand-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--ltgtm-brand-primary) 15%,transparent),0 16px 32px color-mix(in srgb,var(--ltgtm-brand-primary) 13%,transparent)}
.ltgtm-booking .ltgtm-addon{background:color-mix(in srgb,var(--ltgtm-brand-accent) 8%,transparent);border-color:color-mix(in srgb,var(--ltgtm-brand-accent) 24%,transparent);border-radius:14px;padding:15px}
.ltgtm-booking .ltgtm-summary{align-items:center;background:linear-gradient(125deg,var(--ltgtm-brand-primary),color-mix(in srgb,var(--ltgtm-brand-secondary) 72%,var(--ltgtm-brand-primary)));border-color:transparent;color:var(--wp--preset--color--base,#fff);display:grid;gap:22px;grid-template-columns:minmax(0,1fr) auto}
.ltgtm-booking .ltgtm-summary .ltgtm-button{min-width:min(100%,320px)}
.ltgtm-booking .ltgtm-button{background:linear-gradient(120deg,var(--ltgtm-brand-primary),var(--ltgtm-brand-accent));border-color:transparent;box-shadow:0 10px 24px color-mix(in srgb,var(--ltgtm-brand-primary) 25%,transparent);color:var(--wp--preset--color--base,#fff)!important}
.ltgtm-booking .ltgtm-button:hover{box-shadow:0 14px 30px color-mix(in srgb,var(--ltgtm-brand-primary) 32%,transparent);transform:translateY(-2px)}
.ltgtm-booking .ltgtm-button.is-secondary{background:transparent;border-color:var(--ltgtm-brand-primary);box-shadow:none;color:var(--ltgtm-brand-primary)!important}
.ltgtm-booking .ltgtm-summary .ltgtm-button{background:var(--wp--preset--color--base,#fff);color:var(--ltgtm-brand-primary)!important}
.ltgtm-booking .ltgtm-step-nav{gap:10px}
.ltgtm-booking .ltgtm-alert,.ltgtm-booking .ltgtm-live.is-error{border:1px solid currentColor;border-radius:13px;padding:14px 16px}
@media(max-width:900px){.ltgtm-booking .ltgtm-section-head{grid-template-columns:1fr}.ltgtm-booking .ltgtm-steps{grid-template-columns:repeat(2,1fr)}.ltgtm-booking .ltgtm-panel>.ltgtm-fields{grid-template-columns:1fr 1fr}.ltgtm-booking .ltgtm-summary{grid-template-columns:1fr}}
@media(max-width:560px){.ltgtm-booking{gap:18px}.ltgtm-booking .ltgtm-steps,.ltgtm-booking .ltgtm-panel>.ltgtm-fields{grid-template-columns:1fr}.ltgtm-booking .ltgtm-steps li{justify-content:flex-start}.ltgtm-booking .ltgtm-panel{padding:18px}.ltgtm-booking .ltgtm-summary .ltgtm-button{width:100%}}
@media(prefers-reduced-motion:reduce){.ltgtm-booking .ltgtm-choice>span,.ltgtm-booking .ltgtm-steps li{transition:none}.ltgtm-booking .ltgtm-choice:hover>span,.ltgtm-booking .ltgtm-button:hover,.ltgtm-booking .ltgtm-steps li.is-active{transform:none}}
