/* MALTECHNIK – podstrona: malowanie natryskowe. Style odseparowane od reszty witryny. */
.painting-page { color: #172033; }
.painting-page .painting-shell { width: min(1140px, calc(100% - 36px)); margin: 0 auto; }
.painting-page .painting-eyebrow { color: #2b59a6; text-transform: uppercase; font-weight: 750; letter-spacing: .07em; font-size: .79rem; margin: 0 0 13px; }
.painting-page .painting-intro { font-size: 1.08rem; line-height: 1.75; color: #536178; max-width: 760px; }
.painting-page .painting-section { padding: 76px 0; }
.painting-page .painting-section--soft { background: #f4f7fc; }
.painting-page h2 { font-size: clamp(1.7rem, 2.9vw, 2.35rem); line-height: 1.2; margin: 0 0 20px; color: #16233b; }
.painting-page h3 { font-size: 1.2rem; line-height: 1.32; color: #1b2940; margin: 0 0 10px; }
.painting-page p { line-height: 1.72; }
.painting-page .painting-breadcrumb { padding: 18px 0; font-size: .86rem; color: #62718a; }
.painting-page .painting-breadcrumb a { color: #2b59a6; text-decoration: none; }
.painting-page .painting-hero { padding: 26px 0 76px; background: linear-gradient(135deg, #f3f7fd 0%, #fff 70%); }
.painting-page .painting-hero__grid { display: grid; grid-template-columns: 1.1fr .9fr; align-items: center; gap: clamp(28px, 5vw, 70px); }
.painting-page .painting-hero h1 { font-size: clamp(2.1rem, 4.1vw, 3.7rem); line-height: 1.08; margin: 0 0 22px; color: #15243d; }
.painting-page .painting-hero h1 span { color: #2b59a6; }
.painting-page .painting-hero__image { overflow: hidden; border-radius: 16px; box-shadow: 0 15px 38px rgba(25, 45, 78, .11); }
.painting-page .painting-hero__image img { display: block; width: 100%; height: min(440px, 44vw); min-height: 310px; object-fit: cover; }
.painting-page .painting-actions { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-top: 27px; }
.painting-page .painting-button { display: inline-flex; justify-content: center; align-items: center; gap: 9px; padding: 13px 22px; min-height: 48px; font-weight: 700; border-radius: 8px; text-decoration: none; border: 2px solid transparent; transition: background .2s, border-color .2s; }
.painting-page .painting-button--phone { background: #16a34a; color: #fff; border-color: #16a34a; }
.painting-page .painting-button--phone:hover { background: #15803d; color: #fff; }
.painting-page .painting-button--quote { background: #2b59a6; color: #fff; border-color: #2b59a6; }
.painting-page .painting-button--quote:hover { background: #214986; color: #fff; }
.painting-page .painting-button--outline { background: #fff; color: #2b59a6; border-color: #2b59a6; }
.painting-page .painting-button--outline:hover { background: #eaf1fc; color: #214986; }
.painting-page .painting-grid-3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; margin-top: 30px; }
.painting-page .painting-grid-2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 25px; margin-top: 30px; }
.painting-page .painting-card { background: #fff; border: 1px solid #dde5f0; border-radius: 13px; padding: 25px; min-width: 0; }
.painting-page .painting-card p { color: #56657a; margin-bottom: 0; }
.painting-page .painting-card__icon { display: inline-flex; justify-content: center; align-items: center; width: 45px; height: 45px; margin-bottom: 17px; border-radius: 10px; background: #e9f1fc; color: #2b59a6; font-size: 1.4rem; }
.painting-page .painting-list { padding-left: 22px; line-height: 1.85; color: #536178; }
.painting-page .painting-list li { padding-left: 3px; margin-bottom: 8px; }
.painting-page .painting-two-col { display: grid; grid-template-columns: 1fr 1fr; gap: 44px; align-items: start; }
.painting-page .painting-note { color: #536178; font-size: .98rem; }
.painting-page .painting-project { background: #fff; border: 1px solid #dde5f0; border-radius: 13px; overflow: hidden; }
.painting-page .painting-project img { display: block; width: 100%; aspect-ratio: 16/10; object-fit: cover; }
.painting-page .painting-project__copy { padding: 21px; }
.painting-page .painting-project__copy p { color: #596579; margin: 0 0 7px; }
.painting-page .painting-project__tag { display: block; font-size: .86rem; color: #2b59a6; font-weight: 700; }
.painting-page .painting-faq { max-width: 900px; margin: 30px auto 0; }
.painting-page .painting-faq details { background: white; border: 1px solid #dce4ef; border-radius: 10px; margin-bottom: 11px; }
.painting-page .painting-faq summary { cursor: pointer; font-weight: 700; padding: 19px 22px; color: #192b46; }
.painting-page .painting-faq details[open] summary { border-bottom: 1px solid #e3eaf3; color: #2b59a6; }
.painting-page .painting-faq p { padding: 0 22px 20px; color: #536178; margin: 16px 0 0; }
.painting-page .painting-cta { background: linear-gradient(135deg, #305fae, #234784); padding: 67px 0; text-align: center; }
.painting-page .painting-cta h2 { color: #fff; }
.painting-page .painting-cta p { max-width: 650px; margin: 0 auto; color: #eaf1ff; }
.painting-page .painting-cta .painting-actions { justify-content: center; }
.painting-page .painting-cta .painting-button--quote { border-color: #fff; }
@media (max-width: 900px) {
  .painting-page .painting-hero__grid { grid-template-columns: 1fr; }
  .painting-page .painting-hero__image img { height: 360px; min-height: 0; }
  .painting-page .painting-grid-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .painting-page .painting-section { padding: 50px 0; }
  .painting-page .painting-hero { padding-bottom: 51px; }
  .painting-page .painting-grid-2, .painting-page .painting-grid-3, .painting-page .painting-two-col { grid-template-columns: 1fr; gap: 15px; }
  .painting-page .painting-hero__image img { height: 260px; }
  .painting-page .painting-card { padding: 20px; }
  .painting-page .painting-actions .painting-button { width: 100%; }
}
