/* ── KONTAKTY GRID ── */
#kontakt-grid{display:grid;grid-template-columns:1fr;gap:3rem;align-items:start}

.kontakt-title{margin-bottom:1.75rem}
.kontakt-title::before{content:'';display:block;width:40px;height:2px;background:var(--orange);border-radius:1px;margin-bottom:1rem}

/* ── INFO CARD ── */
.kontakt-card{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.4fr);background:var(--white);border-radius:var(--radius-2xl);overflow:hidden;box-shadow:0 1px 2px rgba(13,12,10,.04)}

.kontakt-card-side{background:var(--ink);padding:2.5rem;display:flex;flex-direction:column;justify-content:space-between;gap:1.5rem;position:relative;overflow:hidden}
.kontakt-card-side::before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--orange);z-index:1}
.kontakt-card-tag{font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.35)}
.kontakt-card-tag::before{content:'';display:block;width:40px;height:2px;background:var(--orange);border-radius:1px;margin-bottom:1rem}
.kontakt-card-address{font-family:'Unbounded',sans-serif;font-size:clamp(20px,2.5vw,28px);font-weight:900;color:var(--white);letter-spacing:-.03em;line-height:1.15}
.kontakt-card-hint{font-size:13px;color:rgba(255,255,255,.45);line-height:1.65;max-width:360px}
.kontakt-card-actions{display:flex;flex-direction:column;gap:.75rem;align-items:flex-start}
.kontakt-card-actions .btn{justify-content:center}
.kontakt-route-btn{color:var(--white)!important;border-color:rgba(255,255,255,.2)!important}
.kontakt-route-btn:hover{border-color:rgba(255,255,255,.45)!important;background:rgba(255,255,255,.06)!important}

.kontakt-card-body{display:flex;flex-direction:column;min-height:100%}
.kontakt-schedule-block{padding:2rem 2.25rem;display:flex;flex-direction:column;justify-content:center;min-height:100%}
.kontakt-schedule-rows{display:flex;flex-direction:column;gap:.25rem;margin-top:1rem}
.kontakt-schedule-row{display:flex;justify-content:space-between;gap:1.5rem;font-size:13px;color:var(--ink2);line-height:1.5;padding:.5rem 0;border-bottom:1px solid var(--border2)}
.kontakt-schedule-row:last-child{border-bottom:none}
.kontakt-schedule-row span:last-child{font-weight:600;color:var(--ink);white-space:nowrap}

.kontakt-label{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink2);margin-bottom:0}
.kontakt-note{margin-top:.875rem;font-size:10px;font-weight:700;color:var(--orange);text-transform:uppercase;letter-spacing:.08em}

.kontakt-messengers{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--border2)}
.kontakt-messengers-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.875rem;flex-wrap:wrap}
.kontakt-messengers-hint{font-size:11px;color:var(--ink3);letter-spacing:.02em}
.kontakt-messenger-btns{gap:.5rem}
.kontakt-messenger-btns .consult-btn{padding:9px 16px 9px 10px;font-size:11px}
.kontakt-messenger-btns .consult-btn-icon{width:30px;height:30px}
.kontakt-messenger-btns .consult-btn-icon svg{width:14px;height:14px}

/* ── BOTTOM: FORM + ASIDE ── */
.kontakt-bottom{display:grid;grid-template-columns:minmax(0,520px) 1fr;gap:2.5rem;align-items:stretch}
.kontakt-form-wrap,.kontakt-aside{display:flex;flex-direction:column;min-height:0}
.kontakt-aside{min-width:0}
.kontakt-form-wrap{max-width:none}

.kontakt-map-card{background:var(--white);border-radius:var(--radius-2xl);overflow:hidden;box-shadow:0 1px 2px rgba(13,12,10,.04);position:relative;display:flex;flex-direction:column;flex:1;min-height:0}
.kontakt-map-card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--orange);border-radius:var(--radius-sm) 0 0 var(--radius-sm);z-index:1}
.kontakt-map-card iframe{width:100%;flex:1;min-height:240px;border:none;display:block}
.kontakt-map-link{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 1.5rem;font-size:12px;font-weight:700;letter-spacing:.04em;color:var(--ink2);text-decoration:none;border-top:1px solid var(--border2);background:var(--bg);transition:color .2s,background .2s;flex-shrink:0}
.kontakt-map-link:hover{color:var(--orange);background:var(--white)}

/* ── FORM CARD ── */
.kontakt-form-card{background:var(--white);border-radius:var(--radius-2xl);padding:2rem;box-shadow:0 1px 2px rgba(13,12,10,.04);position:relative;overflow:hidden;display:flex;flex-direction:column;flex:1;min-height:0}
.kontakt-form-card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--orange);border-radius:var(--radius-sm) 0 0 var(--radius-sm)}
.kontakt-form-card form{flex:1;display:flex;flex-direction:column}
.kontakt-form-card .field{margin-bottom:1.25rem}
.kontakt-form-card .field:last-of-type{margin-bottom:0}
.kontakt-form-card form .btn{margin-top:auto}

/* ── RESPONSIVE ── */
@media(max-width:1024px){
  .kontakt-card{grid-template-columns:1fr}
  .kontakt-card-side{padding:2rem}
  .kontakt-schedule-block{padding:1.5rem 1.75rem}
  .kontakt-bottom{grid-template-columns:1fr;gap:2.5rem}
  .kontakt-form-wrap,.kontakt-aside{display:block}
  .kontakt-form-card,.kontakt-map-card{flex:none}
  .kontakt-form-card form{display:block}
  .kontakt-form-card form .btn{margin-top:0}
  .kontakt-map-card iframe{flex:none;height:300px}
}

@media(max-width:768px){
  #kontakt-grid{gap:2.5rem}
  .kontakt-card-side{padding:1.75rem 1.5rem}
  .kontakt-schedule-block{padding:1.25rem 1.5rem}
  .kontakt-form-card{padding:1.5rem}
  .kontakt-map-card iframe{height:260px}
  .kontakt-messenger-btns .consult-btn{flex:1;min-width:calc(50% - .25rem);justify-content:center}
  .section-header{flex-direction:column;gap:1rem}
  .ptable thead{display:none}
  .ptable tbody{display:block}
  .ptable tr{display:grid;grid-template-columns:82px 1fr 92px;align-items:center;gap:.4rem;padding:.85rem 0;border-bottom:1px solid var(--border)}
  .ptable td{display:block;padding:0;border-bottom:none;width:auto;min-width:0}
  .ptable td:first-child{min-width:0}
  .ptable td:nth-child(2){text-align:center}
  .ptable td:last-child{margin:0}
  .ptable td:last-child .pbtn{width:100%;min-width:0;padding:7px 4px;font-size:9px}
  .ptable .td-s{font-size:12px}
  .ptable .td-r{font-size:9px}
  .ptable .td-old{font-size:11px}
  .ptable .td-new{font-size:15px;margin-top:2px}
  .ptable .td-disc{font-size:9px;padding:1px 6px;margin-left:4px}
}

@media(max-width:480px){
  .container{padding:0 1rem}
  .h1{font-size:clamp(28px,8vw,40px)}
  .kontakt-messenger-btns .consult-btn{min-width:100%}
}
