
/*---------------------  Typography  ---------------------*/

@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@100;200;300;400;500;600;700;800;900&display=swap');

h1, h1 a {
  font-size: 3rem;
  color: white;
  font-family: "Roboto", sans-serif;
  font-weight: 500;
}

.view-banner .views-field-title h1,
.view-banner  .views-field-nothing h1 {
  font-weight: 200;
}

h2, h2 a {
  font-size: 2.5rem;
  color: #005498;
  font-family: "Roboto", sans-serif;
  font-weight: 500;
}

h3, h3 a {
  color: #005498;
  font-family: "Roboto", sans-serif;
  font-weight: 600;
  font-size: 2.2rem;
}

h4, h4 a {
  color: #005498;
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  font-size: 1.3rem;
}

h5, h5 a {
  color: black;
  font-family: "Roboto", sans-serif;
  font-weight: 700;
  font-size: 1.3rem;
}

h6, h6 a {
  color: #005498;
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  font-size: 1.2rem;
}

a {
  text-decoration: none;
  color: #005498;
  font-family: "Roboto", sans-serif;
  position: relative;
}
a:hover {
  color: #05233C;
}
h1 a::before,
h2 a::before,
h3 a::before,
h4 a::before,
h5 a::before,
h6 a::before,
p a::before,
span a::before {
  content: '';
  position: absolute;
  width: 100%;
  height: 0.5px;
  background: currentColor;
  top: 100%;
  left: 0;
  pointer-events: none;
  transform-origin: 50% 100%;
  transition: clip-path 0.3s, transform 0.3s cubic-bezier(0.2, 1, 0.8, 1);
  clip-path: polygon(0% 0%, 0% 100%, 0 100%, 0 0, 100% 0, 100% 100%, 0 100%, 0 100%, 100% 100%, 100% 0%);
}


h1 a:hover::before,
h2 a:hover::before,
h3 a:hover::before,
h4 a:hover::before,
h5 a:hover::before,
h6 a:hover::before,
p a:hover::before,
span a:hover::before {
  transform: translate3d(0, 2px, 0) scale3d(1.08, 3, 1);
    clip-path: polygon(0% 0%, 0% 100%, 50% 100%, 50% 0, 50% 0, 50% 100%, 50% 100%, 0 100%, 100% 100%, 100% 0%);
}
p, div, span, ul, li {
  font-family: "Roboto", sans-serif;
    font-weight: 300;
}

#block-jsquared-subtheme-views-block-banner-block-4 h4 {
  color: #005498;
  font-family: "Roboto", sans-serif;
  font-size: 1.3rem;
  font-weight: 900;
} 

.blue-btn a::before, 
.white-btn a::before,
.media a::before {
  content: none;
}
.blue-btn a:hover::before,
.white-btn a:hover::before,
.media a:hover::before {
  transform: none;
  clip-path: none;
}


/* --------------------- Header/Menu --------------------- */

.page-node-type-capability .region-banner {
  margin-top: 0;
}
.page-node-type-capability .navbar {
  background: linear-gradient(360deg, rgba(0,84,152,1) 45%, rgba(120,120,120,0) 45%);
}

/* Provide a positioning context for mobile accordion */
#superfish-main {
  position: relative;
  z-index: 999;
}

/* --------------------- Superfish Core --------------------- */

#superfish-main ul.sf-multicolumn {
  background-color: white;
  z-index: 999;
}

#superfish-main li span,
nav .navbar-nav li span.nav-link,
nav .navbar-nav li a.nav-link {
  color: #005498;
}

nav .navbar-nav li .nav-link.show {
  background: #00233C;
  color: white;
  cursor: pointer;
}

#superfish-main li span.menuparent {
  padding-right: 2.2em;
}

@media (max-width: 1200px) {
  #superfish-main-toggle {
    font-size: 2rem;
  }

  #superfish-main li span,
nav .navbar-nav li span.nav-link,
nav .navbar-nav li a.nav-link {
  font-size: 1.5rem;
}
}


/* Hover + active states */
nav .navbar-nav li span.nav-link:hover,
nav .navbar-nav li a.nav-link:hover,
nav .navbar-nav li .nav-link.show:hover,
nav .navbar-nav .nav-link.active,
nav .navbar-nav .dropdown-item.active,
nav .navbar-nav .dropdown-item:hover {
  color: #2aa0ff;
  cursor: pointer;
}

