/* Minimum height for news listing */
.news-listing .items-list {
	min-height: 200px;
}

/* Breadcrumbs */
.with-breadcrumbs~.breadcrumbs--alt+.main .content-with-sidebar {
    padding-top: 60px;
}

/* Embolden Carousel active leader text */
.slider__item.flickity-cell.is-selected {
    font-weight: 600;
}



/* Table width set to match text width in General Content */
.table.full-width {
	max-width: 840px;
}

/* Increase padding bottom for News Panel  */
@media (min-width: 48em) {
    .news-pannel.full-width.news-alt {
        padding-bottom: 180px;
    }
}

/* Change margins for General Content */
*:not(.block)+.text-content.full-width, 
.text-content.full-width:not(.block)+.text-content, 
.text-content.full-width:not(.block),
.main__content.full-width .text-content:not(.full-width) {
    margin-top: 24px;
    margin-bottom: 36px;
}

*:not(.block):not(.hero-title)+.text-content, .text-content:not(.block)+.text-content {
    margin-top: 24px;
    margin-bottom: 36px;
}

@media (min-width: 48em) {
    *:not(.block)+.text-content.full-width, 
    .text-content.full-width:not(.block)+.text-content, 
    .text-content.full-width:not(.block),
    .main__content.full-width .text-content:not(.full-width) {
        margin-top: 36px;
        margin-bottom: 54px;
    }

    *:not(.block):not(.hero-title)+.text-content, .text-content:not(.block)+.text-content {
        margin-top: 30px;
        margin-bottom: 54px;
    }
}

/* Align buttons in Resource Lists and Up Panels */
.resource-item, .up-panel .column {
    display: flex;
    flex-direction: column;
}

.resource-item .button, .up-panel__cta {
    margin-top: auto;
}

/* Add full width styling to General Content on full width page when full width not selected */
.main__content.full-width .text-content:not(.full-width) {
    margin-left: auto;
    margin-right: auto;
    max-width: 840px;
    padding-left: 20px;
    padding-right: 20px;
}

/* Fix concentration headings in Program Finder */
.finder .program h3 {
	font-size: 14px;
	text-transform: uppercase;
	letter-spacing: 2px;
	line-height: 23.352px;
}

/* Fix Feature Panel Wave overlay issue on graphic bottom panel right */
.feature-pannel.block-right.graphic-bottom .featured__item__image:before {
  z-index: 0;
}


/* Header CTA width adjustment */
@media (min-width: 70em) {
    .header__cta-logo {
      width: 308px;
    }
}

/* top nav - test to make up/down arrows ada compliant - cbunnell 1/29/2025 */
.header__nav>li>button.header__subnav-toggle .arrow, .header__nav>li>a.header__subnav-toggle .arrow, .header.relative .header__nav>li>a.header__subnav-toggle .arrow {
  color: #fff;
  /*background: #333;*/
}


/* Set height for Google Seach results iframe */
.google-search__container iframe {
    height: 1400px;
}



/* Adjust Success Stories top padding */
.success-stories {
	padding-top:40px;
}

