 * {
     margin: 0;
     padding: 0;
     box-sizing: border-box;
}
html {
    scroll-behavior: smooth;
    scroll-padding-top: 100px;
}
body {
     font-family: 'Overpass', sans-serif;
     color: #1D2858!important;
     margin-top: 105px!important;
}
a {
    color:#1d2858 !important;
    text-decoration: underline;
}
a:hover {
    color:#A6192E !important;
}
th, td {
    padding-left: 10px;
    padding-right: 30px;
    vertical-align: top;
}

.plain-content {
    padding-bottom: 10px;
    padding-left: 10%;
    padding-right: 10%;
}

 .container {
     max-width: 1200px;
     padding-left: 40px;
     padding-right: 40px;
}
 .container-narrow {
     max-width: 820px;
     margin: 0 auto;
     padding-left: 40px;
     padding-right: 40px;
}
 .block-bg, .block-bg img{
     position: absolute;
     top: 0;
     left: 0;
     right: 0;
     bottom: 0;
     z-index: 1;
}
.block-bg {
    background-color: #1D2858;
}
 .block-bg img {
     width: 100%;
     height: 100%;
     object-fit: cover;
}
 .bg-navy {
     background-color: #1D2858!important;
}
 .bg-navy h1 {
     color: #ffffff!important;
}
 .bg-red {
     background-color: #c41e3a!important;
}
 .bg-light-gray {
     background-color: #F4F3F6!important;
}
 .bg-white {
     background-color: #ffffff!important;
}
 .color-white {
     color: #ffffff!important;
}
 .color-navy {
     color: #1D2858!important;
}
 .text-uppercase {
     text-transform: uppercase!important;
}
 .link-arrow {
     display: inline-flex;
     font-family: "Overpass";
     align-items: center;
     margin: 0 auto;
     gap: 16px;
     color: #1D2858;
     text-decoration: none;
     line-height: 1.5;
     transition: all 0.3s ease;
}
 .link-arrow .text {
     text-decoration: underline;
     text-underline-offset: 4px;
     transition: all 0.3s ease;
     font-weight: 900;
}
 .link-arrow .arrow {
     width: 20px;
     height: 20px;
     background: #c41e3a;
     display: flex;
     align-items: center;
     justify-content: center;
     color: #ffffff;
     font-size: 18px;
     transition: all 0.3s ease;
}
 .link-arrow:hover .arrow {
     transform: translateX(2px);
}
 .link-arrow:hover .text,
 .link-arrow:hover .text.color-white {
     color: #c41e3a!important;
}
 h1 {
    font-size: clamp(2.8125rem, -2.0913rem + 10.2163vw, 8.125rem);
    font-weight: 900;
     font-family: 'Overpass', sans-serif;
}
 h2 {
    font-size: clamp(1.375rem, -0.125rem + 3.125vw, 3rem);
    font-weight: 900;
     font-family: 'Overpass', sans-serif;
}
 h3 {
    font-size: clamp(1.25rem, 0.7885rem + 0.9615vw, 1.75rem);
    font-weight: 900;
     font-family: 'Overpass', sans-serif;
}

/* Header */
 .navbar {
     padding: 20px 40px;
     display: flex;
     justify-content: space-between;
     align-items: center;
     box-shadow: 0 4px 10px rgba(0, 0, 0, .2);
}
 .navbar-brand img {
     width: 84px;
     height: auto;
     transition: .2s ease-in-out;
}
.navbar-brand:hover img {
    transform: scale(1.03);
}
.nav-submenu {
  width: auto;
  min-width: 120px;
  gap: 4px;
  position: absolute;
  left: -15px;
  top: 100%;
  display: flex;
  flex-direction: column;
  background-color: #fff;
  list-style: none;
  padding: 15px 30px 15px 15px;
}

