.intake-form{display:grid;gap:36px;margin-top:40px}
/* Adultos: tres líneas lila que se desvanecen desde adentro hacia afuera. */
.intake-form fieldset{position:relative;margin:0;padding:28px;border:2px solid var(--accent-lilac);border-radius:18px;min-width:0;background:var(--wash)}
.intake-form fieldset::before,.intake-form fieldset::after{content:"";position:absolute;pointer-events:none;border:2px solid var(--accent-lilac)}
.intake-form fieldset::before{inset:-8px;border-radius:25px;opacity:.5}
.intake-form fieldset::after{inset:-14px;border-radius:30px;opacity:.2}
/* Adolescentes: borde a franjas diagonales, con el celeste como color principal. */
.intake-form[data-tipo=adolescente] fieldset{border:7px solid transparent;background:linear-gradient(var(--wash),var(--wash)) padding-box,repeating-linear-gradient(135deg,var(--accent-sky) 0 12px,var(--accent-peach) 12px 24px,var(--accent-sky) 24px 36px,var(--accent-lilac) 36px 48px) border-box;box-shadow:0 10px 28px -18px var(--accent-sky)}
.intake-form[data-tipo=adolescente] fieldset::before,.intake-form[data-tipo=adolescente] fieldset::after{content:none}
/* La leyenda flota dentro del recuadro para no cortar el borde. */
.intake-form legend{float:left;width:100%;padding:0;margin:0 0 6px;font-family:'Playfair Display',Georgia,serif;font-size:1.45rem}
.intake-form legend+*{clear:both}
.intake-form .field{margin-top:18px}
.intake-form legend+.field{margin-top:8px}
.intake-form .field label,.intake-form .field .label{display:block;font-weight:500;margin-bottom:6px}
.intake-form .hint{display:block;font-size:.88rem;color:var(--muted);margin:-2px 0 8px}
.intake-form input:not([type=checkbox]),.intake-form textarea{display:block;width:100%;border:1px solid var(--line);border-radius:6px;background:var(--paper);color:var(--ink);padding:12px 14px;font:inherit}
.intake-form textarea{resize:vertical;min-height:120px}
.intake-form input:focus,.intake-form textarea:focus{border-color:var(--purple)}
.intake-form .error{display:none;color:#b3261e;font-size:.88rem;margin-top:6px}
.intake-form .invalid input:not([type=checkbox]),.intake-form .invalid textarea{border-color:#b3261e}
.intake-form .invalid .error{display:block}
.intake .req{color:var(--rose)}
.intake-form .choice{display:flex!important;gap:10px;align-items:flex-start;cursor:pointer;font-weight:400!important}
.intake-form .choice input{flex:none;width:18px;height:18px;margin-top:5px;accent-color:var(--purple)}
.intake-form details{margin-top:8px;border:1px solid var(--line);border-radius:10px;background:var(--paper)}
.intake-form summary{cursor:pointer;padding:14px 18px;font-weight:500}
.intake-form .conditions{padding:0 20px 18px;color:var(--muted);font-size:.93rem;line-height:1.7;max-height:360px;overflow:auto}
.intake-form .conditions h3{font-family:inherit;font-size:.95rem;font-weight:600;color:var(--ink);margin:16px 0 6px}
.intake-form .conditions ul,.intake-form .conditions ol{padding-left:1.2em;margin:0}
.intake-form .trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.intake-form .captcha:empty{display:none}
.intake-submit{display:flex;flex-wrap:wrap;gap:16px;align-items:center}
.intake-submit button{border:0;cursor:pointer}
.intake-submit button[disabled]{opacity:.6;cursor:progress}
.intake-status{margin:0;color:var(--muted)}
.intake-status.is-error{color:#b3261e}
.intake-done{margin-top:36px;padding:28px;border:1px solid var(--line);border-top:5px solid var(--accent-lilac);border-radius:14px;background:var(--card-lilac)}
.intake-done h2{font-size:1.8rem;margin-bottom:10px}
.intake-done p{color:var(--muted)}
:root[data-theme="dark"] .intake-form .error,:root[data-theme="dark"] .intake-status.is-error{color:#ffb4ab}
:root[data-theme="dark"] .intake-form .invalid input:not([type=checkbox]),:root[data-theme="dark"] .intake-form .invalid textarea{border-color:#ffb4ab}
@media(max-width:720px){.intake-form fieldset{padding:20px}.intake-submit .button{width:100%}}