/* Designate Light Teal Router Panel BG Color */
.router-block {background-color:#f2f8f8;}
.router-block:not(.full-width) {
    padding: 65px 40px;
}
.router-block.white-bg {
  padding: 100px 0 124px !important;
 }


/* Removing the top padding on the main__content */
@media (min-width: 70em) {
    .main__content {
        padding: 0 0 0;
    }
	.hero + .breadcrumbs + nav.subNav {
		margin-bottom: 50px;
    }
	.main__content > section.news-listing {
    	padding-top:50px;
    }
    .main__content > section.up-panel {
    	margin-top: 50px;
    }
	.hero + .breadcrumbs + .main {
		padding-top: 60px;
    }
  	.hero:has(>.hero__media) + .breadcrumbs + .main {
		padding-top: 0;
    }
}

/* 3-across Image Panel */
.three-across-panel-container {
  padding: 1em 8em;
  display: flex;
  justify-content: center;
  align-items: stretch;
  align-content: center;
      gap: 0px 80px;
      max-width: 2000px;
    margin: 0 auto;
}

.two-across-panel-container {
  padding: 1em 8em;
  display: flex;
  justify-content: center;
  align-items: stretch;
  align-content: center;
      gap: 0px 80px;
      max-width: 1200px;
    margin: 0 auto;
}

.three-across-panel, .two-across-panel {
  flex: 1;
  padding:15px;
}
.three-across-panel {width: 33%;}
.two-across-panel {width: 50%;}


.three-across-panel a, .two-across-panel a {
  display:block;
}
.three-across-panel:has(a:hover), .two-across-panel:has(a:hover) {
  background: var(--bright-teal);
}
.three-across-panel h2, .two-across-panel h2 {
  font-size: 2.3em;
  line-height: 45px;
}

.three-across-panel h4, .two-across-panel h4 {
  margin-bottom: 0;
  font-family: 'Crimson Pro';
  text-transform: none;
  font-size: 2.6em;
  line-height: 0.9em;
  letter-spacing: 0;
}


.three-across-panel img, .two-across-panel img {
  padding-bottom: 1em;
}
.three-across-panel p, .two-across-panel p {
    margin-top: 1em;
}



@media screen and (max-width: 965px) {
  .three-across-panel-container, .two-across-panel-container {
    display: block;
    padding:0;
  }
  .three-across-panel, .two-across-panel {
    width: 100%;
    display: block;
    text-align: center;
    padding: 2em;
    margin-bottom: 2em;
  }
  .three-across-panel img, .two-across-panel img {
    margin: 0 auto;
    padding-bottom: 1em;
  }
  
  /* Wrap Hero Text on Mobile */
  .hero.with-breadcrumbs .hero__heading {
	word-wrap: normal;
    font-size: 2.5em;
  }
  
}




/* updated on 11/20/2025 for ticket 96704 by Judah the Hudson. Make picture sizes (2-Column Photo Listing) match each other. Responsive for all screen sizes.
*/
/* wiidth 1365-1920+ */
@media screen and (min-width: 1365px) {
	.two-across-panel-container {
		font-size: initial;
	}
}

/* width 1339-1364 (inclusive)*/
@media screen and (1339px <= width <= 1364px) {
	.two-across-panel-container {
		padding: 1em 5em;
	}
}

@media screen and (1291px <= width <= 1338px) {
	.two-across-panel-container {
		padding: 1em 2.6em;
	}
}




/* Fix Carousel Text on small displays - stack */
.content-with-sidebar .media.image-carousel .heading h2 {
	width: 100%;
}
.content-with-sidebar .media.image-carousel .text-slider-h {
	width: 100%;
 }

/* Adjust Accordion Text to display full width */
.accordion-list.full-width p {
    max-width: 100%;
}



/* Adjust bottom margin of ULs within ULs */
.text-content ul ul, .text-content ul ul ul {
    margin-bottom: 0;
}


/* Hide empty link button on Success Stories content type */
.success-stories .bottom-button a[href=""], .success-stories .bottom-button a[href="#"], .success-stories .bottom-button a:not([href]) {
  display: none;
}

/* Add right margin on Intro Text buttons */
.intro-text a.button {
      margin-right:20px;
}

/* Style an HR in text */
.text-content hr {
  border-top:solid 3px #006F71;
}

/* Style a Blockquote */
.text-content blockquote {
  border-left: solid 5px #A27752;
  padding-left: 3em;
  position: relative;
  quotes: "“" "”";
  padding-top: 1em;
  padding-bottom: 1em;
}
.text-content blockquote p {font-size:22px;}
.text-content blockquote strong {
	display: block;
    margin-top: .5em;
}
.text-content blockquote p:before {
  content: open-quote;
  color: #A27752;
  font-size: 53px;
  font-weight: bold;
  position: absolute;
  top: 9px;
  left: 10px;
}

/* News Story Hover */
.news-item.flickity-cell:hover {
    box-shadow: 0px 4px 8px rgba(0, 0, 0, .2);
    background: #FFF;
  cursor:grab;
}

/* -- Visual Router Heading Link Color Correction to White -- */
.main__content .visualRouter-block .heading p a {
    color: #FFF;
}
.main__content .visualRouter-block .heading p a:hover {
    text-decoration:underline;
}


/* Remove Homepage Hero Fade Overlay */
.home .header:not(.relative)+main .hero .hero__media {
        background: linear-gradient(1deg, rgba(0, 0, 0, 0) 8.85%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, .3) 100%) !important;
 }
