/* Cache Buster 1.0 */
/* =================== ======================================
   PRIMARY NAV: Solo Variable Force
   ========================================================= */

/* 1. Target Solo's internal variables - this is the "proper" way to kill the red/blue/height issues */
#primary-menu {
    --r-bg: #17599A !important;        /* Navy Background */
    --r-bg-lk-h: #3696f7 !important;   /* Purple Hover Background */
    --r-tx-lk-h: #000000 !important;   /* White Hover Text */
    height: 50px !important;
    max-height: 50px !important;
}

/* 2. Flatten the inner containers */
#primary-menu-inner, 
#primary-menu-inner .container,
#primary-menu-inner .navigation__menubar {
    height: 50px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    align-items: center !important;
}

/* 3. The Links: The actual 50px height lock */
#primary-menu .nav__menu-link,
#primary-menu .sf-menu li a {
    height: 50px !important;
    line-height: 50px !important; /* Centers text vertically */
    padding: 0 20px !important;
    background-color: transparent !important;
    display: block !important;
}
/* =========================================================
	 FIX: Prevent Gin + Solo sticky header conflict
	 ========================================================= */
.grid-container-alert {
	display: grid;
	grid-template-columns: 386px auto 250px; /* Give the date a fixed width column */
	grid-gap: 1px;
	background-color: #FFFFFF;
	padding: 0;
	border-radius: 10px;
	overflow: hidden;
}
.grid-container-alert > div {
	background-color: #000000;
	display: flex;          /* This is the magic: makes every block a flexbox */
	align-items: center;    /* Vertically centers everything in the banner */
	padding: 0 15px;
	font-size: 24px;
	line-height: 1.2;
	color: yellow;
	border: 1px solid yellow;
}
a.read_on
{
	color:#00FF00 !important;
	font-weight: bold;
}
.gradient_background
{
	background: #002bff;
	background: linear-gradient(45deg, rgba(0, 43, 255, 1) 0%, rgba(255, 0, 0, 1) 50%, rgba(0, 0, 255, 1) 100%);
	vertical-align: middle;
}
/* Middle Block Specifics */
.alert-message-text {
	justify-content: center; /* Horizontally centers the message */
	text-align: center;
	background: black;
	color: white;
}
/* Date Block Specifics */
.alert-message-time {
	justify-content: center; /* FINALLY centers the date horizontally */
	background: black !important;
	color: white !important;
	padding-left: 0 !important; /* Remove that 10px shove to the right */
}
body:not(.path-admin).gin--horizontal-toolbar .region-sticky {
	position: static !important;
	top: auto !important;
	bottom: auto !important;
	transform: none !important;
}

body.gin--horizontal-toolbar .region-sticky-watcher,
body.gin--horizontal-toolbar .sticky-shadow {
	display: none !important;
}

/* =========================================================
	 LibCal / Springshare Customizations
	 ========================================================= */

.s-lc-mc-h {
	background: #17599a !important;
}

.s-lc-ea-h3 {
	display: none !important;
}

.s-lc-c-evt-title a {
	font-size: 20px;
	font-weight: bold;
	text-decoration: none;
}

.s-lc-c-evt-title a:hover,
.s-lc-c-evt-title a:focus {
	text-decoration: underline;
}

.s-lc-c-evt-des {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	overflow: hidden;
}

.s-lc-c-evt-des p {
	margin: 0;
}

.media-body,
.media-right {
	display: table-cell;
	vertical-align: top;
}

.media-right {
	padding-left: 10px;
}

.s-lc-c-evt-fi {
	border: 2px solid #ddd;
	border-radius: 4px;
}

.s-lc-c-evt .dl-horizontal dt {
	display: none;
}

.s-lc-c-evt .dl-horizontal dd:nth-child(4),
.dl-horizontal dt:nth-child(n+5),
.dl-horizontal dd:nth-child(n+5) {
	display: none;
}

.s-lc-c-evt .dl-horizontal dd {
	margin-left: -50px;
	font-weight: bold;
}

.s-lc-c-erh {
	display: none !important;
}

/* =========================================================
	 Slideshow & Views Cleanup
	 ========================================================= */

.contextual-region.vvj-slideshow,
.vvj-slideshow,
.vvjs {
	border: none !important;
	box-shadow: none !important;
}

img.solo.img-style-slideshow-955x395 {
	width: 100% !important;
	height: 100% !important;
	object-fit: contain !important;
}

.vvjs a.more-link,
.view-display-column-stories a.more-link {
    display: inline-block !important;
    border-radius: 999px !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    line-height: 1.1 !important;
    text-decoration: none !important;
}

.view-display-column-stories a.more-link:hover,
.view-display-column-stories a.more-link:focus {
	background-color: #17559a !important;
color: white !important;
}

/* =========================================================
	 Global Cleanup
	 ========================================================= */

body:not([data-gin-theme]) ,
body:not([data-gin-theme]) * {
  text-shadow: none !important;
}

.page-wrapper {
	--r-bg: #ffffff !important;
	background-color: #ffffff !important;
}

/* =========================================================
	 Primary Navigation
	 ========================================================= */

#primary-menu {
	--r-bg: #17599A !important;
	background-color: #17599A !important;
	width: 100%;
}

/* =========================================================
	 Footer Block Title Bars
	 ========================================================= */
/* Prevent footer menu items from overlapping */
#bottom-container a.sf-depth-1 {
	display: block;
	line-height: 1.4;
	padding: 0.25em 0;
}
.bottom-container h2.solo-block-title {
	font-size: 1.2rem;
	line-height: 1.2;
	font-weight: 600;

	margin: 0;
	padding: 0.75rem 1rem;

	box-sizing: border-box;
	width: calc(100% + (2 * var(--solo-gap)));
	margin-left: calc(var(--solo-gap) * -1);
	margin-right: calc(var(--solo-gap) * -1);

	background-color: #17599A;
	color: #ffffff;

	display: flex;
	align-items: center;
	justify-content: center;

	border-top-left-radius: var(--solo-px4);
	border-top-right-radius: var(--solo-px4);
}

.bottom-container .region-inner {
	padding-top: 0;
}

.bottom-container h2.solo-block-title + * {
	padding-top: var(--solo-gap);
}

/* =========================================================
	 Sidebar "What's New" Block Title
	 ========================================================= */

.region-left .solo-block-title {
    font-size: 1.65rem;
    line-height: 1.25;
    font-weight: 600;

    margin: 0 !important;
    padding: 0.75rem 1rem !important;

    background-color: #17599A;
    color: #ffffff;

    display: flex;
    align-items: center;
    justify-content: center;

    box-sizing: border-box;

    width: calc(100% + (2 * var(--solo-gap))) !important;
    margin-left: calc(var(--solo-gap) * -1) !important;
    margin-right: calc(var(--solo-gap) * -1) !important;
}
/* WHAT'S NEW ONLY — restore rounded top corners */
#block-solo-subtheme-frontpageleftnavbarblock .solo-block-title {
	border-top-left-radius: var(--solo-px4);
	border-top-right-radius: var(--solo-px4);
top: 0 !important;
}
/* RIGHT SIDEBAR: TODAY'S HOURS — rounded top corners */
/* #block-solo-subtheme-todayshours .solo-block-title {
	border-top-left-radius: var(--solo-px4);
	border-top-right-radius: var(--solo-px4);
} */
#block-solo-subtheme-todayshours .solo-block-title {
    padding-top: 0.75rem !important;
    padding-bottom: 0.75rem !important;
}
/* =========================================================
	 RIGHT SIDEBAR: TODAY'S HOURS — CLOSINGS LINK BAR
	 ---------------------------------------------------------
	 Styles the "CLOSINGS" h3 > a as a full-width CTA bar
	 - Blue background, white text
	 - Flush left/right inside the block
	 - No overflow
	 - Scoped ONLY to the TODAY'S HOURS block
	 ========================================================= */

/* Allow internal rows to span full width (no padding fight) */
#block-solo-subtheme-todayshours .region-inner {
	padding-left: 0;
	padding-right: 0;
}

/* TODAY'S HOURS: CLOSINGS bar — truly flush left & right */
/* TODAY'S HOURS: CLOSINGS bar — force true edge-to-edge */
#block-solo-subtheme-todayshours h3 {
	position: relative;
	left: calc(var(--solo-gap) * -1);
	right: calc(var(--solo-gap) * -1);

	width: calc(100% + (2 * var(--solo-gap)));

	margin: var(--solo-gap) 0 0 0;
	padding: 0;

	background-color: #17599A;
	text-align: center;
}
/* CLOSINGS link itself */
#block-solo-subtheme-todayshours h3 a {
	display: flex;
	align-items: center;
	justify-content: center;

	padding: 0.65rem 1rem;

	/* Override Solo link color system */
	--r-tx: #ffffff;
	color: #ffffff !important;

	font-weight: 600;
	text-decoration: none;
}

/* Hover / focus (accessibility-safe) */
#block-solo-subtheme-todayshours h3 a:hover,
#block-solo-subtheme-todayshours h3 a:focus {
	background-color: #0f4172;
	color: #ffffff;
	text-decoration: underline;
}
/* =========================================================
	 FRONT PAGE: FACEBOOK FEED (page-content title)
	 ---------------------------------------------------------
	 The Home (/home) page uses page HTML, not a block, for
	 the Facebook Feed title. This styles the heading to behave
	 like a block title:
	 - Flush top, left, and right
	 - Blue background, white centered text
	 - Rounded top corners
	 - Safe, tightly scoped to front page right sidebar
	 ========================================================= */
/* =========================================================
	 FRONT PAGE: Facebook Feed — remove top card padding
	 ========================================================= */

/* Remove top padding ONLY for the Facebook Feed section */
.path-frontpage .main-box-inner:has(iframe) {
	padding-top: 0;
}

