html,
body {
  overflow-x: hidden;
}

.vote-result {
  display: none;
}

.btn-comment {
  border: 2px solid #0067B1 !important;
  border-radius: 2px;
  color: #fff !important;
  ;
  cursor: pointer;
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  padding: .75em 1.25em;
  position: relative;
  text-decoration: none;
  transition: all .5s cubic-bezier(.4, 0, .2, 1);
  margin-left: auto;
}

/* Show full nav on desktop (75rem = 1200px) */
@media (min-width: 75rem) {
  .primary-nav {
    display: flex;
  }

  .mobile-nav-button,
  .header-nav-overlay {
    display: none;
  }

  body:not(.is-always-mobile-nav) .primary-nav__menu-item--level-1:not(:last-child) {
    margin-inline-end: 5px;
  }
}

/* Mobile nav (below 1200px) */
@media (max-width: 74.99rem) {

  .is-overlay-active .primary-nav {
    display: block;
  }

  /* Ensure the menu items are displayed vertically */
  .primary-nav__menu {
    display: flex;
    flex-direction: column;
    /* Stack items vertically */
    padding: 0;
    /* Optional: remove any padding */
    margin: 0;
    /* Optional: remove any margin */
  }

  /* Style the menu items */
  .primary-nav__menu-item {
    white-space: nowrap;
    /* Prevent text from breaking */
    margin: 10px 0;
    /* Add space between items */
  }

  .primary-nav__menu-link {
    padding: 10px;
    /* Adjust padding if needed */
    text-decoration: none;
    /* Ensure links are not underlined */
  }
}

.site-header__inner__container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  /* or start, depending on your layout */
  flex-wrap: nowrap;
  overflow: hidden;
  /* Optional: hides overflow if still too wide */
}


.site-header {
  position: fixed;
  right: 0;
  left: 0;
  /*border-bottom: 2px solid #ccc;*/
}

.layout-main-wrapper {
  padding-top: 100px;
}

.primary-nav__menu {
  display: flex;
  flex-wrap: nowrap;
  overflow: hidden;
  /* Prevent wrapping */
}

.primary-nav__menu-item {
  white-space: nowrap;
  /* Prevent text wrapping inside items */
  flex-shrink: 0;
  /* Prevent shrinking if items get too small */
}

.primary-nav__menu-link {
  padding: 0 10px;
  /* Reduce padding if needed to save space */
}

.site-branding {
  flex-shrink: 1;
  min-width: 200px;
  /* Allow shrinking */
}

.search-block-form,
.mobile-buttons {
  flex-shrink: 0;
}

.primary-nav__menu--level-1 {
  display: flex;
  flex-wrap: nowrap;
  /* Prevent wrapping to next line */
  justify-content: space-between;
  /* Distribute items */

  /*gap: clamp(0.25rem, 1vw, 1.5rem);  Dynamic gap that shrinks/grows */
  overflow: hidden;
}

.group-custom .views-row>.views-field-nothing .views-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  /* Optional: adds space between text and button */
}

.group-custom .views-field-field-group-description {
  margin-top: 0.5rem;
}

/* Hide the Operations column header and all cells */
.hide-operations-column table.views-table thead th.views-field-dropbutton,
.hide-operations-column table.views-table tbody td.views-field-dropbutton {
  display: none;
}

/*Search block
.main-search-wrap {
  position: relative;
  display: inline-block;
  height: 10px;
}

.main-search-wrap .search-toggle {
  background: none;
  border: none;
  font-size: 1.5em;
  cursor: pointer;

  display: flex;
  align-items: center;
  justify-content: center;

}

.main-search-wrap form {
  position: absolute;
  position: static;
  top: 2.5em;
  right: 0;
  background: white;
  padding: 0.5em;
  border: 1px solid #ccc;
  display: flex;
  gap: 0.5em;
  z-index: 1000;
   border-radius: 8px;

}
*/

/* Style the magnifier button */



.main-search-wrap .search-toggle {
  background-color: transparent;
  /* Transparent background */
  color: #ffffff;
  /* White icon */
  border: none;
  /* Remove any border */
  font-size: 1.4em;
  /* Adjust size if needed */
  cursor: pointer;
  /*padding: 0.5em;               Optional spacing */
  display: flex;
  align-items: center;
  justify-content: center;
  transition: color 0.3s ease;
  /* Smooth hover transition */
}

/* Optional hover effect */
.main-search-wrap .search-toggle:hover {
  color: #08395C;
  /* Slightly lighter on hover */
  background-color: #FFFFFF;
  /* Optional slight overlay on hover */
  border-radius: 3px;
  height: 30px;
}

