/*======================================
=            Forms
======================================*/

.woocommerce form .form-row{

    margin:0 0 24px;

}

.woocommerce form .form-row label{

    display:block;
    margin-bottom:8px;

    font-size:14px;
    font-weight:600;

    color:var(--text);

}

.woocommerce-input-wrapper{

    display:block;
    width:100%;

}

.woocommerce form .input-text,
.woocommerce form select,
.woocommerce form textarea{

    display:block;

    width:100%;

    min-height:52px;

    padding:14px 16px;

    border:1px solid var(--border);
    border-radius:12px;

    background:#fff;

    font-size:16px;

    box-sizing:border-box;

    transition:border-color .2s ease;

}

.woocommerce form textarea{

    min-height:120px;
    resize:vertical;

}

.woocommerce form .input-text:focus,
.woocommerce form select:focus,
.woocommerce form textarea:focus{

    outline:none;
    border-color:var(--primary);

}


/*======================================
=            Billing Grid
======================================*/

.woocommerce-billing-fields__field-wrapper{

    display:grid;

    grid-template-columns:repeat(2,minmax(0,1fr));

    gap:24px;

}

.woocommerce-billing-fields__field-wrapper > .form-row{

    margin:0;
    min-width:0;

}

.woocommerce-billing-fields__field-wrapper .form-row-first,
.woocommerce-billing-fields__field-wrapper .form-row-last,
.woocommerce-billing-fields__field-wrapper .form-row-wide{

    width:100% !important;
    float:none !important;
    clear:none !important;

}

.woocommerce-billing-fields__field-wrapper .form-row-wide{

    grid-column:1 / -1;

}


/*======================================
=            Additional fields
======================================*/

.woocommerce-additional-fields{

    margin-top:48px;

}


/*======================================
=            Notices
======================================*/

.woocommerce-error,
.woocommerce-message,
.woocommerce-info{

    display:block;

    margin:0 0 24px;
    padding:16px 20px;

    list-style:none;

    border-radius:12px;

    font-size:14px;
    font-weight:600;
    line-height:1.6;

}

.woocommerce-error li,
.woocommerce-message li,
.woocommerce-info li{

    list-style:none;

}

.woocommerce-error{

    background:rgba(200,60,60,.1);
    color:#B23A3A;

}

.woocommerce-message{

    background:rgba(122,143,99,.12);
    color:var(--primary-hover);

}

.woocommerce-info{

    background:rgba(90,120,200,.1);
    color:#3A5CB2;

}

.woocommerce-message a,
.woocommerce-info a{

    color:inherit;
    text-decoration:underline;
    text-underline-offset:3px;

}


/*======================================
=            Mobile
======================================*/

@media (max-width:768px){

    .woocommerce-billing-fields__field-wrapper{

        grid-template-columns:1fr;

    }

}

