/* Project utility layer for Bootstrap-based pages */
.u_w_1_2 { width: 50% !important; }
.u_w_3 { width: 0.75rem !important; }
.u_w_8 { width: 2rem !important; }
.u_w_16 { width: 4rem !important; }
.u_w_36 { width: 9rem !important; }
.u_h_3 { height: 0.75rem !important; }
.u_h_8 { height: 2rem !important; }
.u_h_12 { height: 3rem !important; }
.u_h_16 { height: 4rem !important; }
.u_h_28 { height: 7rem !important; }
.u_h_350px { height: 350px !important; }
.u_h_400px { height: 400px !important; }
.u_h_900px { height: 900px !important; }
.u_minh_screen { min-height: 100vh !important; }
.u_minh_96px { min-height: 96px !important; }
.u_minh_140px { min-height: 140px !important; }
.u_minw_0 { min-width: 0 !important; }
.u_minw_40px { min-width: 40px !important; }
.u_maxw_2xl { max-width: 42rem !important; }
.u_maxw_4xl { max-width: 56rem !important; }
.u_maxw_5xl { max-width: 64rem !important; }
.u_maxw_6xl { max-width: 72rem !important; }
.u_maxw_240px { max-width: 240px !important; }
.u_maxw_420px { max-width: 420px !important; }
.u_maxw_900px { max-width: 900px !important; }
.u_maxw_1400px { max-width: 1400px !important; }
.px-2\.5 { padding-left: 0.625rem !important; padding-right: 0.625rem !important; }
.mr-2 { margin-right: 0.5rem !important; }
.gap-2\.5 { gap: 0.625rem !important; }
.rounded-3px { border-radius: 3px !important; }
.right-3 { right: 0.75rem !important; }
.z-10 { z-index: 10 !important; }
.border-t { border-top: 1px solid #dee2e6 !important; }
.u_stack_3 > * + * { margin-top: 0.75rem !important; }
.u_stack_4 > * + * { margin-top: 1rem !important; }
.u_cols_1 { grid-template-columns: repeat(1, minmax(0, 1fr)) !important; }
.u_cols_2 { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
.u_border_white_20 { border-color: rgba(255, 255, 255, 0.2) !important; }
.u_border_white_60 { border-color: rgba(255, 255, 255, 0.6) !important; }
.u_border_white_70 { border-color: rgba(255, 255, 255, 0.7) !important; }
.u_border_brand_main { border-color: #60256c !important; }
.u_bg_white_20 { background-color: rgba(255, 255, 255, 0.2) !important; }
.u_bg_102a45 { background-color: #102a45 !important; }
.u_bg_294300 { background-color: #294300 !important; }
.u_bg_brand_light { background-color: #f8fafc !important; }
.u_bg_brand_main { background-color: #60256c !important; }
.u_bg_brand_primary { background-color: #088c47 !important; }
.u_bggrad_right { background-image: linear-gradient(to right, var(--tw-gradient-stops)) !important; }
.u_grad_from_main { --tw-gradient-from: #60256c; --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to, rgba(96, 37, 108, 0)); }
.u_grad_to_main { --tw-gradient-to: #60256c; }
.u_text_brand_dark { color: #0f172a !important; }
.u_text_brand_main { color: #60256c !important; }
.u_text_brand_primary { color: #088c47 !important; }
.u_text_brand_gold { color: #e2b60d !important; }
.u_tracking_wide { letter-spacing: 0.025em !important; }
.u_text_10px { font-size: 10px !important; }
.u_text_c08a00 { color: #c08a00 !important; }
.u_text_ff3300 { color: #ff3300 !important; }
.u_text_white_70 { color: rgba(255, 255, 255, 0.7) !important; }
.u_text_white_80 { color: rgba(255, 255, 255, 0.8) !important; }
.u_text_white_90 { color: rgba(255, 255, 255, 0.9) !important; }
.u_lh_tight { line-height: 1.25 !important; }
.u_lh_snug { line-height: 1.375 !important; }
.u_lh_8 { line-height: 2rem !important; }
.u_fw_black { font-weight: 900 !important; }
.u_round_full { border-radius: 9999px !important; }
.u_shadow_md { box-shadow: 0 4px 10px rgba(15, 23, 42, 0.14) !important; }
.u_shadow_xl { box-shadow: 0 20px 35px rgba(15, 23, 42, 0.2) !important; }
.u_shadow_inner { box-shadow: inset 0 2px 8px rgba(15, 23, 42, 0.14) !important; }
.u_shadow_0_10px_20px_rgba_96_37_108_0_25 { box-shadow: 0 10px 20px rgba(96, 37, 108, 0.25) !important; }
.u_shadow_0_10px_25px_rgba_15_23_42_0_15 { box-shadow: 0 10px 25px rgba(15, 23, 42, 0.15) !important; }
.u_shadow_0_12px_24px_rgba_8_140_71_0_30 { box-shadow: 0 12px 24px rgba(8, 140, 71, 0.3) !important; }
.u_shadow_0_6px_16px_rgba_15_23_42_0_12 { box-shadow: 0 6px 16px rgba(15, 23, 42, 0.12) !important; }
.u_shadow_inset_0_0_0_1px_rgba_255_255_255_0_35 { box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.35) !important; }
.u_drop_shadow_sm { filter: drop-shadow(0 1px 1px rgba(15, 23, 42, 0.2)); }
.u_drop_shadow_md { filter: drop-shadow(0 4px 3px rgba(15, 23, 42, 0.24)); }
.u_ring_2 { box-shadow: 0 0 0 2px rgba(148, 163, 184, 0.25) !important; }
.u_ring_gray_200 { box-shadow: 0 0 0 2px rgba(229, 231, 235, 0.9) !important; }
.u_transform { transform: translateZ(0); }
.u_transition { transition: all 0.2s ease !important; }
.u_transition_shadow { transition: box-shadow 0.25s ease !important; }
.u_transition_transform { transition: transform 0.25s ease !important; }
.u_opacity_20 { opacity: 0.2 !important; }
.u_opacity_70 { opacity: 0.7 !important; }
.u_translate_4_4 { transform: translate(1rem, 1rem) !important; }
.u_hover_brightness_95:hover { filter: brightness(0.95); }
.u_hover_scale_105:hover { transform: scale(1.05) !important; }
.u_hover_raise_05:hover { transform: translateY(-0.125rem) !important; }
.u_appearance_none { appearance: none !important; -webkit-appearance: none !important; }
.u_outline_none { outline: none !important; }
.u_resize_none { resize: none !important; }
.u_focus_outline_none:focus { outline: none !important; }
.u_focus_border_brand_main:focus { border-color: #60256c !important; }
.u_focus_ring_1:focus { box-shadow: 0 0 0 1px rgba(96, 37, 108, 0.28) !important; }
.u_focus_ring_2:focus { box-shadow: 0 0 0 2px rgba(96, 37, 108, 0.25) !important; }
.u_focus_ring_brand_main:focus { box-shadow: 0 0 0 2px rgba(96, 37, 108, 0.25) !important; }
.u_backdrop_blur_sm { backdrop-filter: blur(4px) !important; }
.u_clamp_2 {
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}
.u_clamp_3 {
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

.u_choice:checked ~ .u_choice_on_bg_brand_light { background-color: #f8fafc !important; }
.u_choice:checked ~ .u_choice_on_bg_brand_main { background-color: #60256c !important; }
.u_choice:checked ~ .u_choice_on_border_brand_main { border-color: #60256c !important; }
.u_choice:checked ~ .u_choice_on_text_brand_main { color: #60256c !important; }
.u_choice:checked ~ .u_choice_on_text_white { color: #fff !important; }
.u_choice:hover ~ .u_choice_hover_border_brand_main_40 { border-color: rgba(96, 37, 108, 0.4) !important; }

@media (min-width: 640px) {
  .u_rs_w_auto { width: auto !important; }
  .u_rs_flex_row { flex-direction: row !important; }
  .u_rs_items_center { align-items: center !important; }
  .u_rs_grid_cols_2 { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .u_rs_grid_cols_3 { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
  .u_rs_text_base { font-size: 1rem !important; }
  .u_rs_text_lg { font-size: 1.125rem !important; }
  .u_rs_text_xl { font-size: 1.25rem !important; }
  .u_rs_text_2xl { font-size: 1.5rem !important; }
  .u_rs_text_4xl { font-size: 2.25rem !important; }
  .u_rs_px_6 { padding-left: 1.5rem !important; padding-right: 1.5rem !important; }
  .u_rs_px_8 { padding-left: 2rem !important; padding-right: 2rem !important; }
  .u_rs_py_6 { padding-top: 1.5rem !important; padding-bottom: 1.5rem !important; }
  .u_rs_py_10 { padding-top: 2.5rem !important; padding-bottom: 2.5rem !important; }
  .u_rs_p_6 { padding: 1.5rem !important; }
  .u_rs_p_10 { padding: 2.5rem !important; }
  .u_rs_gap_3 { gap: 0.75rem !important; }
  .u_rs_gap_4 { gap: 1rem !important; }
  .u_rs_space_y_5 > * + * { margin-top: 1.25rem !important; }
  .u_rs_mb_10 { margin-bottom: 2.5rem !important; }
  .u_rs_mt_0 { margin-top: 0 !important; }
  .u_rs_max_w_210px { max-width: 210px !important; }
}

@media (min-width: 768px) {
  .u_rm_inline { display: inline !important; }
  .u_rm_flex_row { flex-direction: row !important; }
  .u_rm_items_center { align-items: center !important; }
  .u_rm_justify_between { justify-content: space-between !important; }
  .u_rm_grid_cols_2 { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .u_rm_grid_cols_3 { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
  .u_rm_grid_cols_4 { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
  .u_rm_grid_cols_5 { grid-template-columns: repeat(5, minmax(0, 1fr)) !important; }
  .u_rm_w_auto { width: auto !important; }
  .u_rm_w_1_4 { width: 25% !important; }
  .u_rm_w_2_4 { width: 50% !important; }
  .u_rm_w_12 { width: 3rem !important; }
  .u_rm_h_16 { height: 4rem !important; }
  .u_rm_text_lg { font-size: 1.125rem !important; }
  .u_rm_text_xl { font-size: 1.25rem !important; }
  .u_rm_text_2xl { font-size: 1.5rem !important; }
  .u_rm_text_3xl { font-size: 1.875rem !important; }
  .u_rm_text_4xl { font-size: 2.25rem !important; }
  .u_rm_gap_1 { gap: 0.25rem !important; }
  .u_rm_p_6 { padding: 1.5rem !important; }
  .u_rm_p_8 { padding: 2rem !important; }
  .u_rm_min_h_160px { min-height: 160px !important; }
}

@media (min-width: 1024px) {
  .u_rl_block { display: block !important; }
  .u_rl_grid_cols_1 { grid-template-columns: repeat(1, minmax(0, 1fr)) !important; }
  .u_rl_grid_cols_2 { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  .u_rl_grid_cols_5 { grid-template-columns: repeat(5, minmax(0, 1fr)) !important; }
  .u_rl_grid_cols_220px_1fr { grid-template-columns: 220px 1fr !important; }
  .u_rl_grid_cols_420px_150px { grid-template-columns: 420px 150px !important; }
  .u_rl_justify_center { justify-content: center !important; }
  .u_rl_self_start { align-self: flex-start !important; }
  .u_rl_shrink_0 { flex-shrink: 0 !important; }
  .u_rl_w_14 { width: 3.5rem !important; }
  .u_rl_w_420px { width: 420px !important; }
  .u_rl_h_18 { height: 4.5rem !important; }
  .u_rl_text_5xl { font-size: 3rem !important; line-height: 1 !important; }
  .u_rl_gap_2 { gap: 0.5rem !important; }
  .u_rl_mt_0 { margin-top: 0 !important; }
}

@media (min-width: 1280px) {
  .u_rx_grid_cols_2 { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
