/**
 * WordPress Navigation Block Styles
 * Forced styling to match current site exactly
 * Uses !important to override WordPress defaults
 */

/* ========================================
   MAIN CONTENT BACKGROUND IMAGE
   ======================================== */

/* Add this class to main content block for background image */
.hero-bg-image,
main.hero-bg-image,
.wp-block-group.hero-bg-image {
    background: #d7e3f4 url(../images/bg-main.jpg) repeat-y 50% 0 !important;
    padding-top: 17px !important;
}

/* ========================================
   LOGO SIZING - ALLOW WORDPRESS EDITOR CONTROL
   ======================================== */

/* Allow logo to use editor-defined size, not legacy theme constraints */
.site-logo,
.site-logo img,
.wp-block-image.site-logo,
.wp-block-image.site-logo img {
    max-width: none !important;
}

/* Override legacy .logo class constraints that might resize the image */
#header .bar .logo,
#header .bar .logo img,
.logo,
.logo img {
    max-width: none !important;
}

/* Ensure WordPress inline styles for width/height are not overridden */
.site-logo img[style*="width"],
.wp-block-image img[style*="width"] {
    width: inherit !important;
}

.site-logo img[style*="height"],
.wp-block-image img[style*="height"] {
    height: inherit !important;
}

/* ========================================
   REMOVE GAP BETWEEN BANNER AND MAIN NAV
   ======================================== */

/* Position hero/nav container and hero image */
.hero-nav-container,
.hero-nav-container.wp-block-group {
    position: relative !important;
    margin: 0 !important;
    padding: 0 !important;
}

.full-width-gallery {
    position: relative !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
}