/* Style the Facebook Feed heading as a full-width title bar */
.path-frontpage .main-box-inner h2:has(~ * iframe) {
	font-size: 1.65rem;	 /* visually matches sidebars */
	font-weight: 600;
	line-height: 1.25;

	margin: 0;
	padding: 0.75rem 1rem;

	margin-left: calc(var(--solo-gap) * -1 - 1px);
	margin-right: calc(var(--solo-gap) * -1 - 1px);

	background-color: #17599A;
	color: #ffffff;

	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;

	border-top-left-radius: var(--solo-px4);
	border-top-right-radius: var(--solo-px4);

	/* DO NOT add line-height */
	/* DO NOT add min-height or height */
}
/* Restore spacing BELOW the title bar */
.path-frontpage .main-box-inner h2:has(~ * iframe) + *,
.path-frontpage .main-box-inner h3:has(~ * iframe) + * {
	margin-top: var(--solo-gap);
}
/*======================================================*/
#top-container {
	background: white;
}
#main-container {
	background: white;
}
#bottom-container {
	background: white;
}
/*======================================================*/
/* Visually reduce page titles to h2 scale (keep semantic h1) */
.page-title-text {
	font-size: 2rem !important;
	line-height: 1 !important;
	font-weight: 600;

	/* Trim default heading margins */
	margin-top: 0;
	margin-bottom: 0.35rem;
}
/* Reduce excess vertical space around page titles */
.page-title {
	padding-top: 0;
	padding-bottom: 0;

}
/* Increase base body text size for readability */
.page-wrapper {
	--solo-px16: 17px;
}
.page-wrapper li {
	line-height: 1.6;
}
/* Increase base reading text everywhere content appears */
.page-wrapper {
	font-size: 1.125rem !important; /* ≈ 17px */
	line-height: 1.65;
}

/* Ensure lists inherit the same readable size */
.page-wrapper li,
.page-wrapper p {
	font-size: inherit;
	line-height: inherit;
}
/* Make content h3 headings fully black (exclude block titles) */
.page-wrapper .node__content h3:not(.solo-block-title) {
	color: #000000;
}
/* Fix overlapping text in vertical Superfish menus */
ul.sf-menu.sf-vertical {
	line-height: normal; /* reset the broken 0.15 */
}

ul.sf-menu.sf-vertical a {
	line-height: 1.4;
	white-space: normal;
	word-break: break-word;
}
/* Tighten spacing for vertical Superfish menus */
ul.sf-menu.sf-vertical a {
	padding-top: 0.35em;
	padding-bottom: 0.35em;
}
/* --- PRIMARY NAV: eliminate divots without breaking dropdowns --- */

/* Solid nav background */
#primary-menu {
	background-color: #17599A !important;
}

/* Allow dropdowns to overflow */
#primary-menu-inner {
	overflow: visible;
}

/* Explicitly allow dropdown panels */
#primary-menu-inner .navigation__submenu {
	overflow: visible;
}
/* Normalize primary nav link geometry */
#primary-menu .nav__menu-link {
	line-height: 1.2;
	padding-top: 0.7rem;
	padding-bottom: 0.65rem;
}

/* Push the entire menu row down to hide divots */
#primary-menu-inner .navigation__menubar {
	padding-top: 0.4rem;
}
/* Primary navigation hover/focus colors (replace red) */
#primary-menu {
	--r-bg-lk-h: #3696f7 !important; /* hover background */
	--r-tx-lk-h: #000000 !important; /* hover text */
}

/* Force Superfish vertical menu hover to match primary nav */
.block-superfish .sf-menu li > a:hover,
.block-superfish .sf-menu li.sfHover > a,
.block-superfish .sf-menu li > a:focus {
	background-color:#3696f7 !important; /* same green */
	color: #000000 !important;						/* same text */
}

/* Increase spacing between primary nav links without wrapping */
#primary-menu-inner .navigation__menubar {
	column-gap: 1.25rem;
	flex-wrap: nowrap;
}

/* Improve vertical alignment of primary nav text + arrow */
#primary-menu-inner .navigation__menubar > li > a,
#primary-menu-inner .navigation__menubar > li > button {
	padding-top: 0.6rem;
	padding-bottom: 0.9rem;
}
#primary-menu-inner .nav__menu-link {
	padding-top: 0.8rem;
}
/*===================== MEDIA STUFF =============================*/
/*===================== MEDIA STUFF =============================*/
/*===================== MEDIA STUFF =============================*/
@media screen and (max-width: 900px) {
    /* 1. Reset the whole header area to stay vertical and natural */
    header, #header-container, .header-middle {
        display: block !important;
        height: auto !important;
        position: relative !important;
    }

    /* 2. THE ALERT: Force it to be a simple vertical stack */
    #block-alertbanner {
        display: block !important;
        position: relative !important;
        width: 100% !important;
        margin-bottom: 20px !important; /* Pushes the logo DOWN so it's not blocked */
    }

    /* 3. The Image: Shrink it so it's not a wall */
    #block-alertbanner img {
        width: 100% !important;
        max-width: 300px !important;
        height: auto !important;
        margin: 0 auto !important;
        display: block !important;
    }

    /* 4. THE TEXT: Force it to appear underneath the image */
    #block-alertbanner .content, 
    #block-alertbanner em, 
    #block-alertbanner span {
        display: block !important;
        visibility: visible !important;
        text-align: center !important;
        color: #ffffff !important;
        padding: 10px !important;
    }
}
/*===================*/
.view-banner-slideshow {
  aspect-ratio: 12 / 5;
  height: auto;
  max-width: 1200px;
}

.view-banner-slideshow img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
/*==== ODB Block Title ========*/
/* Ensure the sidebar panel owns the rounding and clips children */
.sidebar-box-first-inner {
  position: relative;
  border-radius: 6px;   /* match Solo's rounding */
  overflow: hidden;
}

/* Paint the full-width dark-blue header at the region level */
.sidebar-box-first-inner:has(#block-solo-subtheme-odbcategories)::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;

section#block-solo-subtheme-odbcategories,
section#block-solo-subtheme-odbcategories *,
section#block-solo-subtheme-odbcategories *::before,
section#block-solo-subtheme-odbcategories *::after {
    border-radius: 0 !important;
}

  height: 3rem;
  background-color: #17599A;

  z-index: 0;
}

/* Header text sits on top of the blue bar */
#block-solo-subtheme-odbcategories h3.odb {
  position: relative;
  z-index: 1;

  margin: 0;
  padding: 0.75rem 1rem;

  background: none;
  color: #ffffff;
  text-align: center;
  font-weight: 600;
}

/* Optional: small breathing room below the header */
#block-solo-subtheme-odbcategories .field--name-body {
  padding-top: 0.5rem;
}
/*======== Kill Pencil Icon for Main Navbar =======*/
/* Hide the contextual links (pencil) specifically for the main menu block */
/* This targets the system ID for the main navigation block */
#block-mainnavigation .contextual, 
.block-system-menu-block-main .contextual {
    display: none !important;
}

/* Optional: Show it again ONLY if the user is the super admin (uid 1) */
/* Note: This requires your theme to put user-role classes on the body tag */
body.user-1 #block-mainnavigation .contextual {
    display: block !important;
}
/*====================================*/
/* Sidebar Flyout Menu - Tight Alignment */
@media (min-width: 992px) {
    /* 1. The "Nuclear" fix: Remove clipping from all sidebar containers */
    div[class*="sidebar"],
    .sidebar-box-first,
    .region-sidebar-first .block,
    .region-sidebar-first .content {
        overflow: visible !important;
    }

    /* 2. Parent list items - anchor point for the flyout */
    .region-sidebar-first ul.menu li {
        position: relative !important;
    }

   /* 3. The Submenu Flyout - Forced Nudge */
    .region-sidebar-first ul.menu li ul {
        position: absolute !important;
        /* Reset left to exactly the edge, then pull it back with margin */
        left: 100% !important; 
        margin-left: -35px !important; /* This 'cheats' the hard limit */
        
        top: -2px !important;
        z-index: 1000 !important;
        min-width: 210px;
        background: #3696f7;
        border: 1px solid #ccc;
        box-shadow: 4px 4px 10px rgba(0,0,0,0.15);
        display: none;
        padding: 5px 0;
    }

    /* 4. Show on Hover */
    .region-sidebar-first ul.menu li:hover > ul {
        display: block !important;
    }
}
/*==================================*/
/* 1. Force the list item to be a rigid, single line */
.region-footer-columns li,
#block-contactus li,
#block-aboutccls li {
  display: block !important;
  white-space: nowrap !important;
  overflow: visible !important;
}

/* 2. The Link - We add a 6px 'tail' of letter spacing to the end */
a[class*="link-purpose"] {
  display: inline !important;
  text-decoration: none !important;
  padding-right: 6px !important; /* This is the 4-6px gap */
}

/* 3. The Icon - Force it to sit inside the text flow */
link-purpose-icon {
  display: inline !important; /* Not inline-block, just pure inline */
  margin: 0 !important;
  padding: 0 !important;
  vertical-align: middle !important;
}

/* 4. Target the internal SVG/IMG specifically */
link-purpose-icon svg,
link-purpose-icon img {
  display: inline-block !important;
  width: 1.1em !important;
  height: 1.1em !important;
  vertical-align: middle !important;
  margin-left: 0 !important;
}

/* 5. Kill Social Media Ghosts */
.social-links a + link-purpose-icon,
footer .social-links link-purpose-icon {
  display: none !important;
}

/* 6. Push the column width to the absolute limit */
#block-contactus, #block-aboutccls {
  min-width: 400px !important; 
}
/*==========================================*/
/* 1. Force the social links to align their contents to the middle */
.footer-menu-first a {
  display: inline-flex !important;
  align-items: center !important; /* Vertically centers the text and the icon */
  vertical-align: middle !important;
  height: 24px; /* Matches the typical height of your footer text */
  line-height: 1 !important;
}

/* 2. Specifically nudge the RSS icon/SVG if it's still being stubborn */
.footer-menu-first a[href*="rss"], 
.footer-menu-first a[href*="feed"] {
  position: relative;
  top: -1px; /* Adjust this (e.g., -2px or -3px) until it hits the sweet spot */
}

/* 3. If the RSS icon is an SVG, make sure it isn't carrying extra margin */
.footer-menu-first a svg {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
/*===========================================*/
/* 1. Force the main list to have NO bullets at the top level */
ul#front-page-whats-new {
  list-style: none !important;
  padding-left: 0 !important;
  margin-left: 0 !important;
  margin-top: -20px !important;
}

/* 2. Apply a clean, single bullet to ONLY the direct children LIs */
ul#front-page-whats-new > li {
  list-style-type: disc !important;
  list-style-position: inside !important; /* This helps prevent double-indents */
  margin-left: 0 !important;
}

