/**
 *  Feel free to edit this css for any needed site overrides.
 *  This file should not be written back to the master repository. 
 *  Instead it will be included in CoF's nightly backup routines.
 */

/* search form in footer */
footer form#search-block-form > div {
    margin-bottom: 3px !important;
    margin-top: 3px !important;
}

/* default margins: PAGE TITLE  */
#block-cof-sassafras-pagetitle, #block-cof-sassafras-page-title {
    margin-left: 5%;
    margin-right: 5%;
}

/* default margins: all content types except paragraph page  */
body:not([class*="node--type-paragraph-page"]) div#block-cof-sassafras-mainpagecontent {
    margin-left: 5%;
    margin-right: 5%;
}


.section-small-image .col-txt {
  flex-grow: 1;
}

.section-small-image .col-img {
  max-width: fit-content;
}


.dropdown-item.active, .dropdown-item:active  {
  background-color: transparent;
  font-weight: bold;
}

.dropdown-item.active a, .dropdown-item:active a {
  text-decoration: none;
}  

/** nav block paragraphs -- add top and bottom margins **/
.paragraph.paragraph--type--nav-block-item {
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
}

/** center items that fall in a partially full row **/
.paragraph.paragraph--type--nav-block .nav-block .row {
    justify-content: center;
}

/* default field label styling */
.field__label {
    font-weight: bold;
}


/* make sure footer is at bottom on very short pages */
@media screen and (min-width: 768px) {
	div#main {
    /* min-height: calc(100vh - 400px); */
	}
}

/** Long Site name -- WRAP IT **/
.navbar-brand {
  white-space: unset;
}

.navbar-brand a {
  white-space: unset;
}

/* make sure ANY sidebar menu actually fills the sidebar space (width) **/ 
#sidebar_second nav[class*="menu"], #sidebar_first nav[class*="menu"] {
  flex-grow: 1;
}

/* remove carousel image margins */
.paragraph .field--name-field-slide-image .field--type-image {
  margin: 0;
}

/* combine multiple menus as single row in secondary menu */
	.row.region.region-secondary-menu {
		justify-content: center;
	}
@media screen and (min-width: 1400px){
	.row.region.region-secondary-menu {
		justify-content: flex-end;
	}
}
.region-secondary-menu nav {
  max-width: fit-content;
}

#secondary_menu_offcanvas .region-secondary-menu nav {
  max-width: 100%;
}

#secondary_menu_offcanvas a.nav-link {
  color: white;
}


/* center carousel link buttons at small screen sizes */
@media screen and (max-width:767px){
  .carousel-slide-links {
    width: 100% !important;
    text-align: center !important;
  }
  
}
/* make carousel overlay text wider at very small screen sizes */
@media screen and (max-width:501px){
  .slide_overlay_text {
    width: 100% !important;
  }
  
}


/* remove image field margins for all banner images */
.paragraph--type--banner-image .field--type-image {
    margin: 0;
}

/* remove space between content and header on paragraphs pages */

.node--type-paragraph-page main#content div#node-content-wrapper {
  padding-top: 0 !important;
}

.user-logged-in.node--type-paragraph-page main#content div#node-content-wrapper {
    margin: initial !important;
    padding-top: 1rem !important;
}

.node--type-paragraph-page .node__content.clearfix {
  margin-top: 0px !important;
}

/* remove space between carousel and top of paragraph wrapper */

.paragraph--type--header-slideshow-slide .field--type-entity-reference {
  margin-bottom: 0rem;
}

/* .section-nine-three = trophiccascades specific? */
.section-nine-three .two-column-col.two-column-col-1.col-sm-12.col-md-7.col-lg-8 {
  padding:0;
}

/* two-column featured paragraph content so there appears to be a border bottom and top (if at all) */
.field--name-field-page-feature-paragraphs .section-nine-three .two-column-responsive > .row {
  display: flex;
  align-items: center;
}


@media screen and (max-width: 767px) {
	.section-nine-three .two-column-col.two-column-col-2.col-sm-12.col-md-5.col-lg-4 {
		margin-top: 12px;
		margin-bottom: 12px;
	}
}


/* stack footer in reverse order for mobile so site navigation (or search if present) is first */
@media screen and (max-width: 767px){
  footer .container-fluid .row {
    flex-direction: column-reverse !important;
  }
}

/* make sure footer contextual links are not white so they are visible */
footer .contextual-links li a {
  color: #444 !important;
}

