:root {
  --s4h-color-page-background: #FFFFFF;
  --s4h-color-surface: #FFFFFF;
  --s4h-color-surface-alt: #FDEADB;
  --s4h-color-text: #1A1A1A;
  --s4h-color-text-strong: #1A1A1A;
  --s4h-color-text-muted: #6B7280;
  --s4h-color-border-light: #E4E7EB;
  --s4h-color-border-muted: #C9CED6;
  --s4h-color-brand-primary: #F58220;
  --s4h-color-brand-primary-dark: #003865;
  --s4h-color-brand-primary-light: #00A4E4;
  --s4h-color-brand-action: #87BC2A;
  --s4h-color-success: #72BF52;
  --s4h-color-warning: #F1C84D;
  --s4h-color-danger: #EF3340;
  --s4h-color-button-primary-background: #00A4E4;
  --s4h-color-button-primary-hover-background: #008DC5;
  --s4h-color-button-primary-text: #FFFFFF;
  --s4h-color-button-secondary-background: #1A1A1A;
  --s4h-color-button-secondary-hover-background: #000000;
  --s4h-color-button-secondary-text: #FFFFFF;
  --s4h-color-calendar-header-background: #00A4E4;
  --s4h-color-calendar-header-text: #000000;
  --s4h-color-calendar-month-button-text: #003865;
  --s4h-color-calendar-month-button-hover-background: #003865;
  --s4h-color-calendar-month-button-hover-text: #FFFFFF;
  --s4h-color-calendar-weekday-background: #FFCF3F;
  --s4h-color-calendar-weekday-text: #000000;
  --s4h-color-calendar-day-background: #FFFFFF;
  --s4h-color-calendar-day-text: #000000;
  --s4h-color-calendar-day-hover-background: #87BC2A;
  --s4h-color-calendar-day-hover-text: #000000;
  --s4h-color-calendar-available-background: #79C000;
  --s4h-color-calendar-available-text: #000000;
  --s4h-color-calendar-selected-background: #87BC2A;
  --s4h-color-calendar-selected-text: #FFFFFF;
  --s4h-color-calendar-selected-outline: #F58220;
  --s4h-color-calendar-disabled-background: #E5E7EB;
  --s4h-color-calendar-disabled-text: #9CA3AF;
  --s4h-color-calendar-time-slot-background: #00A4E4;
  --s4h-color-calendar-time-slot-border: #00A4E4;
  --s4h-color-calendar-time-slot-text: #FFFFFF;
  --s4h-color-calendar-time-slot-hover-background: #00679A;
  --s4h-color-calendar-time-slot-hover-text: #FFFFFF;
  --s4h-color-calendar-time-slot-selected-background: #F58220;
  --s4h-color-calendar-time-slot-selected-text: #FFFFFF;
  --s4h-color-counter-background: #FFFFFF;
  --s4h-color-counter-border: #E4E7EB;
  --s4h-color-counter-label: #1A1A1A;
  --s4h-color-counter-input-border: #E4E7EB;
  --s4h-color-counter-button-text: #1A1A1A;
  --s4h-color-counter-button-hover-background: #00A4E4;
  --s4h-color-counter-button-hover-text: #FFFFFF;
  --s4h-color-counter-increase-background: #00A4E4;
  --s4h-color-counter-increase-text: #FFFFFF;
  --s4h-color-details-included-frame-background: #FFFFFF;
  --s4h-color-details-included-frame-border: #C9E09F;
  --s4h-color-details-included-header-border: #E1EED4;
  --s4h-color-details-included-item-background: #F0FDF4;
  --s4h-color-details-paid-frame-background: #FFFFFF;
  --s4h-color-details-paid-frame-border: #F9C69A;
  --s4h-color-details-paid-header-border: #FDE0C7;
  --s4h-color-details-paid-item-background: #FFF7ED;
  --s4h-color-details-item-border: #E2E8F0;
  --s4h-color-details-option-background: #FFFFFF;
  --s4h-color-details-option-border: #E2E8F0;
  --s4h-color-details-option-text: #0F172A;
  --s4h-color-details-option-price-text: #475569;
  --s4h-color-details-input-accent: #00A4E4;
  --s4h-color-form-control-border: #E4E7EB;
  --s4h-color-form-control-focus-border: #00A4E4;
  --s4h-color-form-control-text: #003865;
  --s4h-color-form-description-text: #1A1A1A;
  --s4h-color-form-label-text: #1A1A1A;
  --s4h-color-form-legend-text: #003865;
  --s4h-color-form-required-text: #F58220;
  --s4h-color-form-section-border: #E4E7EB;
  --s4h-color-hero-gradient-start: #FFCD45;
  --s4h-color-hero-gradient-end: #FFCD45;
  --s4h-color-hero-text: #FFFFFF;
  --s4h-color-hero-eyebrow: #F58220;
  --s4h-color-hero-missing-image-text: #F58220;
  --s4h-color-navbar-background: #FFFFFF;
  --s4h-color-navbar-border: #E4E7EB;
  --s4h-color-navbar-brand-text: #F58220;
  --s4h-color-navbar-link: #1A1A1A;
  --s4h-color-navbar-link-hover: #F58220;
  --s4h-color-navbar-social-background: #F58220;
  --s4h-color-navbar-social-text: #FFFFFF;
  --s4h-color-navbar-social-hover-background: #00A4E4;
  --s4h-color-navbar-social-hover-text: #FFFFFF;
  --s4h-color-navbar-tool-background: #FFFFFF;
  --s4h-color-navbar-tool-border: #1A1A1A;
  --s4h-color-navbar-tool-text: #1A1A1A;
  --s4h-color-navbar-tool-active-background: #00A4E4;
  --s4h-color-navbar-tool-active-text: #FFFFFF;
  --s4h-color-navbar-top-strip-background: #F58220;
  --s4h-color-navbar-top-strip-text: #FFFFFF;
  --s4h-color-offer-base-head-background: #BFC6CE;
  --s4h-color-offer-base-head-text: #1F2937;
  --s4h-color-offer-base-light-background: #EFF2F5;
  --s4h-color-offer-base-dark-background: #E5E9EE;
  --s4h-color-offer-base-border: #D6DBE1;
  --s4h-color-offer-accent-head-background: #78B6D8;
  --s4h-color-offer-accent-head-text: #0B2540;
  --s4h-color-offer-accent-light-background: #E8F4FB;
  --s4h-color-offer-accent-dark-background: #DAECF7;
  --s4h-color-offer-accent-border: #CFE7F5;
  --s4h-color-offer-accent-button-background: #67A9CD;
  --s4h-color-offer-accent-button-hover-background: #5C9DC1;
  --s4h-color-offer-accent-button-text: #FFFFFF;
  --s4h-color-offer-green-head-background: #7FCC5E;
  --s4h-color-offer-green-head-text: #14310F;
  --s4h-color-offer-green-light-background: #ECF8E8;
  --s4h-color-offer-green-dark-background: #E0F2DA;
  --s4h-color-offer-green-border: #D7F0CF;
  --s4h-color-offer-green-button-background: #72BF52;
  --s4h-color-offer-green-button-hover-background: #67B347;
  --s4h-color-offer-green-button-text: #FFFFFF;
  --s4h-color-offer-yellow-head-background: #F1C84D;
  --s4h-color-offer-yellow-head-text: #3D2B00;
  --s4h-color-offer-yellow-light-background: #FFF8E3;
  --s4h-color-offer-yellow-dark-background: #FDEFC6;
  --s4h-color-offer-yellow-border: #F5E6B2;
  --s4h-color-offer-yellow-button-background: #EAB93A;
  --s4h-color-offer-yellow-button-hover-background: #DCAB2D;
  --s4h-color-offer-yellow-button-text: #1F2937;
  --s4h-color-progress-background: #FFFFFF;
  --s4h-color-progress-track: #E4E7EB;
  --s4h-color-progress-step-text: #1A1A1A;
  --s4h-color-progress-step-complete-text: #1A1A1A;
  --s4h-color-progress-step-active-text: #1A1A1A;
  --s4h-color-progress-marker-background: #FFFFFF;
  --s4h-color-progress-marker-text: #C9CED6;
  --s4h-color-progress-marker-complete-background: #00A4E4;
  --s4h-color-progress-marker-complete-text: #FFFFFF;
  --s4h-color-progress-marker-active-background: #87BC2A;
  --s4h-color-progress-marker-active-text: #FFFFFF;
  --s4h-color-room-card-border: #C9CED6;
  --s4h-color-room-card-hover-border: #00A4E4;
  --s4h-color-room-card-image-background: #E4E7EB;
  --s4h-color-room-card-footer-background: #FFF7ED;
  --s4h-color-room-card-footer-text: #1A1A1A;
  --s4h-color-room-card-radio-border: #94A3B8;
  --s4h-color-room-card-radio-selected-background: #FF0000;
  --s4h-color-section-header-border: #E4E7EB;
  --s4h-color-section-header-subtitle: #F58220;
  --s4h-color-section-header-title: #003865;
  --s4h-color-section-header-badge-background: #FDEADB;
  --s4h-color-section-header-badge-border: #E4E7EB;
  --s4h-color-section-header-badge-text: #003865;
  --s4h-color-footer-background: #FFFFFF;
  --s4h-color-footer-border: #F58220;
  --s4h-color-footer-heading: #1A1A1A;
  --s4h-color-footer-text: #1A1A1A;
  --s4h-color-footer-link: #1A1A1A;
  --s4h-color-footer-link-hover: #F58220;
  --s4h-color-footer-bottom-text: #6B7280;
  --s4h-color-footer-social-background: #3B5998;
  --s4h-color-footer-social-text: #FFFFFF;
  --s4h-color-footer-social-border: #FFFFFF;
  --s4h-color-footer-social-hover-background: #F58220;
  --s4h-color-footer-social-hover-text: #FFFFFF;
  --room-selected-color: var(--s4h-color-room-card-radio-selected-background);
  --confirmation-border: var(--s4h-color-border-light);
  --confirmation-success: var(--s4h-color-success);
  --confirmation-danger: var(--s4h-color-brand-primary);
  --contact-validation-color: var(--s4h-color-danger);
  --contact-placeholder-color: var(--s4h-color-text-muted);
}