/* Keep the screen-reader-text visually hidden */
.main-search-wrap .search-toggle .screen-reader-text {
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
  white-space: nowrap;
}

.main-search-wrap {
  margin-top: 45px;
  margin-left: -10px;
  display: block;
  /*position: relative;  This ensures the absolute form is relative to this container */
  display: inline-block;
  /* Keeps the container shrink-wrapped around the button */
}

.main-search-wrap form {
  display: none;

}



.main-search-wrap form.is-open {
  /*display: block;
  display: flex;
position: absolute;
box-shadow: 0 2px 2px rgba(0, 0, 0, .25);*/

  position: absolute;
  /* top: 100%;       Positions below the button */
  /*left: 0;          Align left with the container */
  right: 20%;
  display: flex;
  /* Horizontal layout for label, input, button */
  align-items: center;
  gap: 10px;
  background: #08395C;
  padding: 5px 10px;
  border-radius: 5px;
  z-index: 9999;
  /* Make sure it's above other elements */
  box-shadow: 0 2px 2px rgba(0, 0, 0, .25);
}

.js-form-item.form-item.js-form-type-textfield.form-item-search-api-fulltext.js-form-item-search-api-fulltext {
  color: white;
}



.all-members .form--inline .form-actions {
  margin-top: 0px;
}

/*
.fa-magnifying-glass, .fa-search {
    --fa: "\f002";
    --fa--fa: "\f002\f002";
}
.search-toggle {
    opacity: 1;
}

.search-toggle {
    background: 0 0;
    border-radius: 3px;
    color: #0067B1;
    cursor: pointer;
    display: flex;
    font-size: 1.4em;
    justify-content: center;
    outline: 0;
    opacity: 0;
    padding: .33em .5em;
    width: 40px;
    -webkit-transition: all .3s ease;
    -moz-transition: all .3s ease;
    -ms-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease; 
}*/


.primary-nav__menu-link.is-active .primary-nav__menu-link-inner::after,
.primary-nav__menu-link[aria-current="page"] .primary-nav__menu-link-inner::after {
  transform: scaleX(1);
}

.block-private-message-notification-block .private-message-notification-image {
  width: auto !important;
}

@media (min-width: 75rem) {
  body:not(.is-always-mobile-nav) .block-private-message-notification-block.secondary-nav::before {
    display: none;
  }
}

li.secondary-nav__menu-item.secondary-nav__menu-item--link.secondary-nav__menu-item--level-1 {
  margin-left: -11px;
}

.block-private-message-notification-block .private-message-page-link {

  left: -2px !important;
}

.block-private-message-notification-block .unread-threads .private-message-page-link {
  margin-left: 3px;
}

/* Override the private message notification icon */
.private-message-notification-image {
  content: url("/sites/default/files/private-message-notification-icon-cropped.png");
}


h1,
h2,
h3,
h4,
h5,
h6 {
  color: #08395C !important;
}

.page-wrapper {
  /*background:#08395C;*/
}

.site-branding {
  /*background-image: linear-gradient(160deg, var(--color--primary-50) 0%, var(--color--primary-40) 78.66%);*/
  background: #08395C !important;
}

.site-header__inner,
div#header-nav {
  background: #08395C !important;
}

.primary-nav__menu-link-inner::after,
.secondary-nav__menu-link::after {
  border-top-color: #0067B1 !important;
  top: 4.5em;
}

.secondary-nav__menu-link::after {
  top: 3em !important;
}

.primary-nav__menu-link,
.primary-nav__menu-link-inner:hover,
.primary-nav__menu-link-inner:focus {
  color: #ffffff !important;
}

.secondary-nav__menu-link,
.secondary-nav__menu-link:hover {
  color: #FFFFFF;
}

/*.block__content {
    background:#FFFFFF;
}*/
div#block-idffriends-page-title {
  background-color: white;
}

@media (min-width: 31.25rem) {
  .mobile-nav-button__label {
    color: white
  }
}

.tabs__link.is-active::after {
  border-inline-start-color: #0067B1 !important;
}

@media (min-width: 43.75rem) {
  .tabs__link.is-active::after {
    border-block-start-color: #0067B1 !important;
  }
}

/*
.text-content.clearfix.field.field--name-body.field--type-text-with-summary.field--label-hidden.field__item{
  background: #08395C;
}

article.contextual-region.node.node--type-flex-page.node--promoted.node--view-mode-full{
  background: #08395C;
}*/


.join-link {
  background-color: #08395C;
  color: white;
  border: solid 2px #08395C;
  display: inline-block;
  padding-block: calc((var(--sp3) - var(--line-height-s)) / 2);
  padding-inline: var(--sp1-5);
  width: 169px;
}

