.site-header{display:flex;flex-wrap:wrap;justify-content:space-between;padding-block-end:1rem;padding-block-start:1rem;position:relative}.site-header .site-title{font-size:2.5rem;font-weight:500;line-height:1.2}.site-header .site-branding{display:flex;flex-direction:column;gap:.5rem;justify-content:center}.site-header .header-inner{display:flex;flex-wrap:wrap;justify-content:space-between}.site-header .header-inner .custom-logo-link{display:block}.site-header .header-inner .site-branding .site-description,.site-header .header-inner .site-branding .site-title{margin:0}.site-header .header-inner .site-branding .site-logo img{display:block}.site-header .header-inner .site-branding.show-logo .site-title,.site-header .header-inner .site-branding.show-title .site-logo{display:none!important}.site-header.header-inverted .header-inner{flex-direction:row-reverse}.site-header.header-inverted .header-inner .site-branding{text-align:end}.site-header.header-stacked .header-inner{align-items:center;flex-direction:column;text-align:center}.site-footer{padding-block-end:1rem;padding-block-start:1rem;position:relative}.site-footer .site-title{font-size:1.5rem;font-weight:500;line-height:1.2}.site-footer .site-branding{display:flex;flex-direction:column;gap:.5rem;justify-content:center}.site-footer .footer-inner{display:flex;flex-wrap:wrap;justify-content:space-between}.site-footer .footer-inner .custom-logo-link{display:block}.site-footer .footer-inner .site-branding .site-description,.site-footer .footer-inner .site-branding .site-title{margin:0}.site-footer .footer-inner .site-branding .site-logo img{display:block}.site-footer .footer-inner .site-branding.show-logo .site-title,.site-footer .footer-inner .site-branding.show-title .site-logo{display:none!important}.site-footer .footer-inner .copyright{align-items:center;display:flex;justify-content:flex-end}.site-footer .footer-inner .copyright p{margin:0}.site-footer.footer-inverted .footer-inner{flex-direction:row-reverse}.site-footer.footer-inverted .footer-inner .site-branding{text-align:end}.site-footer.footer-stacked .footer-inner{align-items:center;flex-direction:column;text-align:center}.site-footer.footer-stacked .footer-inner .site-branding .site-title{text-align:center}.site-footer.footer-stacked .footer-inner .site-navigation .menu{padding:0}@media(max-width:576px){.site-footer:not(.footer-stacked) .footer-inner .copyright,.site-footer:not(.footer-stacked) .footer-inner .site-branding,.site-footer:not(.footer-stacked) .footer-inner .site-navigation{display:block;max-width:none;text-align:center;width:100%}.site-footer .footer-inner .site-navigation ul.menu{justify-content:center}.site-footer .footer-inner .site-navigation ul.menu li{display:inline-block}}.site-header.header-stacked .site-navigation-toggle-holder{justify-content:center;max-width:100%}.site-header.menu-layout-dropdown .site-navigation{display:none}.site-navigation-toggle-holder{align-items:center;display:flex;padding:8px 15px}.site-navigation-toggle-holder .site-navigation-toggle{align-items:center;background-color:rgba(0,0,0,.05);border:0 solid;border-radius:3px;color:#494c4f;cursor:pointer;display:flex;justify-content:center;padding:.5rem}.site-navigation-toggle-holder .site-navigation-toggle-icon{display:block;width:1.25rem}.site-navigation-toggle-holder .site-navigation-toggle-icon:after,.site-navigation-toggle-holder .site-navigation-toggle-icon:before{background-color:currentColor;border-radius:3px;content:"";display:block;height:3px;transition:all .2s ease-in-out}.site-navigation-toggle-holder .site-navigation-toggle-icon:before{box-shadow:0 .35rem 0 currentColor;margin-block-end:.5rem}.site-navigation-toggle-holder .site-navigation-toggle[aria-expanded=true] .site-navigation-toggle-icon:before{box-shadow:none;transform:translateY(.35rem) rotate(45deg)}.site-navigation-toggle-holder .site-navigation-toggle[aria-expanded=true] .site-navigation-toggle-icon:after{transform:translateY(-.35rem) rotate(-45deg)}.site-navigation{align-items:center;display:flex}.site-navigation ul.menu,.site-navigation ul.menu ul{list-style-type:none;padding:0}.site-navigation ul.menu{display:flex;flex-wrap:wrap}.site-navigation ul.menu li{display:flex;position:relative}.site-navigation ul.menu li a{display:block;padding:8px 15px}.site-navigation ul.menu li.menu-item-has-children{padding-inline-end:15px}.site-navigation ul.menu li.menu-item-has-children:after{align-items:center;color:#666;content:"▾";display:flex;font-size:1.5em;justify-content:center;text-decoration:none}.site-navigation ul.menu li.menu-item-has-children:focus-within>ul{display:block}.site-navigation ul.menu li ul{background:#fff;display:none;left:0;min-width:150px;position:absolute;top:100%;z-index:2}.site-navigation ul.menu li ul li{border-block-end:1px solid #eee}.site-navigation ul.menu li ul li:last-child{border-block-end:none}.site-navigation ul.menu li ul li.menu-item-has-children a{flex-grow:1}.site-navigation ul.menu li ul li.menu-item-has-children:after{transform:translateY(-50%) rotate(-90deg)}.site-navigation ul.menu li ul ul{left:100%;top:0}.site-navigation ul.menu li:hover>ul{display:block}footer .site-navigation ul.menu li ul{bottom:100%;top:auto}footer .site-navigation ul.menu li ul ul{bottom:0}footer .site-navigation ul.menu a{padding:5px 15px}.site-navigation-dropdown{bottom:0;left:0;margin-block-start:10px;position:absolute;transform-origin:top;transition:max-height .3s,transform .3s;width:100%;z-index:10000}.site-navigation-toggle-holder:not(.elementor-active)+.site-navigation-dropdown{max-height:0;transform:scaleY(0)}.site-navigation-toggle-holder.elementor-active+.site-navigation-dropdown{max-height:100vh;transform:scaleY(1)}.site-navigation-dropdown ul{padding:0}.site-navigation-dropdown ul.menu{background:#fff;margin:0;padding:0;position:absolute;width:100%}.site-navigation-dropdown ul.menu li{display:block;position:relative;width:100%}.site-navigation-dropdown ul.menu li a{background:#fff;box-shadow:inset 0 -1px 0 rgba(0,0,0,.102);color:#55595c;display:block;padding:20px}.site-navigation-dropdown ul.menu li.current-menu-item a{background:#55595c;color:#fff}.site-navigation-dropdown ul.menu>li li{max-height:0;transform:scaleY(0);transform-origin:top;transition:max-height .3s,transform .3s}.site-navigation-dropdown ul.menu li.elementor-active>ul>li{max-height:100vh;transform:scaleY(1)}@media(max-width:576px){.site-header.menu-dropdown-mobile:not(.menu-layout-dropdown) .site-navigation{display:none!important}}@media(min-width:768px){.site-header.menu-dropdown-mobile:not(.menu-layout-dropdown) .site-navigation-toggle-holder{display:none!important}}@media(min-width:576px)and (max-width:767px){.site-header.menu-dropdown-mobile:not(.menu-layout-dropdown) .site-navigation{display:none!important}}@media(min-width:992px){.site-header.menu-dropdown-tablet:not(.menu-layout-dropdown) .site-navigation-toggle-holder{display:none!important}}@media(max-width:992px){.site-header.menu-dropdown-tablet:not(.menu-layout-dropdown) .site-navigation{display:none!important}}.site-header.menu-dropdown-none:not(.menu-layout-dropdown) .site-navigation-toggle-holder{display:none!important}

/* =========================
   HEADER BASE
========================= */
.site-header {
    background: #1f3a63;
    max-width: 1140px;
    margin: 0 auto;
    padding: 20px 30px;
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
    box-sizing: border-box;
    position: relative;
    z-index: 999;
}

.site-header .header-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

/* =========================
   BRANDING (TITLE + TAGLINE)
========================= */
.site-branding {
    text-align: center;
    margin-bottom: 20px;
}

.site-title {
    margin: 0;
}

.site-title a {
    color: #ff3d7f !important;
    font-size: 54px;
    font-weight: 300;
    line-height: 1.1;
    text-decoration: none;
    letter-spacing: -1px;
}

.site-description {
    margin-top: 8px;
    color: rgba(255,255,255,0.55);
    font-size: 15px;
    line-height: 1.4;
}

/* =========================
   MAIN MENU (DESKTOP)
========================= */
.site-navigation {
    width: 100%;
}

.site-navigation ul {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.site-navigation ul li {
    position: relative;
}

.site-navigation ul li a {
    color: #ffffff !important;
    font-size: 16px;
    font-weight: 400;
    text-decoration: none;
    padding: 8px 0;
    display: block;
    transition: 0.3s ease;
}

.site-navigation ul li a:hover {
    color: #ff3d7f !important;
}

/* =========================
   DROPDOWN (DESKTOP + MOBILE)
========================= */
.site-navigation ul ul {
    position: absolute;
    top: 100%;
    left: 0;
    background: #1f3a63 !important;
    min-width: 220px;
    padding: 10px 0;
    border-radius: 8px;
    display: none;
    z-index: 9999;
}

.site-navigation ul li:hover > ul {
    display: block;
}

.site-navigation ul ul li {
    width: 100%;
    border-bottom: 1px solid rgba(255,255,255,0.1);
}

.site-navigation ul ul li:last-child {
    border-bottom: none;
}

.site-navigation ul ul li a {
    padding: 10px 15px;
    color: #ffffff !important;
    white-space: nowrap;
}

.site-navigation ul ul li a:hover {
       color: #fa3d7f !important;
}

/* =========================
   MOBILE TOGGLE ICON
========================= */
.site-navigation-toggle-holder {
    display: none;
}

.site-navigation-toggle {
    background: transparent;
    border: none;
    cursor: pointer;
}

.site-navigation-toggle-icon,
.site-navigation-toggle-icon:before,
.site-navigation-toggle-icon:after {
    width: 28px;
    height: 3px;
    background: #ffffff;
    display: block;
    position: relative;
}

.site-navigation-toggle-icon:before,
.site-navigation-toggle-icon:after {
    content: "";
    position: absolute;
    left: 0;
}

.site-navigation-toggle-icon:before {
    top: -8px;
}

.site-navigation-toggle-icon:after {
    top: 8px;
}

/* =========================
   TABLET
========================= */
@media (max-width: 1024px) {

    .site-header {
        margin: 0 15px;
        padding: 20px;
    }

    .site-title a {
        font-size: 42px;
    }

    .site-navigation ul {
        gap: 20px;
    }
}

/* =========================
   MOBILE (ONLY TYPOGRAPHY ADJUST)
========================= */
@media (max-width: 767px) {

    .site-header {
        margin: 0 10px;
        padding: 15px;
        border-radius: 0 0 15px 15px;
    }

    .site-title a {
        font-size: 28px;
        line-height: 1.2;
    }

    .site-description {
        font-size: 13px;
        margin-top: 5px;
        margin-bottom: 10px;
    }

    .site-navigation ul li a {
        font-size: 14px;
    }

    .site-navigation ul {
        gap: 15px;
    }
}