/* sacredvalleyvip.com · contact.css */
.ch{padding:28px 0 20px} .ch .crumbs{margin-top:0} .ch h1{font-size:clamp(1.9rem,3.6vw,2.8rem)} .ch .lead{font-size:1.1rem;max-width:620px}
.chan-s{padding-top:0} .chan{display:grid;grid-template-columns:repeat(4,1fr);gap:16px} .ch-h{font-size:1rem;color:var(--texto-suave);font-weight:600;margin-bottom:6px;letter-spacing:0} .chan .card b{font-size:1.2rem;display:block;margin-bottom:6px} .ch-mail{font-size:1rem!important} .chan .card .btn{margin-top:10px;padding:10px 14px;font-size:.9rem}
.two{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:start} .addr{margin-top:14px}
.cform label{display:block;font-weight:600;font-size:.92rem;margin:12px 0 6px} .cform input,.cform select,.cform textarea{width:100%;padding:12px 14px;border:1px solid var(--linea);border-radius:var(--r-sm);font-family:var(--font);font-size:1rem;background:#fff;color:var(--texto)} .cform textarea{min-height:110px} .cform .btn{margin-top:16px}
.lic{display:grid;grid-template-columns:repeat(3,1fr);gap:14px} .lic .card{text-align:center} .lic b{display:block;font-size:1.1rem;color:var(--verde-texto)}
.hours td{padding:8px 0;border:0} .hours td:last-child{text-align:right;font-weight:700}
@media(max-width:900px){.chan,.two,.lic{grid-template-columns:1fr}}

/* ===== contacto: estado de la oficina, formulario, mapa ===== */
.ostatus{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--linea);border-radius:999px;padding:8px 16px 8px 12px;margin:14px 0 0;max-width:max-content;font-size:.9rem} .ostatus i{width:12px;height:12px;border-radius:50%;background:#C9D4D0;flex:none;box-shadow:0 0 0 3px rgba(201,212,208,.35)} .ostatus.on i{background:var(--verde);box-shadow:0 0 0 3px rgba(42,169,116,.25)} .ostatus.off i{background:#D9534F;box-shadow:0 0 0 3px rgba(217,83,79,.2)} .ostatus b{display:block} .ostatus span{display:block;font-size:.8rem;color:var(--texto-suave)} .ostatus em{font-style:normal;font-size:.8rem;color:var(--verde-texto);font-weight:700;border-left:1px solid var(--linea);padding-left:12px;margin-left:4px}
.cform .f2{display:grid;grid-template-columns:1fr 1fr;gap:12px} .cform .f2 label{margin-top:0} .cform input[type=date],.cform input[type=number]{width:100%}
.maps{display:inline-block;margin:10px 0 4px;font-size:.88rem;font-weight:700;color:var(--verde-texto);text-decoration:none} .maps:hover{text-decoration:underline}
@media(max-width:720px){.ostatus{max-width:none;border-radius:14px} .ostatus em{border:0;padding:0;margin:0;flex:1 1 100%} .cform .f2{grid-template-columns:1fr}}
/* horario de la oficina: con aire, separadores y el día de hoy marcado */
table.hours{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--linea);border-radius:var(--r);overflow:hidden;margin:12px 0 0}
table.hours td{padding:13px 18px;border:0;border-bottom:1px solid var(--linea);font-size:.95rem;color:var(--texto)} table.hours tr:last-child td{border-bottom:0}
table.hours td:last-child{text-align:right;font-weight:700} table.hours tr.today td{background:var(--tinte)} table.hours tr.today td:first-child{box-shadow:inset 3px 0 0 var(--verde);font-weight:700}
table.hours tr.today td:first-child::after{content:attr(data-today);margin-left:8px;font-size:.7rem;font-weight:700;color:#fff;background:var(--verde);border-radius:999px;padding:2px 8px;vertical-align:middle;text-transform:uppercase;letter-spacing:.04em}
@media(max-width:480px){table.hours td{padding:12px 14px;font-size:.88rem} table.hours td:last-child{white-space:nowrap}}
table.hours td{line-height:1.3;vertical-align:middle}
@media(max-width:600px){table.hours{width:100%;table-layout:fixed} table.hours th,table.hours td{white-space:normal;overflow-wrap:break-word;padding-left:12px;padding-right:12px}}
/* canales de contacto: el botón de la tarjeta con el ratón pasa a relleno y los demás a contorno; al salir vuelven WhatsApp y Reserva rellenos */
.chan .card .btn{transition:background .2s,border-color .2s,color .2s}
.chan:has(.card:hover) .card a.btn{background:#fff;border-color:var(--verde);color:var(--verde-texto)}
.chan:has(.card:hover) .card:hover a.btn{background:var(--btn-bg);border-color:var(--btn-bg);color:var(--btn-tx)}
.chan .card a.btn:hover{background:var(--btn-bg-h)!important;border-color:var(--btn-bg-h)!important;color:#fff!important}
