.elementor-851 .elementor-element.elementor-element-cbbdbeb{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:00px 00px;--row-gap:00px;--column-gap:00px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-851 .elementor-element.elementor-element-53cb7ff{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}/* Start custom CSS for html, class: .elementor-element-6e9e767 *//*
 * ============================================
 * CONTACT FORM 7 - CUSTOM STYLES
 * Obóz Narciarski Istebna 2026 - Move Up
 * ============================================
 * 
 * INSTRUKCJA:
 * Wklej ten kod w jednym z miejsc:
 * 
 * OPCJA 1: Wygląd → Dostosuj → Dodatkowy CSS
 * OPCJA 2: Wtyczka "Simple Custom CSS and JS"
 * OPCJA 3: Plik style.css motywu potomnego
 * OPCJA 4: Elementor → Ustawienia strony → Zaawansowane → Custom CSS
 */

/* ========================================
   CSS VARIABLES
======================================== */
:root {
    --cf7-yellow-primary: #F5B800;
    --cf7-yellow-light: #FFF3CC;
    --cf7-yellow-hover: #E5AC00;
    --cf7-dark: #1A1A1A;
    --cf7-gray-600: #4A4A4A;
    --cf7-gray-400: #8A8A8A;
    --cf7-gray-200: #E5E5E5;
    --cf7-gray-100: #F5F5F5;
    --cf7-white: #FFFFFF;
    --cf7-success: #22C55E;
    --cf7-error: #EF4444;
    --cf7-radius: 12px;
}

/* ========================================
   FORM CONTAINER
======================================== */
.wpcf7 {
    width: 100%;
    font-family: 'DM Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

.wpcf7-form {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* ========================================
   FORM ROWS (2-column layout)
======================================== */
.wpcf7-form .form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

@media (max-width: 600px) {
    .wpcf7-form .form-row {
        grid-template-columns: 1fr;
        gap: 16px;
    }
}

/* ========================================
   FORM GROUPS
======================================== */
.wpcf7-form .form-group {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.wpcf7-form .form-group label {
    font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--cf7-dark);
}

/* ========================================
   INPUT FIELDS
======================================== */
.wpcf7-form-control:not([type="submit"]):not([type="checkbox"]):not(.wpcf7-acceptance) {
    width: 100%;
    padding: 16px 20px;
    font-family: 'DM Sans', -apple-system, BlinkMacSystemFont, sans-serif;
    font-size: 1rem;
    color: var(--cf7-dark);
    background: var(--cf7-gray-100);
    border: 2px solid var(--cf7-gray-200);
    border-radius: var(--cf7-radius);
    transition: all 0.3s ease;
    outline: none;
    -webkit-appearance: none;
    appearance: none;
}

.wpcf7-form-control:not([type="submit"]):not([type="checkbox"]):focus {
    border-color: var(--cf7-yellow-primary);
    background: var(--cf7-white);
    box-shadow: 0 0 0 4px rgba(245, 184, 0, 0.15);
}

.wpcf7-form-control::placeholder {
    color: var(--cf7-gray-400);
}

/* Text inputs height */
input.wpcf7-text,
input.wpcf7-email,
input.wpcf7-tel,
input.wpcf7-number,
input.wpcf7-date,
input.wpcf7-url {
    height: 56px;
}

/* Textarea */
textarea.wpcf7-textarea {
    min-height: 140px;
    resize: vertical;
    line-height: 1.6;
}

/* Select dropdown */
select.wpcf7-select {
    height: 56px;
    cursor: pointer;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%238A8A8A'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 16px center;
    background-size: 20px;
    padding-right: 48px;
}

/* ========================================
   CHECKBOX / ACCEPTANCE
======================================== */
.wpcf7-form .form-checkbox {
    margin-top: 8px;
}

.wpcf7-form .form-checkbox .wpcf7-form-control-wrap {
    display: block;
}

.wpcf7-acceptance {
    display: flex !important;
    align-items: flex-start !important;
    gap: 12px !important;
}

.wpcf7-acceptance input[type="checkbox"] {
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    margin: 2px 0 0 0 !important;
    flex-shrink: 0;
    cursor: pointer;
    accent-color: var(--cf7-yellow-primary);
}

.wpcf7-acceptance .wpcf7-list-item {
    margin: 0 !important;
    display: flex !important;
    align-items: flex-start !important;
    gap: 12px !important;
}

.wpcf7-acceptance .wpcf7-list-item-label,
.wpcf7-list-item-label {
    font-size: 0.875rem !important;
    color: var(--cf7-gray-600) !important;
    line-height: 1.5 !important;
    cursor: pointer;
}

.wpcf7-acceptance .wpcf7-list-item-label a,
.wpcf7-list-item-label a {
    color: var(--cf7-yellow-primary) !important;
    text-decoration: underline;
    transition: color 0.3s ease;
}

.wpcf7-acceptance .wpcf7-list-item-label a:hover {
    color: var(--cf7-yellow-hover) !important;
}

/* ========================================
   SUBMIT BUTTON
======================================== */
.wpcf7-submit,
input[type="submit"].wpcf7-submit,
button.wpcf7-submit {
    width: 100%;
    padding: 20px 32px !important;
    font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif !important;
    font-size: 1.125rem !important;
    font-weight: 700 !important;
    color: var(--cf7-dark) !important;
    background: var(--cf7-yellow-primary) !important;
    border: none !important;
    border-radius: var(--cf7-radius) !important;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 4px 14px rgba(245, 184, 0, 0.4);
    margin-top: 12px;
    -webkit-appearance: none;
    appearance: none;
}

.wpcf7-submit:hover,
input[type="submit"].wpcf7-submit:hover,
button.wpcf7-submit:hover {
    background: var(--cf7-yellow-hover) !important;
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(245, 184, 0, 0.5);
}

.wpcf7-submit:active,
input[type="submit"].wpcf7-submit:active {
    transform: translateY(0);
}

.wpcf7-submit:disabled,
input[type="submit"].wpcf7-submit:disabled {
    opacity: 0.6;
    cursor: not-allowed;
    transform: none !important;
}

/* ========================================
   VALIDATION STATES
======================================== */
.wpcf7-not-valid {
    border-color: var(--cf7-error) !important;
    background: #FEF2F2 !important;
}

.wpcf7-not-valid:focus {
    box-shadow: 0 0 0 4px rgba(239, 68, 68, 0.1) !important;
}

.wpcf7-not-valid-tip {
    font-size: 0.8125rem;
    color: var(--cf7-error);
    margin-top: 6px;
    display: block;
}

/* ========================================
   RESPONSE MESSAGES
======================================== */
.wpcf7-response-output {
    padding: 16px 20px !important;
    border-radius: var(--cf7-radius) !important;
    font-size: 0.9375rem !important;
    margin: 20px 0 0 0 !important;
    text-align: center;
    border-width: 1px !important;
}

/* Success message */
.wpcf7 form.sent .wpcf7-response-output {
    background: #DCFCE7 !important;
    color: #166534 !important;
    border-color: #86EFAC !important;
}

/* Error messages */
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output {
    background: #FEF2F2 !important;
    color: #991B1B !important;
    border-color: #FECACA !important;
}

/* Spam blocked */
.wpcf7 form.spam .wpcf7-response-output {
    background: #FEF3C7 !important;
    color: #92400E !important;
    border-color: #FCD34D !important;
}

/* Unaccepted (zgoda nie zaznaczona) */
.wpcf7 form.unaccepted .wpcf7-response-output {
    background: #FEF3C7 !important;
    color: #92400E !important;
    border-color: #FCD34D !important;
}

/* ========================================
   SPINNER / LOADING STATE
======================================== */
.wpcf7-spinner {
    margin: 16px auto 0 !important;
    display: block;
    background-color: var(--cf7-yellow-primary) !important;
}

.wpcf7 form.submitting .wpcf7-submit {
    opacity: 0.7;
    pointer-events: none;
}

/* ========================================
   MOBILE OPTIMIZATIONS
======================================== */
@media (max-width: 480px) {
    .wpcf7-form-control:not([type="submit"]):not([type="checkbox"]) {
        padding: 14px 16px;
        font-size: 16px !important; /* Prevents zoom on iOS */
    }
    
    .wpcf7-submit,
    input[type="submit"].wpcf7-submit {
        padding: 18px 24px !important;
        font-size: 1rem !important;
    }
    
    .wpcf7-acceptance .wpcf7-list-item-label {
        font-size: 0.8125rem !important;
    }
}

/* ========================================
   FORM BOX WRAPPER (na LP)
======================================== */
.form-box {
    background: #FFFFFF;
    border-radius: 28px;
    padding: 48px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15);
}

@media (max-width: 600px) {
    .form-box {
        padding: 32px 24px;
        border-radius: 20px;
    }
}

/* Price banner */
.form-price-banner {
    background: #1A1A1A;
    color: #FFFFFF;
    text-align: center;
    padding: 20px;
    border-radius: 12px;
    margin-bottom: 32px;
}

.form-price-banner p {
    font-size: 0.875rem;
    opacity: 0.7;
    margin: 0 0 4px 0;
}

.form-price-banner strong {
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-size: 2rem;
    font-weight: 800;
}

/* Form note */
.form-note {
    text-align: center;
    font-size: 0.8125rem;
    color: #8A8A8A;
    margin-top: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.form-note svg {
    width: 16px;
    height: 16px;
    color: #22C55E;
    flex-shrink: 0;
}/* End custom CSS */