/* Scoped to migrated pages: Home and the shared header/footer are unchanged. */
@media (min-width: 821px) {
 .morales-about-page .inner-page-about-us { padding-top: 167px; }
}
.inner-page .inner-container { width: min(75vw, 1400px); max-width: none; margin-inline: auto; }
.inner-hero { background-size: cover; background-position: center; color: #fff; padding: 42px 0 78px; }
.inner-contact-hero { background-image: linear-gradient(rgba(0,0,0,.6),rgba(0,0,0,.6)), url('../images/contact-background-new.jpg'); }
.painting-hero { background-image: linear-gradient(rgba(0,0,0,.6),rgba(0,0,0,.6)), url('../images/interior-service-1.webp'); }
.popcorn-hero { background-image: linear-gradient(rgba(0,0,0,.65),rgba(0,0,0,.65)), url('../images/popcorn-7037.webp'); }
.drywall-hero { background-image: linear-gradient(rgba(0,0,0,.6),rgba(0,0,0,.6)), url('../images/drywall-background-new.jpg'); }
.fence-hero { background-image: linear-gradient(rgba(0,0,0,.6),rgba(0,0,0,.6)), url('../images/fence-stain-background-new.jpg'); }
.cabinet-hero { background-image: linear-gradient(rgba(0,0,0,.6),rgba(0,0,0,.6)), url('../images/cabinet-gallery-2.webp'); }
.pressure-washing-hero { background-image: linear-gradient(rgba(0,0,0,.6),rgba(0,0,0,.6)), url('../images/pressure-washing-hero.jpg'); }
.epoxy-hero { background-image: linear-gradient(rgba(0,0,0,.6),rgba(0,0,0,.6)), url('../images/epoxy-service-hero.jpg'); }
.services-overview-hero { background-image: linear-gradient(rgba(0,0,0,.6),rgba(0,0,0,.6)), url('../images/services-overview-hero.jpg'); }
.inner-breadcrumbs { font-size: .85rem; margin-bottom: 65px; }
.inner-breadcrumbs a { color: inherit; text-decoration: none; }
.inner-breadcrumbs a:hover { text-decoration: underline; }
.inner-hero h1 { max-width: 1000px; font-size: clamp(1.9rem, 3vw, 3rem); line-height: 1.15; text-transform: uppercase; color: #fff; margin: 0 0 22px; }
.inner-hero p { max-width: 920px; font-size: 1rem; line-height: 1.65; margin-bottom: 28px; }
.inner-page .button:not(.cta-button),
.inner-page .contact-section .morales-contact-form .button.button-primary {
 width: 210px; max-width: 100%; min-height: 48px; padding: 10px 22px;
 border: 1px solid #fff; color: #101820; background: var(--morales-sky);
 font-family: "Montserrat", Arial, sans-serif; font-size: .85rem; font-weight: 700;
 line-height: 1.2; letter-spacing: 0; text-transform: none;
 box-shadow: none;
}
.inner-page .button:not(.cta-button):hover,
.inner-page .contact-section .morales-contact-form .button.button-primary:hover { background: #70c7f2; color: #101820; }
.inner-page .button.button-outline { color: #fff; background: transparent; }
.inner-page .button.button-outline:hover { color: #101820; background: #70c7f2; }
/* Every migrated page uses the same shared form treatment as Home. */
.inner-page .form-panel { line-height: 1.7; }
.inner-page .contact-section .morales-contact-form .button.button-primary {
 grid-column: 1 / -1;
 justify-self: end;
 box-shadow: none;
}
.inner-page .contact-section .morales-contact-form .button.button-primary:focus-visible {
 background: #70c7f2;
 color: #101820;
}
.inner-section { padding: 64px 0; }
.inner-section + .inner-section { padding-top: 10px; }
.inner-section .eyebrow { font-size: 1rem; margin: 0 0 12px; }
.inner-section h2 { font-size: 1.7rem; line-height: 1.25; text-transform: uppercase; margin-bottom: 24px; }
.inner-section p { font-size: .9rem; line-height: 1.8; margin-bottom: 20px; }
.service-areas-list-wrap { margin-top: 32px; }
.inner-page-service-areas .service-areas-list-wrap h3 { margin: 0 0 18px; font-size: 1.3rem; text-transform: uppercase; }
.service-areas-list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px 18px; margin: 0; padding: 0; list-style: none; }
.inner-page-service-areas .service-areas-list li { padding: 12px 16px; border: 1px solid #e2e7e9; border-radius: 10px; background: #f7f9fa; font-size: 1rem; text-align: left; }
.inner-page-service .inner-section p { font-size: 1rem; }
:is(.inner-page-faqs, .inner-page-reviews, .inner-page-service-areas) .inner-hero :is(h1, p),
:is(.inner-page-faqs, .inner-page-reviews, .inner-page-service-areas) .inner-section :is(h1, h2, h3, h4, p, li, summary),
.inner-page-reviews .glsr-review-content { text-align: justify; }
.inner-page-about-us .inner-hero :is(h1, p),
.inner-page-about-us .inner-section :is(h2, h3, h4, p, li, summary) { text-align: justify; }
.inner-experience { display: flex; align-items: center; gap: 20px; padding-top: 20px; }
.inner-experience strong { color: #51bce9; font-size: 3.8rem; line-height: 1; }
.inner-experience span { letter-spacing: .16em; font-weight: 700; }
.service-detail-layout { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(260px, .75fr); gap: clamp(42px, 7vw, 100px); align-items: center; }
.service-detail-layout.reverse { grid-template-columns: minmax(260px, .75fr) minmax(0, 1.25fr); }
.service-detail-layout.reverse .service-detail-copy { grid-column: 2; }
.service-detail-layout.reverse .service-detail-number,
.service-detail-layout.reverse > img { grid-column: 1; grid-row: 1; }
.service-detail-layout > img { width: 100%; max-height: 530px; object-fit: cover; border-radius: 22px; }
.inner-page-popcorn .popcorn-benefits-label { margin-bottom: 8px; }
.inner-page-popcorn .popcorn-benefits { margin: 0; padding-left: 22px; font-size: .9rem; line-height: 1.8; }
.inner-page-popcorn .popcorn-benefits li + li { margin-top: 4px; }
.service-detail-number { color: rgba(81,188,233,.16); font-size: clamp(7rem, 14vw, 13rem); font-weight: 700; line-height: 1; text-align: center; }
.service-detail-section:nth-child(even) { background: #f6f7f7; }
.services-overview-intro { max-width: 900px; margin: 0 auto 42px; text-align: center; }
.services-overview-intro > p:last-child { max-width: 820px; margin-inline: auto; }
.services-overview-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
.services-overview-card { display: flex; flex-direction: column; overflow: hidden; min-height: 100%; border: 1px solid #e2e2e2; border-radius: 20px; background: #fff; box-shadow: 0 10px 30px rgba(16,24,32,.07); transition: transform .25s ease, box-shadow .25s ease; }
.services-overview-card:hover { transform: translateY(-5px); box-shadow: 0 15px 34px rgba(16,24,32,.12); }
.services-overview-image { display: block; height: 190px; overflow: hidden; }
.services-overview-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.services-overview-card:hover .services-overview-image img { transform: scale(1.04); }
.services-overview-copy { display: flex; flex: 1; flex-direction: column; align-items: center; padding: 26px 24px 28px; text-align: center; }
.services-overview-copy h3 { margin: 0 0 14px; font-size: 1.3rem; line-height: 1.25; text-transform: uppercase; }
.services-overview-copy p { flex: 1; margin: 0 0 22px; font-size: .9rem; line-height: 1.65; }
.services-overview-copy :is(h3, p) { width: 100%; }
:is(.services-overview-page, .inner-page-service) .inner-hero :is(h1, p),
:is(.services-overview-page, .inner-page-service) .inner-section :is(h2, h3, p, li, summary) { text-align: justify; }
.services-overview-page .services-overview-intro :is(.eyebrow, h2),
.services-overview-page .services-overview-copy h3 { text-align: center; }
.inner-faq-split { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; align-items: start; }
.inner-faq-split > img { width: 100%; max-height: 620px; object-fit: cover; border-radius: 22px; }
.inner-accordion details { border-bottom: 1px solid #d8d8d8; }
.inner-accordion summary { position: relative; cursor: pointer; list-style: none; padding: 22px 46px 22px 0; font-size: 1rem; font-weight: 700; }
.inner-accordion summary::-webkit-details-marker { display: none; }
.inner-accordion summary::after { content: '+'; position: absolute; right: 0; top: 21px; width: 25px; height: 25px; line-height: 25px; text-align: center; color: #142932; background: #00a8de; border-radius: 3px; }
.inner-accordion details[open] summary::after { content: '−'; }
.inner-accordion summary:focus-visible { outline: 2px solid #00a8de; outline-offset: 3px; }
.inner-accordion details p { margin: 0; padding: 0 40px 24px 0; }
.inner-editor-note { background: #f3f8fa; padding: 18px; border-left: 3px solid #51bce9; }
.inner-page-reviews #site-reviews-list,
.inner-page-reviews #review-form { scroll-margin-top: 180px; }
.inner-page-reviews .inner-review-slot { margin: 28px 0 48px; }
.inner-page-reviews .inner-section p,
.inner-page-reviews .glsr-review-content,
.inner-page-reviews .glsr-review-content p { font-size: 1rem; }
.inner-page-reviews .inner-review-form { width: 100%; max-width: 780px; padding: 32px; margin-inline: auto; border: 1px solid #e2e2e2; border-radius: 20px; background: #fff; }
.inner-page-reviews .inner-review-form h2 { margin-bottom: 24px; }
.inner-page-reviews .glsr-form .glsr-field { margin-bottom: 16px; }
.inner-page-reviews .glsr-form input:not([type="checkbox"]),
.inner-page-reviews .glsr-form textarea,
.inner-page-reviews .glsr-form select { max-width: 100%; border: 1px solid #d6d9dc; border-radius: 4px; }
.inner-page-reviews .glsr-form .glsr-button { min-height: 48px; padding: 10px 22px; border: 1px solid #fff; border-radius: 999px; color: #101820; background: var(--morales-sky); font-family: "Montserrat", Arial, sans-serif; font-size: .85rem; font-weight: 700; cursor: pointer; }
.inner-page-reviews .glsr-form .glsr-button:hover,
.inner-page-reviews .glsr-form .glsr-button:focus-visible { background: #70c7f2; }
@media (max-width: 1080px) {
 .inner-page .inner-container { width: calc(100% - 48px); }
 .inner-faq-split { gap: 30px; }
 .services-overview-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
 .service-areas-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
 .inner-page .inner-container { width: calc(100% - 36px); }
 .inner-hero { padding: 25px 0 48px; }
 .inner-breadcrumbs { margin-bottom: 35px; }
 .inner-section { padding: 42px 0; }
 .inner-faq-split { grid-template-columns: 1fr; }
 .service-detail-layout,
 .service-detail-layout.reverse { grid-template-columns: 1fr; gap: 26px; }
 .service-detail-layout.reverse .service-detail-copy,
 .service-detail-layout.reverse .service-detail-number,
 .service-detail-layout.reverse > img { grid-column: 1; grid-row: auto; }
 .service-detail-number { display: none; }
 .inner-hero .button-row { flex-wrap: wrap; }
 .inner-section h2 { overflow-wrap: anywhere; }
 .services-overview-grid { grid-template-columns: 1fr; }
 .services-overview-image { height: 210px; }
}

@media (max-width: 560px) {
 .inner-page-faqs .inner-hero h1,
 .inner-page-faqs .inner-section .eyebrow,
 .inner-page-faqs .inner-section h2 { text-align: center; }

 .inner-page-faqs .inner-hero .button-row .button,
 .inner-page-faqs .cta-section .cta-button,
 .inner-page-faqs .contact-section .morales-contact-form .button.button-primary {
  width: 100%;
  max-width: 100%;
 }

 .inner-page-about-us .inner-hero h1 {
  font-size: 1.5rem;
  text-align: center;
 }

 .inner-page-about-us .inner-section .eyebrow,
 .inner-page-about-us .inner-section h2 { text-align: center; }

 .inner-page-about-us .inner-hero .button-row .button,
 .inner-page-about-us .cta-section .cta-button,
 .inner-page-about-us .contact-section .morales-contact-form .button.button-primary,
 body.morales-about-page .site-footer .footer-call {
  width: 100%;
  max-width: 100%;
 }

 .inner-page-reviews .inner-hero h1 {
  font-size: 1.5rem;
  text-align: center;
 }

 .inner-page-reviews .inner-section .eyebrow,
 .inner-page-reviews .inner-section h2 { text-align: center; }

 .inner-page-reviews .inner-hero .button-row .button,
 .inner-page-reviews .cta-section .cta-button,
 .inner-page-reviews .contact-section .morales-contact-form .button.button-primary,
 .inner-page-reviews .glsr-form .glsr-button,
 .inner-page-reviews ~ .site-footer .footer-call {
  width: 100%;
  max-width: 100%;
 }

 .inner-page-service-areas .inner-hero h1 {
  font-size: 1.5rem;
  text-align: center;
 }

 .inner-page-service-areas .inner-section .eyebrow,
 .inner-page-service-areas .inner-section h2 { text-align: center; }

 .inner-page-service-areas .inner-hero .button-row .button,
 .inner-page-service-areas .cta-section .cta-button,
 .inner-page-service-areas .contact-section .morales-contact-form .button.button-primary,
 .inner-page-service-areas ~ .site-footer .footer-call {
  width: 100%;
  max-width: 100%;
 }

 :is(.services-overview-page, .inner-page-service) .inner-hero h1 {
  font-size: 1.5rem;
  text-align: center;
 }

 :is(.services-overview-page, .inner-page-service) .inner-section .eyebrow,
 :is(.services-overview-page, .inner-page-service) .inner-section h2 {
  text-align: center;
 }

 :is(.services-overview-page, .inner-page-service) .button:not(.cta-button),
 :is(.services-overview-page, .inner-page-service) .cta-section .cta-button,
 :is(.services-overview-page, .inner-page-service) .contact-section .morales-contact-form .button.button-primary,
 :is(.services-overview-page, .inner-page-service) ~ .site-footer .footer-call {
  width: 100%;
  max-width: 100%;
 }

 .inner-page-contact-us .inner-hero h1 {
  font-size: 1.5rem;
  text-align: center;
 }

 .inner-page-contact-us .inner-section .eyebrow,
 .inner-page-contact-us .inner-section h2 { text-align: center; }

 .inner-page-contact-us .inner-hero .button-row .button,
 .inner-page-contact-us .cta-section .cta-button,
 .inner-page-contact-us .contact-section .morales-contact-form .button.button-primary,
 .inner-page-contact-us ~ .site-footer .footer-call {
  width: 100%;
  max-width: 100%;
 }
}