.nav-submenu a {
    font-weight: 500;
}
.nav-submenu a:hover {
    color: #c41e3a;
}

 .header-buttons {
     display: flex;
     gap: 32px;
     margin-left: 64px;
}
 .header-buttons .btn.active {
     background-color: #1d2858;
     color: #fff;
}
 .btn {
     padding: 10px 20px!important;
     border: 2px solid #1D2858!important;
     background:#1D2858!important;
     border-radius: 0!important;
     color: #ffffff!important;
     font-size: 12px!important;
     font-weight: 600!important;
     text-transform: uppercase!important;
     letter-spacing: 1px!important;
     cursor: pointer!important;
     text-decoration: none!important;
     transition: all 0.3s ease!important;
}
 .btn:hover {
     background: #c41e3a!important;
     border-color: #c41e3a!important;
     color: #ffffff!important;
}
 .btn-primary {
     background: #c41e3a!important;
     border-color: #c41e3a!important;
     color: #ffffff!important;
}
 .btn-primary:hover {
     background: #a01830!important;
     border-color: #a01830!important;
     color: #ffffff!important;
}
 .navbar-nav {
     display: flex;
}
 .navbar-nav li a {
     color: #1D2858;
     opacity: 1;
     padding: 14px;
     text-decoration: none;
     font-size: 13px;
     font-weight: 900;
     text-transform: uppercase;
     letter-spacing: 1px;
     position: relative;
     transition: color 0.3s ease;
}
 .navbar-nav li a::after {
     content: '';
     display: block;
     width: 0px;
     height: 3px;
     background: #c41e3a;
     transition: width 0.3s ease;
     position: absolute;
     left: 50%;
     bottom: -8px;
     transform: translateX(-50%);
     transform-origin: center;
}
.nav-dropdown-toggle {
  appearance: none;
  border: 0;
  background: none;
  padding: 10px 34px 10px 0;
}
 .navbar-nav li.active a.active.nav-item-link::after, nav li a.nav-item-link:hover::after {
     width: 16px;
}

/* nav li.active a:hover::after {
     width: 100%;
}
 */