nav .navbar-nav .nav-item {
  margin: 0 10px;
}

/* --------------------- Menu Styling --------------------- */

#superfish-main li a:hover,
#superfish-main li span:hover,
ul.sf-menu li span:hover .sf-sub-indicator:after {
  color: #555;
  cursor: pointer;
}

ul.sf-menu .sf-sub-indicator:after {
  content: " " !important;
  background-image: url(/themes/custom/jsquared_subtheme/css/Images/drop-down-20.png);
  top: 0 !important;
  color: #00233C;
  background-size: contain;
  width: 15px;
  height: 15px;
  background-repeat: no-repeat;
}

#superfish-main li.menuparent ul {
  background: white !important;
  margin-top: 15px;
  padding: 15px;
  border-radius: 5px;
}

#superfish-main li.menuparent:nth-child(1) ul {
  width: calc(100% + 200px) !important;
}

#superfish-main li.menuparent:nth-child(4) ul {
  width: calc(100% + 400px) !important;
}

#superfish-main li.menuparent:nth-child(4) ul li.sf-multicolumn-wrapper,
#superfish-main li.menuparent:nth-child(4) ul li.sf-multicolumn-wrapper ol {
  width: 100% !important;
}

#superfish-main li.menuparent:nth-child(4) ul li.sf-multicolumn-wrapper ol li.menuparent {
  width: 50% !important;
}

#superfish-main li.menuparent:nth-child(4) ul li.sf-multicolumn-wrapper ol li.menuparent div {
  width: 100% !important;
}

#superfish-main .sf-description {
  display: block;
  color: black;
  font-size: 14px;
  letter-spacing: 0.4px;
  font-weight: 300;
  line-height: 1.2;
  padding-top: 7px;
  padding-bottom: 15px;
  border-bottom: 1px solid #ebedee;
}

#superfish-main .menuparent ul li span.nolink {
  font-size: 16px;
  font-weight: 500;
}

#superfish-main li a,
#superfish-main li span {
  font-weight: 500;
}

#superfish-main li span.sf-depth-2:hover {
  cursor: default;
}

#superfish-main .menuparent ul li.menuparent span.nolink {
  font-size: 16px;
  font-weight: 300;
  padding: 12px 15px 2px;
  text-transform: uppercase;
}

#superfish-main .menuparent ul li.menuparent ol li a {
  font-size: 16px;
  font-weight: 500;
  color: black;
}

#superfish-main li span.menuparent.sf-depth-2 {
  padding-bottom: 2px;
}

ul.sf-menu li.sf-depth-1 li.sf-depth-2 a {
  padding: 1em 0;
}

ul.sf-menu li.sf-depth-1:nth-child(4) li.sf-depth-2 a {
  padding: 12px 15px;
  font-size: 18px;
}

ul.sf-menu li.sf-depth-1:nth-child(4) ul li span.sf-depth-2.menuparent.nolink {
  font-size: 18px;
}

ul.sf-menu li.sf-depth-1:nth-child(4) ul li ul li.sf-depth-3 a.sf-depth-3 {
  font-size: 14px;
}

#superfish-main li.sf-depth-2 a.sf-depth-2 {
  color: black;
}

#superfish-main li.sf-depth-2 a.sf-depth-2:hover,
#superfish-main .menuparent ul li.menuparent ol li a:hover {
  color: #005498;
}

/* --------------------- Accordion Fixes --------------------- */

ul.sf-menu.sf-accordion.sf-expanded {
  position: absolute;
  left: 0;
  top: 100% !important;
  width: 100%;
  background: white;
  padding-top: 0;
  z-index: 999;
}


ul.sf-menu.sf-accordion.sf-expanded ul {
  position: relative;
  width: 100%;
}

ul.sf-menu.sf-accordion.sf-expanded ul li {
  background: #005498;
}

ul.sf-menu.sf-accordion.sf-expanded ul li span,
ul.sf-menu.sf-accordion.sf-expanded ul li a {
  text-align: left;
  color: white;
  width: 100%;
  margin: 0 auto;
  padding: 12px 15px;
  display: block;
}

