/*
 * peptilab/wholesale-form — frontend styles
 * Left: title + subtitle. Right: CF7 in white card.
 */

.pl-wholesale-form {
    width:      100%;
    background: #F7F9FC;
}

.pl-wholesale-form__inner {
    width:      100%;
    margin:     0 auto;
    padding:    80px 60px;
    box-sizing: border-box;
    display:    grid;
    grid-template-columns: 1fr 2fr;
    gap:        40px;
    align-items: start;
    max-width: 1360px;
}

/* ── Left column ── */

.pl-wholesale-form__left {
    position: sticky;
    top:      120px;
    display:  flex;
    flex-direction: column;
    gap: 24px;
}

.pl-wholesale-form__title {
    color: #1A1A1A;

/* Switzer title Desktop/H2 Switzer */
font-family: 'Switzer';
font-size: 40px !important;
font-style: normal;
font-weight: 500;
line-height: 48px !important; /* 120% */
text-transform: capitalize;
    margin:      0;
}

.pl-wholesale-form__subtitle {
   color: #444;

/* 16/Regular */
font-family: 'Inter';
font-size: 16px;
font-style: normal;
font-weight: 400;
line-height: 24px; /* 150% */
    margin:      0;
}

/* ── Right column — card ── */

.pl-wholesale-form__card {
    background:    #fff;
    border-radius: 24px;
    border: 1px solid var(--light-grey, #E7EAEF);
    padding:       40px;
}

/* ── Disclaimer ── */

.pl-wholesale-form__disclaimer {
    border-top: 1px solid #E8EDF3;
    padding:    24px 60px;
    box-sizing: border-box;
}

.pl-wholesale-form__disclaimer-inner {
    max-width:   1360px;
    width:       100%;
    margin:      0 auto;
    color:       #888;
    font-family: Inter, sans-serif;
    font-size:   13px;
    font-weight: 400;
    line-height: 20px;
}

.pl-wholesale-form__disclaimer-text {
    margin:      32px 0 0;
    color:       var(--grey-blue-darker, #6E7787);
    font-family: Inter, sans-serif;
    font-size:   13px;
    font-style:  normal;
    font-weight: 400;
    line-height: 21px;
}

/* ══════════════════════════════════════════════
   CF7 FORM STYLING
   ══════════════════════════════════════════════ */

/* Section headers inside form */
.pl-wholesale-form__card .pl-wf__section-title {
    color: #1A1A1A;
font-family: 'Inter';
font-size: 18px;
font-style: normal;
font-weight: 600;
line-height: normal;
    margin:      0 0 20px;
}
.pl-wholesale-form__card .pl-wf__section-title.pt-border-pl{
    border-top: 1px solid #E5E5E5;
    margin-top: 20px;
    padding-top: 20px;
}
.pl-wholesale-form .wpcf7-list-item label{
        display: flex;
    align-items: center;
    gap: 10px;
}
.pl-wholesale-form .wpcf7-list-item label span{
    color: #444;
font-family: Inter;
font-size: 14px;
font-style: normal;
font-weight: 400;
line-height: 18px; /* 128.571% */
}

.pl-wholesale-form__card .pl-wf__section-title:not(:first-child) {
    margin-top: 32px;
}

/* Field wrapper */
.pl-wholesale-form__card .pl-wf__field {
    display:        flex;
    flex-direction: column;
    gap:            8px;
    margin-bottom:  20px;
}

.pl-wholesale-form__card .pl-wf__field:last-child {
    margin-bottom: 0;
}

/* Two-column row */
.pl-wholesale-form__card .pl-wf__row--2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

/* Labels */
.pl-wholesale-form__card .pl-wf__label,
.pl-wholesale-form__card label {
   color: #1A1A1A;
font-family: Inter;
font-size: 14px;
font-style: normal;
font-weight: 500;
line-height: 20px; /* 142.857% */
}
.pl-wholesale-form__card .pl-wf__field.pl-wf__field--acceptance{
    flex-direction: row;
    align-items: center;
    color: #444;

/* 12/Regular */
font-family: Inter;
font-size: 12px;
font-style: normal;
font-weight: 400;
line-height: 16px; /* 133.333% */
}

/* Text / email / tel / url inputs */
.pl-wholesale-form__card input[type="text"],
.pl-wholesale-form__card input[type="email"],
.pl-wholesale-form__card input[type="tel"],
.pl-wholesale-form__card input[type="url"],
.pl-wholesale-form__card input[type="number"],
.pl-wholesale-form__card select,
.pl-wholesale-form__card textarea {
    width:         100%;
    box-sizing:    border-box;
    font-family:   Inter, sans-serif;
    font-size:     15px;
    font-weight:   400;
    color:         #1A1A1A;
    background:    #F7F9FC;
    border:        1px solid #D8DFE8;
    border-radius: 12px;
    padding:       11px 16px;
    line-height:   24px;
    transition:    border-color .2s ease, box-shadow .2s ease;
    outline:       none;
    -webkit-appearance: none;
    appearance:    none;
    border-radius: var(--Big, 32px);
border: 1px solid var(--light-grey, #E7EAEF);
background: var(--primary-2, #F7F9FC);
color: var(--grey-blue-darker, #6E7787);
font-family: Inter;
font-size: 14px;
font-style: normal;
font-weight: 400;
line-height: 20px; /* 142.857% */
padding: 16px;
max-height: 52px;;
}
.pl-wholesale-form__card textarea{
    max-height: unset;
}

.pl-wholesale-form__card input::placeholder,
.pl-wholesale-form__card textarea::placeholder {
    color: #AAB4BE;
}



/* Select arrow */
.pl-wholesale-form__card select {
    background-image:    url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 6L8 10L12 6' stroke='%23888' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat:   no-repeat;
    background-position: right 14px center;
    background-size:     16px 16px;
    padding-right:       40px;
}

/* Textarea */
.pl-wholesale-form__card textarea {
    resize:     vertical;
    min-height: 120px;
}

/* Checkboxes — 3-column grid */
.pl-wholesale-form__card .wpcf7-checkbox {
    display:               grid;
    grid-template-columns: repeat(3, 1fr);
    gap:                   12px 16px;
}

.pl-wholesale-form__card .wpcf7-checkbox .wpcf7-list-item,
.pl-wholesale-form__card .pl-wf__checkboxes .wpcf7-list-item {
    display:     flex;
    align-items: center;
    gap:         8px;
    margin:      0;
}

.pl-wholesale-form__card .wpcf7-checkbox input[type="checkbox"],
.pl-wholesale-form__card .wpcf7-acceptance input[type="checkbox"] {
    width:         18px;
    height:        18px;
       border-radius: 2px;
    border: 1px solid #E5E5E5;
    background: #FFF;
    cursor:        pointer;
    flex-shrink:   0;
    appearance:    none;
    -webkit-appearance: none;
    transition:    border-color .15s ease, background .15s ease;
}

.pl-wholesale-form__card .wpcf7-checkbox input[type="checkbox"]:checked,
.pl-wholesale-form__card .wpcf7-acceptance input[type="checkbox"]:checked {
    background:   #537FF4;
    border-color: #537FF4;
    background-image:    url("data:image/svg+xml,%3Csvg width='11' height='8' viewBox='0 0 11 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 4L4 7L10 1' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat:   no-repeat;
    background-position: center;
    background-size:     11px 8px;
}

/* Radio buttons */
.pl-wholesale-form__card .wpcf7-radio .wpcf7-list-item {
    display:     inline-flex;
    align-items: center;
    gap:         8px;
    margin:      0 20px 8px 0;
}

.pl-wholesale-form__card .wpcf7-radio input[type="radio"] {
    width:         18px;
    height:        18px;
    border:        1.5px solid #D8DFE8;
    border-color: rgba(229, 229, 229, 1);
    border-radius: 50%;
    background:    rgba(255, 255, 255, 1);
    cursor:        pointer;
    flex-shrink:   0;
    appearance:    none;
    -webkit-appearance: none;
    transition:    border-color .15s ease, background .15s ease;
}

.pl-wholesale-form__card .wpcf7-radio input[type="radio"]:checked {
    border-color: #537FF4;
    background:   #537FF4;
    box-shadow:   inset 0 0 0 4px #fff;
}

/* Acceptance (terms) */
.pl-wholesale-form__card .wpcf7-acceptance {
    display:    flex;
    align-items: flex-start;
    gap:        10px;
    margin-top: 8px;
}

.pl-wholesale-form__card .wpcf7-acceptance .wpcf7-list-item {
    display:     flex;
    align-items: flex-start;
    gap:         10px;
    margin:      0;
}

.pl-wholesale-form__card .wpcf7-acceptance .wpcf7-list-item-label {
    font-family: Inter, sans-serif;
    font-size:   14px;
    color:       #555;
    line-height: 22px;
}

/* Submit button */
.pl-wholesale-form__card input[type="submit"],
.pl-wholesale-form__card .wpcf7-submit {
    display:         inline-flex;
    align-items:     center;
    justify-content: center;
    margin-top:      20px;
    background:      #537FF4 !important;
    color:           #fff !important;
    font-family:     Inter, sans-serif;
    font-size:       16px;
    font-weight:     600;
    line-height:     1.5;
    padding:         14px 32px;
    border:          0;
    border-radius:   999px;
    cursor:          pointer;
    transition:      background .22s ease, transform .22s ease;
    width:           auto;
}

.pl-wholesale-form__card input[type="submit"]:hover,
.pl-wholesale-form__card .wpcf7-submit:hover {
    background: #3a67e0 !important;
    transform:  translateY(-1px);
}

/* Success message — covers both AJAX (.wpcf7-mail-sent-ok) and server-side redirect (form[data-status="sent"]) */
.pl-wholesale-form .wpcf7-mail-sent-ok,
.pl-wholesale-form .wpcf7-form[data-status="sent"] .wpcf7-response-output {
    display:       flex;
    align-items:   center;
    gap:           12px;
    margin:        20px 0 0;
    padding:       15px 18px;
    border-radius: var(--Big, 32px);
    font-family:   Inter, sans-serif;
    font-size:     14px;
    font-weight:   500;
    line-height:   normal;
    color:         #1A1A1A;
    background:    #F0F8D9;
    border:        0 !important;
}

.pl-wholesale-form .wpcf7-mail-sent-ok::before,
.pl-wholesale-form .wpcf7-form[data-status="sent"] .wpcf7-response-output::before {
    content:     "";
    display:     inline-block;
    flex-shrink: 0;
    width:       18px;
    height:      18px;
    background-image:    url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3.5 9.5L7 13L14.5 5' stroke='%231A1A1A' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat:   no-repeat;
    background-position: center;
    background-size:     18px 18px;
}

.pl-wholesale-form__card .wpcf7-validation-errors,
.pl-wholesale-form__card .wpcf7-spam-blocked {
    background: #FEF2F2;
    color:      #b91c1c;
}

/* Validation error on field */
.pl-wholesale-form__card .wpcf7-not-valid-tip {
    font-family: Inter, sans-serif;
    font-size:   12px;
    color:       #b91c1c;
    margin-top:  4px;
    display:     block;
}

.pl-wholesale-form__card .wpcf7-not-valid input,
.pl-wholesale-form__card .wpcf7-not-valid select,
.pl-wholesale-form__card .wpcf7-not-valid textarea {
    border-color: #f87171;
}

/* ── Responsive ── */

@media (max-width: 980px) {
    .pl-wholesale-form__inner {
        grid-template-columns: 1fr;
        gap:     24px;
        padding: 40px 24px;
    }
    .pl-wholesale-form__left {
        position: static;
        gap: ;
    }
    .pl-wholesale-form__disclaimer {
        padding: 20px 24px;
    }
    .pl-wholesale-form__card .pl-wf__row--2 {
        grid-template-columns: 1fr;
    }
    .pl-wholesale-form__card {
        padding: 24px;
    }
    .pl-wholesale-form__title{
        color: #1A1A1A;

/* Mobile titles/H2 Mobile */
font-family: Switzer;
font-size: 24px !important;
font-style: normal;
font-weight: 500;
line-height: 32px !important; /* 133.333% */
text-transform: capitalize;
    }
    .pl-wholesale-form__subtitle{
        color: var(--Text-Body, #444);

/* 14/Regular */
font-family: Inter;
font-size: 14px;
font-style: normal;
font-weight: 400;
line-height: 20px; /* 142.857% */
    }
    .pl-wholesale-form__card{
        padding: 24px 16px;
    }
    .pl-wholesale-form__card .pl-wf__section-title{
        color: var(--primary-1, #1A1A1A);

/* 16/Semi-Bold */
font-family: Inter;
font-size: 16px;
font-style: normal;
font-weight: 600;
line-height: 24px; /* 150% */
margin-bottom: 20px;
    }
    .pl-wholesale-form__card .pl-wf__label, .pl-wholesale-form__card label{
        color: var(--primary-1, #1A1A1A);

/* 14/Medium */
font-family: Inter;
font-size: 14px;
font-style: normal;
font-weight: 500;
line-height: 20px; /* 142.857% */
    }
    .pl-wholesale-form__card .wpcf7-checkbox{
        display: flex;
        flex-direction: column;
    }
    .pl-wholesale-form__card .pl-wf__row--2{
        gap: 0;
    }
    .pl-wholesale-form__card .pl-wf__field:last-child{
        margin-bottom: 20px;
    }
    .pl-wholesale-form__card .wpcf7-acceptance{
        margin-top: 0;
    }
    .pl-wholesale-form__card input[type="submit"], .pl-wholesale-form__card .wpcf7-submit{
        width: 100%;
    }
    .wpcf7-spinner{
        display: none !important;
    }
}

/* ══════════════════════════════════════════════
   CUSTOM SELECT DROPDOWN
   ══════════════════════════════════════════════ */

.pl-custom-select {
    position: relative;
    width:     100%;
}

.pl-custom-select__trigger {
    display:         flex;
    align-items:     center;
    justify-content: space-between;
    width:           100%;
    box-sizing:      border-box;
    padding:         16px;
    background:      var(--primary-2, #F7F9FC);
    border:          1px solid var(--light-grey, #E7EAEF);
    border-radius:   var(--Big, 32px);
    cursor:          pointer;
    font-family:     Inter, sans-serif;
    font-size:       14px;
    font-weight:     400;
    line-height:     20px;
    text-align:      left;
    transition:      border-color .2s ease;
}

.pl-custom-select.is-open .pl-custom-select__trigger {
    border-color: #537FF4;
}

.pl-custom-select__value {
    color: #1A1A1A;
}

.pl-custom-select__value--placeholder {
    color: var(--grey-blue-darker, #6E7787);
}

.pl-custom-select__icon {
    flex-shrink: 0;
    display:     flex;
    align-items: center;
    transition:  transform .2s ease;
}

.pl-custom-select.is-open .pl-custom-select__icon {
    transform: rotate(180deg);
}

.pl-custom-select__dropdown {
    display:       none;
    position:      absolute;
    top:           calc(100% + 8px);
    left:          0;
    right:         0;
    z-index:       100;
    background:    #EBEBF0;
    border-radius: 20px;
    padding:       12px;
    box-shadow:    0 8px 24px rgba(0, 0, 0, .10);
    max-height:    280px;
    overflow-y:    auto;
    border-radius: var(--Big, 32px);
border: 1px solid rgba(83, 127, 244, 0.24);
background: rgba(247, 249, 252, 0.82);

/* Glass Effect */
box-shadow: 0 4px 16px 0 rgba(26, 26, 26, 0.08);
backdrop-filter: blur(8px);
}

.pl-custom-select.is-open .pl-custom-select__dropdown {
    display: block;
}

.pl-custom-select__option {
    padding:       12px 16px;
    border-radius: 12px;
    cursor:        pointer;
    font-family:   Inter, sans-serif;
    font-size:     15px;
    font-weight:   400;
    color:         #1A1A1A;
    transition:    background .15s ease;
    color: var(--primary-1, #1A1A1A);

/* 16/Medium */
font-family: Inter;
font-size: 16px;
font-style: normal;
font-weight: 500;
line-height: 24px; /* 150% */
border-radius: var(--Small, 8px);
}

.pl-custom-select__option:hover {
    background: rgba(255, 255, 255, .5);
}

.pl-custom-select__option.is-selected {
   background: var(--soft-lime, #F0F8D9);
}
