/* brand_id: 2f5c220a-502f-41ec-8444-9b1430ee145d
   Agenda de llamadas: misma identidad que la vacante gratis (tinta #2D2C2C, dorado #E0AA30). */
.ag-body { --ink: #2D2C2C; --gold: #E0AA30; --paper: #FFFFFF; --mist: #F4F4F2; --line: #E2E1DD; --muted: #5F5E5A; --danger: #9B1C1C; --gutter: clamp(16px, 4vw, 56px); background: var(--mist); }
.ag-wrap { width: min(760px, 100% - 2 * var(--gutter)); margin-inline: auto; }
.ag-hero { background: var(--ink); color: var(--paper); padding-block: clamp(28px, 4vw, 56px) clamp(80px, 9vw, 120px); }
.ag-hero h1 { margin: 0; color: var(--paper); font-size: clamp(2.1rem, 5vw, 3.4rem); line-height: 1.05; letter-spacing: -.02em; }
.ag-gold { color: var(--gold); }
.ag-eyebrow { margin: 0 0 12px; font-size: .8125rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--gold); }
.ag-eyebrow--ink { color: var(--muted); }
.ag-lead { margin: 16px 0 0; max-width: 34em; font-size: clamp(1.05rem, 1.6vw, 1.2rem); line-height: 1.55; color: #E9E8E4; }
.ag-card { position: relative; margin-top: clamp(-64px, -6vw, -40px); background: var(--paper); border-radius: 16px; padding: clamp(20px, 4vw, 40px); box-shadow: 0 24px 48px -32px rgb(0 0 0 / .45); }
.ag-step { border: 0; margin: 0 0 28px; padding: 0; min-width: 0; }
.ag-step legend { font-size: 1.25rem; font-weight: 700; margin-bottom: 14px; padding: 0; }
.ag-tz, .ag-opt { font-weight: 400; font-size: .875rem; color: var(--muted); }
.ag-status { color: var(--muted); }
.ag-days { display: flex; gap: 8px; overflow-x: auto; padding-bottom: 6px; scrollbar-width: thin; }
.ag-day, .ag-slot { flex: none; font: inherit; border: 1px solid var(--line); background: var(--paper); color: var(--ink); border-radius: 10px; padding: 10px 14px; cursor: pointer; }
.ag-day { font-weight: 600; }
.ag-day::first-letter { text-transform: uppercase; }
.ag-day[aria-selected="true"], .ag-slot[aria-pressed="true"] { background: var(--ink); color: var(--paper); border-color: var(--ink); }
.ag-slots { display: grid; grid-template-columns: repeat(auto-fill, minmax(104px, 1fr)); gap: 8px; margin-top: 14px; }
.ag-day:focus-visible, .ag-slot:focus-visible, .ag-submit:focus-visible { outline: 3px solid var(--gold); outline-offset: 2px; }
.ag-form label { display: block; margin: 14px 0 6px; font-weight: 600; }
.ag-form input[type="text"], .ag-form input[type="tel"], .ag-form input[type="email"], .ag-form textarea { width: 100%; font: inherit; padding: 12px; border: 1px solid #C9C8C3; border-radius: 8px; background: var(--paper); box-sizing: border-box; }
.ag-form .form__consent { display: block; font-weight: 400; line-height: 1.5; }
.ag-form .form__consent input { margin: 0 8px 0 0; vertical-align: -2px; }
.ag-picked { font-weight: 700; text-transform: none; }
.ag-submit { font: inherit; font-weight: 700; background: var(--gold); color: var(--ink); border: 0; border-radius: 8px; padding: 16px 28px; cursor: pointer; width: 100%; }
.ag-submit:disabled { opacity: .5; cursor: not-allowed; }
.ag-err { color: var(--danger); font-weight: 600; }
.ag-done h2 { margin: 0 0 12px; text-transform: none; }
.ag-done:focus { outline: none; }
.ag-cal { font-weight: 700; color: var(--ink); }
.ag-why { padding-block: 40px 64px; }
.ag-why h2 { font-size: 1.25rem; }
