/* @import url('http://example.com/example_style.css'); */

/*****************************************************************************/
/*  CSS @imports must be at the top of the file                              */
/*  Add them above this section                                              */
/*                                                                           */
/*                 NOTES: May 2024 UPDATES:                                  */
/*  - For fully responsive accessibility that responds to user-defined       */
/*      font sizes, dimensions are now primarily in REM.                     */
/*  - Exceptions are some container elements and left and right margins.     */
/*  - "PROD" marks previous values on production.                            */
/*  - Also added hyphenation to justified text to suppress                   */
/*      white-space "rivers"                                                 */
/*                                                                           */
/*****************************************************************************/
  

/**********************************************/
/*  Basic styles                              */
/**********************************************/

html {
  /* Scroll Animation Contact-Us */
  scroll-behavior: smooth;
  
  /* Size 100% here to support accessibility, letting users set their default font size
      Other font sizes are set relative to this */
  font-size:100%;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}

body, p, div, li, td {
  font-family: montserrat, sans-serif;
  color:#333333;
  word-break:manual;  /* To hyphenate at soft hyphens inserted in the text */
}

/**********************************************/
/* Bulleted lists on home page. 
/* From HubSpot widget that does not allow adding a class.
/**********************************************/

li.list__item {
  padding:0;
  margin-left:0;
  margin-right:0;
}

/* Fix for bulleted lists. */
div.list__content div, div.list__content p {
  font-size: 1rem; 
  -webkit-text-size-adjust:auto;
  text-size-adjust:auto;
}


/*****  Note: Might not need these  *****/
div.row-fluid-wrapper {
  font-size:1rem;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100% !important;
}

div.hs_cos_wrapper ul li div div {
  -webkit-text-size-adjust:100%;
  text-size-adjust:100% !important;
}
/*****  Note: Might not need these  *****/


.list__icon {
  margin-right:14px; /* (Prod was 1rem. Matches width of icon. Preserves space at large font sizes. */
}


h2 {
  text-align: center; 
}

h2.light {
  font-weight:400;
}

/*  Basic margins for headings. Small screens have smaller values.  */
h1, h2 {
  margin:0 0 1rem;
}

h3, h4, h5 {
  margin:0 0 0.5rem;
}

/* DF name in address block Also see address styles. */
.digital-foundry {
  /* PROD font-size:21px; */
  font-size: 1.3125rem;
  color:#333333;
}

ul {
  margin-top:0rem;
  margin-bottom:0rem;
}

li {
  margin-top:0rem;
  margin-bottom:0rem;
}

ul.list {
  margin-top:0rem;
  margin-bottom:1rem;
}
ul.list li {
  margin-top:0rem;
  margin-bottom:0rem;
}


/*****************************************/
/* Home & Careers pages banners & blocks */
/*****************************************/

/* Text on translucent bar over background image */
.banner {
  height: auto; 
  width: 100%; 
  text-align: center; 
  background-color: rgba(0,0,0,0.5);
  /* PROD padding: 40px 0px 0px 0px;  Added left & right. */
  padding: 2.5em 1em 0px;
}

div.banner-content-narrow {
  /* Keep px for margin/padding */
  padding-left: 60px; 
  padding-right: 60px;
  padding-bottom: 30px;
  margin-bottom: 20px;
}

h1.hero-regular {
  color:white;
  font-weight: normal;
  text-align: center;
  text-shadow: none;  
}

div.banner h2, div.banner-content h2, div.banner-content-narrow h2 {
  color:#ffffff;
  text-shadow: 0rem 0rem 0.5rem #000000;
}

/* Unbordered content blocks */
div.homepage-block {
  margin-top:1.875rem; 
  text-align: center;
}

/* Color fix for form title */
h3.form-title {
  color:#333333 !important;  /* Overwrite the color from the HS widget */ 
}


/*****************************************/
/*                                       */ 
/*  LARGE Screens. 526 pixels and larger */
/*                                       */ 
/*****************************************/