ul.sf-menu.sf-accordion.sf-expanded ul li span span,
ul.sf-menu.sf-accordion.sf-expanded ul li a span {
  width: auto;
  margin: auto;
}

ul.sf-menu.sf-accordion.sf-expanded ul li span.sf-description {
  display: block;
  color: white;
  font-size: 12px;
  padding: 10px 0 0;
}

/* --------------------- Responsive Tweaks --------------------- */

@media screen and (max-width: 1200px) {
  #superfish-main {
    width: 100%;
  }

  #superfish-main li.menuparent ul,
  #superfish-main li.menuparent:nth-child(1) ul,
  #superfish-main li.menuparent:nth-child(4) ul {
    width: 100% !important;
    margin: 0 !important;
    padding: 0.5rem;
    box-sizing: border-box;
  }

  #superfish-main li.menuparent ul li,
  #superfish-main li.menuparent ul li.menuparent {
    width: 100% !important;
    display: block;
  }

  #superfish-main li.menuparent ul li.sf-multicolumn-wrapper {
    width: 100% !important;
    flex-direction: column;
  }
}

@media only screen and (max-width: 400px) {
  .tab-content {
    padding: 40px 10px;
  }

  .mobile-block .mobile-paragraph-3 img {
    transform: translate(0px, -70px);
  }

  ul.sf-menu.sf-accordion.sf-expanded ul li span,
  ul.sf-menu.sf-accordion.sf-expanded ul li a {
    padding: 12px 15px;
    width: 100%;
  }
}

/* --------------------- Mobile Toggle Animation --------------------- */

.sf-expanded .animated-icon1 span:nth-child(1) {
  top: 11px;
  transform: rotate(135deg);
}

.sf-expanded .animated-icon1 span:nth-child(2) {
  opacity: 0;
  left: -60px;
}

.sf-expanded .animated-icon1 span:nth-child(3) {
  top: 11px;
  transform: rotate(-135deg);
}

.first-button.sf-expanded {
  float: right;
}



/*---------------------  Button  ---------------------*/

.blue-btn {
  margin-top: 20px;
}
.arrow-icon,
.arrow-icon-heading,
.link-arrow-link {
  position: relative;
}
.arrow-icon a::after,
.arrow-icon-heading::after {
  content: url(/themes/custom/jsquared_subtheme/css/Images/arrow-icon.png);
  position: absolute;
  top: -5px;
}
.link-arrow-link a{
font-weight: 500;
}
.link-arrow-link a::after {
  content: "\2197";
  padding-left: 5px;
}


/*---------------------  Buttons  ---------------------
.blue-btn {
position: relative;
width: fit-content;
}
*/
.blue-btn a {
  color: #f9c041;
  padding: .5em 3em;
  border-radius: 100px;
 /* background: radial-gradient(circle, rgba(2,0,36,1) 0%, rgba(0,84,152,1) 35%, rgba(1,179,215,1) 100%);;*/
    background: #001643;
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  position: relative;
  background-size: 350% 100%;
  transition: all .2s ease-in-out;
    text-transform: uppercase;
    margin-top: .5em;
    font-weight: 600;
 }



.blue-btn-small a {
  font-size: 13px;
  padding: 5px 15px;
}


.blue-btn a:hover, .blue-btn a:focus, .blue-btn a:active {
  background-position: 100% 0;
  animation-name: flow;
  animation-duration: 500ms;
  animation-timing-function: linear;
  border: 1px solid #005498;
  /* -webkit-animation-name: hvr-ripple-out;
  animation-name: hvr-ripple-out;
  border: #012F54 solid 6px;
  border-radius: 20px;  */
}

.yellow-btn a {
  color: #001643;
  padding: .5em 3em;
  border-radius: 100px;
 /* background: radial-gradient(circle, rgba(2,0,36,1) 0%, rgba(0,84,152,1) 35%, rgba(1,179,215,1) 100%);;*/
    background: #f9c041;
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  position: relative;
  background-size: 350% 100%;
  transition: all .2s ease-in-out;
    text-transform: uppercase;
    margin-top: .5em;
    font-weight: 600;
 }



.yellow-btn-small a {
  font-size: 13px;
  padding: 5px 15px;
}


