/* ============ Página de Agendamento ============ */
.ag-hero{padding:140px 0 0;text-align:center}
.ag-hero .eyebrow{justify-content:center}
.ag-hero h1{font-size:clamp(2.2rem,5vw,3.6rem);margin:0 0 14px}
.ag-hero p{color:var(--ink-soft);max-width:52ch;margin:0 auto}

.ag-wrap{display:grid;grid-template-columns:1.5fr .9fr;gap:34px;margin:54px 0 40px;align-items:start}

.ag-form{padding:38px;border-radius:var(--r-lg)}
.ag-step{margin-bottom:38px}
.ag-step:last-child{margin-bottom:0}
.ag-step-head{display:flex;align-items:center;gap:14px;margin-bottom:20px}
.ag-step-head .n{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;flex:none;
  background:var(--green-deep);color:var(--gold-soft);font-family:'Fraunces',serif;font-weight:600}
.ag-step-head h3{font-size:1.3rem;color:var(--green-deep);margin:0}

/* serviços como opções */
.svc-options{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.svc-opt{cursor:pointer;border-radius:var(--r-md);padding:18px 18px;display:flex;gap:14px;align-items:flex-start;
  border:1.5px solid var(--line);background:rgba(255,255,255,.4);transition:all .25s var(--ease);position:relative}
.svc-opt:hover{border-color:var(--sage);transform:translateY(-2px)}
.svc-opt input{position:absolute;opacity:0}
.svc-opt .so-ico{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;flex:none;
  background:var(--cream-warm);color:var(--brand)}
.svc-opt .so-name{font-weight:700;color:var(--green-deep);font-size:.98rem}
.svc-opt .so-meta{font-size:.82rem;color:var(--ink-soft)}
.svc-opt.sel{border-color:var(--brand);background:rgba(78,111,82,.1);box-shadow:0 10px 24px rgba(47,68,52,.12)}
.svc-opt.sel .so-ico{background:var(--green-deep);color:var(--gold-soft)}

/* slots */
.field{margin-bottom:6px}
.field label{display:block;font-weight:700;font-size:.86rem;color:var(--green-deep);margin-bottom:8px}
.field input,.field textarea{width:100%;padding:14px 16px;border-radius:14px;font-family:inherit;font-size:.96rem;
  border:1.5px solid var(--line);background:rgba(255,255,255,.6);color:var(--ink);transition:border .2s}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--brand)}
.field textarea{resize:vertical;min-height:90px}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}

.slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:10px;min-height:48px}
.slot{padding:12px 8px;border-radius:12px;text-align:center;cursor:pointer;font-weight:600;font-size:.92rem;
  border:1.5px solid var(--line);background:rgba(255,255,255,.5);color:var(--green-deep);transition:all .2s}
.slot:hover{border-color:var(--sage)}
.slot.sel{background:var(--green-deep);color:var(--cream);border-color:var(--green-deep)}
.slot.taken{opacity:.35;cursor:not-allowed;text-decoration:line-through}
.slots-msg{color:var(--ink-soft);font-size:.92rem;padding:6px 0}

/* resumo lateral */
.ag-summary{padding:30px;border-radius:var(--r-lg);position:sticky;top:100px}
.ag-summary h3{font-size:1.25rem;color:var(--green-deep);margin:0 0 18px}
.sum-row{display:flex;justify-content:space-between;gap:12px;padding:13px 0;border-bottom:1px dashed var(--line);font-size:.94rem}
.sum-row span:first-child{color:var(--ink-soft)}
.sum-row b{color:var(--green-deep);text-align:right}
.sum-total{display:flex;justify-content:space-between;align-items:baseline;margin-top:18px}
.sum-total span{color:var(--ink-soft);font-size:.9rem}
.sum-total b{font-family:'Fraunces',serif;font-size:1.8rem;color:var(--brand)}
.ag-summary .btn{width:100%;justify-content:center;margin-top:22px}
.ag-trust{margin-top:20px;display:grid;gap:10px}
.ag-trust div{display:flex;gap:10px;align-items:center;font-size:.84rem;color:var(--ink-soft)}
.ag-trust svg{color:var(--brand);flex:none}

/* sucesso */
.ag-success{text-align:center;padding:60px 40px;border-radius:var(--r-lg);max-width:560px;margin:54px auto}
.ag-success .ok-ring{width:88px;height:88px;border-radius:50%;margin:0 auto 24px;display:grid;place-items:center;
  background:radial-gradient(circle,var(--green-mid),var(--green-deep));color:var(--gold-soft);
  box-shadow:0 16px 40px rgba(47,68,52,.3);animation:pop .6s var(--ease)}
@keyframes pop{0%{transform:scale(0)}70%{transform:scale(1.12)}100%{transform:scale(1)}}
.ag-success h2{font-size:2rem;color:var(--green-deep);margin:0 0 12px}
.ag-success p{color:var(--ink-soft);max-width:42ch;margin:0 auto 8px}
.ag-success .det{margin:24px auto;max-width:360px;text-align:left}

@media (max-width:980px){
  .ag-wrap{grid-template-columns:1fr}
  .ag-summary{position:static}
  .svc-options{grid-template-columns:1fr}
}
@media (max-width:600px){
  .ag-form{padding:26px}
  .field-row{grid-template-columns:1fr}
}
