/* Base body font & background */
body {
    font-family: "Nunito Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    /* 600 made all body text too bold */
    font-style: normal;
    color: var(--bs-body-color);
    background-color: var(--bs-body-bg);
}

/* Headings */
h1,
.h1 {
    font-family: "Oswald", sans-serif;
    font-weight: 600;
    color: #000;
}

h2,
.h2 {
    font-weight: 400;
    color: var(--bs-danger);
    /* red accent */
}

h2.section-title,
h3.section-title {
    font-family: "Oswald", sans-serif;
    color: #000;
}


.page-title h1 {
    margin-top: 4em;
}

/* Default (desktop / tablet) */
/* Default subtle shadow (Facebook-feed style) */
.shadow-section {
    border-radius: 10px;
    background-color: #fff;
    padding-top: 1rem;
    padding-left: 1rem;
    padding-bottom: 1rem;
    margin-bottom: 1rem;
    margin-top: 2rem;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

/* Stronger, heavier shadow (promo/hero style) */
.shadow-section-heavy {
    border-radius: 10px;
    background-color: #fff;
    padding-top: 1rem;
    padding-left: 1rem;
    padding-bottom: 1rem;
    margin-bottom: 1rem;
    margin-top: 2rem;
    box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.75);
}

.indent {
    padding-left: 2rem;
    /* adjust to taste */
}


.status-dot {
    display: inline-block;
    width: 0.75rem;
    height: 0.75rem;
    border-radius: 50%;
    margin-right: 0.4rem;
    vertical-align: middle;
}

.status-red {
    background-color: #930a2c;
}

.status-blue {
    background-color: #0dcaf0;
}



/* Ã°Å¸â€œÂ± Mobile override (applies to both) */
@media screen and (max-width: 768px) {

    .shadow-section,
    .shadow-section-heavy {
        margin-top: 1rem;
        /* tighter spacing */
        margin-bottom: 0.5rem;
        padding-top: 0.75rem;
        padding-bottom: 0.75rem;
    }
}




.owner-event {
    position: relative;
    z-index: 99;
}

button.btn.btn-outline-danger:hover a {
    color: #fff;
}

a.text-decoration-none.hover-underline:hover {
    text-decoration: underline !important;
}

h2.bizname {
    font-size: 1.25rem;
    font-weight: 600;
    color: #930a2c;
}

a {
    color: #666;
    text-decoration: underline;
}

a:hover {
    color: #930a2c;
    text-decoration: none;
}

.btn-dark:not(:disabled):not(.disabled).active,
.btn-dark:not(:disabled):not(.disabled):active,
.show>.btn-dark.dropdown-toggle {
    color: #fff;
    background-color: #1d2124;
    border-color: #171a1d;
}

.mt-2.mb-2.pre_entry_info_lat_entry_info p {
    margin: 0;
}

a.btn:visited {
    text-decoration: none;
}

a.btn.btn-outline-danger.btn-social.mx-1.text-decoration-none i.fab.fa-fw.fa-facebook-f {
    color: #da1212;
}

a.btn.btn-outline-danger.btn-social.mx-1.text-decoration-none:hover .fa-facebook-f {
    color: #fff !important;
}

#fh5co-aside .fh5co-footer ul li a {
    color: rgba(0, 0, 0, 0.7);
    padding: 4px;
    position: relative;
    bottom: 13px;
}

.btn-social {
    border-radius: 100%;
    display: inline-flex;
    width: 2rem;
    height: 2rem;
    font-size: 1.25rem;
    justify-content: center;
    align-items: center;
}

.header-top {
    position: relative;
    width: 100%;
    background: #05060d;
    padding: 12px 0;
}

h2.title {
    font-weight: 800;
    font-size: 1.75rem;
    color: #930a2c;
}

.text-danger {
    color: #930a2c;
}

.btn-danger {
    background: #930a2c;
    color: #fff;
    text-decoration: none;
}