footer.site-footer #block-cof-sassafras-searchform .content {
  width: 100%;
  margin-bottom: .5rem;
}

footer #search-block-form {
    justify-content: center;
}

/* EPTW: make member login link style match the site nav menu's */
footer div > a.nav-link {
  padding: 0;
}

/* FMBL */
/* H4 */
h4, h4 > * {
  text-transform: none;
  font-size: 1.1rem;
}

/* constrain width of features grid items */
.page-view-featured-image-rotator .views-view-responsive-grid__item {
    max-width: 325px;
}

.block-views-blockhomepage-news-block-block-1 h2 {
  font-size: 2rem;
}

.block-views-blockhomepage-news-block-block-1 {
  padding: .5rem;
}

.block-views-blockhomepage-news-block-block-1 .views-row {
  /* border: 1px solid red; */
  display: flex;
  align-items: center;
}

.views-field.views-field-field-news-image.news-image img {
    padding-right: 0.5rem;
    padding-top: 5px;
    padding-bottom: 5px;
}

.nav-block-link-image {
    height: 200px !important;
}

/** section css styles **/
.section-constrain-width-1400px {
  max-width: 1400px;
  margin-left: auto !important;
  margin-right: auto !important;
}

.section-constrain-width-1200px {
  max-width: 1200px;
  margin-left: auto !important;
  margin-right: auto !important;
}

.section-constrain-width-1000px {
  max-width: 1000px;
  margin-left: auto !important;
  margin-right: auto !important;
}

.section-constrain-width-800px {
  max-width: 800px;
  margin-left: auto !important;
  margin-right: auto !important;
}

.section-constrain-width-710px {
  max-width: 710px;
  margin-left: auto !important;
  margin-right: auto !important;
}

.section-constrain-width-900px {
  max-width: 900px;
  margin-left: auto !important;
  margin-right: auto !important;
}

/** publications view **/

@media screen and (min-width: 768px){
	.doi-smallscreen { display: none; }
}

@media screen and (max-width: 767px){
	.doi-full { display: none; }
}

.view-publications .view-content.row h3 {
  margin-top: 1.2rem;
  padding-left: 1rem;
  margin-bottom: 0;
}

.publication.views-row {
    margin-top: 1rem;
    padding-left: 1rem;
}

span.publication-type {
    border: 0px solid silver;
    background-color: #304e92;
    color: white;
    padding: 3px 10px;
    border-radius: 5px;
    font-size: small;
}

/* hide grouping headers for publication attachment view */
.view-publications.view-id-publications.view-display-id-attachment_1 .view-content.row {
  display: none;
}
/* style publications view attachment header with search arguments */
.view-publications.view-id-publications.view-display-id-attachment_1 .view-header {
  border-top: 4px solid #d73f09;
  border-bottom: 4px solid #d73f09;
 /* padding: .5rem; */
 margin-bottom: 1rem;
}
.results-summary {
    width: 100%;
    text-align: center;
}

.pagination {
  /* justify-content: center; */
  margin-top:1rem;
}

/** STYLE FIXES TO ADD TO ALL SITES **/

/* make toggler ico (hamburger menu) WHITE */
.navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='%23fff' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

/** fix for align center not working for media **/
.align-center .field.field--name-field-media-image.field--type-image, .align-center .field.field--name-field-media-image.field--type-image .field__item {
    width: 100%;
}
.align-center .field.field--name-field-media-image.field--type-image .field__item {
  text-align: center;
}
.align-center {
  text-align:center !important;
}
/** end fix for align center not working for media **/

/* make sure images floated left have right margin! */
@media screen and (max-width: 559px){
	.align-left img {
		margin-right: 1rem;
	}
}


/* header branding alignment on wider screens */

@media screen and (min-width:1400px){
	/* College of Forestry linkback margin is doubled so does not align with logo when stacked */
	/* so removing margin on link itself */
	header#header div.cof-linkback a, header#header div.cof-linkback a:visited {
    margin-left: 0px !important;
    margin-right: 0px !important;
  }
  header#header .osu-brand {
    justify-content: center !important;
  }
  /* add vertical line between branding and site title */
  .osu-cof-branding {
   border-right: 1px solid #efefef;
   margin-right: 1rem;
	}
}




/* add margin to floated images in Basic Text */
.field--name-field-basic-text img.align-left {
  margin-right: .5rem;
}

.section-add-black-border {
  border: 3px solid black;
  margin-right:5% !important;
  margin-left:5% !important;
}