/* Hero Section */
 .home-hero {
     position: relative;
     overflow: hidden;
     padding: clamp(12.5rem, 0.9615rem + 24.0385vw, 25rem) 0;
}
 .home-hero .hero-bg {
     position: absolute;
     top: 0;
     left: 0;
     right: 0;
     bottom: 0;
     z-index: 1;
     background-color: #1D2858;
}
 .home-hero .hero-bg img {
     position: absolute;
     top: 0;
     left: 0;
     right: 0;
     bottom: 0;
     object-fit: cover;
     width: 100%;
     height: 100%;
}
 .home-hero .hero-content {
     position: relative;
     z-index: 10;
     max-width: 1033px;
}
 .home-hero .hero-content h2 {
     font-weight: 900!important;
     color: #ffffff!important;
     line-height: 1;
     text-shadow: 0px 3px 18px rgba(0,0,0,0.38);
     font-size: clamp(2.8125rem, -2.0913rem + 10.2163vw, 8.125rem)!important;
}
 .home-hero .hero-content p {
     font-size: clamp(1rem, -0.8462rem + 3.8462vw, 3rem)!important;
     line-height: 1;
     color: #ffffff!important;
     margin-top: 20px;
     text-shadow: 0px 3px 10px rgba(0,0,0,0.6);
}
 .home-hero .small-shape-accent {
     position: absolute;
     bottom: 0;
     left: 0;
     width: 70%;
     max-width: 773px;
     height: auto;
     z-index: 20;
}
/* Introduction Section */
 .intro {
     text-align: center;
     margin: 0 auto;
     position: relative;
     overflow: hidden;
}
 .intro h2 {
     font-size: clamp(1.375rem, -0.125rem + 3.125vw, 3rem);
     font-weight: 400;
     margin-bottom: 30px;
     line-height: 1.3;
}
 .intro h2 strong {
     font-weight: 900;
}
 .intro p {
     font-size: clamp(1.125rem, 1.0096rem + 0.2404vw, 1.25rem);
     line-height: 1.8;
}
 .intro .small-shape-accent {
     position: relative;
     width: 70%;
     max-width: 773px;
     height: auto;
     margin-bottom: 60px;
}
 .intro .large-shape-accent {
     position: relative;
     margin-left: -10px;
     width: calc(100% + 20px);
     height: auto;
    /* opacity: 0.1;
     */
     margin-top: 40px;
}
.intro .link-arrow {
    font-size: 24px;
}
/* Features Section */
 .features {
     padding: 80px 0;
}
 .features h2 {
     text-align: center;
     /*font-size: 28px;*/
     color: #1D2858;
     margin-bottom: 60px;
     letter-spacing: 2px;
}
 .features h2::after {
     content: '';
     display: block;
     width: 154px;
     height: 8px;
     background: #c41e3a;
     margin: 20px auto 0;
}
 .features-grid {
     margin: 0 auto;
     display: flex;
     flex-direction: column;
}
 .feature-item .container {
     display: grid;
     grid-template-columns: 1.25fr 1fr;
     gap: 60px;
     align-items: center;
     padding-top: 55px;
     padding-bottom: 55px;
}
.feature-item .link-arrow span {
    text-transform: uppercase;
}
 .feature-image {
     position: relative;
}
 .feature-image img {
     width: 100%;
     object-fit: cover;
     border-radius: 35px 0;
     box-shadow: 0 3px 5px rgba(0,0,0,0.2);
     aspect-ratio: 489 / 312;
}
 .feature-content h3 {
     font-size: clamp(1.125rem, 0.7788rem + 0.7212vw, 1.5rem);
     font-weight: 700;
     color: #1D2858;
     margin-bottom: 20px;
}
 .feature-content h3::after {
     content: '';
     display: block;
     width: 52px;
     height: 8px;
     background: #c41e3a;
     margin: 15px 0 0;
}
 .feature-content p {
     margin-bottom: 25px;
     line-height: 1.8;
}
 .feature-content .arrow-link {
     display: inline-block;
}
/* Partners Section */
 .partners {
     padding: 100px 0;
     text-align: center;
     position: relative;
}
 .partners .container {
     position: relative;
     z-index: 10;
}
 .partners-overlay {
     position: absolute;
     mix-blend-mode: multiply;
     top: 0;
     left: 0;
     right: 0;
     bottom: 0;
     background-color: #B3B0C4;
}
 .partners h2 {
     font-weight: 600;
     margin-bottom: 50px;
     text-shadow: 0 0 3px rgba(0, 0, 0, .15);
}
 .partners h2::after {
     content: '';
     display: block;
     width: 154px;
     height: 8px;
     background: #c41e3a;
     margin: 20px auto 0;
}
 .partners-grid {
     max-width: 1000px;
     margin: 0 auto;
     display: flex;
     flex-wrap: wrap;
     justify-content: center;
     align-items: center;
     gap: 40px 60px;
}
 .partner-logo {
     height: clamp(4.0625rem, -0.3426rem + 9.1772vw, 7.6875rem);
     width: clamp(7.1875rem, 2.6305rem + 9.4937vw, 10.9375rem);
}
 .partner-logo img {
     width: 100%;
     height: 100%;
     filter: grayscale(1);
     object-fit: contain;
     transition: 0.3s ease;
}
 .partner-logo:hover img {
     filter: grayscale(0);
}
 .partners .top-shape svg {
     position: absolute;
     top: 0;
     right: 0;
     width: 100%;
     max-width: clamp(7.5625rem, -2.1875rem + 20.3125vw, 18.125rem);
     height: auto;
     z-index: 5;
     transform: translateY(-50%);
}
/* News Section */
 .news {
     padding: 80px 40px;
}
 .news h2 {
     text-align: center;
     font-weight: 700;
     text-shadow: 0 0 5px rgba(0, 0, 0, .45)
     color: #1D2858;
     margin-bottom: 60px;
     letter-spacing: 2px;
}
 .news h2::after {
     content: '';
     display: block;
     width: 154px;
     height: 8px;
     background: #c41e3a;
     margin: 20px auto 0;
}
 .news-grid {
     display: grid;
     grid-template-columns: 1.5fr 1fr;
     gap: 30px 50px;
     grid-template-rows: auto;
}
 .news-item img {
     width: 100%;
     aspect-ratio: 629 / 380;
     object-fit: cover;
}
 .news-item .content {
     padding: 15px 0;
}
 .news-date {
     font-size: 14px;
     font-weight: 700;
    margin: 10px 0;
 }
 .news-item h3 {
     font-size: clamp(1.125rem, 1.0096rem + 0.2404vw, 1.25rem);
     font-weight: 700;
     margin-bottom: 5px;
     line-height: 1.4;
}
 .news-item p {
     font-size: 14px;
     margin-bottom: 5px;
     line-height: 1.7;
}
 .news-list {
     display: flex;
     flex-direction: column;
     gap: 30px;
}
.news-item.featured {
    grid-row: 1 / span 3;
    grid-column: 1;
}
 .news-item {
     /*! display: flex; */
     gap: 20px;
     padding-bottom: 20px;
     align-items: flex-start;
     border-bottom: 2px solid #1D2858;
     grid-column: 2;
     grid-row: auto;
}