.btn-dark a {
    color: #fff;
    text-decoration: none;
}

.btn-primary a {
    color: #fff;
    text-decoration: none;
}

.bg-danger {
    background-color: #930a2c;
    color: #fff;
}

.list-large {
    font-size: 1.5rem;
    /* ~20px */
    line-height: 1.5;
}


.dt-paging-button:first-child {
    border-top-left-radius: 0.375rem;
    border-bottom-left-radius: 0.375rem;
    ;
}

.dt-paging-button:last-child {
    border-top-right-radius: 0.375rem;
    border-bottom-right-radius: 0.375rem;
    ;
}

.dt-paging-button {
    position: relative;
    display: block;
    padding: .375rem 1rem;
    font-size: 1rem;
    color: #0d6efd;
    text-decoration: none;
    background-color: #fff;
    border: 1px solid #dee2e6 !important;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.container {
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
}

.profile-container {
    position: relative;
    display: block;
    padding: 1rem 1rem 1rem 1rem;
    box-shadow: 0 20px 60px 0 rgba(123, 13, 13, 0.1);
    margin-bottom: 20px;
    background-color: #000;
    color: #f1eef2;
    border: 2px solid #8c8d91;
    padding: 10px;
    border-bottom-left-radius: 25px;
    border-bottom-right-radius: 50px 20px;
}


.mb-2.event-title-container {
    width: 100%;
}



@media only screen and (max-width: 991px) {
    .header-top .top-inner {
        display: block;
        text-align: center;
    }
}

@media only screen and (max-width: 499px) {
    .main-header .outer-box .logo-box .logo {
        margin: 0 auto;
    }
}

/* end mobile menu*/
/* 2/12/25 Jo moved styles here from event.css and also from front-end so they are all in one place which should be global
Also checked for duplictates */

.rounded-widget-dark {
    position: relative;
    background: #000;
    color: #fff;
    border-radius: 10px;
    padding: .5em;
    margin-bottom: .5em;
}

img.profilepicnav.loggedin {
    border-radius: 50%;
    max-width: 63px;
}

.img-profile-pic {
    max-width: 150px;
    /* prevent it from squishing too narrow */
    border-radius: 25%;
    /* keep rounded look */
    object-fit: cover;
    /* crop edges instead of stretching */
    flex-shrink: 0;
    /* don't let flex/grid shrink it smaller */
}


.img-profile-pic-med {
    max-width: 75px;
    /* prevents it from shrinking too narrow */
    border-radius: 40%;
    object-fit: cover;
    /* ensures square crops cleanly */
    flex-shrink: 0;
    /* prevents Bootstrap flexbox from squeezing it */
}

.img-profile-pic-sm {
    max-width: 50px;
    /* prevents it from shrinking too narrow */
    max-height: 50px;
    /* prevents it from shrinking too narrow */
    border-radius: 40%;
    object-fit: cover;
    /* ensures square crops cleanly */
    flex-shrink: 0;
    /* prevents Bootstrap flexbox from squeezing it */
}

.img-banner {
    max-width: 100%;
    height: auto;
    border-radius: 15%;
}