.yellow-btn a:hover, .yellow-btn a:focus, .yellow-btn a:active {
  background-position: 100% 0;
  animation-name: flow;
  animation-duration: 500ms;
  animation-timing-function: linear;
  border: 1px solid #005498;
  /* -webkit-animation-name: hvr-ripple-out;
  animation-name: hvr-ripple-out;
  border: #012F54 solid 6px;
  border-radius: 20px;  */
    background-color: #005498;
    text-decoration: none;
    color: #f9c041;
}
@keyframes flow {
  0% {
background-position: 0% 50%;
}
100% {
background-position: 100%;
}
}




.white-btn a {
  background: white;
  color: #005498;
  padding: 10px 35px;
  border-radius: 20px;
}

.transparent-btn a {
  background-color: transparent;
  padding: 10px 35px;
  border-radius: 20px;
  border: 1px solid white;
  color: white;
}

/*---------------------  Region  ---------------------*/

.navbar-brand img {
  height: auto;
  position: relative;
}
.navbar {
  background-color: transparent !important;
}
.region-nav-main {
  transform: translate(0px, -70%);
}






/*---------------------  Global grid styling  ---------------------*/


.fully-responsive-grid-500 .view-content {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(500px, 1fr));
    column-gap: 30px;
    row-gap: 30px;
  }

.fully-responsive-grid-fit-500 .view-content {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(500px, 1fr));
    column-gap: 30px;
    row-gap: 30px;
  }
  
.fully-responsive-grid-400 .view-content {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(400px, 1fr));
    column-gap: 30px;
    row-gap: 30px;
  }
  
.fully-responsive-grid-fit-400 .view-content {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
    column-gap: 30px;
    row-gap: 30px;
}

.fully-responsive-grid-fit-300 .view-content {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    column-gap: 30px;
    row-gap: 30px;
}

.fully-responsive-grid-300 .view-content {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    column-gap: 30px;
    row-gap: 30px;
}
  
.fully-responsive-grid-fit-200 .view-content {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  column-gap: 30px;
  row-gap: 30px;
}

.fully-responsive-grid-200 .view-content {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  column-gap: 30px;
  row-gap: 30px;
}

/*---------------------  Regions Style  ---------------------*/

.region-featured-bottom,
.region-sub-featured-bottom,
.region-content-top {
  max-width: 85%;
  margin: auto;
  padding: 70px 15px;
}
.region-content-top {
  padding: 0;
}
nav.navbar  {
  padding: 10px;
}

.region-featured,
.region-sub-featured,
.region-highlighted {
  padding-left: 3rem;
  padding-right: 3rem;
}

.region-sub-featured .block-views {
  width: 70%;
  margin: auto;
}
.region-banner {
  margin-top: -75px;
  position: relative;
  z-index: -1;
}
.page-node-type-industry .region-banner {
  position: inherit;
}
.region-breadcrumb {
  padding: 10px 30px 50px;
}

.footer-container {
  display: grid;
  grid-template-columns: 30% 15% 15% 15% 15%;
  column-gap: 30px;
  width: 95%;
  margin: auto;
    font-size: .8em;
}
footer {
  padding-bottom: 0;
}

footer.bg-secondary, .footer-bottom {
  background-color: #00233C!important;
}

.footer-bottom p span {
  font-size: 14px;
}
.footer-bottom p a {
  color: #2aa0ff;
}
.footer-bottom p a:hover {
  text-decoration: underline;
}
footer.footer-dark a:hover {
  color: #2aa0ff;
}

.region-footer-first,
.region-footer-second,
.region-footer-third,
.region-footer-fourth {
  margin-bottom: 20px;
}

.content-container .height-container {
  display: grid;
  column-gap: 50px;
  padding: 50px 100px;
  grid-template-columns: 30% 70%;
}

.region-content-bottom-left {
  background: rgba(0, 84, 152, 0.1);
  padding: 30px;
}
.region-content-bottom-right {
  padding: 40px 0;
    transform: translate(-10%, 0px);
}
.region-featured {
  background-color: #F0F0F0;
  padding: 40px;
  padding-bottom: 90px;
}


.footer-bottom {
  margin-top: auto;
  text-align: center;
  background: #f2f2f2;
  padding: 5px 0;
    font-size: .8em;
}
.footer-bottom p {
  margin-bottom: 0;
}