/* 3. If there is a hidden nested list inside that first LI, Nuke it */
ul#front-page-whats-new li ul, 
ul#front-page-whats-new li li {
  list-style-type: none !important;
  padding-left: 0 !important;
  display: inline !important; /* Forces nested items to stay on the same line */
}
/*=====================*/
ul#front-page-whats-new li a {
  font-size: 18px !important; /* Back to a human-readable size */
  line-height: 1.3 !important;
  letter-spacing: -0.2px; /* Just a tiny bit tighter to save horizontal space */
  display: block; /* Makes the whole area clickable, which is better for accessibility */
}

/* If it's STILL wrapping, this will force it to stay on one line */
ul#front-page-whats-new li {
  white-space: nowrap; 
}
/*================================*/
/* Target the list item, the link, and the span all at once */
#block-superfishwhat-s-new ul.sf-menu li a,
#block-superfishwhat-s-new ul.sf-menu li a span,
#block-superfishwhat-s-new .sf-menu.sf-js-enabled a {
    font-size: 22px !important; /* Using PX temporarily to be absolutely sure */
    line-height: 1.4 !important;
    color: #000 !important;    /* Change color just to see if it's working */
}
/*==================================*/
/* Fix Link Purpose icon breaking navbar vertical alignment */
.main-nav a.link-purpose-nobreak {
  display: inline-flex;
  align-items: center;
  height: 100%;
  line-height: normal;
  gap: 0.3em;
}

.main-nav a.link-purpose-nobreak span,
.main-nav a.link-purpose-nobreak::after {
  display: inline-block;
}
/*========================================*/
/* Change main menu hover colors */
#block-solo-subtheme-mainnavigation .nav__menu-link-main:hover {
    background-color: #3696f7 !important;
    color: #000000 !important;
}
/* Left-align dropdown menu links */
#block-solo-subtheme-mainnavigation .sub__menu-main .nav__menu-link {
    text-align: left !important;
    padding-left: 15px !important;
    justify-content: flex-start !important; /* Forces flex containers to start at the left */
}
/* Tighten the vertical spacing in dropdown menus */
#block-solo-subtheme-mainnavigation .sub__menu-main .nav__menu-link {
    line-height: 1.2 !important; /* Adjust this number to go tighter (1.1) or looser (1.3) */
    padding-top: 5px !important;  /* Nudges the top of the link box */
    padding-bottom: 5px !important; /* Nudges the bottom of the link box */
}
/* Keeps the main menu link green and white while the dropdown is active */
#block-solo-subtheme-mainnavigation li.nav__menu-item:hover > a.nav__menu-link-main {
    background-color: #3696f7 !important;
    color: #000000 !important;
}

/* Ensure the arrow icon (if any) also stays white during hover */
#block-solo-subtheme-mainnavigation li.nav__menu-item:hover > .en-link .toggler-icon svg {
    stroke: #3696f7 !important;
}
/*======= EVENTS TWEAKS =========*/
/* Align EVENTS and its icon vertically in the center */
#block-solo-subtheme-mainnavigation li.external-link {
    display: flex !important;
    align-items: center !important;
    height: 100% !important; /* Forces it to occupy the full height of the bar */
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Ensure the anchor inside also uses flex for internal alignment */
#block-solo-subtheme-mainnavigation li.external-link a.nav__menu-link {
    display: flex !important;
    align-items: center !important;
    height: 100% !important;
    margin: 0 !important;
}

/* Fine-tune the icon so it doesn't push the text around */
#block-solo-subtheme-mainnavigation li.external-link .link-purpose-icon {
    margin-left: 6px !important;
    display: flex !important;
    align-items: center !important;
}
/*================================================================*/
/* THE "GOLDILOCKS" FIX: Catalog Dropdown Spacing                 */
/*================================================================*/

/* 1. Give the box just a tiny bit more breathing room */
#block-solo-subtheme-mainnavigation .sub__menu-main li.external-link {
    display: block !important;
    height: 38px !important; /* Bumped from 35px to 38px */
    min-height: 38px !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* 2. Center the link text within that slightly taller box */
#block-solo-subtheme-mainnavigation .sub__menu-main li.external-link a.nav__menu-link {
    display: flex !important;
    height: 100% !important;
    padding: 0 15px !important;
    align-items: center !important;
    justify-content: flex-start !important;
}

/* 3. Reduce the negative margin to open up the gap below */
#block-solo-subtheme-mainnavigation .sub__menu-main li.external-link + li {
    margin-top: -4px !important; /* Changed from -10px to -4px to add space */
}

/* 4. Ensure icon doesn't shift the baseline */
#block-solo-subtheme-mainnavigation .sub__menu-main li.external-link .link-purpose-icon {
    margin-left: 8px !important;
    display: flex !important;
    align-items: center !important;
}
/********************************************************************/
/*                                         Down Carat Fix(es)                                            */
/********************************************************************/
/* Moves the down arrow closer to the parent menu text */
#block-solo-subtheme-mainnavigation .dropdown-toggler {
    margin-left: -18px !important; 
    padding-left: 0 !important;
    padding-right: 2px !important;
    display: flex !important;
    align-items: center !important;
}

/* Ensures the icon itself doesn't have extra internal space */
#block-solo-subtheme-mainnavigation .dropdown-toggler .toggler-icon {
    display: flex !important;
    align-items: center !important;
}
/*********************************************************************/
/*                                 Fix What's New Superfish menu                                */
/*********************************************************************/
/*================================================================*/
/*                    THE "FINAL POLISH": What's New Sidebar Refinement                                       */
/*================================================================*/

/* 1. Tighten the vertical gap between the list items */
#superfish-what-s-new li {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    margin-bottom: 2px !important; /* Reduced from 5px to 2px to close the gap */
    padding: 0 !important;
}

/* 2. Increase font size and tighten line spacing */
#superfish-what-s-new li a.sf-depth-1 {
    padding-left: 0 !important;
    font-size: 1.35rem !important; /* Bumped up for better visibility */
    font-weight: 800 !important;
    line-height: 1.1 !important;  /* Tightens the space around the text itself */
    text-decoration: none !important;
    white-space: nowrap !important;
}

/* 3. Scale the icon to match the new 1.35rem font size */
#superfish-what-s-new li span.link-purpose-icon {
    display: inline-flex !important;
    margin-left: 8px !important;
    align-items: center !important;
}

#superfish-what-s-new li span.link-purpose-icon svg {
    width: 20px !important;  /* Scaled up from 16px */
    height: 20px !important; /* Scaled up from 16px */
}
/*=============================================*/
/*================================================================*/
/* SLIDESHOW BANNER: Final Icon Removal                           */
/*================================================================*/

/* 1. Target the linkpurpose icon specifically within the slideshow view field */
.views-field-field-slideshow-image .link-purpose-icon,
.views-field-field-slideshow-image .link-purpose-text {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
}

/* 2. Remove any "ghost" padding or background images on the banner link itself */
.views-field-field-slideshow-image a.link-purpose {
    background: none !important;
    padding-right: 0 !important;
    margin-right: 0 !important;
}
/*================================================================*/
/* QUICKLINKS FIX: Remove Icon & Restore Button Size              */
/*================================================================*/

/* 1. Hide the icon and text */
.quicklink .link-purpose-icon,
.quicklink .link-purpose-text {
    display: none !important;
}

/* 2. Restore the button size and alignment */
.quicklink a.link-purpose {
    display: inline-flex !important; /* Switch back to flex to match neighbors */
    width: 100% !important;         /* Force it to fill the grid cell */
    justify-content: center !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* 3. Ensure the image itself doesn't shrink */
.quicklink img.quicklink_image {
    width: 150px !important;  /* Matches your HTML width */
    height: auto !important;
    display: block !important;
}
/*================================================================*/
/* FINAL RESTORE: Quick Links (Buttons) & Today's Hours (Text)    */
/*================================================================*/
/*================================================================*/
/* QUICKLINKS REDUX: Fill Column & Restore Spacing                */
/*================================================================*/

/* 1. Make the container fill the sidebar column */
.quicklink {
    display: block !important;
    width: 100% !important;   /* Let it expand to the sidebar width */
    margin: 0 0 10px 0 !important; /* Tight vertical gap between buttons */
    padding: 0 !important;
}

/* 2. Force the link to be a flexible container for the image */
.quicklink a.link-purpose {
    display: flex !important;
    width: 100% !important;
    height: auto !important;
    justify-content: center !important;
    padding: 0 !important;
}

/* 3. Make the image responsive so it grows back to its full size */
.quicklink img.quicklink_image {
    width: 100% !important;    /* Grow to fill the 'a' tag */
    max-width: 200px !important; /* Prevents it from getting absurdly huge */
    height: auto !important;
    display: block !important;
}

/* 4. Keep the icons and text dead and buried */
.quicklink .link-purpose-icon, 
.quicklink .link-purpose-text {
    display: none !important;
}
/* --- 2. TODAY'S HOURS (Stop Wrapping) --- */
/* Target only the library names in the Hours table */
#block-solo-subtheme-todayshours .hours-col-loc a {
    display: inline !important; /* 'inline' is safer than flex here */
    white-space: nowrap !important;
    font-size: 15px !important;
}

/* Hide the icon ONLY in the Hours block */
#block-solo-subtheme-todayshours .link-purpose-icon {
    display: none !important;
}

/* Tighten the table cells to prevent the 'Hours' column from squishing */
#block-solo-subtheme-todayshours th.hours-col-loc {
    padding-right: 5px !important;
    width: 60% !important; /* Buy the names more room */
}

#block-solo-subtheme-todayshours td.hours-col-time {
    width: 40% !important;
    text-align: right !important;
}
/*================================================================*/
/* FACEBOOK FEED: Center Alignment (Targeted)                     */
/*================================================================*/

/* 1. Target the Facebook container specifically */
.fb-page, 
.fb-page span, 
.fb-page iframe {
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* 2. Remove any float that might be pulling it left */
.fb-page {
    float: none !important;
    text-align: center !important;
}
/*========================================*/
/*                                     Gradient HR                                    */
/*========================================*/
hr.style-one {
border: 0; /* Removes default border */
height: 1px; /* Sets the thickness */
background: linear-gradient(to right, white, black, white); /* Gradient effect */
}
/*========================================*/
/*================================================================*/
/* 1. Remove the 'inner' spacing at the top of the block container */
#block-solo-subtheme-whatsnew {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

/* 2. Target the title and remove its top margin/padding */
#block-solo-subtheme-whatsnew .solo-block-title {
    margin-top: 0 !important;
    padding-top: 15px !important; /* Adjust this to control how much blue space is ABOVE the text */
    position: relative !important;
    top: 0 !important;
}