.img-center {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

/*.img-rounded-corners {
    max-width: 100%;
    border: 0;
    height: auto;
    border-radius: 10px;
}*/

.img-rounded-corners {
    border-radius: 8px;
    object-fit: cover;
    height: 100%;
}


.rounded-top {
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}

.biz-img {
    margin-left: auto;
    margin-right: auto;
    max-height: 220px;
    border-radius: 10px;
}

.biz-img-sm {
    margin-left: auto;
    margin-right: auto;
    max-height: 110px;
    border-radius: 5px;
}

.banner-820 {
    margin-left: auto;
    margin-right: auto;
    max-height: 190px;
}

/* end ph original styles */
/*
Sentra Template
http://www.templatemo.com/tm-518-sentra
*/


.page-content {
    width: 77.5%;
    float: right;
}

@media only screen and (max-width:1024px) {
    .page-content {
        width: 70.5%;
    }
}

/** New full width section background colors implemented 5/27 along with nitro theme content **/
/*bg-alt used on second section usually page title search and results*/
/* page content is the main background color #a8a9b0; */
.bg-darker {
    background-color: #fafafa;
}

.bg-darkest {
    background-color: #a8a9b0;
}

.bg-main {
    /*background-color: #eff0f2;*/
    background-color: #f4f4f4;
}

.bg-alt {
    background-color: #fff;
}

.content-section {
    padding-top: 80px;
    position: relative;
    width: 100%;
    display: inline-block;
    height: auto;
    left: 50%;
}


.section-heading {
    text-align: left;
    position: relative;
    margin-bottom: 60px;
}

.section-heading h1 {
    margin-top: 0px;
    font-size: 32px;
    color: #232323;
    display: inline-block;
    margin-right: 50px;
}

.section-heading em {
    font-style: normal;
    font-weight: 700;
    color: #930a2c;
}

.section-heading p {
    display: inline-block;
    font-size: 15px;
    line-height: 26px;
    color: #343434;
    position: absolute;
    top: 12.5px;
}

header {
    position: fixed;
    top: 0;
    transition: top 0.3s ease-in-out;
    width: 100%;
}

/* Featured Style */

#featured {
    padding-left: 60px;
    padding-right: 60px;
    padding-bottom: 80px;
    border-bottom: 1px solid #eee;
}

#featured .section-heading {
    margin-right: 20%;
}

#featured .content-section {
    display: inline-block;
    position: relative;
}

#featured .owl-dots {
    margin-top: 40px;
}

#featured .owl-dots .owl-dot span {
    width: 12px;
    height: 12px;
    background-color: #cdcdcd !important;
    display: inline-block;
    border-radius: 50%;
    margin: 0 3px;
}

#featured .owl-dots .active span {
    background-color: #45489a !important;
}

#featured .owl-dots button {
    outline: none;
}

#featured .owl-nav {
    position: absolute;
    display: inline-block;
    top: -110px;
    right: 0;
}

#featured .owl-nav button:focus {
    outline: none;
}

#featured .owl-nav .owl-prev span {
    margin-right: 10px;
}

#featured .owl-nav .owl-next span,
#featured .owl-nav .owl-prev span {
    outline: none;
    width: 50px;
    height: 50px;
    display: inline-block;
    text-align: center;
    line-height: 42px;
    background-color: #eee;
    color: #232323;
    font-size: 42px;
    transition: all 0.5s;
}

#featured .owl-nav span:hover {
    background-color: #930a2c;
    color: #fff;
}

#featured .item {
    text-align: left;
    position: relative;
    z-index: 10;
}

#featured .item .image {
    position: relative;
}

#featured .item .image img {
    width: 100%;
    overflow: hidden;
}

#featured .item .image .featured-button a {
    font-size: 13px;
    font-weight: 600;
    color: #fff;
    text-align: center;
    text-transform: capitalize;
    background-color: rgba(69, 72, 154, 0.9);
    display: inline-block;
    height: 44px;
    line-height: 44px;
    width: 100%;
    letter-spacing: 0.25px;
    text-decoration: none;
    transition: all 0.5s;
    position: absolute;
    z-index: 9;
    bottom: -44px;
    opacity: 0;
}

#featured .item:hover .featured-button a {
    bottom: 0;
    opacity: 1;
}

#featured .item .text-content {
    padding-top: 20px;
    background-color: #fff;
    position: relative;
    z-index: 10;
}

#featured .item .text-content h4 {
    margin-top: 0px;
    margin-bottom: 5px;
    font-size: 21px;
    font-weight: 600;
    color: #232323;
    letter-spacing: 0.5px;
}

