/* A fourth page in the atlas, with the same single-screen presentation. */
.contact-view{padding:clamp(20px,4vh,56px) clamp(24px,6vw,100px);background:radial-gradient(ellipse at 12% 50%,#22474b88,transparent 66%)}
.contact-layout{height:100%;width:min(1160px,100%);margin:auto;display:grid;grid-template-columns:.95fr 1.15fr;align-items:center;gap:clamp(30px,6vw,90px)}
.contact-intro,.contact-details,.contact-block{min-width:0}
.contact-agency{font-size:1rem;letter-spacing:.12em;margin:0 0 1.5rem;color:var(--gold)}
.contact-agency span{font:italic 1.8rem AtlasDisplay,Georgia,serif;letter-spacing:0;margin-left:.4rem}
.contact-intro h1{font:400 clamp(2.1rem,3.7vw,3.8rem)/1.12 AtlasDisplay,Georgia,serif;letter-spacing:.035em;margin:0 0 1.25rem}
.contact-invitation{font-size:1rem;line-height:1.7;color:var(--muted);max-width:32ch;margin:0 0 2.25rem}
.contact-direct{display:grid;gap:1.35rem}
.contact-direct>a{display:flex;flex-direction:column;align-items:flex-start;gap:.4rem;line-height:1.3;font-size:clamp(1.1rem,1.6vw,1.45rem);width:fit-content;max-width:100%;overflow-wrap:anywhere}
.contact-label,.contact-block h2{font:400 .875rem/1.4 AtlasSans,Arial,sans-serif;letter-spacing:.08em;color:var(--gold)}
.contact-label{font-size:.75rem}
.contact-details{display:grid;grid-template-columns:1.15fr 1fr;gap:2.5rem 2rem;align-content:center}
.contact-block{border-top:1px solid #dbc19655;padding-top:1.25rem}
.contact-block h2{margin:0 0 1rem}
.contact-block address{font-style:normal;font-size:1rem;line-height:1.65}
.contact-link{display:inline-block;margin-top:.85rem;border-bottom:1px solid #dbc19688;padding-bottom:.2rem;color:var(--gold);font-size:.875rem;line-height:1.5}
.contact-hours{margin:0;font-size:1rem;line-height:1.5}
.contact-hours>div+div{margin-top:.7rem}
.contact-hours dt{color:var(--muted)}
.contact-hours dd{margin:0}
.contact-websites{display:grid;gap:.8rem;font-size:1rem;line-height:1.4}
.contact-websites a{overflow-wrap:anywhere}
.contact-socials{display:grid;grid-template-columns:1fr 1fr;gap:.8rem 1rem;font-size:.875rem;line-height:1.6}
.contact-direct a:hover,.contact-websites a:hover,.contact-socials a:hover{color:var(--gold);text-decoration:underline;text-underline-offset:.25em}
.contact-link:hover{color:var(--paper)}
@media(max-width:1050px){
  .masthead{gap:10px}
  .masthead nav{gap:18px;margin-right:4px;font-size:.875rem}
  .contact-view{padding:24px 4vw}
  .contact-layout{gap:30px;grid-template-columns:.9fr 1.2fr}
  .contact-details{gap:1.7rem 1.2rem}
  .contact-block h2{font-size:.8rem}
}
@media(max-width:760px) and (orientation:portrait){
  .masthead nav{gap:12px;justify-content:space-between;font-size:.875rem;margin:0}
  .contact-view{padding:clamp(14px,3vh,28px) 20px}
  .contact-layout{display:flex;flex-direction:column;justify-content:center;align-items:stretch;gap:clamp(20px,4vh,36px);max-width:500px}
  .contact-agency{font-size:.875rem;margin:0 0 .5rem}
  .contact-agency span{font-size:1.45rem}
  .contact-intro h1{font-size:2rem;margin:0 0 .8rem}
  .contact-invitation{display:none}
  .contact-direct{gap:.6rem}
  .contact-direct>a{font-size:1.1rem;display:grid;grid-template-columns:70px 1fr;gap:10px;align-items:baseline;width:100%}
  .contact-label{font-size:.75rem;letter-spacing:.06em}
  .contact-details{gap:1.2rem 1rem;grid-template-columns:1.1fr 1fr}
  .contact-block{padding-top:.7rem}
  .contact-block h2{font-size:.75rem;letter-spacing:.04em;margin:0 0 .65rem}
  .contact-block address,.contact-hours,.contact-websites{font-size:1rem;line-height:1.5}
  .contact-hours>div+div{margin-top:.4rem}
  .contact-link{margin-top:.5rem;font-size:.875rem}
  .contact-websites{gap:.6rem}
  .contact-socials{gap:.6rem .75rem;font-size:.875rem}
}
@media(max-height:700px) and (orientation:portrait){
  .contact-view{padding-top:12px;padding-bottom:12px}
  .contact-layout{gap:20px}
  .contact-details{gap:1rem .75rem}
  .contact-agency{margin-bottom:.3rem}
  .contact-intro h1{font-size:1.8rem;margin-bottom:.6rem}
}
@media(max-width:760px) and (max-height:620px) and (orientation:portrait){
  .contact-layout{gap:12px}
  .contact-agency{margin:0}
  .contact-intro h1{font-size:1.7rem;margin-bottom:.45rem}
  .contact-direct{gap:.4rem}
  .contact-details{gap:.75rem}
  .contact-block{padding-top:.5rem}
  .contact-block h2{margin-bottom:.4rem}
  .contact-block address,.contact-hours,.contact-websites{font-size:.875rem;line-height:1.45}
  .contact-hours>div+div{margin-top:.25rem}
}
@media(max-height:640px) and (orientation:landscape){
  .contact-view{padding:14px 4vw}
  .contact-layout{gap:26px;grid-template-columns:.85fr 1.3fr}
  .contact-agency{font-size:.875rem;margin-bottom:.7rem}
  .contact-agency span{font-size:1.4rem}
  .contact-intro h1{font-size:2rem;margin-bottom:.6rem}
  .contact-invitation{display:none}
  .contact-direct{gap:.8rem}
  .contact-direct>a{font-size:1rem;gap:.2rem}
  .contact-details{gap:1rem 1.25rem}
  .contact-block{padding-top:.55rem}
  .contact-block h2{font-size:.75rem;margin-bottom:.4rem}
  .contact-block address,.contact-hours,.contact-websites,.contact-socials{font-size:.875rem;line-height:1.35}
  .contact-hours>div+div{margin-top:.35rem}
  .contact-link{font-size:.875rem;margin-top:.35rem}
  .contact-websites,.contact-socials{gap:.5rem}
  .masthead nav{gap:14px;font-size:.75rem;margin:0 0 0 auto}
  .sound-button span{display:none}
  .sound-button{padding:5px 9px}
}
/* Keep enlarged text and unusually small windows reachable. */
@media(max-height:540px) and (orientation:portrait),(max-height:340px) and (orientation:landscape){
  .contact-view{overflow-y:auto}
  .contact-layout{height:auto;min-height:100%}
}
