:root{color-scheme:light;--ivory:#faf9f6;--navy:#182952;--blue:#2163a9;--cyan:#00add8;--ink:#57616f;--line:#d4d8df;--serif:Georgia,'Times New Roman',serif;--sans:-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:1.5rem}
body{margin:0;background:var(--ivory);color:var(--navy);font-family:var(--sans);font-size:1rem;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:focus-visible{outline:3px solid var(--blue);outline-offset:6px}
.wrap{width:min(100% - 7rem,1280px);margin-inline:auto}
.skip{position:absolute;top:.75rem;left:.75rem;z-index:10;padding:.8rem 1rem;background:var(--navy);color:white;transform:translateY(-160%)}
.skip:focus{transform:translateY(0)}
.header{display:flex;align-items:center;justify-content:space-between;padding-block:1.8rem 1.4rem;position:relative;z-index:1}
.brand{display:block;width:210px;flex-shrink:0}
.brand svg{display:block;width:100%;height:auto;aspect-ratio:885/250}
.brand>span{display:block;font-size:.75rem;letter-spacing:.12em;margin-top:.4rem;text-align:center;color:#4e5969}
.community-nav{font-size:.875rem;padding-block:.65rem;border-bottom:1px solid #8b96a8;transition:color .2s,border-color .2s}
.community-nav:hover{color:var(--blue);border-color:var(--blue)}
.gateway{display:grid;grid-template-columns:1.02fr 1fr;position:relative;padding-top:1.6rem;padding-bottom:4.2rem}
.introduction{grid-column:1;grid-row:1;position:relative;z-index:1;padding-block:2.8rem 3.4rem}
.eyebrow{margin:0 0 1.7rem;font-size:.75rem;font-weight:600;letter-spacing:.15em;line-height:1.65}
.eyebrow span{margin-inline:.45rem;color:var(--blue)}
h1{font-family:var(--serif);font-weight:400;font-size:clamp(2.6rem,4.45vw,4.5rem);letter-spacing:-.048em;line-height:1.08;margin:0 0 1.4rem}
.lead{color:var(--ink);font-size:1.05rem;line-height:1.65;margin:0}
.art{grid-column:2;grid-row:1;display:flex;align-items:center;justify-content:center;min-width:0;position:relative;isolation:isolate}
.art img{display:block;width:113%;max-width:none;height:auto;mix-blend-mode:multiply;position:relative;left:.5rem}
.companies{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);position:relative;z-index:1}
.company{padding:1.65rem 1.9rem .2rem;position:relative;transition:color .2s}
.company:first-child{padding-left:0}
.company:last-child{padding-right:0}
.company+.company:before{content:'';position:absolute;left:0;top:1.8rem;bottom:.25rem;width:1px;background:var(--line)}
.audience{display:block;font-size:.875rem;font-weight:600;letter-spacing:.015em;color:var(--blue);margin-bottom:.8rem}
.company h2{font-family:var(--serif);font-weight:400;letter-spacing:-.025em;line-height:1.2;font-size:clamp(1.3rem,1.9vw,1.75rem);margin:0 0 .65rem}
.company p{margin:0 0 1.1rem;font-size:.9375rem;line-height:1.55;color:var(--ink)}
.visit{display:inline-block;font-size:.875rem;line-height:1.6;border-bottom:1px solid #aab2bf;padding-bottom:.2rem;transition:color .2s,border-color .2s}
.company:hover h2,.company:hover .visit{color:var(--blue)}
.company:hover .visit{border-color:var(--blue)}
.community{background:var(--navy);color:var(--ivory);position:relative}
.community:before{content:'';display:block;position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--cyan)}
.community-inner{display:grid;grid-template-columns:1.02fr 1fr;column-gap:2rem;padding-block:4.9rem 5.1rem}
.community .eyebrow{color:#bfcce1;margin-bottom:1.8rem}
.community h2{font-family:var(--serif);font-size:clamp(2.5rem,4vw,3.9rem);letter-spacing:-.04em;line-height:1.08;font-weight:400;margin:0}
.community-content{padding-top:.1rem}
.community-statement{font-family:var(--serif);font-size:clamp(1.5rem,2.25vw,2rem);letter-spacing:-.02em;line-height:1.45;margin:0 0 1.15rem}
.community-description{color:#c9d3e4;font-size:1rem;line-height:1.65;max-width:27rem;margin:0 0 1.4rem}
.community-link{font-size:.9375rem;line-height:1.5;padding-bottom:.35rem;border-bottom:1px solid #8292b0;display:inline-block;transition:border-color .2s,color .2s}
.community-link:hover{color:#87d7f1;border-color:#87d7f1}
.community a:focus-visible{outline-color:#87d7f1}
.footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:1.5rem;color:#5d6674;font-size:.75rem;line-height:1.6}
@media(min-width:1600px){.gateway{padding-top:2.6rem}.introduction{padding-block:3.7rem 4.5rem}}
@media(max-width:1050px){.wrap{width:calc(100% - 4rem)}.brand{width:185px}.gateway{padding-top:1.2rem;padding-bottom:3rem}.introduction{padding-block:2rem 3rem}.art img{width:112%;left:0}.company{padding-inline:1.25rem}.company p{font-size:.875rem}.community-inner{padding-block:3.7rem;gap:2rem}}
@media(max-width:720px){.wrap{width:calc(100% - 2.5rem)}.header{padding-block:1.15rem 1rem;align-items:center}.brand{width:161px}.brand>span{font-size:.75rem;letter-spacing:.04em;margin-top:.3rem}.community-nav{max-width:7.5rem;text-align:right;font-size:.75rem;line-height:1.4;padding-block:.3rem;border-bottom:0}.gateway{grid-template-columns:1fr;padding-top:0;padding-bottom:0}.introduction{grid-column:1;grid-row:1;padding-block:1.7rem 1.75rem}.eyebrow{font-size:.75rem;letter-spacing:.13em;margin-bottom:1.2rem}.eyebrow span{margin-inline:.3rem}h1{font-size:clamp(2.4rem,8.5vw,3.75rem);letter-spacing:-.045em;margin-bottom:1.1rem}.lead{font-size:.9375rem;line-height:1.5}.lead br{display:none}.companies{grid-template-columns:1fr;grid-row:2}.company,.company:first-child,.company:last-child{display:grid;grid-template-columns:1fr auto;gap:.25rem .5rem;padding:1.05rem 0 1.1rem;border-bottom:1px solid var(--line)}.audience{grid-column:1;font-size:.8125rem;margin:0 0 .15rem}.company h2{grid-column:1;font-size:1.4rem;line-height:1.2;margin:0}.company p{display:none}.visit{grid-column:2;grid-row:1/3;align-self:center;font-size:.75rem;max-width:8rem;overflow-wrap:anywhere;line-height:1.6}.company+.company:before{display:none}.art{grid-column:1;grid-row:3;margin:1rem 0 1.4rem;overflow:hidden}.art img{width:100%;left:0}.community-inner{grid-template-columns:1fr;padding-block:3rem;gap:2.1rem}.community .eyebrow{margin-bottom:1.2rem}.community h2{font-size:2.7rem}.community-statement{font-size:1.65rem;line-height:1.45}.community-description{font-size:.9375rem;max-width:27rem}.community-link{font-size:.875rem}.footer{font-size:.75rem;align-items:flex-start;padding-block:1.2rem;gap:.8rem}.footer span:first-child{max-width:11rem}.footer span:last-child{white-space:nowrap}}
@media(max-width:360px){.wrap{width:calc(100% - 2rem)}.brand{width:147px}.community-nav{max-width:6.6rem}.company h2{font-size:1.27rem}.visit{max-width:7.4rem;font-size:.75rem}.audience{font-size:.75rem}h1{font-size:2.1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Keep the gateway readable when text is enlarged. */
.art{overflow:hidden}
.company p{font-size:1rem}
@media(max-width:720px){
  .company,.company:first-child,.company:last-child{grid-template-columns:minmax(0,1fr);padding-block:.85rem .95rem;gap:.1rem}
  .audience{font-size:.875rem}
  .company h2{font-size:1.5rem}
  .visit{grid-column:1;grid-row:3;justify-self:start;max-width:100%;font-size:.875rem;margin-top:.3rem}
  .lead{font-size:1rem}
  .community-description{font-size:1rem}
}
@media(max-width:360px){.company h2{font-size:1.4rem}.audience,.visit{font-size:.875rem}}