.join-meeting, .start-meeting{
background-color: #08395C;
  color: white;
  border: solid 2px #08395C;
}

.leave-link {
  width: 169px;
}

/* Match the hover effect of .join-link */
.leave-link:hover {
  background-color: #08395C;
  color: white;
  border: solid 2px #08395C;
}

@media (max-width: 768px) {
  .join-link,
  .leave-link {
    display: flex;
    width: 100px;
    padding-left: 22px;
  }

/*home cards margin*/
.block-inline-blockcard .field--name-field-card-title {
  margin-top: -50px;
}
.text-content.clearfix.field.field--name-field-card-description.field--type-text-long.field--label-hidden.field__item {
    margin-top: 10px;
}

}

:root {
  --font-serif: unset;
}

@media (min-width: 43.75rem) {

  .text-content,
  .cke_editable {
    /* font-size: 1.125rem; */
    font-size: 1rem;
  }
}

/*forums search box*/
/* Target your specific exposed form */
#views-exposed-form-forums-search-box-page-1 {
  display: flex;
  align-items: center;
  /* keeps input and button vertically aligned */
  gap: 0.5rem;
  /* space between text field and button */
}

#views-exposed-form-forums-search-box-page-1 .form-item,
#views-exposed-form-forums-search-box-page-1 .form-actions {
  margin: 0;
  /* remove default spacing */
}



/*topics search box*/
/* Target your specific exposed form */
#views-exposed-form-topics-and-comments-search-box-page-1 {
  display: flex;
  align-items: center;
  /* keeps input and button vertically aligned */
  gap: 0.5rem;
  /* space between text field and button */
}

#views-exposed-form-topics-and-comments-search-box-page-1 .form-item,
#views-exposed-form-topics-and-comments-search-box-page-1 .form-actions {
  margin: 0;
  /* remove default spacing */
}

/* Target ONLY the "new" marker span */
.comment span[data-comment-timestamp] {
  position: relative;
  /* ensures ::before positions correctly */
  color: transparent;
  /* hide original text */
}

/* Replace the original "new" text with "New post" */
.comment span[data-comment-timestamp]::before {
  content: "New post";
  font-size: larger;
  color: #0067B1;
  font-style: italic;
}


.view-comment-link {
  display: flex;
  align-items: center;
}

span.read-more-comment {
  margin-left: 0.4em;
}

.block-private-message-inbox-block .active-thread {
  background-color: #f0f8ff;
  border: solid #0067B1 2px !important;
}

/*No fade out transition
.comment-highlight {
  background-color: #f0f8ff;
  transition: background-color 3s linear; 

.comment-highlight.fade-out {
  background-color: transparent;
}*/


/* Highlight comments once redirected */
.comment.highlighted-comment {
  background-color: #cce6ff !important;
  /* #f0f8ff*/
  transition: background-color 3s ease-out !important;
}

.comment.highlighted-comment.fade-out {
  background-color: transparent !important;
}


.comment {
  scroll-margin-top: 100px;
  /* height for sticky menu */
}

.block-private-message-notification-block {
  margin-left: 7px;
}

/*shade everyother forum row*/
table tbody tr:nth-child(even) {
  background-color: #f0f8ff;
  /* light blue */
}

/*
.comment.js-comment:nth-of-type(odd) {
    background-color: #e6f2ff;
}


body.path-frontpage.page-node-type-flex-page .main-content__container, body.path-frontpage.page-node-type-flex-page .region--content, body.path-frontpage.page-node-type-flex-page .layout-container, body.path-frontpage.page-node-type-flex-page .page-wrapper {
    background: transparent !important;
    color: #fff !important;
}*/
body.path-frontpage.page-node-type-flex-page {
  background-color: #08395C !important;
 background-image: radial-gradient(
    circle at center,
    #0d4f80 30%,   /* brighter blue in center */
    #08395C 60%  /* your original flat blue at edges */
  );

}

body.path-frontpage.page-node-type-flex-page .main-content__container,
body.path-frontpage.page-node-type-flex-page .region--content,
body.path-frontpage.page-node-type-flex-page .layout-container,
body.path-frontpage.page-node-type-flex-page .page-wrapper {
  background: transparent;

}

body.path-frontpage.page-node-type-flex-page p,
body.path-frontpage.page-node-type-flex-page h1,
body.path-frontpage.page-node-type-flex-page h2,
body.path-frontpage.page-node-type-flex-page h3,
body.path-frontpage.page-node-type-flex-page h4,
body.path-frontpage.page-node-type-flex-page h5,
body.path-frontpage.page-node-type-flex-page h6, 
body.path-frontpage.page-node-type-flex-page ul {
  color: #fff !important;
}

