/* Contacto: panel derecho al estilo de la web (maqueta de Noticias) */
.cq-cp{font-family:"Montserrat",sans-serif;color:#000;width:80%;max-width:560px;margin:0 auto;padding:0 0 50px}
.cq-cp__intro{font-size:16px;font-weight:500;line-height:1.6;margin:0 0 34px;color:#000}
.cq-cp__areas{list-style:none;margin:0 0 40px!important;padding:0!important;border-top:1px solid rgba(0,0,0,.14)}
.cq-cp__areas li{margin:0!important;border-bottom:1px solid rgba(0,0,0,.14)}
.cq-cp button.cq-cp__area{all:unset;box-sizing:border-box;display:grid;grid-template-columns:1fr auto;grid-template-areas:"t arw" "d arw";align-items:center;column-gap:24px;width:100%;padding:24px 0;cursor:pointer}
.cq-cp__t{grid-area:t;font-size:20px;font-weight:600;line-height:1.2;text-transform:uppercase;color:#000;transition:color .25s}
.cq-cp__d{grid-area:d;font-size:14px;font-weight:500;color:#5b5b5b;margin-top:6px}
.cq-cp__arw{grid-area:arw;position:relative;width:120px;height:14px;transition:width .35s cubic-bezier(.2,.8,.2,1)}
.cq-cp__arw::before{content:"";position:absolute;left:0;right:2px;top:50%;height:1.5px;background:#000;transform:translateY(-50%);transition:background .25s}
.cq-cp__arw::after{content:"";position:absolute;right:1px;top:50%;width:9px;height:9px;border-top:1.5px solid #000;border-right:1.5px solid #000;transform:translateY(-50%) rotate(45deg);transition:border-color .25s}
.cq-cp button.cq-cp__area:hover .cq-cp__t,.cq-cp button.cq-cp__area:focus-visible .cq-cp__t{color:#AA2D3F}
.cq-cp button.cq-cp__area:hover .cq-cp__arw{width:150px}
.cq-cp button.cq-cp__area:hover .cq-cp__arw::before{background:#AA2D3F}
.cq-cp button.cq-cp__area:hover .cq-cp__arw::after{border-color:#AA2D3F}
.cq-cp button.cq-cp__area:focus-visible{outline:2px solid #AA2D3F;outline-offset:4px}
.cq-cp__data{display:grid;grid-template-columns:repeat(3,auto);justify-content:space-between;gap:12px 24px}
.cq-cp__data p{margin:0;font-size:14px;font-weight:500;line-height:1.6;color:#000}
.cq-cp__data a{color:#000;text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s,color .2s}
.cq-cp__data a:hover{color:#AA2D3F;border-color:#AA2D3F}
@media (max-width:767px){.cq-cp{width:100%;padding:40px 20px 50px}.cq-cp__intro{font-size:14.6px}.cq-cp__t{font-size:17px}.cq-cp__arw{width:64px}.cq-cp button.cq-cp__area:hover .cq-cp__arw{width:72px}.cq-cp__data{grid-template-columns:1fr}}

/* Modal: sobria, sin tarjetas ni píldoras */
.cq-dlg{border:0;padding:0;background:transparent;max-width:min(640px,calc(100vw - 24px));width:100%;max-height:calc(100dvh - 24px);color:#000}
.cq-dlg::backdrop{background:rgba(12,50,56,.78)}
.cq-dlg[open]{animation:cqDlg .25s ease-out}
@keyframes cqDlg{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.cq-dlg__box{position:relative;background:#fff;padding:clamp(28px,4vw,48px);font-family:"Montserrat",sans-serif;max-height:calc(100dvh - 24px);overflow:auto;overscroll-behavior:contain}
.cq-dlg__box h3{margin:0 0 12px;padding-right:48px;text-transform:uppercase;color:#000}
.cq-dlg__m{font-size:16px;font-weight:500;line-height:1.6;color:#000;margin:0 0 10px}
.cq-dlg p.cq-dlg__vias{font-size:14px;font-weight:500;margin:0 0 26px}
.cq-dlg__vias a{color:#AA2D3F;text-decoration:none;border-bottom:1px solid currentColor}
.cq-dlg button.cq-dlg__x{all:unset;position:absolute;top:18px;right:20px;width:36px;height:36px;display:grid;place-items:center;font-size:30px;line-height:1;color:#000;cursor:pointer}
.cq-dlg button.cq-dlg__x:hover{color:#AA2D3F}
.cq-dlg button.cq-dlg__x:focus-visible{outline:2px solid #AA2D3F}
html.cq-con-modal{overflow:hidden}
html.cq-con-modal body{position:fixed;left:0;right:0;width:100%;padding-right:var(--cq-barra,0px)}

.cq-f__grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 22px}
.cq-f__l{display:flex;flex-direction:column;gap:4px;margin-bottom:18px;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#000}
.cq-f__grid .cq-f__l{margin-bottom:0}
.cq-f__grid+.cq-f__l,.cq-f__grid+.cq-f__file{margin-top:18px}
.cq-f__opt{font-style:normal;font-weight:500;color:#8a8a8a;margin-left:4px;text-transform:none;letter-spacing:0}
.cq-f input:not([type=checkbox]):not([type=file]),.cq-f select,.cq-f textarea{font:500 15px "Montserrat",sans-serif;color:#000;background:transparent;border:0;border-bottom:1px solid rgba(0,0,0,.35);border-radius:0;padding:10px 0;width:100%;box-sizing:border-box;transition:border-color .2s;letter-spacing:0;text-transform:none}
.cq-f textarea{border:1px solid rgba(0,0,0,.25);padding:10px 12px;margin-top:6px}
.cq-f input:focus,.cq-f select:focus,.cq-f textarea:focus{outline:0;border-color:#AA2D3F}
.cq-f [aria-invalid=true]{border-color:#D6264A!important}
.cq-f input[type=file]{font:500 14px "Montserrat",sans-serif;padding:10px 0;text-transform:none;letter-spacing:0}
.cq-f select{appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,#000 50%),linear-gradient(135deg,#000 50%,transparent 50%);background-position:calc(100% - 12px) 18px,calc(100% - 7px) 18px;background-size:5px 5px;background-repeat:no-repeat;padding-right:28px}
.cq-f__hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.cq-f__ok{display:flex;gap:10px;align-items:flex-start;font-size:13px;font-weight:500;line-height:1.5;color:#3d3d3d;margin:4px 0 24px;cursor:pointer;text-transform:none;letter-spacing:0}
.cq-f__ok input{margin-top:2px;width:17px;height:17px;accent-color:#AA2D3F;flex:0 0 auto}
.cq-f__ok a{color:#AA2D3F}
.cq-f button.cq-f__btn{all:unset;display:inline-flex;align-items:center;gap:16px;cursor:pointer;font:600 16px "Montserrat",sans-serif;text-transform:uppercase;color:#000;padding:4px 0}
.cq-f button.cq-f__btn::after{content:"";width:90px;height:1.5px;background:currentColor;transition:width .3s}
.cq-f button.cq-f__btn:hover{color:#AA2D3F}
.cq-f button.cq-f__btn:hover::after{width:120px}
.cq-f button.cq-f__btn:focus-visible{outline:2px solid #AA2D3F;outline-offset:4px}
.cq-f__btn[disabled]{opacity:.5;cursor:wait}
.cq-f__msg{margin:18px 0 0;padding:12px 0 0;border-top:1px solid rgba(0,0,0,.14);font-size:14px;font-weight:500;line-height:1.5}
.cq-f__msg.is-ok{color:#1D5B3A}
.cq-f__msg.is-err{color:#9E1B35}
.cq-f [hidden]{display:none!important}
@media (max-width:600px){.cq-f__grid{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.cq-dlg[open]{animation:none}}