@media screen and (min-width: 526px) {

h1 {
  font-family: montserrat, sans-serif;
  color: white;
  /* PROD font-size: 54px; */
  font-size: 3.375rem;
  font-weight:600;
  /* PROD  line-height:1.5;  */
  line-height:1.25;
  text-shadow: 0rem 0rem 0.5rem #000000;
}
  
/* Smaller title. e.g. "Work. Play. Evolve." over the still image in Inside DF. */
h1.banner-small {
  /* PROD font-size: 32px; */
  font-size: 2rem;
  font-weight:500;
  text-align: center;
}

/* Dark page title without shadow. e.g. on Contact Us. */
h1.no-shadow {
  color: #333333;
  text-align: center;
  text-shadow: none;
}

/* Note: some H2s are white */
h2 {
  font-family: montserrat, sans-serif;
  color: #333333;
  /* PROD font-size: 36px; */
  font-size: 2.25rem;
  font-weight:600;
  line-height:1.25;
}
  
/* Added for consistency */
h2.card-title {
  font-size:2.25rem;
}

/* 'Subtitle' on home page */
/* PROD Was using multiple H-1 tags. Changed the second line on the page to H-2 as here. */
h2.banner-small {
  /* PROD font-size: 32px; */
  font-size: 2rem;
  font-weight:500;
  text-align: center;
}

h3 {
  font-family: montserrat, sans-serif;
  color: #333333;
  /* PROD font-size: 32px;  */
  font-size: 2rem;
  font-weight:400;  /* 400 is normal */
}
  
h3.services {
  font-size:1.3125rem;
}

/* Headings 4 & 5 are the same size & weight but 4 is white & 5 is standard color */
h4 {
  font-family: montserrat, sans-serif;
  color: white;
  font-weight:400;
  /* PROD font-size:21px; */
  font-size: 1.75rem;
}

h5 {
  font-family: montserrat, sans-serif;
  color:#333333;
  font-weight:normal;
  /* PROD font-size:21px; */
  font-size: 1.75rem;
}

/* NOTE: Don't think we use H-6 */
h6 {
  /* PROD font-size:18px; */
  font-size: 1.125rem;
  font-weight:normal;
}
  
div.banner-content {
  padding-left: 2.5rem; 
  padding-right: 2.5rem;
  padding-bottom: 1.875rem;
  margin-bottom: 1.25rem;
}

.card-header {
  /* PROD font-size:14px; */
  font-size: 0.875rem;
  text-transform: uppercase; 
  /* letter-spacing: 3px; (on 14px font) */
  letter-spacing:  0.21rem;
  text-align: left; 
  color: #333333; 
  margin-bottom:0.5rem;
}
  
.card-title {
  /* PROD font-size:30px; */
  font-size: 1.875rem;
  text-align: left; 
  color: #333333;
  font-weight: 600;
  line-height:1.3;
  margin-bottom:0.5rem;
}
  
.card-body {
  /* PROD font-size:18px; */
  font-size: 1.125rem;
  line-height: 1.4; 
  text-align: justify;
  hyphens: auto;
}
  
p.justified, div.justified {
  text-align: justify;
  hyphens: auto;
}
  
/* Fix for bulleted lists built in the widget */
div.list__content div, div.list__content p {
  font-size: 1.125rem;
  -webkit-text-size-adjust:113%;
  text-size-adjust:113%;
}
  
.accordion__summary {
  /* PROD font-size:21px; */
  font-size: 1.5rem;
}
  
.accordion__content {
  font-size: 1.125rem;
} 

.positions-list div {
  font-size:1.5em;
  line-height:1.3;
  margin-bottom:0.75rem;
}
  
/* Form title, Home & Contact Us */
.form-title {
  font-size:2rem;
}
    
/* Form labels */
form label {
  font-size:1rem;
}  

/* Form input text */
input.hs-input, textarea.hs-input {
  font-size:1rem !important;
}
}