.path-frontpage .text-align-center .button {
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  box-shadow: 0 2px 20px rgba(0, 0, 0, 0.2);
  margin-top: -5px;
  border-radius: 5px;
}

.path-frontpage .text-align-center .button:hover {
  background-color: white;
  transform: scale(1.1);
  box-shadow: 0 6px 50px rgba(0, 0, 0, 0.5);
}

body.path-frontpage.page-node-type-flex-page h1,
body.path-frontpage.page-node-type-flex-page h2,
body.path-frontpage.page-node-type-flex-page h3,
body.path-frontpage.page-node-type-flex-page h4,
body.path-frontpage.page-node-type-flex-page h5,
body.path-frontpage.page-node-type-flex-page h6
 {
  margin-bottom: 10px !important;
  margin-top: -50px;
}

p{
  line-height: 1.8;
  margin-bottom: 15px !important;
  margin-top: 15px !important;
}

p + ul {
    margin-top: -17px !important;
}

ul{
  line-height: 1.8;
}

@media (min-width: 768px) {
body.path-frontpage.page-node-type-flex-page .layout-main-wrapper,
body.path-frontpage.page-node-type-flex-page .layout-main,
body.path-frontpage.page-node-type-flex-page .main-content__container.container {

  margin-left: -50px;
  margin-right: -95px;

}

.frontpage-login-button.layout.layout--onecol {
    margin-top: -80px;
    margin-bottom: -100px;
}
}
/* Only on front page, only if viewport ≥ 1800px */
@media (min-width: 1800px) {
  /* Target that specific inline image */
  .path-frontpage img.align-center {
    margin-top: -25px;
    /*width: 650px;  force width in CSS, overrides inline attr */
    /*height: auto;  keeps proportions */
  }

  /* Target your button */
  .path-frontpage .text-align-center .button {
    margin-top: 18px;
  }
}

.ckeditor-accordion-container > dl dt > a, .ckeditor-accordion-container > dl dt > a:not(.button){
      background-color: #08395C !important;
      /*border-bottom: none !important;*/
          border-bottom: 1px solid white !important;
}

/* Remove default link borders/underline */
.ckeditor-accordion-container dl.styled dt a,
.ckeditor-accordion-container dl.styled dt a:hover,
.ckeditor-accordion-container dl.styled dt a:focus,
.ckeditor-accordion-container dl.styled dt a:active {
  /*border: none !important;*/
  text-decoration: none !important;
  box-shadow: none !important;
  outline: none !important;
  
}
.ckeditor-accordion-container dl.styled dt a:hover{
background-color: #00548f !important;}

.ckeditor-accordion-container > dl {
  border: none !important; /*border for each accordion*/
}

body.homepage.page-node-type-flex-page {
  background-color: #08395C !important;
 background-image: radial-gradient(
    circle at center,
    #0d4f80 30%,   /* brighter blue in center */
    #08395C 60%  /* your original flat blue at edges */
  );

}

body.homepage.page-node-type-flex-page .main-content__container,
body.homepage.page-node-type-flex-page .region--content,
body.homepage.page-node-type-flex-page .layout-container,
body.homepage.page-node-type-flex-page .page-wrapper {
  background: transparent;

}

/* Card wrapper */
.block-inline-blockcard .block__content {
  background-color: #ffffff; /* White background */
  border: 1px solid #e0e0e0; /* Light gray border */
  border-radius: 12px; /* Rounded corners */
  overflow: hidden; /* Ensure children stay within border radius */
  box-shadow: 0 2px 6px rgba(0,0,0,0.08); /* Subtle shadow */
  transition: transform 0.3s ease, box-shadow 0.3s ease; /* Smooth hover effect */
  padding: 1rem; /* Inner spacing */
  margin: 1rem 0; /* Space between cards */
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

/* Hover effect */
.block-inline-blockcard .block__content:hover {
  transform: translateY(-15px); /* Lift card slightly */
  box-shadow: 0 6px 20px rgba(0,0,0,0.15); /* Stronger shadow on hover */
}

/* Card image */
.block-inline-blockcard .field--name-field-card-image img {
  width: 100%;
  height: auto;
  border-radius: 8px; /* Slight rounding on image */
  margin-bottom: 1rem;
  object-fit: cover;
}

/* Card title */
.block-inline-blockcard .field--name-field-card-title {
  /*font-size: 1.25rem;
  font-weight: 600;*/
  margin-bottom: 0.5rem;
  color: #0d3a5b; /* Darker accent color */
  margin-top: -75px;
  margin-bottom: -40px;
  text-align: center;
}

/* Card description */
.block-inline-blockcard .field--name-field-card-description p {
  font-size: 1rem;
  line-height: 1.5;
  color: #555555;
  margin: 0;
}

/*hide Card link field*/
.field--name-field-card-link {
    display: none;
}
.field--name-field-card-description{
  margin-bottom: revert-layer !important;
}
/*white font for help block in layout where background is darker*/
body.homepage.page-node-type-flex-page div#block-idffriends-help p {
    color: white;
}


/************************ONLY FOR 2-COLUM LAYOUT******************/
/* Make the 3-column layout equal height */
body.homepage.page-node-type-flex-page .layout--twocol-section {
 /* display: flex;*/
  gap: 1rem; /* optional spacing between cards */
}

/* Ensure each region grows equally */
body.homepage.page-node-type-flex-page .layout--twocol-section .layout__region {
  flex: 1;
  display: flex;
}

/* Force cards inside to stretch to the same height */
body.homepage.page-node-type-flex-page .layout--twocol-section .block-inline-blockcard {
  display: flex;
  flex: 1;
}

body.homepage.page-node-type-flex-page .layout--twocol-section .block-inline-blockcard .block__content {
  display: flex;
  flex-direction: column;
  flex: 1;
}

.about-us div#block-idffriends-page-title,
.members div#block-idffriends-page-title,
.getting-started div#block-idffriends-page-title
 {
    margin-bottom: -10px;
}
.path-forum div#block-idffriends-page-title{
  margin-bottom: 10px
}
.block-layout-builder .text-content h3 {
    /* margin-bottom: 10px; */
    margin-bottom: 0.5em;
    /* padding-bottom: 0.1em; */
    border-bottom: 2px solid;
}