.section-add-black-border .row {
		display: flex;
    align-items: center;
}

.section-add-black-border .field--name-field-bt-responsive-image .field--type-image {
  float: none !important;
  max-width: 300px;
  margin-left:auto;
  margin-right:auto;
}


@media screen and (min-width:768px){
	.align-right .field.field--name-field-media-image.field--type-image {
		float: right;
	  margin-right: 0;
	  margin-left: 1rem;
	}
}

@media screen and (max-width:767px) {
  [class*="section-constrain-width-"] .paragraph--type--responsive-columns-two {
		 /* margin-left: 5%;
		 margin-right: 5%; 
		 border: 2px solid green;*/
	}
	
	[class*="section-constrain-width-"] .field__item .two-column-col-1 [class^="paragraph paragraph--type--basic-text paragraph-unique-id-"]{
	  margin-left: 5% !important;
	  margin-right: 5% !important;
	  /*padding-left: 0px;
	  padding-right: 0px; */
	  margin-bottom: .5rem !important;
	}
	
	[class*="section-constrain-width-"] .field__item .two-column-col-2 [class^="paragraph paragraph--type--basic-text paragraph-unique-id-"] {
	  margin-left: 5% !important;
	  margin-right: 5% !important;
	 /* padding-left: inherit !important; */
	  margin-top: .5rem !important;
	}
	
}

/** AWS Section Background colors **/
/* aws-blue */
.cof-bg-awsblue {
    background-color: #006784;
}

.cof-bg-plainwhite {
    background-color: #ffffff;
}


span.X-logo {
  font-size: 2rem;
}

/** TEXT EDITOR STYLES */
/*
h3.normalcase|Normal Case (H3)
h4.normalcase|Normal Case (H4)
p.bigger|Bigger
a.bigger|Bigger (Link)

*/
h3.normalcase, h3.normalcase > *, h4.normalcase, h4.normalcase > *, h2.normalcase, h2.normalcase > *, h2.smaller, h2.smaller > * { 
	text-transform: none !important; 
}
h2.smaller, h2.smaller > * {
  font-size: 2.1rem;
}
span.thinner {
  font-weight: 400;
}

h2.smaller > a { 
  color: #d73f09;
}

h2.smaller > a:hover { 
  color: #444;
}

a.bigger, p.bigger { 
  font-size: 1.2rem; 
}

/* header with icon -- remove excessive default bottom margin */
.header-has-icon.header-justification--center {
    margin-bottom: 0px !important;
   /* margin-top: 3rem !important; */
}

/** NEWS **/
/* News view dashed borders */


.views-field.views-field-field-news-story-image {
    text-align: center;
}

.views-field.views-field-field-news-story-image .field--type-image {
  float: none;
  margin-right: 0px;
}
.paragraph.paragraph--type--embedded-block {
    padding: 2rem;
}


.view-featured-stories .views-row .field--name-field-media-image img {
  object-fit: cover;
  height: 350px;
  width: 100%;
}

.view-featured-stories .sm-features-all-wrapper .views-row .field--name-field-media-image img {
  object-fit: cover;
  height: 180px;
  width: 100%;
}

.view-featured-stories {
  max-width: 800px;
  margin-left:auto;
  margin-right:auto;
}

.view-featured-stories .views-field-title {
  font-size: 1.3rem;
  margin-top: .5rem;
  margin-bottom: 1rem;
}

.view-featured-stories .sm-features-all-wrapper .views-field-title {
  font-size: 1.1rem;
  margin-top: 0rem;
}



.sm-features-all-wrapper {
    display: flex;
    justify-content: space-between;
    padding: 0px;
    flex-wrap: wrap;
    flex-direction: row;
}

.sm-features-1-2-wrapper, .sm-features-3-4-wrapper {
    display: flex;
    flex: 1 1 0px;
    flex-wrap: wrap;
    flex-direction: row;
}

.sm-features-all-wrapper .views-row {
    padding: 1rem;
    flex: 1 1 0px;
    min-width: 180px;
}
h2.very-dashing-title {
  text-align: right;
}

div.very-dashing-title-wrapper {
  /* display: flex; */
  flex-direction: row;
  flex-wrap: nowrap;
  padding-left:1rem;
  padding-right:1rem;
 /* margin-bottom: 1rem; */
  align-items: baseline;
  margin-top:2rem;
  display: none;
}
div.dashing-part {
		flex-grow: 1;
    flex-shrink: 1;
    border-bottom: 4px dashed #000;
    /* margin-top: -1rem; */
    height: calc(100% - 5px - 1.4rem);
    margin-right: 0.3rem;
}
div.title-part {
  flex-grow:0;
  flex-shrink: 0;
}
div.very-dashing-footer {
  border-bottom: 4px dashed #000;
}