/* 3. Increase the font size as requested */
#block-solo-subtheme-whatsnew .solo-block-title {
    font-size: 1.3rem !important; /* Slightly larger than standard */
    font-weight: bold !important;
}
/* 1. Kill any top padding in the block container */
#block-solo-subtheme-whatsnew {
    padding-top: 0 !important;
}

/* 2. Kill any top margin on the heading itself */
#block-solo-subtheme-whatsnew .solo-block-title {
    margin-top: 0 !important;
    
    /* This ensures the blue 'reaches' the very top of its container */
    border-top-left-radius: 9px !important;
    border-top-right-radius: 9px !important;
}

/* 3. Adjust vertical height (since you mentioned it was 'too short') */
#block-solo-subtheme-whatsnew .solo-block-title {
    padding-top: 20px !important;    /* Space above the text */
    padding-bottom: 20px !important; /* Space below the text */
}
/*================================================================*/
/* WHAT'S NEW: Final Top Alignment Correction                     */
/*================================================================*/

/* 1. Force the block container to start at the absolute top */
#block-solo-subtheme-whatsnew {
    padding-top: 0 !important;
    margin-top: 0 !important;
	overflow: hidden;
}

/* 2. Target the title to remove its top margin and snap it up */
#block-solo-subtheme-whatsnew .solo-block-title {
    margin-top: 0 !important;
    
    /* Ensure the background 'fills' the rounded corner space */
    border-top-left-radius: 9px !important;
    border-top-right-radius: 9px !important;
    
    /* This ensures the title ignores any parent padding */
    position: relative !important;
    top: 0 !important;
}

/* 3. If there is still a tiny gap, use a slight negative margin */
#block-solo-subtheme-whatsnew .solo-block-title {
    margin-top: -1px !important; 
}
/*================================================================*/
/* WHAT'S NEW: Block-Level Header Strategy                        */
/*================================================================*/

/* 1. Make the main block container behave like the 'Hours' block */
#block-solo-subtheme-whatsnew {
    padding: 0 !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    border: 1px solid #e0e0e0;
    background-color: transparent !important;
}

/* 2. Style the Title to be the 'Lid' of the block */
#block-solo-subtheme-whatsnew h2.solo-block-title {
    /* Kill theme margins/padding that cause the gaps */
    margin: 0 !important;
    display: block !important;
    width: 100% !important;
    
    /* HEIGHT: Increased padding to make the blue bar taller */
    padding: 25px 0 !important; 
    
    /* COLORS: Deep Blue to match 'Today's Hours' */
    background-color: #17599a !important; 
    color: #ffffff !important;
    
    /* FONT: Force a high-profile look */
    font-size: 22px !important;
    font-weight: bold !important;
    text-align: center !important;
    text-transform: none !important;

    /* SNAP TO TOP: Ensures no white sliver at the peak */
    border-top-left-radius: 10px !important;
    border-top-right-radius: 10px !important;
}

/* 3. Fix the 'Narrowness' by targeting the inner wrapper Solo uses */
#block-solo-subtheme-whatsnew .solo-clear, 
#block-solo-subtheme-whatsnew .content {
    padding: 0 !important;
    margin: 0 !important;
}

/* 4. Restore the link padding so they aren't squashed */
#block-solo-subtheme-whatsnew ul.menu {
    padding: 20px 15px !important;
    margin: 0 !important;
    background-color: rgba(255,255,255,0); /* Ensures the rest of the block is white */
}
#block-solo-subtheme-whatsnew .solo-block-title {
  background-color: #17559a;
  color: #ffffff;

  /* Break out of the block padding */
  margin-left: -15px;
  margin-right: -15px;

  /* Keep nice spacing inside */
  padding: 10px 15px;
}
/* iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii */
/*================================================================*/
/* EVENTS: Match "What's New" Typography & Spacing                 */
/*================================================================*/

/* 1. Match item spacing */
#superfish-events li,
#superfish-ame-menu li {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    margin-bottom: 2px !important;
    padding: 0 !important;
}

/* 2. Match font size, weight, and line-height */
#superfish-events li a.sf-depth-1,
#superfish-ame-menu li a.sf-depth-1 {
    padding-left: 0 !important;
    font-size: 1.35rem !important;
    font-weight: 400 !important;
    line-height: 0.75 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
	color: #17559a !important;
}

/* 3. Match icon alignment + size */
#superfish-events li span.link-purpose-icon {
    display: inline-flex !important;
    margin-left: 4px !important;
    align-items: center !important;
}

#superfish-events li span.link-purpose-icon svg {
    width: 20px !important;
    height: 20px !important;
}

ul#superfish-events.sf-menu li a:hover
ul##superfish-ame-menu.sf-menu li a:hover {
	color: white !important;
	background: #17559a !important;
}

/* 00000000000000000000000000000000000000000 */
ul.sf-menu.sf-vertical a {
    padding-top: 0.35em;
    padding-bottom: 0.35em;
    margin-left: -15px;
}
#superfish-events {
  margin-bottom: 20px;
}
/* Remove space below dummy title block */
#block-solo_subtheme_dummyheade {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* Remove space above What's New */
#block-solo-subtheme-whatsnew {
  margin-top: 0 !important;
  padding-top: 0 !important;
}
/* Apply rounded "card" look */
#block-solo-subtheme-dummytitleblock,
#block-solo-subtheme-whatsnew {
  border-radius: 6px;
  overflow: hidden;
}
#block-solo-subtheme-whatsnew .solo-block-title {
  border-top-left-radius: 6px;
  border-top-right-radius: 6px;
}
.region-left .sidebar-box-first-inner {
  border-radius: 6px;
  overflow: hidden;
}
/* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! */
/* 1. Forcefully kill any structural footprint from linkpurpose elements inside quicklinks */
a.quicklink span.link-purpose-nobreak,
a.quicklink span.link-purpose-text,
a.quicklink svg.link-purpose-icon {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 0 !important;
  height: 0 !important;
  position: absolute !important; /* Takes it completely out of the layout flow */
}

/* 2. Lock down the quicklink anchor layout to prevent elements from shifting right */
a.quicklink {
  display: inline-block !important;
  padding-right: 0 !important;
  margin-right: 0 !important;
  text-align: left !important; /* Prevents center/right alignment bugs if the container stretches */
}

/* 3. Ensure the eBook image itself fills the anchor without extra whitespace padding */
a.quicklink img {
  margin-right: 0 !important;
  padding-right: 0 !important;
  display: block !important;
}
/* Target the specific block container to keep styles isolated */
.region-sidebar-first .block-quicklinks a,
.region-sidebar-first a[href*="eBooks_eAudio"],
a.quicklink {
  display: inline-block !important;
  vertical-align: top !important;
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

/* Force the eBook image to strip out any trailing text/whitespace push */
.region-sidebar-first a img[src*="sidebar_eBooks_eAudio"] {
  display: block !important;
  float: left !important; /* Forces the image to lock left against the container boundary */
  margin: 0 !important;
  padding: 0 !important;
}

/* Completely obliterate any text nodes or span wrappers appended by linkpurpose inside this block */
.region-sidebar-first a .link-purpose-nobreak,
.region-sidebar-first a [class*="link-purpose"] {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
}
#block-solo-subtheme-whatsnew {
  margin-top: -20px !important;
}
#block-solo-subtheme-whatsnew,
.block-superfishwhat-s-new {
  border: none !important;
  box-shadow: none !important; /* Clears any faint box-shadows acting like borders */
}
/*=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=*/
.test {
  color: red;
}

#block-solo-subtheme-whatsnew a {
  font-size: 0.85rem !important;
}

/*=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=!=*/
/* ==========================================
   4. FOOTER SUPERFISH MENUS: FIXED ID SQUIDGE
   ========================================== */

/* Target the exact Superfish list IDs for all four footer columns */
#superfish-footer-about-ccls,
#superfish-footer-contact-us,
#superfish-footer-news-updates,
#superfish-footer-member-libraries {
  margin-left: 0 !important;    /* Forces all 4 columns to squidge over identically */
  width: auto !important;          /* Let the width dynamically adapt to the margin */
  display: block !important;
  padding-left: 0 !important;
}

/* Force footer typography down so long titles physically fit on one line */
.region-footer ul.sf-menu li a,
.region-footer ul.sf-menu span {
  font-size: 0.80rem !important;   /* Scaled down cleanly so long branch names fit */
  white-space: nowrap !important; /* Strictly forbids text from splitting into two lines */
  padding-left: 0 !important;
  margin-left: 0 !important;
  display: inline-block !important;
}

block-superfishfooter---about-ccls {
border-radius: 10px 10px 0 0 !important;
}

/* Ensure layout list items don't add duplicate spacing or restrict width */
.region-footer ul.sf-menu li {
  width: 100% !important;
  margin-left: 0 !important;
  padding-left: 0 !important;
}

/* Keep internal linkpurpose external icons tucked neatly next to the text */
.region-footer ul.sf-menu a .link-purpose-icon {
  position: static !important;
  display: inline-block !important;
  vertical-align: middle !important;
  margin-left: 5px !important;
}

/* ==========================================
   5. HEADER BRANDING: HORIZONTAL EXPANSION
   ========================================== */

/* Target the precise green branch location heading */
.sim-title-box h2,
#site-name-wrapper h2,
[class*="site-branding"] h2 {
  margin-top: 3px !important;       /* Clean vertical nudge down 3px */
  display: block !important;        /* Breaks out of any rigid inline restrictions */
  width: 100% !important;           /* Forces the box to take up the full available width */
  max-width: none !important;       /* Removes any structural layout clamps */
  letter-spacing: 1.5px !important; /* Forces the text to expand horizontally */
}
/* ==========================================
   7. TEASER WIDGETS: CLEAN "MORE..." LINKS
   ========================================== */

/* Target the base link, visited state, and active states together */
.node-teaser-more a,
.node-teaser-more a:link,
.node-teaser-more a:visited,
.views-field-more-link a,
.views-field-more-link a:link,
.views-field-more-link a:visited,
.more-link a,
.more-link a:link,
.more-link a:visited,
[class*="more"] a,
[class*="more"] a:link,
[class*="more"] a:visited {
  background: none !important;            /* Vaporizes the background rectangle */
  background-color: transparent !important;
  border: none !important;                /* Removes any default button borders */
  box-shadow: none !important;            /* Strips away any 3D button shading */
  color: #17559a !important;              /* Locks in the exact brand blue color */
  /*padding: 0 !important;*/                  /* Eliminates the thick button padding */
  display: inline-block !important;       /* Lets it sit naturally next to or under text */
  /*text-decoration: underline !important;*/      /* Clearly identifies it as a clickable element */
  font-weight: bold !important;           /* Gives it a clean, professional emphasis */
}

