.wlc-section,
.wlc-section * { box-sizing: border-box; }
.wlc-section {
    --wlc-ink: #111827;
    --wlc-muted: #6b7280;
    --wlc-orange: #F89D05;
    --wlc-navy: #1E2F4A;
    --wlc-white: #FFFFFF;
    max-width: 1200px;
    margin: 0 auto;
    color: var(--wlc-ink);
    font-family: inherit;
}
.wlc-section-heading {
    max-width: 780px;
    margin: 0 auto 30px;
    text-align: center;
}
.wlc-section-heading h2 {
    margin: 0 0 10px;
    color: var(--wlc-navy);
    font-size: clamp(28px, 3.2vw, 40px);
    line-height: 1.2;
    font-weight: 700;
    letter-spacing: -.02em;
}
.wlc-section-heading p {
    margin: 0;
    color: var(--wlc-muted);
    font-size: 15px;
    line-height: 1.65;
}
.wlc-card {
    display: grid;
    grid-template-columns: minmax(0, 550px) 1px minmax(0, 1fr);
    padding: 36px 44px 44px;
    background: var(--wlc-white);
    border-radius: 20px;
}
.wlc-left { min-width: 0; padding-right: 38px; }
.wlc-right { min-width: 0; padding-left: 38px; display: flex; flex-direction: column; }
.wlc-vertical-divider { margin: 4px 0; background: #eceff3; }

.wlc-form-heading { margin-bottom: 22px; }
.wlc-form-heading h3,
.wlc-right-head h3 {
    margin: 0 0 8px;
    color: var(--wlc-navy);
    font-size: 20px !important;
    line-height: 1.35;
    font-weight: 600 !important;
    letter-spacing: 0;
}
.wlc-form-heading p,
.wlc-right-head p {
    margin: 0;
    color: var(--wlc-muted);
    font-size: 13px;
    line-height: 1.6;
}
.wlc-right-head { margin-bottom: 16px; text-align: center; }
.wlc-right-head p { max-width: 560px; margin-left: auto; margin-right: auto; }

.wlc-fields-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
}
.wlc-field-whatsapp {
    grid-column: span 2;
}
.wlc-field {
    display: flex;
    flex-direction: column;
    gap: 6px;
    color: #333840;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.35;
}
.wlc-required { margin-left: 3px; color: #ef2a2a; font-weight: 700; }
.wlc-field input {
    width: 100%;
    min-height: 40px;
    margin: 0 !important;
    padding: 9px 15px !important;
    border: 1px solid #6d7278 !important;
    border-radius: 4px !important;
    background: #fff !important;
    color: var(--wlc-ink) !important;
    font: inherit !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    box-shadow: none !important;
}
.wlc-field input::placeholder { color: #9a9da2; opacity: 1; }
.wlc-field input:focus {
    outline: 2px solid rgba(248,157,5,.18) !important;
    outline-offset: 1px;
    border-color: var(--wlc-orange) !important;
}

.wlc-slider-list {
    display: grid;
    gap: 21px;
    margin-top: 24px;
}
.wlc-range-card {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
}
.wlc-range-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 10px;
}
.wlc-range-head label {
    color: var(--wlc-ink);
    font-size: 13px;
    font-weight: 600;
}
.wlc-range-head output {
    min-width: 28px;
    padding: 2px 9px;
    border-radius: 6px;
    background: #eef2f7;
    color: var(--wlc-navy);
    font-size: 13px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    white-space: nowrap;
}
.wlc-range {
    --wlc-range-progress: 50%;
    display: block;
    width: 100%;
    height: 6px;
    margin: 0 !important;
    padding: 0 !important;
    appearance: none;
    -webkit-appearance: none;
    border: 0 !important;
    border-radius: 999px;
    outline: none;
    background: #e5e7eb !important;
    box-shadow: none !important;
    cursor: pointer;
}
.wlc-range::-webkit-slider-runnable-track {
    height: 6px;
    border-radius: 999px;
    background: #e5e7eb;
}
.wlc-range::-webkit-slider-thumb {
    width: 20px;
    height: 20px;
    margin-top: -7px;
    -webkit-appearance: none;
    appearance: none;
    border: 3px solid var(--wlc-orange);
    border-radius: 50%;
    background: var(--wlc-navy);
    box-shadow: none;
    cursor: pointer;
}
.wlc-range::-moz-range-track {
    height: 6px;
    border: 0;
    border-radius: 999px;
    background: #e5e7eb;
}
.wlc-range::-moz-range-progress { height: 6px; border-radius: 999px; background: #e5e7eb; }
.wlc-range::-moz-range-thumb {
    width: 16px;
    height: 16px;
    border: 3px solid var(--wlc-orange);
    border-radius: 50%;
    background: var(--wlc-navy);
    box-shadow: none;
    cursor: pointer;
}
.wlc-consent {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    margin: 22px 0 16px;
    color: var(--wlc-muted);
    font-size: 11.5px;
    line-height: 1.5;
}
.wlc-consent input {
    flex: 0 0 auto;
    width: 15px;
    height: 15px;
    margin: 1px 0 0 !important;
    accent-color: var(--wlc-orange);
}
.wlc-submit {
    width: 100%;
    min-height: 50px;
    padding: 13px 20px !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: var(--wlc-orange) !important;
    color: #111827 !important;
    font: inherit !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.2;
    cursor: pointer;
    box-shadow: none !important;
    transition: filter .18s ease, transform .18s ease;
}
.wlc-submit:hover,
.wlc-submit:focus { background: var(--wlc-orange) !important; color: #111827 !important; filter: brightness(.97); transform: translateY(-1px); }

.wlc-alert { margin: 0 0 18px; padding: 12px 14px; border-radius: 8px; font-size: 13px; font-weight: 600; }
.wlc-alert-success { border: 1px solid #bde6ca; background: #eaf8ef; color: #216638; }
.wlc-alert-error { border: 1px solid #f2c3c3; background: #fff0f0; color: #9d2d2d; }

.wlc-problems-slider {
    position: relative;
    flex: 1;
    display: flex;
    flex-direction: column;
    background: transparent;
    border: 0;
    border-radius: 0;
    padding: 0;
    box-shadow: none;
    overflow: visible;
}
.wlc-slides-container {
    position: relative;
    flex: 1;
    min-height: 480px;
}
.wlc-slide {
    display: none;
    flex-direction: column;
    height: 100%;
}
.wlc-slide.active {
    display: flex;
    animation: wlcSlideFadeIn 0.5s cubic-bezier(0.25, 1, 0.5, 1) forwards;
}
@keyframes wlcSlideFadeIn {
    from {
        opacity: 0;
        transform: translateY(8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
.wlc-slide-img {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    background: transparent;
    border-radius: 0;
    padding: 0;
    min-height: 390px;
    overflow: visible;
}
.wlc-slide-img img {
    width: 100%;
    max-width: 460px;
    max-height: 430px;
    height: auto;
    object-fit: contain;
    border-radius: 0;
    filter: none;
    transition: transform 0.3s ease;
}
.wlc-slide:hover .wlc-slide-img img {
    transform: scale(1.02);
}
.wlc-slide-content {
    text-align: center;
}
.wlc-slide-content h4 {
    margin: 0 0 8px;
    color: #000000;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.3;
}
.wlc-slide-content p {
    margin: 0;
    color: var(--wlc-muted);
    font-size: 13.5px;
    line-height: 1.5;
}
/* Minimal problem-carousel navigation */
.wlc-slider-nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 22px;
    margin-top: 18px;
    padding-top: 0;
    border-top: 0;
}
.wlc-slider-prev,
.wlc-slider-next {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 32px;
    width: 32px;
    min-width: 32px;
    max-width: 32px;
    height: 32px;
    min-height: 32px;
    padding: 0;
    margin: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: #000000;
    box-shadow: none;
    cursor: pointer;
    transition: background-color .2s ease, transform .2s ease;
}
.wlc-slider-prev:hover,
.wlc-slider-next:hover {
    background: #f3f4f6;
    color: #000000;
    border: 0;
    transform: translateY(-1px);
}
.wlc-slider-prev svg,
.wlc-slider-next svg {
    display: block;
    width: 18px;
    height: 18px;
    pointer-events: none;
}
.wlc-slider-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 18px;
}
.wlc-slider-dot {
    appearance: none;
    -webkit-appearance: none;
    display: block;
    flex: 0 0 7px;
    width: 7px;
    min-width: 7px;
    max-width: 7px;
    height: 7px;
    min-height: 7px;
    padding: 0;
    margin: 0;
    border: 0;
    border-radius: 999px;
    background: #d1d5db;
    box-shadow: none;
    cursor: pointer;
    transition: width .25s ease, flex-basis .25s ease, background-color .25s ease;
}
.wlc-slider-dot:hover {
    background: #9ca3af;
}
.wlc-slider-dot.active {
    flex-basis: 22px;
    width: 22px;
    min-width: 22px;
    max-width: 22px;
    height: 7px;
    background: #F89D05;
    border-radius: 999px;
}
@media (max-width: 900px) {
    .wlc-section-heading { padding: 0 20px; margin-bottom: 22px; }
    .wlc-card { grid-template-columns: 1fr; padding: 30px 24px; }
    .wlc-vertical-divider { display: none; }
    .wlc-left { padding-right: 0; margin-bottom: 34px; }
    .wlc-right { padding-left: 0; }
    .wlc-fields-grid { grid-template-columns: 1fr; }
    .wlc-field-whatsapp { grid-column: span 1; }
}
@media (max-width: 560px) {
    .wlc-section-heading h2 { font-size: 28px; }
    .wlc-card { padding: 24px 16px; border-radius: 14px; }
    .wlc-form-heading h3, .wlc-right-head h3 { font-size: 18px !important; }
    .wlc-problems-slider { padding: 0; }
    .wlc-slides-container { min-height: 360px; }
    .wlc-slide-img { min-height: 275px; }
    .wlc-slide-img img { max-width: 330px; max-height: 310px; }
}

/* v1.5 cache-resistant overrides */
.wlc-section.wlc-v15 .wlc-fields-grid{grid-template-columns:repeat(2,1fr)!important;}
.wlc-section.wlc-v15 .wlc-field-whatsapp{grid-column:span 2!important;}
@media(max-width:900px){
.wlc-section.wlc-v15 .wlc-fields-grid{grid-template-columns:1fr!important;}
.wlc-section.wlc-v15 .wlc-field-whatsapp{grid-column:span 1!important;}
}
.wlc-section.wlc-v15 .wlc-range-card{padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;}
.wlc-section.wlc-v15 input.wlc-range[type="range"]{appearance:none!important;-webkit-appearance:none!important;width:100%!important;height:6px!important;background:#e5e7eb!important;border:0!important;border-radius:999px!important;box-shadow:none!important;}
.wlc-section.wlc-v15 input.wlc-range[type="range"]::-webkit-slider-thumb{-webkit-appearance:none!important;width:20px!important;height:20px!important;margin-top:-7px!important;border:3px solid #F89D05!important;border-radius:50%!important;background:#1E2F4A!important;}

/* Front-end validation v2.0 */
.wlc-section .wlc-field.wlc-has-error input {
    border-color: #d92d20 !important;
    outline: 2px solid rgba(217,45,32,.10) !important;
}
.wlc-section .wlc-field-error {
    display: block;
    margin-top: 1px;
    color: #d92d20;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.4;
}
.wlc-section .wlc-consent.wlc-has-error {
    color: #d92d20 !important;
}
.wlc-section .wlc-consent.wlc-has-error input {
    outline: 2px solid rgba(217,45,32,.18);
    outline-offset: 2px;
}
.wlc-section .wlc-validation-summary {
    margin: 0 0 14px;
    padding: 11px 13px;
    border-left: 4px solid #d92d20;
    background: #fff3f2;
    color: #912018;
    font-size: 12.5px;
    font-weight: 600;
    line-height: 1.5;
}


/* v2 frontend typography + carousel hardening */
.wlc-section.wlc-v15 .wlc-form-heading h3,
.wlc-section.wlc-v15 .wlc-right-head h3,
.wlc-section.wlc-v15 .wlc-field,
.wlc-section.wlc-v15 .wlc-range-head label,
.wlc-section.wlc-v15 .wlc-range-head output,
.wlc-section.wlc-v15 .wlc-submit,
.wlc-section.wlc-v15 strong,
.wlc-section.wlc-v15 b { color:#000000 !important; }
.wlc-section.wlc-v15 .wlc-slide-content h4 { color:#000000 !important; font-weight:600 !important; }
.wlc-section.wlc-v15 .wlc-slider-nav{justify-content:center!important;gap:22px!important;margin-top:18px!important;padding-top:0!important;border-top:0!important;}
.wlc-section.wlc-v15 button.wlc-slider-prev,
.wlc-section.wlc-v15 button.wlc-slider-next{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 32px!important;width:32px!important;min-width:32px!important;max-width:32px!important;height:32px!important;min-height:32px!important;padding:0!important;margin:0!important;border:0!important;border-radius:50%!important;background:transparent!important;color:#000!important;box-shadow:none!important;outline:none!important;}
.wlc-section.wlc-v15 button.wlc-slider-prev:hover,
.wlc-section.wlc-v15 button.wlc-slider-next:hover{background:#f3f4f6!important;border:0!important;color:#000!important;}
.wlc-section.wlc-v15 .wlc-slider-dots{display:flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;}
.wlc-section.wlc-v15 button.wlc-slider-dot{appearance:none!important;-webkit-appearance:none!important;display:block!important;flex:0 0 7px!important;width:7px!important;min-width:7px!important;max-width:7px!important;height:7px!important;min-height:7px!important;padding:0!important;margin:0!important;border:0!important;border-radius:999px!important;background:#d1d5db!important;box-shadow:none!important;outline:none!important;}
.wlc-section.wlc-v15 button.wlc-slider-dot.active{flex-basis:22px!important;width:22px!important;min-width:22px!important;max-width:22px!important;height:7px!important;background:#F89D05!important;border-radius:999px!important;}

/* v2 swipe/drag carousel: no arrows, entire slide is draggable */
.wlc-section.wlc-v15 .wlc-problems-slider .wlc-slider-prev,
.wlc-section.wlc-v15 .wlc-problems-slider .wlc-slider-next {
    display: none !important;
}
.wlc-section.wlc-v15 .wlc-problems-slider .wlc-slider-nav {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    margin-top: 16px !important;
    padding: 0 !important;
    border: 0 !important;
}
.wlc-section.wlc-v15 .wlc-problems-slider .wlc-slides-container {
    cursor: grab !important;
    touch-action: pan-y !important;
    user-select: none !important;
    -webkit-user-select: none !important;
    -webkit-touch-callout: none !important;
}
.wlc-section.wlc-v15 .wlc-problems-slider .wlc-slides-container.is-dragging {
    cursor: grabbing !important;
}
.wlc-section.wlc-v15 .wlc-problems-slider .wlc-slide,
.wlc-section.wlc-v15 .wlc-problems-slider .wlc-slide-img,
.wlc-section.wlc-v15 .wlc-problems-slider .wlc-slide-content {
    user-select: none !important;
    -webkit-user-select: none !important;
}
.wlc-section.wlc-v15 .wlc-problems-slider .wlc-slide-img img {
    pointer-events: none !important;
    user-select: none !important;
    -webkit-user-drag: none !important;
}

/* v2 real-time drag feedback */
.wlc-section.wlc-v15 .wlc-problems-slider .wlc-slide.active {
    will-change: transform, opacity !important;
}
.wlc-section.wlc-v15 .wlc-problems-slider .wlc-slides-container.is-dragging .wlc-slide.active {
    animation: none !important;
    user-select: none !important;
    -webkit-user-select: none !important;
}


/* v2 carousel clipping: keep dragged slides inside the right column */
.wlc-section.wlc-v15 .wlc-right {
    min-width: 0 !important;
    overflow: hidden !important;
}
.wlc-section.wlc-v15 .wlc-problems-slider {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
}
.wlc-section.wlc-v15 .wlc-problems-slider .wlc-slides-container {
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
    contain: paint !important;
}