.view.view-featured-stories.view-id-featured_stories.view-display-id-block_1 div.views-row.big-feature {
  padding: 1rem;
}

@media screen and (max-width:767px){
  div.dashing-part {
  	display: none;
  }
  h2.very-dashing-title {
    text-align:center;
  }
  div.title-part {
  	flex-grow:1;
  }
}

/* if big feature image is not wide enough and floats ... */
.very-dashing-footer {
    clear: both;
}
/* actually the image should not float, even if it is not big enough ... */
@media (min-width: 560px) {
    .node .view.view-featured-stories.view-id-featured_stories .field--type-image {
        float: none;
        margin: 0;
    }
}


.sm-features-all-wrapper .field--type-image img {
   margin-bottom: 5px;
}

.view-id-featured_stories .attachment .view-footer {
  padding-bottom: 3rem;
}

/* News Page */
.view-featured-stories-page .views-view-responsive-grid__item .field--name-field-media-image img {
  object-fit: cover;
  height: 300px;
  width: 100%;
  margin-bottom: .5rem;
}

.view-featured-stories-page .views-view-responsive-grid__item .views-field-body, .view-featured-stories-page .views-view-responsive-grid__item .views-field-body p {
  font-size: .9rem;
}

.view-featured-stories-page .views-view-responsive-grid__item .views-field-title {
  font-weight: bold;
  font-size: 1rem;
  margin-bottom: .3rem;
}

h2.view-title {
  margin-bottom: 2rem;
}

