/* v0.4.21 — isolated Contacts page on the accepted Z4 shell. */
.z4-contacts-page-v0421{padding-bottom:16px}
.z4-contacts-page-v0421 .z4-eyebrow{display:block;color:#648d40;font-size:10px;font-weight:800;letter-spacing:.17em}

.z4-contacts-hero{
  display:grid;
  grid-template-columns:minmax(0,.82fr) minmax(520px,1.18fr);
  gap:40px;
  align-items:center;
  padding:42px 0 26px;
}
.z4-contacts-hero h1{
  margin:9px 0 16px;
  max-width:570px;
  color:var(--z4-forest);
  font-size:clamp(46px,5.3vw,68px);
  line-height:.96;
  letter-spacing:-.05em;
}
.z4-contacts-hero>div:first-child>p{
  max-width:570px;
  margin:0;
  color:#566e64;
  font-size:15px;
  line-height:1.6;
}
.z4-contacts-cards{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.z4-contact-card{
  display:flex;
  align-items:center;
  gap:13px;
  min-width:0;
  min-height:92px;
  padding:14px 15px;
  border:1px solid #dfe7da;
  border-radius:18px;
  background:#fff;
  color:#30483d;
  text-decoration:none;
  box-shadow:0 8px 22px rgba(23,65,46,.035);
}
a.z4-contact-card:hover{border-color:#cad9c3;box-shadow:0 12px 28px rgba(23,65,46,.07)}
.z4-contact-card-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:38px;
  height:38px;
  flex:none;
  border-radius:50%;
  background:#eaf3e4;
  color:#5d873d;
}
.z4-contact-card-icon .z4-icon{width:19px;height:19px}
.z4-contact-card small{
  display:block;
  margin-bottom:4px;
  color:#75867e;
  font-size:9.5px;
  line-height:1.15;
  font-weight:700;
}
.z4-contact-card strong{
  display:block;
  overflow-wrap:anywhere;
  color:#30483d;
  font-size:13px;
  line-height:1.35;
}

.z4-contacts-note{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:12px;
}
.z4-contacts-note>div{
  display:flex;
  align-items:center;
  gap:12px;
  min-height:72px;
  padding:13px 16px;
  border-radius:17px;
  background:#f1f5e9;
}
.z4-contacts-note>.z4-icon{width:24px;height:24px;color:#5f8b3f;flex:none}
.z4-contacts-note span{min-width:0}
.z4-contacts-note strong{display:block;color:#30483d;font-size:12.5px}
.z4-contacts-note small{display:block;margin-top:2px;color:#72827b;font-size:10.5px}

.z4-contacts-map-section{margin-top:46px}
.z4-contacts-map-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:30px;
  align-items:end;
  margin-bottom:16px;
}
.z4-contacts-map-head h2{
  margin:7px 0 9px;
  color:var(--z4-forest);
  font-size:clamp(34px,4vw,48px);
  line-height:1;
  letter-spacing:-.04em;
}
.z4-contacts-map-head p{
  max-width:650px;
  margin:0;
  color:#5d7168;
  font-size:13.5px;
  line-height:1.55;
}
.z4-contacts-transit{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.z4-contacts-transit span{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:38px;
  padding:8px 11px;
  border:1px solid #dfe7da;
  border-radius:999px;
  background:#f8faf4;
  color:#435d50;
}
.z4-contacts-transit .z4-icon{width:15px;height:15px;color:#5f893f}
.z4-contacts-transit strong{font-size:10.5px;line-height:1.2}
.z4-contacts-map-shell{margin-top:0}

.z4-contacts-requisites{
  display:grid;
  grid-template-columns:minmax(280px,.65fr) minmax(0,1.35fr);
  gap:34px;
  align-items:start;
  margin-top:48px;
  padding:26px 28px;
  border:1px solid #e0e7da;
  border-radius:24px;
  background:#f7f8f1;
}
.z4-contacts-requisites h2{
  margin:7px 0 10px;
  color:var(--z4-forest);
  font-size:32px;
  line-height:1;
  letter-spacing:-.035em;
}
.z4-contacts-requisites-copy p{
  max-width:430px;
  margin:0;
  color:#64766e;
  font-size:12.5px;
  line-height:1.55;
}
.z4-contacts-requisites-details{
  border:1px solid #d9e3d4;
  border-radius:17px;
  background:#fff;
}
.z4-contacts-requisites-details summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  min-height:54px;
  padding:12px 15px;
  cursor:pointer;
  list-style:none;
  color:#315044;
  font-size:12.5px;
  font-weight:800;
}
.z4-contacts-requisites-details summary::-webkit-details-marker{display:none}
.z4-contacts-requisites-details summary .z4-icon{width:18px;height:18px;transition:transform .18s ease}
.z4-contacts-requisites-details[open] summary .z4-icon{transform:rotate(180deg)}
.z4-contacts-requisites-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1px;
  padding:1px;
  border-top:1px solid #e3e9df;
  background:#e3e9df;
}
.z4-contacts-requisites-grid>div{
  min-width:0;
  padding:13px 14px;
  background:#fff;
}
.z4-contacts-requisites-grid .is-wide{grid-column:1/-1}
.z4-contacts-requisites-grid small{
  display:block;
  margin-bottom:4px;
  color:#7a8881;
  font-size:9px;
  font-weight:700;
}
.z4-contacts-requisites-grid strong{
  display:block;
  overflow-wrap:anywhere;
  color:#364e43;
  font-size:11px;
  line-height:1.45;
  font-weight:700;
}

@media(max-width:1099px){
  .z4-contacts-hero{grid-template-columns:minmax(0,.75fr) minmax(470px,1.25fr);gap:26px}
  .z4-contacts-map-head{grid-template-columns:1fr}
  .z4-contacts-transit{justify-content:flex-start}
}

@media(max-width:700px){
  .z4-contacts-page-v0421 .z4-eyebrow{font-size:8.5px}
  .z4-contacts-hero{grid-template-columns:1fr;gap:18px;padding:24px 0 10px}
  .z4-contacts-hero h1{margin:6px 0 11px;font-size:38px;line-height:.98}
  .z4-contacts-hero>div:first-child>p{font-size:12.5px;line-height:1.5}
  .z4-contacts-cards{grid-template-columns:1fr 1fr;gap:8px}
  .z4-contact-card{align-items:flex-start;gap:9px;min-height:100px;padding:11px;border-radius:15px}
  .z4-contact-card-icon{width:31px;height:31px}
  .z4-contact-card-icon .z4-icon{width:15px;height:15px}
  .z4-contact-card small{font-size:8px}
  .z4-contact-card strong{font-size:10.5px;line-height:1.35}

  .z4-contacts-note{gap:8px;margin-top:8px}
  .z4-contacts-note>div{align-items:flex-start;gap:8px;min-height:76px;padding:10px;border-radius:14px}
  .z4-contacts-note>.z4-icon{width:19px;height:19px}
  .z4-contacts-note strong{font-size:10.5px}
  .z4-contacts-note small{font-size:9px;line-height:1.3}

  .z4-contacts-map-section{margin-top:30px}
  .z4-contacts-map-head{gap:11px;margin-bottom:12px}
  .z4-contacts-map-head h2{margin:5px 0 7px;font-size:29px}
  .z4-contacts-map-head p{font-size:11.5px;line-height:1.48}
  .z4-contacts-transit{display:grid;grid-template-columns:1fr 1fr;gap:6px}
  .z4-contacts-transit span{justify-content:flex-start;min-height:36px;padding:7px 8px;border-radius:12px}
  .z4-contacts-transit strong{font-size:9px}

  .z4-contacts-requisites{grid-template-columns:1fr;gap:13px;margin-top:30px;padding:17px 14px;border-radius:18px}
  .z4-contacts-requisites h2{margin:5px 0 7px;font-size:27px}
  .z4-contacts-requisites-copy p{font-size:11.5px}
  .z4-contacts-requisites-details{border-radius:14px}
  .z4-contacts-requisites-details summary{min-height:48px;font-size:11.5px}
  .z4-contacts-requisites-grid{grid-template-columns:1fr}
  .z4-contacts-requisites-grid .is-wide{grid-column:auto}
  .z4-contacts-requisites-grid small{font-size:8.5px}
  .z4-contacts-requisites-grid strong{font-size:10.5px}
}

@media(max-width:380px){
  .z4-contacts-cards{grid-template-columns:1fr}
  .z4-contacts-note{grid-template-columns:1fr}
  .z4-contacts-transit{grid-template-columns:1fr}
}
