/**
 * Theme Name: USI Microsite
 * Description: Blocksy Child theme
 * Author: Creative Themes
 * Template: blocksy
 * Text Domain: blocksy
 */

:root {
	    --theme-wide-offset: 217px;
			--theme-content-spacing: 1.5rem;
			--wp--preset--font-size--small: 0.833rem;
}



html { 
	font-size: var(--theme-font-size); 
	line-height: var(--theme-line-height); 
} 

.has-large-font-size {
	line-height: 1.3125;
}

@media (max-width: 999.98px) {
	body .hero-section[data-type="type-2"] {
		--container-padding: 50px 0 15px 0 !important;
	}
}
@media (max-width: 782px) {
	
	.wp-block-buttons.is-content-justification-right {
			justify-content: flex-start !important;
	}
	
	.wp-block-columns {
			row-gap: 2.5rem;
	}
}

/* LINKS & Buttons */


body[data-link='type-1'] .entry-content a,
body[data-link='type-1'] .entries a,
body[data-link='type-1'] .ct-footer a,
body[data-link='type-1'] .mec-event-content a, 
body[data-link='type-1'] .mec-breadcrumbs a {
  background-image: linear-gradient(currentColor, currentColor);
	background-size: 0% 1px;
	background-position: 0% 100%;
  background-repeat: no-repeat;
	transition: all 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955); 
}
	body[data-link='type-1'] .entry-content a:hover,
	body[data-link='type-1'] .entries a:hover,
	body[data-link='type-1'] .ct-footer a:hover, 
	body[data-link='type-1'] .mec-event-content a:hover,
	body[data-link='type-1'] .mec-breadcrumbs a:hover	{
		background-size: 100% 1px;
	}
body[data-link='type-1'] .entry-content a,
body[data-link='type-1'] .entries a,
body[data-link='type-1'] .ct-footer a,
body[data-link='type-1'] .mec-event-content a {
	font-weight: 600;
}
body[data-link='type-1'] .entry-content a.icon:hover svg{
	fill: var(--theme-palette-color-1);
}

/* .wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link, */
 .ct-button-ghost,.wp-block-buttons .wp-block-button .wp-block-button__link.is-style-outline,.wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link  {
    border-width: 1px;
		border-color: currentColor;
 }
 .ct-button-ghost:hover, .wp-block-buttons .wp-block-button .wp-block-button__link.is-style-outline:hover, .wp-block-buttons .wp-block-button.is-style-outline .wp-block-button__link:hover {
    color: var(--theme-button-text-hover-color);
    border-color: var(--theme-button-background-hover-color);
    background-color: var(--theme-button-background-hover-color);
}



/* BREADCRUMBs */

body .ct-breadcrumbs {
    font-weight: 400;
    text-transform: none;
    font-size: 0.75rem;
}

body .ct-breadcrumbs a { 
	color: var(--theme-palette-color-3);
}
body .ct-breadcrumbs a:hover {
  color: var(--theme-palette-color-2);
}	


/* Language Switcher */

[data-header*="type-1"] .ct-header [data-id="language-switcher"] {
  --items-spacing: 5px;
}	

.ct-language li:not(:first-child)::before {
	content: '/';
	display: inline; 
	float: left;
  margin-right: var(--items-spacing);
}


/* GROUPS */

.has-background:is(p,.wp-block-group) {
    padding-top: calc( var(--theme-content-spacing)*2 ); 
		padding-bottom: calc( var(--theme-content-spacing)*2 );
}

.wp-block-separator:not(.is-style-dots) {
    height: 1px;
}

  .wp-block-spacer.is-style-responsive-large {
    height: 3rem !important;
  }

  .wp-block-spacer.is-style-responsive-small {
    height: 1.5rem !important;
  }

.entry-content h3 + :is(p,ul,ol) {
    margin-top: calc( var(--theme-content-spacing)*-1/2 );
}

.entry-content figcaption {
  text-align: left;
	margin-top: 0.5rem;
}


h2.gform_title {
	font-weight: 400;
	font-size: 1.5rem;
	line-height: 1;
	margin-bottom: var(--theme-content-spacing);
}
.entry-button {
	font-size: 1rem;
}



blockquote.wp-block-quote cite, blockquote.wp-block-pullquote cite {
    font-size: 1rem !important;
		font-style: normal;
		font-weight: 400;
}
.wp-block-quote:not(.is-style-plain):not(.has-text-align-center):not(.has-text-align-right) {
    border-inline-start: none;
}
.wp-block-quote:not(.has-text-align-center):not(.has-text-align-right) {
    padding-inline-start: 0;
}
.wp-block-quote.is-style-plain {
	font-size: 1.5rem;
}

[class*='has-palette-color'] h1 {
	color: inherit;
}

.entry-header .entry-meta {
    margin-left: auto;
    margin-right: auto;
    width: var(--theme-narrow-container-max-width);
    max-width: var(--theme-narrow-container-max-width);
}

.single-post .entry-header h1, .single-featured-stories .entry-header h1  {
	margin-bottom: 3.5rem;
}