body {
  color: var(--s4h-color-text);
  background-color: var(--s4h-color-page-background);
}

a:hover {
  color: var(--s4h-color-brand-primary) !important;
}

.btn-primary,
.button-next {
  background-color: var(--s4h-color-button-primary-background);
  border-color: var(--s4h-color-button-primary-background);
  color: var(--s4h-color-button-primary-text) !important;
}

.btn-primary:hover,
.btn-primary:focus,
.button-next:hover,
.button-next:focus {
  background-color: var(--s4h-color-button-primary-hover-background) !important;
  border-color: var(--s4h-color-button-primary-hover-background) !important;
  color: var(--s4h-color-button-primary-text) !important;
}

.btn-secondary,
.button-back {
  background-color: var(--s4h-color-button-secondary-background);
  border-color: var(--s4h-color-button-secondary-background);
  color: var(--s4h-color-button-secondary-text) !important;
}

.btn-secondary:hover,
.btn-secondary:focus,
.button-back:hover,
.button-back:focus {
  background-color: var(--s4h-color-button-secondary-hover-background) !important;
  border-color: var(--s4h-color-button-secondary-hover-background) !important;
  color: var(--s4h-color-button-secondary-text) !important;
}

.top-strip {
  background-color: var(--s4h-color-navbar-top-strip-background);
  color: var(--s4h-color-navbar-top-strip-text);
  padding: 3px;
}