#featured .item .text-content span {
    display: inline-block;
    font-size: 15px;
    font-weight: 600;
    color: #7a7a7a;
    letter-spacing: 0.5px;
    margin-bottom: 12.5px;
}



/* Projects Style */

#projects {
    padding-left: 60px;
    padding-right: 60px;
    padding-bottom: 50px;
}

#projects .masonry {
    position: relative;
    width: 100%;
}

#projects .masonry .item img {
    transition: all 1s;
    width: 100%;
    overflow: hidden;
    margin-bottom: 30px;
}

#projects .masonry .item img:hover {
    opacity: 0.5;
}



/* Video Presentation Style */

#video {
    text-align: center;
    background-color: #f4f4f4;
    padding: 100px 60px;
}

#video .section-heading {
    margin-bottom: 30px;
    text-align: center;
}

#video .section-heading h1 {
    display: block;
    margin: 0px;
}

#video .section-heading p {
    position: relative;
    margin: 0px;
}

#video .accent-button {
    margin-top: 30px;
}

.box-video {
    width: 100%;
    position: relative;
    margin-top: 30px;
    cursor: pointer;
    overflow: hidden;
}

.box-video .bg-video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    z-index: 2;
}

.box-video .video-container {
    position: relative;
    margin: 0;
    z-index: 1;
}

.box-video .bt-play {
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -30px 0 0 -30px;
    display: inline-block;
    width: 60px;
    height: 60px;
    background: #fff;
    border-radius: 50%;
    text-indent: -999em;
    cursor: pointer;
    z-index: 2;
    -webkit-transition: all .3s ease-out;
    transition: all .3s ease-out;
}

.box-video .bt-play:after {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    height: 0;
    width: 0;
    margin: -12px 0 0 -6px;
    border: solid transparent;
    border-left-color: #000;
    border-width: 12px 20px;
    -webkit-transition: all .3s ease-out;
    transition: all .3s ease-out;
}

.box-video:hover .bt-play {
    transform: scale(1.1);
}

.box-video.open .bg-video {
    visibility: hidden;
    opacity: 0;
    -webkit-transition: all .6s .8s;
    transition: all .6s .8s;
}

.box-video.open .video-container {
    opacity: 1;
    -webkit-transition: all .6s .8s;
    transition: all .6s .8s;
}

/* Contact Style */

#contact {
    padding-top: 0px;
}

#contact-content {
    padding: 80px 60px;
}

#contact input {
    border-radius: 0px;
    padding-left: 15px;
    font-size: 13px;
    color: #aaa;
    background-color: #f4f4f4;
    border: 1px solid #eee;
    outline: none;
    box-shadow: none;
    line-height: 40px;
    height: 40px;
    width: 100%;
    margin-bottom: 25px;
}

#contact textarea {
    border-radius: 0px;
    padding-left: 15px;
    padding-top: 10px;
    font-size: 13px;
    color: #aaa;
    background-color: #f4f4f4;
    border: 1px solid #eee;
    outline: none;
    box-shadow: none;
    height: 200px;
    max-height: 250px;
    width: 100%;
    max-width: 100%;
    margin-bottom: 25px;
}

#contact button {
    font-size: 13px;
    border-radius: 0px;
    font-weight: 600;
    color: #fff;
    text-transform: capitalize;
    background-color: #930a2c;
    display: inline-block;
    height: 44px;
    line-height: 24px;
    outline: none;
    box-shadow: none;
    width: 100%;
    letter-spacing: 0.25px;
    text-decoration: none;
    transition: all 0.3s;
}

#contact button:hover {
    color: #232323;
    background-color: #f4f4f4;
}



/* Footer Style */

.footer {
    /* height: 80px;*/
    display: inline-block;
    text-align: center;
    width: 100%;
}

.footer p {
    margin-bottom: 0px;
    font-size: 13px;
    /* line-height: 80px;*/
    letter-spacing: 0.5px;
    font-weight: 500;
}

