.elementor-1301 .elementor-element.elementor-element-662bdd0{--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;--justify-content:center;--align-items:center;}.elementor-1301 .elementor-element.elementor-element-662bdd0 > .elementor-shape-top .elementor-shape-fill, .elementor-1301 .elementor-element.elementor-element-662bdd0 > .e-con-inner > .elementor-shape-top .elementor-shape-fill{fill:var( --e-global-color-acc06af );}.elementor-1301 .elementor-element.elementor-element-662bdd0 > .elementor-shape-top svg, .elementor-1301 .elementor-element.elementor-element-662bdd0 > .e-con-inner > .elementor-shape-top svg{width:calc(170% + 1.3px);height:20.4em;}.elementor-1301 .elementor-element.elementor-element-04ad58e{--display:flex;--margin-top:5rem;--margin-bottom:2rem;--margin-left:0rem;--margin-right:0rem;}.elementor-1301 .elementor-element.elementor-element-02ec2ec{text-align:center;}.elementor-1301 .elementor-element.elementor-element-02ec2ec .elementor-heading-title{font-family:"Antic Didone", Sans-serif;font-size:50px;color:var( --e-global-color-a208cf2 );}.elementor-1301 .elementor-element.elementor-element-0d359fd{text-align:center;font-family:var( --e-global-typography-dded47d-font-family ), Sans-serif;font-size:var( --e-global-typography-dded47d-font-size );font-weight:var( --e-global-typography-dded47d-font-weight );color:var( --e-global-color-7ff8ab6 );}.elementor-1301 .elementor-element.elementor-element-0dbeee0{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:2rem;--margin-bottom:2rem;--margin-left:0rem;--margin-right:0rem;}.elementor-1301 .elementor-element.elementor-element-0de6189 > .elementor-widget-container{margin:0rem 0rem 0rem 0rem;}.elementor-1301 .elementor-element.elementor-element-b211a5f{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:2rem;--margin-bottom:2rem;--margin-left:0rem;--margin-right:0rem;}.elementor-1301 .elementor-element.elementor-element-f2bfd99{--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-1301 .elementor-element.elementor-element-5075b99.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-1301 .elementor-element.elementor-element-5075b99{text-align:center;}.elementor-1301 .elementor-element.elementor-element-5075b99 .elementor-heading-title{font-family:"Antic Didone", Sans-serif;font-size:38px;color:var( --e-global-color-acc06af );}.elementor-1301 .elementor-element.elementor-element-b8991dc{--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-1301 .elementor-element.elementor-element-8764f6c{font-family:var( --e-global-typography-dded47d-font-family ), Sans-serif;font-size:var( --e-global-typography-dded47d-font-size );font-weight:var( --e-global-typography-dded47d-font-weight );color:var( --e-global-color-acc06af );}.elementor-1301 .elementor-element.elementor-element-bdd2474{--display:flex;--margin-top:0rem;--margin-bottom:10rem;--margin-left:0rem;--margin-right:0rem;}.elementor-1301 .elementor-element.elementor-element-d0da0ce > .elementor-widget-container{margin:1rem 0rem 0rem 0rem;}.elementor-1301 .elementor-element.elementor-element-d0da0ce .elementor-button{font-family:var( --e-global-typography-234745e-font-family ), Sans-serif;font-size:var( --e-global-typography-234745e-font-size );font-weight:var( --e-global-typography-234745e-font-weight );fill:#322038;color:#322038;}.elementor-1301 .elementor-element.elementor-element-d0da0ce .elementor-button:hover, .elementor-1301 .elementor-element.elementor-element-d0da0ce .elementor-button:focus{color:var( --e-global-color-acc06af );}.elementor-1301 .elementor-element.elementor-element-d0da0ce .elementor-button:hover svg, .elementor-1301 .elementor-element.elementor-element-d0da0ce .elementor-button:focus svg{fill:var( --e-global-color-acc06af );}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-1301 .elementor-element.elementor-element-0d359fd{font-size:var( --e-global-typography-dded47d-font-size );}.elementor-1301 .elementor-element.elementor-element-8764f6c{font-size:var( --e-global-typography-dded47d-font-size );}.elementor-1301 .elementor-element.elementor-element-d0da0ce .elementor-button{font-size:var( --e-global-typography-234745e-font-size );}}@media(min-width:768px){.elementor-1301 .elementor-element.elementor-element-662bdd0{--content-width:1300px;}.elementor-1301 .elementor-element.elementor-element-04ad58e{--width:70%;}.elementor-1301 .elementor-element.elementor-element-0dbeee0{--content-width:1300px;}.elementor-1301 .elementor-element.elementor-element-b211a5f{--content-width:1300px;}.elementor-1301 .elementor-element.elementor-element-f2bfd99{--width:70%;}.elementor-1301 .elementor-element.elementor-element-b8991dc{--width:70%;}}@media(max-width:767px){.elementor-1301 .elementor-element.elementor-element-662bdd0 > .elementor-shape-top svg, .elementor-1301 .elementor-element.elementor-element-662bdd0 > .e-con-inner > .elementor-shape-top svg{width:calc(300% + 1.3px);height:28.4em;}.elementor-1301 .elementor-element.elementor-element-02ec2ec .elementor-heading-title{font-size:40px;}.elementor-1301 .elementor-element.elementor-element-0d359fd{font-size:var( --e-global-typography-dded47d-font-size );}.elementor-1301 .elementor-element.elementor-element-5075b99 .elementor-heading-title{font-size:35px;}.elementor-1301 .elementor-element.elementor-element-8764f6c{font-size:var( --e-global-typography-dded47d-font-size );}.elementor-1301 .elementor-element.elementor-element-d0da0ce .elementor-button{font-size:var( --e-global-typography-234745e-font-size );}}/* Start custom CSS for html, class: .elementor-element-0de6189 *//* --- VARIABLES & BASE --- */
:root {
    --col-bg: #322038;
    --col-text: #FFF5EE;
    --col-accent: #BB9D67;
    --glass-border: rgba(255, 245, 238, 0.1);
}

.elementor-1301 .elementor-element.elementor-element-0de6189 .retirement-simulator-wrapper {
    background: linear-gradient(135deg, #322038 0%, #2a1b2f 100%);
    color: var(--col-text);
    font-family: 'Comfortaa', sans-serif;
    padding: 30px;
    border-radius: 20px;
    box-shadow: 0 0 5px #BB9D67;
    max-width: 1000px;
    margin: 0 auto;
}

/* Header */
.elementor-1301 .elementor-element.elementor-element-0de6189 .ret-header { text-align: center; margin-bottom: 30px; }
.elementor-1301 .elementor-element.elementor-element-0de6189 .ret-header h2 { color: var(--col-accent); font-family: 'Comfortaa', sans-serif; margin: 0; font-size: 2em; }
.elementor-1301 .elementor-element.elementor-element-0de6189 .ret-header p { opacity: 0.7; margin-top: 5px; font-size: 0.9em; }

/* Grid */
.elementor-1301 .elementor-element.elementor-element-0de6189 .ret-grid { display: flex; gap: 40px; }
.elementor-1301 .elementor-element.elementor-element-0de6189 .ret-controls { flex: 1; display: flex; flex-direction: column; gap: 25px; }
.elementor-1301 .elementor-element.elementor-element-0de6189 .ret-results { flex: 1.2; display: flex; flex-direction: column; gap: 20px; }

/* --- CONTROLS --- */
.elementor-1301 .elementor-element.elementor-element-0de6189 .control-group { position: relative; }
.elementor-1301 .elementor-element.elementor-element-0de6189 .row-split { display: flex; gap: 15px; }
.elementor-1301 .elementor-element.elementor-element-0de6189 .row-split > div { flex: 1; }
.elementor-1301 .elementor-element.elementor-element-0de6189 label { display: block; font-size: 0.75em; text-transform: uppercase; letter-spacing: 1px; opacity: 0.6; margin-bottom: 8px; }

/* Switch de Mode */
.elementor-1301 .elementor-element.elementor-element-0de6189 .mode-.elementor-1301 .elementor-element.elementor-element-0de6189 {
    display: flex; background: rgba(0,0,0,0.2); border-radius: 8px; padding: 4px; border: 1px solid var(--glass-border);
}
.elementor-1301 .elementor-element.elementor-element-0de6189 .mode-btn {
    flex: 1; text-align: center; padding: 10px 0; font-size: 0.85em; border-radius: 6px;
    cursor: pointer; transition: 0.3s; opacity: 0.6; font-weight: 500;
}
.elementor-1301 .elementor-element.elementor-element-0de6189 .mode-btn.active {
    background: var(--col-accent); color: #322038; opacity: 1; font-weight: bold; box-shadow: 0 2px 10px rgba(0,0,0,0.2);
}

/* Inputs */
.elementor-1301 .elementor-element.elementor-element-0de6189 .glass-input {
    display: flex; align-items: center; background: rgba(0,0,0,0.2);
    border: 1px solid var(--glass-border); border-radius: 8px; padding: 0 15px;
    transition: 0.3s;
}
.elementor-1301 .elementor-element.elementor-element-0de6189 .glass-input.highlight-input { border-color: rgba(187, 157, 103, 0.3); background: rgba(187, 157, 103, 0.05); }
.elementor-1301 .elementor-element.elementor-element-0de6189 .glass-input input {
    width: 100%; background: transparent; border: none; color: #fff; font-size: 1.1em; 
    padding: 12px 0; outline: none; -moz-appearance: textfield;
}
.elementor-1301 .elementor-element.elementor-element-0de6189 .suffix { color: var(--col-accent); font-size: 0.9em; }
.elementor-1301 .elementor-element.elementor-element-0de6189 .currency { color: var(--col-accent); font-weight: 500; }

/* Slider (Range) */
.elementor-1301 .elementor-element.elementor-element-0de6189 .gold-range {
    -webkit-appearance: none; width: 100%; height: 3px; background: rgba(255,255,255,0.1);
    border-radius: 2px; outline: none; margin-top: 12px; display: block;
}
.elementor-1301 .elementor-element.elementor-element-0de6189 .gold-range::-webkit-slider-thumb {
    -webkit-appearance: none; width: 16px; height: 16px; border-radius: 50%; background: var(--col-accent);
    cursor: pointer; border: 2px solid #322038; box-shadow: 0 0 0 2px var(--col-accent);
}

/* Risque */
.elementor-1301 .elementor-element.elementor-element-0de6189 .risk-.elementor-1301 .elementor-element.elementor-element-0de6189 { display: flex; gap: 5px; }
.elementor-1301 .elementor-element.elementor-element-0de6189 .risk-btn {
    flex: 1; text-align: center; padding: 10px 0; font-size: 0.8em; border: 1px solid var(--glass-border);
    border-radius: 6px; cursor: pointer; transition: 0.2s; opacity: 0.7;
}
.elementor-1301 .elementor-element.elementor-element-0de6189 .risk-btn.active { border-color: var(--col-accent); color: var(--col-accent); opacity: 1; font-weight: bold; background: rgba(187, 157, 103, 0.1); }

/* --- RESULTS CARD --- */
.elementor-1301 .elementor-element.elementor-element-0de6189 .res-card-primary {
    background: rgba(187, 157, 103, 0.1); border: 1px solid rgba(187, 157, 103, 0.3);
    border-radius: 12px; padding: 25px; text-align: center;
    box-shadow: 0 10px 30px rgba(0,0,0,0.2); transition: 0.3s ease;
}
.elementor-1301 .elementor-element.elementor-element-0de6189 .res-card-primary small { display: block; color: var(--col-accent); text-transform: uppercase; letter-spacing: 1px; font-size: 0.75em; margin-bottom: 10px; }
.elementor-1301 .elementor-element.elementor-element-0de6189 .big-amount { display: block; font-size: 2.2em; font-weight: bold; color: #fff; line-height: 1; margin-bottom: 5px; }
.elementor-1301 .elementor-element.elementor-element-0de6189 .sub-text { display: block; font-size: 0.8em; opacity: 0.6; font-style: italic; }

.elementor-1301 .elementor-element.elementor-element-0de6189 .res-card-secondary {
    background: rgba(255,255,255,0.03); border: 1px solid var(--glass-border);
    border-radius: 10px; padding: 15px 20px; transition: 0.3s ease;
}
.elementor-1301 .elementor-element.elementor-element-0de6189 .res-line { display: flex; justify-content: space-between; margin-bottom: 5px; font-size: 0.9em; }
.elementor-1301 .elementor-element.elementor-element-0de6189 .res-line:last-child { margin-bottom: 0; }
.elementor-1301 .elementor-element.elementor-element-0de6189 .res-line span { opacity: 0.7; }
.elementor-1301 .elementor-element.elementor-element-0de6189 .gold-text { color: var(--col-accent); }

/* Graphique */
.elementor-1301 .elementor-element.elementor-element-0de6189 .chart-container { height: 220px; position: relative; width: 100%; background: rgba(0,0,0,0.15); border-radius: 12px; padding: 10px; margin-top: 10px; }

/* Disclaimer */
.elementor-1301 .elementor-element.elementor-element-0de6189 .disclaimer { font-size: 0.7em; opacity: 0.4; text-align: center; margin-top: 15px; font-style: italic; }

/* Mobile */
@media (max-width: 768px) {
    .elementor-1301 .elementor-element.elementor-element-0de6189 .ret-grid { flex-direction: column; gap: 30px; }
    .elementor-1301 .elementor-element.elementor-element-0de6189 .retirement-simulator-wrapper { padding: 20px; }
    .elementor-1301 .elementor-element.elementor-element-0de6189 .big-amount { font-size: 1.8em; }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-8764f6c */.elementor-1301 .elementor-element.elementor-element-8764f6c .inline-btn {
    display: inline-block;
    background: #BB9D67;
    border: none;
    border-radius: 6px;
    padding: 2px 8px;
    font-size: 0.85em;
    font-weight: bold;
    color: #322038;
    opacity: 1;
    margin: 0 4px;
    vertical-align: middle;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-d0da0ce */.elementor-1301 .elementor-element.elementor-element-d0da0ce .elementor-button {
    /* Fond semi-transparent avec dégradé pour l'effet de profondeur */
    background: linear-gradient(
        135deg, 
        rgba(255, 255, 255, 0.4), 
        rgba(255, 255, 255, 0.1)
    );
    
    /* Le secret du verre : le flou d'arrière-plan */
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px); /* Pour Safari */
    
    /* Bordure subtile pour capter la lumière sur les arêtes */
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-top: 1px solid rgba(255, 255, 255, 0.5); /* Plus clair en haut */
    border-left: 1px solid rgba(255, 255, 255, 0.5); /* Plus clair à gauche */
    
    /* Ombre portée douce pour détacher le bouton du fond */
    box-shadow: 0 8px 32px 0 rgba(31, 38, 135, 0.2);
    
    /* Forme arrondie pour l'aspect "liquide" */
    border-radius: 50px;
    
    /* Couleur du texte */
    color: #322038;
    
    /* Transition fluide pour le survol */
    transition: all 0.4s ease;
    font-weight: bold!important;
}

/* Effet au survol : le bouton "s'allume" et monte légèrement */
.elementor-1301 .elementor-element.elementor-element-d0da0ce .elementor-button:hover {
    transform: translateY(-3px) scale(1.02);
    background: linear-gradient(
        135deg, 
        rgba(255, 255, 255, 0.5), 
        rgba(255, 255, 255, 0.2)
    );
    box-shadow: 0 10px 40px 0 rgba(31, 38, 135, 0.3);
    border-color: rgba(255, 255, 255, 0.8);
}/* End custom CSS */