/* -- Add Text Shadow on Hero Nav --*/
.home .header__nav>li>button, .home .header__nav>li>a {
        text-shadow: 0px 1px 5px rgba(0, 0, 0, .9), 0px 2px 2px rgba(0, 0, 0, .2);
}
/* -- Remove Text Shadow on Sticky Nav -- */
.header__cta a, .header__cta button { text-shadow:none !important; }




@media screen and (max-width: 1120px) {
  .home .header__nav>li>button, .home .header__nav>li>a {
    text-shadow:none;
  }
}



/* -- Adjust Instagram Alignment on Homepage - overrides style.css - by cbunnell on 12/6/2024 -- */
.home .instagram-section {
  	padding: 70px 20px;
}
@media (min-width: 48em) {
    .home .instagram-section {
		padding: 120px 3em;
    }
}

/* -- Adjust news Alignment on Homepage - overrides style.css - by cbunnell on 12/6/2024 -- */
.news-pannel .slider__carousel .flickity-viewport {
  	overflow: hidden;
}


/*-- 2-Column Video Side-by-side -- */
.responsive-two-columns {
    display:flex;
    flex-wrap:wrap;
    margin-bottom:0 !important;
}

/* columns */
.responsive-two-columns > * {
    width:100%;
    padding:1rem;
}

/* tablet breakpoint */
@media (min-width:768px) {
    .responsive-two-columns > * {
        width:50%;
    }
}

/*-- Image with Frame & Shadow --*/
.text-content img.shadow-img-frame {
    border: solid 4px #FFF;
    box-shadow: 0px 3px 8px rgba(0, 0, 0, .2);
}

/* -- Exploring Three HTML Version, left-align bullets -- */
.exploring-html-version li { text-align:left;}





/* -- Button in General Content -- */
.text-content .button-cta, .main__content .button-cta{
    color: var(--teal);
    border: 2px solid var(--teal);
    background-color: transparent;
      font-size: 16px;
    line-height: 20px;
    font-weight: 800;
    padding: 15px 30px;
    display: inline-block;
    position: relative;
    z-index: 2;
    text-align: center;
      text-underline:none !important;
      text-decoration: none;
    transition: all var(--transition);
    overflow: hidden;
    background: transparent !important;
    transition: all .35s;
}
.text-content .button-cta:hover, .main__content .button-cta:hover {
  color:#FFF;
  background-color:var(--teal) !important;
    transition: all var(--transition);
   text-decoration: underline;
 }