/*****************************************/
/*                                       */
/*  SMALL Screens. From 376 to 526px.    */
/*                                       */
/*****************************************/
@media screen and (max-width: 525px) {
  
h1 {
  /* PROD font-size: 40px; */
  font-size: 2.7em;
  font-weight:600;
  line-height:1.25;
  /* PROD text-shadow: 0px 0px 8px #000000;  */
  text-shadow:0rem 0rem 0.1875rem #000000;
}
  
/* Dark page title without shadow. e.g. on Contact Us. */
h1.no-shadow {
  color: #333333;
  text-align: center;
  text-shadow: none;
}
  
/* Smaller title. e.g. over the still image in Inside DF. */
h1.banner-small {
  /* PROD font-size:32px; */
  font-size: 1.875rem;
  text-align: center;
  font-weight: 500;
}
  
h2 {
  /* PROD font-size: 29px; */
  font-size: 1.8125rem;
  font-weight:500;
  line-height:1.25;
}
  
/* For home subtitle */
h2.banner-small {
  font-size: 1.75rem;
  text-align: center;
  font-weight: 500;
}
  
/* Added for consistency */
h2.card-title {
  font-size:1.8125rem;
}
  
div.careers-box h2 {
  /* PROD font-size: 29px; */
  font-size: 1.8125em;
}
  
h3 {
  /* PROD font-size: 26px; */
  font-size: 1.625em;
  font-weight:400;  /* 400 is normal */
}

h4 {
  /* PROD font-size:17px; */
  font-size: 1.375em;
  font-weight:normal;
}

h5 {
  /* PROD font-size:17px; */
  font-size: 1.375em;
  font-weight:normal;
}

/* NOTE: Don't think we use H-6 */
h6 {
  /* PROD font-size:18px; */
  font-size:1rem;
  font-weight:normal;
}
  
div.banner-content {
  padding-left: 1.875rem; 
  padding-right: 1.875rem;
  padding-bottom: 1.875rem;
  margin-bottom: 1.25rem;
}
  
div.banner-content-narrow {
  padding-left:40px; 
  padding-right:40px;
}
  
/* Margin for content boxes in mobile */
div.homepage-box {
  margin-left:24px;
  margin-right:24px;
}

.card-header { 
  /* PROD font-size: 10px;  Upsized up to 14 */
  font-size: 0.875em;  
  text-transform: uppercase; 
  /* letter-spacing: 3px;  */
  letter-spacing: 0.21rem;
  text-align: left; 
  color: #333333;   
  margin-bottom:0.5rem;
}
  
.card-title {
  /* font-size: 22px; */
  font-size: 1.375em;
  text-align: left; 
  color: #333333;
  font-weight: 600;
  line-height:1.3;
  margin-bottom:0.5rem;
}
  
.card-body {
  /* font-size: 13px; Upsize to 16 */
  font-size: 1rem;
  line-height: 1.4; 
  text-align: justify;
  hyphens: auto;
}  
  
/*  Fix for default bulleted list */
div.list__content div, div.list__content p {
  font-size: 1rem;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}
  
.accordion__summary {
  /* PROD font-size:16px; */
  font-size: 1.25rem;
}
  
.accordion__content {
  font-size: 1rem;
} 
  
.positions-list div {
  font-size:1.25em;
  line-height:1.3;
  margin-bottom:0.65rem;
}
  
/* Contact Us form title */
.form-title {
  font-size:1.625rem;
}
    
/* Form labels */
form label {
  font-size:1rem;
}
  
/* Form input text */
input.hs-input, textarea.hs-input {
  font-size:1rem !important;
}
}