.news-item .link-arrow {
    font-weight: 700;
    text-transform: uppercase;
}
/* CTA Section */
 .cta {
     padding: 100px 0;
     background: #1D2858;
     position: relative;
     overflow: hidden;
}
 body.inside .cta {
     text-align: center;
     overflow: unset;
     margin-top: 75px;
}
 .cta-content {
     position: relative;
     z-index: 10;
}
 .cta h2 {
     margin-bottom: 15px;
     line-height: 1.4;
     font-weight: 900;
     font-size: clamp(2rem, 1.0769rem + 1.9231vw, 3rem);
}
 .cta p {
     font-size: clamp(1.375rem, 0.7981rem + 1.2019vw, 2rem);
     line-height: 1.4;
}
.cta .link-arrow {
    font-size: 24px;
}
.cta .small-shape-accent {
     position: absolute;
     top: 0;
     right: 0;
     width: 30%;
     max-width: 308px;
     transform: translateY(-50%);
     height: auto;
     z-index: 20;
}
/* Footer */
 footer {
     background-color: rgba(179, 176, 196, 0.15);
     padding: 60px 0 0 0;
     align-items: center;
}
 .footer-content {
    /* max-width: 1200px;
     */
    /* margin: 0 auto;
     */
     display: grid;
     grid-template-columns: 1fr 1fr 1fr;
     gap: 40px;
     padding-bottom: 40px;
     font-weight: 900;
     align-items: center;
     justify-content: space-between;
}
 footer .logo {
     width: 140px;
     /*margin-bottom: 20px;*/
     margin-right: 30px;
}
footer .logo img {
    transition: .2s ease;
}
footer .logo:hover img{
    transform: scale(1.03);
}
.footer-info {
    align-items: center;
}
 .footer-info p {
    /* font-size: 14px;
     */
     font-weight: 900;
    /* color: #666;
     */
     line-height: 1.8;
}
 .footer-info a {
     color: #1D2858;
     transition: color 0.3s ease;
}
 .footer-info a:hover {
     color: #c41e3a;
}
.footer-middle {
     justify-self: center;
}
 .footer-links a {
     display: block;
     font-size: 14px;
     color: #1D2858;
     text-decoration: none;
     margin-bottom: 10px;
     transition: color 0.3s ease;
     position: relative;
}
 .footer-links a::after {
     content: '';
     display: block;
     width: 0px;
     height: 3px;
     background: #c41e3a;
     transition: width 0.3s ease;
     position: absolute;
     left: 0;
     bottom: 0;
    /* transform: translateX(-50%);
     */
    /* transform-origin: center;
     */
}
 .footer-links a.active::after, .footer-links a:hover::after {
     width: 100% 
}
/* .footer-links a:hover {
     color: #c41e3a;
}
 */
 .footer-cta {
     justify-self: end;
}
 .footer-cta .buttons {
     margin-bottom: 10px;
}
 .footer-cta .btn {
    /* display: block;
     */
     text-align: center;
     margin-bottom: 15px;
}
 .footer-cta .footer-links {
     align-self: flex-start;
}
 .footer-copyright {
    /* max-width: 1200px;
     */
     background-color: #1D2858;
    /* margin: 0 auto;
     */
     padding: 15px;
     text-align: center;
    /* font-size: 12px;
     */
     color: #fff;
}
 .footer-copyright p {
     margin: 0;
     font-weight: 900;
     text-transform: uppercase;
     letter-spacing: 1px;
}
/* Inside Hero */
 .inside-hero {
     position: relative;
     overflow: hidden;
     padding: 100px 0 80px;
     text-align: center;
}
 .inside-hero .hero-content {
     position: relative;
     z-index: 10;
}
 .inside-hero h1 {
     font-size: clamp(2.5rem, 1rem + 5vw, 5rem);
     font-weight: 900;
     color: #fff;
     line-height: 1;
     text-transform: uppercase;
     margin-bottom: 30px;
}
 .inside-hero p {
     font-size: 16px;
     color: #fff;
     max-width: 600px;
     margin: 0 auto;
     line-height: 1.7;
}
 .inside-hero .small-shape-accent {
     position: absolute;
     bottom: 0;
     left: 0;
     width: 70%;
     max-width: 773px;
     height: auto;
     z-index: 20;
}
 .icon-row {
     padding: 80px 0 120px;
}
.icon-row-heading {
    font-size: clamp(1.125rem, 0.7788rem + 0.7212vw, 1.5rem);
}
 .icon-group {
     width: 120px;
}
 .icon-group img {
     max-width: 68px;
     height: 68px;
     width: 100%;
     object-fit: contain;
     margin: 0 auto 30px;
}
 .icon-group p {
     font-size: 16px;
     font-weight: 900;
    /* text-transform: uppercase;
     */
}
/* Jump Links */
 .jump-links {
     padding: 60px 0;
     text-align: center;
     background-color: #DDDFE6;
}
 .jump-links h2 {
     font-weight: 900;
     text-transform: uppercase;
     margin-bottom: 30px;
     letter-spacing: 2px;
}
 .jump-links h2::after {
     content: '';
     display: block;
     width: 154px;
     height: 8px;
     background: #c41e3a;
     margin: 20px auto 0;
}
.jump-links-content {
    max-width: 632px;
    margin: 0 auto;
}
 .jump-links p {
     font-weight: 900;
}
 .jump-links a {
     font-weight: 900;
     color: #1D2858;
     transition: .2s ease;
}
 .jump-links a:hover {
     color: #c41e3a!important;
}
/* Space Sections */
 .space-section {
     padding: 0;
}
 .space-section-content {
     padding: 60px 0;
     text-align: center;
}
 .space-section-content h2 {
     font-weight: 700;
     text-transform: uppercase;
     margin-bottom: 30px;
     letter-spacing: 2px;
}
 .space-section-content h2::after {
     content: '';
     display: block;
     width: 154px;
     height: 8px;
     background: #c41e3a;
     margin: 20px auto 0;
}

 .space-section-text {
     max-width: 650px;
     font-size: clamp(1.125rem, 1.0096rem + 0.2404vw, 1.25rem);
     margin: 20px auto 25px;
     font-weight: 900;
}
 .space-section.alt {
     background-color: #F4F3F6;
}
/* Room Cards */
 .room-cards {
     gap: 40px;
}
 .room-card {
     text-align: left;
     height:100%;
     display: flex;
     flex-direction: column;
}
 .room-card-image img {
     width: 100%;
     object-fit: cover;
     border-radius: 35px 0;
     box-shadow: 0 3px 5px rgba(0,0,0,0.2);
     aspect-ratio: 489 / 312;
}
 .room-card-body {
     padding-top: 30px;
     flex: 1;
     display: flex;
     flex-direction: column;
     align-items: start;
}
 .room-card-body h3 {
     font-size: clamp(1.125rem, 1.0096rem + 0.2404vw, 1.25rem);
     font-weight: 900;
     text-transform: uppercase;
     letter-spacing: 1px;
     margin-bottom: 10px;
}
 .room-card-divider {
     width: 43px;
     height: 8px;
     background: #C8102E;
     margin-bottom: 15px;
}
 .room-card-body ul {
     list-style: none;
     padding: 0;
     margin: 0 0 20px;
}
 .room-card-body ul li {
     font-size: 15px;
     padding: 4px 0;
     padding-left: 18px;
     position: relative;
}
 .room-card-body ul li::before {
     content: '';
     width: 8px;
     height: 8px;
     background: #c41e3a;
     border-radius: 4px 0;
     position: absolute;
     left: 0;
     top: 10px;
}
 .btn-reserve {
     display: inline-block;
     background: ##1D2858;
     color: #fff !important;
     text-transform: uppercase;
     font-weight: 900;
     font-size: 14px;
     letter-spacing: 1px;
     padding: 12px 30px;
     text-decoration: none;
     transition: background 0.3s ease;
}
 .btn-reserve:hover {
     background: #c41e3a!important;
     color: #fff!important;
}
/* Responsive */
 @media (max-width: 1200px) {
     .header-buttons {
        margin-left: 15px;
    }
     }
 @media (max-width: 1024px) {
     .feature-item {
         grid-template-columns: 1fr;
         gap: 30px;
    }
     .feature-item:nth-child(even) {
         direction: ltr;
    }
}
 @media (min-width: 992px) {
     .navbar-nav {
         justify-content: flex-end;
         align-items: center;
    }
     .mobile-only {
         display: none;
    }
     .footer-info, .footer-cta, .footer-links{
         display: flex;
    }
    footer .social-links {
        margin-left: -.5rem;
    }
    .news-item.featured {
        border-bottom: none;
    }
    .news-item:last-child {
        border-bottom: none;
    }
    
    .news-item:not(.featured) img {
        display: none;
    }
}
 @media (max-width: 991.98px) {
    body {
        margin-top: 86px!important;    
    }
    html {
        scroll-padding-top: 86px!important;
    }
    .navbar-brand img {
         width: 60px;
    }
     .navbar-toggler {
         border-color: transparent!important;
    }
     .navbar-toggler-icon {
         background:none!important;
    }
     .navbar-toggler:focus {
         text-decoration: none;
         outline: 0;
         box-shadow: none!important;
    }
    .navbar-nav {
        gap: 15px;
    }
    .nav-submenu {
        position: relative;
        padding-bottom: 5px;
    }
    .navbar-nav .nav-submenu a {
        font-weight: 400!important;
    }
     .header-buttons {
         flex-direction: column;
         align-items: start;
         margin: 30px 0;
    }
     .header-buttons .btn {
         width: 160px;
    }
     .offcanvas-header {
         position: absolute;
         top: 0;
         right: -50px;
    }
     .footer-content {
         grid-template-columns: 1fr;
         text-align: center;
    }
     .footer-info {
         justify-content: center;
    }
    footer .social-links {
        justify-content: center;
    }
     .footer-cta, .footer-links{
         display: none;
    }
    .header-buttons {
        gap: 16px;
    }
    nav ul {
        gap: 8px;
    }
     .news-grid:not(.mobile-only) {
         display: none;
    }
    .feature-item .container {
        grid-template-columns: 1fr;
    }
    
    .news {
        padding-left: 0;
        padding-right: 0;
    }
    .news-item {
        border-bottom: 0;
    }
    .news .container {
        max-width: unset;
        padding-left: 0;
        padding-right: 0;
        margin-left: 0;
        margin-right: 0;
    }
    
    .news-content {
        padding-left: 40px;
        padding-right: 40px;
        padding-top: 25px;
    }
    
    .news-grid {
     grid-template-columns: 1fr;
     }
     .news-item.featured {
         grid-column: 1;
     }
     .news-item {
         grid-column: 1!important;
     }
     .news-slider {
      position: relative;
    }
    
    .news-slider-overflow {
      overflow: hidden;
    }
    
    .news-slider-track {
      display: flex;
      transition: transform 0.4s ease;
    }
    
    .news-slider-track .news-item {
      min-width: 100%;
      width: 100%;
      flex-shrink: 0;
    }
    
    .news-prev,
    .news-next {
      position: absolute;
      z-index: 10;
      background: #1D2858;
      color: #fff;
      border: none;
      width: 36px;
      height: 36px;
      font-size: 24px;
      cursor: pointer;
      transition: background 0.3s ease;
      display: flex;
      align-items: center;
      justify-content: center;
    }
    
    .news-prev { left: 15px; }
    .news-next { right: 15px; }
    
    .news-prev:hover,
    .news-next:hover {
      background: #c41e3a;
    }
}
 @media (max-width: 768px) {
     header {
        /* flex-direction: column;
         */
         gap: 20px;
         padding: 15px 20px;
         background: rgba(255,255,255,0.95);
    }
     nav {
         display: none;
         flex-wrap: wrap;
         justify-content: center;
         gap: 15px;
    }
     .hero {
         justify-content: flex-end;
         padding-bottom: 90px;
    }
    .partners-grid {
        gap: 30px 45px;
    }
     .spot-cards {
         gap: 15px;
    }
     .spot-card {
         min-width: 100px;
    }
     .space-section-image img {
         height: 280px;
    }
}
 
  /* ── Desktop nav ── */
    .nav-dropdown {
        display: none;
        flex-direction: column;
        z-index: 1000;
        min-width: 180px;
        white-space: nowrap;
    }

    @media (min-width: 991.98px) {
        .nav-item.has-dropdown:hover .nav-dropdown {
            display: flex;
        }

        .nav-mobile-subnav {
            display: none;
        }
        
        .navbar-nav .nav-dropdown-link,
        .navbar-nav .nav-item-link {
             font-weight: 700;
        }
    }

    /* ── Mobile nav ── */
    @media (max-width: 991.98px) {
        .offcanvas-body .navbar-nav {
            flex-direction: column;
        }

        .nav-dropdown {
            display: none !important;
        }

        .nav-mobile-subnav {
            display: block;
        }
        
        .nav-mobile-subnav li {
            margin-top: 8px;
        }
        
        .nav-mobile-subnav-link {
            color: #1D2858;
            font-weight: 400;
        }

        .nav-mobile-subnav-link {
            display: block;
            color: inherit;
            text-decoration: none;
        }
    }
    
    .nav-dropdown-link:hover {
        color: #c41e3a;
    }