/** constrain width of featured stories page view **/
.view.view-featured-stories-page.view-id-featured_stories_page {
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

/* hide news view block title */
.very-dashing-title-wrapper {
 /* display: none !important; */
}

/* reduce space between header icon and content */
.paragraph-unique-id-489 .cof-icon-h2 hr {
   /* margin-bottom: 35px; */
}



/* hide title with dashes for news section */
.paragraph--type--section-main-content.paragraph-unique-id-491 .very-dashing-title-wrapper {
   /*  display: none; */
}

/*
.big-feature a.btn.btn-dark.align-center {
    margin-top: -35px;
}
.big-feature a.btn.btn-dark.align-center::after {
   clear:both;
}
*/

.view-id-featured_stories .attachment .view-footer {
    text-align: center;
    padding-top: 2rem;
    margin-top: 1rem;
    border-top: 4px dashed black;
}

body.page-view-featured-stories-page .views-field.views-field-field-tags {
    margin-top: 5px;
    font-size: .9rem;
}

body.page-view-featured-stories-page .views-field-field-article-link {
    margin-top: 5px;
}


.responsive-iframe-max1000 {
    width: 100%;
    max-width: 1000px;
    height: 500px;
    max-height: 500px;
}

.responsive-iframe {
  max-width: 100% !important;
}

.iframe-container {
    position: relative;
    overflow: scroll;
    width: 100%;
}



.section-max-width-100percent {
  max-width: 100%;
  overflow-x: scroll;
}

/** CENTER NAV BLOCK ITEM DETAILS **/
.nav-block-item-link-details {
    text-align: center;
}

/** Make sure all iframes are responsive at small screen sizes **/
iframe {
    max-width: 100% !important;
}


@media screen and (min-width: 1200px) {
	.navbar-expand-xl .navbar-collapse {
		flex-direction: column;
	}
}

/* hide password reset tab because disabled */
.nav-link.nav-link--user-password {
  display: none;
}


/** HSC Photo Gallery **/

.node-photo_gallery .views-view-responsive-grid__item {
    margin: 1rem;
}

.views-field.views-field-field-gallery-image {
    /* background-color: #efefef; */
    text-align: center;
}
.views-field.views-field-field-gallery-image-1 {
    text-align: center;
}

.views-field-field-gallery-image a img {
  max-width: 100% !important;
  height: auto !important;
}

[id^="block-cof-sassafras-galleries"] a.btn.btn-secondary {
  margin: 5px;
}

[id^="block-cof-sassafras-galleries"] {
  margin-left: 1rem;
  margin-right: 1rem;
  padding: 10px;
  text-align: center;
  margin-bottom: 2rem;
  border-bottom: 3px solid #444;
  background-color: #efefef;
}

/* small slideshow */

.section-small-slideshow .slide_overlay_text {
    padding-left: 1rem !important;
    padding-top: 10px !important;
    padding-bottom: 0px !important;
    padding-right: 0px !important;
}

@media screen and (min-width: 800px){
	.section-small-slideshow {
	  padding-top: 2rem !important;
	 /* padding-bottom: 1rem !important; */
	}
  
}

/* galleries using colobox */
.field.field--name-field-gallery-image.field--type-image.field--label-hidden.field__items {
    display: flex;
    max-width: 100%;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: space-around;
}

.field.field--name-field-gallery-image.field--type-image.field--label-hidden.field__items img {
  max-width: 325px;
  height: auto;
}
/* homepage slideshow in featured */

.section-no-padding .two-column-col {
  padding-left: 0px;
  padding-right: 0px;
}

.section-no-padding .two-column-col .paragraph--type--block-paragraph {
    padding-left: 1rem;
    padding-right: 1rem;
    border: 1rem solid #efefef;
    /* adjust height to match slideshow height */
    height: 400px;
}

/* notes from biotechlab */
/*
ul.news-items li {
    margin: 0;
    padding: 0px 0 10px 48px;
    list-style: none;
    background-image: url(/sites/default/files/OSU_icon_PlantResearch.svg);
    background-repeat: no-repeat;
    background-position: left 5px;
    background-size: 28px;
}
*/

.block-homepage-news-list .views-row {
    margin: 0;
    padding: 0px 15px 20px 36px;
    /* list-style: none; */
    background-image: url(/sites/default/files/OSU_icon_leaf_01.svg);
    background-repeat: no-repeat;
    background-position: left 0px;
    background-size: 28px;
    margin-left: 10px;
    margin-right: 10px;
  }

/** adjust break points for homepage header slideshow + news section **/
@media screen and (min-width:992px) and (max-width:1199px) {
  .section-no-padding .two-column-col.col-lg-9 { 
		width: 66.66666667%;
	}
	.section-no-padding .two-column-col.col-lg-3 { 
		width: 33.33333333%;
	}

}

@media screen and (max-width:992px) {
  .section-no-padding .two-column-col.col-lg-9 { 
		width: 100%
	}
	.section-no-padding .two-column-col.col-lg-3 { 
		width: 100%
	}
	
	.section-no-padding .two-column-col .paragraph--type--block-paragraph {
	  height: fit-content;
	}

}


/** Meg-Krawchuk **/
/* News Articles View */
.views-news-articles-list-page .views-row h2.node__title, .views-news-articles-list-page .views-row h2.node__title > * {
    text-transform: none;
    font-size: 2rem;
    text-align: left !important;
}

/* homepage news -- add side margins esp for smaller screen sizes -- not needed if no background colors */
#block-views-block-featured-stories-block-1 {
  margin-left: 1rem;
  margin-right: 1rem;
  margin-top: 2rem;
}


/** research menu **/
[id^="block-researchmenu"] a.nav-link {
    color: white !important;
    /* background-color: #d73f09 !important; */
    background-color: #222 !important;
    border: 1px solid white;
    padding: .5rem 1rem;
    margin: .5rem .6em;
    border-radius: 10px;
    text-decoration: none;
    font-weight: bold;
}

/** for research menu w background image **/
.section-min-height-1000px > div.cof-bg {
  min-height: 1000px;
}

/* slideshow get taller for v wide screens */
/* also make homepage news (next to slideshow) correspondingly taller (N/A for people meg-krawchuk) */

@media screen and (min-width: 1800px){
	.field--name-field-page-feature-paragraphs .section-x-widescreen .carousel-item {
		max-height: 500px !important;
	}

	.field--name-field-page-feature-paragraphs .section-x-widescreen .carousel-item img {
		height: 500px !important;
	}
	/*
	.paragraph.paragraph--type--section-main-content.paragraph-unique-id-21 div.cof-bg-white {
    min-height: 480px;
    padding: 1rem;
	}
	*/
}

@media screen and (min-width: 2400px){
	.field--name-field-page-feature-paragraphs .section-x-widescreen .carousel-item {
		max-height: 600px !important;
	}

	.field--name-field-page-feature-paragraphs .section-x-widescreen .carousel-item img {
		height: 600px !important;
	}
	
	/*
	.paragraph.paragraph--type--section-main-content.paragraph-unique-id-21 div.cof-bg-white {
    min-height: 580px;
    padding: 1rem;
	}
	*/
}
/* slide overlay font fix */
.slide_overlay_text p, .slide_overlay_text p > *, .slide_overlay_text a, .slide_overlay_text a > * {
  font-family: 'Stratum2Web';
}