/**********************************************/
/*                                            */
/*  SMALLER Screen. From 351 to 375 pixels.   */
/*                                            */
/**********************************************/
@media screen and (max-width: 375px) {
  
h1, h2 {
  margin:0 0 0.5rem;
}

h3, h4, h5 {
  margin:0 0 0.25rem;
}
  
h1 {
  /* PROD font-size:36px; */
  font-size: 2.25rem;
  font-weight:500;
  line-height:1.25;
  /* PROD text-shadow: 0px 0px 8px #000000;  */
  text-shadow:0rem 0rem 0.125rem #000000;
}
  
/* Dark page title without shadow. e.g. on Contact Us. */
h1.no-shadow {
  color: #333333;
  text-align: center;
  text-shadow: none;
}

/* Smaller title. e.g. over the still image in Inside DF. */  
h1.banner-small {
  /* PROD font-size:32px; */
  font-size: 1.75rem;
  text-align: center; 
  font-weight: 400;
}
  
h2 {
  /* PROD font-size:26px; */
  font-size: 1.625rem;
  font-weight:500;
  line-height:1.25;
}
  
/* For home subtitle */
h2.banner-small {
  font-size:1.5rem;
  text-align: center;
  font-weight: 500;
}
  
/* Added for consistency */
h2.card-title {
  font-size:1.625rem;
}

h3 {
  /* PROD font-size:23px; */
  font-size: 1.4375rem;
  font-weight:400;
}
  
h4 {
  /* PROD font-size:15px; */
  font-size:1.25rem;
  font-weight:400;  
}
  
h5 {
  /* PROD font-size:15px; */
  font-size:1.25rem;
  font-weight:400; 
}
  
/* NOTE: Don't think we use H-6 */
h6 {
  /* PROD font-size:18px; */
  font-size:0.875rem;
  font-weight:normal;
}
  
div.banner-content {
  padding-left: 1.875rem; 
  padding-right: 1.875rem;
  padding-bottom: 1.875rem;
  margin-bottom: 1.25rem;
}

.card-header {
  /* PROD font-size:9px; Upsized */
  font-size: 0.8125rem;
  text-transform: uppercase; 
  /* letter-spacing: 3px; */ 
  letter-spacing: 0.21rem
  text-align: left; 
  color: #333333; 
  margin-bottom:0.5rem;
}
  
.card-title {
  /* PROD font-size:20px; */
  font-size: 1.25rem;
  text-align: left; 
  color: #333333;
  font-weight: 600;
  line-height:1.3;
  margin-bottom:0.3125rem;
}
  
.card-body {
  /* PROD font-size:12px; Upsized to 14 */
  font-size: 1rem;
  line-height: 1.4; 
  text-align: justify;
  hyphens: auto;
}  

/* Fix for default bulleted list   */
div.list__content div, div.list__content p {
  font-size: 1rem;
  -webkit-text-size-adjust:120%;
  text-size-adjust:120%;
}
  
.accordion__summary {
  /* PROD font-size:14px; Upsize to 16 */
  font-size: 1.25rem;
}
  
.accordion__content {
  font-size: 1rem;
} 
  
.positions-list div {
  font-size:1.125em;
  line-height:1.3;
  margin-bottom:0.6rem;
}
  
/* Contact Us form title */
.form-title {
  font-size:1.4375rem;
}
    
/* Form labels */
form label {
  font-size:0.9375rem;
}
  
/* Form input text */
input.hs-input, textarea.hs-input {
  font-size:0.9375rem !important;
}
}

/*****************************************/
/*                                       */
/*  TINY Screen. From 301 to 350 pixels. */
/*                                       */
/*****************************************/
@media screen and (max-width: 350px) {
  
h1, h2 {
  margin:0 0 0.375rem;
}

h3, h4, h5 {
  margin:0 0 0.125rem;
}
  
h1 {
  /* PROD font-size:32px; */
  font-size: 1.75rem;
  font-weight:500;
  line-height:1.25;
   /* PROD Removed: text-shadow: 0px 0px 8px #000000;  */
  text-shadow:none;
}
  
/* Dark page title without shadow. e.g. on Contact Us. */
h1.no-shadow {
  color: #333333;
  text-align: center;
  text-shadow: none;
}

/* Smaller title. e.g. over the still image in Inside DF. */  
h1.banner-small {
  /* PROD font-size:32px; */
  font-size:1.5rem;
  font-weight:400;
  text-align: center;
}
  
h2 {
  /* PROD font-size:23px; */
  font-size: 1.4375rem;
  font-weight:500;
  line-height:1.25;
}
  
/* For home subtitle */
h2.banner-small {
  font-size:1.25rem;
  text-align: center;
  font-weight: 500;
}
  
/* Added for consistency */
h2.card-title {
  font-size:1.4375rem;
}
  
h3 {
  /* PROD font-size:21px; */
  font-size: 1.3125rem;
  font-weight:400;
}
  
h4 {
  /* PROD font-size:14px; */
  font-size:1.125rem;
  font-weight:400;  /* 400 is normal */
}
  
h5 {
  /* PROD font-size:14px; */
  font-size:1.125rem;
  font-weight:400;
}
  
/* NOTE: Don't think we use H-6 */
h6 {
  font-size:0.875rem;
  font-weight:normal;
}
  
div.banner-content {
  padding-left: 1.5625rem;
  padding-right: 1.5625rem;
  padding-bottom: 1.875rem;;
  margin-bottom: 1.25rem;
}
  
.card-header {
  /* PROD font-size:9px; Upsized */
  font-size: 0.75rem;
  text-transform: uppercase; 
  /* PROD letter-spacing: 3px; */ 
  letter-spacing: 0.21rem
  text-align: left; 
  color: #333333; 
  margin-bottom:0.375rem;;
}
  
.card-title {
  /* PROD font-size:20px; */
  font-size: 1.25rem;
  text-align: left; 
  color: #333333;
  font-weight: 600;
  line-height:1.2;
  margin-bottom:0.3125rem;
}
  
.card-body {
  /* PROD font-size: 12px; Upsize to 14 */
  font-size: 1rem;
  line-height: 1.4; 
  text-align: justify;
  hyphens: auto;
}  

/* Fix for default bulleted list */
div.list__content div, div.list__content p {
  font-size: 1rem;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}
  
.accordion__summary {
  /* PROD font-size:13px; Upsize to 16 */
  font-size:1.125rem;
}
  
.accordion__content {
  font-size: 1rem;
} 
  
.positions-list div {
  font-size:1.0625em;
  line-height:1.3;
  margin-bottom:0.6rem;
}
  
/* Contact Us form title */
.form-title {
  font-size:1.3125rem;
}
    
/* Form labels */
form label {
  font-size:0.875rem;
}
  
/* Form input text */
input.hs-input, textarea.hs-input {
  font-size:0.875rem !important;
}
}

