
/* === START GENERIC STYLES === */

/* Restricted declaration reset */

* { margin:0; padding:0; }
html, body { margin:0 !important; padding:0 !important; border:0 !important; outline:0 !important; }
sup { vertical-align: text-top; }
.text_navigationname_home { visibility: hidden; }
.clearfix:after {content: ".";display: block;height: 0;clear: both;visibility: hidden;}


/* === END GENERIC STYLES === */



body {   --navy: #2C3E6B;   --steel: #8AAFD4;   --grey: #9BA8B0;   --cream: #F0EEE9;   --white: #FFFFFF;   --font-head: 'Cormorant Garamond', serif;   --font-body: 'Raleway', sans-serif;   --gutter: 48px;   --hero-max: 1400px;   --content-max: 1100px;   --shell-max: 1920px;   --text-max: 720px;   --section-gap: 96px;   --section-gap-sm: 48px; }
@media (max-width: 900px) {   body {     --section-gap: 64px;     --section-gap-sm: 32px;   } }
@media (max-width: 767px) {   body {     --section-gap: 48px;     --section-gap-sm: 24px;   } }
body:not(.xx-respond) #area_content {   max-width: 1000px;   margin-left: auto;   margin-right: auto; }
body.xx-respond #area_content {   max-width: var(--shell-max);   margin-left: auto;   margin-right: auto; }
body.xx-respond .item--heading, body.xx-respond .item--subheading, body.xx-respond .item--paragraph, body.xx-respond .item--contentlink {   margin: 0; }
body .item--heading .item-body, body .item--subheading .item-body {   font-family: var(--font-head);   color: var(--navy); }
body .item--paragraph .item-body {   font-family: var(--font-body);   font-weight: 300;   line-height: 1.7;   color: #3d4a6e; }
body .item--contentlink .item-body {   font-family: var(--font-body); }
body .item--contentlink .item-body > a {   display: inline-flex;   align-items: center;   text-decoration: none; }
body.xx-respond .group-container {   display: block; }
body.xx-respond .edit_opportunity {   display: none; }
body.xx-respond .group-container--hero {   background: var(--cream);   padding-top: 88px;   padding-bottom: 88px;   padding-left: max(var(--gutter), calc((100% - var(--hero-max)) / 2));   padding-right: max(var(--gutter), calc((100% - var(--hero-max)) / 2));   position: relative;   overflow: hidden; }
body.xx-respond .group-container--hero .item--group {     z-index: 2; }
body.xx-respond .group-container--hero::after {   content: '';   position: absolute;   top: 0;   right: 0;   bottom: 0;   width: 46%;   background:
    linear-gradient(to right, var(--cream) 0%, rgba(240, 238, 233, .88) 10%, rgba(240, 238, 233, .3) 34%, rgba(240, 238, 233, 0) 60%) left / 100% 100% no-repeat,     linear-gradient(to bottom, var(--cream), rgba(240, 238, 233, 0) 20%, rgba(240, 238, 233, 0) 80%, var(--cream)) left / 100% 100% no-repeat,     linear-gradient(rgba(240, 238, 233, .55), rgba(240, 238, 233, .55)) left / 100% 100% no-repeat,     url('/_css/image/building-sketch.jpg') center/cover no-repeat;   background-blend-mode: normal, normal, soft-light, normal;   filter: saturate(.85);   z-index: 1; }
body.xx-respond .group-container--hero .item--paragraph:first-child {   margin-bottom: 18px; }
body .group-container--hero .item--paragraph:first-child .item-body {   font-family: var(--font-head);   font-size: 14px;   letter-spacing: .32em;   text-transform: uppercase;   color: var(--steel);   font-weight: 500; }
body.xx-respond .group-container--hero .item--paragraph:first-child::after {   content: '';   display: block;   width: 56px;   height: 1px;   background: var(--steel);   margin-top: 14px; }
body.xx-respond .group-container--hero .item--heading {   margin-bottom: 22px; }
body.xx-respond .group-container--hero .item--heading .item-body {   font-size: 46px;   line-height: 1.18;   font-weight: 500;   max-width: 15.5em; }
body.xx-respond .group-container--hero .item--heading + .item--paragraph, body.xx-respond .group-container--hero .item--heading + .edit_opportunity + .item--paragraph {   margin-bottom: 34px; }
body.xx-respond .group-container--hero .item--heading + .item--paragraph .item-body, body.xx-respond .group-container--hero .item--heading + .edit_opportunity + .item--paragraph .item-body {   font-size: 16px;   max-width: 33em; }
body.xx-respond .group-container--hero .item--contentlink {   margin-right: 16px; }
body.xx-respond .group-container--hero .item--contentlink:has(+ .item--contentlink), body.xx-respond .group-container--hero .item--contentlink:has(+ .edit_opportunity + .item--contentlink) {   display: inline-block;   vertical-align: top; }
body.xx-respond .group-container--hero .item--contentlink + .item--contentlink, body.xx-respond .group-container--hero .item--contentlink + .edit_opportunity + .item--contentlink {   display: inline-block;   vertical-align: top; }
body .group-container--hero .item--contentlink .item-body {   font-size: 14.5px;   font-weight: 500;   letter-spacing: .03em; }
body .group-container--hero .item--contentlink .item-body a {   color: var(--white);   background: var(--navy);   padding: 15px 28px;   display: inline-block;   transition: background-color .2s ease, color .2s ease, box-shadow .2s ease, transform .2s ease; }
body .group-container--hero .item--contentlink .item-body a:hover {   background: var(--steel);   color: var(--navy);   box-shadow: 0 10px 20px rgba(44,62,107,.25);   transform: translateY(-2px); }
body .group-container--hero .item--contentlink + .item--contentlink .item-body a, body .group-container--hero .item--contentlink + .edit_opportunity + .item--contentlink .item-body a {   color: var(--navy);   background: transparent;   border: 1px solid var(--navy);   padding: 14px 27px; }
body .group-container--hero .item--contentlink + .item--contentlink .item-body a:hover, body .group-container--hero .item--contentlink + .edit_opportunity + .item--contentlink .item-body a:hover {   background: var(--navy);   color: var(--white); }
body .group-container--hero .item--contentlink + .item--paragraph .item-body, body .group-container--hero .item--contentlink + .edit_opportunity + .item--paragraph .item-body {   font-family: var(--font-head);   font-style: italic;   font-size: 13px;   color: var(--grey); }
@media (max-width: 1380px) {   body.xx-respond .group-container--hero .item--heading .item-body {     max-width: 13em;     font-size: 40px;   } }
@media (max-width: 900px) {   body.xx-respond .group-container--hero {     padding: 56px 32px;   }
  body.xx-respond .group-container--hero::after {     display: none;   }
  body .group-container--hero .item--heading .item-body {     font-size: 34px;   } }
@media (max-width: 767px) {   body.xx-respond .group-container--hero {     padding: 44px 24px;   }
  body .group-container--hero .item--heading .item-body {     font-size: 28px;   } }
@media (max-width: 480px) {   body .group-container--hero .item--heading .item-body {     font-size: 24px;     max-width: none;   } }
#area_content > .item {   margin-left: var(--gutter);   margin-right: var(--gutter);   margin-left: max(var(--gutter), calc((100% - var(--text-max)) / 2));   margin-right: max(var(--gutter), calc((100% - var(--text-max)) / 2)); }
body.xx-respond #area_content > .item:first-child, body.xx-respond #area_content > .edit_opportunity:first-child + .item {   margin-top: var(--section-gap); }
body.xx-respond .item--subheading:has(+ .item--subheading), body.xx-respond .item--subheading:has(+ .edit_opportunity + .item--subheading) {   margin-top: var(--section-gap);   margin-bottom: 12px;   text-align: center; }
body.xx-respond .item--subheading:first-child:has(+ .item--subheading), body.xx-respond .item--subheading:first-child:has(+ .edit_opportunity + .item--subheading), body.xx-respond .edit_opportunity:first-child + .item--subheading:has(+ .item--subheading), body.xx-respond .edit_opportunity:first-child + .item--subheading:has(+ .edit_opportunity + .item--subheading) {   margin-top: 0; }
body .item--subheading:has(+ .item--subheading) .item-body, body .item--subheading:has(+ .edit_opportunity + .item--subheading) .item-body {   font-size: 13px;   letter-spacing: .28em;   text-transform: uppercase;   color: var(--steel);   font-weight: 500; }
body.xx-respond .item--subheading + .item--subheading, body.xx-respond .item--subheading + .edit_opportunity + .item--subheading {   margin-bottom: 44px;   text-align: center; }
body .item--subheading + .item--subheading .item-body, body .item--subheading + .edit_opportunity + .item--subheading .item-body {   font-size: 34px;   font-weight: 500; }
body.xx-respond .item--subheading + .item--subheading::after, body.xx-respond .item--subheading + .edit_opportunity + .item--subheading::after {   content: '';   display: block;   width: 64px;   height: 1px;   background: var(--steel);   margin: 16px auto 0; }
body.xx-respond #area_content > .item--paragraph + .item--paragraph, body.xx-respond #area_content > .item--paragraph + .edit_opportunity + .item--paragraph {   margin-top: 16px; }
body #area_content > .item--subheading + .item--subheading + .item--paragraph .item-body, body #area_content > .item--subheading + .edit_opportunity + .item--subheading + .item--paragraph .item-body, body #area_content > .item--subheading + .item--subheading + .edit_opportunity + .item--paragraph .item-body, body #area_content > .item--subheading + .edit_opportunity + .item--subheading + .edit_opportunity + .item--paragraph .item-body {   font-size: 15px;   text-align: center; }
body:not(.xx-respond) #area_content > .item--subheading + .item--subheading + .item--paragraph .item-body, body:not(.xx-respond) #area_content > .item--subheading + .edit_opportunity + .item--subheading + .item--paragraph .item-body, body:not(.xx-respond) #area_content > .item--subheading + .item--subheading + .edit_opportunity + .item--paragraph .item-body, body:not(.xx-respond) #area_content > .item--subheading + .edit_opportunity + .item--subheading + .edit_opportunity + .item--paragraph .item-body {   max-width: 60ch;   margin: 0 auto; }
body.xx-respond :where(#area_content) > .item:where(.item + *, .edit_opportunity + *) {   margin-top: 20px; }
body.xx-respond :where(#area_content) > .item--heading:where(.item + *, .edit_opportunity + *) {   margin-top: 64px; }
body.xx-respond :where(#area_content) > .item--subheading:where(.item + *, .edit_opportunity + *):where(:not(.item--subheading + *, .item--subheading + .edit_opportunity + *)) {   margin-top: 48px; }
body.xx-respond :where(#area_content) > .item--paragraph:where(.item--subheading + *, .item--subheading + .edit_opportunity + *) {   margin-top: 12px; }
body.xx-respond :where(#area_content) > .item--photo:where(.item + *, .edit_opportunity + *), body.xx-respond :where(#area_content) > .item:where(.item--photo + *, .item--photo + .edit_opportunity + *) {   margin-top: 32px; }
body.xx-respond :where(#area_content) > .item--divider:where(.item + *, .edit_opportunity + *), body.xx-respond :where(#area_content) > .item:where(.item--divider + *, .item--divider + .edit_opportunity + *) {   margin-top: 40px; }
body.xx-respond :where(#area_content) > .item--heading {   margin-bottom: 28px; }
body.xx-respond :where(#area_content) > .item:last-child {   margin-bottom: var(--section-gap); }
body :where(#area_content) > .item--subheading .item-body h3, body:not(.xx-respond) .item--subheading .item-body h3 {   font-size: 26px;   line-height: 1.25;   font-weight: 500; }
body :where(#area_content) > .item--heading .item-body h2, body:not(.xx-respond) .item--heading .item-body h2, body :where(#area_content) > .item--subheading:first-child .item-body h3, body :where(#area_content) > .edit_opportunity:first-child + .item--subheading .item-body h3, body:not(.xx-respond) :where(#area_content) > .item--subheading:first-child .item-body h3, body:not(.xx-respond) :where(#area_content) > .edit_opportunity:first-child + .item--subheading .item-body h3 {   font-size: 40px;   line-height: 1.15;   font-weight: 500; }
@media (max-width: 900px) {   body :where(#area_content) > .item--heading .item-body h2,   body:not(.xx-respond) .item--heading .item-body h2,   body :where(#area_content) > .item--subheading:first-child .item-body h3,   body :where(#area_content) > .edit_opportunity:first-child + .item--subheading .item-body h3,   body:not(.xx-respond) :where(#area_content) > .item--subheading:first-child .item-body h3,   body:not(.xx-respond) :where(#area_content) > .edit_opportunity:first-child + .item--subheading .item-body h3 {     font-size: 34px;   } }
@media (max-width: 767px) {   body :where(#area_content) > .item--subheading .item-body h3,   body:not(.xx-respond) .item--subheading .item-body h3 {     font-size: 23px;   }
  body :where(#area_content) > .item--heading .item-body h2,   body:not(.xx-respond) .item--heading .item-body h2,   body :where(#area_content) > .item--subheading:first-child .item-body h3,   body :where(#area_content) > .edit_opportunity:first-child + .item--subheading .item-body h3,   body:not(.xx-respond) :where(#area_content) > .item--subheading:first-child .item-body h3,   body:not(.xx-respond) :where(#area_content) > .edit_opportunity:first-child + .item--subheading .item-body h3 {     font-size: 30px;   } }
@media (max-width: 480px) {   body :where(#area_content) > .item--heading .item-body h2,   body:not(.xx-respond) .item--heading .item-body h2,   body :where(#area_content) > .item--subheading:first-child .item-body h3,   body :where(#area_content) > .edit_opportunity:first-child + .item--subheading .item-body h3,   body:not(.xx-respond) :where(#area_content) > .item--subheading:first-child .item-body h3,   body:not(.xx-respond) :where(#area_content) > .edit_opportunity:first-child + .item--subheading .item-body h3 {     font-size: 28px;   } }
body #area_content .item--subheading + .item--subheading .item-body h3, body #area_content .item--subheading + .edit_opportunity + .item--subheading .item-body h3 {   font-size: 1.17em;   line-height: inherit;   font-weight: bold; }
body #area_content .item--subheading:has(+ .item--subheading) .item-body h3, body #area_content .item--subheading:has(+ .edit_opportunity + .item--subheading) .item-body h3 {   font-size: 1.17em;   line-height: inherit;   font-weight: bold; }
body.xx-respond :where(#area_content) > .item--heading::after, body.xx-respond :where(#area_content) > .item--subheading:first-child::after, body.xx-respond :where(#area_content) > .edit_opportunity:first-child + .item--subheading::after {   content: '';   display: block;   width: 56px;   height: 0;   border-top: 1px solid var(--steel);   margin-top: 18px; }
body.xx-respond :where(#area_content) > .item--subheading:first-child::after, body.xx-respond :where(#area_content) > .edit_opportunity:first-child + .item--subheading::after {   padding-bottom: 16px; }
body.xx-respond #area_content > .item--subheading:has(+ .item--subheading)::after, body.xx-respond #area_content > .item--subheading:has(+ .edit_opportunity + .item--subheading)::after {   content: none; }
body :where(#area_content) > .item--paragraph .item-body {   font-size: 16px;   overflow-wrap: break-word; }
body .item--listitem .item-body > span {   font-family: var(--font-body);   font-size: 16px;   font-weight: 300;   line-height: 1.7;   color: #3d4a6e;   overflow-wrap: break-word; }
body .item--paragraph .item-body > :is(p, ul, ol) :is(strong, b), body .item--listitem .item-body > span :is(strong, b) {   font-weight: 600; }
body .item--paragraph .item-body > :is(p, ul, ol) a, body .item--listitem .item-body > span a {   color: var(--navy);   text-decoration: underline;   text-decoration-color: var(--steel);   text-decoration-thickness: 1px;   text-underline-offset: 3px;   transition: color .2s ease, text-decoration-color .2s ease; }
body .item--paragraph .item-body > :is(p, ul, ol) a:hover, body .item--listitem .item-body > span a:hover {   color: var(--steel);   text-decoration-color: currentColor; }
body .item--paragraph .item-body > :is(ul, ol), body .item--list .item-body > ol.item_editablelist {   margin: .75em 0;   padding-left: 1.35em; }
body .item--paragraph .item-body > :is(ul, ol) li {   margin-top: .35em; }
body .item--list .item-body > ol.item_editablelist > li + li {   margin-top: .35em; }
body .item--paragraph .item-body > :is(ul, ol) li::marker, body .item--list .item-body > ol.item_editablelist > li::marker {   color: var(--steel); }
body .item--list .item_list {   margin-left: 0; }
body :where(#area_content) > :is(.item--contentlink, .item--file) .item-body > a, body:not(.xx-respond) :is(.item--contentlink, .item--file) .item-body > a {   font-family: var(--font-body);   font-size: 15px;   font-weight: 500;   letter-spacing: .02em;   color: var(--navy);   text-decoration: none;   border-bottom: 1px solid var(--steel);   padding-bottom: 3px;   transition: color .2s ease, border-color .2s ease; }
body :where(#area_content) > :is(.item--contentlink, .item--file) .item-body > a:hover, body:not(.xx-respond) :is(.item--contentlink, .item--file) .item-body > a:hover {   color: var(--steel);   border-color: var(--navy); }
body :where(#area_content) > .item--contentlink .item-body > a::after, body:not(.xx-respond) .item--contentlink .item-body > a::after {   content: '→';   display: inline-block;   margin-left: .5em;   transition: transform .2s ease; }
body :where(#area_content) > .item--file .item-body > a::after, body:not(.xx-respond) .item--file .item-body > a::after {   content: '↓';   display: inline-block;   margin-left: .5em; }
body :where(#area_content) > .item--contentlink .item-body > a:hover::after, body:not(.xx-respond) .item--contentlink .item-body > a:hover::after {   transform: translateX(3px); }
#area_content > :is(.edit_opportunity, #add_item_div, .list_edit_top, .list_edit_bottom, .gallery_edit_top, .gallery_edit_bottom) {   margin-left: max(var(--gutter), calc((100% - var(--text-max)) / 2));   margin-right: max(var(--gutter), calc((100% - var(--text-max)) / 2)); }
html body.xx-is-selecting #area_content > .item.xx-is-selected {   margin-left: calc(max(var(--gutter), calc((100% - var(--text-max)) / 2)) - 10px);   margin-right: calc(max(var(--gutter), calc((100% - var(--text-max)) / 2)) - 10px);   padding-left: 8px;   padding-right: 8px; }
body .item--divider .item_divider {   padding: 0; }
body .item--divider .item-body hr {   height: 0;   border: 0;   border-top: 1px solid rgba(44,62,107,.14); }
body.xx-respond :where(#area_content) > .item--photo .item_photo {   margin: 0; }
body :where(#area_content) img, body :where(#area_content) video {   max-width: 100%;   height: auto; }
body :where(#area_content) :is(iframe, embed, object) {   max-width: 100%; }
#area_content > ul.toplevel:not(.xx_sitemap_admin) {   padding-left: max(var(--gutter), calc((100% - var(--text-max)) / 2));   padding-right: max(var(--gutter), calc((100% - var(--text-max)) / 2));   margin-top: var(--section-gap);   margin-bottom: var(--section-gap);   list-style: none; }
#area_content > ul.toplevel:not(.xx_sitemap_admin)::before {   content: 'Sitemap';   display: block;   font-family: var(--font-head);   font-size: 40px;   line-height: 1.15;   font-weight: 500;   color: var(--navy);   padding-bottom: 18px;   margin-bottom: 28px;   background: linear-gradient(var(--steel), var(--steel)) left bottom / 56px 1px no-repeat; }
@media (max-width: 900px) {   #area_content > ul.toplevel:not(.xx_sitemap_admin)::before { font-size: 34px; } }
@media (max-width: 767px) {   #area_content > ul.toplevel:not(.xx_sitemap_admin)::before { font-size: 30px; } }
@media (max-width: 480px) {   #area_content > ul.toplevel:not(.xx_sitemap_admin)::before { font-size: 28px; } }
ul.toplevel:not(.xx_sitemap_admin) li.pageitem, ul.toplevel:not(.xx_sitemap_admin) li.pageitem li.pageitem {   border: 0;   margin: 0;   padding: 0; }
ul.toplevel:not(.xx_sitemap_admin) li.pageitem .pagetitle {   border: 0;   padding: 0; }
ul.toplevel:not(.xx_sitemap_admin) ul {   list-style: none; }
ul.toplevel:not(.xx_sitemap_admin) a {   color: var(--navy);   text-decoration: none;   transition: color .2s ease; }
ul.toplevel:not(.xx_sitemap_admin) a:hover {   color: var(--steel); }
ul.toplevel:not(.xx_sitemap_admin) > li.pageitem {   border-top: 1px solid rgba(44,62,107,.12);   padding: 18px 0; }
ul.toplevel:not(.xx_sitemap_admin) > li.pageitem:last-child {   border-bottom: 1px solid rgba(44,62,107,.12); }
ul.toplevel:not(.xx_sitemap_admin) > li.pageitem > .pagetitle {   font-family: var(--font-head);   font-size: 22px;   font-weight: 500;   line-height: 1.3; }
ul.toplevel:not(.xx_sitemap_admin) > li.pageitem > ul {   margin-top: 10px;   padding-left: 20px;   border-left: 1px solid var(--steel); }
ul.toplevel:not(.xx_sitemap_admin) > li.pageitem > ul > li.pageitem {   padding: 4px 0; }
ul.toplevel:not(.xx_sitemap_admin) > li.pageitem > ul > li.pageitem > .pagetitle {   font-family: var(--font-body);   font-size: 15px;   font-weight: 400;   line-height: 1.5; }
ul.toplevel:not(.xx_sitemap_admin) ul ul {   margin: 4px 0 6px;   padding-left: 18px; }
ul.toplevel:not(.xx_sitemap_admin) ul ul li.pageitem {   padding: 2px 0; }
ul.toplevel:not(.xx_sitemap_admin) ul ul .pagetitle {   font-family: var(--font-body);   font-size: 14px;   font-weight: 300;   line-height: 1.5; }
ul.toplevel:not(.xx_sitemap_admin) ul ul a {   color: #5a6688; }
ul.toplevel:not(.xx_sitemap_admin) ul ul a:hover {   color: var(--steel); }
body .main > ul.area_nav {   display: none; }
@media (min-width: 901px) {   body .main {     display: flex;     align-items: flex-start;   }
  body .main > :is(#area_content, .main-col) {     flex: 1 1 auto;     min-width: 0;   }
  body .main > ul.area_nav + :is(#area_content, .main-col) {     margin-left: 0;     margin-right: var(--gutter);     margin-right: max(var(--gutter), calc((100% - var(--content-max)) / 2));   }
  body .main > ul.area_nav {     display: block;     flex: 0 0 240px;     width: 240px;     list-style: none;     margin: var(--section-gap) 0 var(--section-gap) var(--gutter);     margin-left: max(var(--gutter), calc((100% - var(--content-max)) / 2));     padding: 0;   } }
@media (min-width: 901px) and (max-width: 1100px) {   body .main > ul.area_nav {     flex-basis: 200px;     width: 200px;   } }
body .main > ul.area_nav::before {   content: 'In this section';   display: block;   font-family: var(--font-head);   font-weight: 500;   font-size: 12.5px;   letter-spacing: .18em;   text-transform: uppercase;   color: var(--steel);   padding-bottom: 14px; }
body .main > ul.area_nav li {   margin: 0;   padding: 0;   list-style: none; }
body .main > ul.area_nav > li {   border-top: 1px solid rgba(44,62,107,.12); }
body .main > ul.area_nav > li:last-child {   border-bottom: 1px solid rgba(44,62,107,.12); }
body .main > ul.area_nav a {   display: block;   padding: 11px 0 11px 14px;   border-left: 2px solid transparent;   font-family: var(--font-body);   font-size: 14.5px;   line-height: 1.4;   color: var(--navy);   text-decoration: none;   transition: color .2s ease, border-color .2s ease; }
body .main > ul.area_nav a:hover {   color: var(--steel); }
body .main > ul.area_nav li.current > a {   font-weight: 500; }
body .main > ul.area_nav a[aria-current="page"] {   border-left-color: var(--steel);   font-weight: 600;   color: var(--navy); }
body .main > ul.area_nav ul {   list-style: none;   margin: 0 0 8px;   padding: 0 0 0 14px; }
body .main > ul.area_nav ul a {   padding-top: 6px;   padding-bottom: 6px;   font-size: 13.5px;   font-weight: 400;   color: #5a6688; }
body .main > ul.area_nav .item_navitem .item_navitem {   margin-left: 0; }
body .main > ul.area_nav li.hidden > a {   opacity: .5; }
body .breadcrumbs[hidden] {   display: none; }
body ul.item_breadcrumbs {   display: flex;   flex-wrap: wrap;   align-items: baseline;   list-style: none;   margin: 0;   padding: 0 32px;   font-family: var(--font-body);   font-size: 13px;   line-height: 1.5;   letter-spacing: .02em;   color: #5a6688; }
body ul.item_breadcrumbs li {   margin: 0;   padding: 16px 0 0;   list-style: none; }
body ul.item_breadcrumbs li:only-child {   display: none; }
body ul.item_breadcrumbs li + li::before {   content: '\203A';   margin: 0 10px;   color: var(--steel); }
body ul.item_breadcrumbs a {   color: #5a6688;   text-decoration: none;   transition: color .2s ease; }
body ul.item_breadcrumbs a:hover {   color: var(--steel); }
body ul.item_breadcrumbs li:last-child, body ul.item_breadcrumbs li:last-child a {   color: var(--navy);   font-weight: 500; }
@media (max-width: 900px) {   body ul.item_breadcrumbs {     padding: 0 24px;   }
  body ul.item_breadcrumbs li {     padding-top: 12px;   } }
body .main-col > :is(form, .form_errors) {   margin-left: var(--gutter);   margin-right: var(--gutter);   margin-left: max(var(--gutter), calc((100% - var(--text-max)) / 2));   margin-right: max(var(--gutter), calc((100% - var(--text-max)) / 2)); }
body.xx-respond .main-col > :where(#area_content) > .item:last-child {   margin-bottom: 40px; }
body .main-col > #area_content:empty + .form_errors, body .main-col > #area_content:empty + form {   margin-top: var(--section-gap); }
body .main-col > form {   margin-bottom: var(--section-gap); }
body .main-col > .form_errors {   margin-bottom: 32px;   padding: 20px 24px;   background: var(--cream);   border-left: 3px solid var(--steel); }
body .main-col > .form_errors h3 {   margin: 0 0 6px;   font-family: var(--font-head);   font-size: 24px;   font-weight: 500;   line-height: 1.25;   color: var(--navy); }
body .main-col > .form_errors p {   margin: 0;   font-family: var(--font-body);   font-size: 16px;   font-weight: 300;   line-height: 1.7;   color: #3d4a6e; }
body .main-col > form fieldset {   max-width: 560px;   margin: 0;   padding: 0;   border: 0;   min-width: 0; }
body .main-col > form legend {   padding: 0;   margin-bottom: 8px;   font-family: var(--font-head);   font-size: 26px;   font-weight: 500;   color: var(--navy); }
body .main-col > form label {   display: block;   margin: 24px 0 8px;   font-family: var(--font-body);   font-size: 14px;   font-weight: 500;   letter-spacing: .02em;   line-height: 1.4;   color: var(--navy); }
body .main-col > form fieldset > label:first-child, body .main-col > form fieldset > legend + label {   margin-top: 0; }
body .main-col > form :is(input:not([type]), input[type="text"], input[type="email"], input[type="tel"], input[type="number"], input[type="url"], input[type="password"], input[type="search"], input[type="date"], textarea, select) {   display: block;   box-sizing: border-box;   width: 100%;   margin: 0;   padding: 12px 14px;   font-family: var(--font-body);   font-size: 16px;   font-weight: 400;   line-height: 1.5;   color: var(--navy);   background-color: var(--white);   border: 1px solid rgba(44,62,107,.28);   border-radius: 2px;   box-shadow: none;   -webkit-appearance: none;   appearance: none;   transition: border-color .2s ease, box-shadow .2s ease; }
body .main-col > form textarea {   min-height: 160px;   resize: vertical; }
body .main-col > form select {   padding-right: 40px;   background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8' fill='none' stroke='%232C3E6B' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 1.5l5 5 5-5'/%3E%3C/svg%3E");   background-repeat: no-repeat;   background-position: right 14px center;   background-size: 12px 8px; }
body .main-col > form :is(input, textarea, select):hover {   border-color: rgba(44,62,107,.5); }
body .main-col > form :is(input, textarea, select):focus {   outline: none;   border-color: var(--navy);   box-shadow: 0 0 0 3px rgba(138,175,212,.45); }
body .main-col > form :is(input[type="checkbox"], input[type="radio"]) {   width: 18px;   height: 18px;   margin: 0 10px 0 0;   vertical-align: -3px;   accent-color: var(--navy); }
body .main-col > form :is(input[type="checkbox"], input[type="radio"]) + label {   display: inline;   margin: 0;   font-weight: 400; }
body .main-col > form .recaptcha {   margin-top: 28px; }
@media (max-width: 400px) {   body .main-col > form .g-recaptcha {     transform: scale(.74);     transform-origin: 0 0;     margin-bottom: -20px;   } }
body .main-col > form :is(input[type="submit"], button[type="submit"], button:not([type])) {   display: inline-block;   margin: 28px 0 0;   padding: 15px 32px;   font-family: var(--font-body);   font-size: 14.5px;   font-weight: 500;   letter-spacing: .03em;   line-height: 1.2;   color: var(--white);   background: var(--navy);   border: 0;   border-radius: 0;   cursor: pointer;   -webkit-appearance: none;   appearance: none;   transition: background-color .2s ease, color .2s ease, box-shadow .2s ease, transform .2s ease; }
body .main-col > form :is(input[type="submit"], button[type="submit"], button:not([type])):hover {   background: var(--steel);   color: var(--navy);   box-shadow: 0 10px 20px rgba(44,62,107,.25);   transform: translateY(-2px); }
body .main-col > form :is(input[type="submit"], button[type="submit"], button:not([type])):focus-visible {   outline: 2px solid var(--steel);   outline-offset: 3px; }
body.xx-respond .group-container--service {   display: flex;   flex-wrap: wrap;   gap: 28px;   margin-top: var(--section-gap-sm);   padding-left: max(var(--gutter), calc((100% - var(--content-max)) / 2));   padding-right: max(var(--gutter), calc((100% - var(--content-max)) / 2)); }
body.xx-respond .group-container--service > section.item--group {   flex: 1 1 calc(25% - 21px);   padding: 36px 26px;   border: 1px solid rgba(44,62,107,.14);   text-align: center;   box-sizing: border-box; }
@media (max-width: 900px) {   body.xx-respond .group-container--service > section.item--group {     flex: 1 1 calc(50% - 14px);   } }
@media (max-width: 767px) {   body.xx-respond .group-container--service > section.item--group {     flex: 1 1 100%;   } }
body.xx-respond .group-container--service .item--subheading {   margin-bottom: 10px; }
body .group-container--service .item--subheading .item-body {   font-size: 20px;   font-weight: 500; }
body .group-container--service .item--paragraph .item-body {   font-size: 13.5px;   line-height: 1.65;   color: #5a6688; }
body.xx-respond .group-container--service + .item--paragraph, body.xx-respond .group-container--service + .edit_opportunity + .item--paragraph {   display: block;   text-align: center;   margin-top: 12px; }
body .group-container--service + .item--paragraph .item-body, body .group-container--service + .edit_opportunity + .item--paragraph .item-body {   font-size: 14px; }
body .group-container--service + .item--paragraph .item-body a, body .group-container--service + .edit_opportunity + .item--paragraph .item-body a {   color: var(--navy);   text-decoration: none;   border-bottom: 1px solid var(--navy);   padding-bottom: 3px; }
body .group-container--service + .item--paragraph .item-body a:hover, body .group-container--service + .edit_opportunity + .item--paragraph .item-body a:hover {   color: var(--steel);   border-color: var(--steel); }
body.xx-respond .group-container--columns-2 {   display: flex;   flex-wrap: wrap;   gap: 32px;   padding-left: max(var(--gutter), calc((100% - var(--content-max)) / 2));   padding-right: max(var(--gutter), calc((100% - var(--content-max)) / 2)); }
body.xx-respond .group-container--columns-2 > section.item--group {   flex: 1 1 calc(50% - 16px);   box-sizing: border-box; }
body.xx-respond .group-container--columns-2 > section.item--group:only-of-type {   flex-grow: 0;   flex-basis: auto;   width: 100%;   max-width: var(--text-max);   margin-left: auto;   margin-right: auto; }
@media (max-width: 900px) {   body.xx-respond .group-container--columns-2 > section.item--group {     flex: 1 1 100%;   } }
body.xx-respond .group-container--quote {   margin-top: var(--section-gap); }
body.xx-respond .group-container--quote > section.item--group:first-child {   background: var(--navy);   color: var(--cream);   padding: 44px;   position: relative;   box-sizing: border-box; }
body.xx-respond .group-container--quote > section.item--group:first-child::before {   content: '';   display: block;   width: 40px;   height: 40px;   margin-bottom: 24px;   background: url('/_css/image/dove-reversed.svg') no-repeat center / contain;   opacity: .85; }
body .group-container--quote > section.item--group:first-child .item--paragraph .item-body {   font-family: var(--font-head);   font-style: italic;   font-size: 21px;   line-height: 1.5;   color: var(--cream); }
body.xx-respond .group-container--quote > section.item--group:first-child .item--paragraph:first-child + .item--paragraph, body.xx-respond .group-container--quote > section.item--group:first-child .item--paragraph:first-child + .edit_opportunity + .item--paragraph {   margin-top: 20px; }
body .group-container--quote > section.item--group:first-child .item--paragraph:first-child + .item--paragraph .item-body, body .group-container--quote > section.item--group:first-child .item--paragraph:first-child + .edit_opportunity + .item--paragraph .item-body {   font-size: 13px;   letter-spacing: .05em;   text-transform: uppercase;   color: var(--steel); }
body.xx-respond .group-container--testimonial {   background: none;   margin-top: var(--section-gap-sm);   padding-top: 0;   padding-bottom: 0;   padding-left: max(var(--gutter), calc((100% - var(--content-max)) / 2));   padding-right: max(var(--gutter), calc((100% - var(--content-max)) / 2));   display: flex;   flex-wrap: wrap;   gap: 32px; }
body.xx-respond .group-container--testimonial > section.item--group {   flex: 1 1 calc(50% - 16px);   background: var(--white);   color: inherit;   padding: 38px 34px;   box-sizing: border-box;   position: relative; }
@media (max-width: 900px) {   body.xx-respond .group-container--testimonial > section.item--group {     flex: 1 1 100%;   } }
body.xx-respond .group-container--testimonial > section.item--group::before {   content: '★★★★★';   display: block;   color: var(--steel);   font-size: 15px;   letter-spacing: .1em;   margin-bottom: 0px;   margin-left:12px; }
body .group-container--testimonial .item--paragraph .item-body {   font-family: var(--font-body);   font-style: normal;   font-size: 14.5px;   line-height: 1.75;   color: #3d4a6e; }
body .group-container--testimonial .item--paragraph:first-child + .item--paragraph .item-body, body .group-container--testimonial .item--paragraph:first-child + .edit_opportunity + .item--paragraph .item-body {   font-family: var(--font-head);   font-weight: 600;   font-size: 16px;   color: var(--navy);   text-transform: none;   letter-spacing: normal; }
body .group-container--testimonial .item--paragraph:first-child .item-body::after, body .group-container--testimonial .edit_opportunity:first-child + .item--paragraph .item-body::after {   content: 'Google review';   display: block;   margin-top: -2px;   font-family: var(--font-body);   font-weight: 400;   font-size: 12.5px;   color: var(--grey); }
body.xx-respond .group-container--section-label {   text-align: center;   margin-top: var(--section-gap);   padding: 20px 0; }
body .group-container--section-label .item--subheading .item-body {   font-size: 12.5px;   letter-spacing: .28em;   text-transform: uppercase;   color: var(--grey);   font-weight: 500; }
body.xx-respond .group-container--badge {   display: flex;   flex-wrap: wrap;   justify-content: center;   gap: 32px 0;   padding-left: max(var(--gutter), calc((100% - var(--content-max)) / 2));   padding-right: max(var(--gutter), calc((100% - var(--content-max)) / 2)); }
body.xx-respond .group-container--badge > section.item--group {   display: flex;   flex-direction: column;   align-items: center;   flex: 1 1 100%;   padding: 0 40px;   box-sizing: border-box;   position: relative; }
@media (min-width: 768px) {   body.xx-respond .group-container--badge > section.item--group {     flex: 1 1 50%;   } }
@media (min-width: 901px) {   body.xx-respond .group-container--badge {     flex-wrap: nowrap;   }
  body.xx-respond .group-container--badge > section.item--group {     flex: 1 1 0;     min-width: 0;   } }
@media (min-width: 901px) {   body.xx-respond .group-container--badge > section.item--group + section.item--group::before,   body.xx-respond .group-container--badge > section.item--group + .edit_opportunity + section.item--group::before {     content: '';     position: absolute;     left: 0;     top: 4px;     bottom: 4px;     width: 1px;     background: rgba(44,62,107,.15);   } }
body.xx-respond .group-container--badge .item--photo {   display: flex;   align-items: center;   justify-content: center;   height: 88px;   margin-bottom: 14px; }
body.xx-respond .group-container--badge .item--photo img {   max-width: min(168px, 100%);   max-height: 88px;   width: auto;   height: auto;   filter: grayscale(1) opacity(.75); }
body .group-container--badge .item--subheading .item-body h3 {   font-size: 11.5px;   letter-spacing: .06em;   text-transform: uppercase;   color: var(--grey);   font-weight: 500;   line-height: 1.5;   text-align: center; }
body .site-header {   background: var(--cream); }
body .utility-bar {   background: var(--navy);   color: var(--cream);   display: flex;   align-items: center;   justify-content: space-between;   height: 40px;   padding: 0 32px;   font-family: var(--font-body);   font-size: 13px; }
body .utility-bar a {   color: var(--cream);   text-decoration: none; }
body .utility-bar a:hover {   color: var(--steel); }
body .utility-bar-right {   display: flex;   align-items: center;   gap: 20px; }
body .header-row {   display: flex;   align-items: center;   padding: 30px 32px;   border-bottom: 1px solid rgba(44,62,107,.12); }
body .brand {   display: flex;   align-items: center;   gap: 16px;   margin-right: auto;   padding: 14px 0;   text-decoration: none; }
body .brand-text {   display: flex;   flex-direction: column;   line-height: 1.05; }
body .brand-name {   font-family: var(--font-head);   font-weight: 600;   font-size: 26px;   color: var(--navy); }
body .brand-tagline {   font-family: var(--font-head);   font-weight: 500;   font-size: 12.5px;   letter-spacing: .18em;   text-transform: uppercase;   color: var(--steel);   margin-top: 2px; }
body .primary-nav {   display: flex;   align-items: center;   gap: 0; }
body .nav-head, body .nav-foot {   display: none; }
body .nav-links {   order: 1;   display: flex;   align-items: center;   gap: 36px;   list-style: none;   margin: 0 44px 0 0;   padding: 0; }
body .nav-links a {   font-family: var(--font-body);   font-size: 14px;   letter-spacing: .03em;   color: var(--navy);   text-decoration: none;   padding-bottom: 4px;   border-bottom: 1px solid transparent; }
body .nav-links a:hover {   border-color: var(--steel); }
body .nav-links li:first-child {   display: none; }
body .nav-cta {   order: 2;   display: inline-flex;   align-items: center;   gap: 8px;   background: var(--navy);   color: var(--white);   text-decoration: none;   padding: 12px 20px;   margin-right: 36px;   font-family: var(--font-body);   font-size: 13px;   font-weight: 500;   letter-spacing: .03em;   transition: background-color .2s ease, color .2s ease, box-shadow .2s ease, transform .2s ease; }
body .nav-cta:hover {   background: var(--steel);   color: var(--navy);   box-shadow: 0 8px 16px rgba(44,62,107,.25);   transform: translateY(-2px); }
body .nav-cta-icon {   display: none;   width: 16px;   height: 16px; }
body .nav-cta-icon svg {   width: 100%;   height: 100%; }
body .nav-toggle {   display: none; }
@media (max-width: 999px) {   body .nav-cta-number {     display: none;   } }
@media (max-width: 900px) {   body .header-row {     padding: 20px 24px;   }
  body .primary-nav {     position: fixed;     top: 0;     right: 0;     height: 100%;     width: 88%;     max-width: 360px;     background: var(--cream);     box-shadow: -10px 0 28px rgba(44,62,107,.2);     z-index: 60;     display: flex;     flex-direction: column;     align-items: stretch;     padding: 26px 28px 32px;     overflow-y: auto;     transform: translateX(100%);     transition: transform .3s ease;   }
  body .primary-nav.is-open {     transform: translateX(0);   }
  body .nav-head {     display: flex;     align-items: center;     gap: 12px;     padding-bottom: 22px;     margin-bottom: 22px;     border-bottom: 1px solid rgba(44,62,107,.14);   }
  body .nav-head-brand {     display: flex;     align-items: center;     gap: 10px;     margin-right: auto;     text-decoration: none;     font-family: var(--font-head);     font-weight: 600;     font-size: 18px;     color: var(--navy);   }
  body .nav-close {     width: 34px;     height: 34px;     border: 1px solid rgba(44,62,107,.25);     background: none;     color: var(--navy);     display: flex;     align-items: center;     justify-content: center;     padding: 0;   }
  body .nav-close svg {     width: 15px;     height: 15px;   }
  body .nav-cta {     order: 0;     justify-content: center;     padding: 15px;     margin: 0 0 26px;   }
  body .nav-links {     order: 0;     flex-direction: column;     align-items: stretch;     gap: 0;     margin: 0;   }
  body .nav-links li {     border-bottom: 1px solid rgba(44,62,107,.1);   }
  body .nav-links li:first-child {     display: block;   }
  body .nav-links a {     display: block;     padding: 15px 0;     border-bottom: none;     font-size: 15.5px;   }
  body .nav-foot {     display: flex;     gap: 22px;     margin-top: 26px;     padding-top: 20px;     border-top: 1px solid rgba(44,62,107,.14);     font-family: var(--font-body);     font-size: 13px;   }
  body .nav-foot a {     color: var(--grey);     text-decoration: none;   }
  body .nav-foot a:hover {     color: var(--navy);   }
  body .nav-toggle {     display: inline-flex;     align-items: center;     justify-content: center;     width: 38px;     height: 38px;     border: 1px solid var(--navy);     background: none;     margin-left: 14px;   }
  body .nav-toggle span {     display: block;     width: 18px;     height: 1px;     background: var(--navy);     position: relative;   }
  body .nav-toggle span::before,   body .nav-toggle span::after {     content: '';     display: block;     width: 18px;     height: 1px;     background: var(--navy);     position: absolute;   }
  body .nav-toggle span::before { top: -6px; }
  body .nav-toggle span::after { top: 6px; } }
@media (max-width: 767px) {   body .utility-bar {     height: auto;     flex-wrap: wrap;     gap: 8px;     padding: 9px 20px;     font-size: 12px;   }
  body .utility-bar-right {     gap: 14px;   }
  body .brand-name {     font-size: 20px;   }
  body .brand-tagline {     font-size: 10px;     letter-spacing: .14em;   }
  body .brand img {     width: 26px;   } }
body .nav-tree {   display: none; }
@media (max-width: 900px) {   body .nav-links {     display: none;   }
  body .nav-tree {     display: block;   }
  body .nav-tree ul {     list-style: none;     margin: 0;     padding: 0;   }
  body .nav-tree li {     display: flex;     flex-wrap: wrap;     align-items: center;     margin: 0;     padding: 0;     list-style: none;   }
  body .nav-tree .item_navitem .item_navitem {     margin-left: 0;   }
  body .nav-tree a {     flex: 1 1 0;     min-width: 0;     display: block;     font-family: var(--font-body);     color: var(--navy);     text-decoration: none;   }
  body .nav-tree a:hover {     color: var(--steel);   }
  body .nav-tree a[aria-current="page"] {     font-weight: 600;   }
  body .nav-tree li > ul {     flex: 0 0 100%;   }
  
  body .nav-tree > ul > li {     border-bottom: 1px solid rgba(44,62,107,.1);   }
  body .nav-tree > ul > li > a {     padding: 15px 0;     font-size: 15.5px;   }
  
  body .nav-tree > ul > li > ul {     padding: 0 0 10px 14px;     border-left: 1px solid var(--steel);     margin-bottom: 14px;   }
  body .nav-tree > ul > li > ul > li > a {     padding: 8px 0;     font-size: 14.5px;   }
  
  body .nav-tree ul ul ul {     padding: 0 0 6px 14px;   }
  body .nav-tree ul ul ul a {     padding: 6px 0;     font-size: 13.5px;     font-weight: 300;     color: #5a6688;   }
  body .nav-tree li.hidden > a {     opacity: .5;   }
  
  body .nav-tree.is-accordion li:not(.is-expanded) > ul {     display: none;   }
  body .nav-tree-toggle {     flex: 0 0 auto;     width: 40px;     height: 40px;     margin: 0;     padding: 0;     border: 0;     background: none;     color: var(--navy);     cursor: pointer;     position: relative;   }
  
  body .nav-tree-toggle::before {     content: '';     position: absolute;     top: 50%;     left: 50%;     width: 7px;     height: 7px;     margin: -6px 0 0 -4px;     border-right: 1.5px solid currentColor;     border-bottom: 1.5px solid currentColor;     transform: rotate(45deg);     transition: transform .2s ease, margin .2s ease;   }
  body .nav-tree-toggle[aria-expanded="true"]::before {     margin-top: -2px;     transform: rotate(-135deg);   } }
body .site-footer {   background: var(--navy);   color: rgba(240,238,233,.75);   font-family: var(--font-body); }
body .footer-main {   display: flex;   gap: 56px;   padding: 84px 32px 60px;   border-top: 1px solid rgba(240,238,233,.14); }
body .footer-brand {   flex: 1.4; }
body .footer-brand img {   width: 30px;   height: auto;   margin-bottom: 20px; }
body .footer-brand-name {   font-family: var(--font-head);   font-size: 21px;   font-weight: 600;   color: var(--cream);   margin: 0; }
body .footer-brand p:not(.footer-brand-name) {   font-size: 13px;   line-height: 1.85;   margin-top: 18px;   max-width: 26em;   color: rgba(240,238,233,.65); }
body .footer-nav {   display: flex;   flex: 3;   gap: 56px; }
body .footer-col {   flex: 1; }
body .footer-col h2 {   font-family: var(--font-head);   font-size: 14px;   font-weight: 500;   letter-spacing: .1em;   text-transform: uppercase;   color: var(--cream);   margin: 0 0 26px; }
body .footer-col ul {   list-style: none;   margin: 0;   padding: 0;   display: flex;   flex-direction: column;   gap: 18px; }
body .footer-col a {   font-size: 13.5px;   line-height: 1.5;   color: rgba(240,238,233,.75);   text-decoration: none; }
body .footer-col a:hover {   color: var(--steel); }
body .footer-col address {   font-style: normal;   display: flex;   flex-direction: column;   gap: 8px;   margin: 0 0 18px; }
body .footer-bottom {   display: flex;   align-items: center;   justify-content: space-between;   flex-wrap: wrap;   gap: 12px;   padding: 38px 32px;   border-top: 1px solid rgba(240,238,233,.14);   font-size: 12px;   color: rgba(240,238,233,.55); }
body .footer-legal {   display: flex;   gap: 24px;   list-style: none;   margin: 0;   padding: 0; }
body .footer-legal a {   color: rgba(240,238,233,.55);   text-decoration: none; }
body .footer-legal a:hover {   color: var(--steel); }
body #footer_copyright {   list-style: none;   margin: 0;   padding: 0; }
body #footer_copyright li {   margin: 0;   padding: 0;   list-style: none; }
body #footer_copyright cite {   font-style: normal;   line-height: 1.6; }
body #footer_copyright a {   color: inherit;   text-decoration: none;   transition: color .2s ease; }
body #footer_copyright a:hover {   color: var(--steel); }
@media (max-width: 900px) {   body .footer-main {     flex-direction: column;     gap: 36px;     padding: 56px 24px 40px;   } }
@media (max-width: 767px) {   body .footer-nav {     flex-direction: column;     gap: 28px;   }
  body .footer-bottom {     flex-direction: column;     align-items: flex-start;     padding: 32px 20px;   } }
body.xx-respond .clickable-section {   cursor: pointer;   transition: box-shadow .2s ease, transform .2s ease; }
body.xx-respond .clickable-section:hover {   box-shadow: 0 10px 24px rgba(44,62,107,.15);   transform: translateY(-2px); }
body.xx-respond .clickable-section-source {   display: none; }