.sp-serwis-site { line-height: 1.65; }
.sp-serwis-site h1, .sp-serwis-site h2, .sp-serwis-site h3 { letter-spacing: 0; }
.sp-serwis-site h1 { font-size: 3rem; }
.sp-serwis-site h2 { font-size: 2.2rem; }
.sp-serwis-site h3 { font-size: 1.25rem; }
.sp-serwis-site .hero-copy h1 { font-size: 3.5rem; margin-bottom: 16px; }
.sp-serwis-site .hero-copy .lead { font-size: 1.1rem; }
.sp-serwis-site .hero-logo { margin: 0 0 24px; }
.hero-logo img { width: 100%; height: auto; }
.wp-block-group.section, .wp-block-group.page-hero, .wp-block-group.hero { margin-block: 0; }
.wp-block-group.container > :first-child { margin-top: 0; }
.wp-block-group.container > :last-child { margin-bottom: 0; }
.page-content > .wp-block-group { max-width: none; }
.page-content .hero-inner { min-height: 460px; padding-block: 32px; }
.page-content .hero-logo { max-width: 160px; margin-bottom: 14px; }
.page-content .two-column > .wp-block-group { min-width: 0; }
.page-content .hero-stats { margin: 0; }
.page-content .wp-block-buttons { margin-top: 22px; gap: 12px; }
.page-content .wp-block-button__link { border: 1px solid transparent; border-radius: 6px; padding: 12px 20px; font-weight: 800; background: var(--blue-700); color: #fff; text-decoration: none; }
.page-content .sp-button-secondary .wp-block-button__link { border-color: var(--line); background: #fff; color: var(--blue-900); }
.page-content .wp-block-button__link:hover { background: var(--blue-800); color: #fff; }
.feature-card.wp-block-group { display: flex; flex-direction: column; }
.feature-card.wp-block-group .wp-block-buttons { margin-top: auto; padding-top: 16px; }
.service-card ul { padding-left: 20px; line-height: 1.8; }
.process-step .step-number { color: var(--blue-700); font-size: 1.15rem; font-weight: 850; }
.nav-links, .footer-links { display: flex; align-items: center; gap: 8px; margin: 0; padding: 0; list-style: none; }
.site-nav .current-menu-item > a, .site-nav .current_page_item > a { background: var(--soft); color: var(--blue-800); }
.header-tools { display: flex; flex: 0 0 auto; align-items: center; gap: 12px; }
.header-phone { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 42px; padding: 0 14px; border: 1px solid var(--blue-700); border-radius: 6px; color: var(--blue-800); background: #fff; font-size: .9rem; font-weight: 800; text-decoration: none; }
.header-phone:hover { color: #fff; background: var(--blue-700); }
.header-tool { position: relative; display: grid; place-items: center; width: 42px; height: 42px; border: 1px solid var(--line); border-radius: 6px; color: var(--blue-800); text-decoration: none; }
.cart-badge { position: absolute; top: -8px; right: -6px; display: grid; place-items: center; min-width: 20px; height: 20px; padding-inline: 4px; border-radius: 10px; background: var(--blue-700); color: #fff; font-size: 11px; font-weight: 800; }
.wp-custom-logo .brand img { width: auto; max-width: 190px; height: 42px; object-fit: contain; }
.standard-content { padding-block: 42px; overflow-wrap: anywhere; }
.standard-content .wp-block-image img { height: auto; }
.standard-content p { max-width: 76ch; }
.standard-content .woocommerce p { max-width: none; }
.sp-contact-form { min-width: 0; }
.sp-contact-form textarea { line-height: 1.6; }
.sp-contact-form .form-inquiry h3 { font-size: 1rem; }
.sp-contact-form .cart-list { max-height: 460px; overflow: auto; }
.sp-contact-form button:disabled { opacity: .65; cursor: wait; }
.inquiry-quantity { display: flex; gap: 10px; align-items: center; font-size: .85rem; color: var(--muted); }
.inquiry-quantity input { width: 76px; min-height: 36px; padding: 5px 8px; }
.sp-notice { padding: 16px 0; border-bottom: 1px solid var(--line); color: #08714d; }
.sp-account-inquiry { padding-block: 20px; border-bottom: 1px solid var(--line); }
.sp-account-inquiry h3 { margin-bottom: 8px; }
.map-card iframe { width: 100%; height: 100%; border: 0; }
.site-footer { padding-block: 20px; }
.site-footer p { margin: 0; }
.footer-links { gap: 16px; flex-wrap: wrap; }
.comments-area { margin-top: 36px; }
.comment-list { padding-left: 22px; }
.post-entry { padding-block: 20px; border-bottom: 1px solid var(--line); }
body.admin-bar .site-header { top: 32px; }
@media (max-width:1100px) {
  .nav-links { gap: 0; }
  .site-nav a { padding-inline: 9px; font-size: .88rem; }
  .header-phone span { display: none; }
}
@media (max-width:980px) {
  .nav-links { flex-direction: column; align-items: stretch; width: 100%; }
  .site-nav a { display: block; padding: 12px 16px; font-size: 1rem; }
  .header-tools { margin-left: auto; }
  .header-tool { width: 38px; height: 38px; }
  .page-content .hero-inner { min-height: 0; }
  body.admin-bar .site-nav { top: calc(var(--header-height) + 32px); }
}
@media (max-width:782px) { body.admin-bar .site-header { top: 46px; } body.admin-bar .site-nav { top: calc(var(--header-height) + 46px); } }
@media (max-width:600px) {
  .sp-serwis-site h1, .sp-serwis-site .hero-copy h1 { font-size: 2.25rem; }
  .sp-serwis-site h2 { font-size: 1.8rem; }
  .brand { gap: 5px; }
  .brand span { font-size: 1rem; }
  .brand img { width: 40px; }
  .header-tools { gap: 8px; }
  .header-phone { min-width: 36px; padding: 8px; }
  .site-header { gap: 8px; padding-inline: 14px; }
  .nav-toggle { margin-left: auto; }
  .header-tools { margin-left: 0; }
  .sp-contact-form { padding: 20px; }
  .page-content .hero-logo { max-width: 110px; }
  .page-content .hero-inner { gap: 24px; }
  .page-content .hero-copy .lead { font-size: 1rem; }
  .page-content .wp-block-buttons.hero-actions { display: flex; flex-wrap: wrap; gap: 10px; }
  .page-content .hero-actions .wp-block-button { flex: 1; min-width: 0; }
  .page-content .hero-actions .wp-block-button__link { width: 100%; padding: 12px; font-size: .9rem; }
  .page-content .hero-stats { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
  .page-content .hero-stats div { padding: 12px 8px; }
  .page-content .hero-stats dt { font-size: 1.25rem; }
  .page-content .hero-stats div:last-child dt { font-size: .93rem; }
  .page-content .hero-stats dd { font-size: .7rem; line-height: 1.45; overflow-wrap: anywhere; }
  .standard-content { padding-block: 28px; }
  .footer-inner { display: grid; gap: 12px; }
}
