
    /* Scoped Styles */
    #booking-widget {
      --primary: #0075ff;
      --bg: #F4F4F4;
      --card-bg: #FFFFFF;
      --text: #333333;
      --muted: #666666;
      --radius: 12px;
      --shadow: rgba(0, 0, 0, 0.05);
      --transition: 0.3s ease-in-out;
      --spacing: 1rem;
      --img-size: 100px;

      display: flex;
      justify-content: center;
      align-items: center;
      padding: var(--spacing);
    }
    #booking-widget main {
      width: 100%;
      max-width: 640px;
      background: var(--card-bg);
      border-radius: var(--radius);
      padding: calc(var(--spacing) * 2);
    }
    #booking-widget h1 {
      font-family: 'Inter', sans-serif;
      font-size: 2rem;
      font-weight: 600;
      text-align: center;
      margin-bottom: calc(var(--spacing) * 1.5);
      color: var(--text);
    }
    #booking-widget h2 {
      font-family: 'Inter', sans-serif;
      font-size: 1.75rem;
      font-weight: 600;
      margin-bottom: calc(var(--spacing) * 1.5);
      color: var(--text);
    }
    #booking-widget .progress { display: flex; justify-content: space-between; margin-bottom: calc(var(--spacing)*2); padding: 0 1rem; }
    #booking-widget .progress__step { flex:1; text-align:center; cursor:pointer; }
    #booking-widget .progress__step span { width:2.5rem; height:2.5rem; display:inline-flex; align-items:center; justify-content:center; border-radius:50%; background:#e0e0e0; color:var(--bg); font-weight:600; border:2px solid transparent; transition: background var(--transition), transform var(--transition), border var(--transition), color var(--transition); }
    #booking-widget .progress__step.completed span { background:#fff; color:var(--primary); border-color:var(--primary); transform:scale(1); }
    #booking-widget .progress__step.active span { background:var(--primary); color:#fff; transform:scale(1.1); }
    #booking-widget .progress__step p { margin-top:0.5rem; font-size:0.9rem; color:var(--muted); }
    @keyframes fadeIn { from{opacity:0;transform:translateY(10px);} to{opacity:1;transform:translateY(0);} }
    #booking-widget .step { display:none; animation:fadeIn var(--transition); }
    #booking-widget .step.active { display:block; }
    #booking-widget .options { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:var(--spacing); }
    #booking-widget input[type="radio"] { display:none; }
    #booking-widget label.card { display:flex; align-items:center; justify-content:center; padding:calc(var(--spacing)*1.25); background:var(--card-bg); border-radius:var(--radius); box-shadow:0 2px 8px var(--shadow); cursor:pointer; font-weight:600; transition:transform var(--transition),box-shadow var(--transition),border var(--transition); text-align:center; border:1px solid; }
    #booking-widget label.card:hover { transform:translateY(-4px); box-shadow:0 6px 12px var(--shadow); border:2px solid var(--primary); }
    #booking-widget input[type="radio"]:checked + label.card { border:2px solid var(--primary); }

    /* Advisor & Calendly */
    #booking-widget .advisor { display:flex; align-items:center; gap:var(--spacing); margin-bottom:calc(var(--spacing)*1.5); }
    #booking-widget .advisor img { width:var(--img-size); height:var(--img-size); object-fit:cover; border-radius:var(--radius); }
    #booking-widget .advisor-details h3 { margin:0; font-size:1.25rem; font-weight:600; }
    #booking-widget .advisor-details p { margin:0.5rem 0 0; color:var(--muted); line-height:1.4; }
    #booking-widget .calendly-inline-widget { margin-top: var(--spacing); }

    @media(max-width:480px) {
      #booking-widget h1 { font-size:1.75rem; }
      #booking-widget h2 { text-align:center; }
      #booking-widget .advisor { flex-direction: column; text-align: center; align-items: center; }
      #booking-widget .advisor img { margin: 0 auto; }
      #step2 { display:flex; flex-direction:column; align-items:center; }
      #step2 .calendly-inline-widget { margin: var(--spacing) auto; }
    }
  