.text-content .button-cta:hover a, .main__content .button-cta:hover a {color:#FFF;}

@media only screen and (max-width: 48em) {
    .text-content .button-cta, .main__content .button-cta {
        color: #FFF;
        background: #006F71 !important;
    }
}


/* -- Enlarge Logo in Header on Mobile -- */
.header__logo { width: 230px; }

/* -- Homepage Social Slider Icons -- */
.instagram-section .homepage_social_icon {
  display:inline-block;
  border-radius: 1954px;
  border: solid 1px transparent;
  transition:all .2s ease-in-out;
}
.instagram-section a.homepage_social_icon:hover {
  border-color:#006F71;
}

/* -- Full-width Teal Content Panel -- */
.content-full-width-block {
  padding:2em 0;
  margin-top:2em;
  * {
    color:#FFF;
  }
}
.content-full-width-block .text-content { margin-bottom:0}
.content-full-width-block hr {border-top:solid 3px #FFF;}



/* -- Program Page - Links in Hero areas -- */
.hero-program .desc a {
    color: #FFF;
    text-decoration:underline;
}
.hero-program .desc a:hover {
	text-decoration:solid underline #FFF 3px;
}

/* -- Header Actions CTA area - for Web Accessibility -- */
.header .header__actions { background:#8E6948;} 


/* -- PRINT STYLE SHEET ADJUSTMENTS -- */
@media print {
    .hero__content .inner {
        background: transparent !important;
        color: inherit !important;
        padding: 0 !important;
        text-indent: 0 !important;
      	text-shadow: inherit !important;
    }
    .subNav {
    }
  .main__content .accordion__content {
    display: block !important;
    height: auto !important;
    visibility:visible !important;
  }
  #news-panel {
    display:none;
  }
  .hero::before {display:none;}
  .hero:before {display:none;}
}

::selection {background:#006F71; color:#FFF; text-shadow:0px 1px 1px rgba(0,0,0,.3);}

/* -- Ashley Request to Hide Carousel Dots/Dashes -- */
.flickity-page-dots {display:none !important;}






/* -- SUCCESS STORIES GRID -- */
@media (min-width: 48em) {
    
    .success-stories-grid .stories-item:nth-child(-n+6) {
        width: 33%;
    }
    .success-stories-grid .stories-item:nth-child(-n+6) .inner {
        background: linear-gradient(1deg, rgba(0, 0, 0, .9) 1.86%, rgba(0, 0, 0, 0) 50.83%);
    }
    

    .success-stories-grid .stories-item:nth-child(-n+6) .img-h {
        position: relative;
        height: 100%;
    }
    .success-stories-grid .stories-item:nth-child(-n+6) .img-h img {
        mix-blend-mode: multiply;
    }
    .success-stories-grid .stories-item .text {
        position: absolute;
        color: #fff;
        width: 100%;
        height: 100%;
        padding: 0 28px 30px;
        z-index: 2;
        bottom: 0;
        left: 0;
        display: flex;
        flex-wrap: wrap;
        align-items: flex-end;
    }
    .success-stories-grid .stories-item:nth-child(-n+6) .eyebrow,
    .success-stories-grid .stories-item:nth-child(-n+6) a,
    .success-stories-grid .stories-item:nth-child(-n+6) .eyebrow,
    .success-stories-grid .stories-item:nth-child(-n+6) a {
        color: #fff;
    }
    .success-stories-grid .stories-item:nth-child(-n+6).link-underline,
    .success-stories-grid .stories-item:nth-child(-n+6) .link-underline {
        background-image: linear-gradient(white, white);
    }
    .success-stories-grid .stories-item .inner, .success-stories-grid .stories-item:nth-child(-n+6) .inner {
        background: linear-gradient(1deg, rgba(0, 0, 0, .9) 1.86%, rgba(0, 0, 0, 0) 50.83%);
    }
}

/* -- SUCCESS STORY CENTER ADJUSTMENT -- */
.success-stories .flex {
    justify-content: center;
}

/* -- GOOGLE MAP EMBED -- */
.google-maps-embed {
        position: relative;
        padding-bottom: 75%; // This is the aspect ratio
        height: 0;
        overflow: hidden;
  		margin:0 auto 5em;
        width:88%;
}
.google-maps-embed iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100% !important;
        height: 100% !important;
}


/* -- FOOTER BACKGROUND CHANGE -- */
.footer:after {
      position: absolute;
    content: "";
    width: 100%;
  height:638px;
    background: url(../images/siteassets/Footer-Campus-Skyline.png) repeat-x bottom center;
  opacity:.3;
    background-size: 100%;
    z-index: 1;
    transform: translate(-0%) rotate(0deg);
    bottom: 0;
    left: 0;
  display:block;
}
.footer_clouds {
  position: absolute;
  top: 0px;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  height: 550px;
  width: 100%;
  overflow: hidden;
  user-select: none;
}
.footer_cloud {
  position: relative;
  width: 290px;
  height: 63px;
  width: 100%;
  background-repeat: no-repeat;
  background-size: auto 100%;
  background-image: url(../images/siteassets/single_cloud.png);
  animation-duration: @duration;
  animation-iteration-count: infinite;
  animation-fill-mode: forwards;
  animation-timing-function: linear;
  z-index: 1954;
  animation: Float infinite 200s linear;
}
@keyframes CloudMove {
  animation-iteration-count: infinite;
  animation-duration: 24s;
  animation-timing-function: linear;
}

.cloud_foreground {
  opacity: 0.2;
  transform: scale(1.4);
  width: 140%;
}
.cloud_background {
  opacity: 0.2;
  animation-duration: 194s;
  background-image: url(../images/siteassets/single_cloud-3.png);
}
.cloud_background-2 {
  opacity: 0.2;
  top: -73px;
  width: 120%;
  animation-duration: 164s;
}

@keyframes Float {
  from {
    transform: translateX(100%) translateZ(0);
  }
  to {
    transform: translateX(-15%) translateZ(0);
  }
}

@media only screen and (max-width: 1130px) {
  .footer:after {
    position: absolute;
    content: "";
    width: 100%;
    height:100%;
    background: url(../images/siteassets/Footer-Campus-Skyline-mobile.png)
      repeat-x bottom center;
    background-position:bottom left;
    background-repeat:repeat-x;
    opacity: 0.5;
    background-size: 180%;
    z-index: 1;
    transform: translate(-0%) rotate(0deg);
    bottom: 0 !important;
    left: 0;
    display: block;
  }
}
@media only screen and (max-width: 1130px) {
  .footer:after {
    background: url(../images/siteassets/Footer-Campus-Skyline-mobile.png)
    background-size: 100%;
  }
}



/* -- HERO BACKGROUND ADJUSTMENTS -- 
.hero {
  background:#006F71;
}

.hero__media img, .hero__media video {
  mix-blend-mode:normal;
}
.hero__content:before {
    content: " ";
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(1deg, rgba(0, 0, 0, .9) 8.85%, rgba(0, 0, 0, 0) 50%);
}
*/

/* -- ADJUST TAB CONTENT TOP MARGIN -- */
.tabs-section .tabs {margin-top:2em;}


/* -- ADJUST ACADEMIC PROGAM MARGIN BOTTOM -- */
.hero-program {margin-bottom:2em;}


/* -- In-Body Social Icons -- */
.social-media-body-icons {
  position:relative; 
  top:-15px;
}
.social-media-body-icons a {
   display:inline-block;
  border-radius: 1954px;
  border: solid 1px transparent;
  transition:all .2s ease-in-out;
}
.social-media-body-icons a:hover {
  border-color:#006F71;
}


/* -- Two-Column Container -- */
.two-col-wrapper {
  margin: 5em;
}

.two-col-row {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  width: 100%;
  gap: 50px;
}

.two-col-column {
  display: flex;
  flex-direction: column;
  flex-basis: 100%;
  flex: 1;
  align-items: stretch;
  padding:1em;
}

.content-full-width-block.teal-bg .button-cta {
    border-color: #FFF;
    color:#FFF;
}
.content-full-width-block.teal-bg a:hover {text-decoration:underline;}


/* ADD BOLDLY WE REACH UNDERLINE ON HOMEPAGE HEADINGS */
.home .stats-panel .heading:after, .home .success-stories .heading:after, .home .text-content .subheading:after {
  background-image: url(../images/contentassets/bwr-underline.png);
  content: " ";
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  width: 680px;
  height: 45px;
  background-size: 80%;
  display: block;
  margin: 0 auto;
}
.stats-panel .heading:after, .success-stories .heading:after, .home .text-content .subheading:after {
    display: block;
    clear: both;
    left: 0;
    margin: 0;
    background-size: 100%;
    width: 350px;
}
@media only screen and (max-width: 48em) {
  .home .stats-panel .heading:after, .home .success-stories .heading:after {
    width: 380px;
    height: 45px;
    background-size: 85%;
  }
  .text-content .button-cta, .main__content .button-cta {
    color:#FFF;
  }
}


/* STYLE VISUAL ROUTER GRID WITHOUT LINK */
.main__content .visualRouter-block .visualRouter_item [href=""]:after,
.visualRouter_item a.link-underline[href=""]{
    cursor: default;
  background:none;
}

footer {margin-top:1em;}





/* -- ENABLE CHECKLIST-STYLE BULLETS WITH THIS CLASS -- */
.text-content ul.checklist {
  list-style:none;
}
.text-content ul.checklist li {
	position: relative;
    margin-left: 10px;
}
.text-content ul.checklist li:before {
  content: '✓';
  color: #A27752;
  position:absolute;
  left:-35px;
  font-weight:bold;
}




/* -- RELATED LINKS SIDEBAR -- */
.sidebar-widgets .widget__links.teal-bg * {color:#FFF;}
.sidebar-widgets .widget__links.teal-bg a.link-underline {background-image: linear-gradient(var(--white), var(--white));}

.widget__links.lighter-teal-bg {background-color: #f2f8f8;}
.widget__links.teal-bg  .button {border-color: #FFF;}


/* -- FULL-WIDTH IMAGE CONTENT TYPE BACKGROUND ADJUSTMENT - ACCESSIBILITY CONTRAST -- */
.media:not(.image-carousel) .media__caption {background:#000;}




























