/* Homepage palette and typography only. Layout comes from production CSS. */
.studio-refresh {
    --hogwarts-gold: #d4b16c;
    --text-light: #e9edf1;
    --glass-bg: #10283f;
    background: linear-gradient(160deg, #193750, #0c2035);
}
.studio-refresh .background-overlay { display: none; }
.studio-refresh .content-wrapper { border-color: #b69b6359; box-shadow: 0 0 20px #0003; }
.studio-refresh h1 { font-family: Georgia, 'Times New Roman', serif; color: #fcf8ef; font-weight: 400; text-transform: none; letter-spacing: -.025em; }
.studio-refresh .mobile-hero-subtitle { color: #d2dce4; }
.studio-refresh .hero-secondary-action { font-family: 'Lato', sans-serif !important; color: #e2c891 !important; border-color: #9b835a !important; }
.studio-refresh .service-facts div { border-color: #b69b6359; background: #ffffff05; }
.studio-refresh .service-facts strong { color: #e5cd9d; }
.studio-refresh .service-facts span { color: #bdcbd6; }
.studio-refresh .form-container { background: #fffdf8; color: #183049; }
.studio-refresh .form-title { font-family: Georgia, serif !important; color: #183049 !important; font-weight: 400; }
.studio-refresh .form-group label { color: #314359; font-family: 'Lato', sans-serif; letter-spacing: 0; }
.studio-refresh input { background: #fff; color: #183049; border-color: #adb6bd; }
.studio-refresh input::placeholder { color: #687585; opacity: 1; }
.studio-refresh input:focus { outline: 2px solid #7c602d; outline-offset: 2px; box-shadow: none; border-color: #7c602d; }
.studio-refresh .form-hint { color: #637184 !important; }
.studio-refresh .tag-btn { color: #30455e !important; background: #edf0f1 !important; border-color: #b7c0c5 !important; font-family: 'Lato', sans-serif; }
.studio-refresh .tag-btn:hover { background: #e2e8ec !important; border-color: #526b7e !important; }
.studio-refresh .plan-selector { background: #f0eee8; }
.studio-refresh .plan-btn { color: #183049; border-color: #899aa8; background: #fffdfa; font-family: 'Lato', sans-serif; box-shadow: 0 3px 0 #18304926; }
.studio-refresh .plan-btn:not(.active):not(.disabled):hover { background: #eef2f4; border-color: #183049; }
.studio-refresh .plan-btn.active { color: #152b3b; background: #dfc18a; border-color: #795b24; box-shadow: inset 0 0 0 1px #795b24, 0 3px 0 #795b2433; }
.studio-refresh .plan-name { display: flex; align-items: center; justify-content: center; gap: 6px; }
.studio-refresh .plan-choice { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 16px; width: 16px; height: 16px; border: 2px solid #899aa8; border-radius: 50%; background: #fff; }
.studio-refresh .plan-btn.active .plan-choice { color: #fff; background: #183049; border-color: #183049; }
.studio-refresh .plan-btn.active .plan-choice::after { content: '✓'; font: 700 11px/1 'Lato', sans-serif; }
.studio-refresh .plan-btn .price { color: #66502a !important; }
.studio-refresh .plan-btn.active .price { color: #493812 !important; }
.studio-refresh .plan-btn.disabled { color: #637184; background: #f0f1f2; box-shadow: none; }
.studio-refresh .btn-magic { background: #d4b16c; color: #152b3b; font-family: 'Lato', sans-serif; text-transform: none; }
.studio-refresh .btn-magic:hover { background: #e0c18a; box-shadow: 0 5px 15px #b28a4533; }
.studio-refresh .btn-magic:disabled { background: #e8ddc6; color: #5c564b; }
.studio-refresh .checkout-disclaimer, .studio-refresh .mobile-plan-details { color: #526173; }
.studio-refresh .checkout-disclaimer a, .studio-refresh .mobile-plan-details a, .studio-refresh .mobile-plan-details summary { color: #66502a; }
.studio-refresh .sms-addon { background: #f3efe6; border-color: #c5b285; color: #314359; }
.studio-refresh .sms-addon label { color: #314359; }
.studio-refresh .flatpickr-calendar { background: #fffdf8; border-color: #b6bfc4; box-shadow: 0 8px 24px #10283f33; }
.studio-refresh .flatpickr-months .flatpickr-month, .studio-refresh .flatpickr-current-month .flatpickr-monthDropdown-months, .studio-refresh .flatpickr-weekdays { background: #f4f1e9; color: #183049; fill: #183049; }
.studio-refresh .flatpickr-weekday { background: transparent; color: #526173; }
.studio-refresh .flatpickr-day { color: #183049; }
.studio-refresh .flatpickr-day.flatpickr-disabled, .studio-refresh .flatpickr-day.prevMonthDay, .studio-refresh .flatpickr-day.nextMonthDay { color: #929da5; }
.studio-refresh .flatpickr-day.selected { background: #193b55; color: #fff; border-color: #193b55; }
.studio-refresh .flatpickr-day:hover { background: #e5e9e9; border-color: #c5cfd4; }
.studio-refresh .flatpickr-months .flatpickr-prev-month, .studio-refresh .flatpickr-months .flatpickr-next-month { color: #183049; fill: #183049; }
.studio-refresh .booking-journey { background: #17334c; border-color: #536273; }
.studio-refresh .journey-heading h2 { font-family: Georgia, serif; font-weight: 400; }
.studio-refresh .journey-heading > p, .studio-refresh .journey-steps p, .studio-refresh .journey-boundary { color: #c5d1da; }
.studio-refresh .journey-number { color: #dbc695; }
.studio-refresh .journey-icon { background: #284257; border-color: #7b745f; }
.studio-refresh .booking-assurance article, .studio-refresh .evidence-strip, .studio-refresh .ticket-guide-directory, .studio-refresh .seo-guide { background: #f6f3ec !important; color: #435567; border-color: #d7cdbb; }
.studio-refresh .assurance-label { color: #755a29; }
.studio-refresh .booking-assurance h2, .studio-refresh .evidence-strip h2, .studio-refresh .ticket-guide-directory h2, .studio-refresh .ticket-guide-directory h3, .studio-refresh .seo-guide h2, .studio-refresh .seo-guide h3 { color: #233e53 !important; }
.studio-refresh .evidence-strip h2, .studio-refresh .seo-guide h2, .studio-refresh .seo-guide h3 { font-family: Georgia, serif !important; }
.studio-refresh .booking-assurance p, .studio-refresh .evidence-strip > p, .studio-refresh .evidence-metrics span, .studio-refresh .ticket-guide-directory p { color: #536272; }
.studio-refresh .booking-assurance a, .studio-refresh .evidence-links a, .studio-refresh .ticket-guide-directory a, .studio-refresh .seo-guide a { color: #66502a !important; }
.studio-refresh .evidence-metrics div { background: #eae7de; }
.studio-refresh .evidence-metrics strong { color: #183049; }
.studio-refresh .trust-bar { background: #17334c; }
.studio-refresh .trust-item strong { font-family: Georgia, serif; font-weight: 400; }
.studio-refresh .testimonial-card { background: #fffdf8; color: #435567; border-color: #b28a45; }
.studio-refresh .testimonial-card small { color: #526173; }
.studio-refresh footer { color: #bac8d3; }
.studio-refresh footer a { color: #d3dce3 !important; }
.studio-refresh a:focus-visible, .studio-refresh button:focus-visible, .studio-refresh summary:focus-visible { outline: 2px solid #a17b35; outline-offset: 3px; }

/* The legacy centering transform conflicts with the slide-in animation on
   narrow screens. Keep promotional toasts off the mobile/tablet form. */
.studio-refresh .live-activity { max-width: calc(100vw - 40px); white-space: normal; overflow-wrap: anywhere; border-radius: 12px; line-height: 1.4; }
@media (max-width: 900px) {
    .studio-refresh .live-activity { display: none !important; }
}

/* Premium-first form beta. Deliberately scoped to the existing form only. */
.studio-refresh #alert-form .plan-selector-primary { padding: 0; background: none; }
.studio-refresh #alert-form .plan-primary { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 4px 12px; padding: 12px 14px; text-align: left; min-height: 0; }
.studio-refresh #alert-form .plan-primary .plan-name { grid-column: 1; grid-row: 1; justify-content: flex-start; font-size: 1rem; }
.studio-refresh #alert-form .plan-benefits { grid-column: 1; grid-row: 2; margin: 0; font-size: .78rem; }
.studio-refresh #alert-form .plan-price-block { grid-column: 2; grid-row: 1 / 3; display: flex; flex-direction: column; align-items: flex-end; }
.studio-refresh #alert-form .plan-price-block .price { font-size: 1.25rem; line-height: 1.15; margin: 0; }
.studio-refresh #alert-form .plan-price-block small { margin-top: 2px; }
.studio-refresh #alert-form .plan-guarantee { grid-column: 1 / -1; grid-row: 3; margin-top: 3px; line-height: 1.4; }
.studio-refresh #alert-form .plan-free-option { display: flex; align-items: center; justify-content: center; gap: 6px; width: 100%; min-height: 44px; margin: 4px 0 0; padding: 8px 4px; border: 1px solid transparent; border-radius: 6px; color: #526173; background: transparent; font: 400 .8rem/1.4 'Lato', sans-serif; cursor: pointer; }
.studio-refresh #alert-form .free-option-action { color: #314359; text-decoration: underline; text-underline-offset: 3px; }
.studio-refresh #alert-form .plan-free-option:not(:disabled):hover { background: #f0eee8; }
.studio-refresh #alert-form .plan-free-option .plan-choice, .studio-refresh #alert-form .free-option-selected { display: none; }
.studio-refresh #alert-form .plan-free-option.active { border-color: #899aa8; background: #edf0f1; color: #183049; font-weight: 700; }
.studio-refresh #alert-form .plan-free-option.active .free-option-idle { display: none; }
.studio-refresh #alert-form .plan-free-option.active .free-option-selected { display: inline; }
.studio-refresh #alert-form .plan-free-option.active .plan-choice { display: inline-flex; color: #fff; background: #183049; border-color: #183049; }
.studio-refresh #alert-form .plan-free-option.active .plan-choice::after { content: '✓'; font: 700 11px/1 'Lato', sans-serif; }
.studio-refresh #alert-form .plan-free-option:disabled { opacity: .55; cursor: not-allowed; }
.studio-refresh #alert-form .price-kicker { border-radius: 4px; padding: 3px 6px; margin-bottom: 4px; background: #183049; color: #fffdf8; font: 700 .65rem/1.15 'Lato', sans-serif; letter-spacing: .04em; white-space: nowrap; }
.studio-refresh #alert-form .price-presentation-just .price { font-size: 1.5rem; }
.studio-refresh #alert-form .price-presentation-daily .price-kicker { font-size: .85rem; letter-spacing: 0; }
.studio-refresh #alert-form .price-presentation-total { padding: 6px 8px; border: 1px solid #795b2466; border-radius: 5px; background: #fffdf845; }
.studio-refresh #alert-form .price-presentation-total .price { font-size: 1.45rem; }
.studio-refresh #alert-form .price-presentation-total small { font-size: .57rem; font-weight: 700; letter-spacing: .04em; }
.studio-refresh #alert-form .plan-intro-offer { gap: 5px 10px; }
.studio-refresh #alert-form .offer-heading { grid-column: 1 / -1; grid-row: 1; display: flex; align-items: center; justify-content: space-between; gap: 8px; padding-bottom: 6px; margin-bottom: 2px; border-bottom: 1px solid #795b2440; font: 700 .7rem/1.2 'Lato', sans-serif; letter-spacing: .055em; }
.studio-refresh #alert-form .offer-saving { padding: 4px 8px; border-radius: 4px; background: #183049; color: #fffdf8; font-size: .85rem; letter-spacing: 0; }
.studio-refresh #alert-form .plan-intro-offer .plan-name { grid-row: 2; }
.studio-refresh #alert-form .plan-intro-offer .plan-benefits { grid-row: 3; align-self: start; }
.studio-refresh #alert-form .price-presentation-offer { grid-row: 2 / 4; }
.studio-refresh #alert-form .offer-future-price { color: #526173; font-size: .85rem; line-height: 1.1; }
.studio-refresh #alert-form .offer-future-price del { text-decoration-thickness: 1.5px; }
.studio-refresh #alert-form .price-presentation-offer .price { font-size: 1.6rem; margin-top: 2px; }
.studio-refresh #alert-form .plan-intro-offer .plan-guarantee { grid-row: 4; }
@media (max-width: 480px) {
    .studio-refresh #alert-form .plan-primary { padding: 8px 10px; gap: 3px 8px; }
    .studio-refresh #alert-form .plan-primary .plan-name { font-size: .88rem; }
    .studio-refresh #alert-form .plan-benefits { font-size: .72rem; }
    .studio-refresh #alert-form .plan-price-block .price { font-size: 1.1rem; }
    .studio-refresh #alert-form .plan-free-option { margin-top: 0; font-size: .75rem; }
    .studio-refresh #alert-form .price-presentation-just .price { font-size: 1.3rem; }
    .studio-refresh #alert-form .price-presentation-daily .price-kicker { font-size: .73rem; }
    .studio-refresh #alert-form .price-presentation-total .price { font-size: 1.25rem; }
    .studio-refresh #alert-form .offer-heading { font-size: .65rem; }
    .studio-refresh #alert-form .price-presentation-offer .price { font-size: 1.5rem; }
}