/*********************************************/
/*                                           */
/*  TINIER. Smallest: Less than 301 pixels.  */
/*                                           */
/*********************************************/
@media screen and (max-width: 300px) {
  
h1, h2 {
  margin:0 0 0.375rem;
}

h3, h4, h5 {
  margin:0 0 0.125rem;
}  
  
h1 {
  /* PROD font-size:26px; */
  font-size: 1.5rem;
  font-weight:500;
  line-height:1.25;
  /* PROD Removed: text-shadow: 0px 0px 8px #000000;  */
  text-shadow:none;
}
  
/* Dark page title without shadow. e.g. on Contact Us. */
h1.no-shadow {
  color: #333333;
  text-align: center;
  text-shadow: none;
}

/* Smaller title. e.g. over the still image in Inside DF. */  
h1.banner-small {
  /* PROD font-size:26px; */
  font-size:1.375rem;
  font-weight:400;
  text-align: center;
}
  
h2 {
  /* PROD font-size:21px; */
  font-size: 1.3125rem;
  font-weight:500;
  line-height:1.25
}
  
/* For home subtitle */
h2.banner-small {
  font-size: 1.125rem;
  text-align: center;
  font-weight: 500;
}
  
/* Added for consistency */
h2.card-title {
  font-size:1.3125rem;
}
  
h3 {
  /* PROD font-size:19px; */
  font-size: 1.1875rem;
  font-weight:400;
}
  
h4 {
  /* PROD font-size:13px; Upsize to 14 */
  font-size:1rem;
  font-weight:400;
}
  
h5 {
  /* PROD font-size:13px; */
  font-size:1rem;
  font-weight:400;
}
  
/* NOTE: Don't think we use H-6 */
h6 {
  /* PROD font-size:18px; */
  font-size:0.875rem;
  font-weight:normal;
}
 
div.banner-content {
  padding-left: 1.5625rem; 
  padding-right: 1.5625rem;
  padding-bottom: 1.875rem;
  margin-bottom: 1.25rem;
}
  
.card-header {
  /* PROD font-size:9px; Upsized */
  font-size: 0.75rem;
  text-transform: uppercase; 
  /* letter-spacing: 3px; */ 
  letter-spacing: 0.21rem
  text-align: left; 
  color: #333333; 
  margin-bottom:0.4375rem;
}
  
.card-title {
  /* PROD font-size:20px; */
  font-size: 1.25rem;
  text-align: left; 
  color: #333333;
  font-weight: 600;
  line-height:1.3;
  margin-bottom:0.3125rem;
}
  
.card-body {
  /* PROD font-size:12px; Upsize to 14 */
  font-size: 0.875rem;
  line-height: 1.3; 
  text-align: justify;
  hyphens: auto;
}  
  
/* Fix for default bulleted list */
div.list__content div, div.list__content p {
  font-size: 0.875rem;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
} 
  
.accordion__summary {
  /* PROD font-size:10px; Upsize to 14 */
  font-size: 1.125rem;
}
  
.accordion__content {
  font-size:0.875rem;
} 
  
.positions-list div {
  font-size:1em;
  line-height:1.3;
  margin-bottom:0.5rem;
}
  
/* Contact Us form title */
.form-title {
  font-size:1.1875rem;
}
    
/* Form labels */
form label {
  font-size:0.875rem;
}
  
/* Form input text */
input.hs-input, textarea.hs-input {
  font-size:0.875rem !important;
}
}

