/*
Theme Name: Twenty Twenty-Five Child
Template: twentytwentyfive
Version 1.0
*/

/* Base layout */
.wp-site-blocks {
  padding-left: 0rem;
  padding-right: 0rem;
}

/* Remove layout constraints except for alignfull blocks */
.wp-site-blocks > .is-layout-constrained:not(.alignfull) {
  max-width: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Remove site-block margins so the body meets the footer */
.wp-site-blocks > *:first-child {
  margin-block-start: 0 !important;
}

.wp-site-blocks > *:last-child {
  margin-block-start: 0 !important;
}

/* Remove unexpected top margin on header due to wp-site-blocks default spacing */
:where(.wp-site-blocks) > * {
  margin-block-start: 0 !important;
}

/* Remove outline on all links when clicked */
a:focus {
  outline: none;
  box-shadow: none;
}

button.wp-block-navigation__responsive-container-open:focus {
  outline: none;  
}

button.wp-block-navigation__submenu-icon.wp-block-navigation-submenu__toggle {
  outline: none;
}

textarea#comment {
  outline: none;
}

/* ------------------------------------------------------------------ */
/*  Responsive styling for smaller screens
/* ------------------------------------------------------------------ */

/* Add spacing between columns + ensures they stack correctly */
.wp-block-columns {
  gap: 1.5rem;
  flex-wrap: wrap;    
}

/* Ensure individual columns stretch full width on small screens */
@media (max-width: 767px) {
  .wp-block-column {
      flex-basis: 100% !important;
      max-width: 100% !important;
  }
}

/* ------------------------------------------------------------------ */
/*  Newsroom Desktop Styles
/* ------------------------------------------------------------------ */

/* Sticky Header with box shadow applied after sticking */
.sticky-header {
  position: sticky;
  top: var(--adminbar);
  z-index: 999;
}

/* Header Category Button on hover */
.newsroom-menu-categories a {
  color: var(--wp--preset--color--white);
}

.newsroom-menu-categories a:hover {
  color: var(--wp--preset--color--gray-blue);
  transition: color 0.2s ease;
}

.newsroom-menu-categories a:focus,
.newsroom-menu-categories a:active {
  color: var(--wp--preset--color--gray-blue);
  transition: color 0.2s ease;
}

/* Navigation Dropdown Pills */
li.nav-dropdown-pill.wp-block-navigation-item.has-child {
  background-color: var(--wp--preset--color--medium-red);
  padding: .25rem 0.75rem;
  margin: 0 0.25rem 0.25rem 0;
  border-radius: 5px;
  transition: background-color 0.2s ease-in-out;
}

/* Nav Dropdown Pills Font Adjustment */
li.nav-dropdown-pill.wp-block-navigation-item.has-child > a {
  font-size: .9rem;
  font-weight: bold;
  font-style: normal;
  text-decoration: none;
  letter-spacing: .025rem;
}

/* Nav dropdown - remove white outline on click */
li.wp-block-navigation-item.has-child.open-on-hover-click {
  outline: none;
  box-shadow: none;
}

/* Navigation Dropdown Pills on hover focus and active */
.nav-dropdown-pill.wp-block-navigation-item.has-child:hover {
  background-color: var(--wp--preset--color--dark-red);
}

ul.wp-block-navigation__submenu-container.nav-dropdown-pill {
  border-radius: 5px;
  padding: .5rem;
}

/* Post Card Category Pills */
.newsroom-post-category-pills a {
  background-color: var(--wp--preset--color--medium-red);
  color: white;
  padding: .25rem 0.75rem;
  margin: 0 0.25rem 0.25rem 0;
  border-radius: 5px;
  display: inline-block;
  font-size: 0.75rem;
  transition: background-color 0.2s ease-in-out;
}

.newsroom-post-category-pills a:hover {
  background-color: var(--wp--preset--color--dark-red);
}

