/* Reference composition: a 1024px artboard with proportional desktop sizing. */
@media (min-width: 992px) {
    :root {
        --u: clamp(1px, 0.09765625vw, 1.40625px);
    }
    html {
        scroll-padding-top: calc(85 * var(--u));
    }
    body {
        background: #fcfdfb;
    }
    .container {
        max-width: 1440px;
        padding-left: calc(29 * var(--u));
        padding-right: calc(29 * var(--u));
    }
    .utility,
    .utility .container {
        min-height: calc(35 * var(--u));
        height: calc(35 * var(--u));
    }
    .utility {
        font-size: calc(10 * var(--u));
    }
    .utility .icon {
        width: calc(16 * var(--u));
        height: calc(16 * var(--u));
    }
    .utility-contact {
        gap: calc(20 * var(--u));
    }
    .utility-contact > span:last-child {
        display: inline;
    }
    .utility i {
        margin: 0 calc(8 * var(--u));
    }
    .utility select {
        font-size: calc(10 * var(--u));
        min-height: 0;
    }
    .navbar {
        height: calc(77 * var(--u));
        min-height: 0;
        gap: calc(11 * var(--u));
        padding-top: 0;
        padding-bottom: 0;
    }
    .navbar-brand {
        margin-right: auto;
    }
    .navbar-brand img {
        width: calc(200 * var(--u));
        height: calc(74 * var(--u));
        object-fit: contain;
    }
    .desktop-nav {
        display: flex;
        gap: calc(19 * var(--u));
    }
    .nav-link {
        font-size: calc(10 * var(--u));
        min-height: calc(36 * var(--u));
        padding: calc(8 * var(--u)) 0;
    }
    .menu-toggle {
        display: none;
    }
    .header-apply {
        display: block;
    }
    .search-toggle {
        width: calc(27 * var(--u));
        height: calc(40 * var(--u));
    }
    .search-toggle .icon {
        width: calc(19 * var(--u));
        height: calc(19 * var(--u));
    }
    .header-apply .btn {
        width: calc(109 * var(--u));
        padding: 0;
        min-height: calc(34 * var(--u));
        font-size: calc(11 * var(--u));
    }
    .btn {
        min-height: calc(35 * var(--u));
        padding: calc(8 * var(--u)) calc(19 * var(--u));
        font-size: calc(11 * var(--u));
        gap: calc(8 * var(--u));
        border-radius: calc(5 * var(--u));
    }
    .btn .icon {
        width: calc(17 * var(--u));
        height: calc(17 * var(--u));
    }
    .hero {
        background: linear-gradient(100deg, #f7fbf4, #fbf9e7);
    }
    .hero-layout {
        height: calc(362 * var(--u));
        min-height: 0;
        padding-bottom: calc(54 * var(--u));
        grid-template-columns: 39% 48% 13%;
        align-items: start;
    }
    .hero-copy {
        padding-top: calc(27 * var(--u));
        padding-bottom: 0;
        z-index: 2;
    }
    .eyebrow {
        font-size: calc(13 * var(--u));
        letter-spacing: calc(0.6 * var(--u));
        margin-bottom: 0;
        line-height: 1.25;
    }
    h1 {
        font-size: calc(58 * var(--u));
        line-height: 0.95;
        letter-spacing: calc(-2.3 * var(--u));
        font-weight: 800;
    }
    .hero-description {
        font-size: calc(14 * var(--u));
        line-height: 1.4;
        margin: calc(6 * var(--u)) 0 0;
        max-width: calc(367 * var(--u));
        color: #111;
    }
    .hero-art {
        inset: 0 0 0 26%;
        mask-image: linear-gradient(to right, transparent 0%, black 16%, black 100%);
    }
    .family {
        object-position: center center;
        object-fit: cover;
    }
    .hero-copy {
        width: calc(373 * var(--u));
    }
    .highlights {
        margin: calc(10 * var(--u)) 0 calc(13 * var(--u));
        gap: calc(12 * var(--u));
    }
    .highlights span {
        font-size: calc(19 * var(--u));
        gap: calc(6 * var(--u));
    }
    .highlights .icon {
        width: calc(37 * var(--u));
        height: calc(37 * var(--u));
        padding: calc(2 * var(--u));
    }
    .highlights b {
        font-size: calc(15 * var(--u));
    }
    .hero-actions {
        gap: calc(10 * var(--u));
        flex-wrap: nowrap;
    }
    .hero-actions .btn {
        padding: calc(8 * var(--u)) calc(14 * var(--u));
        font-size: calc(11 * var(--u));
        min-height: calc(35 * var(--u));
    }
    .hero-actions .btn:first-child {
        width: calc(175 * var(--u));
    }
    .hero-actions .btn:last-child {
        width: calc(158 * var(--u));
    }
    .hero-benefits {
        display: block;
        grid-column: 3;
        padding: 0 0 0 calc(8 * var(--u));
        z-index: 2;
    }
    .hero-benefits .dream {
        position: absolute;
        right: calc(163 * var(--u));
        top: calc(4 * var(--u));
        font-family: Georgia, serif;
        font-size: calc(24 * var(--u));
        font-style: italic;
        line-height: 1.03;
        transform: rotate(-8deg);
        margin: 0;
        color: #00552e;
    }
    .hero-benefits > div:not(.growth-seal) {
        font-size: calc(9 * var(--u));
        gap: calc(6 * var(--u));
        margin: 0 0 calc(9 * var(--u));
        min-height: calc(35 * var(--u));
        white-space: nowrap;
    }
    .hero-benefits .icon {
        width: calc(35 * var(--u));
        height: calc(35 * var(--u));
        padding: calc(2 * var(--u));
    }
    .growth-seal {
        width: calc(82 * var(--u));
        height: calc(82 * var(--u));
        font-size: calc(9 * var(--u));
        padding-top: calc(12 * var(--u));
        margin: calc(11 * var(--u)) 0 0 calc(33 * var(--u));
        border-width: calc(3 * var(--u));
        outline-width: calc(2 * var(--u));
        background: radial-gradient(#fff2b7 25%, #e7ba51 74%, #ffde8d);
    }
    .benefit-section {
        margin-top: calc(-54 * var(--u));
    }
    .benefit-grid {
        height: calc(130 * var(--u));
        padding: calc(13 * var(--u)) 0;
        border-radius: calc(7 * var(--u));
    }
    .benefit {
        padding: 0 calc(22 * var(--u));
    }
    .benefit > .icon {
        width: calc(49 * var(--u));
        height: calc(49 * var(--u));
        padding: 0;
        margin-bottom: calc(4 * var(--u));
    }
    .benefit h2 {
        font-size: calc(14 * var(--u));
        line-height: 1.2;
        margin-bottom: calc(5 * var(--u));
        letter-spacing: calc(-0.3 * var(--u));
    }
    .benefit p {
        font-size: calc(12 * var(--u));
        line-height: 1.25;
        max-width: calc(160 * var(--u));
    }
    h2 {
        font-size: calc(21 * var(--u));
        letter-spacing: calc(-0.45 * var(--u));
    }
    .section {
        padding-top: calc(12 * var(--u));
        padding-bottom: 0;
    }
    .section-heading {
        gap: calc(15 * var(--u));
        margin-bottom: calc(9 * var(--u));
        align-items: center;
    }
    .section-heading p {
        font-size: calc(12 * var(--u));
        margin-top: calc(3 * var(--u));
        line-height: 1.4;
    }
    .loans .section-heading {
        height: calc(41 * var(--u));
        margin-bottom: calc(9 * var(--u));
    }
    .loans .row {
        --bs-gutter-x: calc(9 * var(--u));
        --bs-gutter-y: calc(9 * var(--u));
    }
    .loan-card {
        height: calc(152 * var(--u));
        border-radius: calc(7 * var(--u));
    }
    .loan-photo {
        height: calc(81 * var(--u));
        width: 100%;
        object-fit: cover;
    }
    .loan-body {
        gap: calc(9 * var(--u));
        padding: calc(7 * var(--u)) calc(11 * var(--u)) 0;
    }
    .loan-body > .icon {
        width: calc(29 * var(--u));
        height: calc(29 * var(--u));
    }
    .loan-body h3 {
        font-size: calc(9 * var(--u));
        line-height: 1.2;
        min-height: 0;
        margin-top: calc(3 * var(--u));
        letter-spacing: calc(-0.2 * var(--u));
    }
    .loan-body p {
        font-size: calc(8 * var(--u));
        line-height: 1.35;
        margin-top: calc(6 * var(--u));
        white-space: nowrap;
        letter-spacing: calc(-0.2 * var(--u));
    }
    .text-button {
        font-size: calc(8.5 * var(--u));
        min-height: calc(23 * var(--u));
        padding: calc(5 * var(--u)) 0;
        gap: calc(4 * var(--u));
        margin-top: calc(2 * var(--u));
    }
    .text-button .icon {
        width: calc(12 * var(--u));
        height: calc(12 * var(--u));
    }
    .mission {
        height: calc(77 * var(--u));
        min-height: 0;
        margin-top: calc(15 * var(--u));
        padding: 0 calc(28 * var(--u)) 0 0;
        gap: calc(20 * var(--u));
        border-radius: calc(6 * var(--u));
        flex-wrap: nowrap;
    }
    .mission > img {
        width: calc(156 * var(--u));
        height: 100%;
        object-fit: cover;
        mask-image: linear-gradient(to right, black 78%, transparent);
    }
    .mission h2 {
        font-size: calc(20 * var(--u));
        line-height: 1.18;
        flex: 0 0 calc(285 * var(--u));
        letter-spacing: calc(-0.5 * var(--u));
    }
    .mission p {
        max-width: none;
        flex: 1;
        font-size: calc(12 * var(--u));
        line-height: 1.5;
        padding-left: calc(20 * var(--u));
        border-left: 1px solid #ffffff25;
    }
    .mission .btn {
        padding: calc(8 * var(--u)) calc(19 * var(--u));
        font-size: calc(11 * var(--u));
    }
    .overview {
        display: grid;
        grid-template-columns: 34% 43% 21%;
        gap: 1%;
        height: calc(160 * var(--u));
        min-height: 0;
        padding-top: calc(12 * var(--u));
        align-items: stretch;
    }
    .pay-block {
        border-right: 1px solid #e8eae5;
        gap: calc(7 * var(--u));
        min-width: 0;
        overflow: hidden;
    }
    .phone-mockup {
        width: 49%;
        height: calc(153 * var(--u));
        max-width: none;
        object-fit: contain;
    }
    .pay-block h2 {
        font-size: calc(26 * var(--u));
        letter-spacing: calc(-1.2 * var(--u));
    }
    .pay-block h3 {
        font-size: calc(12 * var(--u));
        margin: calc(8 * var(--u)) 0;
    }
    .pay-block p {
        font-size: calc(9 * var(--u));
        line-height: 1.35;
        max-width: calc(170 * var(--u));
    }
    .store-links {
        margin-top: calc(10 * var(--u));
        gap: calc(4 * var(--u));
        flex-wrap: nowrap;
    }
    .store-links img {
        width: calc(76 * var(--u));
        height: calc(26 * var(--u));
    }
    .store-links button {
        min-height: calc(28 * var(--u));
    }
    .statistics {
        padding: calc(7 * var(--u)) calc(5 * var(--u)) 0;
    }
    .statistics h2 {
        font-size: calc(18 * var(--u));
        margin-bottom: calc(11 * var(--u));
        letter-spacing: calc(-0.3 * var(--u));
    }
    .stats-grid {
        gap: calc(9 * var(--u));
    }
    .stats-grid > div {
        height: calc(98 * var(--u));
        padding: calc(8 * var(--u)) calc(2 * var(--u));
    }
    .stats-grid .icon {
        width: calc(37 * var(--u));
        height: calc(37 * var(--u));
        margin-bottom: calc(6 * var(--u));
    }
    .stats-grid strong {
        font-size: calc(16 * var(--u));
        line-height: 1.2;
    }
    .stats-grid span {
        font-size: calc(9 * var(--u));
        margin-top: calc(4 * var(--u));
        white-space: nowrap;
        letter-spacing: calc(-0.25 * var(--u));
    }
    .story {
        min-height: 0;
        grid-column: auto;
        height: calc(147 * var(--u));
        border-radius: calc(6 * var(--u));
    }
    .story > img {
        width: 100%;
        object-fit: cover;
        object-position: center;
    }
    .story > span {
        margin: 0;
        font-size: calc(11 * var(--u));
        gap: calc(8 * var(--u));
    }
    .story .icon {
        width: calc(42 * var(--u));
        height: calc(42 * var(--u));
    }
    .testimonial-layout {
        padding-top: calc(18 * var(--u));
        grid-template-columns: 73.5% 25%;
        gap: 1.5%;
        height: calc(182 * var(--u));
    }
    .testimonial-area {
        position: relative;
    }
    .testimonial-area .section-heading {
        height: calc(27 * var(--u));
        margin-bottom: calc(7 * var(--u));
    }
    .testimonial-area h2 {
        font-size: calc(19 * var(--u));
    }
    .slider-controls {
        position: absolute;
        left: calc(-10 * var(--u));
        right: calc(-7 * var(--u));
        top: calc(73 * var(--u));
        justify-content: space-between;
        z-index: 2;
        pointer-events: none;
    }
    .slider-controls button {
        pointer-events: auto;
        background: white;
        box-shadow: var(--shadow);
        width: calc(24 * var(--u));
        height: calc(30 * var(--u));
    }
    .slider-controls .icon {
        width: calc(13 * var(--u));
        height: calc(13 * var(--u));
    }
    .testimonial-viewport {
        padding: calc(5 * var(--u)) calc(18 * var(--u)) calc(12 * var(--u));
    }
    .testimonial-track {
        gap: 14px;
    }
    .testimonial {
        flex-basis: calc((100% - 28px) / 3);
        padding: calc(11 * var(--u)) calc(10 * var(--u));
        gap: calc(10 * var(--u));
        height: calc(115 * var(--u));
        min-height: 0;
        box-shadow: 0 2px 12px #163c2410;
    }
    .customer-photo {
        width: calc(46 * var(--u));
        height: calc(46 * var(--u));
    }
    .testimonial blockquote {
        font-size: calc(9 * var(--u));
        line-height: 1.45;
        margin-bottom: calc(4 * var(--u));
        letter-spacing: calc(-0.1 * var(--u));
    }
    .testimonial strong,
    .testimonial small {
        font-size: calc(9 * var(--u));
        line-height: 1.3;
    }
    .testimonial strong {
        margin-top: calc(6 * var(--u));
    }
    .stars .icon {
        width: calc(13 * var(--u));
        height: calc(13 * var(--u));
    }
    .goals {
        padding: calc(15 * var(--u));
        height: calc(164 * var(--u));
        min-height: 0;
        border-radius: calc(6 * var(--u));
    }
    .goals h2 {
        font-size: calc(18 * var(--u));
        line-height: 1.2;
    }
    .goals p {
        font-size: calc(11 * var(--u));
        line-height: 1.4;
        margin: calc(8 * var(--u)) 0 calc(12 * var(--u));
    }
    .goals-art {
        width: calc(105 * var(--u));
        height: calc(105 * var(--u));
        opacity: 0.35;
    }
    .partners {
        padding-top: calc(8 * var(--u));
        padding-bottom: calc(18 * var(--u));
    }
    .partners h2 {
        font-size: calc(18 * var(--u));
        line-height: calc(22 * var(--u));
    }
    .partner-grid {
        grid-template-columns: repeat(7, 1fr) 0.8fr;
        gap: calc(7 * var(--u));
        margin-top: calc(10 * var(--u));
    }
    .partner-grid > div {
        height: calc(60 * var(--u));
        min-height: 0;
        font-size: calc(15 * var(--u));
        padding: calc(8 * var(--u));
        border-radius: calc(5 * var(--u));
    }
    .partner-grid .partner-more {
        font-size: calc(9 * var(--u));
        color: #666;
        font-weight: 400;
    }
    footer {
        padding-top: calc(18 * var(--u));
        font-size: calc(12 * var(--u));
        min-height: calc(224 * var(--u));
    }
    .footer-grid {
        grid-template-columns: 17% 14% 18% 22% 29%;
        gap: 0;
        height: calc(150 * var(--u));
        font-size: calc(12 * var(--u));
    }
    .footer-grid > div:not(:first-child) {
        border-left: 1px solid #ffffff24;
        padding-left: calc(26 * var(--u));
    }
    .footer-grid > div:nth-child(2) {
        border: 0;
        padding-left: calc(18 * var(--u));
    }
    .footer-grid > div:last-child {
        grid-column: auto;
    }
    .footer-logo {
        grid-row: auto;
    }
    .footer-logo img {
        width: calc(146 * var(--u));
        height: calc(139 * var(--u));
        object-fit: contain;
    }
    .footer-grid h2 {
        font-size: calc(12 * var(--u));
        margin-bottom: calc(7 * var(--u));
        letter-spacing: 0;
    }
    .footer-grid a,
    .footer-grid > div > button {
        font-size: calc(11 * var(--u));
        min-height: calc(17 * var(--u));
        line-height: 1.5;
    }
    .contact .icon {
        width: calc(15 * var(--u));
        height: calc(15 * var(--u));
        margin-right: calc(5 * var(--u));
    }
    .contact p,
    .contact a {
        font-size: calc(11 * var(--u));
        margin-bottom: calc(6 * var(--u));
        min-height: 0;
    }
    .socials {
        gap: calc(10 * var(--u));
        margin-bottom: calc(11 * var(--u));
    }
    .socials button {
        min-height: calc(25 * var(--u));
        min-width: calc(26 * var(--u));
    }
    .socials .icon {
        width: calc(23 * var(--u));
        height: calc(23 * var(--u));
    }
    .newsletter-title {
        margin-top: calc(3 * var(--u));
    }
    .newsletter-input {
        height: calc(35 * var(--u));
        margin-right: calc(11 * var(--u));
    }
    .newsletter-input input {
        font-size: calc(10 * var(--u));
        padding: calc(10 * var(--u));
    }
    .newsletter-input .btn {
        padding: calc(8 * var(--u)) calc(12 * var(--u));
    }
    .footer-bottom {
        margin-top: 0;
        padding: calc(10 * var(--u)) 0 0;
        height: calc(55 * var(--u));
        font-size: calc(10 * var(--u));
        gap: calc(10 * var(--u));
        flex-wrap: nowrap;
        align-items: flex-start;
    }
    .footer-bottom button {
        min-height: 0;
        padding: calc(4 * var(--u)) calc(10 * var(--u));
        font-size: calc(10 * var(--u));
    }
    .footer-bottom > span {
        padding-top: calc(4 * var(--u));
    }
    .footer-bottom > div {
        margin-left: auto;
        margin-right: calc(35 * var(--u));
    }
}
@media (max-width: 991px) {
    .partner-more {
        font-size: 12px !important;
        font-weight: 400 !important;
        color: #666 !important;
    }
}
body {
    font-family: Roboto, Arial, Helvetica, sans-serif;
}
.partner-grid img {
    max-width: 100%;
    width: auto;
    height: 30px;
    object-fit: contain;
}
.customer-photo {
    object-position: 50% 24%;
}
@media (min-width: 992px) {
    .hero-art {
        left: 17%;
        right: 13%;
        mask-image: linear-gradient(to right, transparent, black 22%, black 95%, transparent);
    }
    .family {
        object-position: 50% 44%;
    }
    .hero:after {
        content: none;
    }
    .hero-copy {
        width: calc(375 * var(--u));
    }
    .hero-description {
        max-width: calc(365 * var(--u));
    }
    .hero-actions {
        margin-top: calc(1 * var(--u));
    }
    .highlights {
        margin-bottom: calc(10 * var(--u));
    }
    .partner-grid img {
        height: calc(32 * var(--u));
        max-width: 100%;
        width: auto;
    }
    .partner-grid > div {
        overflow: hidden;
    }
    .partner-grid > div:first-child img {
        height: calc(25 * var(--u));
        max-width: calc(75 * var(--u));
    }
    .partner-grid > div:nth-child(2) img {
        height: auto;
        width: calc(90 * var(--u));
    }
    .partner-grid > div:nth-child(5) img {
        height: calc(34 * var(--u));
    }
    .partner-grid > div:nth-child(7) img {
        height: calc(33 * var(--u));
    }
    .phone-mockup {
        width: 49%;
        height: calc(167 * var(--u));
        object-position: 50% 0;
    }
    .testimonial strong {
        font-size: calc(10 * var(--u));
    }
    .testimonial blockquote {
        font-size: calc(9.5 * var(--u));
    }
    .loan-body h3 {
        font-size: calc(9.5 * var(--u));
    }
    .hero-benefits > div:not(.growth-seal) {
        font-size: calc(9.5 * var(--u));
    }
    .testimonial-viewport {
        padding-top: 0;
    }
    .partners {
        padding-top: calc(5 * var(--u));
    }
    .footer-grid {
        grid-template-columns: 17% 14% 18% 23% 28%;
    }
    .footer-grid > div:nth-child(4) {
        padding-left: calc(28 * var(--u));
    }
    footer {
        background: #003f25;
    }
}
@media (min-width: 992px) {
    .hero-art .family {
        position: absolute;
        top: calc(-94 * var(--u));
        height: calc(490 * var(--u));
        width: 100%;
        object-fit: cover;
        object-position: 50% 50%;
    }
    .hero-copy {
        z-index: 3;
    }
    .hero-benefits {
        z-index: 3;
    }
}
@media (min-width: 992px) {
    .navbar-brand img {
        object-fit: cover;
    }
    .desktop-nav {
        gap: calc(20 * var(--u));
    }
    .nav-link {
        font-size: calc(11 * var(--u));
    }
    h1 {
        font-size: calc(61 * var(--u));
        line-height: 0.89;
    }
    h1 span {
        display: inline-block;
        font-size: calc(64 * var(--u));
        letter-spacing: calc(-1.8 * var(--u));
        transform: scaleX(1.06);
        transform-origin: left;
    }
    .hero-description {
        margin-top: 0;
    }
    .hero-art {
        left: 19%;
        right: 17%;
    }
    .hero-art .family {
        height: calc(400 * var(--u));
        top: calc(-74 * var(--u));
    }
    .footer-logo img {
        width: calc(150 * var(--u));
        height: calc(150 * var(--u));
        margin-top: calc(-4 * var(--u));
    }
    .site-header {
        background: #fff;
    }
    .customer-photo {
        object-view-box: inset(2% 34% 51% 34%);
    }
    .testimonial:nth-child(2) .customer-photo {
        object-view-box: inset(0 33% 53% 33%);
    }
}

#storyVideo {
    display: block;
    width: 100%;
    aspect-ratio: 16/9;
    background: #003f25;
    border-radius: 6px;
}
@media (min-width: 992px) {
    .hero-art {
        mask-image: linear-gradient(to right, transparent, black 32%, black 95%, transparent);
    }
    .hero-benefits {
        padding-top: calc(4 * var(--u));
    }
    .testimonial-viewport {
        padding-right: 0;
    }
}
/* Consistent, restrained interaction states; no jumping cards or layout shifts. */
.btn {
    transition:
        background-color 0.18s ease,
        color 0.18s ease,
        box-shadow 0.18s ease,
        border-color 0.18s ease;
}
.btn-green:hover,
.btn-green:focus-visible,
.btn-green:active {
    color: #fff;
    background: #004b2b;
    border-color: transparent;
    box-shadow: 0 4px 12px #003f2530;
}
.btn-gold:hover,
.btn-gold:focus-visible,
.btn-gold:active {
    color: #153426;
    background: #f0c665;
    border-color: transparent;
    box-shadow: 0 4px 12px #ac80252b;
}
.btn-outline:hover,
.btn-outline:focus-visible {
    color: var(--green);
    background: #fff9e8;
    border-color: #b58a2e;
}
.loan-card {
    transition: box-shadow 0.2s ease;
}
.loan-card:hover {
    transform: none;
    box-shadow: 0 5px 18px #163c241b;
}
.text-button:hover,
.text-button:focus-visible {
    color: var(--green);
    text-decoration: underline;
    text-underline-offset: 3px;
}
.desktop-nav .nav-link {
    position: relative;
    color: #17271f;
    transition: color 0.18s ease;
}
.desktop-nav .nav-link::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 2px;
    background: var(--gold);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.18s ease;
    pointer-events: none;
}
.desktop-nav .nav-link:hover,
.desktop-nav .nav-link:focus-visible,
.desktop-nav .nav-link.show,
.desktop-nav .nav-link.active {
    color: var(--green);
}
.desktop-nav .nav-link:hover::before,
.desktop-nav .nav-link:focus-visible::before,
.desktop-nav .nav-link.show::before,
.desktop-nav .nav-link.active::before {
    transform: scaleX(1);
}
.dropdown-menu {
    --bs-dropdown-link-active-bg: #eaf3ed;
    --bs-dropdown-link-active-color: #00552e;
    min-width: 205px;
    padding: 7px;
    border: 1px solid #e2eae3;
    border-top: 2px solid var(--gold);
    border-radius: 8px;
    box-shadow: 0 10px 28px #003f251c;
}
.dropdown-menu .dropdown-item {
    min-height: 44px;
    padding: 10px 12px;
    border-radius: 4px;
    font-size: 13px;
    color: #234333;
    white-space: nowrap;
    transition:
        background-color 0.15s ease,
        color 0.15s ease;
}
.dropdown-menu .dropdown-item:hover,
.dropdown-menu .dropdown-item:focus,
.dropdown-menu .dropdown-item:active {
    color: var(--green);
    background: #eaf3ed;
}
.desktop-nav .dropdown-menu.show {
    animation: submenu-reveal 0.16s ease-out;
}
@keyframes submenu-reveal {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}
.offcanvas .nav-link:hover,
.offcanvas .nav-link:focus-visible {
    color: var(--green);
    background: #edf5ef;
    border-radius: 5px;
}
footer a:hover,
footer button:not(.btn):hover,
.utility a:hover {
    color: #f2ce78;
}
footer .socials button:hover {
    opacity: 0.8;
}
.slider-controls .icon-button:hover {
    background: #eaf3ed;
    box-shadow: 0 3px 10px #003f2520;
}
@media (hover: none) {
    .loan-card:hover {
        box-shadow: var(--shadow);
    }
}

.desktop-nav .dropdown .nav-link.dropdown-toggle:hover,
.desktop-nav .dropdown .nav-link.dropdown-toggle:focus,
.desktop-nav .dropdown .nav-link.dropdown-toggle:active,
.desktop-nav .dropdown .nav-link.dropdown-toggle.show {
    border: none !important;
    border-color: transparent !important;
    outline: none !important;
    box-shadow: none !important;
}