.ct-button.ct-load-more {
	border: 1px solid currentColor;
}

/* HOME */

body.[class^="is-homepage"]  h1 {
	font-weight: 300;
}

body.is-homepage-2 .is-style-hero .wp-block-image.size-full, 
body.is-homepage-3 .is-style-hero .wp-block-image.size-full,
body.is-homepage-4 .is-style-hero .wp-block-image.size-full {
	position: relative;
	z-index: 2;
}
body.is-homepage-2 .is-style-hero .wp-block-image.size-full::after, 
body.is-homepage-3 .is-style-hero .wp-block-image.size-full::after,
body.is-homepage-4 .is-style-hero .wp-block-image.size-full::after  {
	content: "";
	position: absolute;
	/* bottom: calc( var(--theme-content-spacing)*2*-1 ); */
	bottom: 0;
	left: calc( (100vw - 100%)/2*-1 );
	width: 100vw; 
	/* height: calc( 50% + var(--theme-content-spacing)*2 ); */
	height: 50%;
	background-color: #fff;
	z-index: -1;
}

body.is-homepage-4 .is-style-hero .wp-block-image.size-full::after {
	height: calc( var(--theme-content-spacing)*2 ); 
}


body.is-homepage-3 h1 {
	text-transform: uppercase;
	font-size: calc( var(--theme-font-size)*1.43 );
}
	

/* STRETCHED COLUMNS */


.is-style-featured > .wp-block-column {
	height: auto;
  display: flex;
  flex-direction: column;
  justify-content: space-between;

}
.is-style-featured > .wp-block-column > * {
	margin-bottom: 0;
}
.is-style-featured > .wp-block-column > *:last-child {
	margin-top: auto;
	padding-top: var(--theme-content-spacing); 
}

/* TOC */

.wp-block-simpletoc-toc {
	font-size: 0.75rem;
}
.simpletoc-title {
		font-size: 1em;
}


ol.simpletoc-list,  .simpletoc-list ol {
  counter-reset: item;
	padding-left: 0;
}
.simpletoc-list ol { 
	padding-left: 2.25em;
}

.simpletoc-list li {
  display: block; 
}
.simpletoc-list li:before {
  content: counters(item, ".") ".";
  counter-increment: item; 
	display: inline-block;
	min-width: 1.75em;
	text-align: right;
	margin-right: 0.5em;
}
.simpletoc-list li li:before {
		min-width: 2em;
}

body .simpletoc-list a { 
	color: var(--theme-palette-color-3);
}
body .simpletoc-list a:hover {
  color: var(--theme-palette-color-2);
}	


/* GRAVITY */


body .gform_wrapper.gravity-theme .field_description_below .gfield_consent_description, body .gform_wrapper.gravity-theme .gfield_consent_description {
	max-height: auto;
	border-width: 0;
	padding: 0;
	overflow: auto;
	font-size: 14px;
	line-height: 1.4;
} 

body .gform_wrapper.gravity-theme .gfield_label {
    font-size: 1rem;
		font-weight: 400;
}

.button.gform_button {
	color: var(--theme-button-text-hover-color);
	border-color: var(--theme-button-background-hover-color);
	background-color: var(--theme-button-background-hover-color);
	font-weight: 600;
}
 .button.gform_button:hover {
    color: var(--theme-button-text-initial-color);
    border-color: var(--theme-button-background-initial-color);
    background-color: var(--theme-button-background-initial-color);
}



/* PHOTO STACKS */

.wp-block-group.collage, .wp-block-group.collage > .wp-block-columns {
	gap: 20px !important;
}

.wp-block-group.collage > * {
	width: 100%;
}


/* OTHER FORMS */

.js-cm-form input:not([type='checkbox']) {
	-webkit-appearance: none;
    appearance: none;
    width: var(--theme-form-field-width, 100%);
    height: var(--theme-form-field-height, 40px);
    font-family: inherit;
    font-size: var(--theme-form-font-size, 16px);
    color: var(--theme-form-text-initial-color, var(--theme-text-color));
    padding: var(--has-classic-forms, var(--theme-form-field-padding, 0 12px));
    border-width: var(--theme-form-field-border-width, 1px);
    border-style: var(--theme-form-field-border-style, solid);
    border-color: var(--theme-form-field-border-initial-color);
    border-radius: var(--has-classic-forms, var(--theme-form-field-border-radius, 3px));
    background-color: var(--has-classic-forms, var(--theme-form-field-background-initial-color));
    transition: color .12s cubic-bezier(0.455, 0.03, 0.515, 0.955),border-color .12s cubic-bezier(0.455, 0.03, 0.515, 0.955),background-color .12s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

.js-cm-form input[type='checkbox'] {
	margin-right: 0.5rem;
}
.js-cm-form div + div { margin-top: 0.5rem; }
.js-cm-form button {margin-top: 0.75rem; }
.js-cm-form label {font-size: 1rem; display: inline-block; margin-bottom: 8px;}
.js-cm-form input[type='checkbox'] + label { font-size: 15px; margin-bottom: 0;}