/* ---------- contacto ---------- */
.c-hero{padding-top:clamp(150px,16vw,220px);padding-bottom:clamp(40px,5vw,72px)}
.c-hero h1{font-size:clamp(3rem,11.5vw,12rem)}
.c-hero p{color:var(--soft);max-width:46ch;font-size:1.12rem;margin:28px 0 0}
.quick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(10px,1.2vw,16px)}
.quick a{display:grid;gap:10px;padding:clamp(24px,3vw,40px);border:1px solid var(--line);background:var(--ink-2);min-width:0;transition:border-color .2s,background .2s}
.quick a:hover{border-color:var(--fg)}
.quick a.main{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.quick a.main:hover{background:var(--fg);border-color:var(--fg)}
.quick .k{font-size:.8rem;opacity:.75}
.quick .v{font-family:var(--f-display);font-stretch:125%;font-weight:800;text-transform:uppercase;letter-spacing:-.01em;font-size:clamp(1.2rem,2vw,1.7rem);line-height:1.1;overflow-wrap:anywhere}
.quick .v.lower{text-transform:none;font-size:clamp(1rem,1.5vw,1.3rem)}
.quick .h{font-size:.85rem;opacity:.75}
.c-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:clamp(32px,6vw,96px);align-items:start}
.c-grid h2{font-size:clamp(2rem,4.4vw,3.8rem);margin-bottom:12px}
.c-grid .intro{color:var(--soft);margin:0 0 36px;max-width:50ch}
form{display:grid;gap:22px}
.row2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
label,.legend{display:block;font-size:.8rem;color:var(--muted);margin-bottom:8px}
input[type=text],input[type=email],input[type=tel],textarea{width:100%;background:transparent;border:0;border-bottom:1px solid var(--line);color:var(--fg);font:inherit;font-size:1.05rem;padding:10px 0;border-radius:0;transition:border-color .2s}
input:focus,textarea:focus{outline:none;border-color:var(--accent)}
textarea{min-height:140px;resize:vertical}
fieldset{border:0;margin:0;padding:0;min-width:0}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips input{position:absolute;opacity:0;pointer-events:none}
.chips label{margin:0;padding:11px 16px;border:1px solid var(--line);color:var(--soft);font-size:.9rem;cursor:pointer;transition:border-color .2s,color .2s,background .2s}
.chips input:checked + label{background:var(--fg);color:var(--ink);border-color:var(--fg)}
.chips input:focus-visible + label{outline:2px solid var(--accent);outline-offset:2px}
.check{display:flex;gap:12px;align-items:flex-start;font-size:.88rem;color:var(--soft)}
.check input{margin-top:3px;accent-color:var(--accent);width:16px;height:16px;flex:none}
.check a{border-bottom:1px solid var(--line)}
.form-foot{display:flex;flex-wrap:wrap;align-items:center;gap:20px}
button.btn{cursor:pointer}
.note{font-size:.9rem;color:var(--soft);margin:0}
.note.ok{color:var(--accent)}
.note.err{color:#e58a7a}
aside.card2{border:1px solid var(--line);background:var(--ink-2);padding:clamp(24px,3vw,36px);display:grid;gap:26px;position:sticky;top:24px}
aside h3{margin:0 0 8px;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
aside p{margin:0;color:var(--soft)}
aside .strong{color:var(--fg);font-weight:600}
aside a.link{color:var(--fg);border-bottom:1px solid var(--line)}
aside a.link:hover{color:var(--accent);border-color:var(--accent)}
aside .rating svg{width:28px;height:28px}
.after{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line)}
.after div{padding:32px clamp(20px,3vw,44px) 0;border-left:1px solid var(--line)}
.after div:first-child{border-left:0;padding-left:0}
.after .n{font-stretch:125%;font-weight:800;font-size:.85rem;color:var(--muted)}
.after h3{font-family:var(--f-serif);font-weight:400;font-size:clamp(1.8rem,2.6vw,2.4rem);line-height:1;margin:16px 0 12px}
.after p{margin:0;color:var(--soft);max-width:34ch}
@media (max-width:900px){
  .quick{grid-template-columns:1fr}
  .c-grid{grid-template-columns:1fr}
  aside.card2{position:static}
  .row2{grid-template-columns:1fr}
  .after{grid-template-columns:1fr}
  .after div{border-left:0;border-top:1px solid var(--line);padding:28px 0}
  .after div:first-child{border-top:0}
}