.main-navbar {
  background-color: var(--s4h-color-navbar-background);
  border-bottom: 1px solid var(--s4h-color-navbar-border);
  box-shadow: none;
}

.main-navbar .main-menu-list .menu-link {
  color: var(--s4h-color-navbar-link);
}

.main-navbar .main-menu-list .menu-link:hover,
.main-navbar .main-menu-list .menu-link:focus,
.main-navbar .s4h-navbar__brand-text {
  color: var(--s4h-color-navbar-brand-text);
}

.main-navbar .s4h-navbar__social {
  background-color: var(--s4h-color-navbar-social-background);
  color: var(--s4h-color-navbar-social-text);
  width: 2rem;
  height: 2rem;
}

.main-navbar .s4h-navbar__social:hover,
.main-navbar .s4h-navbar__social:focus {
  background-color: var(--s4h-color-navbar-social-hover-background);
  color: var(--s4h-color-navbar-social-hover-text);
}

.main-navbar .accessibility-menu .btn-outline-dark,
.main-navbar .accessibility-menu .btn-outline-secondary,
.main-navbar .main-menu-options .s4h-language-switcher .summary,
.main-navbar .main-menu-options .s4h-language-switcher .menu .item {
  background-color: var(--s4h-color-navbar-tool-background);
  border-color: var(--s4h-color-navbar-tool-border);
  color: var(--s4h-color-navbar-tool-text);
}