/* Footer Archive Dropdown */
.newsroom-archive-dropdown select[name="archive-dropdown"] {
  border-radius: 5px;
  padding: 0.25rem 0.5rem;
  font-size: 1rem;
  font-family: inherit;
}

/* ------------------------------------------------------------------ */
/* Newsroom Responsive Styling - Base (Desktop Default)
/* ------------------------------------------------------------------ */

/* Default: desktop menu visible, mobile menu hidden */
body.site-3 .newsroom-mobile-menu {
  display: none;
}

body.site-3 .newsroom-desktop-menu {
  display: flex;
  flex-direction: row;
}

body.site-3 .newsroom-desktop-menu a {
  display: inline-block;
}

ul.wp-block-navigation__container.newsroom-desktop-menu {
  margin-right: .5rem;
}

/* Show full search field, hide icon on Desktop  */
.newsroom-search-wrapper {
  display: block;
}
.newsroom-search-icon {
  display: none;
}

/* Search Icon Styling */
.site-3 .wp-block-search__button svg {
  fill: white;
}

.site-3 button.wp-block-search__button.has-icon.wp-element-button {
  padding: 1rem;
}

/* Remove focus outline from mobile hamburger nav */
:where(.wp-site-blocks *:focus) {
  outline: none;
  box-shadow: none;
}

/* --------------------------------------------------------------- */
/* Post Cards - Desktop Styling for Archive + Category Templates
/* Mobile-first layout is handled in the UI
/* --------------------------------------------------------------- */

/* Layout posts in a row on desktop screens */
@media (min-width: 900px) {
  body.site-3 .newsroom-post-desktop {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 2rem;
  }  
}

/* Limit featured image width on large screens */
@media (min-width: 1300px) {
  body.site-3 .newsroom-post-desktop .wp-block-post-featured-image {
      max-width: 450px;
  }

  /* Constrain post content wrapper width and center it */
  body.site-3 .newsroom-post-wrapper {
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
  }

  /* Remove excess margin from content block (inherited from UI) */ 
  body.site-3 .newsroom-post-content-block {
    margin-top: 0;
  }
}

/* ------------------------------------------------------------------ */
/* Tablet and Below - Combined Media Queries
/* ------------------------------------------------------------------ */

/* Header to hide category bar */
@media (max-width: 1200px) {
  body.site-3 .newsroom-category-bar-col {
    display: none;
  }

  body.site-3 .newsroom-header-wrapper {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
  }

  .wp-block-columns.is-not-stacked-on-mobile.newsroom-logo-col {
    justify-content: space-between;
  }

  body.site-3 .newsroom-header-wrapper > * {
    flex-shrink: 1;
    min-width: 0;
  }

  body.site-3 .newsroom-logo-col {
    flex:1
  }

  body.site-3 .newsroom-nav-col {
    flex: 1;
    text-align: right;
  }

  /* Center drawer contents in mobile navigation */ 
  body.site-3 div#modal-3-content {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  /* Add margin to drawer Menu Items while keeping submenu items the same */
  body.site-3 .wp-block-navigation__container > li.has-child > a {
    margin: .5rem;
  }

  /* show mobile category nav */
  body.site-3 .newsroom-mobile-categories-nav {
    display: block !important;
  }

  /* Tablet and below: switch visibility */
  body.site-3 .newsroom-mobile-menu {
    display: block;
  } 

  body.site-3 .newsroom-desktop-menu {
    display: none;
  }

  /* Align Categories menu title */
  body.site-3 a.wp-block-navigation-item__content {
    text-align: left;
    font-weight: bold;
  }

  /* Mobile and Tablet: hide full search, show icon */ 
  .newsroom-search-wrapper {
    display: none;
  }
  .newsroom-search-icon {
    display: block;
    color: white
  }

  /* Constrain post intro on single posts for large screens */
  body.site-3 .newsroom-single-post-intro {
    max-width: 900px;
    margin-top: 2rem;
    margin-bottom: 2rem;
  }
}