.footer p a {
    text-decoration: none;
    color: #000;
    font-weight: 600;
}



/* Responsive Style */
/* Hide on large screens */


@media (max-width: 400px) {

    .hide-mobile {
        display: none;
    }
}

@media (max-width: 768px) {

    .hide-768 {
        display: none;
    }
}

@media (max-width: 992px) {

    .responsive-nav {
        display: none;
    }

    .sidebar-navigation .logo a {
        font-size: 18px;
    }

    .sidebar-navigation nav a {
        font-size: 13px;
    }

    .sidebar-navigation nav ul {
        margin-left: 30px;
    }

    .sidebar-navigation .social-icons li a {
        font-size: 15px;
    }

}


@media (max-width: 767px) {

    .responsive-nav {
        display: block;
        height: 60px;
    }

    .page-content {
        width: 100%;
    }

    .Modern-Slider .info {
        text-align: center;
        right: 0px;
        padding: 0px 30px;
    }

    .Modern-Slider .NextArrow {
        outline: none;
        display: none;
        position: absolute;
        top: 120px;
        right: 50%;
        transform: translateX(50%);
        margin-right: -30px;
        width: 50px;
        height: 50px;
        background: rgba(0, 0, 0, .50);
        border: 0 none;
        text-align: center;
        font: 32px/50px FontAwesome;
        color: #FFF;
        z-index: 5;
    }

    .Modern-Slider .NextArrow:before {
        content: '\f105';
    }

    .Modern-Slider .PrevArrow {
        outline: none;
        position: absolute;
        top: 120px;
        left: 50%;
        transform: translateX(-50%);
        margin-left: -30px;
        width: 50px;
        height: 50px;
        background: rgba(0, 0, 0, .50);
        border: 0 none;
        text-align: center;
        font: 32px/50px FontAwesome;
        color: #FFF;
        z-index: 5;
    }



}

@media (max-width: 690px) {

    .section-heading p {
        position: relative;
    }

    #featured {
        padding-left: 15px;
        padding-right: 15px;
    }

    #featured .owl-nav {
        position: absolute;
        display: inline-block;
        top: -220px;
        right: 0;
    }

    #projects {
        padding-left: 15px;
        padding-right: 15px;
    }

    #video {
        padding-left: 15px;
        padding-right: 15px;
    }

    #blog {
        padding-left: 15px;
        padding-right: 15px;
    }

    #blog .tabs a {
        font-size: 13px;
    }

    #blog .tabgroup ul li img {
        float: none;
        width: 100%;
        margin-bottom: 15px;
    }

    #blog .tabgroup ul li .text-content {
        display: block;
    }

    #contact-content {
        padding-left: 15px;
        padding-right: 15px;
    }

}

.form-row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -5px;
    margin-left: -5px;
}

.advertise-links svg {
    width: 28px !important;
}

.advertise-links a {
    padding: 8px !important;
}

.auto-container {
    position: static;
    max-width: 1200px;
    padding: 0 5px;
    margin: 0 auto;
}

.content-container {
    position: relative;
    display: block;
    padding: 1rem 1rem 1rem 1rem;
    box-shadow: 0 20px 60px 0 rgba(0, 0, 0, .1);
    border-radius: 10px;
    margin-top: 20px;
    margin-bottom: 20px;
    background-color: #F2F3F5;
    color: #1a181b;
}

.narrow-container {
    position: relative;
    max-width: 900px;
    width: 100%;
    margin: 0 auto;
}

.search .btn {
    padding-top: 10px;
    padding-bottom: 10px;
    border: 1px solid !important;
}

.form-row>.col,
.form-row>[class*=col-] {
    padding-right: 5px;
    padding-left: 5px;
}

.form-group {
    margin-bottom: 1rem;
}

[type=button]:not(:disabled),
[type=reset]:not(:disabled),
[type=submit]:not(:disabled),
button:not(:disabled) {
    cursor: pointer;
}