.main-navbar .accessibility-menu .btn-outline-dark.active,
.main-navbar .accessibility-menu .btn-outline-secondary.active,
.main-navbar .main-menu-options .s4h-language-switcher .menu .item.active {
  background-color: var(--s4h-color-navbar-tool-active-background);
  border-color: var(--s4h-color-navbar-tool-active-background);
  color: var(--s4h-color-navbar-tool-active-text);
}

.main-navbar .main-menu-options .s4h-language-switcher .menu .item:hover,
.main-navbar .main-menu-options .s4h-language-switcher .menu .item:focus {
  color: var(--s4h-color-navbar-link-hover);
}

.s4h-progress {
  background-color: var(--s4h-color-progress-background);
  border-color: var(--s4h-color-progress-track);
}

.s4h-progress .s4h-progress-steps .s4h-progress-step {
  color: var(--s4h-color-progress-step-text);
}

.s4h-progress .s4h-progress-steps .s4h-progress-step.is-complete {
  color: var(--s4h-color-progress-step-complete-text);
}

.s4h-progress .s4h-progress-steps .s4h-progress-step.is-active {
  color: var(--s4h-color-progress-step-active-text);
}

.s4h-progress .s4h-progress-steps .s4h-progress-step .s4h-progress-marker,
.s4h-progress .s4h-progress-steps .s4h-progress-step .s4h-progress-marker:hover {
  background-color: var(--s4h-color-progress-marker-background);
  border-color: var(--s4h-color-progress-track);
  color: var(--s4h-color-progress-marker-text);
}

.s4h-progress .s4h-progress-steps .s4h-progress-step.is-complete .s4h-progress-marker {
  background-color: var(--s4h-color-progress-marker-complete-background);
  border-color: var(--s4h-color-progress-marker-complete-background);
  color: var(--s4h-color-progress-marker-complete-text);
}

.s4h-progress .s4h-progress-steps .s4h-progress-step.is-active .s4h-progress-marker {
  background-color: var(--s4h-color-progress-marker-active-background);
  border-color: var(--s4h-color-progress-marker-active-background);
  color: var(--s4h-color-progress-marker-active-text);
}

.s4h-hero {
  background-color: var(--s4h-color-hero-gradient-start) !important;
  color: var(--s4h-color-hero-text);
  background-image: none !important;
}