/* Footer display under 900px */
@media (max-width: 900px) {
  /* Change the order of the desktop columns for mobile */
  body.site-3 .newsroom-footer-col > .wp-block-column:nth-child(2) {
    order: 1;
  }
  
  body.site-3 .newsroom-footer-col > .wp-block-column:nth-child(3) {
    order: 2;
  }
  body.site-3 .newsroom-footer-col > .wp-block-column:nth-child(1) {
    order: 3;
  }

  /* Sets max-width on columns for mobile */
  body.site-3 .newsroom-footer-col {
    max-width: 400px;
    flex-direction: column;
  }

  /* Centers content for nav and contact columns */
  body.site-3 .col.nav, body.site-3 .col.contact {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  body.site-3 .newsroom.socials {
    max-width: 200px;
  }

  /* Override Archive Dropdown Margin */
  body.site-3 .newsroom-archive-dropdown {
    margin-inline-start: 0;
}
}

/* ------------------------------------------------------------------ */
/* ExPost Styling
/* ------------------------------------------------------------------ */


/* Expost Header */

/* Cover white background appearing above the sticky header */
body.site-4 .wp-site-blocks>*:first-child {
  margin-block-start: -2px !important;
}


.expost-category-nav-desktop a {
  font-size: 1rem;
}

/* Post Card Category Pills */
.expost-category-pills a {
  background-color: var(--wp--preset--color--medium-blue);
  color: white;
  padding: .25rem 0.75rem;
  margin: 0 0.25rem 0.25rem 0;
  border-radius: 10px;
  display: inline-block;
  font-size: 0.75rem;
  transition: background-color 0.2s ease-in-out;
}

.expost-category-pills a:hover {
  background-color: var(--wp--preset--color--dark-blue);
}


/* Nav Drawer: Remove search bar outline on-click */
input#wp-block-search__input-1 {
  outline: none;
}

/* Nav Drawer: Remove outline from closing "X" button on-click */
button.wp-block-navigation__responsive-container-close {
  outline: none;
}

/* Mobile Forward Landing Hero Slider */

.expost-slider {
  display: flex;
  flex-direction: row;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  gap: 2rem;
  position: static;
}

.expost-slider .wp-block-post {
  flex: 0 0 auto;
  width: 18rem;
  scroll-snap-align: start;
}

.expost-slider::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 3%;
  height: 100%;
  pointer-events: none;
  background: linear-gradient(to left, rgba(255, 255, 255, .6), rgba(255, 255, 255, 0));
  z-index: 2;
}

/* Operation Call Out Region Buttons */
.blue-hover-button:hover .wp-block-button__link {
  background-color: black !important;
}

/* Author Template Styling */
.expost-author-template-avatar img {
  width: 110px;
  height: auto;
  border-radius: 100px;
}

.expost-author-template-avatar p {
  display: none;
}
.expost-author-template-avatar {
  display: flex;
  flex-direction: column;
}

/* ExPost Responsive Styling  */

/* Nav Menu Conditional Display */
@media (max-width:1299px) {
  .expost-category-nav-mobile {
    display: flex;
    flex-direction: column !important;
  }
  
  nav.expost-category-nav-mobile.wp-block-navigation {
    background-color: #8A93AB1A;
    padding: 0.5rem 1.5rem 0.5rem 1.5rem;
    border-radius: 20px;
    outline: solid;
    outline-color: var(--wp--preset--color--gray-blue);
    outline-width: 1px;
  }  

  .expost-category-nav-desktop {
    display: none;
  } 

  /* Senior Leadership Editorials: Stacks first column post templates below 1300px screen width */
  .expost-editorials-cards {
    flex-direction: column;
}
}

@media (min-width: 1300px) {
  .expost-category-nav-mobile {
    display: none;
  }

  .expost-category-nav-desktop {
    display: flex;
    flex-direction: row !important;
  }
}

  /* Lading Hero Slider */