/* Maintain a crisp, darker blue shift when the user hovers over it */
.node-teaser-more a:hover,
.views-field-more-link a:hover,
.more-link a:hover,
[class*="more"] a:hover {
  background-color: #17559a !important;
  color: #ffffff !important;              /* Darkens slightly for crisp visual feedback */
  text-decoration: none !important;
}
/*===========================================================*/
.view-display-column-stories .more-link a,
.view-display-column-stories a.more-link {
	display: inline-block !important;
  background-color: transparent !important;
  color: #17559a !important;
  border-radius: 999px;
  padding: 0.10em 0.40em !important;
  text-decoration: none !important;
  font-weight: 600;
}
/*======================================================*/
.view-display-column-stories .more-link a:hover,
.view-display-column-stories .more-link a:focus,
.view-display-column-stories a.more-link:hover,
.view-display-column-stories a.more-link:focus {
  background-color: #17559a !important;
  color: #ffffff !important;
}

/* ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ */
/* ==========================================
   8. ACCESSIBILITY: HIDE LINKPURPOSE FROM SIDEBAR FB LINK
   ========================================== */

/* Vaporize any visually injected pseudo-element icons */
.region-sidebar-first a[href*="facebook.com"]::after,
.region-sidebar-first a[href*="facebook.com"]::before,
.region-sidebar-first a[href*="facebook.com"] .link-purpose-icon::after,
.region-sidebar-first a[href*="facebook.com"] .link-purpose-icon::before {
  content: "" !important;
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}

/* Hide any physical container span or svg injected by the module */
.region-sidebar-first a[href*="facebook.com"] .link-purpose-icon,
.region-sidebar-first a[href*="facebook.com"] span[class*="external"],
.region-sidebar-first a[href*="facebook.com"] svg {
  display: none !important;
}
/* ==========================================
   9. MAIN NAVIGATION: FORCE CLEAN PLAIN WEIGHT
   ========================================== */

/* Target the main navigation menu item links explicitly */
#main-navigation ul.sf-menu > li > a,
.region-primary-menu ul.menu > li > a,
.nav-container ul.menu > li > a,
#main-navigation .menu a {
  font-weight: 400 !important;    /* Forces standard plain/book weight numeric scale */
  text-shadow: none !important;   /* Strips any overlapping shadows mimicking bold text */
  -webkit-font-smoothing: antialiased !important; /* Sharpens text engine rendering */
}
/*========================================================*/
/*==========================================================*/
/* 1. Reduce space between main menu items */
.primary-menu-container ul.menu li a,
#main-menu ul.menu li a,
.w3-bar .w3-bar-item {
    padding-left: 8px !important;
    padding-right: 8px !important;
    margin-left: 2px !important;
    margin-right: 2px !important;
}

/* 2. Change font style from bold to normal */
.primary-menu-container ul.menu li a,
#main-menu ul.menu li a,
.w3-bar .w3-bar-item {
    font-weight: normal !important;
}
/* 0000000000000000000000000000000000000000000000000 */
section#block-solo-subtheme-todayshours,
section#block-solo-subtheme-todayshours *,
section#block-solo-subtheme-todayshours *::before,
section#block-solo-subtheme-todayshours *::after {
  border-radius: 0 !important;
}
/* Remove padding that's pushing title inward */

/* Style the title bar */

/* Ensure corners clip properly */
/* =================================== */
/* Float the image field */
/* .node--type-ame-column-story-test .field--name-field-column-story-image */ 
.field--name-field-column-story-image
{
  margin: 0 1rem 1rem 0;
  max-width: 35%;
}

/* Allow the body field to wrap up alongside the floated image */
.node--type-ame-column-story-test .field--name-body {
  clear: none !important;
}

/* KEY: allow fields to visually overlap in flow */
.node--type-ame-column-story-test .node__content {
  display: block;
}

/* IMPORTANT: remove Solo's field stacking behavior */
.node--type-ame-column-story-test .field {
  display: inline;
}
/* ================================ */
/* === superfish styling - What's New ====== */
/* ================================ */
/* 🔑 Remove ALL left indentation at every level */
ul#superfish-what-s-new.sf-menu,
ul#superfish-what-s-new.sf-menu li,
ul#superfish-what-s-new.sf-menu li a {
  margin-left: 0 !important;
  padding-left: 0 !important;
  text-indent: 0 !important;
  font-weight: normal !important;
  color: #17559a !important;
}

/* ✅ Now ADD controlled padding that matches the container */
ul#superfish-what-s-new.sf-menu li a {
  padding: 0.2rem 0rem !important;  /* ← this is the correct spacing */
}

ul#superfish-what-s-new.sf-menu li a:hover {
	color: white !important;
	background: #17559a !important;
}
.sf-menu li a[href*="events"] {
  padding-right: 1.75rem;
}
/* ==================================== */
/* Reset global impact */
.sf-menu a.sf-with-ul {
  position: static !important;
  padding-right: inherit !important;
}

/* Apply ONLY to Events */
#ame-menu-menu-link-content0871c348-bcd5-497c-b80d-a757516d2612 > a {
  position: relative !important;
  padding-right: 2rem !important;
}

#ame-menu-menu-link-content0871c348-bcd5-497c-b80d-a757516d2612 .sf-sub-indicator {
  position: absolute !important;
  right: 0.5rem !important;
}
/* ============================================================= */
/* ================== ABOUT CCLS FOOTER ======================== */
/* ============================================================= */
#superfish-footer-about-ccls li,
#superfish-footer-about-ccls li a {
  font-weight: normal !important;
  color: #17559a !important;
}
#superfish-footer-contact-us li,
#superfish-footer-contact-us li a {
  font-weight: normal !important;
  color: #17559a !important;
}
#superfish-footer-news-updates li,
#superfish-footer-news-updates li a {
  font-weight: normal !important;
  color: #17559a !important;
}
#superfish-gooter-member-libraries li,
#superfish-gooter-member-libraries li a {
  font-weight: normal !important;
  color: #17559a !important;
}
/* ============================================================== */
/*                          Hover F/X                             */
/* ============================================================== */
#superfish-footer-about-ccls li a:hover {
  color: white !important;
  background: #17559a !important;
}
#superfish-footer-contact-us li a:hover {
  color: white !important;
  background: #17559a !important;
}
#superfish-footer-news-updates li a:hover {
  color: white !important;
  background: #17559a !important;
}
#superfish-gooter-member-libraries li a:hover {
  color: white !important;
  background: #17559a !important;
}
/* ================================================================ 
                 Global link color and hover f/x
================================================================ */
/* ================================
   CONTENT LINKS (clean version)
================================ */

/* Default state */
.view-content a,
.field-content a {
  display: inline-block;
  color: #17559a;
  background-color: transparent;
  text-decoration: none;
  padding: 2px 4px;
}

/* Hover state */
.view-content a:hover,
.field-content a:hover {
  color: #ffffff !important;
  background-color: #17559a;
}
.view-content {
  --r-lk: #17559a;
}
/* ---------------- PAGER ITEM --------------------*/
.pager__item a {
	color: #17559a !important;
}
.pager__item a:hover {
	color: #ffffff !important;
	background: #17559a !important;
}
/* === FINAL TEST: target Gin toolbar base icon === */
#toolbar-administration .toolbar-icon::before {
  content: "" !important;
  width: 20px !important;
  height: 20px !important;
  background: red !important;
  display: inline-block !important;
}
/* =========================================================
   MAIN NAVIGATION — Absolute Font Reset
========================================================= */

/* Force clean, regular weight text directly onto any anchor inside the nav container */
.menu__url-title,
.menu__url-title-enabled,
.sf-depth-1 {
    font-family: 'Roboto', sans-serif !important;
    font-weight: 400 !important; /* Normal/Regular weight */
    text-transform: normal !important;
    text-shadow: none !important;
    -webkit-font-smoothing: antialiased;
}
/* =========================================================
   MAIN NAVIGATION — Tight Horizontal Spacing Override
========================================================= */

/* Forcefully reduce the padding built into Solo's bootstrap nav links */
#main-navigation-wrapper #main-navigation .navbar-nav .nav-item .nav-link,
#main-navigation-wrapper #main-navigation ul.menu li a,
.region-primary-menu .navbar-nav .nav-link {
    padding-left: 6px !important;  /* Sharp reduction from theme defaults */
    padding-right: 6px !important;
}

/* Squeeze the structural list items closer together */
#main-navigation-wrapper #main-navigation .navbar-nav li.nav-item,
#main-navigation-wrapper #main-navigation ul.menu li {
    margin-left: 0px !important;
    margin-right: 0px !important;
    padding-left: 2px !important;
    padding-right: 2px !important;
}
/* =========================================================
   MAIN NAVIGATION — Completely Remove Hidden Link Icons
========================================================= */

/* Destroys the physical layout footprint of hidden target/purpose elements */
#main-navigation .nav-item [class*="linkpurpose"],
#main-navigation .nav-item .ext,
#main-navigation .nav-item [aria-hidden="true"] {
    display: none !important;
    width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}
/* 2. Standardize the inner input box spacing to prevent unwanted layout overflow */
.sim-search-bar input#encoreSearchInput {
  margin-top: 4px !important;
  margin-bottom: 0 !important;
  height: 38px !important;  /* Slightly tightening height matches standard bar alignment */
}
/* 1. Reset the outer container's footprint completely */
.sim-header-container {
  padding-bottom: 0px !important;
  margin-bottom: -15px !important;
  height: auto !important;
}

/* 2. Target Solo's deep internal blocks to wipe out individual element floors */
.sim-header-container .container,
.sim-header-container .row,
.sim-header-container .block,
.sim-header-container .block-system-branding-block,
.sim-header-container [id*="block-"] {
  margin-bottom: 0px !important;
  padding-bottom: 0px !important;
  display: flex !important;
  align-items: flex-end !important; /* Force content inside blocks to the floor */
}

