.elementor-59408 .elementor-element.elementor-element-d091c13{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}:root{--page-title-display:none;}body.elementor-page-59408{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}/* Start custom CSS *//* ============================================================
       VARIABLES
    ============================================================ */
    :root {
      --ts-orange:      #ec671a;
      --ts-orange-dk:   #c02601;
      --ts-orange-lt:   #ff6642;
      --ts-charcoal:    #1e1e1e;
      --ts-dark:        #111111;
      --ts-light-bg:    #f5f3f0;
      --ts-white:       #ffffff;
      --ts-text:        #3a3a3a;
      --ts-muted:       #888888;
      --ts-border:      #e0dbd5;
      --ts-shadow:      0 8px 40px rgba(0,0,0,0.1);
      --ts-shadow-card: 0 4px 20px rgba(0,0,0,0.08);
      --ts-radius:      4px;
    }

    /* ============================================================
       KEYFRAMES
    ============================================================ */
    @keyframes ts-fadeUp  { from { opacity:0; transform:translateY(40px); } to { opacity:1; transform:translateY(0); } }
    @keyframes ts-fadeIn  { from { opacity:0; } to { opacity:1; } }
    @keyframes ts-scaleIn { from { opacity:0; transform:scale(.9); } to { opacity:1; transform:scale(1); } }
    @keyframes ts-pulse   { 0%,100% { box-shadow:0 0 0 0 rgba(236,103,26,.45); } 50% { box-shadow:0 0 0 12px rgba(236,103,26,0); } }

    /* ============================================================
       SCROLL REVEAL
    ============================================================ */
    .ts-reveal       { opacity:0 !important; transform:translateY(40px) !important; transition:opacity .7s cubic-bezier(.22,1,.36,1), transform .7s cubic-bezier(.22,1,.36,1) !important; }
    .ts-reveal-left  { opacity:0 !important; transform:translateX(-40px) !important; transition:opacity .7s cubic-bezier(.22,1,.36,1), transform .7s cubic-bezier(.22,1,.36,1) !important; }
    .ts-reveal-right { opacity:0 !important; transform:translateX(40px) !important; transition:opacity .7s cubic-bezier(.22,1,.36,1), transform .7s cubic-bezier(.22,1,.36,1) !important; }
    .ts-reveal.ts-visible,
    .ts-reveal-left.ts-visible,
    .ts-reveal-right.ts-visible { opacity:1 !important; transform:none !important; }
    .ts-d1 { transition-delay:.1s !important; }
    .ts-d2 { transition-delay:.2s !important; }
    .ts-d3 { transition-delay:.3s !important; }
    .ts-d4 { transition-delay:.4s !important; }

    /* ============================================================
       WRAPPER ROOT  — neutralise les overrides Elementor/WP
    ============================================================ */
    .ts-root {
      font-family: 'Lato', sans-serif !important;
      font-size:   16px !important;
      line-height: 1.7 !important;
      color:       #3a3a3a !important;
      background:  #ffffff !important;
      overflow-x:  hidden !important;
      box-sizing:  border-box !important;
      padding:     0 !important;
      margin:      0 !important;
      width:       100% !important;
      max-width:   100% !important;
    }
    .ts-root *,
    .ts-root *::before,
    .ts-root *::after {
      box-sizing: border-box !important;
    }
    .ts-root img {
      max-width:  100% !important;
      height:     auto !important;
      display:    block !important;
    }
    .ts-root a {
      color:           #ec671a !important;
      text-decoration: none !important;
    }
    .ts-root a:hover { color: #c02601 !important; }

    /* ============================================================
       HERO
    ============================================================ */
    .ts-hero {
      position:   relative !important;
      background: #111111 !important;
      min-height: 520px !important;
      display:    flex !important;
      align-items:center !important;
      overflow:   hidden !important;
      margin:     0 !important;
      padding:    0 !important;
      width:      100% !important;
    }
    .ts-hero::before {
      content:  '' !important;
      position: absolute !important;
      inset:    0 !important;
      background:
        radial-gradient(ellipse 60% 80% at 80% 50%, rgba(236,103,26,.18) 0%, transparent 65%),
        repeating-linear-gradient(-45deg, transparent, transparent 20px, rgba(255,255,255,.015) 20px, rgba(255,255,255,.015) 21px) !important;
      pointer-events: none !important;
    }
    .ts-hero-inner {
      position:             relative !important;
      z-index:              2 !important;
      max-width:            1100px !important;
      width:                100% !important;
      margin:               0 auto !important;
      padding:              80px 40px !important;
      display:              grid !important;
      grid-template-columns:1fr 380px !important;
      gap:                  60px !important;
      align-items:          center !important;
    }
    .ts-hero-badge {
      display:         inline-flex !important;
      align-items:     center !important;
      gap:             8px !important;
      background:      rgba(236,103,26,.15) !important;
      border:          1px solid rgba(236,103,26,.4) !important;
      color:           #ff6642 !important;
      font-family:     'Lato', sans-serif !important;
      font-size:       .75rem !important;
      font-weight:     700 !important;
      letter-spacing:  .12em !important;
      text-transform:  uppercase !important;
      padding:         6px 14px !important;
      border-radius:   2px !important;
      margin-bottom:   20px !important;
      animation:       ts-fadeIn .8s ease both !important;
      line-height:     1.4 !important;
    }
    .ts-hero-badge::before {
      content:       '' !important;
      width:         6px !important;
      height:        6px !important;
      background:    #ec671a !important;
      border-radius: 50% !important;
      flex-shrink:   0 !important;
      animation:     ts-pulse 2s infinite !important;
    }
    .ts-hero-title {
      font-family:     'Bricolage Grotesque', sans-serif !important;
      font-weight:     900 !important;
      font-size:       clamp(2.8rem, 6vw, 5rem) !important;
      line-height:     1 !important;
      color:           #ffffff !important;
      letter-spacing:  -.01em !important;
      margin:          0 !important;
      padding:         0 !important;
      animation:       ts-fadeUp .9s cubic-bezier(.22,1,.36,1) .1s both !important;
      text-transform:  none !important;
    }
    .ts-hero-title em {
      font-style:  normal !important;
      color:       #ec671a !important;
    }
    .ts-hero-subtitle {
      margin-top:  20px !important;
      color:       rgba(255,255,255,.65) !important;
      font-family: 'Lato', sans-serif !important;
      font-size:   1.05rem !important;
      font-weight: 300 !important;
      max-width:   540px !important;
      line-height: 1.8 !important;
      animation:   ts-fadeUp .9s cubic-bezier(.22,1,.36,1) .2s both !important;
      margin-bottom:0 !important;
      padding:     0 !important;
    }
    .ts-hero-subtitle strong {
      color:       #ffffff !important;
      font-weight: 700 !important;
    }
    .ts-hero-img-wrap {
      position:  relative !important;
      animation: ts-scaleIn 1s cubic-bezier(.22,1,.36,1) .3s both !important;
    }
    .ts-hero-img-wrap img {
      border-radius: 6px !important;
      box-shadow:    0 30px 80px rgba(0,0,0,.5) !important;
      width:         100% !important;
      height:        auto !important;
    }
    .ts-hero-img-wrap::after {
      content:       '' !important;
      position:      absolute !important;
      inset:         -4px !important;
      border:        2px solid rgba(236,103,26,.3) !important;
      border-radius: 8px !important;
      pointer-events:none !important;
    }

    /* ============================================================
       STATS BAR
    ============================================================ */
    .ts-stats-bar {
      background: #ec671a !important;
      padding:    28px 40px !important;
      margin:     0 !important;
      width:      100% !important;
    }
    .ts-stats-inner {
      max-width:       1100px !important;
      margin:          0 auto !important;
      display:         flex !important;
      justify-content: space-around !important;
      align-items:     center !important;
      flex-wrap:       wrap !important;
      gap:             20px !important;
      padding:         0 !important;
    }
    .ts-stat-item {
      text-align: center !important;
      color:      #ffffff !important;
    }
    .ts-stat-number {
      font-family:    'Bricolage Grotesque', sans-serif !important;
      font-weight:    900 !important;
      font-size:      2.4rem !important;
      line-height:    1 !important;
      letter-spacing: -.02em !important;
      display:        block !important;
      color:          #ffffff !important;
      margin:         0 !important;
      padding:        0 !important;
    }
    .ts-stat-label {
      font-family:    'Lato', sans-serif !important;
      font-size:      .78rem !important;
      font-weight:    700 !important;
      letter-spacing: .1em !important;
      text-transform: uppercase !important;
      opacity:        .85 !important;
      color:          #ffffff !important;
      display:        block !important;
      margin:         4px 0 0 !important;
      padding:        0 !important;
    }
    .ts-stat-sep {
      width:      1px !important;
      height:     40px !important;
      background: rgba(255,255,255,.3) !important;
      flex-shrink:0 !important;
    }

    /* ============================================================
       INTRO
    ============================================================ */
    .ts-intro {
      max-width:   800px !important;
      margin:      80px auto !important;
      padding:     0 40px !important;
      text-align:  center !important;
    }
    .ts-intro p {
      font-family: 'Lato', sans-serif !important;
      font-size:   1.15rem !important;
      color:       #3a3a3a !important;
      line-height: 1.9 !important;
      margin:      0 !important;
      padding:     0 !important;
    }
    .ts-intro strong {
      color:       #1e1e1e !important;
      font-weight: 700 !important;
    }
    .ts-divider {
      width:         60px !important;
      height:        3px !important;
      background:    #ec671a !important;
      margin:        0 auto 28px !important;
      border-radius: 2px !important;
      display:       block !important;
      border:        none !important;
    }

    /* ============================================================
       TIMELINE SECTION
    ============================================================ */
    .ts-timeline {
      max-width: 1100px !important;
      margin:    0 auto 100px !important;
      padding:   0 40px !important;
    }
    .ts-section-label {
      font-family:    'Lato', sans-serif !important;
      font-size:      .72rem !important;
      font-weight:    700 !important;
      letter-spacing: .15em !important;
      text-transform: uppercase !important;
      color:          #ec671a !important;
      margin-bottom:  10px !important;
      display:        block !important;
      padding:        0 !important;
    }
    .ts-section-title {
      font-family:    'Bricolage Grotesque', sans-serif !important;
      font-weight:    900 !important;
      font-size:      clamp(2rem, 4vw, 3rem) !important;
      color:          #1e1e1e !important;
      line-height:    1.1 !important;
      margin-bottom:  60px !important;
      margin-top:     0 !important;
      padding:        0 !important;
      text-transform: none !important;
      letter-spacing: -.01em !important;
    }
    .ts-section-title span { color: #ec671a !important; }

    /* Timeline item */
    .ts-timeline-item {
      display:               grid !important;
      grid-template-columns: 1fr 1fr !important;
      gap:                   60px !important;
      align-items:           center !important;
      margin-bottom:         80px !important;
      position:              relative !important;
    }
    .ts-timeline-item.ts-flip .ts-timeline-content { order: 2 !important; }
    .ts-timeline-item.ts-flip .ts-timeline-media   { order: 1 !important; }

    .ts-year-tag {
      display:        inline-block !important;
      font-family:    'Bricolage Grotesque', sans-serif !important;
      font-weight:    900 !important;
      font-size:      .85rem !important;
      letter-spacing: .1em !important;
      color:          #ec671a !important;
      background:     rgba(236,103,26,.08) !important;
      border-left:    3px solid #ec671a !important;
      padding:        4px 12px !important;
      margin-bottom:  14px !important;
      text-transform: uppercase !important;
    }

    .ts-timeline-content h2 {
      font-family:    'Bricolage Grotesque', sans-serif !important;
      font-weight:    900 !important;
      font-size:      clamp(1.6rem, 3vw, 2.2rem) !important;
      color:          #1e1e1e !important;
      line-height:    1.15 !important;
      margin-bottom:  20px !important;
      margin-top:     0 !important;
      padding:        0 !important;
      letter-spacing: -.01em !important;
      text-transform: none !important;
    }
    .ts-timeline-content p {
      font-family:   'Lato', sans-serif !important;
      font-size:     .97rem !important;
      line-height:   1.85 !important;
      color:         #3a3a3a !important;
      margin-bottom: 14px !important;
      margin-top:    0 !important;
      padding:       0 !important;
    }
    .ts-timeline-content p:last-child { margin-bottom: 0 !important; }
    .ts-timeline-content strong { color: #1e1e1e !important; font-weight: 700 !important; }
    .ts-timeline-content a {
      color:          #ec671a !important;
      font-weight:    700 !important;
      border-bottom:  1px solid rgba(236,103,26,.3) !important;
      text-decoration:none !important;
    }
    .ts-timeline-content a:hover { border-bottom-color: #ec671a !important; }

    /* Check list */
    .ts-check-list {
      list-style: none !important;
      margin:     14px 0 18px !important;
      padding:    0 !important;
    }
    .ts-check-list li {
      display:       block !important;
      font-family:   'Lato', sans-serif !important;
      font-size:     .97rem !important;
      line-height:   1.75 !important;
      color:         #3a3a3a !important;
      padding:       6px 0 6px 28px !important;
      border-bottom: 1px solid #e0dbd5 !important;
      margin:        0 !important;
      list-style:    none !important;
      position:      relative !important;
    }
    .ts-check-list li:last-child { border-bottom: none !important; }
    .ts-check-list li::before {
      content:            '' !important;
      position:           absolute !important;
      left:               0 !important;
      top:                10px !important;
      width:              16px !important;
      height:             16px !important;
      border-radius:      50% !important;
      background-color:   #ec671a !important;
      background-image:   url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 10'%3E%3Cpath d='M1 5l3.5 3.5L11 1' stroke='white' stroke-width='1.8' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
      background-size:    10px !important;
      background-repeat:  no-repeat !important;
      background-position:center !important;
      display:            block !important;
      flex-shrink:        unset !important;
    }
    .ts-check-list li strong { color: #1e1e1e !important; font-weight: 700 !important; }

    /* Milestone mini-cards */
    .ts-milestone-grid {
      display:               grid !important;
      grid-template-columns: 1fr 1fr !important;
      gap:                   12px !important;
      margin:                18px 0 20px !important;
    }
    .ts-milestone-card {
      background:  #f5f3f0 !important;
      border:      1.5px solid #e0dbd5 !important;
      border-radius:4px !important;
      padding:     16px 18px !important;
      position:    relative !important;
      overflow:    hidden !important;
      transition:  border-color .3s, transform .3s cubic-bezier(.22,1,.36,1), box-shadow .3s !important;
    }
    .ts-milestone-card::before {
      content:          '' !important;
      position:         absolute !important;
      top:              0 !important;
      left:             0 !important;
      width:            3px !important;
      height:           100% !important;
      background:       #ec671a !important;
      transform:        scaleY(0) !important;
      transform-origin: bottom !important;
      transition:       transform .3s cubic-bezier(.22,1,.36,1) !important;
    }
    .ts-milestone-card:hover {
      border-color: #ec671a !important;
      transform:    translateY(-3px) !important;
      box-shadow:   0 4px 20px rgba(0,0,0,.08) !important;
    }
    .ts-milestone-card:hover::before { transform: scaleY(1) !important; }
    .ts-milestone-card h3 {
      font-family:   'Bricolage Grotesque', sans-serif !important;
      font-weight:   900 !important;
      font-size:     1rem !important;
      color:         #1e1e1e !important;
      margin-bottom: 4px !important;
      margin-top:    0 !important;
      padding:       0 !important;
      text-transform:none !important;
      line-height:   1.3 !important;
    }
    .ts-milestone-card p {
      font-family:   'Lato', sans-serif !important;
      font-size:     .82rem !important;
      line-height:   1.55 !important;
      color:         #3a3a3a !important;
      margin:        0 !important;
      padding:       0 !important;
    }

    /* Media */
    .ts-timeline-media {
      position: relative !important;
    }
    .ts-timeline-media img {
      border-radius: 6px !important;
      box-shadow:    0 8px 40px rgba(0,0,0,.1) !important;
      width:         100% !important;
      height:        auto !important;
      transition:    transform .5s cubic-bezier(.22,1,.36,1), box-shadow .5s !important;
    }
    .ts-timeline-media:hover img {
      transform:  scale(1.02) translateY(-4px) !important;
      box-shadow: 0 20px 60px rgba(0,0,0,.18) !important;
    }
    .ts-timeline-media figcaption {
      margin-top:  10px !important;
      font-family: 'Lato', sans-serif !important;
      font-size:   .78rem !important;
      color:       #888 !important;
      font-style:  italic !important;
      text-align:  center !important;
    }
    .ts-timeline-media::before {
      content:       '' !important;
      position:      absolute !important;
      bottom:        -8px !important;
      right:         -8px !important;
      width:         80px !important;
      height:        80px !important;
      border-bottom: 3px solid #ec671a !important;
      border-right:  3px solid #ec671a !important;
      border-radius: 0 0 6px 0 !important;
      pointer-events:none !important;
      z-index:       -1 !important;
    }
    .ts-timeline-item.ts-flip .ts-timeline-media::before {
      right:         auto !important;
      left:          -8px !important;
      border-right:  none !important;
      border-left:   3px solid #ec671a !important;
      border-radius: 0 0 0 6px !important;
    }

    /* ============================================================
       FEATURE SECTION (fond clair)
    ============================================================ */
    .ts-feature {
      background:    #f5f3f0 !important;
      padding:       80px 40px !important;
      margin-bottom: 0 !important;
      width:         100% !important;
    }
    .ts-feature-inner {
      max-width:             1100px !important;
      margin:                0 auto !important;
      display:               grid !important;
      grid-template-columns: 1fr 1fr !important;
      gap:                   60px !important;
      align-items:           center !important;
    }
    .ts-feature-text h2 {
      font-family:   'Bricolage Grotesque', sans-serif !important;
      font-weight:   900 !important;
      font-size:     clamp(1.8rem, 3vw, 2.5rem) !important;
      color:         #1e1e1e !important;
      line-height:   1.15 !important;
      margin-bottom: 20px !important;
      margin-top:    0 !important;
      padding:       0 !important;
      text-transform:none !important;
    }
    .ts-feature-text h2 span { color: #ec671a !important; }
    .ts-feature-text p {
      font-family:   'Lato', sans-serif !important;
      font-size:     .97rem !important;
      line-height:   1.85 !important;
      color:         #3a3a3a !important;
      margin-bottom: 14px !important;
      margin-top:    0 !important;
      padding:       0 !important;
    }
    .ts-feature-text a {
      color:          #ec671a !important;
      font-weight:    700 !important;
      border-bottom:  1px solid rgba(236,103,26,.3) !important;
      text-decoration:none !important;
    }
    .ts-feature-text a:hover { border-bottom-color: #ec671a !important; }

    /* Pills */
    .ts-pill-list {
      display:     flex !important;
      flex-wrap:   wrap !important;
      gap:         10px !important;
      margin:      24px 0 !important;
      padding:     0 !important;
      list-style:  none !important;
    }
    .ts-pill {
      display:        inline-flex !important;
      align-items:    center !important;
      gap:            6px !important;
      background:     #ffffff !important;
      border:         1.5px solid #e0dbd5 !important;
      color:          #1e1e1e !important;
      font-family:    'Lato', sans-serif !important;
      font-size:      .8rem !important;
      font-weight:    700 !important;
      letter-spacing: .05em !important;
      padding:        6px 14px !important;
      border-radius:  100px !important;
      transition:     border-color .2s, color .2s, background .2s !important;
      line-height:    1.4 !important;
    }
    .ts-pill:hover {
      border-color: #ec671a !important;
      color:        #ec671a !important;
      background:   rgba(236,103,26,.04) !important;
    }

    /* Partner card (dark) */
    .ts-partner-card {
      background:    #1e1e1e !important;
      border-radius: 4px !important;
      padding:       32px !important;
      position:      relative !important;
      overflow:      hidden !important;
    }
    .ts-partner-card::before {
      content:    '' !important;
      position:   absolute !important;
      top:        0 !important;
      left:       0 !important;
      right:      0 !important;
      height:     3px !important;
      background: #ec671a !important;
    }
    .ts-partner-card h3 {
      font-family:   'Bricolage Grotesque', sans-serif !important;
      font-weight:   900 !important;
      font-size:     1.3rem !important;
      color:         #ffffff !important;
      margin-bottom: 16px !important;
      margin-top:    0 !important;
      padding:       0 !important;
      text-transform:none !important;
      line-height:   1.2 !important;
    }
    .ts-check-dark {
      list-style:    none !important;
      margin-bottom: 22px !important;
      padding:       0 !important;
      margin-top:    0 !important;
    }
    .ts-check-dark li {
      display:       flex !important;
      align-items:   flex-start !important;
      gap:           10px !important;
      font-family:   'Lato', sans-serif !important;
      font-size:     .9rem !important;
      color:         rgba(255,255,255,.6) !important;
      line-height:   1.65 !important;
      padding:       5px 0 !important;
      border-bottom: 1px solid rgba(255,255,255,.07) !important;
      margin:        0 !important;
      list-style:    none !important;
    }
    .ts-check-dark li:last-child { border-bottom: none !important; }
    .ts-check-dark li::before {
      content:            '' !important;
      flex-shrink:        0 !important;
      margin-top:         5px !important;
      width:              14px !important;
      height:             14px !important;
      border-radius:      50% !important;
      background-color:   #ec671a !important;
      background-image:   url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 10'%3E%3Cpath d='M1 5l3.5 3.5L11 1' stroke='white' stroke-width='1.8' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
      background-size:    9px !important;
      background-repeat:  no-repeat !important;
      background-position:center !important;
      display:            block !important;
    }
    .ts-partner-card > p {
      font-family:   'Lato', sans-serif !important;
      font-size:     .9rem !important;
      line-height:   1.75 !important;
      color:         rgba(255,255,255,.5) !important;
      margin-bottom: 20px !important;
      margin-top:    0 !important;
      padding:       0 !important;
    }
    .ts-partner-card > p strong { color: rgba(255,255,255,.8) !important; font-weight: 700 !important; }

    /* ============================================================
       CALCULATOR BANNER
    ============================================================ */
    .ts-calc-banner {
      position:  relative !important;
      overflow:  hidden !important;
      margin:    0 !important;
      padding:   0 !important;
      width:     100% !important;
      display:   block !important;
    }
    .ts-calc-banner a {
      display:  block !important;
      position: relative !important;
    }
    .ts-calc-banner img {
      width:      100% !important;
      height:     auto !important;
      display:    block !important;
      filter:     brightness(.95) !important;
      transition: filter .4s, transform .6s cubic-bezier(.22,1,.36,1) !important;
    }
    .ts-calc-banner:hover img {
      filter:    brightness(1.05) !important;
      transform: scale(1.01) !important;
    }
    .ts-calc-overlay {
      position:        absolute !important;
      inset:           0 !important;
      display:         flex !important;
      align-items:     center !important;
      justify-content: center !important;
      background:      rgba(0,0,0,.25) !important;
      transition:      background .3s !important;
    }
    .ts-calc-banner:hover .ts-calc-overlay { background: rgba(0,0,0,.15) !important; }
    .ts-calc-btn {
      background:     #ec671a !important;
      color:          #ffffff !important;
      font-family:    'Bricolage Grotesque', sans-serif !important;
      font-weight:    900 !important;
      font-size:      1.1rem !important;
      letter-spacing: .08em !important;
      text-transform: uppercase !important;
      padding:        16px 40px !important;
      border-radius:  2px !important;
      pointer-events: none !important;
      box-shadow:     0 4px 20px rgba(0,0,0,.3) !important;
      line-height:    1.4 !important;
    }

    /* ============================================================
       AMBITION SECTION
    ============================================================ */
    .ts-ambition {
      max-width: 1100px !important;
      margin:    80px auto !important;
      padding:   0 40px !important;
    }
    .ts-ambition > p {
      font-family:   'Lato', sans-serif !important;
      font-size:     1rem !important;
      line-height:   1.85 !important;
      max-width:     640px !important;
      margin-bottom: 0 !important;
      margin-top:    0 !important;
      padding:       0 !important;
      color:         #3a3a3a !important;
    }
    .ts-ambition > p strong { color: #1e1e1e !important; font-weight: 700 !important; }
    .ts-ambition-grid {
      display:               grid !important;
      grid-template-columns: repeat(4, 1fr) !important;
      gap:                   20px !important;
      margin-top:            40px !important;
    }
    .ts-ambition-card {
      background:     #ffffff !important;
      border:         1.5px solid #e0dbd5 !important;
      border-radius:  6px !important;
      padding:        28px 22px !important;
      text-align:     center !important;
      position:       relative !important;
      overflow:       hidden !important;
      transition:     transform .3s cubic-bezier(.22,1,.36,1), box-shadow .3s, border-color .3s !important;
    }
    .ts-ambition-card:hover {
      transform:    translateY(-6px) !important;
      box-shadow:   0 8px 40px rgba(0,0,0,.1) !important;
      border-color: #ec671a !important;
    }
    .ts-ambition-card::before {
      content:          '' !important;
      position:         absolute !important;
      top:              0 !important;
      left:             0 !important;
      width:            4px !important;
      height:           100% !important;
      background:       #ec671a !important;
      transform:        scaleY(0) !important;
      transform-origin: bottom !important;
      transition:       transform .3s cubic-bezier(.22,1,.36,1) !important;
    }
    .ts-ambition-card:hover::before { transform: scaleY(1) !important; }
    .ts-ambition-icon {
      font-size:     1.8rem !important;
      margin-bottom: 10px !important;
      display:       block !important;
      line-height:   1 !important;
    }
    .ts-ambition-card h3 {
      font-family:   'Bricolage Grotesque', sans-serif !important;
      font-weight:   900 !important;
      font-size:     1.1rem !important;
      color:         #1e1e1e !important;
      margin-bottom: 8px !important;
      margin-top:    0 !important;
      padding:       0 !important;
      letter-spacing:-.01em !important;
      text-transform:none !important;
      line-height:   1.2 !important;
    }
    .ts-ambition-card p {
      font-family: 'Lato', sans-serif !important;
      font-size:   .85rem !important;
      line-height: 1.7 !important;
      color:       #3a3a3a !important;
      margin:      0 !important;
      padding:     0 !important;
    }

    /* ============================================================
       CTA SECTION
    ============================================================ */
    .ts-cta {
      background: #1e1e1e !important;
      padding:    80px 40px !important;
      text-align: center !important;
      position:   relative !important;
      overflow:   hidden !important;
      width:      100% !important;
      margin:     0 !important;
    }
    .ts-cta::before {
      content:    '' !important;
      position:   absolute !important;
      inset:      0 !important;
      background: radial-gradient(ellipse 50% 120% at 50% 50%, rgba(236,103,26,.12) 0%, transparent 70%) !important;
      pointer-events:none !important;
    }
    .ts-cta-inner { position: relative !important; z-index: 1 !important; }
    .ts-cta h2 {
      font-family:   'Bricolage Grotesque', sans-serif !important;
      font-weight:   900 !important;
      font-size:     clamp(2rem, 4vw, 3rem) !important;
      color:         #ffffff !important;
      margin-bottom: 12px !important;
      margin-top:    0 !important;
      padding:       0 !important;
      text-transform:none !important;
      line-height:   1.1 !important;
    }
    .ts-cta h2 span { color: #ec671a !important; }
    .ts-cta p {
      font-family:  'Lato', sans-serif !important;
      color:        rgba(255,255,255,.6) !important;
      font-size:    1rem !important;
      line-height:  1.7 !important;
      margin:       0 auto 36px !important;
      padding:      0 !important;
      max-width:    480px !important;
    }
    .ts-btn-group {
      display:         flex !important;
      gap:             16px !important;
      justify-content: center !important;
      flex-wrap:       wrap !important;
    }
    .ts-btn {
      display:        inline-block !important;
      font-family:    'Bricolage Grotesque', sans-serif !important;
      font-weight:    900 !important;
      font-size:      1rem !important;
      letter-spacing: .08em !important;
      text-transform: uppercase !important;
      padding:        16px 36px !important;
      border-radius:  2px !important;
      transition:     transform .2s, box-shadow .2s, background .2s !important;
      cursor:         pointer !important;
      line-height:    1.4 !important;
      text-decoration:none !important;
    }
    .ts-btn:hover { transform: translateY(-2px) !important; box-shadow: 0 8px 24px rgba(0,0,0,.25) !important; }
    .ts-btn-primary { background: #ec671a !important; color: #ffffff !important; border: none !important; }
    .ts-btn-primary:hover { background: #c02601 !important; color: #ffffff !important; }
    .ts-btn-outline {
      background:   transparent !important;
      color:        #ffffff !important;
      border:       2px solid rgba(255,255,255,.4) !important;
    }
    .ts-btn-outline:hover { border-color: #ffffff !important; color: #ffffff !important; }

    /* ============================================================
       SOCIAL STRIP
    ============================================================ */
    .ts-social {
      background:      #111111 !important;
      padding:         24px 40px !important;
      display:         flex !important;
      justify-content: center !important;
      gap:             20px !important;
      width:           100% !important;
      margin:          0 !important;
    }
    .ts-social-icon {
      display:         flex !important;
      align-items:     center !important;
      justify-content: center !important;
      width:           40px !important;
      height:          40px !important;
      border-radius:   50% !important;
      background:      rgba(255,255,255,.06) !important;
      color:           rgba(255,255,255,.5) !important;
      transition:      background .2s, color .2s, transform .2s !important;
      text-decoration: none !important;
    }
    .ts-social-icon:hover {
      background: #ec671a !important;
      color:      #ffffff !important;
      transform:  translateY(-3px) !important;
    }
    .ts-social-icon svg {
      width:  16px !important;
      height: 16px !important;
      fill:   currentColor !important;
    }

    /* ============================================================
       RESPONSIVE
    ============================================================ */
    @media (max-width: 900px) {
      .ts-hero-inner         { grid-template-columns: 1fr !important; gap: 40px !important; }
      .ts-hero-img-wrap      { max-width: 380px !important; margin: 0 auto !important; }
      .ts-timeline-item      { grid-template-columns: 1fr !important; gap: 30px !important; }
      .ts-timeline-item.ts-flip .ts-timeline-content,
      .ts-timeline-item.ts-flip .ts-timeline-media { order: unset !important; }
      .ts-feature-inner      { grid-template-columns: 1fr !important; gap: 40px !important; }
      .ts-ambition-grid      { grid-template-columns: repeat(2,1fr) !important; }
      .ts-milestone-grid     { grid-template-columns: 1fr !important; }
      .ts-stat-sep           { display: none !important; }
    }
    @media (max-width: 600px) {
      .ts-hero-inner  { padding: 60px 20px !important; }
      .ts-intro       { padding: 0 20px !important; margin: 60px auto !important; }
      .ts-timeline    { padding: 0 20px !important; }
      .ts-feature     { padding: 60px 20px !important; }
      .ts-ambition    { padding: 0 20px !important; }
      .ts-cta         { padding: 60px 20px !important; }
      .ts-stats-bar   { padding: 20px !important; }
      .ts-stat-number { font-size: 1.8rem !important; }
      .ts-ambition-grid { grid-template-columns: 1fr !important; }
    }
 
    
    
    
    
    
    
    
    .elementor-element.elementor-element-8cafa59.elementor-widget.elementor-widget-theme-post-title.elementor-page-title.elementor-widget-heading {
    display: none;
}
#main {
    padding: 0px 0 70px 0;
}
.e-con>.e-con-inner {
    gap: var(--row-gap) var(--column-gap);
    height: 100%;
    margin: 0 auto;
    max-width: 100%;
    padding-inline-end: 0;
    padding-inline-start: 0;
    width: 100%;
}/* End custom CSS */