@media (min-width: 1200px) {

  /* Increase hero logo size for larger screens */
  .expost-hero-logo img {
    width: 400px;
  }

  /* Increase footer logo for larger screens */
  .expost-logo-footer img {
    width: 350px;
  }

  .expost-slider .wp-block-post:first-child {
    width: 40vw;
    max-width: 555px;
  }

  .expost-slider .wp-block-post:not(:first-child) {
    width: 22rem;
  }

}

@media (min-width: 600px) {
  /* Lading Hero Slider */
  .expost-slider .wp-block-post:first-child {
    width: 55vw;
}
}

/* Senior Leadership - Column 2 */
.senior-leadership-mini-posts .wp-block-post-featured-image {
  height: 50px;
  width: auto;
}

/* Desktop Styling */
.expost-body {
  max-width: 1400px;  
}

/* Archive and Category Post Pages */ 
.expost-post-wrapper {
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
}

/* Split Feature */
.wp-block-group.expost-split-feature.is-nowrap.is-layout-flex.wp-container-core-group-is-layout-6c531013.wp-block-group-is-layout-flex {
  width: 80vw;
  max-width: 1100px;
}


/* Override column gap for desktop*/
@media (min-width: 782px) {
  .wp-block-columns.expost.is-layout-flex {
    gap:0;
  }
}

@media (max-width: 781px) {
    .expost-split-feature img {
    border-radius: 25px;
  }
}

.wp-block-group.expost-body {
  margin-left: auto;
  margin-right: auto;
}

@media (min-width: 1000px) {
  .expost-post-desktop {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 2rem;
  }

  .expost-separator-mobile {
    display: none;
  }
}

@media (max-width: 1000px) {
  /* mobile styling for single-posts */
  .expost-single-post-intro {
  flex-direction: column-reverse;
  }
}

/* Single Post Template */

/* Oversized Images within posts */
.expost-single-body figure {
  max-width: 100%;
}

/* desktop styling for single post hero */
  .expost-single-post-hero {
    width: 80%;
    max-width: 1200px;
  }

/* Comment section */
.comment-box {
  font-family: 'Mulish';
}

/* YARPP Styling */
.yarpp-thumbnails-horizontal {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-top: 1rem;
}

.yarpp-thumbnails-horizontal .yarpp-thumbnail {
  border: none;
}

.yarpp-thumbnail img {
  border-radius: 10px;
}

.expost-post-body.yarpp-posts {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 2.5rem;  
}

.expost-post-body.yarpp-posts h3 {
  font-family: 'Mulish';
  font-size: 1.25rem;
}

.expost-post-body.yarpp-posts a {
  font-family: 'Mulish';
}

.expost-next-prev-post a {
  font-size: 1rem;
}


/* Footer Styling */

ul.wp-block-social-links.has-normal-icon-size.has-icon-color.has-icon-background-color.expost-social-icons svg {
  width: 25px;
  height: 25px;
}

nav.expost-footer-menu a {
  font-size: 1rem;
}

/* Removes outline that appears when selecting archive dropdown */
select#wp-block-archives-15 {
  padding: 1rem 2.5rem 1rem 1.5rem;
  border-radius: 35px;
}

select#wp-block-archives-4 {
  outline: none;
}

@media (max-width: 600px) {
  /* Changes writers rows of 3 to a single column */
  .wp-block-group.expost-writers.is-layout-grid.wp-container-core-group-is-layout-86a1f65c.wp-block-group-is-layout-grid {
    display: flex;
    flex-direction: column;
  }


  .wp-block-columns.expost-footer-col {
    display: flex;
    flex-direction: column-reverse;
    gap: 2rem;
  }

  .expost-footer-menu {
    justify-content: flex-start;
}
}

/* ------------------------------------------------------------------------------------------------------- */
/*  Apply My Styles
/* ------------------------------------------------------------------------------------------------------- */