.s4h-hero .title {
  color: var(--s4h-color-brand-primary);
  -webkit-text-stroke: 5px var(--s4h-color-surface);
}

.s4h-hero .eyebrow {
  color: var(--s4h-color-hero-text);
  -webkit-text-stroke: 3px var(--s4h-color-hero-eyebrow);
}

.s4h-hero .missing-image {
  color: var(--s4h-color-hero-missing-image-text);
}

.s4h-section-header {
  border-bottom: 1px solid var(--s4h-color-section-header-border);
  color: var(--s4h-color-section-header-title);
  text-decoration: none;
}

.s4h-section-header .s4h-section-header__subtitle {
  color: var(--s4h-color-section-header-subtitle);
}

.s4h-section-header .s4h-section-header__title {
  color: var(--s4h-color-section-header-title);
}

.s4h-section-header .s4h-section-header__badge {
  background-color: var(--s4h-color-section-header-badge-background);
  border: 1px solid var(--s4h-color-section-header-badge-border);
  color: var(--s4h-color-section-header-badge-text);
}

.s4h-counter .s4h-counter__control {
  background-color: var(--s4h-color-counter-background);
  border-color: var(--s4h-color-counter-border);
  box-shadow: none;
}

.s4h-counter .s4h-counter__label {
  color: var(--s4h-color-counter-label);
}

.s4h-counter .s4h-counter__input {
  border-color: var(--s4h-color-counter-input-border);
  box-shadow: none;
  color: var(--s4h-color-form-control-text);
}

.rooms .room-card {
  border-color: var(--s4h-color-room-card-border);
  box-shadow: none;
}

.rooms .room-card:hover,
.rooms .room-card:focus-within,
.rooms .room-choice-control:checked + .room-card {
  border-color: var(--s4h-color-room-card-hover-border);
}

.rooms .room-image {
  background-color: var(--s4h-color-room-card-image-background);
}

.rooms .room-footer {
  background-color: var(--s4h-color-room-card-footer-background);
  border-color: var(--s4h-color-room-card-border);
  color: var(--s4h-color-room-card-footer-text);
}

.rooms .radio {
  border-color: var(--s4h-color-room-card-radio-border);
}

.rooms .room-choice-control:checked + .room-card .radio {
  background-color: var(--s4h-color-room-card-radio-selected-background) !important;
  border-color: var(--s4h-color-room-card-radio-selected-background) !important;
}

.s4h-offer-table__base-head {
  background-color: var(--s4h-color-offer-base-head-background);
  border-color: var(--s4h-color-offer-base-border);
  color: var(--s4h-color-offer-base-head-text);
}

.s4h-offer-table__base-light {
  background-color: var(--s4h-color-offer-base-light-background);
  border-color: var(--s4h-color-offer-base-border);
  color: var(--s4h-color-offer-base-head-text);
}

.s4h-offer-table__base-dark {
  background-color: var(--s4h-color-offer-base-dark-background);
  border-color: var(--s4h-color-offer-base-border);
  color: var(--s4h-color-offer-base-head-text);
}

.s4h-offer-theme-accent {
  --s4h-offer-head-bg: var(--s4h-color-offer-accent-head-background);
  --s4h-offer-head-text: var(--s4h-color-offer-accent-head-text);
  --s4h-offer-body-light-bg: var(--s4h-color-offer-accent-light-background);
  --s4h-offer-body-dark-bg: var(--s4h-color-offer-accent-dark-background);
  --s4h-offer-border: var(--s4h-color-offer-accent-border);
  --s4h-offer-button-bg: var(--s4h-color-offer-accent-button-background);
  --s4h-offer-button-bg-hover: var(--s4h-color-offer-accent-button-hover-background);
  --s4h-offer-button-text: var(--s4h-color-offer-accent-button-text);
}

