    :root {
      --teal: #008fa3;
      --dark: #24343b;
      --light: #f5f8f9;
      --text: #4a4a4a;
    }

    * { box-sizing: border-box; }

    body {
      margin: 0;
      font-family: Arial, Helvetica, sans-serif;
      color: var(--text);
      background: #fff;
      line-height: 1.6;
    }

    .hero {
      min-height: 100vh;
      display: grid;
      grid-template-columns: 1fr 1fr;
      align-items: center;
    }

    .hero-content {
      padding: 60px 8vw;
    }

    .logo {
      max-width: 360px;
      width: 100%;
      margin-bottom: 40px;
    }

    .eyebrow {
      color: var(--teal);
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 1px;
      margin-bottom: 12px;
    }

    h1 {
      font-size: clamp(36px, 5vw, 62px);
      line-height: 1.05;
      color: var(--dark);
      margin: 0 0 24px;
    }

    .intro {
      font-size: 20px;
      max-width: 560px;
      margin-bottom: 32px;
    }

    .address {
      background: var(--light);
      border-left: 5px solid var(--teal);
      padding: 22px;
      margin-bottom: 32px;
      font-size: 18px;
    }

    .buttons {
      display: flex;
      gap: 14px;
      flex-wrap: wrap;
    }

    .btn {
      display: inline-block;
      padding: 14px 24px;
      border-radius: 999px;
      text-decoration: none;
      font-weight: 700;
    }

    .btn-primary {
      background: var(--teal);
      color: #fff;
    }

    .btn-secondary {
      border: 2px solid var(--teal);
      color: var(--teal);
    }

    .hero-image {
      height: 100%;
      min-height: 100vh;
      background-image: url("../images/Recover-Physio_Deal.jpg");
      background-size: cover;
      background-position: center;
    }

    .section {
      padding: 70px 8vw;
    }

    .section.alt {
      background: var(--light);
    }

    .grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 24px;
      margin-top: 30px;
    }

    .card {
      background: #fff;
      padding: 28px;
      border-radius: 14px;
      box-shadow: 0 8px 24px rgba(0,0,0,0.06);
    }

    .card h3 {
      color: var(--dark);
      margin-top: 0;
text-transform:uppercase;
    }

    iframe {
      width: 100%;
      height: 360px;
      border: 0;
      border-radius: 14px;
    }

    footer {
      padding: 30px 8vw;
      background: var(--dark);
      color: #fff;
      font-size: 14px;
    }

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

      .hero-image {
        min-height: 360px;
        order: -1;
      }

      .grid {
        grid-template-columns: 1fr;
      }

      .hero-content {
        padding: 40px 6vw;
      }
    }