main {
  padding: 0 0 70px;
  width: 50%;
  margin: auto;
}

.page-node-type-page main,
.page-node-type-industry main {
  padding: 70px 0 70px;
}


.page-node-type-service main {
  padding: 70px 0 0;
}
.page-node-278 main,
.page-node-279 main {
  padding: 70px 0 0px;
}
.page-node-167 main {
  padding: 0px 0;
}
.region-content {
  padding: 0;
}
main .container{
  padding-left: 0 !important;
  padding-right: 0 !important;
}


.paragraph.paragraph--type--bp-columns .paragraph--type--bp-columns__2col,
.paragraph--type--bp-columns__1col,
.paragraph--type--bp-columns__3col  {
  padding-left: 0 !important;
}
.paragraph.paragraph--type--bp-columns-two-uneven.paragraph--style--25-75 .paragraph--type--bp-columns-two-uneven__2col-column1, 
.paragraph.paragraph--type--bp-columns-two-uneven.paragraph--style--25-75 .paragraph--type--bp-columns-two-uneven__2col-column2, 
.paragraph.paragraph--type--bp-columns-two-uneven.paragraph--style--33-66 .paragraph--type--bp-columns-two-uneven__2col-column1, 
.paragraph.paragraph--type--bp-columns-two-uneven.paragraph--style--33-66 .paragraph--type--bp-columns-two-uneven__2col-column2, 
.paragraph.paragraph--type--bp-columns-two-uneven.paragraph--style--66-33 .paragraph--type--bp-columns-two-uneven__2col-column1, 
.paragraph.paragraph--type--bp-columns-two-uneven.paragraph--style--66-33 .paragraph--type--bp-columns-two-uneven__2col-column2, 
.paragraph.paragraph--type--bp-columns-two-uneven.paragraph--style--75-25 .paragraph--type--bp-columns-two-uneven__2col-column1, 
.paragraph.paragraph--type--bp-columns-two-uneven.paragraph--style--75-25 .paragraph--type--bp-columns-two-uneven__2col-column2,
.paragraph.paragraph--width--full>.paragraph__column, .paragraph.paragraph--width--medium>.paragraph__column, 
.paragraph.paragraph--width--narrow>.paragraph__column, .paragraph.paragraph--width--tiny>.paragraph__column, 
.paragraph.paragraph--width--wide>.paragraph__column, .paragraph>.paragraph__column{
  padding-left: 0 !important;
  padding-right: 0  !important;
}

#block-jsquared-subtheme-contactwebform .paragraph--type--bp-columns-two-uneven__2col-column1,
#block-jsquared-subtheme-contactwebform .paragraph--type--bp-columns-two-uneven__2col-column2 {
  padding-left: 15px !important;
  padding-right: 15px !important;

}




.region-highlighted {
  padding: 40px 70px;
  margin-bottom: 80px;
}
.paragraph--id--549 .paragraph--type--bp-columns__2col:nth-child(2),
.paragraph--id--561 .paragraph--type--bp-columns__2col:nth-child(2) {
    border-left: 1px solid #00233C ;
    padding-left: 15px !important;
}

.paragraph.paragraph--type--bp-accordion .panel-heading button[aria-expanded=false].display:after {
  content: "+ expand";
  font-size: 18px;
  position: absolute;
  right: 50px;
  top: 0px;
  color:#005498;
}

.paragraph.paragraph--type--bp-accordion .panel-heading button[aria-expanded=true].display:after {
  content: "- close";
  font-size: 18px;
  position: absolute;
  right: 50px;
  top: 0px;
  color:#005498;
}

.paragraph.paragraph--type--bp-accordion .panel-heading button[aria-expanded=false].display,
.paragraph.paragraph--type--bp-accordion .panel-heading button[aria-expanded=true].display {
  position: relative;
}
.paragraph--id--706 .paragraph--type--bp-columns__3col {
  padding-right: 30px;
}

