/* Overlay */
.ppcb-modal {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, .7);
    z-index: 999999;
    align-items: center;
    justify-content: center;
    padding: 22px;
    backdrop-filter: blur(5px);
}

.ppcb-modal.open {
    display: flex;
}

/* Modal Box */
.ppcb-box {
    background: #fff;
    width: 760px;
    max-width: 100%;
    max-height: 92vh;
    overflow: auto;
    border-radius: 12px;
    padding: 20px;
    position: relative;
    box-shadow: 0 32px 110px rgba(0,0,0,.34);
    font-family: 'Manrope';
    color: #202327;
}

/* Close Button */
.ppcb-close {
    border: none !important;
    padding: 0px !important;
    margin: 0 !important;
    border-radius: 0 !important;
    font-size: 50px !important;
    font-weight: 100 !important;
    position: absolute !important;
    top: 20px !important;
    right: 20px !important;
    color: #222 !important;
    line-height: 20px;
}

.ppcb-close:hover {
    background-color: inherit!important;
    padding: 0px!important;
}

.ppcb-close:focus{
    background-color: inherit!important;
    padding: 0px!important;
}

/* Header */
.ppcb-head {
    margin-bottom: 24px;
    padding-right: 54px;
}

.ppcb-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    margin-bottom: 5px;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    color: #222;
}

.ppcb-eyebrow::before {
    content: "";
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: #DC6E26;
}

.ppcb-box h3 {
    margin: 0 0 8px;
    font-size: 33px;
    font-weight: 300;
    line-height: 1.2;
    color: #222;
}

.ppcb-box h3 b{
    color: #DC6E26;
    font-weight: 400;
}

.ppcb-box p {
    margin: 0;
    font-size: 16px;
    font-weight: 400;
    color: #222222b3;
}

/* Layout Grid */
.ppcb-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

/* Labels */
.ppcb-box label {
    font-size: 16px;
    font-weight: 400;
    color: #222;
}

/* Inputs */
.ppcb-box input {
    width: 100%;
    box-sizing: border-box;
    margin-top: 7px;
    padding: 12px 16px!important;
    border: 1px solid #DEDEDE!important;
    border-radius: 12px!important;
    background: #fff!important;
    font-size: 15px!important;
    color: #222!important;
    outline: none!important;
    transition: .3s!important;
}

.ppcb-box input:focus {
    border-color: #DC6E26!important;
}

/* Section Title */
.ppcb-section-title {
    margin: 20px 0 10px;
    font-size: 18px;
    font-weight: 500;
    color: #222;
}