.s4h-offer-theme-green {
  --s4h-offer-head-bg: var(--s4h-color-offer-green-head-background);
  --s4h-offer-head-text: var(--s4h-color-offer-green-head-text);
  --s4h-offer-body-light-bg: var(--s4h-color-offer-green-light-background);
  --s4h-offer-body-dark-bg: var(--s4h-color-offer-green-dark-background);
  --s4h-offer-border: var(--s4h-color-offer-green-border);
  --s4h-offer-button-bg: var(--s4h-color-offer-green-button-background);
  --s4h-offer-button-bg-hover: var(--s4h-color-offer-green-button-hover-background);
  --s4h-offer-button-text: var(--s4h-color-offer-green-button-text);
}

.s4h-offer-theme-yellow {
  --s4h-offer-head-bg: var(--s4h-color-offer-yellow-head-background);
  --s4h-offer-head-text: var(--s4h-color-offer-yellow-head-text);
  --s4h-offer-body-light-bg: var(--s4h-color-offer-yellow-light-background);
  --s4h-offer-body-dark-bg: var(--s4h-color-offer-yellow-dark-background);
  --s4h-offer-border: var(--s4h-color-offer-yellow-border);
  --s4h-offer-button-bg: var(--s4h-color-offer-yellow-button-background);
  --s4h-offer-button-bg-hover: var(--s4h-color-offer-yellow-button-hover-background);
  --s4h-offer-button-text: var(--s4h-color-offer-yellow-button-text);
}

.s4h-offer-table th[class*="s4h-offer-theme-"] {
  background-color: var(--s4h-offer-head-bg);
  border-color: var(--s4h-offer-border);
  color: var(--s4h-offer-head-text);
}

.s4h-offer-table td[class*="s4h-offer-theme-"].s4h-offer-table__tone-light {
  background-color: var(--s4h-offer-body-light-bg);
  border-color: var(--s4h-offer-border);
  color: var(--s4h-offer-head-text);
}

.s4h-offer-table td[class*="s4h-offer-theme-"].s4h-offer-table__tone-dark {
  background-color: var(--s4h-offer-body-dark-bg);
  border-color: var(--s4h-offer-border);
  color: var(--s4h-offer-head-text);
}

.s4h-offer-table th[class*="s4h-offer-theme-"] .s4h-offer-table__tooltip-button {
  background-color: var(--s4h-offer-body-light-bg);
  border-color: var(--s4h-offer-head-text);
  color: var(--s4h-offer-head-text);
}

.s4h-offer-table th[class*="s4h-offer-theme-"] .s4h-offer-table__tooltip-panel {
  background-color: var(--s4h-color-page-background);
  border-color: var(--s4h-offer-border);
  color: var(--s4h-color-text-strong);
}

.s4h-offer-table th[class*="s4h-offer-theme-"] .s4h-offer-table__tooltip-arrow {
  border-bottom-color: var(--s4h-color-page-background);
}

.s4h-offer-table td[class*="s4h-offer-theme-"] .choose {
  background-color: var(--s4h-offer-button-bg);
  border-color: var(--s4h-offer-border);
  color: var(--s4h-offer-button-text);
}

.s4h-offer-table td[class*="s4h-offer-theme-"] .choose:hover,
.s4h-offer-table td[class*="s4h-offer-theme-"] .choose:focus {
  background-color: var(--s4h-offer-button-bg-hover);
  color: var(--s4h-offer-button-text);
}

.s4h-offer-table .s4h-offer-table__check-marker {
  color: var(--s4h-color-success);
}

.calendar-picker .calendar .month {
  background-color: var(--s4h-color-calendar-header-background);
  color: var(--s4h-color-calendar-header-text);
}

.calendar-picker .calendar .month .month-button {
  color: var(--s4h-color-calendar-month-button-text);
}

.calendar-picker .calendar .month .month-button-active:hover,
.calendar-picker .calendar .month .month-button-active:focus {
  background-color: var(--s4h-color-calendar-month-button-hover-background);
  color: var(--s4h-color-calendar-month-button-hover-text);
  border-radius: 0.25rem;
}