/*
.bullet-points-style div {
  background: rgba(42, 160, 255, 0.2);
  padding: 10px 10px 10px 80px;
  margin-bottom: 30px;
  position: relative;
}

.bullet-points-style div::before {
  width: 80px;
  height: 80px;
  content: " ";
  background-color: #00233C;
  display: block;
  position: absolute;
  left: -40px;
  transform: rotate(314deg);
  top: calc(50% - 45px);
  border-radius: 70px 70px 0 70px;
}
.bullet-points-style div::after {
  content: " ";
  width: 50px;
  height: 50px;
  background: white;
  display: block;
  position: absolute;
  border-radius: 50%;
  left: -25px;
  top: calc(50% - 30px);
}
*/

.bullet-points-style h4{
  font-size: 200%;
background: linear-gradient(45deg, #005498, #001643);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent; /* Hide the default text color */
  display: inline-block; /* Ensures background covers the full text */
}

/*---------------------  Responsiveness  ---------------------*/


@media only screen  and (max-width: 1500px) {
.content-container .height-container {
  padding: 50px;
}
}


@media only screen  and (max-width: 1200px) {
.capabilities-banner .view-content{
  width: 60%;
}
}

@media only screen  and (max-width: 1350px) {
.region-sub-featured .block-views {
  width: 90%;
}

}

@media only screen  and (max-width: 1200px) {
  .region-nav-main {
    transform: none;
    margin-top: -20px;
  }
  .footer-container {
    grid-template-columns: 30% 30% 30%;
    row-gap: 40px;
  }
  .navbar .region-nav-branding {
    position: relative;
  }
  header .navbar > .container {
    justify-content: space-between;
    max-width: 100%;
  }
  main {
    width: 70%;
  }
  .view-industries.view-display-id-block_2 {
    width: 100%;
  }
  .product-banner .views-row,.capabilities-banner .view-content {
    width: 70%;
  }
  .content-container .height-container {
    padding: 50px;
  }
  .region-sub-featured .block-views {
    width: 100%;
  }
  .navbar-brand img {
    z-index: 999;
  }
  .region-nav-main {
    margin-right: 20px;
  }
}

@media only screen  and (max-width: 990px) {
  main,.product-banner .views-row, .capabilities-banner .view-content {
    width: 90%;
  }
  .product-category .view-content  {
    display: block;
  }
  .product-category .view-content .views-row {
    margin-bottom: 50px;
  }
  .footer-container {
    grid-template-columns: 60% 30%;
  }
  .paragraph--id--554 .paragraph--type--bp-columns__2col {
    width: 100% !important;

  }
  .dna {
    margin: 0 15px;
  }
  .material {
    margin-top: 100px;
  }
  .content-container .height-container {
    display: block;
  }
  .region-content-bottom-right {
    transform: none;

  }
}

@media only screen  and (max-width: 900px) {

  .content-container .height-container {
    padding: 20px;
  }

  .paragraph.paragraph--type--bp-accordion .panel-heading button[aria-expanded=false].display:after {
    right: 0;
    top: -30px;
  }
  .paragraph.paragraph--type--bp-accordion .panel-heading button[aria-expanded=true].display:after {
    right: 0;
    top: -30px;
  }
 
}

@media only screen  and (max-width: 768px) { 
  .footer-container {
    grid-template-columns: 50% 40%;
  }
  main {
    width: 100%;
  }

.page-node-type-industry .region-content-bottom {
  width: 90%;
}
.product-banner .views-row, .capabilities-banner .view-content {
  width: 90%;
}
.product-banner .view-content {
  height: 550px;
}
.content-container .height-container {
  display: block;
}
.region-content-bottom-right {
  transform: none;
}
.paragraph--id--549 .paragraph--type--bp-columns__2col:nth-child(2), .paragraph--id--561 .paragraph--type--bp-columns__2col:nth-child(2) {
  border-left: none;
  padding-left: 0 !important;
}
.region-banner {
  margin-top: -50px;
      
} 
h2 {
  font-size: 2rem;
}
.region-featured, .region-sub-featured, .region-highlighted {
  padding-left: 15px;
  padding-right: 15px;
}
.page-node-type-page .view-banner .view-content h3 {
  font-size: 1.5rem;
}
#block-jsquared-subtheme-timelineblock {
  width: 100%;
}
.timeline-9 > .timeline-9-item > div {
  padding: 0px;
}
.timeline-9 > .timeline-9-item {
  align-items: flex-start;
}
.timeline-9 > .timeline-9-item > div:last-child {
  min-height: auto;
}
.view-partnership .view-content {
  grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
}
#block-jsquared-subtheme-contactwebform form {
  padding: 15px;
}
h3 a {
  font-size: 1.7rem;
}
.region-featured-bottom {
  padding: 30px 15px 70px;
}
.page-node-498.page-node-type-page main,
.page-node-499.page-node-type-page main {
  padding: 0;
}



}


