/* MODES */

  :root {
    font-size:var(--font-size-normal);
    --color-background: white;
    --color-text: var(--color-blue);
    --color-blue: rgb(53, 97, 122); /* 35617A */
    --color-blue-dark: rgb(27, 67, 81); /* 1b4351 */
    --color-yellow: #daa21c;
    /*--color-yyy: rgb(239, 223, 37); /* #efdf25 */
    /*--color-zzz: rgb(239, 223, 37); /* #efdf25 */
    /*--color-primary:  var(--color-zzz); */
    /*--color-secondary: var(--color-xxx); */
    --color-highlight: var(--color-yellow);
    --color-gray: rgb(225, 229, 232); /* #E1E5E8 */
    /*--color-gray-dark: rgb(38, 38, 38); */ /* #262626 */
    /*--color-gray-light: rgb(240, 240, 240); */ /* #f0f0f0 */
    --font-paragraph: neue-haas-grotesk-display, serif;
    --font-heading: utopia-std-display, serif;
    --font-special: futura-pt, sans-serif;
    /*--font-size-huge: 10rem;*/
    /*--font-size-xxxlarge: 7rem;*/
    --font-size-xxlarge: 3.5rem;
    /*--font-size-xlarge: 2.3rem;*/
    --font-size-large: 2.5rem;

    --font-size-normal: 1rem;
    /*--font-size-small: .9rem;*/
    /*--font-size-xsmall: .75rem;*/
    /*--font-size-xxsmall: .65rem;*/
    --spacing-default: var(--spacing-small);
    /*--header-height: 25vw;*/
    --footer-height: 22.5vw;
    --element-p-margin-top: .5em;
    --element-p-margin-bottom: .5em;

    --spacing-xsmall: 1.5vw;
    --spacing-small: 3vw;
    --spacing-medium: 6vw;
    --spacing-large: 10vw;
    --spacing-xlarge: 13vw;

  }

  @media (min-width: 1441px) { /* widescreen */
     :root {
      /*font-size: 18.7px;*/
      font-size: 1.35vw;
      /*--font-size-huge: 10rem;*/
      /*--font-size-xxxlarge: 7rem;*/
      --font-size-xxlarge: 2.5rem;
      --font-size-xlarge: 2.3rem;
      --font-size-large: 2.5rem;
      --font-size-normal: 1rem;
      /*--font-size-small: .9rem;*/
      /*--font-size-xsmall: .75rem;*/
      /*--font-size-xxsmall: .65rem;*/
    }
  }

  @media (min-width: 1025px) and (max-width: 1440px) { /* desktop */
     :root {
      font-size: 1.35vw;
    }
  }

  @media (min-width: 768px) and (max-width: 1024px) { /* tablet */
     :root {
      font-size: 1.35vw;
    }
  }

  @media (max-width:767px) { /* mobile */
    :root {
      font-size:16px;
      --font-size-xxlarge: 2.25rem;
      --font-size-xlarge: 1.75rem;
      --font-size-large: 2rem;
    }
    .has-x-large-font-size { font-size:1.5rem!important; }
  }

/* TYPOGRAPHY */

  sup { zoom:.75; }
  .has-heading-font-family { line-height:1.2; }
  .has-special-font-family { font-weight:100; }
  .wp-block-heading.has-xxxxxx-font-family { /*line-height:unset; letter-spacing:unset;*/ }
  .has-large-font-size { /*margin-top:unset!important;*/ }

