/* Locations: a photographic opening with the established ivory editorial body. */
.family-locations .location-opening{position:relative;isolation:isolate;min-height:100svh;background:#242320;color:#f8f5ef;display:flex;flex-direction:column}
.location-photo{position:absolute;inset:0;z-index:-2;overflow:hidden}.location-photo img{width:100%;height:100%;object-fit:cover;object-position:57% 50%;display:block}
.location-opening:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(12,18,17,.64),rgba(12,18,17,.10) 75%),linear-gradient(0deg,rgba(12,18,17,.55),transparent 58%,rgba(12,18,17,.23))}
.location-opening .site-header a,.location-opening .site-header summary{color:#f8f5ef}.location-opening .nav-contact{border-color:#f8f5ef80}.location-opening .site-header a:focus-visible,.location-opening .site-header summary:focus-visible{outline-color:#f8f5ef}
.family-locations .location-hero{flex:1;display:flex;flex-direction:column;justify-content:flex-end;padding:clamp(80px,12vh,180px) 5% 34px;min-height:calc(100svh - 100px);box-sizing:border-box}
.location-hero-copy{max-width:940px;padding-bottom:clamp(62px,10vh,120px)}
.location-eyebrow{font-size:12px;letter-spacing:.19em;text-transform:uppercase;margin:0 0 25px}
.family-locations .location-hero h1{font-family:BigShoulders,sans-serif;font-size:clamp(76px,8.9vw,148px);font-weight:700;letter-spacing:-.035em;line-height:.99;margin:0 0 28px;color:#f8f5ef;max-width:none}
.location-deck{font-size:clamp(19px,1.65vw,25px);line-height:1.5;margin:0;color:#f8f5ef}
.location-hero-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:12px;letter-spacing:.02em}.location-hero-bottom a{display:flex;gap:25px;align-items:center;min-height:44px;color:inherit}.location-hero-bottom a:focus-visible{outline:2px solid currentColor;outline-offset:5px}
.location-body{padding:0 5%;max-width:1800px;margin:auto}.location-body section{padding:clamp(70px,8vw,128px) 0}
.location-body h2{font-family:BigShoulders,sans-serif;font-size:clamp(50px,5vw,78px);font-weight:700;line-height:1.03;letter-spacing:-.02em;margin:20px 0 32px}
.location-intro,.location-faq{display:grid;grid-template-columns:1fr 1fr;gap:8%}.location-working-copy>p{font-size:18px;line-height:1.7;margin:0 0 24px;max-width:52ch;color:#696960}.location-working-copy .location-lead{font-size:clamp(23px,2.1vw,31px);line-height:1.45;color:#242320}
.location-facts{margin:36px 0 0}.location-facts>div{display:grid;grid-template-columns:1fr 1.65fr;gap:24px;padding:23px 0;border-top:1px solid #d8d5cc}.location-facts dt{font-size:16px;font-weight:500}.location-facts dd{margin:0;font-size:15px;line-height:1.6;color:#696960}
.location-body .location-industries{padding-top:15px}.location-section-top{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:end;margin-bottom:32px}.location-section-top h2{margin-bottom:0}.location-section-top>p{font-size:19px;line-height:1.6;max-width:39ch;color:#696960;margin:0 0 5px}
.location-industry-links>a{display:grid;grid-template-columns:45px 1.2fr 1fr 30px;align-items:center;gap:24px;padding:28px 0;border-top:1px solid #d8d5cc;text-decoration:none;color:#242320;transition:color .2s}.location-industry-links>a:last-child{border-bottom:1px solid #d8d5cc}.location-industry-links>a:hover{color:#536b48}.location-industry-links>a:focus-visible{outline:2px solid #536b48;outline-offset:5px}.location-num{font-size:11px;letter-spacing:.1em;color:#536b48}.location-industry-links h3{font-family:Satoshi,sans-serif;font-size:clamp(23px,2.5vw,35px);line-height:1.25;font-weight:400;margin:0}.location-industry-desc{font-size:16px;color:#696960}.location-industry-links>a>span:last-child{font-size:25px;text-align:right}
.location-body .location-faq{padding-top:10px}.location-faq .engagement-rows{padding-top:22px}.location-faq summary{font-size:19px}.location-faq details p{font-size:16px;line-height:1.7}
@media(min-width:1800px){.location-body{padding-inline:90px}}
@media(max-width:760px){
.location-opening .site-header .mobile-navigation nav a{color:#242320}.location-opening .site-header .mobile-navigation nav a:focus-visible{outline-color:#536b48}
.family-locations .location-hero{min-height:calc(100svh - 80px);padding:95px 6% 22px}.family-locations .location-hero h1{font-size:clamp(57px,13.5vw,98px);line-height:1.02;letter-spacing:-.025em}.location-eyebrow{font-size:10px;margin-bottom:22px}.location-deck{font-size:19px}.location-hero-copy{padding-bottom:70px}.location-photo img{object-position:63% 50%}.location-opening:after{background:linear-gradient(0deg,rgba(12,18,17,.78),rgba(12,18,17,.32) 70%,rgba(12,18,17,.4))}.location-hero-bottom{font-size:10px;gap:12px}.location-hero-bottom>span{max-width:22ch;line-height:1.6}.location-hero-bottom a{font-size:12px;gap:14px}
.location-body{padding:0 6%}.location-body section{padding:64px 0}.location-body h2{font-size:clamp(45px,11vw,65px);margin:16px 0 26px}.location-intro,.location-faq,.location-section-top{grid-template-columns:1fr;gap:34px}.location-working-copy>p{font-size:16px}.location-working-copy .location-lead{font-size:24px}.location-facts>div{grid-template-columns:1fr;gap:8px;padding:20px 0}.location-facts dd{max-width:42ch}.location-section-top{gap:25px}.location-section-top>p{font-size:17px}.location-industry-links>a{grid-template-columns:25px 1fr 22px;gap:12px;padding:23px 0}.location-industry-links h3{font-size:25px}.location-industry-desc{grid-column:2;grid-row:2;font-size:13px}.location-industry-links>a>span:last-child{grid-column:3;grid-row:1 / 3}.location-body .location-faq{padding-top:5px;gap:0}.location-faq .engagement-rows{padding-top:0}.location-faq summary{font-size:17px}
}
@media(prefers-reduced-motion:reduce){.location-industry-links>a{transition:none}}

@media (min-width:761px) and (max-width:900px){
 .location-intro,.location-faq,.location-section-top{grid-template-columns:1fr;gap:30px}
 .location-working-copy>p{max-width:60ch}
}
