/* La Despensa — Contact Form
 * v6.26: isolated first-party skin aligned with the site's plaque / dark-wood
 * visual language. No dependency on legacy MetForm generated CSS.
 */
.ldes-form-honeypot{
    position:absolute!important;
    left:-9999px!important;
    width:1px!important;
    height:1px!important;
    overflow:hidden!important;
}

.elementor-widget-ld_metform,
.elementor-widget-ld_metform > .elementor-widget-container,
.ldes-metform-response-props,
.formpicker_warper,
.mf-widget-container,
.ldes-mf-form-wrapper,
.ldes-contact-form,
.ldes-contact-form .metform-form-main-wrapper,
.ldes-contact-form .ldes-form-document{
    width:100%;
    max-width:100%;
    margin:0!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
}

.ldes-contact-form{display:block;position:relative}
.ldes-contact-form .ldes-form-document{display:block}
.ldes-contact-form .ldes-form-container{width:100%;min-width:0;box-sizing:border-box}

/* Cream plaque: same family as the information card already used on Contact. */
.ldes-contact-form .ldes-form-root{
    position:relative;
    overflow:hidden;
    padding:24px 24px 26px!important;
    background:
        radial-gradient(circle at 13px 13px,#BFA98E 0 2px,#F4E9D8 2.6px 5px,transparent 5.5px),
        radial-gradient(circle at calc(100% - 13px) 13px,#BFA98E 0 2px,#F4E9D8 2.6px 5px,transparent 5.5px),
        radial-gradient(circle at 13px calc(100% - 13px),#BFA98E 0 2px,#F4E9D8 2.6px 5px,transparent 5.5px),
        radial-gradient(circle at calc(100% - 13px) calc(100% - 13px),#BFA98E 0 2px,#F4E9D8 2.6px 5px,transparent 5.5px),
        linear-gradient(145deg,#FFFDF8 0%,#F5ECDF 62%,#EEE1D0 100%)!important;
    border:1px solid rgba(121,86,49,.34)!important;
    border-radius:10px!important;
    box-shadow:
        0 14px 28px rgba(28,18,10,.18),
        inset 0 1px 0 rgba(255,255,255,.9),
        inset 0 -1px 0 rgba(123,86,49,.08)!important;
}

.ldes-contact-form .ldes-form-root::before{
    content:"";
    position:absolute;
    left:24px;
    right:24px;
    top:0;
    height:1px;
    background:linear-gradient(90deg,transparent,rgba(197,137,64,.75),transparent);
    pointer-events:none;
}

.ldes-contact-form .ldes-form-root > *{position:relative;z-index:1}
.ldes-contact-form .ldes-form-inner{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important}
.ldes-contact-form .elementor-widget{min-width:0;width:100%;margin:0!important}
.ldes-contact-form .elementor-widget-container,
.ldes-contact-form .mf-input-wrapper{width:100%}

.ldes-contact-form .e-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    column-gap:10px!important;
    row-gap:10px!important;
}
.ldes-contact-form .e-flex{display:flex!important;flex-wrap:wrap!important;gap:10px!important}

/* Labels are hidden in the saved form; keep support for future Elementor edits. */
.ldes-contact-form .mf-input-label{
    display:block;
    margin:0 0 7px;
    color:#2A2018;
    font-family:"Montserrat","Poppins",Arial,sans-serif;
    font-size:11px;
    font-weight:600;
    line-height:1.35;
    letter-spacing:.05em;
    text-transform:uppercase;
}
.ldes-contact-form .mf-input-required-indicator{margin-left:3px;color:#9B4A36}

.ldes-contact-form .mf-input{
    display:block;
    width:100%;
    min-width:0;
    box-sizing:border-box;
    min-height:42px;
    margin:0;
    padding:11px 13px!important;
    border:1px solid rgba(156,108,50,.38)!important;
    border-radius:4px!important;
    background:rgba(255,255,255,.78)!important;
    color:#241B14!important;
    font-family:"Montserrat","Poppins",Arial,sans-serif!important;
    font-size:12px!important;
    font-weight:400!important;
    line-height:1.4!important;
    outline:0;
    box-shadow:inset 0 1px 1px rgba(61,39,20,.035)!important;
    transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease;
}

.ldes-contact-form textarea.mf-input{
    min-height:126px!important;
    resize:vertical;
}

.ldes-contact-form .mf-input::placeholder{
    color:#6E6257!important;
    opacity:1;
    font:400 12px/1.4 "Montserrat","Poppins",Arial,sans-serif;
}

.ldes-contact-form .mf-input:hover{border-color:rgba(156,108,50,.64)!important;background:#FFFDF9!important}
.ldes-contact-form .mf-input:focus{
    background:#FFF!important;
    border-color:#C58940!important;
    box-shadow:0 0 0 2px rgba(197,137,64,.13)!important;
}

.ldes-contact-form .mf-error-message{
    display:block;
    min-height:0;
    margin-top:4px;
    color:#8F3428;
    font:500 11px/1.35 "Montserrat","Poppins",Arial,sans-serif;
}
.ldes-contact-form .mf-input[aria-invalid="true"]{border-color:#9B3C2F!important;box-shadow:0 0 0 2px rgba(155,60,47,.10)!important}
.ldes-contact-form .mf-input-help{display:block;margin-top:5px;color:#7B7067;font:400 11px/1.4 "Montserrat","Poppins",Arial,sans-serif}

/* Site-style black plaque button: dark wood, thin gold edge, spaced uppercase. */
.ldes-contact-form .mf-btn-wraper{
    display:flex;
    width:100%;
    justify-content:flex-start!important;
    padding-top:2px;
}
.ldes-contact-form .metform-btn,
.ldes-contact-form .metform-submit-btn{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:10px!important;
    min-width:132px;
    min-height:40px!important;
    margin:0!important;
    padding:11px 17px!important;
    border:1px solid #9C6C32!important;
    border-radius:5px!important;
    background:
        radial-gradient(120% 90% at 50% 0%,rgba(255,255,255,.10) 0%,rgba(255,255,255,0) 58%),
        repeating-linear-gradient(8deg,rgba(255,255,255,.035) 0 1px,transparent 1px 8px),
        linear-gradient(135deg,#070707 0%,#171717 48%,#0B0B0B 100%)!important;
    color:#FFF7EA!important;
    font-family:"Montserrat","Poppins",Arial,sans-serif!important;
    font-size:10px!important;
    font-weight:650!important;
    line-height:1!important;
    letter-spacing:.16em;
    text-transform:uppercase;
    cursor:pointer;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.12),
        inset 0 -8px 12px rgba(0,0,0,.28),
        0 7px 14px rgba(28,18,10,.20)!important;
    transform:none!important;
    filter:none!important;
    opacity:1!important;
    transition:border-color .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease!important;
}
.ldes-contact-form .metform-btn:hover,
.ldes-contact-form .metform-submit-btn:hover{
    border-color:#C58940!important;
    color:#D8A85F!important;
    transform:translateY(-1px)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 9px 18px rgba(28,18,10,.24)!important;
}
.ldes-contact-form .ldes-contact-btn-arrow{
    color:#C58940;
    font-size:14px;
    line-height:1;
    letter-spacing:0;
    transform:translateY(-.5px);
}
.ldes-contact-form .metform-submit-btn[disabled]{cursor:wait;opacity:.56!important;transform:none!important}

/* Success is a real state, not a tiny green line under the card. */
.ldes-form-response:empty{display:none}
.ldes-form-response{margin:0;font-family:"Montserrat","Poppins",Arial,sans-serif}
.ldes-contact-form.is-complete .ldes-form-document{display:none!important}
.ldes-contact-form.is-complete .ldes-form-response{display:block}
.ldes-contact-success{
    position:relative;
    overflow:hidden;
    min-height:230px;
    box-sizing:border-box;
    padding:34px 30px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    background:
        radial-gradient(circle at 14px 14px,#BFA98E 0 2px,#F4E9D8 2.6px 5px,transparent 5.5px),
        radial-gradient(circle at calc(100% - 14px) 14px,#BFA98E 0 2px,#F4E9D8 2.6px 5px,transparent 5.5px),
        radial-gradient(circle at 14px calc(100% - 14px),#BFA98E 0 2px,#F4E9D8 2.6px 5px,transparent 5.5px),
        radial-gradient(circle at calc(100% - 14px) calc(100% - 14px),#BFA98E 0 2px,#F4E9D8 2.6px 5px,transparent 5.5px),
        linear-gradient(145deg,#FFFDF8,#F2E6D5);
    border:1px solid rgba(197,137,64,.55);
    border-radius:10px;
    box-shadow:0 14px 28px rgba(28,18,10,.16),inset 0 1px 0 rgba(255,255,255,.9);
}
.ldes-contact-success__mark{
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    margin:0 0 14px;
    border:1px solid #C58940;
    border-radius:50%;
    background:#17130F;
    color:#D8A85F;
    font:600 20px/1 Georgia,serif;
    box-shadow:0 6px 14px rgba(23,19,15,.18);
}
.ldes-contact-form .ldes-contact-success{
    color:#211A15!important;
}
.ldes-contact-form .ldes-contact-success__title{
    margin:0!important;
    color:#211A15!important;
    opacity:1!important;
    text-shadow:none!important;
    -webkit-text-fill-color:#211A15!important;
    font:400 28px/1.1 "Gilda Display",Georgia,serif!important;
}
.ldes-contact-form .ldes-contact-success__message{
    max-width:460px;
    margin:10px 0 0!important;
    color:#51463D!important;
    opacity:1!important;
    text-shadow:none!important;
    -webkit-text-fill-color:#51463D!important;
    font:500 13px/1.65 "Montserrat","Poppins",Arial,sans-serif!important;
}
.ldes-contact-form .ldes-form-response.is-error{
    display:block;
    margin:10px 0 0;
    padding:9px 11px;
    border-left:2px solid #9B3C2F;
    background:rgba(255,247,240,.9);
    color:#8F3428;
    font:500 11px/1.45 "Montserrat","Poppins",Arial,sans-serif;
}

@media (max-width:1024px){
    .ldes-contact-form .ldes-form-root{padding:22px!important}
}

@media (max-width:767px){
    .ldes-contact-form .ldes-form-root{padding:20px 16px!important;border-radius:8px!important}
    .ldes-contact-form .e-grid{grid-template-columns:1fr!important}
    .ldes-contact-form .mf-input{font-size:16px!important}
    .ldes-contact-form .mf-input::placeholder{font-size:14px!important}
    .ldes-contact-form textarea.mf-input{min-height:125px!important}
    .ldes-contact-form .mf-btn-wraper{justify-content:stretch!important}
    .ldes-contact-form .metform-btn,.ldes-contact-form .metform-submit-btn{width:100%;min-width:0;min-height:44px!important}
    .ldes-contact-success{min-height:220px;padding:30px 20px}
    .ldes-contact-success__title{font-size:25px}
}
