.ct-page{padding-bottom:60px}
.ct-heading{display:grid;grid-template-columns:1.12fr 1fr;align-items:end;gap:60px;padding-block:26px 40px}
.ct-heading>p{max-width:40ch;color:var(--ip-muted);font-size:17px;line-height:1.75;padding-bottom:8px}
.ct-office{display:grid;grid-template-columns:1.12fr 1fr;background:#fff;border:1px solid var(--ip-line)}
.ct-call{padding:clamp(28px,3vw,44px)}
.ct-call h2{font:400 clamp(29px,2.6vw,36px)/1.2 Georgia,'Times New Roman',serif;letter-spacing:-.035em;margin-top:18px}
.ct-office-phone{display:flex;align-items:center;gap:clamp(16px,3vw,42px);width:fit-content;min-height:64px;margin-block:20px 14px;font-size:clamp(28px,3.1vw,46px);line-height:1.2;letter-spacing:-.05em;font-variant-numeric:tabular-nums}
.ct-office-phone svg{width:30px;height:30px;transition:transform .2s}
.ct-office-phone:hover{color:var(--ip-wine)}
.ct-office-phone:hover svg{transform:translate(3px,-3px)}
.ct-call-note{font-size:14px;color:var(--ip-muted);max-width:43ch;line-height:1.8}
.ct-visit{background:var(--ip-petrol);color:#f5f6f3;padding:clamp(28px,3vw,44px)}
.ct-visit-label{font-size:13px;color:#becdce}
.ct-visit h2{font:400 clamp(29px,3vw,42px)/1.2 Georgia,'Times New Roman',serif;letter-spacing:-.035em;margin-top:20px}
.ct-visit address{margin-top:22px;font-size:18px;line-height:1.7;font-style:normal;max-width:36ch}
.ct-address-actions{display:flex;align-items:center;gap:22px;margin-top:20px;flex-wrap:wrap}
.ct-visit .ip-link{font-size:14px}
.ct-visit .ip-link:hover{color:#dfbdc5}
.ct-visit :is(a,button):focus-visible{outline-color:#fff}
.ct-copy{background:none;border:0;color:#ccd8d8;min-height:44px;padding:8px 0;font-size:12px}
.ct-copy:hover{text-decoration:underline;text-underline-offset:5px}
.ct-address-status{min-height:18px;font-size:12px;color:#ccd8d8}
.ct-team{display:grid;grid-template-columns:.7fr 1.3fr;gap:60px;padding-block:36px;border-bottom:1px solid var(--ip-line)}
.ct-section-label h2{font-size:16px;font-weight:500;line-height:1.5}
.ct-section-label p{font-size:14px;color:var(--ip-muted);line-height:1.7;margin-top:9px;max-width:29ch}
.ct-people{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.ct-person{min-width:0}
.ct-person+.ct-person{padding-left:32px;border-left:1px solid var(--ip-line)}
.ct-person h3{font-size:23px;font-weight:450;line-height:1.3;letter-spacing:-.035em}
.ct-person>p{font-size:13px;line-height:1.6;color:var(--ip-muted);margin-top:7px;min-height:22px}
.ct-person>a{display:inline-flex;align-items:center;gap:20px;min-height:44px;margin-top:18px;font-size:16px;white-space:nowrap}
.ct-person>a:hover{color:var(--ip-wine)}
.ct-person>a svg{width:18px;height:18px}
.ct-follow{display:flex;justify-content:space-between;align-items:start;gap:40px;padding-top:34px}
.ct-follow>div{min-width:0;max-width:44ch}
.ct-follow h2{font:400 28px/1.2 Georgia,'Times New Roman',serif;letter-spacing:-.035em}
.ct-follow p{margin-top:9px;font-size:14px;line-height:1.7;color:var(--ip-muted)}
.ct-follow nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;flex:0 1 490px;min-width:0}
.ct-follow nav a{display:flex;align-items:center;gap:30px;min-height:48px;padding-block:6px;border-bottom:1px solid var(--ip-line);font-size:15px}
.ct-follow nav a:hover{color:var(--ip-wine);border-color:var(--ip-wine)}
.ct-follow nav svg{width:19px;height:19px}
@media(max-width:1000px){
  .ct-heading{gap:35px}
  .ct-office{grid-template-columns:1fr 1fr}
  .ct-call,.ct-visit{padding:26px}
  .ct-office-phone{font-size:clamp(25px,3.1vw,36px);gap:16px}
  .ct-office-phone svg{width:23px;height:23px}
  .ct-team{grid-template-columns:.6fr 1.4fr;gap:28px}
  .ct-people{gap:20px}
  .ct-person+.ct-person{padding-left:20px}
  .ct-person h3{font-size:21px}
  .ct-person>a{font-size:14px;gap:9px}
  .ct-follow{gap:22px;flex-direction:column}
  .ct-follow nav{gap:20px;width:100%;flex-basis:auto}
  .ct-follow nav a{gap:16px}
}
@media(max-width:700px){
  .ct-page{padding-bottom:36px}
  .ct-heading{grid-template-columns:1fr;gap:21px;padding-block:22px 29px}
  .ct-heading>p{font-size:16px;padding:0;max-width:40ch}
  .ct-office{grid-template-columns:1fr}
  .ct-call,.ct-visit{padding:25px 22px}
  .ct-call h2,.ct-visit h2{font-size:32px;margin-top:14px}
  .ct-office-phone{font-size:clamp(27px,7.2vw,40px);gap:20px;margin-block:13px 8px}
  .ct-call-note{font-size:14px}
  .ct-visit address{font-size:16px;margin-top:17px}
  .ct-team{grid-template-columns:1fr;gap:24px;padding-block:28px}
  .ct-section-label p{max-width:none}
  .ct-people{gap:18px}
  .ct-person+.ct-person{padding-left:18px}
  .ct-person h3{font-size:21px}
  .ct-person>p{font-size:12px;min-height:39px;max-width:17ch}
  .ct-person>a{font-size:13px;gap:8px;margin-top:9px}
  .ct-person>a svg{display:none}
  .ct-follow{align-items:start;flex-direction:column;gap:20px;padding-top:28px}
  .ct-follow h2{font-size:27px}
  .ct-follow nav{width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}
  .ct-follow nav a{flex:1;justify-content:space-between}
}
@media(max-width:370px){
  .ct-call,.ct-visit{padding-inline:18px}
  .ct-office-phone{font-size:26px;gap:12px}
  .ct-people{gap:12px}
  .ct-person+.ct-person{padding-left:12px}
  .ct-person h3{font-size:19px}
  .ct-person>a{font-size:12px}
  .ct-follow nav{column-gap:14px}
  .ct-follow nav a{font-size:14px;gap:10px}
}