.btn {
    text-decoration: none;
}

.btn-outline-dark {
    color: #343a40;
    border-color: #343a40;
}

[type=button],
[type=reset],
[type=submit],
button {
    -webkit-appearance: button;
}

button,
input,
select,
textarea {
    font-weight: 400;
    font-size: 15px;
}

button,
select {
    text-transform: none;
}

button,
input {
    overflow: visible;
}

.relative.inline-flex.items-center.px-2.py-2.text-sm.font-medium.text-gray-500.bg-white.border.border-gray-300.cursor-default.rounded-l-md.leading-5.dark\:bg-gray-800.dark\:border-gray-600 {
    padding: 4px 5px !important;
    margin-top: 2px;
    position: relative;
    top: 1px;
}

.pagination span[aria-disabled="true"] svg {
    color: #b4b4b4;
}

form .error {
    color: #930a2c;
    font-style: italic;
}

img {
    display: inline-block;
    max-width: 100%;
    height: auto;
}

.page-title {
    position: static;
    max-width: 1200px;
    padding: 0 15px;
    margin: 0 auto;
}

/*.h1, h1 {
    position: relative;
    margin: 0;
    transition: all .5s ease;
    font-family: "Roboto", sans-serif;
    line-height: 1.2;
}*/

.page-title h4 {
    padding-left: 40px;
    font-size: 1.25em;
    font-weight: 400;
    margin-left: 20px;
}

.bd-callout {
    padding: 1.25rem;
    margin-top: 1.25rem;
    margin-bottom: 1.25rem;
    border: 1px solid #e9ecef;
    border-left-width: .25rem;
    border-radius: .25rem;
}

.bd-callout-dark {
    border-left-color: #989ea4;
}

.bd-callout-danger {
    border-left-color: #c70d4f;
}

.bd-callout-info {
    border-left-color: #5bc0de;
}

.bd-callout-warning {
    border-left-color: #f0ad4e;
}

.navbar-collapse.collapse.in {
    display: block;
    visibility: visible;
}

.page-content a.btn.btn-primary,
.page-content a.btn.btn-danger {
    color: #fff !important;
}

.remove-filter {
    font-size: 18px;
    color: white;
    position: absolute;
    top: -15px;
    right: -6px;
    background: #930a2c;
    width: 20px;
    height: 20px;
    border-radius: 50%;
}

span.badge.bg-primary.filter-badge.p-2.position-relative {
    margin-right: 3px;
    margin-top: 5px;
}

span.search-result-count {
    font-size: 17px;
    color: #686767;
    font-weight: 600;
    margin-right: 11px;
}

a.reset-search {
    border: 1px solid;
    background: #fff;
    text-decoration: none;
    padding: 6px 8px;
    border-radius: 5px;
    position: absolute;
    right: 11px;
    bottom: 4px;
}

@media(max-width:500px) {
    span.badge.bg-primary.filter-badge.p-2.position-relative {
        margin-top: 19px;
    }
}

@media(max-width:1080px) {
    .sidebar-navigation.d-none.d-xl-block {
        display: block !important;
    }
}

@media(max-width:820px) {
    .sidebar-navigation.d-none.d-xl-block {
        display: none !important;
    }

    .page-content {
        /*  margin-top: 100px; 5/24 Jo to work with new nav*/
        max-width: 100%;
        width: 100%;
    }

    .responsive-nav i.fas.fa-sign-in-alt {
        right: 30px;
        position: relative;
        font-size: 26px;
        color: #fff;
    }
}

@media (max-width: 992px) {
    .responsive-nav {
        display: block !important;
    }
}

@media(max-width:600px) {
    #user_register .btn.btn-primary {
        display: block;
        margin-left: 0 !important;
        margin-top: 10px;
    }

    #user_register .flex.items-center.justify-end.mt-4 {
        display: block;
    }

    .bg-top-sub-nav {
        margin-top: 73px;
    }
}

