.design-home, .service-page { color: var(--navy); background: #fff; }
.design-home *, .service-page * { min-width: 0; }
.design-home .section, .service-page .section { padding-block: 64px; }
.design-home h2, .service-page h2 { font-size: 36px; line-height: 1.18; letter-spacing: 0; }
.design-home .section-heading h2 { font-size: 36px; }
.design-home .section-heading { margin-bottom: 30px; }
.design-home p, .service-page p { line-height: 1.65; }
.section-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 26px; }
.section-actions--center { justify-content: center; }
.section-actions .button { min-height: 48px; white-space: normal; text-align: center; }
.design-hero { position: relative; isolation: isolate; padding-block: 64px; background: #eef2f4; }
.design-hero__image { position: absolute; inset: 0; z-index: -1; }
.design-hero__image img { width: 100%; height: 100%; object-fit: cover; object-position: right center; }
.design-hero__image::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, #f8fafcf5 0%, #f8fafcf5 39%, #f8fafcbf 55%, transparent 76%); }
.design-hero__image > span { position: absolute; bottom: 16px; right: 20px; padding: 6px 10px; background: #fff; font-size: 12px; z-index: 1; }
.design-hero__content h1 { max-width: 670px; margin: 12px 0 20px; font-size: 48px; line-height: 1.08; letter-spacing: 0; }
.design-hero__lead { max-width: 600px; margin: 0; font-size: 17px; color: #36465b; }
.design-hero__content .section-actions { max-width: 650px; }
.design-hero__local { display: flex; gap: 8px; max-width: 540px; font-size: 13px; font-weight: 700; margin: 20px 0 0; }
.design-hero__local svg { flex: 0 0 18px; width: 18px; height: 18px; margin-top: 2px; color: #007dab; }
.design-proof { padding-block: 24px; border-bottom: 1px solid #e1e8ed; }
.design-proof__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.design-proof article { border-left: 2px solid var(--blue); padding-left: 16px; }
.design-proof strong { display: block; font-size: 30px; line-height: 1.2; }
.design-proof span { display: block; margin-top: 6px; font-size: 14px; color: #526176; }
.design-process-section { background: #f5f9fc; }
.design-process { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); list-style: none; margin: 0; padding: 0; gap: 24px; }
.design-process li { position: relative; padding-top: 12px; border-top: 2px solid #91d6ee; }
.design-process__number { font-size: 13px; color: #007ca8; font-weight: 800; }
.design-process h3 { font-size: 18px; line-height: 1.25; margin: 10px 0; }
.design-process p { margin: 0; font-size: 14px; color: #526176; }
.design-support { background: var(--navy); color: #fff; }
.design-support h2 { max-width: 880px; color: #fff; margin: 0 0 22px; }
.design-support > .container > p:not(.eyebrow) { max-width: 910px; color: #dce9f5; }
.design-support .button--secondary { color: var(--navy); background: #fff; }
.service-shortcuts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0 22px; list-style: none; padding: 0; margin: 24px 0; }
.service-shortcuts a { display: flex; align-items: center; gap: 10px; min-height: 54px; padding-block: 10px; border-bottom: 1px solid #56749f; color: #fff; font-size: 15px; }
.service-shortcuts svg { flex: 0 0 21px; width: 21px; height: 21px; color: #34cfff; }
.design-support__note { font-size: 14px; }
.design-projects .projects-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.design-projects .project-card p { display: none; }
.design-projects .project-card__body { padding: 16px; }
.design-projects .projects-heading { max-width: 780px; margin-bottom: 28px; }
.showroom-brief { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 40px; align-items: center; }
.showroom-brief h2 { margin: 0 0 18px; }
.showroom-brief__visit { border-left: 2px solid #0bb5e5; padding-left: 24px; }
.showroom-photos { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 26px; }
.showroom-photos img { width: 100%; aspect-ratio: 3 / 2; height: auto; object-fit: cover; border-radius: 8px; }
.design-home .google-reviews-layout { grid-template-columns: minmax(0, .85fr) minmax(0, 1.3fr); gap: 32px; }
.design-home .review-cards { align-items: start; }
.design-home .review-cards article { min-height: 0; padding: 18px; }
.design-home .review-cards article p { font-size: 14px; margin-bottom: 0; }
.design-home .faq-layout { grid-template-columns: minmax(0, .7fr) minmax(0, 1.3fr); gap: 32px; }
.design-home .faq-item { margin: 0; }
.design-home .contact-cta-panel h2 { color: #fff; }
.service-hero { padding-block: 38px 48px; border-bottom: 1px solid #e0e7ef; }
.service-breadcrumb { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; font-size: 13px; color: #5e6f83; margin-bottom: 22px; }
.service-breadcrumb a { display: inline-flex; align-items: center; min-height: 44px; text-decoration: underline; }
.service-hero h1 { font-size: 46px; line-height: 1.12; letter-spacing: 0; margin: 0 0 20px; max-width: 880px; }
.service-hero__lead { max-width: 820px; font-size: 18px; color: #526176; }
.service-media { margin: 32px 0 0; }
.service-media img { width: 100%; height: 320px; object-fit: cover; border-radius: 8px; }
.service-media figcaption { font-size: 12px; color: #637186; margin-top: 8px; }
.service-page .section:nth-child(even) { background: #f6f9fc; }
.service-page .section h2 { margin: 0 0 20px; }
.service-page .section > .container > p { max-width: 850px; color: #526176; }
.service-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 42px; margin-top: 26px; }
.service-list article { padding: 24px 0; border-top: 1px solid #dce5ee; }
.service-list h2, .service-list h3 { font-size: 22px !important; margin: 0 0 12px; }
.service-list p { color: #526176; margin: 0 0 16px; }
.service-list a:not(.button) { display: inline-flex; min-height: 44px; align-items: center; gap: 8px; text-decoration: underline; text-underline-offset: 4px; font-weight: 700; }
.service-list svg { width: 22px; height: 22px; color: #0088b8; }
.service-list .service-featured { grid-column: 1 / -1; }
.service-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; list-style: none; padding: 0; }
.service-facts li { padding: 18px 0; border-top: 2px solid #0bb5e5; }
.service-facts strong { display: block; margin-bottom: 8px; }
.service-facts p { margin: 0; color: #526176; }
.service-price { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 48px; }
.service-price__value { font-size: 42px; font-weight: 800; margin: 0 0 10px; }
.service-price h3 { font-size: 24px; margin: 0 0 16px; }
.service-price ul { padding-left: 20px; line-height: 1.8; color: #526176; }
.service-price a { display: inline-block; padding-block: 12px; text-decoration: underline; }
.service-next { background: var(--navy) !important; color: #fff; }
.service-next h2, .service-next > .container > p { color: #fff !important; }
.service-next .button--secondary { background: #fff; color: var(--navy); }
.service-page .calculator-section { padding-top: 32px; }
.service-page .calculator-summary { align-self: start; top: 100px; }
.service-page .calculator-summary [data-total-net] { font-size: 36px; overflow-wrap: anywhere; }
.service-page .calculator-summary [data-total-net].is-placeholder { font-size: 26px; }
.service-page .calculator-preset input, .service-page .calculator-preset select, .service-page .work-qty input, .service-page .calculator-summary select { font-size: 16px; min-height: 44px; width: 100%; }
.service-page .calculator-preset label { min-width: 0; }
.service-page .calculator-preset label > span { min-width: 0; }
.service-page .calculator-summary .summary-row { flex-wrap: wrap; gap: 8px; }
.service-page .calculator-summary .summary-row strong { white-space: normal; }
.calculator-validation { color: #ac273c; font-weight: 700; margin-top: 12px; }
.calculator-result-note { font-size: 14px; padding: 18px 0; border-top: 1px solid #c5d8e8; }
.calculator-exclusions { color: #536277; font-size: 14px; }
.service-page .calculator-scope label { min-height: 44px; display: flex; align-items: center; gap: 10px; }
.service-page .calculator-scope input { flex: 0 0 20px; width: 20px; height: 20px; }
.service-page .calculator-table-wrap { max-width: 100%; }
.service-page .work-total { overflow-wrap: anywhere; }
.lead-design-choice span { font-weight: 800; }
.service-page a:focus-visible, .design-home a:focus-visible { outline: 3px solid #00ace1; outline-offset: 3px; }
@media (max-width: 1100px) {
  .design-hero__content h1 { font-size: 40px; max-width: 570px; }
  .design-hero__lead { max-width: 550px; font-size: 16px; }
  .design-hero__image::after { background: linear-gradient(90deg, #f8fafcf5 0%, #f8fafce8 55%, #f8fafc50 100%); }
  .design-process { gap: 16px; }
  .design-process h3 { font-size: 16px; }
  .design-home .google-reviews-layout, .design-home .faq-layout { grid-template-columns: minmax(0, 1fr); }
  .design-home .review-cards { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .showroom-brief { gap: 24px; }
  .service-page .calculator-table-head { display: none; }
  .service-page .calculator-row { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 12px; }
  .service-page .work-title, .service-page .work-total { grid-column: 1 / -1; }
  .service-page .work-total { text-align: left; }
  .service-page .work-total::before { content: 'Wartość: '; font-weight: 500; }
}
@media (max-width: 760px) {
  .design-home .section, .service-page .section { padding-block: 40px; }
  .design-home h2, .design-home .section-heading h2, .service-page h2 { font-size: 28px; }
  .design-hero { padding: 32px 0 0; display: flex; flex-direction: column; background: #fff; }
  .design-hero__content { order: -1; }
  .design-hero__content h1 { font-size: 32px; line-height: 1.12; max-width: 560px; }
  .design-hero__lead { max-width: none; }
  .design-hero__image { position: relative; height: 220px; margin-top: 24px; z-index: auto; }
  .design-hero__image::after { display: none; }
  .design-hero__image img { object-position: center 45%; }
  .design-hero__image > span { right: 12px; bottom: 10px; }
  .design-proof__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 14px; }
  .design-proof strong { font-size: 25px; }
  .design-proof span { font-size: 13px; }
  .design-proof article { padding-left: 12px; }
  .design-process { display: flex; flex-direction: column; gap: 0; }
  .design-process li { display: grid; grid-template-columns: 26px minmax(0, 1fr); gap: 14px; border-top: 0; padding: 0 0 22px; }
  .design-process li:not(:last-child)::before { content: ''; position: absolute; top: 25px; bottom: 4px; left: 10px; width: 1px; background: #a5cddb; }
  .design-process li:last-child { padding-bottom: 0; }
  .design-process__number { padding-top: 1px; }
  .design-process h3 { margin: 0 0 5px; font-size: 17px; }
  .service-shortcuts { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 14px; }
  .service-shortcuts a { font-size: 14px; gap: 8px; }
  .showroom-brief { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .showroom-brief__visit { padding-left: 16px; }
  .showroom-photos { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .showroom-photos img:first-child { grid-column: 1 / -1; aspect-ratio: 2 / 1; }
  .design-home .review-cards { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .design-home .review-cards article { padding: 16px; }
  .design-home .review-cards h3 { display: inline-block; font-size: 16px; margin: 0 12px 8px 0; }
  .design-home .review-cards article > span { display: inline-block; }
  .design-home .review-cards article p { margin: 4px 0 0; }
  .service-hero { padding-block: 24px 32px; }
  .service-hero h1 { font-size: 32px; }
  .service-hero__lead { font-size: 16px; }
  .service-media img { height: 220px; }
  .service-list, .service-facts, .service-price { grid-template-columns: minmax(0, 1fr); gap: 0; }
  .service-price { gap: 28px; }
  .service-price__value { font-size: 36px; }
  .service-page .calculator-layout { grid-template-columns: minmax(0, 1fr); }
  .service-page .calculator-summary { position: static; padding: 22px 18px; }
  .service-page .calculator-preset { grid-template-columns: minmax(0, 1fr); }
  .service-page .calculator-details-summary { padding: 16px; }
  .service-page .calculator-table { padding: 12px; }
}
@media (max-width: 600px) {
  .design-projects .projects-grid { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .design-projects .project-card__media { aspect-ratio: 2 / 1; }
  .design-projects .project-card__body { padding: 12px 16px; }
  .design-projects .project-card h3 { font-size: 18px; margin-bottom: 8px; }
  .section-actions { align-items: stretch; flex-direction: column; }
  .section-actions .button { width: 100%; }
}
@media (max-width: 375px) {
  .design-hero__content h1, .service-hero h1 { font-size: 28px; }
  .design-hero__lead { font-size: 15px; }
  .design-home h2, .design-home .section-heading h2, .service-page h2 { font-size: 25px; }
  .service-page .calculator-summary [data-total-net] { font-size: 30px; }
}