.calendar-picker .calendar .weekday {
  background-color: var(--s4h-color-calendar-weekday-background);
  color: var(--s4h-color-calendar-weekday-text);
}

.calendar-picker .calendar .day {
  background-color: var(--s4h-color-calendar-day-background);
  border-color: var(--s4h-color-border-light);
  color: var(--s4h-color-calendar-day-text);
}

.calendar-picker .calendar .day:not(.day-disabled):not(.day-selected):hover,
.calendar-picker .calendar .day:not(.day-disabled):not(.day-selected):focus {
  background-color: var(--s4h-color-calendar-day-hover-background);
  color: var(--s4h-color-calendar-day-hover-text);
}

.calendar-picker .calendar .day.day-available {
  background-color: var(--s4h-color-calendar-available-background);
  color: var(--s4h-color-calendar-available-text);
}

.calendar-picker .calendar .day.day-selected {
  background-color: var(--s4h-color-calendar-selected-background);
  color: var(--s4h-color-calendar-selected-text);
  outline: 0.18rem solid var(--s4h-color-calendar-selected-outline);
  outline-offset: -0.18rem;
  z-index: 1;
}

.calendar-picker .calendar .day.day-disabled {
  background-color: var(--s4h-color-calendar-disabled-background);
  color: var(--s4h-color-calendar-disabled-text);
  cursor: not-allowed;
}

.calendar-picker .time-panel .time-list .time-slot {
  background-color: var(--s4h-color-calendar-time-slot-background);
  border: 1px solid var(--s4h-color-calendar-time-slot-border) !important;
  color: var(--s4h-color-calendar-time-slot-text) !important;
}

.calendar-picker .time-panel .time-list .time-slot:hover,
.calendar-picker .time-panel .time-list .time-slot:focus {
  background-color: var(--s4h-color-calendar-time-slot-hover-background);
  color: var(--s4h-color-calendar-time-slot-hover-text) !important;
}

.calendar-picker .time-panel .time-list .time-slot.time-slot-selected {
  background-color: var(--s4h-color-calendar-time-slot-selected-background);
  border-color: var(--s4h-color-calendar-time-slot-selected-background) !important;
  color: var(--s4h-color-calendar-time-slot-selected-text) !important;
}

.details-page .details-group-frame-included {
  background-color: var(--s4h-color-details-included-frame-background);
  border-color: var(--s4h-color-details-included-frame-border);
}

.details-page .details-group-frame-paid {
  background-color: var(--s4h-color-details-paid-frame-background);
  border-color: var(--s4h-color-details-paid-frame-border);
}

.details-page .details-group-header-included {
  border-bottom-color: var(--s4h-color-details-included-header-border);
}

.details-page .details-group-header-paid {
  border-bottom-color: var(--s4h-color-details-paid-header-border);
}

.details-page .details-group-title,
.details-page .selector-section {
  color: var(--s4h-color-text-strong);
}

.details-page .selector-section-included {
  background-color: var(--s4h-color-details-included-item-background);
  border-color: var(--s4h-color-details-item-border);
}

.details-page .selector-section-paid {
  background-color: var(--s4h-color-details-paid-item-background);
  border-color: var(--s4h-color-details-item-border);
}

.details-page .selector-subtext {
  color: var(--s4h-color-text-muted);
}

.details-page .selector-option-surface {
  background-color: var(--s4h-color-details-option-background);
  border-color: var(--s4h-color-details-option-border);
}

.details-page .selector-choice-control {
  accent-color: var(--s4h-color-details-input-accent);
}

.details-page .selector-choice-control[type=number] {
  border-color: var(--s4h-color-details-option-border);
  color: var(--s4h-color-details-option-text);
}

.details-page .selector-option-text {
  color: var(--s4h-color-details-option-text);
}