/* 3. Force the physical image elements inside to align to their strict bottom edge */
.sim-header-container img,
.sim-header-container a img,
.sim-header-container .block-system-branding-block a {
  margin-bottom: 0px !important;
  padding-bottom: 0px !important;
  vertical-align: bottom !important;
  display: inline-block !important;
}

/* 4. Drop the custom search chunk down flush against the line */
.sim-header-container .sim-account-search {
  margin-top: 0px !important;
  margin-bottom: -6px !important; /* Forces the box to pull down tight against the navbar */
}

/* 3. Strip any legacy individual block margins that are fighting the baseline alignment */
.sim-header-container img,
.sim-header-container a img,
.sim-header-container .block-system-branding-block {
  margin-bottom: 0px !important;
  vertical-align: bottom !important;
}

/* 4. Drop the custom account/search block down to hug the main navbar line */
.sim-header-container .sim-account-search {
  margin-top: 0px !important;
  margin-bottom: -6px !important; /* Tweaks the search box specifically to sit flush on the navbar line */
}
/* ================================================= */
/* Match right column to slideshow height */
#top-box-second .quicklink_container {
  height: 100%;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-auto-rows: min-content;
  row-gap: 0.5rem;   /* adjust this */
  column-gap: 0.75rem;
  align-content: start; /* prevents row stretching */
}
#top-box-second .quicklink {
  line-height: 0;
}
/* Remove inline-image baseline spacing */
#top-box-second .quicklink_image {
  display: block;
}

/* Kill inherited line-height effects */
#top-box-second .quicklink,
#top-box-second .quicklink a {
  line-height: 0;
}

/* Tight, intentional spacing */
#top-box-second .quicklink_container {
  row-gap: 0.25rem;      /* try 0.25 or even 0.2 */
  column-gap: 0.4rem;   /* narrower than before */
}
/* =========================================================
   Office Hours table – LEFT SIDEBAR (FINAL, CLEAN VERSION)
   ========================================================= */

/* Remove list padding added by Solo */
.sidebar-box-first .solo-ul li.solo-li-list {
  padding: 0;
}

/* Remove responsive table chrome that causes scrollbars */
.sidebar-box-first .solo-table-wrapper {
  border: none;
}

.sidebar-box-first .solo-responsive {
  overflow-x: visible;
}

/* Base table styling */
.sidebar-box-first table.office-hours__table {
  width: 100%;
  table-layout: fixed;       /* stop browser guessing column widths */
  margin: 0;
  font-size: 0.85rem;
  line-height: 1.25;
  border-collapse: collapse;
}

/* Day column: hard, minimal width */
.sidebar-box-first table.office-hours__table th:first-child,
.sidebar-box-first table.office-hours__table td:first-child {
  width: 4ch;                /* fits Sun:, Wed:, Thu: */
  white-space: nowrap;
padding-left: 0.1rem;
}

/* Hours column: keep entire string intact */
.sidebar-box-first td.office-hours__item-slots {
  font-family: ui-monospace,
               SFMono-Regular,
               Menlo,
               Consolas,
               "Liberation Mono",
               monospace;

  white-space: nowrap;
  overflow-wrap: normal;
  word-break: keep-all;
}
/* ========================================= */
/* Sidebar Superfish hover — match footer behavior */
#superfish-ame-menu li a:hover,
#superfish-bos-menu li a:hover,
#superfish-coy-menu li a:hover,
#superfish-epb-menu li a:hover,
#superfish-fre-menu li a:hover,
#superfish-jgr-menu li a:hover,
#superfish-ncu-menu li a:hover,
#superfish-sim-menu li a:hover,
#superfish-library-system-hq li a:hover {
  color: #ffffff !important;
  background: #17559a !important;
}
/* ========================================== */
/* =====================================================
   Library left sidebar menus – unified typography
   Matches /AME look across all libraries
   ===================================================== */

body[class^="path-"] .sidebar-box-first [id^="superfish-"] li > a {
  font-family: var(--solo-font); /* same as /AME */
  font-weight: 500;
  line-height: 1.35;
  padding: 0.45rem 0.75rem;
}
/* =========================================== */
/* Ensure sidebar Superfish menus stack vertically */
.sidebar-box-first [id^="superfish-"] li {
  display: block;
}

.sidebar-box-first [id^="superfish-"] li > a {
  display: block;
}
/* Force sidebar Superfish menus to remain vertical */
.sidebar-box-first ul[id^="superfish-"] {
  display: block;
}

.sidebar-box-first ul[id^="superfish-"] > li {
  float: none !important;
  display: block !important;
}

.sidebar-box-first ul[id^="superfish-"] > li > a {
  display: block !important;
}
/* =====================================================
/* =====================================================
   Sidebar Superfish – force lighter weight & tighter spacing
   ===================================================== */

/* Top-level sidebar menu links */
.sidebar-box-first ul[id^="superfish-"] > li > a,
.sidebar-box-first ul[id^="superfish-"] > li > a span {
  font-weight: 400 !important;   /* beat Solo's 500 */
  line-height: 1.2 !important;  /* tighter vertical rhythm */
}

/* Submenu items */
.sidebar-box-first ul[id^="superfish-"] li li > a,
.sidebar-box-first ul[id^="superfish-"] li li > a span {
  font-weight: 400 !important;
  line-height: 1.2 !important;
}
/* =====================================================
   Sidebar Superfish – tighten vertical spacing (FINAL)
   ===================================================== */

/* Top-level items */
.sidebar-box-first ul[id^="superfish-"] > li > a,
.sidebar-box-first ul[id^="superfish-"] > li > a span {
  padding-top: 0.3rem !important;
  padding-bottom: 0.3rem !important;
  line-height: 1.2 !important;
}

/* Submenu items */
.sidebar-box-first ul[id^="superfish-"] li li > a,
.sidebar-box-first ul[id^="superfish-"] li li > a span {
  padding-top: 0.25rem !important;
  padding-bottom: 0.25rem !important;
  line-height: 1.2 !important;
}
/* =====================================================
   Sidebar Superfish – reduce left indentation (FINAL)
   ===================================================== */

/* Remove default UL indentation */
.sidebar-box-first ul[id^="superfish-"] {
  padding-left: 0 !important;
  margin-left: 0 !important;
}

/* Tighten left padding on menu links */
.sidebar-box-first ul[id^="superfish-"] > li > a {
  padding-left: 0.35rem !important;  /* try 0.25rem if you want tighter */
}

/* Submenu items: still indented, but less */
.sidebar-box-first ul[id^="superfish-"] li li > a {
  padding-left: 0.9rem !important;   /* previously much larger */
}
/* =====================================================
   Sidebar Superfish – keep linkpurpose icon inline
   ===================================================== */

/* Prevent wrapping of menu text + icon */
.sidebar-box-first ul[id^="superfish-"] li > a {
  white-space: nowrap;
}

/* Ensure linkpurpose icon stays inline */
.sidebar-box-first ul[id^="superfish-"] .link-purpose-icon,
.sidebar-box-first ul[id^="superfish-"] .link-purpose-external-icon,
.sidebar-box-first ul[id^="superfish-"] svg {
  display: inline-block;
  vertical-align: middle;
  margin-left: 0.15rem; /* reduce if still tight */
}
/* =====================================================
   Sidebar Superfish – lock text + linkpurpose icon together
   ===================================================== */

/* Make menu links a flex row */
.sidebar-box-first ul[id^="superfish-"] > li {
  display: flex;
  align-items: center;
}

/* Keep link text and icon on one line */
.sidebar-box-first ul[id^="superfish-"] > li > a {
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
}

/* Keep linkpurpose icon inline and tight */
.sidebar-box-first ul[id^="superfish-"] .link-purpose-icon,
.sidebar-box-first ul[id^="superfish-"] .link-purpose-external-icon {
  display: inline-flex;
  margin-left: 0.25rem;
  flex-shrink: 0;
}
/* =====================================================
   Sidebar Superfish – lock text + linkpurpose icon together
   ===================================================== */

/* Make menu links a flex row */
.sidebar-box-first ul[id^="superfish-"] > li {
  display: flex;
  align-items: center;
}

/* =====================================================
   Sidebar Superfish – lock linkpurpose icon in place
   ===================================================== */

/* Make link a positioning context */
.sidebar-box-first ul[id^="superfish-"] > li > a {
  position: relative;
  padding-right: 1.5rem !important; /* reserve space for icon */
}

/* Position linkpurpose icon absolutely */
.sidebar-box-first ul[id^="superfish-"] .link-purpose-icon,
.sidebar-box-first ul[id^="superfish-"] .link-purpose-external-icon {
  position: absolute;
  right: 0.35rem;
  top: 50%;
  transform: translateY(-50%);
  margin: 0 !important;
  flex: none;
  white-space: nowrap;
}
/* =====================================================
   Sidebar Superfish – move flyout submenu to the right
   ===================================================== */
/* Position submenus to the right of parent item */
.sidebar-box-first ul[id^="superfish-"] ul {
  top: 0;               /* align with parent */
  left: 100%;           /* move to the right */
  margin-left: 0.25rem; /* small gap for usability */
}
.sidebar-box-first ul[id^="superfish-"] ul {
  border-left: 1px solid rgba(0, 0, 0, 0.08);
}
.sidebar-box-first ul[id^="superfish-"] > li {
  position: relative;
}
/* =====================================================
   Fix overlap: enforce spacing above Hours block
   ===================================================== */

.sidebar-box-first
  .block-views-block-location-hours-block-block-1 {
  margin-top: 1rem !important;
}
#superfish-ame-menu,
#superfish-bos-menu,
#superfish-coy-menu,
#superfish-epb-menu,
#superfish-fre-menu,
#superfish-john-graham-menu,
#superfish-ncu-menu,
#superfish-sim-menu,
#superfish-library-system-hq {
margin-left: 5px !important;
}
.image-with-border {
  border: 2px solid black !important; /* Width, style, and color */
  border-radius: 10px; /* Optional: for rounded corners */
}
h1.page-title-text {
position: static !important;
top: auto;
bottom: auto;
}
.views-field-title {
position: relative !important;
top: -40px !important;
}
/*=========================================================*/
/* Vertical Superfish menu */
.block-superfish .sf-menu a,
.block-superfish .sf-menu .sf-depth-1 > a,
.block-superfish .sf-menu .sf-depth-2 > a {
  white-space: normal !important;
  line-height: 1.25 !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 0.4rem 0.75rem !important;
}