@media only screen  and (max-width: 600px) { 
  .navbar-brand img {
    height: 100px;
  }
  #block-jsquared-subtheme-footerinfo img {
    float: none;
  }
  .footer-bottom p {
    width: 95%;
  }
  h1 {
    font-size: 2.5rem;
  }
  .capabilities-banner .views-row {
    padding: 0 0px;
}
.capabilities-banner .view-content {
  height: 500px;
}
.column-count-2 {
  column-count: 1;

}
.industry-product-view {
  padding: 20px 0;
}
.product-banner .view-content {
  height: 500px;
}
} 


@media only screen  and (max-width: 577px) { 
main .container {
  padding-left: 1rem !important;
  padding-right: 1rem !important;
}

h2 {
  font-size: 2rem;
}
.industry-banner video, #block-jsquared-subtheme-homevideobanner video {
  height: 600px;
}
.industry-banner .views-field-nothing {
  top: 250px;
}

.navbar-brand img {
  height: 90px;
}
.fully-responsive-grid-400 .view-content {
  display: block;
}
.fully-responsive-grid-400 .view-content .views-row {
  margin-bottom: 15px;
}
h3 {
  font-size: 1.8rem;
}
.page-node-type-page .view-banner .view-content {
  height: 600px;
}
.header-banner-front h1{
font-size: 2rem;
}
}


@media only screen  and (max-width: 500px) { 
.footer-container {
  grid-template-columns: 100%;
} 
.fully-responsive-grid-fit-400 .view-content {
  display: block;
}
.fully-responsive-grid-fit-400 .view-content .views-row {
  margin-bottom: 30px;
}
h3 {
  font-size: 1.5rem;
}
h4 {
  font-size: 1.1rem;
}
.product-banner .views-row h3 {
  font-size: 1.3rem;
}
}


/* --- Translate link colours --- */
.translate-link a:link,
.translate-link a:visited {
  color: #fff;
}

.translate-link a:active,
.translate-link a:hover {
  color: #2aa0ff;
}

/* --- Footer bottom region: 75% wide, line on top, flex row --- */
.region-footer-bottom {
  max-width: 75%;
  margin: 0 auto;
  border-top: 1px solid #fff;
  padding-top: 16px;              /* space under the line */
  display: flex;
  justify-content: space-between; /* CAGE on left, EN/FR on right */
  align-items: flex-start;        /* top-align CAGE + EN/FR */
  column-gap: 2rem;
  flex-wrap: wrap;                /* stack nicely on small screens */
}

/* --- CAGE code block --- */
#block-jsquared-subtheme-footercagecode {
  flex: 1 1 auto;                 /* take remaining width */
  margin-bottom: 2em;
}

#block-jsquared-subtheme-footercagecode .field--name-body {
  margin: 0;
  text-align: center;             /* keep CAGE text centred in its area */
}

#block-jsquared-subtheme-footercagecode .field--name-body p {
  color: #fff;
  margin: 0;                      /* tighten vertical spacing */
}

/* --- GTranslate block (EN / FR) --- */
#block-jsquared-subtheme-gtranslate {
  flex: 0 0 auto;                 /* only as wide as its content */
}

#block-jsquared-subtheme-gtranslate .gtranslate_wrapper {
  text-align: right;
  white-space: nowrap;            /* keep EN FR on one line */
  margin-top: 0;                  /* align vertically with CAGE text */
}

#block-jsquared-subtheme-gtranslate .gtranslate_wrapper a {
  margin-left: 0.5rem;
  color: #fff;
  text-decoration: none;
}

#block-jsquared-subtheme-gtranslate .gtranslate_wrapper a:hover {
  text-decoration: underline;
}

/* --- Generic footer-bottom paragraph colour (safe to keep) --- */
.footer-bottom p {
  color: #fff;
}