/* Balanced contact rows and a clearer inquiry form. */
.contact{padding:48px 0;background:#f7f9fb}
.contact-grid{grid-template-columns:1.12fr .88fr;align-items:stretch;gap:36px}
.contact-info{display:flex;flex-direction:column;min-width:0}
.contact-info h2{margin:0 0 24px;max-width:100%;font-size:36px}
.contact-cards{grid-template-columns:1fr;grid-auto-rows:1fr;gap:12px;flex:1}
.contact-cards article,.contact-cards article.wide{display:flex;align-items:center;gap:20px;min-height:112px;padding:18px 22px;grid-column:auto;border:1px solid #dce8f1;border-left:4px solid #007abe;border-radius:10px}
.contact-cards article:nth-child(2){border-color:#e0e9d9;border-left-color:#608c28}
.contact-cards article:nth-child(3){border-color:#dce9e2;border-left-color:#12583d}
.contact-cards article.contact-supervision{background:#f5f0e8;border-color:#e3d6c6;border-left-color:#957650}
.contact-supervision strong{font-size:16px}
.contact-cards img{width:66px;height:58px;flex:0 0 66px;object-fit:contain;margin:0}
.contact-cards article:first-child img{object-fit:contain}
.contact-cards div{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:8px 14px;flex:1;min-width:0}
.contact-cards strong{font-size:18px;grid-column:1;grid-row:1}
.contact-cards span{font-size:13px;grid-column:1;grid-row:2;color:#486181}
.contact-cards a{font-size:13px;line-height:1.5;grid-column:2;overflow-wrap:anywhere}
.contact-cards a[href^="tel:"]{grid-row:1;font-weight:600}
.contact-cards a[href^="mailto:"]{grid-row:2}
.contact-cards a:before{display:none}
.contact-cards a:hover{text-decoration:underline;text-underline-offset:3px}
.supervision{margin:16px 0 0;padding:16px 18px;font-size:12px;line-height:1.6;font-weight:500;border:1px solid #e0e8ee;background:#fff;border-radius:8px}
.contact-form{padding:28px;border:1px solid #dce5ec;border-top:4px solid #00549a;border-radius:12px;gap:16px;box-shadow:0 12px 36px #06294d08}
.contact-form label{font-size:13px;line-height:1.4;font-weight:600}
.contact-form input,.contact-form select,.contact-form textarea{margin-top:8px;padding:12px 14px;min-height:46px;border:1px solid #cddae5;border-radius:7px;background:#f9fbfd;font-size:16px;transition:border-color .2s,box-shadow .2s,background-color .2s}
.contact-form textarea{min-height:128px}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:0;border-color:#00549a;background:#fff;box-shadow:0 0 0 3px #00549a1a}
.contact-form .button{min-height:50px;border-radius:7px;font-size:15px}
.contact-form .form-message:empty{display:none}
.contact-form .form-message{margin:0;font-size:13px;line-height:1.5;color:#486181}
@media(max-width:1199px){.contact-cards article,.contact-cards article.wide{gap:16px;padding:20px}.contact-cards div{grid-template-columns:1fr;gap:5px}.contact-cards strong,.contact-cards span,.contact-cards a,.contact-cards a[href^="tel:"],.contact-cards a[href^="mailto:"]{grid-column:auto;grid-row:auto}.contact-cards img{width:60px;flex-basis:60px}.contact-info h2{font-size:32px}}
@media(max-width:767px){.contact{padding:32px 0}.contact-grid{grid-template-columns:1fr;gap:26px}.contact-info h2{font-size:29px;margin-bottom:20px}.contact-cards article,.contact-cards article.wide{min-height:0;padding:18px;gap:16px}.contact-form{padding:22px 18px}.supervision span{padding:0 4px}}
@media(prefers-reduced-motion:reduce){.contact-form input,.contact-form select,.contact-form textarea{transition:none}}
.contact-form .form-message[data-state="error"]{color:#a13d32}
.contact-form .form-message[data-state="success"]{color:#367420}
.contact-form .button:disabled{opacity:.65;cursor:wait}