.details-page .selector-option-price {
  color: var(--s4h-color-details-option-price-text);
}

.s4h-contact-form .title {
  color: var(--s4h-color-form-legend-text);
}

.s4h-contact-form .label {
  color: var(--s4h-color-form-label-text);
}

.s4h-contact-form .control {
  border-color: var(--s4h-color-form-control-border);
  color: var(--s4h-color-form-control-text);
}

.s4h-contact-form .control:focus {
  border-color: var(--s4h-color-form-control-focus-border);
}

.s4h-contact-form .validation-summary,
.s4h-contact-form .validation {
  color: var(--contact-validation-color);
}

.payment-page .payment-choice-card--blik {
  background-color: var(--s4h-color-button-secondary-background);
  color: var(--s4h-color-button-secondary-text);
}

.payment-page .payment-choice-card--card {
  background-color: var(--s4h-color-brand-primary);
  color: var(--s4h-color-surface);
}

.payment-page .payment-choice-card--later {
  background-color: var(--s4h-color-surface);
  border: 1px solid var(--s4h-color-border-muted);
  color: var(--s4h-color-text-muted);
}

.confirmation-page .confirmation-panel {
  background-color: var(--s4h-color-brand-primary);
  color: var(--s4h-color-surface);
}

.confirmation-page .confirmation-extra-section-badge {
  background: var(--s4h-color-warning);
  color: var(--s4h-color-text-strong);
}

.confirmation-page .confirmation-extra-group {
  background-color: var(--s4h-color-hero-gradient-start);
  color: var(--s4h-color-text-strong);
}

.confirmation-page .confirmation-extras .empty {
  color: var(--s4h-color-text-muted);
}

.s4h-loading-modal__dialog {
  border-color: var(--s4h-color-brand-primary-dark);
  color: var(--s4h-color-text);
}

.s4h-loading-modal__spinner {
  border-top-color: var(--s4h-color-brand-primary-dark);
}

.s4h-confirm-modal__button--secondary {
  background: var(--s4h-color-button-secondary-background);
}

.s4h-confirm-modal__button--primary {
  background: var(--s4h-color-brand-primary);
}

.s4h-payment-info .payment-info-steps-card,
.s4h-footer {
  border-color: var(--s4h-color-footer-border);
}

.s4h-footer {
  background-color: var(--s4h-color-footer-background);
}

.s4h-footer .heading {
  color: var(--s4h-color-footer-heading);
}

.s4h-footer,
.s4h-footer .links .link {
  color: var(--s4h-color-footer-text);
}

.s4h-footer .links .link:hover,
.s4h-footer .links .link:focus {
  color: var(--s4h-color-footer-link-hover);
}

.s4h-footer .social-list .social {
  background-color: var(--s4h-color-footer-social-background);
  border: 1px solid var(--s4h-color-footer-social-border);
  color: var(--s4h-color-footer-social-text);
}

.s4h-footer .social-list .social:hover,
.s4h-footer .social-list .social:focus {
  background-color: var(--s4h-color-footer-social-hover-background);
  color: var(--s4h-color-footer-social-hover-text);
}
.s4h-page-loader {
  align-items: center;
  background: #fff;
  display: flex;
  inset: 0;
  justify-content: center;
  opacity: 0;
  pointer-events: none;
  position: fixed;
  visibility: hidden;
  z-index: 2147483640; }
  .s4h-page-loader.htmx-request {
    opacity: 1 !important;
    pointer-events: auto;
    visibility: visible; }

.s4h-page-loader__content {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 2rem;
  text-align: center; }

.s4h-page-loader__text {
  color: #434343;
  font-size: 1.2rem;
  font-weight: 800;
  line-height: 1.25;
  margin: 0; }

@media (prefers-reduced-motion: reduce) {
  .s4h-page-loader .s4h-loading-modal__spinner {
    animation-duration: 1.8s; } }