/* Submit Button */
.ppcb-submit {
    text-transform: uppercase!important;
    width: 100%;
    margin-top: 18px;
    padding: 18px 30px!important;
    line-height: 1;
    border: none!important;
    border-radius: 50px!important;
    color: #fff!important;
    font-size: 15px!important;
    font-weight: 600!important;
    cursor: pointer;
    transition: .3s!important;
    background: linear-gradient(135deg, #DC6E26 0%, #C45812 100%)!important;
    box-shadow: 0 0 50px rgba(220, 110, 38, 0.15)!important;
}

.ppcb-submit:hover {
    background: linear-gradient(135deg, #C45812 0%, #DC6E26 100%)!important;
    box-shadow: 0 0 50px rgba(220, 110, 38, 0.3)!important;
}

.ppcb-submit:disabled {
    opacity: .65;
    cursor: wait;
    transform: none;
}

/* Messages */
.ppcb-msg {
    margin-top: 13px;
    font-weight: 500;
    color: #c91e1e;
}

.ppcb-msg.ok {
    color: #609931;
    font-weight: 500;
}

.ppcb-empty {
    grid-column: 1 / -1;
    margin: 0;
    color: #667085;
}

/* Mobile */
@media (max-width: 640px) {

    .ppcb-modal {
        padding: 12px;
    }

    .ppcb-box {
        padding: 24px;
        border-radius: 22px;
    }

    .ppcb-box h3 {
        font-size: 25px;
    }

    
    .ppcb-close {
        font-size: 25px!important;
    }
}

/* Custom fields */
.ppcb-custom-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 15px 10px;
    align-items: flex-end;
}

.ppcb-custom-field {
    box-sizing: border-box;
}

.ppcb-custom-field > span {
    display: block;
    margin-bottom: 5px;
}

.ppcb-box textarea,
.ppcb-box select {
    width: 100%;
    box-sizing: border-box;
    margin-top: 7px;
    padding: 12px 16px!important;
    border: 1px solid #DEDEDE!important;
    border-radius: 12px!important;
    background: #fff!important;
    font-size: 15px!important;
    color: #222!important;
    outline: none!important;
    transition: .3s!important;
    font-family: inherit;
}

.ppcb-box textarea {
    min-height: 110px;
    resize: vertical;
}

.ppcb-box textarea:focus,
.ppcb-box select:focus {
    border-color: #DC6E26!important;
}

.ppcb-choice-list {
    margin-top: 15px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 6px 12px;
}

.ppcb-choice {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 15px!important;
}

.ppcb-choice input[type="radio"],
.ppcb-choice input[type="checkbox"] {
    width: 15px;
    height: 15px;
    margin: 0;
    padding: 0!important;
    appearance: auto;
    -webkit-appearance: auto;
}

.ppcb-w-d-25 { width: calc(25% - 8px); }
.ppcb-w-d-50 { width: calc(50% - 5px); }
.ppcb-w-d-75 { width: calc(75% - 3px); }
.ppcb-w-d-100 { width: 100%; }

@media (max-width: 1024px) {
    .ppcb-w-t-25 { width: calc(25% - 8px); }
    .ppcb-w-t-50 { width: calc(50% - 5px); }
    .ppcb-w-t-75 { width: calc(75% - 3px); }
    .ppcb-w-t-100 { width: 100%; }
}

@media (max-width: 640px) {
    .ppcb-w-m-50 { width: calc(50% - 5px); }
    .ppcb-w-m-100 { width: 100%; }
    .ppcb-choice-list { grid-template-columns: 1fr; }
}

/* v2 dynamic-only forms */
.ppcb-custom-grid{display:flex;flex-wrap:wrap;gap:14px;margin:0 -7px}.ppcb-custom-field{box-sizing:border-box;padding:0 7px;display:block}.ppcb-custom-field>span{display:block;font-weight:500}.ppcb-box textarea,.ppcb-box select{width:100%;box-sizing:border-box;margin-top:7px;padding:12px 16px!important;border:1px solid #DEDEDE!important;border-radius:12px!important;background:#fff!important;font-size:15px!important;color:#222!important;outline:none!important}.ppcb-choice-list{margin-top:15px;display:flex;flex-wrap:wrap;gap:6px 12px}.ppcb-choice{display:flex;align-items:center;gap:7px}.ppcb-choice input{width:auto!important;margin:0!important;padding:0!important}.ppcb-w-d-25{width:25%}.ppcb-w-d-50{width:50%}.ppcb-w-d-75{width:75%}.ppcb-w-d-100{width:100%}
@media(max-width:900px){.ppcb-w-t-25{width:25%}.ppcb-w-t-50{width:50%}.ppcb-w-t-75{width:75%}.ppcb-w-t-100{width:100%}}
@media(max-width:600px){.ppcb-w-m-50{width:50%}.ppcb-w-m-100{width:100%}.ppcb-box h3{font-size:28px}.ppcb-box{padding:20px}.ppcb-head{padding-right:42px}}

/* v2.0.1 reliable responsive field widths */
.ppcb-custom-grid{
    display:grid !important;
    grid-template-columns:repeat(12,minmax(0,1fr));
    gap:14px 10px;
    margin:0;
    align-items:end;
}
.ppcb-custom-field{width:auto !important;max-width:none !important;padding:0 !important;min-width:0;}
.ppcb-w-d-25{grid-column:span 3}.ppcb-w-d-50{grid-column:span 6}.ppcb-w-d-75{grid-column:span 9}.ppcb-w-d-100{grid-column:span 12}
@media(max-width:900px){
 .ppcb-w-t-25{grid-column:span 3}.ppcb-w-t-50{grid-column:span 6}.ppcb-w-t-75{grid-column:span 9}.ppcb-w-t-100{grid-column:span 12}
}
@media(max-width:600px){
 .ppcb-w-m-50{grid-column:span 6}.ppcb-w-m-100{grid-column:span 12}
}