/* Ensure links fill the available width */
.block-superfish .sf-menu li {
  width: 100%;
}

.block-superfish .sf-menu a {
  display: block;
  overflow-wrap: break-word;
  word-wrap: break-word;
}
/* ====================================== */
/* Force menu to fit the sidebar */
.block-superfish,
.block-superfish .sf-menu,
.block-superfish .sf-menu ul,
.block-superfish .sf-menu li {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box;
}

/* Menu links */
.block-superfish .sf-menu a {
  display: block;
  width: 100%;
  box-sizing: border-box;
  white-space: normal;
  overflow-wrap: break-word;
  line-height: 1.20;
  padding-right: 2rem;
}
.block-superfish .sf-menu a {
  line-height: 1.0 !important;
  padding-top: 3px !important;
  padding-bottom: 3px !important;
}
.image-with-border {
  border-radius: 12px;
  overflow: hidden;
}

.image-with-border img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
/*==========================================*/
.office-hours {
padding: 0 !important;
margin: 0 !important;
}
.office-hours__item-label,
.office-hours__item-slots {
  white-space: nowrap;
word-break: normal;
  font-size: clamp(16px, 1.2vw, 20px);
}
/*==========================================*/
.navigation__menubar-main {
  justify-content: center;
}
#sidebar-box-second,
#sidebar-box-first {
    border-radius: 10px 10px 0 0 !important;
    overflow: hidden !important;
}

.sidebar-box-second-inner,
.sidebar-box-first-inner {
    padding-top: 0 !important;
}
#block-solo-subtheme-checkitout .solo-block-title {
    border-top-left-radius: 10px !important;
    border-top-right-radius: 10px !important;
}

#block-solo-subtheme-todayshours .solo-block-title {
    border-radius: 0 !important;
}/*==============================================================*/
/* Sidebar EVENT block title (flat, no rounding) */
.region-left .solo-block-title {
    font-size: 1.65rem;
    line-height: 1.25;
    font-weight: 600;

    margin: 0;
    padding: 0.75rem 1rem;

    box-sizing: border-box;
    width: calc(100% + (2 * var(--solo-gap)));
    margin-left: calc(var(--solo-gap) * -1);
    margin-right: calc(var(--solo-gap) * -1);

    background-color: #17599A;
    color: #ffffff;

    display: flex;
    align-items: center;
    justify-content: center;

    /* No rounding */
    border-radius: 0;

    /* Pull into rounded container top */
    position: relative;
    top: calc(var(--solo-gap) * -1);
}
#block-solo-subtheme-whatsnew .solo-block-title {
    border-top-left-radius: 10px !important;
    border-top-right-radius: 10px !important;
	overflow: hidden !important;
}

#block-solo-subtheme-whatsnew {
    overflow: hidden !important;
    border-top-left-radius: 10px !important;
    border-top-right-radius: 10px !important;
}
/* What's New gets rounded corners */
#block-solo-subtheme-whatsnew .solo-block-title {
    border-top-left-radius: 10px !important;
    border-top-right-radius: 10px !important;
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
}
/*========== ridiculous radius test ====================*/
/* DEBUG: What's New corner test */
#block-solo-subtheme-whatsnew {
    border-top-left-radius: 30px !important;
    border-top-right-radius: 30px !important;
    overflow: hidden !important;
}

#block-solo-subtheme-whatsnew .solo-block-title {
    border-top-left-radius: 30px !important;
    border-top-right-radius: 30px !important;
}
/* What's New title block */
#block-solo-subtheme-dummyheade .solo-block-title {
    width: calc(100% + (2 * var(--solo-gap))) !important;
    margin-left: calc(var(--solo-gap) * -1) !important;
    margin-right: calc(var(--solo-gap) * -1) !important;

    border-top-left-radius: 10px !important;
    border-top-right-radius: 10px !important;

top: -16px !important;

    overflow: hidden !important;
margin-top: 10px !important;
}
#block-solo-subtheme-checkitout .solo-block-title {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    min-height: 52px !important;
    padding: 0.75rem 1rem !important;
    line-height: 1 !important;

height: 60px !important;

    border-top-left-radius: 10px !important;
    border-top-right-radius: 10px !important;
}
#block-solo-subtheme-checkitout h2.solo-block-title {
    margin-top: 10px !important;
    margin-bottom: 20px !important;
}
#block-solo-subtheme-checkitout .solo-block-title {
    height: 64px !important;
}
h2.solo-block-title {
height: 64px !important;
/* top: -10px !important; */
margin-bottom: 15px !important; }

/* Hide Link Purpose icons in Check It Out block */
#block-solo-subtheme-checkitout .link-purpose-icon,
#block-solo-subtheme-checkitout .link-purpose-external-icon {
    display: none !important;
}
#block-solo-subtheme-syhqsocialmediaconnectblock .link-purpose-icon,
#block-solo-subtheme-syhqsocialmediaconnectblock .link-purpose-external-icon {
display: none !important;
}
/* Library social media links */
.views-field-field-library-social-media .link-purpose-icon,
.views-field-field-library-social-media .link-purpose-external-icon,
.views-field-field-library-social-media .link-purpose-text {
    display: none !important;
}
#block-solo-subtheme-librarybyzipcode .solo-block-title { margin-top: -10px !important; }
#block-solo-subtheme-librarybyzipcode .solo-block-title {
    border-top-left-radius: 10px !important;
    border-top-right-radius: 10px !important;
}
#block-solo-subtheme-librarybyzipcode .solo-block-title {
    width: calc(100% + (2 * var(--solo-gap))) !important;
    margin-left: calc(var(--solo-gap) * -1) !important;
    margin-right: calc(var(--solo-gap) * -1) !important;

    border-top-left-radius: 10px !important;
    border-top-right-radius: 10px !important;

    overflow: hidden !important;
}
#block-solo-subtheme-odbcategories .solo-block-title {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}
#block-solo-subtheme-databaselistby .solo-block-title {
    top: 0 !important;
}

section#block-solo-subtheme-odbcategories {
    width: calc(100% + 32px) !important;
    margin-left: -16px !important;
    margin-right: -16px !important;
}

.sidebar-box-first-inner {
    border-top-left-radius: 10px !important;
    border-top-right-radius: 10px !important;
    overflow: hidden !important;
}
/*============== SQUARE SIDEBARS, HOPEFULLY ==============*/
h2.solo-block-title {
border-radius: 0 !important;
}
/*======================================================*/
.container_feature_story {
  display: flex;
  gap: 20px;
  background: #fff;
  align-items: flex-start;
}

.container_feature_story .story-image {
  flex: 0 0 250px;
}

.container_feature_story .story-image img {
  width: 100% !important;
  height: auto !important;
  object-fit: cover;
  display: block;
}

.container_feature_story .story-body {
  flex: 1;
}
/*============= column story stuff =============*/
.column-story-title {
  text-align: left;
}

.column-story-image {
  text-align: center;
}

.column-story-image img {
  width: 100%;
  height: auto;
border-radius: 12px 12px 0 0 !important;
border: 1px solid black;
  display: inline-block;
}

.column-story-body {
  text-align: left;
}
/*=======================*/
.solo-li-list {
    background-color: #17559a !important;
    transition: all 0.2s ease;
}

.solo-li-list.active {
    background-color: #79C042 !important;
}

.solo-li-list:hover {
    box-shadow: 0 0 8px rgba(0, 115, 232, 0.4);
}
.views-field-title a:link,
.views-field-title a:visited {
    color: #17559a !important;
}
.column-story-title a {
    color: #17559a !important;
}
.solo-block-title {
    text-align: center !important;
}
.column-story-image {
    text-align: center;
}

.column-story-image a.img--is-clickable {
    width: 100% !important;
    display: block !important;
}

.column-story-image img {
    width: 100% !important;
    height: auto !important;
    display: block !important;
}

.column-story-image img.solo-image {
    width: 100%;
    height: auto;
    display: block;
}

.solo-block-title h2 {
   top: 0 !important;
bottom: 0 !important;
}

section#block-solo-subtheme-odbcategories h2.solo-block-title {
    border-radius: 0 !important;
}

/*========= TEST ========= */
h1.page-title-text {
    padding-block: 0.5rem;
}
#block-solo-subtheme-pagetitle {
    margin-top: -10px;
}
.field--name-field-body img {
margin-top: 8px !important;
}
.node__content a {
color: #17559a !important;
}
.node__content a:hover {
color: white !important;
background: #17559a !important;
}
.solo-li-list {
background: white !important;
}
.views-field-field-library-link {
font-size: 24px;
font-weight: bolder !important;
}
/*========== add space between view rows ============*/
.view-id-display_column_stories .views-col {
  margin-bottom: 25px !important;
}
.view-id-display_column_stories .views-field-body img {
    width: 100%;
    height: auto;
    max-width: 100%;
    display: block;
    float: none;
    margin: 0 0 10px 0;
}
#main-menubar--3 a {
  font-size: clamp(0.875rem, 1vw, 1rem);
  padding-left: 0 !important;
  padding-right: 0 !important;
}
a.odb-link,
a.odb-link:visited {
  color: #17559a !important;
}
a.odb-link:hover {
color: white !important;
background: #17559a !important;
}
a:not(.nav__menu-link) {
  color: #17559a;
  transition: all 0.2s ease;
}

a:not(.nav__menu-link):hover {
  /*color: #fff !important;*/
  background-color: #17559a;
  /* padding: 0 2px; */
}
a.odb-link,
a.odb-link:link,
a.odb-link:visited {
  color: #17559a !important;
}

a.odb-link:hover,
a.odb-link:focus {
  color: #ffffff !important;
  background-color: #17559a !important;
}
h2.odb-link a,
h2.odb-link a:visited {
  color: #17559a;
}

h2.odb-link a:hover,
h2.odb-link a:focus {
  color: #fff !important;
  background-color: #17559a !important;
}
/*==================== hours table ================*/
.views-field-field-hours-of-operation {
margin-left: -12px !important;
}
.region-left .solo-block-title {
    top: 0 !important;
}
#block-solo-subtheme-todayshours .solo-block-title {
    height: 80px !important;
}
#block-solo-subtheme-dummyheade {
min-height: 52px !important;
}
#block-solo-subtheme-checkitout .solo-block-title {
    top: 0 !important;
}
#block-solo-subtheme-checkitout {
margin-top: -10px !important;
}
/* ===================== */
/* How Do I block and Borrow Renew Return block   */
/* ===================== */