/*****************************************/
/* Links                                 */
/*****************************************/

/* Top menu text */
a.header__menu-link {
  font-size:1.125rem !important;
  /* Overrides the HubSpot code so it can be enlarged by the user */
}

/* General links. Plain with underline on hover. 
 * e.g. CONTACT US map link.
*/
a {
  text-decoration:none;  
}
a:hover {
  text-decoration:underline;  
}

/* Address links & DF - color */
.address, .address p, .address a, .address p a {
  color:#333333;
}

/* Obsolete CAREERS links 
 * resumator-job-link & resumator-jobs-text are the current classes.
 * Approximated with #d3
*/

a.resumator-job-link, a.resumator-jobs-text {
  color:white;
  text-decoration:none;  
}
div.resumator-jobs-text a.resumator-job-link:hover {
  color:#d3d3d3;
  text-decoration:none;  
}


/**************************************************/
/* Bordered Text Boxes on Home and Careers pages  */
/**************************************************/
div.careers-box {
  border:0; 
  border-radius: 16px; 
  box-shadow: 0rem 0rem 1.25rem rgba(0, 0, 0, 0.15); 
  padding-top:16px;
  margin-top: 0; 
  margin-bottom:30px;
  height: fit-content(stretch); 
  min-height: 325px; 
  text-align: center;
}
div.careers-box h2 {
  /* PROD font-size:32px; */
  font-size: 2rem;
  font-style: regular; 
  font-weight: normal;
}
div.careers-box div.homepage-box-content {
  padding: 16px 16px 16px 16px;
}

div.homepage-box {
  padding: 16px 16px 16px 16px;
  margin-bottom:30px;
  border-radius: 16px; 
  box-shadow: 0rem 0rem 1.25rem rgba(0, 0, 0, 0.15); 
  min-height: 450px; 
  height: fit-content(stretch);
}  

div.homepage-box-content {
  /* PROD font-size:21px;  */
  font-size: 1.3125rem;
}
div.homepage-box h3 {
  text-align:center;
}


/* Titles on expandable accordion sections. Note DOUBLE UNDERSCORES in HubSpot class name.  */
/* Margin & padding are added in the Title section for the items in HubSpot.                */
.accordion__summary {
  margin-bottom: 0rem;
  padding-bottom: 0rem;
}

/* Careers full list */
div.positions-list {
  line-height:1.3;
  color:#333333;
  /* PROD margin-bottom:30px; */
  margin-bottom:1.875rem;
}

h4.position {
  font-weight:500;
  color:#333333;
  margin-bottom:0.75rem;
}

/* Note: OK for all screen sizes. Phrase in hero banner under the H-1. e.g. on home page.   */
/* Update 07/2023: Not using bold or shadow on home page.                                   */

.header-content-light {
  font-family: montserrat, sans-serif;
  color: white;
  /* PROD font-size:21px; */
  font-size: 1.3125rem;
  font-weight:normal;
  text-shadow: 0rem 0rem 0.5rem #000000;
}

.header-content-dark {
  font-family: montserrat, sans-serif;
  color:#333333;
  /* PROD font-size:21px; */
  font-size: 1.3125rem;
  font-weight:normal;
}

div.directions-box {
  margin-bottom:1.875rem;
}

  
/*****************************************/
/* NavHeader                             */
/*****************************************/

.header__container {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 999;
}

#main-content {
  /* PROD margin-top:115.594px;   */
  margin-top:5rem;
  max-width: 1580px;
  margin-left: auto;
  margin-right: auto;
}

/************* Allow line break (wrap) in the HubSpot hover text on Inside DF page images *************/
.hs-image__grid__item__overlay__content--fit {
  white-space: wrap !important;
}

/* Close (X) button in image carousel */
/* Prod font is 24px, which seems very large on small screens */
button.hs-image__grid__lightbox__button--close {
  position: absolute;
  right:0px;
  top:0px;
  font-size:20px;
  width:32px !important;
  height:32px !important;
  
  color:white;
  background-color: rgba(0,0,0, 0.5);
}

/* Hover state */
button.hs-image__grid__lightbox__button--close:hover {
  border:none;
  background-color: rgba(0,0,0, 0.6);
}

/*******************************************************/
/* Form on home and Contact pages.                     */
/* Reduced top padding (trapped white space) 45 to 0.   */
/*******************************************************/
form {
  padding:0 45px 45px 45px;
}