/* basic text paragraph default list style -- add margins */
.paragraph.paragraph--type--basic-text-with-image h3:first-child {
    margin-top: 0px;
}
@media (min-width: 560px) {
    .paragraph.paragraph--type--basic-text-with-image .field--type-image {
        float: none;
        margin: 0;
    }
}

/* align h2 left by default within body field AND within paragraphs' basic text field */
.text-formatted.field.field--name-body h2, .field--name-field-basic-text h2 {
  text-align: left;
}

.text-formatted.field.field--name-body h2.text-align-center {
  text-align: center;
}

.text-formatted.field.field--name-body h2.text-align-right {
  text-align: right;
}

/* prevent aligned left media images from floating by default */ 
.field.field--name-field-media-image.field--type-image.field--label-visually_hidden {
  float: none !important;
}

/* reduce space between header icon bar (h2) and next paragraph */
.cof-icon-h2 hr {
    margin-top: -35px !important;
    margin-bottom: 35px !important;
}

/** FORMS **/

/* webform inline label fix */
.webform-element--title-inline {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    align-content: center;
    align-items: baseline;
}

.webform-element--title-inline .input-group, .webform-element--title-inline.form-type-textfield input, .webform-element--title-inline select {
  max-width: fit-content;
}

.webform-element--title-inline small.description.text-muted {
    width: 100%;
    margin-top:.2rem;
}

.webform-select-other.webform-element--title-inline legend {
   width: fit-content;
   margin: unset;
}

.webform-select-other.webform-element--title-inline legend {
  /* make this match label styling */
  padding-right: 0.5em;
  font-size: var(--bs-body-font-size);
}

.webform-element--title-inline.webform-select-other--wrapper legend span {
  font-weight: bold;
}

/** styling added 12-15-2023 **/

/*********************** 
 **  ALL Labels BOLD  **
 ***********************/
  
form[class*="webform"] label {
  font-weight: bold;
}
/** oops except not radio buttons **/
form[class*="webform"] label.form-check-label {
  font-weight: normal;
}

/************************************** 
 **  fieldsets and details styling   **
 **************************************/

form[class*="webform"] fieldset[class*="webform-type-fieldset"] {
  border: 1px solid #ced4da;
  /* border-radius: 5px 5px; */
}

form[class*="webform"] fieldset[class*="webform-type-fieldset"] legend {
  font-weight: bold;
}

form[class*="webform"] fieldset[class*="webform-type-fieldset"] > legend, details summary {
  font-size: 1.1rem;
  font-weight: bold;
  padding: .5rem;
  background-color: #efefef;
}

form[class*="webform"] fieldset[class*="webform-type-fieldset"] > legend {
  border-bottom: 1px solid #ced4da;
}

form[class*="webform"] fieldset[class*="webform-type-fieldset"] > .fieldset-wrapper {
  padding: 0.5em 1.5em;
}

/* oops again -- except do not apply to radios and checkboxes, which are also fieldsets */

form[class*="webform"] fieldset[class*="radios"], form[class*="webform"] fieldset[class*="checkboxes"] {
  border: none;
  padding: 0px;
}

form[class*="webform"] fieldset[class*="radios"] legend, form[class*="webform"] fieldset[class*="checkboxes"] legend {
    font-size: 1rem;
    font-weight: bold;
    border: none;
    background-color: transparent;
    padding: 0px;
}

/* reduce space between checkboxes */

form[class*="webform"] .form-check.mb-3 {
  margin-bottom: 0.25rem !important;
}

/* help suffix */
.field-suffix.input-group-text {
    display: flex;
    align-items: center;
    padding: 0.375rem 0.75rem;
    font-size: 1rem;
    font-weight: normal;
    line-height: 1.5;
    color: #343a40;
    text-align: center;
    white-space: nowrap;
    background-color: #e9ecef;
    border: 1px solid #ced4da;
    border-radius: 0px;
    border-top-right-radius: 0.375rem;
    border-bottom-right-radius: 0.375rem;
    align-content: center;
    flex-direction: row;
    flex-grow: 1;
    height: 100%;
}

.form-check-input, .form-textarea, .form-type-textfield input, .form-date, .form-email, .form-tel {
  border-color: #acacac;
}