#block-solo-subtheme-views-block-how-do-i-block-1 .views-row {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  margin-bottom: 1.5rem;
}

/* Icon */
#block-solo-subtheme-views-block-how-do-i-block-1 .item-icon {
  flex-shrink: 0;
}

#block-solo-subtheme-views-block-how-do-i-block-1 .item-icon img,
#block-solo-subtheme-views-block-how-do-i-block-1 .item-icon svg {
  width: 48px;
  height: 48px;
  display: block;
}

/* Text wrapper */
#block-solo-subtheme-views-block-how-do-i-block-1 .item-content {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

/* Link */
#block-solo-subtheme-views-block-how-do-i-block-1 .item-link {
  font-weight: 600;
  margin-bottom: 2px;
margin-top:-10px !important;
margin-left: -4px !important;
}

#block-solo-subtheme-views-block-how-do-i-block-1 .item-link a:hover {
border-radius: 10px !important;
}
/* Description */
#block-solo-subtheme-views-block-how-do-i-block-1 .item-text {
  margin: 0;
  line-height: 1.0;
}
#block-solo-subtheme-views-block-display-mobile-apps-block-2
.linkpurpose-default-svg {
    display: none !important;
}
.s-lc-c-evt-title a:hover {
color: white !important;
background-color: #17559a !important;
}
.events-heading {
  display: flex;
  align-items: center; /* vertical centering */
  gap: 0.5rem;
}
.calendar-icon {
  width: 47px;
  height: 48px;
}
/*====== MOBILE APPS DISPLAY *========*/
.mobile-app-row {
  display: flex;
  gap: 20px;
  align-items: flex-start;
}
.mobile-app-image {
  width: 150px;
  text-align: center;
}
.mobile-app-description {
  flex: 1;
}
.mobile-app-links {
  width: 120px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: center;
}
/*===== mobile apps classes ===========*/
.mobile-app-row {
  display: flex;
  gap: 20px;
  align-items: flex-start;
padding: 10px 0;
border-bottom: 1px solid #ddd;
}

.mobile-app-image {
  width: 150px;
text-align: center;
vertical-align: top;
}

.mobile-app-image img {
display: block; 
margin: 0 auto;
}

.mobile-app-description {
  flex: 1;
}

.mobile-app-links {
  width: 100px;
text-align: center;
vertical-align: top;
}
/*=======================================*/
#main-navigation ul,
#main-navigation .navbar-nav,
#main-navigation .sf-menu {
    gap: 0 !important;
    justify-content: flex-start !important;
}
#main-navigation ul li,
#main-navigation .navbar-nav li,
#main-navigation .sf-menu li {
    margin: 0 !important;
    padding: 0 !important;
}
/* Tighten Solo main menu spacing */
.navigation__menubar .nav__menu-link-main {
    padding-left: 2px !important;
    padding-right: 2px !important;
font-size: 1.02rem !important;
}

.navigation__menubar .nav__menubar-item {
    margin-left: 0 !important;
    margin-right: 0 !important;
}
.navigation__menubar .link-purpose-external-icon {
    width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}
.navigation__menubar {
    justify-content: flex-start !important;
    gap: 0 !important;
}
/* Remove spacing added for external link icon on EVENTS */
.link-purpose-external-icon {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Remove reserved space for link-purpose links */
.nav__menu-link.link-purpose {
    padding-right: 2px !important;
}
/* Align EVENTS vertically with siblings */
.nav__menu-item.external-link {
    vertical-align: top !important;
}

.nav__menu-item.external-link .nav__menu-link-main {
    position: relative;
    top: -1px;
}
/* Hide external-link icon completely */
.link-purpose-external-icon,
.link-purpose-icon {
    display: none !important;
}
/* Align EVENTS with neighboring items */
.nav__menu-item.external-link .nav__menu-link-main {
    display: inline-flex !important;
    align-items: center !important;
    height: 100% !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
.nav__menu-item.external-link {
    position: relative;
    top: -1px;
}
.navigation__menubar .link-purpose-icon,
.navigation__menubar .link-purpose-external-icon {
    display: none !important;
}
.navigation__menubar li.external-link .nav__menu-link-main {
    position: relative;
    left: -2px;
}
.navigation__menubar li:nth-child(5) .nav__menu-link-main {
    position: relative;
    left: -4px;
}
/* Increase main navigation font size */
.navigation__menubar .nav__menu-link-main {
    font-size: 1.1rem !important;
}
/* .navigation__menubar {
    margin-left: -4px !important;
}*/
.navigation__menubar {
    display: flex !important;
    justify-content: center !important;
}
.views-field-title a:link,
.views-field-title a:visited {
    color: #17559a !important;
}

.views-field-title a {
    display: inline-block;
    padding: 0 4px;
}

.views-field-title a:hover,
.views-field-title a:focus {
    color: #ffffff !important;
    background-color: #17559a;
    border-radius: 4px;
}
.column-story-title a {
display: inline-block;
padding: 0 4px;
}
.column-story-title a:hover,
.column-story-title a:focus {
border-radius: 4px !important;
}

.column-story-image img {
    width: 100%;
    height: auto;
}
.views-field-nothing {
    min-width: 0;
}
.quicktabs-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem;
  margin-bottom: 1rem;
  padding: 0;
  list-style: none;
}

.quicktabs-tabs li {
  margin: 0;
}

.quicktabs-tabs li a {
  display: block;
  padding: .75rem 1.25rem;
  background: #f5f5f5;
  border: 1px solid #ddd;
  border-radius: 8px 8px 0 0;
  color: #333;
  font-weight: 600;
  text-decoration: none;
  transition: all .2s ease;
}

.quicktabs-tabs li a:hover {
  background: #008c7f;
  color: #fff;
}

.quicktabs-tabs li.active a,
.quicktabs-tabs li.active a:hover {
  background: #008c7f;
  color: #fff;
  border-color: #008c7f;
border: 10px;
}
.quicktabs-tabs li:nth-child(1) a {
  background: #008c7f;
  color: #fff;
}

.quicktabs-tabs li:nth-child(2) a {
  background: #6c9a31;
  color: #fff;
}

.quicktabs-tabs li:nth-child(3) a {
  background: #bd7a1f;
  color: #fff;
}

.quicktabs-tabs li:nth-child(4) a {
  background: #7840a1;
  color: #fff;
}

.quicktabs-tabs li:nth-child(5) a {
  background: #0070c0;
  color: #fff;
}
.quicktabs-tabs li a,
.quicktabs-tabs li a:visited {
  color: #fff !important;
}

.quicktabs-tabs li a:hover,
.quicktabs-tabs li a:focus {
  color: #fff !important;
}

.quicktabs-tabs li.active a,
.quicktabs-tabs li.active a:hover,
.quicktabs-tabs li.active a:focus {
  color: #fff !important;
}
.quicktabs-main {
  border-top: 8px solid #008c7f;
  padding-top: 1rem;
}

.quicktabs-tabs li.active a {
  position: relative;
  z-index: 10;
  margin-bottom: -8px;
}
.quicktabs-tabs li.finance.active a {
  background: #008c7f;
  border: 4px solid #008c7f;
  border-bottom: 8px solid #008c7f;
  color: #fff !important;
}

.quicktabs-tabs li.health.active a {
  background: #5c8f29;
  border: 4px solid #5c8f29;
  border-bottom: 8px solid #5c8f29;
  color: #fff !important;
}
#quicktabs-container-finance {
border-top: 25px solid #008c7f;
}

div.career-resources {
  border-top: 25px solid #008c7f;
}
.health-resources {
border-top: 25px solid #8800FF;
}
/*======= Borrow, Renew, Return ============*/
.container_brr
{
	display: grid;
	grid-template-columns: 48% 48%;
	background-color: white;
	padding: 10px;
}
.container_brr div
{
	margin: 0;
	background-color: white;
	border: 3px solid white;
	vertical-align: top;
	font-size: 18px;
}
.HDI_img
{
	width:64px !important;
	height:64px !important;
	padding-top:0px;
	margin-top:5px;
	padding-right:5px;
}
.HDI_link
{
	margin-top:-10px !important;
}
/*======= TEMPORARY =========*/
a.more-link {
    display: inline-block !important;
    border-radius: 999px !important;
}
.vvjs a.more-link,
.view-display-column-stories a.more-link {
    display: inline-block !important;
    line-height: 1 !important;
    border-radius: 999px !important;
}
/*===================================================*/
.events-banner {
    display: flex;
    align-items: center;
    gap: 8px;
}

.events-banner h2 {
    margin: 0;
}
/*==== PREVIOUS, PAUSE/RESUME, NEXT ====*/
.views_slideshow_controls_text a {
    display: inline-block !important;
    color: #17559a !important;
    background-color: transparent !important;
    border: 1px solid #17559a !important;
    border-radius: 999px !important;
    padding: 0 8px !important;
    line-height: 1.5;
    text-decoration: none !important;
    margin: 0 2px;
}

.views_slideshow_controls_text a:hover,
.views_slideshow_controls_text a:focus {
    color: #ffffff !important;
    background-color: #17559a !important;
    border-color: #17559a !important;
    text-decoration: none !important;
}
.views_slideshow_controls_text_pause a {
    display: inline-block !important;
    width: 100px !important;
    text-align: center;
    white-space: nowrap;
    box-sizing: border-box;
}
.fre-header-container,
.ame-header-container,
.bos-header-container,
.coy-header-container,
.epb-header-container,
.jgr-header-container,
.ncu-header-container,
.sim-header-container,
.syhq-header-container {
	margin-bottom: -15px !important;
}
/*===== Borrow, Renew, Return CSS =====*/
.brr-row {
  display: flex;
  gap: 1rem;
  border: 2px solid red;
}

.brr-icon {
  width: 70px;
  flex-shrink: 0;
}

.brr-content {
  flex: 1;
}

.brr-title {
  font-weight: bold;
  border-bottom: 1px solid #ccc;
  padding-bottom: .5rem;
  margin-bottom: .5rem;
}
.brr-title a {
  font-weight: 700;
  font-size: 1.2rem;
  text-decoration: none;
}

.brr-title a:hover {
  text-decoration: underline;
}

.brr-description {
  padding: 1rem;
}
/*============================================*/
#solo_subtheme_footeraboutccls {
border-radius: 10px 10px 0 0 !important;
}
/* .views-field-title {
margin-bottom: -40px;
} */
