.elementor-1447 .elementor-element.elementor-element-4876d48{--display:grid;--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(2, 1fr);--grid-auto-flow:row;}.elementor-1447 .elementor-element.elementor-element-2172e7e{--display:flex;--min-height:0px;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:solid;--border-style:solid;border-width:2px 0px 2px 0px;--border-top-width:2px;--border-right-width:0px;--border-bottom-width:2px;--border-left-width:0px;border-color:var( --e-global-color-accent );--border-color:var( --e-global-color-accent );--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-1447 .elementor-element.elementor-element-4e2c852 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-1447 .elementor-element.elementor-element-4e2c852{text-align:center;font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );color:var( --e-global-color-5028c683 );}.elementor-1447 .elementor-element.elementor-element-4e2c852 p{margin-bottom:0px;}.elementor-1447 .elementor-element.elementor-element-080e191{--display:flex;}.elementor-1447 .elementor-element.elementor-element-815ccf2 img{width:100%;height:300px;object-fit:cover;object-position:center center;}.elementor-1447 .elementor-element.elementor-element-89d38fb .elementor-cta .elementor-cta__bg, .elementor-1447 .elementor-element.elementor-element-89d38fb .elementor-cta .elementor-cta__bg-overlay{transition-duration:3000ms;}.elementor-1447 .elementor-element.elementor-element-89d38fb .elementor-cta__content{text-align:center;}.elementor-1447 .elementor-element.elementor-element-f49b366{--display:grid;--e-con-grid-template-columns:repeat(4, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-1447 .elementor-element.elementor-element-21e6b75{--icon-box-icon-margin:15px;}.elementor-1447 .elementor-element.elementor-element-21e6b75 .elementor-icon-box-title, .elementor-1447 .elementor-element.elementor-element-21e6b75 .elementor-icon-box-title a{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-1447 .elementor-element.elementor-element-b2b4aab{--icon-box-icon-margin:15px;}.elementor-1447 .elementor-element.elementor-element-b2b4aab .elementor-icon-box-title, .elementor-1447 .elementor-element.elementor-element-b2b4aab .elementor-icon-box-title a{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-1447 .elementor-element.elementor-element-cb88549{--icon-box-icon-margin:15px;}.elementor-1447 .elementor-element.elementor-element-cb88549 .elementor-icon-box-title, .elementor-1447 .elementor-element.elementor-element-cb88549 .elementor-icon-box-title a{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-1447 .elementor-element.elementor-element-058286c{--icon-box-icon-margin:15px;}.elementor-1447 .elementor-element.elementor-element-058286c .elementor-icon-box-title, .elementor-1447 .elementor-element.elementor-element-058286c .elementor-icon-box-title a{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-1447 .elementor-element.elementor-element-f00a161{--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;}.elementor-1447 .elementor-element.elementor-element-4832a09{--spacer-size:50px;}.elementor-1447 .elementor-element.elementor-element-7426967{text-align:center;}.elementor-1447 .elementor-element.elementor-element-72419ee > .elementor-widget-container{border-style:solid;border-width:3px 0px 3px 0px;border-color:#003A60;}.elementor-1447 .elementor-element.elementor-element-72419ee .elementor-author-box__avatar img{width:10em;height:10em;}.elementor-1447 .elementor-element.elementor-element-ed172de{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;--padding-top:2em;--padding-bottom:2em;--padding-left:2em;--padding-right:2em;}.elementor-1447 .elementor-element.elementor-element-ed172de:not(.elementor-motion-effects-element-type-background), .elementor-1447 .elementor-element.elementor-element-ed172de > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F9FAFA;}.elementor-1447 .elementor-element.elementor-element-7797fbf img{height:300px;object-fit:contain;object-position:center center;}.elementor-1447 .elementor-element.elementor-element-5716d1e{--icon-box-icon-margin:15px;}.elementor-1447 .elementor-element.elementor-element-3e6cb2d{--divider-border-style:solid;--divider-color:var( --e-global-color-primary );--divider-border-width:0.1em;}.elementor-1447 .elementor-element.elementor-element-3e6cb2d .elementor-divider-separator{width:100%;}.elementor-1447 .elementor-element.elementor-element-3e6cb2d .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-1447 .elementor-element.elementor-element-d49de55{--display:flex;}.elementor-1447 .elementor-element.elementor-element-a1a4e00 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-1447 .elementor-element.elementor-element-a1a4e00 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-1447 .elementor-element.elementor-element-a1a4e00{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-1447 .elementor-element.elementor-element-a1a4e00 .elementor-icon-list-text{transition:color 0.3s;}.elementor-1447 .elementor-element.elementor-element-9acfc33{--display:flex;}.elementor-1447 .elementor-element.elementor-element-6fa992f{--display:flex;}.elementor-1447 .elementor-element.elementor-element-30080c1{--n-tabs-heading-wrap:wrap;--n-tabs-heading-overflow-x:initial;--n-tabs-title-white-space:initial;--n-tabs-icon-color:var( --e-global-color-primary );}.elementor-1447 .elementor-element.elementor-element-4654dd6{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;}.elementor-1447 .elementor-element.elementor-element-4f1c30e{--divider-border-style:solid;--divider-color:var( --e-global-color-primary );--divider-border-width:0.1em;}.elementor-1447 .elementor-element.elementor-element-4f1c30e .elementor-divider-separator{width:100%;}.elementor-1447 .elementor-element.elementor-element-4f1c30e .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-1447 .elementor-element.elementor-element-af85d7d{--spacer-size:50px;}.elementor-1447 .elementor-element.elementor-element-1a98588 .elementor-heading-title{font-family:"Arial", Sans-serif;font-size:3em;font-weight:400;font-style:normal;}.elementor-1447 .elementor-element.elementor-element-1f28242{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-1447 .elementor-element.elementor-element-df5e2e9{--display:flex;}.elementor-1447 .elementor-element.elementor-element-85ec6b1{--display:flex;}.elementor-1447 .elementor-element.elementor-element-00bfa3c{--display:flex;}.elementor-1447 .elementor-element.elementor-element-74cae30 .elementor-alert{background-color:var( --e-global-color-7ac82090 );}.elementor-1447 .elementor-element.elementor-element-74cae30 .elementor-alert-title{color:var( --e-global-color-352d34bb );}.elementor-1447 .elementor-element.elementor-element-74cae30 .elementor-alert-description{color:var( --e-global-color-352d34bb );}.elementor-1447 .elementor-element.elementor-element-8c02279{--n-accordion-title-font-size:1rem;--n-accordion-item-title-space-between:0px;--n-accordion-item-title-distance-from-content:0px;--n-accordion-icon-size:15px;}@media(min-width:768px){.elementor-1447 .elementor-element.elementor-element-1f28242{--width:70%;}}@media(max-width:1024px){.elementor-1447 .elementor-element.elementor-element-4876d48{--grid-auto-flow:row;}.elementor-1447 .elementor-element.elementor-element-4e2c852{font-size:var( --e-global-typography-secondary-font-size );}.elementor-1447 .elementor-element.elementor-element-f49b366{--grid-auto-flow:row;}.elementor-1447 .elementor-element.elementor-element-ed172de{--grid-auto-flow:row;}}@media(max-width:767px){.elementor-1447 .elementor-element.elementor-element-4876d48{--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(2, 1fr);--grid-auto-flow:row;}.elementor-1447 .elementor-element.elementor-element-4e2c852{font-size:var( --e-global-typography-secondary-font-size );}.elementor-1447 .elementor-element.elementor-element-f49b366{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-1447 .elementor-element.elementor-element-ed172de{--e-con-grid-template-columns:repeat(1, 1fr);--grid-auto-flow:row;}}/* Start custom CSS for ws-form, class: .elementor-element-119f62f *//* =================================================================
   ΚΥΠΡΙΑΚΟΣ ΣΥΝΔΕΣΜΟΣ ΟΙΚΟΓΕΝΕΙΑΚΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ
   Custom CSS για WS Form Pro Payment Form
   ================================================================= */

/* ===== ΧΡΩΜΑΤΑ ΚΣΟΠ ===== */
:root {
    --cfpa-primary: #d63031;       /* Κύριο κόκκινο IPPF/ΚΣΟΠ */
    --cfpa-secondary: #00a86b;     /* Πράσινο για success */
    --cfpa-accent: #f39c12;        /* Πορτοκαλί για highlights */
    --cfpa-light-red: #ffeaea;     /* Ανοιχτό κόκκινο */
    --cfpa-light-gray: #f8f9fa;    /* Background */
    --cfpa-dark-gray: #495057;     /* Text */
    --cfpa-border: #dee2e6;        /* Borders */
    --cfpa-white: #ffffff;         /* Λευκό */
    --cfpa-shadow: rgba(214, 48, 49, 0.15); /* Σκιά με ΚΣΟΠ κόκκινο */
}

/* ===== ΓΕΝΙΚΕΣ ΡΥΘΜΙΣΕΙΣ ΦΟΡΜΑΣ ===== */
.wsf-form {
    max-width: 750px;
    margin: 40px auto;
    background: var(--cfpa-white);
    border-radius: 16px;
    box-shadow: 0 12px 40px var(--cfpa-shadow);
    padding: 40px;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    border: 1px solid var(--cfpa-border);
}

/* ===== ΤΙΤΛΟΣ ΦΟΡΜΑΣ ===== */
.wsf-form h2, .wsf-form .wsf-label-form {
    color: var(--cfpa-primary);
    font-size: 28px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 30px;
    border-bottom: 3px solid var(--cfpa-accent);
    padding-bottom: 15px;
}

/* ===== LABELS ===== */
.wsf-label {
    color: var(--cfpa-dark-gray);
    font-weight: 600;
    font-size: 16px;
    margin-bottom: 8px;
    display: block;
}

.wsf-label.wsf-required::after {
    content: " *";
    color: #e74c3c;
    font-weight: bold;
}

/* ===== ΓΕΝΙΚΑ INPUT FIELDS ===== */
.wsf-field input[type="text"],
.wsf-field input[type="email"],
.wsf-field input[type="tel"] {
    width: 100%;
    padding: 15px 20px;
    border: 2px solid var(--cfpa-border);
    border-radius: 10px;
    font-size: 16px;
    background: var(--cfpa-white);
    color: var(--cfpa-dark-gray);
}

.wsf-field input:focus {
    border-color: var(--cfpa-primary);
    box-shadow: 0 0 0 3px rgba(214, 48, 49, 0.1);
    outline: none;
    background: #fafbfc;
}

/* ===== RADIO BUTTONS (ΕΠΙΛΟΓΗ ΕΙΣΙΤΗΡΙΟΥ) ===== */
.wsf-field-radio {
    margin: 20px 0;
}

.wsf-field-radio .wsf-input-wrapper {
    display: grid;
    gap: 12px;
}

.wsf-field-radio label {
    display: flex;
    align-items: center;
    background: linear-gradient(135deg, var(--cfpa-light-red), #fff5f5);
    border: 2px solid var(--cfpa-border);
    border-radius: 12px;
    padding: 18px 24px;
    cursor: pointer;
    font-size: 16px;
    font-weight: 500;
    color: var(--cfpa-dark-gray);
    position: relative;
    overflow: hidden;
}

.wsf-field-radio label::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 4px;
    height: 100%;
    background: var(--cfpa-primary);
    transform: scaleY(0);
}

.wsf-field-radio label:hover {
    border-color: var(--cfpa-primary);
    background: linear-gradient(135deg, #ffe0e0, #fef0f0);
}

.wsf-field-radio label:hover::before {
    transform: scaleY(1);
}

.wsf-field-radio input[type="radio"] {
    margin-right: 15px;
    transform: scale(1.3);
    accent-color: var(--cfpa-primary);
}

.wsf-field-radio input[type="radio"]:checked + span {
    color: var(--cfpa-primary);
    font-weight: 700;
}

.wsf-field-radio label:has(input:checked) {
    border-color: var(--cfpa-primary);
    background: linear-gradient(135deg, var(--cfpa-light-red), #ffffff);
    box-shadow: 0 6px 20px rgba(214, 48, 49, 0.2);
}

.wsf-field-radio label:has(input:checked)::before {
    transform: scaleY(1);
}

/* ===== AMOUNT FIELD (ΠΟΣΟ) ===== */
.wsf-field[data-id="114"] {
    text-align: center;
    margin: 25px 0;
}

.wsf-field[data-id="114"] input {
    background: linear-gradient(135deg, var(--cfpa-primary), #b71c1c);
    color: var(--cfpa-white);
    font-size: 32px;
    font-weight: 800;
    text-align: center;
    border: none;
    border-radius: 15px;
    padding: 20px;
    box-shadow: 0 8px 25px rgba(214, 48, 49, 0.3);
    letter-spacing: 1px;
}

.wsf-field[data-id="114"] .wsf-label {
    color: var(--cfpa-primary);
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 15px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* ===== STRIPE ELEMENTS STYLING ===== */
.wsf-field-stri_el_cc {
    background: var(--cfpa-light-gray);
    border-radius: 12px;
    padding: 25px;
    border: 2px solid var(--cfpa-border);
    margin: 30px 0;
}

.wsf-field-stri_el_cc .wsf-label {
    color: var(--cfpa-primary);
    font-size: 18px;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
}

.wsf-field-stri_el_cc .wsf-label::before {
    content: "🔒";
    margin-right: 10px;
    font-size: 20px;
}

/* ===== SUBMIT BUTTON ===== */
.wsf-field-stri_el_checkout button {
    background: linear-gradient(135deg, var(--cfpa-secondary), #008f5b);
    color: var(--cfpa-white);
    border: none;
    border-radius: 12px;
    padding: 18px 40px;
    font-size: 18px;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.3s ease;
    width: 100%;
    text-transform: uppercase;
    letter-spacing: 1px;
    box-shadow: 0 6px 20px rgba(0, 168, 107, 0.3);
}

.wsf-field-stri_el_checkout button:hover {
    background: linear-gradient(135deg, #009f63, var(--cfpa-secondary));
    box-shadow: 0 10px 30px rgba(0, 168, 107, 0.4);
}

.wsf-field-stri_el_checkout button:active {
    transform: none;
}

/* ===== HELP TEXT ===== */
.wsf-help {
    color: #6c757d;
    font-size: 14px;
    font-style: italic;
    margin-top: 8px;
    line-height: 1.4;
}

/* ===== SECURITY BADGE ===== */
.wsf-form::after {
    content: "🛡️ Ασφαλής Πληρωμή μέσω Stripe";
    display: block;
    text-align: center;
    color: var(--cfpa-dark-gray);
    font-size: 14px;
    margin-top: 25px;
    padding-top: 20px;
    border-top: 1px solid var(--cfpa-border);
    font-weight: 500;
}

/* ===== RESPONSIVE DESIGN ===== */
@media (max-width: 768px) {
    .wsf-form {
        margin: 20px;
        padding: 25px 20px;
        border-radius: 12px;
    }
    
    .wsf-form h2, .wsf-form .wsf-label-form {
        font-size: 24px;
    }
    
    .wsf-field-radio label {
        padding: 15px 18px;
        font-size: 15px;
    }
    
    .wsf-field[data-id="114"] input {
        font-size: 26px;
        padding: 16px;
    }
    
    .wsf-field input[type="text"],
    .wsf-field input[type="email"],
    .wsf-field input[type="tel"] {
        padding: 12px 16px;
        font-size: 16px;
    }
}

@media (max-width: 480px) {
    .wsf-form {
        margin: 10px;
        padding: 20px 15px;
    }
    
    .wsf-field-radio label {
        padding: 12px 15px;
        font-size: 14px;
    }
    
    .wsf-field[data-id="114"] input {
        font-size: 22px;
    }
}

/* ===== LOADING STATE ===== */
.wsf-form.wsf-form-processing {
    pointer-events: none;
    opacity: 0.7;
}

.wsf-form.wsf-form-processing::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 40px;
    height: 40px;
    border: 4px solid var(--cfpa-border);
    border-top: 4px solid var(--cfpa-primary);
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% { transform: translate(-50%, -50%) rotate(0deg); }
    100% { transform: translate(-50%, -50%) rotate(360deg); }
}/* End custom CSS */
/* Start custom CSS for ws-form, class: .elementor-element-119f62f *//* =================================================================
   ΚΥΠΡΙΑΚΟΣ ΣΥΝΔΕΣΜΟΣ ΟΙΚΟΓΕΝΕΙΑΚΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ
   Custom CSS για WS Form Pro Payment Form
   ================================================================= */

/* ===== ΧΡΩΜΑΤΑ ΚΣΟΠ ===== */
:root {
    --cfpa-primary: #d63031;       /* Κύριο κόκκινο IPPF/ΚΣΟΠ */
    --cfpa-secondary: #00a86b;     /* Πράσινο για success */
    --cfpa-accent: #f39c12;        /* Πορτοκαλί για highlights */
    --cfpa-light-red: #ffeaea;     /* Ανοιχτό κόκκινο */
    --cfpa-light-gray: #f8f9fa;    /* Background */
    --cfpa-dark-gray: #495057;     /* Text */
    --cfpa-border: #dee2e6;        /* Borders */
    --cfpa-white: #ffffff;         /* Λευκό */
    --cfpa-shadow: rgba(214, 48, 49, 0.15); /* Σκιά με ΚΣΟΠ κόκκινο */
}

/* ===== ΓΕΝΙΚΕΣ ΡΥΘΜΙΣΕΙΣ ΦΟΡΜΑΣ ===== */
.wsf-form {
    max-width: 750px;
    margin: 40px auto;
    background: var(--cfpa-white);
    border-radius: 16px;
    box-shadow: 0 12px 40px var(--cfpa-shadow);
    padding: 40px;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    border: 1px solid var(--cfpa-border);
}

/* ===== ΤΙΤΛΟΣ ΦΟΡΜΑΣ ===== */
.wsf-form h2, .wsf-form .wsf-label-form {
    color: var(--cfpa-primary);
    font-size: 28px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 30px;
    border-bottom: 3px solid var(--cfpa-accent);
    padding-bottom: 15px;
}

/* ===== LABELS ===== */
.wsf-label {
    color: var(--cfpa-dark-gray);
    font-weight: 600;
    font-size: 16px;
    margin-bottom: 8px;
    display: block;
}

.wsf-label.wsf-required::after {
    content: " *";
    color: #e74c3c;
    font-weight: bold;
}

/* ===== ΓΕΝΙΚΑ INPUT FIELDS ===== */
.wsf-field input[type="text"],
.wsf-field input[type="email"],
.wsf-field input[type="tel"] {
    width: 100%;
    padding: 15px 20px;
    border: 2px solid var(--cfpa-border);
    border-radius: 10px;
    font-size: 16px;
    background: var(--cfpa-white);
    color: var(--cfpa-dark-gray);
}

.wsf-field input:focus {
    border-color: var(--cfpa-primary);
    box-shadow: 0 0 0 3px rgba(214, 48, 49, 0.1);
    outline: none;
    background: #fafbfc;
}

/* ===== RADIO BUTTONS (ΕΠΙΛΟΓΗ ΕΙΣΙΤΗΡΙΟΥ) ===== */
.wsf-field-radio {
    margin: 20px 0;
}

.wsf-field-radio .wsf-input-wrapper {
    display: grid;
    gap: 12px;
}

.wsf-field-radio label {
    display: flex;
    align-items: center;
    background: linear-gradient(135deg, var(--cfpa-light-red), #fff5f5);
    border: 2px solid var(--cfpa-border);
    border-radius: 12px;
    padding: 18px 24px;
    cursor: pointer;
    font-size: 16px;
    font-weight: 500;
    color: var(--cfpa-dark-gray);
    position: relative;
    overflow: hidden;
}

.wsf-field-radio label::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 4px;
    height: 100%;
    background: var(--cfpa-primary);
    transform: scaleY(0);
}

.wsf-field-radio label:hover {
    border-color: var(--cfpa-primary);
    background: linear-gradient(135deg, #ffe0e0, #fef0f0);
}

.wsf-field-radio label:hover::before {
    transform: scaleY(1);
}

.wsf-field-radio input[type="radio"] {
    margin-right: 15px;
    transform: scale(1.3);
    accent-color: var(--cfpa-primary);
}

.wsf-field-radio input[type="radio"]:checked + span {
    color: var(--cfpa-primary);
    font-weight: 700;
}

.wsf-field-radio label:has(input:checked) {
    border-color: var(--cfpa-primary);
    background: linear-gradient(135deg, var(--cfpa-light-red), #ffffff);
    box-shadow: 0 6px 20px rgba(214, 48, 49, 0.2);
}

.wsf-field-radio label:has(input:checked)::before {
    transform: scaleY(1);
}

/* ===== AMOUNT FIELD (ΠΟΣΟ) ===== */
.wsf-field[data-id="114"] {
    text-align: center;
    margin: 25px 0;
}

.wsf-field[data-id="114"] input {
    background: linear-gradient(135deg, var(--cfpa-primary), #b71c1c);
    color: var(--cfpa-white);
    font-size: 32px;
    font-weight: 800;
    text-align: center;
    border: none;
    border-radius: 15px;
    padding: 20px;
    box-shadow: 0 8px 25px rgba(214, 48, 49, 0.3);
    letter-spacing: 1px;
}

.wsf-field[data-id="114"] .wsf-label {
    color: var(--cfpa-primary);
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 15px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* ===== STRIPE ELEMENTS STYLING ===== */
.wsf-field-stri_el_cc {
    background: var(--cfpa-light-gray);
    border-radius: 12px;
    padding: 25px;
    border: 2px solid var(--cfpa-border);
    margin: 30px 0;
}

.wsf-field-stri_el_cc .wsf-label {
    color: var(--cfpa-primary);
    font-size: 18px;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
}

.wsf-field-stri_el_cc .wsf-label::before {
    content: "🔒";
    margin-right: 10px;
    font-size: 20px;
}

/* ===== SUBMIT BUTTON ===== */
.wsf-field-stri_el_checkout button {
    background: linear-gradient(135deg, var(--cfpa-secondary), #008f5b);
    color: var(--cfpa-white);
    border: none;
    border-radius: 12px;
    padding: 18px 40px;
    font-size: 18px;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.3s ease;
    width: 100%;
    text-transform: uppercase;
    letter-spacing: 1px;
    box-shadow: 0 6px 20px rgba(0, 168, 107, 0.3);
}

.wsf-field-stri_el_checkout button:hover {
    background: linear-gradient(135deg, #009f63, var(--cfpa-secondary));
    box-shadow: 0 10px 30px rgba(0, 168, 107, 0.4);
}

.wsf-field-stri_el_checkout button:active {
    transform: none;
}

/* ===== HELP TEXT ===== */
.wsf-help {
    color: #6c757d;
    font-size: 14px;
    font-style: italic;
    margin-top: 8px;
    line-height: 1.4;
}

/* ===== SECURITY BADGE ===== */
.wsf-form::after {
    content: "🛡️ Ασφαλής Πληρωμή μέσω Stripe";
    display: block;
    text-align: center;
    color: var(--cfpa-dark-gray);
    font-size: 14px;
    margin-top: 25px;
    padding-top: 20px;
    border-top: 1px solid var(--cfpa-border);
    font-weight: 500;
}

/* ===== RESPONSIVE DESIGN ===== */
@media (max-width: 768px) {
    .wsf-form {
        margin: 20px;
        padding: 25px 20px;
        border-radius: 12px;
    }
    
    .wsf-form h2, .wsf-form .wsf-label-form {
        font-size: 24px;
    }
    
    .wsf-field-radio label {
        padding: 15px 18px;
        font-size: 15px;
    }
    
    .wsf-field[data-id="114"] input {
        font-size: 26px;
        padding: 16px;
    }
    
    .wsf-field input[type="text"],
    .wsf-field input[type="email"],
    .wsf-field input[type="tel"] {
        padding: 12px 16px;
        font-size: 16px;
    }
}

@media (max-width: 480px) {
    .wsf-form {
        margin: 10px;
        padding: 20px 15px;
    }
    
    .wsf-field-radio label {
        padding: 12px 15px;
        font-size: 14px;
    }
    
    .wsf-field[data-id="114"] input {
        font-size: 22px;
    }
}

/* ===== LOADING STATE ===== */
.wsf-form.wsf-form-processing {
    pointer-events: none;
    opacity: 0.7;
}

.wsf-form.wsf-form-processing::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 40px;
    height: 40px;
    border: 4px solid var(--cfpa-border);
    border-top: 4px solid var(--cfpa-primary);
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% { transform: translate(-50%, -50%) rotate(0deg); }
    100% { transform: translate(-50%, -50%) rotate(360deg); }
}/* End custom CSS */
/* Start custom CSS for ws-form, class: .elementor-element-119f62f *//* =================================================================
   ΚΥΠΡΙΑΚΟΣ ΣΥΝΔΕΣΜΟΣ ΟΙΚΟΓΕΝΕΙΑΚΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ
   Custom CSS για WS Form Pro Payment Form
   ================================================================= */

/* ===== ΧΡΩΜΑΤΑ ΚΣΟΠ ===== */
:root {
    --cfpa-primary: #d63031;       /* Κύριο κόκκινο IPPF/ΚΣΟΠ */
    --cfpa-secondary: #00a86b;     /* Πράσινο για success */
    --cfpa-accent: #f39c12;        /* Πορτοκαλί για highlights */
    --cfpa-light-red: #ffeaea;     /* Ανοιχτό κόκκινο */
    --cfpa-light-gray: #f8f9fa;    /* Background */
    --cfpa-dark-gray: #495057;     /* Text */
    --cfpa-border: #dee2e6;        /* Borders */
    --cfpa-white: #ffffff;         /* Λευκό */
    --cfpa-shadow: rgba(214, 48, 49, 0.15); /* Σκιά με ΚΣΟΠ κόκκινο */
}

/* ===== ΓΕΝΙΚΕΣ ΡΥΘΜΙΣΕΙΣ ΦΟΡΜΑΣ ===== */
.wsf-form {
    max-width: 750px;
    margin: 40px auto;
    background: var(--cfpa-white);
    border-radius: 16px;
    box-shadow: 0 12px 40px var(--cfpa-shadow);
    padding: 40px;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    border: 1px solid var(--cfpa-border);
}

/* ===== ΤΙΤΛΟΣ ΦΟΡΜΑΣ ===== */
.wsf-form h2, .wsf-form .wsf-label-form {
    color: var(--cfpa-primary);
    font-size: 28px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 30px;
    border-bottom: 3px solid var(--cfpa-accent);
    padding-bottom: 15px;
}

/* ===== LABELS ===== */
.wsf-label {
    color: var(--cfpa-dark-gray);
    font-weight: 600;
    font-size: 16px;
    margin-bottom: 8px;
    display: block;
}

.wsf-label.wsf-required::after {
    content: " *";
    color: #e74c3c;
    font-weight: bold;
}

/* ===== ΓΕΝΙΚΑ INPUT FIELDS ===== */
.wsf-field input[type="text"],
.wsf-field input[type="email"],
.wsf-field input[type="tel"] {
    width: 100%;
    padding: 15px 20px;
    border: 2px solid var(--cfpa-border);
    border-radius: 10px;
    font-size: 16px;
    background: var(--cfpa-white);
    color: var(--cfpa-dark-gray);
}

.wsf-field input:focus {
    border-color: var(--cfpa-primary);
    box-shadow: 0 0 0 3px rgba(214, 48, 49, 0.1);
    outline: none;
    background: #fafbfc;
}

/* ===== RADIO BUTTONS (ΕΠΙΛΟΓΗ ΕΙΣΙΤΗΡΙΟΥ) ===== */
.wsf-field-radio {
    margin: 20px 0;
}

.wsf-field-radio .wsf-input-wrapper {
    display: grid;
    gap: 12px;
}

.wsf-field-radio label {
    display: flex;
    align-items: center;
    background: linear-gradient(135deg, var(--cfpa-light-red), #fff5f5);
    border: 2px solid var(--cfpa-border);
    border-radius: 12px;
    padding: 18px 24px;
    cursor: pointer;
    font-size: 16px;
    font-weight: 500;
    color: var(--cfpa-dark-gray);
    position: relative;
    overflow: hidden;
}

.wsf-field-radio label::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 4px;
    height: 100%;
    background: var(--cfpa-primary);
    transform: scaleY(0);
}

.wsf-field-radio label:hover {
    border-color: var(--cfpa-primary);
    background: linear-gradient(135deg, #ffe0e0, #fef0f0);
}

.wsf-field-radio label:hover::before {
    transform: scaleY(1);
}

.wsf-field-radio input[type="radio"] {
    margin-right: 15px;
    transform: scale(1.3);
    accent-color: var(--cfpa-primary);
}

.wsf-field-radio input[type="radio"]:checked + span {
    color: var(--cfpa-primary);
    font-weight: 700;
}

.wsf-field-radio label:has(input:checked) {
    border-color: var(--cfpa-primary);
    background: linear-gradient(135deg, var(--cfpa-light-red), #ffffff);
    box-shadow: 0 6px 20px rgba(214, 48, 49, 0.2);
}

.wsf-field-radio label:has(input:checked)::before {
    transform: scaleY(1);
}

/* ===== AMOUNT FIELD (ΠΟΣΟ) ===== */
.wsf-field[data-id="114"] {
    text-align: center;
    margin: 25px 0;
}

.wsf-field[data-id="114"] input {
    background: linear-gradient(135deg, var(--cfpa-primary), #b71c1c);
    color: var(--cfpa-white);
    font-size: 32px;
    font-weight: 800;
    text-align: center;
    border: none;
    border-radius: 15px;
    padding: 20px;
    box-shadow: 0 8px 25px rgba(214, 48, 49, 0.3);
    letter-spacing: 1px;
}

.wsf-field[data-id="114"] .wsf-label {
    color: var(--cfpa-primary);
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 15px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* ===== STRIPE ELEMENTS STYLING ===== */
.wsf-field-stri_el_cc {
    background: var(--cfpa-light-gray);
    border-radius: 12px;
    padding: 25px;
    border: 2px solid var(--cfpa-border);
    margin: 30px 0;
}

.wsf-field-stri_el_cc .wsf-label {
    color: var(--cfpa-primary);
    font-size: 18px;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
}

.wsf-field-stri_el_cc .wsf-label::before {
    content: "🔒";
    margin-right: 10px;
    font-size: 20px;
}

/* ===== SUBMIT BUTTON ===== */
.wsf-field-stri_el_checkout button {
    background: linear-gradient(135deg, var(--cfpa-secondary), #008f5b);
    color: var(--cfpa-white);
    border: none;
    border-radius: 12px;
    padding: 18px 40px;
    font-size: 18px;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.3s ease;
    width: 100%;
    text-transform: uppercase;
    letter-spacing: 1px;
    box-shadow: 0 6px 20px rgba(0, 168, 107, 0.3);
}

.wsf-field-stri_el_checkout button:hover {
    background: linear-gradient(135deg, #009f63, var(--cfpa-secondary));
    box-shadow: 0 10px 30px rgba(0, 168, 107, 0.4);
}

.wsf-field-stri_el_checkout button:active {
    transform: none;
}

/* ===== HELP TEXT ===== */
.wsf-help {
    color: #6c757d;
    font-size: 14px;
    font-style: italic;
    margin-top: 8px;
    line-height: 1.4;
}

/* ===== SECURITY BADGE ===== */
.wsf-form::after {
    content: "🛡️ Ασφαλής Πληρωμή μέσω Stripe";
    display: block;
    text-align: center;
    color: var(--cfpa-dark-gray);
    font-size: 14px;
    margin-top: 25px;
    padding-top: 20px;
    border-top: 1px solid var(--cfpa-border);
    font-weight: 500;
}

/* ===== RESPONSIVE DESIGN ===== */
@media (max-width: 768px) {
    .wsf-form {
        margin: 20px;
        padding: 25px 20px;
        border-radius: 12px;
    }
    
    .wsf-form h2, .wsf-form .wsf-label-form {
        font-size: 24px;
    }
    
    .wsf-field-radio label {
        padding: 15px 18px;
        font-size: 15px;
    }
    
    .wsf-field[data-id="114"] input {
        font-size: 26px;
        padding: 16px;
    }
    
    .wsf-field input[type="text"],
    .wsf-field input[type="email"],
    .wsf-field input[type="tel"] {
        padding: 12px 16px;
        font-size: 16px;
    }
}

@media (max-width: 480px) {
    .wsf-form {
        margin: 10px;
        padding: 20px 15px;
    }
    
    .wsf-field-radio label {
        padding: 12px 15px;
        font-size: 14px;
    }
    
    .wsf-field[data-id="114"] input {
        font-size: 22px;
    }
}

/* ===== LOADING STATE ===== */
.wsf-form.wsf-form-processing {
    pointer-events: none;
    opacity: 0.7;
}

.wsf-form.wsf-form-processing::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 40px;
    height: 40px;
    border: 4px solid var(--cfpa-border);
    border-top: 4px solid var(--cfpa-primary);
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% { transform: translate(-50%, -50%) rotate(0deg); }
    100% { transform: translate(-50%, -50%) rotate(360deg); }
}/* End custom CSS */
/* Start custom CSS for ws-form, class: .elementor-element-119f62f *//* =================================================================
   ΚΥΠΡΙΑΚΟΣ ΣΥΝΔΕΣΜΟΣ ΟΙΚΟΓΕΝΕΙΑΚΟΥ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ
   Custom CSS για WS Form Pro Payment Form
   ================================================================= */

/* ===== ΧΡΩΜΑΤΑ ΚΣΟΠ ===== */
:root {
    --cfpa-primary: #d63031;       /* Κύριο κόκκινο IPPF/ΚΣΟΠ */
    --cfpa-secondary: #00a86b;     /* Πράσινο για success */
    --cfpa-accent: #f39c12;        /* Πορτοκαλί για highlights */
    --cfpa-light-red: #ffeaea;     /* Ανοιχτό κόκκινο */
    --cfpa-light-gray: #f8f9fa;    /* Background */
    --cfpa-dark-gray: #495057;     /* Text */
    --cfpa-border: #dee2e6;        /* Borders */
    --cfpa-white: #ffffff;         /* Λευκό */
    --cfpa-shadow: rgba(214, 48, 49, 0.15); /* Σκιά με ΚΣΟΠ κόκκινο */
}

/* ===== ΓΕΝΙΚΕΣ ΡΥΘΜΙΣΕΙΣ ΦΟΡΜΑΣ ===== */
.wsf-form {
    max-width: 750px;
    margin: 40px auto;
    background: var(--cfpa-white);
    border-radius: 16px;
    box-shadow: 0 12px 40px var(--cfpa-shadow);
    padding: 40px;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    border: 1px solid var(--cfpa-border);
}

/* ===== ΤΙΤΛΟΣ ΦΟΡΜΑΣ ===== */
.wsf-form h2, .wsf-form .wsf-label-form {
    color: var(--cfpa-primary);
    font-size: 28px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 30px;
    border-bottom: 3px solid var(--cfpa-accent);
    padding-bottom: 15px;
}

/* ===== LABELS ===== */
.wsf-label {
    color: var(--cfpa-dark-gray);
    font-weight: 600;
    font-size: 16px;
    margin-bottom: 8px;
    display: block;
}

.wsf-label.wsf-required::after {
    content: " *";
    color: #e74c3c;
    font-weight: bold;
}

/* ===== ΓΕΝΙΚΑ INPUT FIELDS ===== */
.wsf-field input[type="text"],
.wsf-field input[type="email"],
.wsf-field input[type="tel"] {
    width: 100%;
    padding: 15px 20px;
    border: 2px solid var(--cfpa-border);
    border-radius: 10px;
    font-size: 16px;
    background: var(--cfpa-white);
    color: var(--cfpa-dark-gray);
}

.wsf-field input:focus {
    border-color: var(--cfpa-primary);
    box-shadow: 0 0 0 3px rgba(214, 48, 49, 0.1);
    outline: none;
    background: #fafbfc;
}

/* ===== RADIO BUTTONS (ΕΠΙΛΟΓΗ ΕΙΣΙΤΗΡΙΟΥ) ===== */
.wsf-field-radio {
    margin: 20px 0;
}

.wsf-field-radio .wsf-input-wrapper {
    display: grid;
    gap: 12px;
}

.wsf-field-radio label {
    display: flex;
    align-items: center;
    background: linear-gradient(135deg, var(--cfpa-light-red), #fff5f5);
    border: 2px solid var(--cfpa-border);
    border-radius: 12px;
    padding: 18px 24px;
    cursor: pointer;
    font-size: 16px;
    font-weight: 500;
    color: var(--cfpa-dark-gray);
    position: relative;
    overflow: hidden;
}

.wsf-field-radio label::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 4px;
    height: 100%;
    background: var(--cfpa-primary);
    transform: scaleY(0);
}

.wsf-field-radio label:hover {
    border-color: var(--cfpa-primary);
    background: linear-gradient(135deg, #ffe0e0, #fef0f0);
}

.wsf-field-radio label:hover::before {
    transform: scaleY(1);
}

.wsf-field-radio input[type="radio"] {
    margin-right: 15px;
    transform: scale(1.3);
    accent-color: var(--cfpa-primary);
}

.wsf-field-radio input[type="radio"]:checked + span {
    color: var(--cfpa-primary);
    font-weight: 700;
}

.wsf-field-radio label:has(input:checked) {
    border-color: var(--cfpa-primary);
    background: linear-gradient(135deg, var(--cfpa-light-red), #ffffff);
    box-shadow: 0 6px 20px rgba(214, 48, 49, 0.2);
}

.wsf-field-radio label:has(input:checked)::before {
    transform: scaleY(1);
}

/* ===== AMOUNT FIELD (ΠΟΣΟ) ===== */
.wsf-field[data-id="114"] {
    text-align: center;
    margin: 25px 0;
}

.wsf-field[data-id="114"] input {
    background: linear-gradient(135deg, var(--cfpa-primary), #b71c1c);
    color: var(--cfpa-white);
    font-size: 32px;
    font-weight: 800;
    text-align: center;
    border: none;
    border-radius: 15px;
    padding: 20px;
    box-shadow: 0 8px 25px rgba(214, 48, 49, 0.3);
    letter-spacing: 1px;
}

.wsf-field[data-id="114"] .wsf-label {
    color: var(--cfpa-primary);
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 15px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* ===== STRIPE ELEMENTS STYLING ===== */
.wsf-field-stri_el_cc {
    background: var(--cfpa-light-gray);
    border-radius: 12px;
    padding: 25px;
    border: 2px solid var(--cfpa-border);
    margin: 30px 0;
}

.wsf-field-stri_el_cc .wsf-label {
    color: var(--cfpa-primary);
    font-size: 18px;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
}

.wsf-field-stri_el_cc .wsf-label::before {
    content: "🔒";
    margin-right: 10px;
    font-size: 20px;
}

/* ===== SUBMIT BUTTON ===== */
.wsf-field-stri_el_checkout button {
    background: linear-gradient(135deg, var(--cfpa-secondary), #008f5b);
    color: var(--cfpa-white);
    border: none;
    border-radius: 12px;
    padding: 18px 40px;
    font-size: 18px;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.3s ease;
    width: 100%;
    text-transform: uppercase;
    letter-spacing: 1px;
    box-shadow: 0 6px 20px rgba(0, 168, 107, 0.3);
}

.wsf-field-stri_el_checkout button:hover {
    background: linear-gradient(135deg, #009f63, var(--cfpa-secondary));
    box-shadow: 0 10px 30px rgba(0, 168, 107, 0.4);
}

.wsf-field-stri_el_checkout button:active {
    transform: none;
}

/* ===== HELP TEXT ===== */
.wsf-help {
    color: #6c757d;
    font-size: 14px;
    font-style: italic;
    margin-top: 8px;
    line-height: 1.4;
}

/* ===== SECURITY BADGE ===== */
.wsf-form::after {
    content: "🛡️ Ασφαλής Πληρωμή μέσω Stripe";
    display: block;
    text-align: center;
    color: var(--cfpa-dark-gray);
    font-size: 14px;
    margin-top: 25px;
    padding-top: 20px;
    border-top: 1px solid var(--cfpa-border);
    font-weight: 500;
}

/* ===== RESPONSIVE DESIGN ===== */
@media (max-width: 768px) {
    .wsf-form {
        margin: 20px;
        padding: 25px 20px;
        border-radius: 12px;
    }
    
    .wsf-form h2, .wsf-form .wsf-label-form {
        font-size: 24px;
    }
    
    .wsf-field-radio label {
        padding: 15px 18px;
        font-size: 15px;
    }
    
    .wsf-field[data-id="114"] input {
        font-size: 26px;
        padding: 16px;
    }
    
    .wsf-field input[type="text"],
    .wsf-field input[type="email"],
    .wsf-field input[type="tel"] {
        padding: 12px 16px;
        font-size: 16px;
    }
}

@media (max-width: 480px) {
    .wsf-form {
        margin: 10px;
        padding: 20px 15px;
    }
    
    .wsf-field-radio label {
        padding: 12px 15px;
        font-size: 14px;
    }
    
    .wsf-field[data-id="114"] input {
        font-size: 22px;
    }
}

/* ===== LOADING STATE ===== */
.wsf-form.wsf-form-processing {
    pointer-events: none;
    opacity: 0.7;
}

.wsf-form.wsf-form-processing::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 40px;
    height: 40px;
    border: 4px solid var(--cfpa-border);
    border-top: 4px solid var(--cfpa-primary);
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% { transform: translate(-50%, -50%) rotate(0deg); }
    100% { transform: translate(-50%, -50%) rotate(360deg); }
}/* End custom CSS */