/* Header Job Bar styling */
.wp-block-buttons.applyMy-text-color-change-hover .wp-block-button__link {
  transition: color 0.25s ease;
}
.wp-block-buttons.applyMy-text-color-change-hover .wp-block-button__link:hover {
  color: var(--wp--preset--color--dark-red);
}

body.site-2 .sticky-header a {
  text-decoration: none;
  transition: color .5s ease;
}

body.site-2 .sticky-header a {
  text-decoration: none;
  transition: color .5s ease;
}

body.site-2 .sticky-header a:focus {
  color: var(--wp--preset--color--dark-red);
}

.site-5.sticky-header a:hover,
.site-5.sticky-header a:active,
.site-5.sticky-header a:focus {
  color: var(--wp--preset--color--dark-red);
}

/* Slider Styling (network wide will move up) */
.metaslider * {
  position:initial;
  font-family: 'Mulish';
  font-size: 1.5rem;
}

/* Toc Implementation and sticky header work (Will move up for network-wide use) */
:root { 
  --header-h: 100px;
  --adminbar: 0px;
  --sticky-offset: calc(var(--header-h) + var(--adminbar));
}

html { scroll-behavior: smooth; }
:target {scroll-margin-top: var(--sticky-offset); }

.ToC-scope { 
  position: relative; overflow: visible; }

/* Override column gap */
.ToC-scope > .wp-block-columns {
  gap: 0;
  margin: 0;
  padding: 0;
}

/* Ensures Hero's live behind the sticky header */
.is-hero {
  position: relative;
  z-index: 0;
}

.ToC-sticky-left {
  position:sticky;
  top: var(--sticky-offset);
  max-height: calc(100vh - var(--sticky-offset));
  overflow: auto;
  z-index: 999;
}

/* ToC Links */
.ToC-sticky-left a {
  text-decoration: none;
  color: var(--wp--preset--color--contrast, #111);
  transition: color .5s ease;
}
.ToC-sticky-left a:hover,
.ToC-sticky-left a:active,
.ToC-sticky-left a:focus {
  color: var(--wp--preset--color--dark-red);
  text-decoration: underline; text-underline-offset: 2px;
}

/* Testing mobile unstick in develop */ 
@media (max-width: 600px) {
  .ToC-sticky-left {
    position: static;
    max-height: none;
    margin-bottom: 16px;
  }
}

/* AVP Slider captions */ 
body.site-2 .caption {
  border-radius: 25px;
}

body.site-2 a.flex-prev {
  border-radius: 100px;
}

body.site-2 a.flex-next {
  border-radius: 100px;
}


/* FAQ dropdowns */

body.site-2 .apply-my-faq details > summary {
  padding-inline-start: 5px;
}

/* Chevron icons */
.apply-my-faq summary::marker {
  color: var(--wp--preset--color--dark-red);
}

/* Remove inherant outine on click and active */
body.site-2 .apply-my-faq summary:active,
body.site-2 .apply-my-faq summary:focus {
  outline: none;
}


/* ----------------------------------------------------------------------------------------------------------------------------------------------------- */
/*  Community Hub Styles
/* ----------------------------------------------------------------------------------------------------------------------------------------------------- */

/* Hamburger US Flag */

div#mega-menu-wrap-primary {
    content: "";
    position: absolute;
    inset: 0;
    background-image: url(/Community/wp-content/uploads/sites/5/2025/10/US-Flag-Menu-Icon.svg);
    background-size: 40px auto;
    background-repeat: no-repeat;
    background-position: calc(100% - 8px) center;
    padding-right: 5px;
    z-index: 99999 !important;
}
/* Remove gradient overlay on hamburger */
#mega-menu-wrap-primary .mega-menu-toggle {
    background: none;
}
/* Remove gradient on bar */ 
#mega-menu-wrap-primary .mega-menu-toggle {
    background: transparent;
}

ul#mega-menu-primary {
  font-family: 'Mulish' !important;
}

.hub-logo {
  z-index: 100000;
}