/* BASIC */

  body { margin-top:0; }
  p { font-weight:100; line-height:1.4; letter-spacing:.05em; }
  h1, h2, h3 { /*line-height:unset;*/ }
  main { /*padding-top:var(--header-height);*/ }

  .Cta { /*width:unset; background-color:unset;*/ }
  .Cta button { /*padding:2em 4em; outline:.3vw solid var(--color-primary); outline-offset:-3vw; font-family:var(--font-special); background-color:white; color:black;*/ }
  .Cta:hover button { /*background-color:var(--color-primary)!important; color:white;*/ }
  .Cta::after { /*content:none;*/ }
  .Cta button::before { /*content:"+ ";*/ }
  .Cta .wp-block-button__link::before { /*content:"+ ";*/ }
  .Cta .wp-block-button a { /*padding:.75em 1em;*/ }

  main:not(#home-page) .Gutenberg > #intro { position:relative; z-index:1; margin-top:-4rem; }

/* HEADER */

  header {
    margin:calc(2vw + var(--wp-login-bar)) calc(var(--spacing-large) - 1rem) 2vw calc(var(--spacing-large) - 1rem)!important;
    width:80vw; /*height:7.5vw;*/ height:5vw; /*outline:2px solid white;*/
    background-color:var(--color-blue); color:white;
    font-family: var(--font-special); font-weight: bold; text-transform: none;
  }
  header .Logo { /*width:27.5%;*/ }
  header nav ul.Primary > li:hover > a > button { background-color:unset; }
  header nav .Left { /*font-family:var(--font-paragraph); font-size:1.2em; font-weight:700; color:var(--color-blue);*/ }
  header nav .Right { }
  header nav .Right ul.Primary > li { /*margin-left:1vw;*/ }
  header nav .Right ul.Primary > li > a > button { border-radius:.5em; background-color:white; }
  header nav .Right ul.Primary > li > a > button span { color:var(--color-blue); }
  header nav .Right ul.Primary > li:nth-of-type(1) { /*outline:1px solid gray; outline-offset:-1px;*/ }
  header nav .Right ul.Primary > li:nth-of-type(1) a { /*background-color:white; color:var(--color-blue);*/ }
  header nav .Right ul.Primary > li:nth-of-type(2) { /*margin-left:0;*/ }
  header nav .Right ul.Primary > li:nth-of-type(2) a { /*background-color:var(--color-red);*/ }
  header nav .Right ul.Primary > li > a > button span { }
  header nav .New { /*font-size:2em; color:var(--color-blue);*/ }
  header nav ul.Primary > li:hover > a > button { /*background-color:unset; color:revert; box-shadow: inset 0 -2px 0 0 rgba(0, 0, 0, 0.1);*/ }
  header nav ul.Primary > li.Active > a > button { background-color:unset; color:var(--color-highlight); }
  header nav .Right ul.Primary > li:hover > a > button { background-color:var(--color-highlight); }
  header nav .Right ul.Primary > li:hover > a > button span { color:white; }
  header nav .Right ul.Primary > li.Active > a > button { background-color:var(--color-highlight); }
  header nav .Right ul.Primary > li.Active > a > button span { color:white; }
  header.Stucco { height:5vw; }
  header.Stucco .Logo { /*width:15%;*/ }
  header.Stucco .Logo svg #type { /*display:none;*/ }

  header::before {
    content: ''; position: absolute; top:0; right: -2rem; left: -2rem; height: .05rem;
    background: linear-gradient(to right, transparent, white 10%, white 50%, white 90%, transparent);
  }
  header::after {
    content: ''; position: absolute; bottom:0; right:-2rem; left:-2rem; height:.05rem;
    background: linear-gradient(to right, transparent, white 10%, white 50%, white 90%, transparent);
  }
  .vline-left,
  .vline-right {
    content:''; position: absolute; top: -1.5em; bottom: -1.5em; width:.05rem;
    background: linear-gradient(to top, transparent, white, transparent);
  }
  .vline-left { left: 0rem; }
  .vline-right { right: 0rem; }

  @media (max-width:767px) {
    header { width:calc(80vw + 2rem )}
    header #hamburger line { stroke:white; }
    main:not(#home-page) .Gutenberg > #intro { margin-top:0rem; }
  }

/* HERO */

  .Hero { /* padding-top:calc(var(--header-height) / 2); */}
  .Hero.Tall { height:67.1875vw; }
  .Hero.Medium { height:50vw; }
  .Hero.Short { height:40vw; }
  .Hero.Auto { }
  .Hero.Auto h1 { /*padding-bottom:.25em; border-bottom:.2vw solid gray;*/ }
  .Hero.Content { /*position:relative;*/ }
  .Hero.Content .Column.Text { /*min-height:30vw; margin-bottom:12vw;*/ }

  main:not(#home-page) .Hero > .wp-block-cover { justify-content:flex-start; align-items:flex-start; }
  main:not(#home-page) .Hero > .wp-block-cover  .wp-block-cover__inner-container { margin-top:16vw; }


  .Hero h2 { position:relative; padding-bottom:1rem; }
  .Hero h2::after {
    content: '';
    position: absolute; z-index:1; bottom:0; right: -2rem; left: -2rem; height:.05rem;
    background: linear-gradient(to right,  white 60%, transparent);
  }
  .Hero h1 { position:relative; }
  .Hero h1::before {
    content: '';
    position: absolute; z-index:1; top:-7.5rem; bottom:-7.5rem; left:calc(var(--spacing-large) - 1rem); width:.05rem;
    background: linear-gradient(to bottom, transparent,  white 7.5rem, transparent);
  }

  @media (max-width:767px) {
    .Hero.Tall { height:130vw; }
    .Hero.Tall .wp-block-cover__image-background { object-position:80%; }
    .Hero.Medium { height:90vw; }
    .Hero.Short { height:70vw; }
    .Hero.Content .Column.Text { /*margin-bottom:0;*/ }
    .Hero.Content.Tall .wp-block-cover__inner-container.is-layout-flow.wp-block-cover-is-layout-flow { /*margin-left:0; margin-right:auto; width:80%;*/ }
    .Hero.Content h1  { /*width:90%; font-size:1.5rem!important;*/ }
    .Hero.Content h2  { font-size:var(--font-size-xsmall)!important; }
    .Hero .wp-block-columns .Text > h2 { font-size:var(--font-size-xsmall)!important; }

    .Hero.Content.Tall p {/* margin-left:0; margin-right:auto; /*width:70%; width:90%; font-size:14px;*/ }
    .Post .Hero.Short { /*height:40vw;*/ }

    main:not(#home-page) .Hero > .wp-block-cover {  }
    main:not(#home-page) .Hero > .wp-block-cover  .wp-block-cover__inner-container { margin-top:32vw; }
  }

  /*#home-page .Hero .Window { width:28vw; margin-top:1.2vw; margin-left:4.5vw; }*/
  #home-page .Hero > .wp-block-cover > .wp-block-cover__inner-container { height:100%; }
  #home-page .Hero .wp-block-columns { height:100%; }
  #home-page .Hero .wp-block-columns .wp-block-column { height:100%; }
  #home-page .Hero .wp-block-columns .Text { display:flex; flex-direction:column; justify-content:center; }
  #home-page .Hero .wp-block-columns .Text > h1 { opacity:0; transition:opacity 3s ease; }
  #home-page .Hero .wp-block-columns .Text > h2 { opacity:0; transition:opacity 1s ease; }
  #home-page .Hero .wp-block-columns .Image > figure { opacity:0; transition:opacity 3s ease; }

/* FOOTER */

  footer { position:relative; padding:0; background-color:var(--color-blue); color:white; font-family:var(--font-special); }
  footer .Background { background: linear-gradient(to bottom, var(--color-blue-dark), var(--color-blue)); }
  footer menu.Columns { position:absolute; top:0; left:0; }
  footer menu.Columns .Column { flex-basis:unset; }
  footer menu.Columns .Column.Left { width:100%; }
  footer menu.Columns .Column.Left .Logo { width:27vw; }
  footer menu.Columns .Column.Left .Logo a { margin-bottom:0; display:block; width:100%; height:var(--footer-height); }
  footer menu.Columns .Column.Left .Logo a button { width:100%; height:100%;}
  footer menu.Columns .Column.Left .Logo a button svg { width:auto; height:100%;}
  footer menu.Columns .Column.Left .Company { margin-left:-25vw; width:73vw; display: flex; flex-direction: column; justify-content: center; }
  footer menu.Columns .Column.Left .Company #logo { margin-bottom:1rem; width:15vw; }
  footer menu.Columns .Column.Left .Company .Phone { margin-bottom:0; }
  footer menu.Columns .Column.Left .Company .Phone a { margin-bottom:0; }
  footer menu.Columns .Column.Left .Company .Email { margin-top:0; }
  footer menu.Columns .Column.Right { display:none; }
  footer .Social { display:none; }
  @media (max-width: 767px) {
    footer { height:65vw; }
    footer .Content { height:100%; }
    footer .Content .Inner { height:100%; }
    footer menu.Columns .Column.Left { height:65vw; }
    footer menu.Columns .Column.Left .Logo { width:50%; }
    footer menu.Columns .Column.Left .Logo a { height:100%; }
    footer menu.Columns .Column.Left .Company { margin-left:unset; padding:2rem 0; width:50%; font-size: var(--font-size-xsmall); }
    footer menu.Columns .Column.Left .Company #logo { width:75%; }
    footer menu.Columns { /*padding:0%; flex-wrap:wrap; flex-direction:column;*/ }
    footer menu.Columns .Column.Left { /*width:100%; flex-direction:column;*/ }
    footer menu.Columns .Column.Left .Heading button { /*margin:3vw auto 0 auto; font-size:inherit;  }
    footer menu.Columns .Column.Logo a { /*width:100%;*/ }
    footer menu.Columns .Column.Logo a button { /*margin:auto; width:fit-content;*/ }
    footer menu.Columns.Top .Column.Logo .Phone { /*text-align:center;*/ }
    footer menu.Columns.Top .Column.Logo .Email { /*text-align:center;*/ }
    footer menu.Columns .Column.Logo { /*margin:auto; text-align:center;*/ }
    footer menu.Columns .Column.Company { /*margin:auto; width:100%; text-align:center;*/ }
    footer menu.Columns .Column.Company .Social { /*justify-content:center;*/ }
    footer menu.Columns .Column.Company .Social svg { /*margin-left:.5em; margin-right:.5em;*/ }
    footer menu.Columns .Column.Right { /*margin-top:3rem; width:100%; text-align:center;*/ }
    footer menu.Columns .Column.Right .wpcf7-form-control.wpcf7-submit.has-spinner.Cta { /*margin-left:72px;*/ }
    footer menu nav.WpMenu { /*display:none;*/ }
  }

/* ACF BLOCKS */

  .SliderHtmlNew .Fixed nav.Controls { display:none; }
  .SliderHtmlNew .Fixed nav.Labels { top:unset; padding-left:var(--spacing-xlarge); bottom:2.5vw; font-family:var(--font-special); }
  .SliderHtmlNew .Fixed nav.Labels > .Active { color:unset; position:relative; }
  .SliderHtmlNew .Fixed nav.Labels > .Active::after { content: ""; position: absolute; left: 0; right: 0; bottom: -2px;height: 2px; background: #fff; }
  .SliderHtmlNew .Fixed .Column { position:relative; padding:var(--spacing-small) var(--spacing-xlarge); width:100%; height:100%; justify-content:flex-start; }
  .SliderHtmlNew .Fixed .Column h1 { /*margin-top:0!important;*/  font-family:var(--font-special); font-size:var(--font-size-small); font-weight:400; text-transform:uppercase; letter-spacing:.75em; }
  .SliderHtmlNew .Fixed .Column h2 { font-family:var(--font-heading); font-size:var(--font-size-large); font-weight:400; }
  .SliderHtmlNew .Fixed .Column .Text {
    position:absolute; right:var(--spacing-large); bottom:2vw; width:25%;
    font-family:var(--font-paragraph); font-size:var(--font-size-small); font-weight:600; text-align:right;
    color:white;  }
  .SliderHtmlNew .swiper-wrapper .Column { position:relative; top:0; left:0; width:100%; height:100%; color:white; }
  .SliderHtmlNew .swiper-wrapper .Column h1 { position:absolute; right:var(--spacing-large); text-align:right; }
  .SliderHtmlNew .swiper-wrapper .Column .Text { position:absolute; right:var(--spacing-large); text-align:right; }
  .SliderHtmlNew .swiper-wrapper .Column .Text h3 { font-family:var(--font-heading); font-weight:400; font-size:var(--font-size-large); }
  @media (max-width:767px) {
    .SliderHtmlNew .Fixed .Column { padding:var(--spacing-small) var(--spacing-medium); }
    .SliderHtmlNew .Fixed nav.Labels { padding-left:var(--spacing-medium); flex-direction:column; }
    .SliderHtmlNew .swiper-wrapper .Column .Text { right: var(--spacing-medium); width: 88%; }

  }

/* BLOCK PATTERNS */

  /* columns text cover */

    .ColumnsTextCover { min-height:42vw; }
    @media (max-width:767px) {
      .ColumnsTextCover > .wp-block-column { min-height:42vw; }
      .ColumnsTextCover .Text { order:1; }
      .ColumnsTextCover .Text { padding: var(--wp--preset--spacing--medium) !important; }
      .ColumnsTextCover .Photo { order:2; }
    }

  /* grid logos */

    .GridLogos {}
    .GridLogos figure { border-right: .1rem solid var(--color-blue); border-bottom: .1rem solid var(--color-blue); }
    .GridLogos figure:nth-of-type(-n+3) { border-top:.1rem solid var(--color-blue); }
    .GridLogos figure:nth-of-type(3n+1) { border-left:.1rem solid var(--color-blue); }
    @media (max-width:767px) {
      .GridLogos.is-layout-grid { grid-template-columns:repeat(2, 1fr); }
      .GridLogos figure { border-right: .1rem solid var(--color-blue); border-bottom: .1rem solid var(--color-blue); }
      .GridLogos figure:nth-of-type(-n+3) { border-top:unset; }
      .GridLogos figure:nth-of-type(3n+1) { border-left:unset; }
      .GridLogos figure:nth-of-type(-n+2) { border-top: .1rem solid var(--color-blue); }
      .GridLogos figure:nth-of-type(2n+1) { border-left: .1rem solid var(--color-blue); }
    }

  /* testimonial */

    .Testimonial {}
    .Testimonial .Inner { padding:var(--spacing-large); }
    .Testimonial blockquote { position:relative; padding:var(--spacing-small) var(--spacing-medium); }
    .Testimonial blockquote::before,
    .Testimonial blockquote::after { position:absolute; width:4rem; height:4rem; }
    .Testimonial blockquote::before {
      content: ""; top:1rem; left:0;
      background: url("data:image/svg+xml,%3Csvg%20viewBox%3D%220%200%2094%2082%22%20version%3D%221.1%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20xmlns%3Axlink%3D%22http%3A//www.w3.org/1999/xlink%22%3E%3Cg%20id%3D%22Start%22%20transform%3D%22translate(46.7637%2C%2040.6476)%20rotate(180)%20translate(-46.7637%2C%20-40.6476)translate(-0.2363%2C%200.1476)%22%20fill%3D%22%23E7E7E7%22%3E%3Cpath%20d%3D%22M27.6767578%2C0.681508051%20C17.8164063%2C-1.74929857%205.59480442%2C2.20606467%206.43652344%2C14.4256487%20C7.27824245%2C26.6452327%2018.4676376%2C26.8047925%2016.6201172%2C44.7703752%20C15.3884369%2C56.7474304%209.84839788%2C67.1774434%200%2C76.0604143%20L4.91796875%2C80.2127581%20C25.5449545%2C56.7772828%2036.7760743%2C41.0240276%2038.6113281%2C32.9529924%20C41.3642089%2C20.8464397%2037.5371094%2C3.11231467%2027.6767578%2C0.681508051%20Z%22%20id%3D%22Path%22/%3E%3Cpath%20d%3D%22M81.6767578%2C0.681508051%20C71.8164063%2C-1.74929857%2059.5948044%2C2.20606467%2060.4365234%2C14.4256487%20C61.2782425%2C26.6452327%2072.4676376%2C26.8047925%2070.6201172%2C44.7703752%20C69.3884369%2C56.7474304%2063.8483979%2C67.1774434%2054%2C76.0604143%20L58.9179688%2C80.2127581%20C79.5449545%2C56.7772828%2090.7760743%2C41.0240276%2092.6113281%2C32.9529924%20C95.3642089%2C20.8464397%2091.5371094%2C3.11231467%2081.6767578%2C0.681508051%20Z%22%20id%3D%22Path-Copy%22/%3E%3C/g%3E%3C/svg%3E") no-repeat;
    }
    .Testimonial blockquote::after {
      content: ""; bottom:0; right:0;
      background: url("data:image/svg+xml,%3Csvg%20viewBox%3D%220%200%2095%2081%22%20version%3D%221.1%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20xmlns%3Axlink%3D%22http%3A//www.w3.org/1999/xlink%22%3E%3Cg%20id%3D%22End%22%20transform%3D%22translate(0.7637%2C%200.1476)%22%20fill%3D%22%23E7E7E7%22%3E%3Cpath%20d%3D%22M27.6767578%2C0.681508051%20C17.8164063%2C-1.74929857%205.59480442%2C2.20606467%206.43652344%2C14.4256487%20C7.27824245%2C26.6452327%2018.4676376%2C26.8047925%2016.6201172%2C44.7703752%20C15.3884369%2C56.7474304%209.84839788%2C67.1774434%200%2C76.0604143%20L4.91796875%2C80.2127581%20C25.5449545%2C56.7772828%2036.7760743%2C41.0240276%2038.6113281%2C32.9529924%20C41.3642089%2C20.8464397%2037.5371094%2C3.11231467%2027.6767578%2C0.681508051%20Z%22%20id%3D%22Path%22/%3E%3Cpath%20d%3D%22M81.6767578%2C0.681508051%20C71.8164063%2C-1.74929857%2059.5948044%2C2.20606467%2060.4365234%2C14.4256487%20C61.2782425%2C26.6452327%2072.4676376%2C26.8047925%2070.6201172%2C44.7703752%20C69.3884369%2C56.7474304%2063.8483979%2C67.1774434%2054%2C76.0604143%20L58.9179688%2C80.2127581%20C79.5449545%2C56.7772828%2090.7760743%2C41.0240276%2092.6113281%2C32.9529924%20C95.3642089%2C20.8464397%2091.5371094%2C3.11231467%2081.6767578%2C0.681508051%20Z%22%20id%3D%22Path-Copy%22/%3E%3C/g%3E%3C/svg%3E") no-repeat;
    }
    @media (max-width:767px) {
      .Testimonial blockquote { padding:var(--spacing-medium) var(--spacing-large); }
      .Testimonial blockquote p { position:relative; }
      .Testimonial blockquote::before { left:-2rem; }
    }

  /* team grid */

    .TeamGrid { height:17.5vw; gap:1rem; }
    .TeamGrid .wp-block-cover { height:100%; min-height:unset; }
    .TeamGrid .wp-block-cover .wp-block-cover__inner-container { height:100%; }
    .TeamGrid .wp-block-cover img { height:100%; }
    .TeamGrid .wp-block-cover p { position:absolute; bottom:.5rem; left:.5rem; font-weight:700; color:white; text-shadow: #000 1px 0 10px; }

    #about .TeamGrid .Person:hover { outline:.3rem solid black; cursor:pointer; }
    @media (max-width:767px) {
      .TeamGrid { grid-template-columns: repeat(3,1fr)!important; height:unset; }
      .TeamGrid .Person { aspect-ratio:1; }
    }

  /* infinite bullets */

    .InfiniteBullets { position:relative; }
    .InfiniteBullets h2 { margin-bottom:.5rem; }
    .InfiniteBullets ul { list-style: none; padding: 0; }
    .InfiniteBullets ul li { position: relative; padding-left: calc(var(--spacing-xlarge) + 2rem)!important; }
    .InfiniteBullets ul li::before {
      content: '';
      position: absolute; left: 0; top: 0; width: calc(var(--spacing-xlarge) + 1rem); height: 100%;
      background: linear-gradient(to bottom, transparent calc(50% - 1px), var(--color-blue) 1px, transparent calc(50% + 1px));
    }

    /* fancy lines */
    .InfiniteBullets > h2:nth-of-type(1) { position:relative; padding-bottom:1rem; }
    .InfiniteBullets > h2:nth-of-type(1)::before {
      content: ''; position: absolute; z-index:1; top:-1rem; right: 4rem; left: -2rem; height:.075rem;
      background: linear-gradient(to right,  var(--color-blue) 60%, transparent);
    }
    /*.InfiniteBullets h1 { position:relative; }*/
    .InfiniteBullets > h2:nth-of-type(1)::after {
      content: ''; position: absolute; z-index:1; top:-7.5rem; bottom:-7.5rem; left:calc(var(--spacing-large) - 1rem); width:.075rem;
      /*background: linear-gradient(to bottom, transparent,  var(--color-blue) 7.5rem, transparent);*/
      background: var(--color-blue);
    }
    .InfiniteBullets > ul::after {
      content: ''; position: absolute; z-index:1; top:0; bottom:0; left:calc(var(--spacing-large) - 1rem); width:.075rem;
      background: var(--color-blue);
    }
    .InfiniteBullets > ul:last-of-type::after {
      content: ''; position: absolute; z-index:1; top:calc(100% - 2rem); bottom:-4rem; left:calc(var(--spacing-large) - 1rem); width:.075rem;
      background:unset;
      background: linear-gradient(to bottom, var(--color-blue), white);
    }

  /* stats */

    #stats .Stat { margin-bottom:1rem; }
    #stats .Stat h3 + h4 { margin-top:0; }

/* MODAL */

  #modal { /*font-size:.5rem;*/ color:var(--color-highlight); }
  #modal menu.Columns { /*font-size:1.5rem;*/ }
  #modal menu.Columns .Column div { /*flex-direction:column; align-items:end!important;*/ }
  #modal .Glass { /*filter:unset!important; background-color:white!important;*/ }
  #modal .Heading { /*font-size:1.2rem;*/ }
  #modal menu .Heading button { color:white; }
  #modal menu.Columns .Column { /*padding:unset!important;*/ }
  #modal menu.Columns .Column .ItemSecondary { /*color:inherit!important;*/ }
  #modal menu.Columns .Column div a { /*width:100%;*/ }
  #modal menu.Columns .Column .ItemSecondary .Active { /*color:var(--color-yellow)!important;*/ }
  #modal menu.Columns .Column .ItemSecondary .Active .Symbols { /*color:inherit!important;*/ }
  #modal menu.Columns button { /*font-size:1rem; text-align:left;*/ }
  #modal menu.Columns .Column.ItemPrimary.Active { background-color:var(--color-highlight)!important; }

/* SETTINGS BAR */

  #settingsBar { display:none!important; /*position:absolute!important;*/ }
  #settingsBar .Privacy.Collapsed { /*margin-left:0; width:100%; outline:0; border-top:1px solid white; background-color:unset;*/ }
  #settingsBar .Privacy.Collapsed .Info { /*width:100%;*/ }
  #settingsBar .Privacy.Collapsed .Info .Main { /*width:100%; justify-content:center; background-color:unset;*/ }

/* PLUGINS */

    .Cf7 {/*font-family:var(--font-special);*/ }
    .Contact .Cf7 { /*min-height:50vw;*/ }*/

    @media (max-width:767px) {
      .Contact .Cf7 form .Cta {  }
    }

/* PAGES */

  #home-page #who-we-are { position:relative; }
  #home-page #who-we-are::before {
    content: '';
    position: absolute; z-index:1; top:0; right: -2rem; left: -2rem; height:.075rem;
    background: linear-gradient(to right, transparent, transparent 5%, white 40%, white 50%, white 90%, transparent);
  }
  #home-page #industries .SliderHtmlNew .swiper-wrapper .Column .Text { position:absolute; bottom:2.5vw; right:var(--spacing-large); width:30%; text-align:right; }
  #home-page #industries .SliderHtmlNew .swiper-wrapper .Column .Text p { margin:0; }
  #home-page #case-studies .SliderHtmlNew .swiper-wrapper .Foreground {
    top:var(--spacing-small); left:var(--spacing-large); bottom:unset; width:17.5% !important; height:auto!important;
  }
  #home-page #case-studies .SliderHtmlNew .Fixed .Column h1 { position:absolute; right:var(--spacing-large); text-align:right; }

  #about #stats .has-xx-large-font-size { font-size:5rem!important; }
  #about #stats .wp-block-group-is-layout-grid  { grid-template-columns: 32.5% 20% 25% 22.5%; }
  #about #stats .wp-block-group-is-layout-grid > .wp-block-group:nth-of-type(4) { padding-left:15%; }
  #about #stats .wp-block-group-is-layout-grid > .wp-block-group p { margin-block-start:0; padding:0 2em; }
  #about .PersonHeading .wp-block-cover { margin-bottom:-10em; mask-image: linear-gradient(to bottom, black 50%, transparent 75%); }
  #about #content-target { letter-spacing:.05em; display:none; }
  #about #content-target h1 { font-family: var(--font-heading); font-weight: 400; font-size: var(--font-size-xlarge); }
  #about #content-target h2 { margin-bottom:1rem; font-weight:400; }
  #about #content-target p { padding-left:3rem; }
  #about #content-target ul { padding-left:3rem; }
  #about #content-target .wp-block-columns { margin-top:2rem; margin-bottom:2rem; }
  #about #content-target .PersonHeading .wp-block-cover { aspect-ratio:1; min-height:unset; }
  #about hr {
    border: none;
    height: 2px;
    background: linear-gradient(to right, var(--color-blue), transparent 50%); /* Replace with your colors */
  }

  #contact .Hero h2::after { background: linear-gradient(to right,  var(--color-blue) 60%, transparent); }
  #contact .Hero h1::before { background: linear-gradient(to bottom, transparent,  var(--color-blue) 7.5rem, transparent); }

  #contact .Form h2 { position:relative; padding-bottom:1rem; }
  #contact .Form h2::after {
    content: ''; position: absolute; z-index:1; bottom:0; right: -2rem; left: -2rem; height:.05rem;
    background: linear-gradient(to right,  var(--color-blue) 60%, transparent);
  }
  #contact .Form h1 { position:relative; }
  #contact .Form h1::before {
    content: ''; position: absolute; z-index:1; top:-7.5rem; bottom:-7.5rem; left:calc(var(--spacing-large) - 1rem); width:.05rem;
    background: linear-gradient(to bottom, transparent,  var(--color-blue) 7.5rem, transparent);
  }

  #contact #form form.wpcf7-form .Columns { padding-bottom:1rem; }
  #contact #form form.wpcf7-form .Columns .Column { padding-right:2rem; }
  #contact #form form.wpcf7-form :where(input[type="text"], input[type="tel"], input[type="email"]) { width:100%; border:none; font-size: calc(var(--font-size-normal) * 1.5); }
  #contact #form form.wpcf7-form :where(input[type="text"], input[type="tel"], input[type="email"]):focus { border:0; outline:0; }
  #contact #form form.wpcf7-form label { padding-left:.5rem; padding-bottom:.25rem; border-bottom:1px solid var(--color-blue); display:flex; align-items:end; }
  #contact #form form.wpcf7-form label span { padding-right:1rem;  text-wrap:nowrap; color:black; font-weight:600; color:#555; }
  #contact #form form.wpcf7-form label:has(textarea) { padding-top:.5rem; border:1px solid var(--color-blue); display:block; }
  #contact #form form.wpcf7-form label:has(textarea) textarea { padding:.5rem; border:0; width:100%; font-size: calc(var(--font-size-normal) * 1.5); }
  #contact #form form.wpcf7-form label:has(textarea) textarea:focus { border:none; outline:0; }
  .wpcf7-not-valid-tip { display:none; }
  #contact #form form.wpcf7-form input[type="submit"] { all:unset; margin-top:1rem; padding:.25rem 1rem; border-radius:.2em; font-family:var(--font-special); background-color:var(--color-blue); color:white; }
  #contact #form form.wpcf7-form input[type="submit"]:hover { background-color:var(--color-highlight); cursor:pointer; }

  main#contact { padding-bottom:2.5rem; }


  @media (max-width:767px) {
    #home-page #intro > .wp-block-group { padding-top: var(--wp--preset--spacing--small);
      padding-right: var(--wp--preset--spacing--medium)!important;
      padding-bottom: var(--wp--preset--spacing--medium);
      padding-left: var(--wp--preset--spacing--medium)!important; }
    #home-page #industries .SliderHtmlNew .swiper-wrapper .Column .Text { right:var(--spacing-medium); width:60%; }
    #about #team { padding-top:12vw!important; padding-bottom:12vw!important; }
    #about #team .TeamGrid { margin-top:12vw!important; }
    #about #stats { margin-top:12vw; margin-bottom:12vw; }
    #about #stats .wp-block-spacer { height:1rem!important; }
    #about #stats .wp-block-group-is-layout-grid  { grid-template-columns: 50% 50%;  }
    #about #stats .wp-block-group-is-layout-grid > .wp-block-group { margin-bottom:1rem; }
    #about #stats .wp-block-group-is-layout-grid > .wp-block-group:nth-of-type(1) { order:0; }
    #about #stats .wp-block-group-is-layout-grid > .wp-block-group:nth-of-type(2) { order:2; }
    #about #stats .wp-block-group-is-layout-grid > .wp-block-group:nth-of-type(3) { order:1; }
    #about #stats .wp-block-group-is-layout-grid > .wp-block-group:nth-of-type(4) { order:3; }
    #about #stats .wp-block-group-is-layout-grid h4 { font-size:2.75rem!important; }
    #about #stats .wp-block-group-is-layout-grid > .wp-block-group:nth-of-type(4) { padding-left:unset; }
    #about #content-target { padding:5vw 10vw 10vw 10vw!important; }
    #about #content-target .wp-block-columns:nth-of-type(1) { margin-bottom:35vw; }
    #about #content-target .wp-block-columns:nth-of-type(2) { margin-bottom:0; }
    #about #content-target .wp-block-columns .wp-block-column { margin-top:1rem; }
    #about #content-target > p { padding:0; }
    #about #content-target ul { padding-left:1.5rem; }
  }

/* OVERRIDES */

  .is-style-heading-small { font-family:var(--font-special); font-size:var(--font-size-normal); font-weight:100; letter-spacing:.5em; text-transform:uppercase; }
  .is-style-heading-normal { font-family:var(--font-heading);
    font-size:calc(var(--font-size-normal) + (var(--font-size-large) - var(--font-size-normal)) / 2)!important;
    font-weight:400; line-height:1.1; }
  .is-style-heading-large { font-family:var(--font-heading); font-size:var(--font-size-large); font-weight:400; line-height:1.1; }

/* TEMP */

  #main-bottom { display:none; }
  .grecaptcha-badge { visibility:hidden;*/ }
