/* Gliniany Zdrój – contact.css: strona „Kontakt” i formularz Contact Form 7. Pełna szerokość kontenera strony (--maxw), szersza niż strony tekstowe. */
.gz-contact-page main .wrap{max-width:var(--maxw)}
.gz-contact-page .page-head h1{font-size:clamp(30px,4vw,44px)}
.page-head__lead{margin:10px 0 0;max-width:40rem;color:var(--text-2);font-size:18px}
.gz-contact__intro{max-width:none;margin-bottom:24px;font-size:18px;color:var(--text-2)}
.gz-contact__intro>*+*{margin-top:1em}
.gz-contact{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(20px,3vw,40px);align-items:start}
.gz-contact__info{display:grid;gap:12px}
.gz-contact__card{display:flex;gap:14px;align-items:flex-start;padding:18px;border:1px solid var(--line);border-radius:var(--radius-lg);background:#fff}
.gz-contact__ico{flex:0 0 auto;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--accent-soft);color:var(--accent-dark)}
.gz-contact__card div{display:grid;gap:2px;min-width:0}
.gz-contact__card small{color:var(--muted);font-size:14px}
.gz-contact__card span{color:var(--text-2);font-size:15px}
.gz-contact__big{font:600 20px var(--font-head);color:var(--text);text-decoration:none;overflow-wrap:anywhere}
.gz-contact__big:hover{color:var(--accent);text-decoration:underline}
.gz-contact__legal{color:var(--muted)!important;font-size:14px!important}
.gz-contact__form{padding:clamp(20px,3vw,32px);border:1px solid var(--line);border-radius:var(--radius-lg);background:#fff}
.gz-contact__form h2{font:600 clamp(24px,2.8vw,30px)/1.2 var(--font-head);margin:0 0 18px}
.gz-contact__notes{max-width:none;margin-top:24px;color:var(--text-2)}
/* formularz CF7 */
.gz-contact__form .wpcf7-form{display:grid;gap:16px;margin:0}
.gz-contact__form .wpcf7-form>p,.gz-contact__form .gz-cf p{margin:0}
.gz-contact__form .gz-cf{display:grid;gap:16px}
.gz-contact__form .gz-cf__2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.gz-contact__form label{display:block;margin:0 0 6px;font-weight:600}
.gz-contact__form label small{font-weight:400;color:var(--muted)}
.gz-contact__form .req{color:var(--accent)}
.gz-contact__form .wpcf7-form-control-wrap{display:block}
.gz-contact__form input[type=text],.gz-contact__form input[type=email],.gz-contact__form input[type=tel],.gz-contact__form select,.gz-contact__form textarea{width:100%;min-height:50px;padding:10px 14px;border:1.5px solid var(--line-strong);border-radius:var(--radius);background:#fff;font-size:17px;color:var(--text)}
.gz-contact__form textarea{min-height:150px;resize:vertical}
.gz-contact__form input:focus,.gz-contact__form select:focus,.gz-contact__form textarea:focus{outline:0;border-color:var(--text);box-shadow:0 0 0 3px var(--accent-soft)}
.gz-contact__form .wpcf7-not-valid{border-color:var(--accent)}
.gz-contact__form .wpcf7-not-valid-tip{display:block;margin-top:4px;color:var(--accent-dark);font-size:15px}
.gz-contact__form .gz-cf__info{color:var(--muted);font-size:15px}
.gz-contact__form .wpcf7-acceptance .wpcf7-list-item{margin:0}
.gz-contact__form .wpcf7-acceptance label{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:15px;color:var(--text-2)}
.gz-contact__form .wpcf7-acceptance input{margin-top:4px;width:20px;height:20px;accent-color:var(--accent)}
.gz-contact__form input[type=submit]{width:auto;min-height:52px;padding:0 32px;border:0;border-radius:var(--radius);background:var(--accent);color:#fff;font:600 17px var(--font-body);cursor:pointer}
.gz-contact__form input[type=submit]:hover{background:var(--accent-dark)}
.gz-contact__form .wpcf7-spinner{margin:0 0 0 12px;vertical-align:middle}
.gz-contact__form .wpcf7-response-output{margin:4px 0 0!important;padding:14px 16px!important;border:1.5px solid var(--line-strong)!important;border-radius:var(--radius);background:var(--bg-soft);color:var(--text)}
.gz-contact__form .wpcf7 form.sent .wpcf7-response-output{border-color:var(--sage)!important;background:var(--green-soft);color:var(--green-dark)}
.gz-contact__form .wpcf7 form.invalid .wpcf7-response-output,.gz-contact__form .wpcf7 form.failed .wpcf7-response-output,.gz-contact__form .wpcf7 form.spam .wpcf7-response-output{border-color:var(--accent-light)!important;background:var(--accent-soft)}
/* pułapka na boty – poza ekranem */
.gz-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
@media (max-width:759px){
  .gz-contact{grid-template-columns:1fr}
  .gz-contact__form .gz-cf__2{grid-template-columns:1fr}
  .gz-contact__form input[type=submit]{width:100%}
}
.gz-contact__form .gz-cf br{display:none}
.gz-contact__form .gz-cf label{margin-bottom:6px}
/* rozszerzenia: link do mapy, social, „w czym pomóc”, FAQ */
.gz-contact__link{margin-top:6px;color:var(--accent-dark);font-weight:600;font-size:15px;text-decoration:none}
.gz-contact__link:hover{text-decoration:underline}
.gz-contact__social{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;padding:4px 4px 0}
.gz-contact__social small{flex:1 1 100%;color:var(--muted);font-size:14px}
.gz-contact__social a{padding:6px 14px;border:1.5px solid var(--line-strong);border-radius:999px;color:var(--text);font-weight:600;font-size:15px;text-decoration:none}
.gz-contact__social a:hover{background:var(--bg-hover)}
.gz-contact__section{margin-top:clamp(32px,5vw,56px)}
.gz-contact__section h2{font:600 clamp(24px,2.8vw,30px)/1.2 var(--font-head);margin:0 0 16px}
.gz-contact__help{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.gz-contact__help a{display:grid;gap:6px;align-content:start;height:100%;padding:18px 20px;border:1px solid var(--line);border-radius:var(--radius-lg);background:#fff;color:var(--text);text-decoration:none;transition:border-color .15s,box-shadow .15s}
.gz-contact__help a:hover{border-color:var(--line-strong);box-shadow:0 4px 14px rgba(43,36,32,.06)}
.gz-contact__help b{font:600 19px var(--font-head)}
.gz-contact__help span{color:var(--text-2);font-size:16px}
.gz-contact__help em{margin-top:4px;color:var(--accent-dark);font:600 15px var(--font-body);font-style:normal}
.gz-faq{display:grid;gap:10px}
.gz-faq details{border:1px solid var(--line);border-radius:var(--radius-lg);background:#fff}
.gz-faq summary{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;font-weight:600;font-size:18px;cursor:pointer;list-style:none}
.gz-faq summary::-webkit-details-marker{display:none}
.gz-faq summary::after{content:"+";flex:0 0 auto;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--accent-soft);color:var(--accent-dark);font-size:20px;line-height:1}
.gz-faq details[open] summary::after{content:"−"}
.gz-faq p{margin:0;padding:0 20px 18px;color:var(--text-2)}
@media (min-width:1100px){
  .gz-contact__help{grid-template-columns:repeat(4,minmax(0,1fr))}
  .gz-faq{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
}
@media (max-width:759px){
  .gz-contact__help{grid-template-columns:1fr}
}
