/* Star positioning for hero and CTA sections */
.star-left {
    top: 20% !important;
    left: 18% !important;
}
.star-right {
    top: 15% !important;
    right: 18% !important;
}
.star-bottom-left {
    bottom: 30% !important;
    left: 24% !important;
}
.star-top-right {
    top: 50% !important;
    right: 21% !important;
}

/* Fix invalid text-align attributes */
.about-content p,
.text-align-left {
    text-align: left !important;
}

/* Bootstrap class replacements */
.d-none { display: none !important; }
.lg-d-block { display: none !important; }
@media (min-width: 992px) {
    .lg-d-block { display: block !important; }
}
.pt-1 { padding-top: 0.25rem !important; }
.lg-pt-2 { padding-top: 0.5rem !important; }
@media (min-width: 992px) {
    .lg-pt-2 { padding-top: 1rem !important; }
}
.pb-2 { padding-bottom: 0.5rem !important; }
.sm-pb-4 { padding-bottom: 1rem !important; }
.lg-pb-6 { padding-bottom: 1.5rem !important; }
@media (min-width: 576px) {
    .sm-pb-4 { padding-bottom: 1.5rem !important; }
}
@media (min-width: 992px) {
    .lg-pb-6 { padding-bottom: 2.5rem !important; }
}
.mt-2 { margin-top: 0.5rem !important; }
.sm-mt-4 { margin-top: 1rem !important; }
.lg-mt-0 { margin-top: 0 !important; }
@media (min-width: 576px) {
    .sm-mt-4 { margin-top: 1.5rem !important; }
}
@media (min-width: 992px) {
    .lg-mt-0 { margin-top: 0 !important; }
}
.mb-4 { margin-bottom: 1rem !important; }
.sm-mb-6 { margin-bottom: 1.5rem !important; }
.lg-mb-8 { margin-bottom: 2rem !important; }
@media (min-width: 576px) {
    .sm-mb-6 { margin-bottom: 2rem !important; }
}
@media (min-width: 992px) {
    .lg-mb-8 { margin-bottom: 3rem !important; }
}
.g-1 { gap: 0.25rem !important; }
.sm-g-2 { gap: 0.5rem !important; }
@media (min-width: 576px) {
    .sm-g-2 { gap: 1rem !important; }
}
.py-3 { padding-top: 1rem !important; padding-bottom: 1rem !important; }
.xl-py-6 { padding-top: 1.5rem !important; padding-bottom: 1.5rem !important; }
@media (min-width: 1200px) {
    .xl-py-6 { padding-top: 2.5rem !important; padding-bottom: 2.5rem !important; }
}
.g-2 { gap: 0.5rem !important; }
.lg-g-4 { gap: 1rem !important; }
@media (min-width: 992px) {
    .lg-g-4 { gap: 1.5rem !important; }
}
.gx-2 { column-gap: 0.5rem !important; }
.lg-gx-4 { column-gap: 1rem !important; }
.gy-4 { row-gap: 1rem !important; }
.lg-gy-6 { row-gap: 1.5rem !important; }
@media (min-width: 992px) {
    .lg-gx-4 { column-gap: 1.5rem !important; }
    .lg-gy-6 { row-gap: 2rem !important; }
}
.py-1 { padding-top: 0.25rem !important; padding-bottom: 0.25rem !important; }
.sm-py-3 { padding-top: 1rem !important; padding-bottom: 1rem !important; }
.xl-py-6 { padding-top: 1.5rem !important; padding-bottom: 1.5rem !important; }
@media (min-width: 576px) {
    .sm-py-3 { padding-top: 1rem !important; padding-bottom: 1rem !important; }
}
@media (min-width: 1200px) {
    .xl-py-6 { padding-top: 2.5rem !important; padding-bottom: 2.5rem !important; }
}
.mt-1 { margin-top: 0.25rem !important; }
.xl-mt-2 { margin-top: 0.5rem !important; }
@media (min-width: 1200px) {
    .xl-mt-2 { margin-top: 1rem !important; }
}