/* Home page specific layout enhancements (built on base.css) */
.section { padding-block: var(--space-64); }

/* Hero */
.hero__wrap { display: grid; gap: var(--space-24); align-items: center; grid-template-columns: 1.1fr 0.9fr; }
.hero__content p { color: var(--gray-200); }
.hero__cta { display: flex; gap: var(--space-16); margin-top: var(--space-16); flex-wrap: wrap; }
.hero__media { border-radius: var(--radius-lg); overflow: hidden; box-shadow: var(--shadow-lg); border: 1px solid var(--color-border); background: var(--color-surface-1); }
.hero__trust { margin-top: var(--space-12); font-size: var(--fs-200); color: var(--gray-300); }

@media (max-width: 960px) {
  .hero__wrap { grid-template-columns: 1fr; }
}

/* Services */
.services-grid { grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: var(--space-16); }
.services-grid .card p { color: var(--gray-200); }

/* Before/After component */
.before-after { position: relative; overflow: hidden; }
.ba-images { position: relative; aspect-ratio: 16 / 9; }
.ba-images img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.ba-before { filter: grayscale(0.2) contrast(0.95); }
.ba-after { clip-path: inset(0 calc(100% - var(--ba-pos, 50%)) 0 0); box-shadow: inset 0 0 0 1px var(--color-border); }
.ba-range { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; cursor: ew-resize; }
.ba-handle { position: absolute; top: 0; bottom: 0; left: calc(var(--ba-pos, 50%)); width: 0; border-left: 2px solid color-mix(in oklab, var(--color-primary) 80%, white 20%); box-shadow: 0 0 0 1px rgba(0,0,0,0.25); pointer-events: none; }
.before-after:focus-within .ba-handle { border-left-color: var(--color-focus); }

/* Forms */
.booking-form .form-note { color: var(--gray-300); font-size: var(--fs-200); margin-top: var(--space-8); }

/* Brand values CTA */
.brand-cta { margin-top: var(--space-24); }

/* Table wrapper for responsive scroll */
.table-wrap { overflow-x: auto; border: 1px solid var(--color-border); border-radius: var(--radius-lg); }
.table-wrap table { min-width: 720px; }