/**
Barrel race near me page css
**/
.custom-btn {
    font-size: 14px;
    padding: 10px 15px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.btn-close-icon {
    position: absolute;
    top: 50%;
    right: -8px;
    transform: translateY(-50%);
    background-color: #930a2c;
    color: white;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 14px;
    cursor: pointer;
    top: -6px;
}


#map {
    height: 600px;
    width: 100%;
}

span.badge.bg-primary.filter-badge.p-2.position-relative {
    margin-right: 3px;
    margin-top: 5px;
}

a.reset-search {
    border: 1px solid;
    background: #fff;
    text-decoration: none;
    padding: 6px 8px;
    border-radius: 5px;
    position: absolute;
    right: 11px;
    bottom: 4px;
}

@media(max-width:500px) {
    span.badge.bg-primary.filter-badge.p-2.position-relative {
        margin-top: 19px;
    }
}

/** End of barrel races near me page css**/

hr.dotted {
    border-top: 1px dotted black;
    /* Applies a 1px dotted black border to the top */
}

/* Tunable scale for h1 icons */
:root {
    --h1-icon-scale: 1;
    /* bump h1 icons 20% larger than the text */
}

/* Global: make Lucide icons track the surrounding text size */
i[data-lucide],
svg[data-lucide] {
    width: 1em;
    height: 1em;
    vertical-align: middle;
    line-height: 1;
    /* Optional: let icons inherit text color */
    color: currentColor;
}

/* Utility spacing (optional) */
.icon {
    margin: 0 0.25em;
}

.icon-start {
    margin-right: 0.25em;
}

.icon-end {
    margin-left: 0.25em;
}

/* Only h1: scale icons up slightly for visual balance */
h1 i[data-lucide],
h1 svg[data-lucide] {
    width: calc(1em * var(--h1-icon-scale));
    height: calc(1em * var(--h1-icon-scale));
    position: relative;
    top: 0.05em;
    /* small nudge to center vertically */
}

h1 svg[data-lucide] {
    stroke-width: 1.75;
}

/* default is ~1.5 */

/* Style <select> menus to look like Bootstrap buttons */
/* Base select button */
select.btn {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding-right: 2rem;
    text-align: left;
    cursor: pointer;
    font-weight: 500;
    border: none;
    box-shadow: none;
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    background-size: 1rem;
}

/* btn.light red arrow */
select.btn.btn-light {
    background-image: url("data:image/svg+xml;utf8,<svg fill='%23c03' height='16' viewBox='0 0 24 24' width='16' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/></svg>");
}

/*  select.btn, white arrow */
select.btn,
select.btn.btn-secondary,
select.btn.btn-dark,
select.btn.btn-primary {
    background-image: url("data:image/svg+xml;utf8,<svg fill='%23fff' height='16' viewBox='0 0 24 24' width='16' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/></svg>");
}

/* Hover + focus red ring */
.btn:hover,
.btn:focus,
select.btn:hover,
select.btn:focus {
    outline: none !important;
    box-shadow: 0 0 0 0.1rem rgba(204, 0, 51, 1) !important;
}

/* Divider option */
select.btn option[disabled]:not(:first-child) {
    color: #930a2c;

    font-wei .chevron-toggle {
        transition: transform 0.3s ease;
    }

    .accordion-button[aria-expanded="true"] .chevron-toggle {
        transform: rotate(90deg);
    }

    /* ===========================================
   Global Icon Helpers updated today

   =========================================== */
    /* Generic lift, no color */
    .icon-lift {
        position: relative;
        top: -4px;
        /* nudge higher so it aligns with text */
    }

    /* Featured icon Ã¢â‚¬â€ red and lifted */
    .icon-featured {
        position: relative;
        top: -4px;
        color: #930a2c;
        /* brand override for danger red */
    }