.full-width-gallery .slide {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

.full-width-gallery img {
    display: block !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
    vertical-align: bottom !important;
}

/* Position main navigation - OVER hero image (use class: nav-over-hero) */
.nav-over-hero.main-nav-wrapper,
.nav-over-hero.wp-block-group,
.wp-block-group.nav-over-hero,
.hero-nav-container .nav-over-hero {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    z-index: 100 !important;
}

/* Position main navigation - BELOW hero image (use class: nav-below-hero or default) */
.nav-below-hero.main-nav-wrapper,
.nav-below-hero.wp-block-group,
.wp-block-group.nav-below-hero,
.hero-nav-container .nav-below-hero {
    position: relative !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Remove spacing from any WordPress group blocks around navigation */
.wp-block-group.main-nav-wrapper {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Remove spacing from header elements */
#header {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* Ensure no gap in body/wrapper */
body > *,
.wrapper > * {
    margin-top: 0 !important;
}

/* Remove WordPress default block spacing */
.wp-block-group:has(+ .wp-block-group) {
    margin-bottom: 0 !important;
}

/* Specifically target the group containing main nav */
.has-background[style*="background-color:#103d69"],
.has-background[style*="background:#103d69"] {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Remove gap from WordPress core block spacing */
.wp-site-blocks > * + * {
    margin-block-start: 0 !important;
}

.entry-content > * + * {
    margin-top: 0 !important;
}

/* ========================================
   NAVIGATION BLOCK CONTAINER
   ======================================== */

.wp-block-navigation,
.wp-block-navigation.wp-block-navigation {
    font: 16px/20px 'Montserrat', Arial, Helvetica, sans-serif !important;
    text-transform: uppercase !important;
    background: none !important;
}

/* ========================================
   TOP NAVIGATION (GRAY BAR)
   ======================================== */

/* Remove all backgrounds from top nav wrapper and navigation */
.top-nav-wrapper,
.top-nav-wrapper.wp-block-group {
    background-color: transparent !important;
}

.top-nav-block.wp-block-navigation,
.top-nav-block.wp-block-navigation.wp-block-navigation,
.top-nav-wrapper .wp-block-navigation,
.top-nav-wrapper .top-nav-block {
    font-size: 14px !important;
    line-height: 18px !important;
    color: inherit !important;
    background: none !important;
    background-color: transparent !important;
}

.top-nav-block .wp-block-navigation__container,
.top-nav-block.wp-block-navigation .wp-block-navigation__container,
.top-nav-wrapper .wp-block-navigation__container {
    background: none !important;
    background-color: transparent !important;
    gap: 25px !important;
}

.top-nav-block .wp-block-navigation-item,
.top-nav-block.wp-block-navigation .wp-block-navigation-item,
.top-nav-wrapper .wp-block-navigation-item {
    background: none !important;
    background-color: transparent !important;
    margin: 0 !important;
}

/* Main menu items - NO background */
.top-nav-block .wp-block-navigation-item > .wp-block-navigation-item__content,
.top-nav-block.wp-block-navigation .wp-block-navigation-item > .wp-block-navigation-item__content,
.top-nav-wrapper .wp-block-navigation-item > .wp-block-navigation-item__content,
.top-nav-wrapper .wp-block-navigation .wp-block-navigation-item__content,
.top-nav-block .wp-block-navigation-item__content,
.top-nav-wrapper .wp-block-navigation-item__content,
.top-nav-block a.wp-block-navigation-item__content,
.top-nav-wrapper a.wp-block-navigation-item__content {
    background: none !important;
    background-color: transparent !important;
    color: inherit !important;
    border: none !important;
    padding: 0 !important;
    text-decoration: none !important;
}

/* Hover states - NO background, transparent to match gray bar - MORE SPECIFIC SELECTORS */
.top-nav-block .wp-block-navigation-item__content:hover,
.top-nav-block.wp-block-navigation .wp-block-navigation-item__content:hover,
.top-nav-wrapper .wp-block-navigation-item__content:hover,
.top-nav-block .wp-block-navigation-item.current-menu-item .wp-block-navigation-item__content,
.top-nav-wrapper .wp-block-navigation-item.current-menu-item .wp-block-navigation-item__content,
.top-nav-block .wp-block-navigation-item:hover > .wp-block-navigation-item__content,
.top-nav-wrapper .wp-block-navigation-item:hover > .wp-block-navigation-item__content,
.top-nav-block a.wp-block-navigation-item__content:hover,
.top-nav-wrapper a.wp-block-navigation-item__content:hover,
.top-nav-block .wp-block-navigation-item:hover > a.wp-block-navigation-item__content,
.top-nav-wrapper .wp-block-navigation-item:hover > a.wp-block-navigation-item__content,
.top-nav-block .wp-block-navigation-item.has-child:hover > .wp-block-navigation-item__content,
.top-nav-wrapper .wp-block-navigation-item.has-child:hover > .wp-block-navigation-item__content {
    text-decoration: underline !important;
    background: none !important;
    background-color: transparent !important;
    color: inherit !important;
}

/* Top nav dropdown styling - match MAIN nav dropdown (blue #0076bd) */
/* Position dropdown below gray bar and align to left edge of NEWS button */
.top-nav-block .wp-block-navigation__submenu-container,
.top-nav-block.wp-block-navigation .wp-block-navigation__submenu-container,
.top-nav-wrapper .wp-block-navigation__submenu-container {
    background: #0076bd !important;
    background-color: #0076bd !important;
    border: none !important;
    padding: 16px 12px !important;
    min-width: 230px !important;
    width: 230px !important;
    box-shadow: none !important;
    right: auto !important;
    left: 0 !important;
    font-size: 12px !important;
    line-height: 16px !important;
    position: absolute !important;
    top: 26px !important;
}

/* Create invisible bridge area between menu item and dropdown to prevent gap issues */
.top-nav-block .wp-block-navigation__submenu-container::before,
.top-nav-block.wp-block-navigation .wp-block-navigation__submenu-container::before,
.top-nav-wrapper .wp-block-navigation__submenu-container::before {
    content: '' !important;
    position: absolute !important;
    top: -8px !important;
    left: 0 !important;
    right: 0 !important;
    height: 8px !important;
    background: transparent !important;
}

.top-nav-block .wp-block-navigation__submenu-container .wp-block-navigation-item,
.top-nav-block.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item,
.top-nav-wrapper .wp-block-navigation__submenu-container .wp-block-navigation-item {
    background: none !important;
    background-color: transparent !important;
    padding: 15px 0 !important;
    margin: 0 !important;
}

.top-nav-block .wp-block-navigation__submenu-container .wp-block-navigation-item__content,
.top-nav-block.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content,
.top-nav-wrapper .wp-block-navigation__submenu-container .wp-block-navigation-item__content,
.top-nav-block .wp-block-navigation__submenu-container a.wp-block-navigation-item__content,
.top-nav-wrapper .wp-block-navigation__submenu-container a.wp-block-navigation-item__content {
    padding: 0 0 0 17px !important;
    background: url(../images/bullet.png) no-repeat 0 2px !important;
    background-color: transparent !important;
    display: block !important;
    white-space: nowrap !important;
    color: #ffffff !important;
    font-size: 12px !important;
    line-height: 16px !important;
}

.top-nav-block .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover,
.top-nav-block.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover,
.top-nav-wrapper .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover,
.top-nav-block .wp-block-navigation__submenu-container a.wp-block-navigation-item__content:hover,
.top-nav-wrapper .wp-block-navigation__submenu-container a.wp-block-navigation-item__content:hover,
.top-nav-block .wp-block-navigation__submenu-container .wp-block-navigation-item:hover .wp-block-navigation-item__content,
.top-nav-wrapper .wp-block-navigation__submenu-container .wp-block-navigation-item:hover .wp-block-navigation-item__content {
    background: url(../images/bullet.png) no-repeat 0 2px !important;
    background-color: transparent !important;
    color: #ffffff !important;
    text-decoration: underline !important;
}

/* Hide dropdown arrows in top nav - NO chevron icons */
.top-nav-block .wp-block-navigation__submenu-icon,
.top-nav-wrapper .wp-block-navigation__submenu-icon,
.top-nav-block .wp-block-navigation-item__content svg,
.top-nav-wrapper .wp-block-navigation-item__content svg {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    visibility: hidden !important;
}

/* ========================================
   SEARCH BLOCK STYLING
   ======================================== */

.header-search-form.wp-block-search,
.header-search-form.wp-block-search.wp-block-search {
    border: 1px solid #a8a8a8 !important;
    border-radius: 2px !important;
    box-shadow: inset 0 1px 1px -1px rgba(0,0,0,0.2) !important;
    overflow: hidden !important;
}

.header-search-form .wp-block-search__inside-wrapper {
    border: none !important;
    padding: 0 !important;
}

.header-search-form .wp-block-search__input,
.header-search-form.wp-block-search .wp-block-search__input {
    border: none !important;
    background: none !important;
    text-transform: uppercase !important;
    font: 14px/27px 'Montserrat', Arial, Helvetica, sans-serif !important;
    color: #bdbdbd !important;
    padding: 5px 12px !important;
    height: 37px !important;
    outline: none !important;
}

.header-search-form .wp-block-search__input::placeholder {
    color: #bdbdbd !important;
}

.header-search-form .wp-block-search__button,
.header-search-form.wp-block-search .wp-block-search__button {
    background: url(../images/sprite.png) no-repeat 0 0 !important;
    width: 17px !important;
    height: 17px !important;
    min-width: 17px !important;
    border: none !important;
    cursor: pointer !important;
    padding: 0 !important;
    margin: 10px 17px 0 0 !important;
}

.header-search-form .wp-block-search__button svg {
    display: none !important;
}

/* ========================================
   MAIN NAVIGATION BLOCK CONTAINER
   ======================================== */

.wp-block-navigation__container,
.wp-block-navigation .wp-block-navigation__container {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    justify-content: center !important;
    gap: 0 !important;
    background: none !important;
}

.wp-block-navigation-item,
.wp-block-navigation .wp-block-navigation-item {
    margin: 0 !important;
    padding: 0 !important;
    position: relative !important;
    background: none !important;
}

/* ========================================
   MAIN NAVIGATION LINKS
   ======================================== */

.wp-block-navigation-item > .wp-block-navigation-item__content,
.wp-block-navigation .wp-block-navigation-item > .wp-block-navigation-item__content,
.wp-block-navigation-item > .wp-block-navigation-item__content.wp-block-navigation-item__content {
    border-left: 1px solid #365c81 !important;
    display: block !important;
    padding: 14px 20px !important;
    background: #103d69 !important;
    background-color: #103d69 !important;
    color: #fff !important;
    text-decoration: none !important;
    border-top: none !important;
    border-right: none !important;
    border-bottom: none !important;
}

.wp-block-navigation-item:first-child > .wp-block-navigation-item__content,
.wp-block-navigation .wp-block-navigation-item:first-child > .wp-block-navigation-item__content {
    border-left: none !important;
}

/* ========================================
   HOVER STATES
   ======================================== */

.wp-block-navigation-item > .wp-block-navigation-item__content:hover,
.wp-block-navigation .wp-block-navigation-item > .wp-block-navigation-item__content:hover,
.wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content,
.wp-block-navigation .wp-block-navigation-item.current-menu-item > .wp-block-navigation-item__content,
.wp-block-navigation-item.has-child:hover > .wp-block-navigation-item__content,
.wp-block-navigation-item:hover > .wp-block-navigation-item__content {
    background: #0076bd !important;
    background-color: #0076bd !important;
    color: #fff !important;
}

/* Keep parent highlighted when hovering dropdown */
.wp-block-navigation-item:hover > .wp-block-navigation-item__content,
.wp-block-navigation .wp-block-navigation-item:hover > .wp-block-navigation-item__content {
    background: #0076bd !important;
    background-color: #0076bd !important;
}

/* ========================================
   DROPDOWN / SUBMENU STYLING
   ======================================== */

.wp-block-navigation__submenu-container,
.wp-block-navigation .wp-block-navigation__submenu-container,
.wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container {
    display: none !important;
    z-index: 999 !important;
    padding: 16px 12px !important;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    min-width: 230px !important;
    width: 230px !important;
    background: #0076bd !important;
    background-color: #0076bd !important;
    font-size: 12px !important;
    line-height: 16px !important;
    text-align: left !important;
    list-style: none !important;
    margin: 0 !important;
    border: none !important;
}

.wp-block-navigation-item:hover > .wp-block-navigation__submenu-container,
.wp-block-navigation .wp-block-navigation-item:hover > .wp-block-navigation__submenu-container {
    display: block !important;
}

.wp-block-navigation__submenu-container .wp-block-navigation-item,
.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item {
    padding: 0 !important;
    margin: 0 !important;
    display: block !important;
    background: none !important;
}

.wp-block-navigation__submenu-container .wp-block-navigation-item__content,
.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
    display: block !important;
    padding: 15px 0 15px 17px !important;
    color: #fff !important;
    text-decoration: none !important;
    background: url(../images/bullet.png) no-repeat 0 18px !important;
    background-color: transparent !important;
    border: none !important;
    border-left: none !important;
    font-size: 12px !important;
    line-height: 16px !important;
}

.wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover,
.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover {
    text-decoration: underline !important;
    background: url(../images/bullet.png) no-repeat 0 18px !important;
    background-color: transparent !important;
}

/* ========================================
   REMOVE DEFAULT WORDPRESS SPACING
   ======================================== */

.wp-block-navigation .wp-block-navigation-item,
.wp-block-navigation.wp-block-navigation .wp-block-navigation-item {
    margin-bottom: 0 !important;
}

.wp-block-navigation .wp-block-navigation-item__content,
.wp-block-navigation.wp-block-navigation .wp-block-navigation-item__content {
    padding-top: 14px !important;
    padding-bottom: 14px !important;
}

/* ========================================
   REMOVE DROPDOWN ARROW ICONS
   ======================================== */

/* Hide WordPress default dropdown chevron/arrow in main menu */
.wp-block-navigation-item.has-child .wp-block-navigation-item__content svg,
.wp-block-navigation .wp-block-navigation-item.has-child .wp-block-navigation-item__content svg,
.wp-block-navigation-item__content svg.wp-block-navigation__submenu-icon,
.wp-block-navigation__submenu-icon {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    visibility: hidden !important;
}

/* Also hide in submenu if WordPress adds them there */
.wp-block-navigation__submenu-container svg,
.wp-block-navigation__submenu-container .wp-block-navigation__submenu-icon {
    display: none !important;
}

/* ========================================
   FORCE REMOVE OVERLAY MENU (MOBILE)
   ======================================== */

.wp-block-navigation__responsive-container,
.wp-block-navigation .wp-block-navigation__responsive-container {
    display: none !important;
}

.wp-block-navigation__responsive-container-open,
.wp-block-navigation .wp-block-navigation__responsive-container-open {
    display: none !important;
}
