
.s360-contact{--sc-gold:#e7c58a;--sc-panel:#1d2428;--sc-ink:#f7f1e6;--sc-line:#806b48}
.s360-contact [hidden]{display:none!important}
.s360-contact .contacto-intro{position:relative;overflow:hidden;background:radial-gradient(ellipse at 90% 15%,#2b4e4650,transparent 70%),linear-gradient(130deg,#14191d,#1d2428);border:1px solid #67644e;border-radius:20px;padding:clamp(2rem,6vw,5rem)}
.s360-contact .contacto-intro h1{font-size:clamp(2.7rem,6.5vw,5.4rem);line-height:1.07;letter-spacing:-.052em;max-width:810px}
.s360-contact .contacto-intro h1 em{font-style:normal;color:var(--sc-gold)}
.s360-contact .contacto-intro p{max-width:640px;font-size:1.07rem;line-height:1.7;color:#d8e1d8;margin:1.2rem 0}
.s360-contact .s360-eyebrow{color:var(--sc-gold);font-size:.76rem;letter-spacing:.19em;font-weight:850}
.s360-contact .s360-trust{display:flex;gap:.7rem 1.5rem;flex-wrap:wrap;margin-top:1.5rem;color:#c5d3cc;font-size:.8rem}
.s360-contact .s360-trust span:before{content:"✓";color:#8fcbb6;margin-right:.5rem}
.s360-contact #contact-form-v2{padding:0;border:1px solid var(--sc-line);border-radius:18px;background:linear-gradient(145deg,#212a2d,#171d20);overflow:hidden;box-shadow:0 15px 45px #0003}
.s360-contact .s360-topline{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1.2rem 1.5rem;color:var(--sc-gold);font-size:.77rem;font-weight:800;letter-spacing:.08em;border-bottom:1px solid #434d49}
.s360-contact .s360-progress{background:#3c4641;height:4px}.s360-contact #s360-progress-fill{width:33.33%;height:100%;display:block;background:linear-gradient(90deg,#8fcbb6,#e7c58a);transition:width .2s}
.s360-contact .s360-stage{padding:clamp(1.1rem,3vw,2rem)}.s360-contact .s360-stage h2{font-size:clamp(1.6rem,3vw,2.25rem);margin:.6rem 0;letter-spacing:-.03em}
.s360-contact .s360-stage>p{color:#d1dbd3;font-size:.92rem;margin:.5rem 0 1.3rem}
.s360-contact .s360-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
.s360-contact .s360-service{border:1px solid #57645b;background:#20292b;color:var(--sc-ink);border-radius:12px;min-height:75px;padding:.9rem;display:flex;align-items:center;gap:.8rem;text-align:left;cursor:pointer}
.s360-contact .s360-service:hover,.s360-contact .s360-service[aria-pressed=true]{border-color:var(--sc-gold);background:#303128}
.s360-contact .s360-service-icon{width:27px;font-size:1.55rem;flex:none;color:var(--sc-gold);text-align:center}
.s360-contact .s360-service strong{display:block;font-size:.91rem;line-height:1.3}.s360-contact .s360-service small{display:block;font-size:.76rem;color:#c4d0c7;line-height:1.4;margin-top:.35rem}
.s360-contact .s360-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:1.7rem}
.s360-contact .s360-action{border:1px solid #a78b5c;border-radius:9px;background:transparent;color:#faedcf;min-height:44px;padding:.65rem 1.1rem;font-weight:700;cursor:pointer}
.s360-contact .s360-action.primary{background:linear-gradient(130deg,#f1dda8,#d2ac72);border-color:transparent;color:#181b1a}.s360-contact .s360-action:disabled{opacity:.47;cursor:not-allowed}
.s360-contact .s360-error{color:#ffb9ae;min-height:1.2rem;font-size:.81rem}.s360-contact .s360-review{display:grid;gap:10px}
.s360-contact .s360-review>div{background:#1b2527;border:1px solid #56665f;border-radius:10px;padding:.9rem 1rem;overflow-wrap:anywhere}
.s360-contact .s360-review strong{display:block;color:var(--sc-gold);font-size:.75rem;margin-bottom:.25rem;text-transform:uppercase;letter-spacing:.06em}
.s360-contact .s360-review span{font-size:.93rem;white-space:pre-wrap}
.s360-contact .s360-consent{display:flex;gap:.7rem;align-items:flex-start;margin-top:1.25rem;font-size:.84rem}
.s360-contact .s360-consent input{width:18px;min-width:18px;min-height:18px;accent-color:var(--sc-gold);margin-top:.2rem}
.s360-contact .contacto-submit{border-radius:9px}.s360-contact .contacto-status{padding:0 1.5rem}
.s360-contact aside{border-radius:16px;border-color:var(--sc-line);background:var(--sc-panel)}
@media(max-width:750px){.s360-contact .contacto-intro{padding:2rem 1.2rem}.s360-contact .s360-services{grid-template-columns:1fr}.s360-contact .s360-topline{padding:1rem}}
@media(prefers-reduced-motion:reduce){.s360-contact #s360-progress-fill{transition:none}}