.view-list-of-groups .group-line {
    /* border-bottom: 1px solid #ccc; */
    /* padding-bottom: 1em; */
    /* margin-bottom: -20px; */
    border-top: 1px solid #ccc;
}
/*
.view-all-members .view-filters {
    margin-bottom: -40px;
     padding-bottom: 0; 

}*/
@media (min-width: 43.75rem) {
    .view, .view-content {
        gap: var(--sp1);
    }
}

div#block-idffriends-exposedformforums-search-boxpage-1{
    margin-bottom: -20px;
}


/*@media (min-width: 1800px) {
Groups Whats new title margin*/
.view-what-is-new-groups .view-header h2, .view-group-featured .view-header h2 {
    margin-bottom: 5px;
    border-bottom: 2px solid;
}
.block.block-layout-builder.block-field-blockgroupget-connected-groupsfield-group-description {
    margin-top: 13px;
    margin-bottom: -70px;
}


@media (max-width: 768px) {
  .view-what-is-new-groups .view-header h2 {
    margin-bottom: -30px;
    border-bottom: 2px solid;
}
.block.block-layout-builder.block-field-blockgroupget-connected-groupsfield-group-description {
    margin-top: 13px;
    margin-bottom: 0px;

}

.breadcrumb__item:last-child {
    margin-inline-end: 0;
}

/* Force breadcrumbs to wrap normally instead of scrolling */
#block-idffriends-breadcrumbs .breadcrumb__list {
  display: block !important;      
  overflow: visible !important;   
  width: 100% !important;         
  white-space: normal !important; 
}

#block-idffriends-breadcrumbs .breadcrumb__item {
  display: inline !important;     
  white-space: normal !important;
}

#block-idffriends-breadcrumbs .breadcrumb__link {
  display: inline !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
  max-width: 100% !important;
}

.fc .fc-toolbar {
  display: block;
}



/* doesnt break text. whole breadcrumb__item onto the next line 
#block-idffriends-breadcrumbs .breadcrumb__list {
  display: flex !important;
  flex-wrap: wrap !important; 
  overflow: visible !important;
  width: 100% !important;
  white-space: normal !important;
  padding: 0;
  margin: 0;
}


#block-idffriends-breadcrumbs .breadcrumb__item {
  flex: 0 0 auto !important;   
  white-space: nowrap !important;
  margin-right: 0.5rem;        
}


#block-idffriends-breadcrumbs .breadcrumb__link {
  white-space: nowrap !important; 

}
*/.view-content {
    overflow-x: auto;
    scrollbar-width: thin;
    scrollbar-color: #888 #f0f0f0;
    padding-bottom: 10px;
}
}

#page-wrapper {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

#main-wrapper {
  flex: 1; /* pushes footer down */
}


.view-all-members {
    display: block; /* stack children vertically */
}