 /* ==========================================================================
   Section shell
   ========================================================================== */
 #ldf-cta {
     position: relative;
     overflow: hidden;
     background: radial-gradient(120% 140% at 8% 100%, #1a3a8f 0%, #0d1f5c 32%, #060f30 65%, #050b24 100%);
     padding: 96px 32px;
 }

 .ldf-glow {
     position: absolute;
     inset: -20% -10% auto auto;
     width: 60%;
     height: 70%;
     background: radial-gradient(circle, rgba(45, 212, 191, 0.12) 0%, rgba(45, 212, 191, 0) 70%);
     pointer-events: none;
 }

 .ldf-wrap {
     position: relative;
     max-width: 1240px;
     margin: 0 auto;
 }

 .ldf-cta-grid {
     display: grid;
     grid-template-columns: 1.05fr 0.85fr;
     gap: 64px;
     align-items: center;
 }

 /* ==========================================================================
   Newsletter column
   ========================================================================== */
 .ldf-eyebrow {
     display: inline-flex;
     align-items: center;
     gap: 12px;
     color: #2ee6b8;
     font-size: 13px;
     font-weight: 700;
     letter-spacing: 0.14em;
     text-transform: uppercase;
     margin-bottom: 20px;
 }

 .ldf-eyebrow::before {
     content: "";
     display: inline-block;
     width: 28px;
     height: 2px;
     background: #2ee6b8;
 }

 .ldf-news h2 {
     margin: 0 0 20px;
     color: #f5f7ff;
     font-size: 46px;
     line-height: 1.15;
     font-weight: 800;
     letter-spacing: -0.01em;
 }

 .ldf-news h2 em {
     font-style: normal;
     color: #2ee6b8;
 }

 .ldf-lede {
     margin: 0 0 32px;
     max-width: 460px;
     color: #a9b3d6;
     font-size: 18px;
     line-height: 1.6;
 }

 /* form */
 .ldf-field-row {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: 16px;
     margin-bottom: 16px;
 }

 .ldf-field label {
     display: block;
     margin-bottom: 8px;
     color: #dfe4f5;
     font-size: 14px;
     font-weight: 600;
 }

 .ldf-req {
     color: #2ee6b8;
 }

 .ldf-field input {
     width: 100%;
     height: 56px;
     padding: 0 18px;
     background: rgba(255, 255, 255, 0.04);
     border: 1px solid rgba(255, 255, 255, 0.14);
     border-radius: 10px;
     color: #f5f7ff;
     font-size: 15px;
     outline: none;
     transition: border-color 0.15s ease, background 0.15s ease;
 }

 .ldf-field input::placeholder {
     color: #6b7599;
 }

 .ldf-field input:focus {
     border-color: #2ee6b8;
     background: rgba(255, 255, 255, 0.06);
 }

 .ldf-submit {
     display: block;
     width: 100%;
     height: 60px;
     margin-top: 4px;
     background: linear-gradient(180deg, #37f0c4 0%, #1fd9ac 100%);
     border: none;
     border-radius: 12px;
     color: #04231c;
     font-size: 17px;
     font-weight: 700;
     cursor: pointer;
     transition: transform 0.15s ease, box-shadow 0.15s ease;
 }

 .ldf-submit:hover {
     transform: translateY(-1px);
     box-shadow: 0 10px 24px rgba(46, 230, 184, 0.25);
 }

 .ldf-news-consent {
     margin: 18px 0 0;
     color: #7c86ac;
     font-size: 13px;
     line-height: 1.6;
 }

 .ldf-news-consent a {
     color: #dfe4f5;
     font-weight: 600;
     text-decoration: underline;
 }

 /* ==========================================================================
   Action cards column
   ========================================================================== */
 .ldf-actions {
     display: flex;
     flex-direction: column;
     gap: 24px;
 }

 .ldf-action {
     position: relative;
     display: flex;
     align-items: center;
     gap: 20px;
     padding: 32px;
     border-radius: 24px;
     text-decoration: none;
     overflow: hidden;
     transition: transform 0.2s ease, box-shadow 0.2s ease;
 }

 .ldf-action:hover {
     transform: translateY(-3px);
 }

 .ldf-action-icon {
     flex: 0 0 auto;
     display: flex;
     align-items: center;
     justify-content: center;
     width: 56px;
     height: 56px;
     border-radius: 16px;
 }

 .ldf-action-icon svg {
     width: 26px;
     height: 26px;
 }

 .ldf-action-body {
     flex: 1 1 auto;
 }

 .ldf-action-body h3 {
     margin: 0 0 6px;
     font-size: 26px;
     font-weight: 800;
     line-height: 1.2;
 }

 .ldf-action-body p {
     margin: 0;
     font-size: 15px;
     line-height: 1.5;
     max-width: 360px;
 }

 .ldf-action-arrow {
     flex: 0 0 auto;
     display: flex;
     align-items: center;
     justify-content: center;
     width: 20px;
     height: 20px;
 }

 .ldf-action-arrow svg {
     width: 22px;
     height: 22px;
 }

 /* Callback card — blue */
 .ldf-action--call {
     background: linear-gradient(135deg, #2f5fdb 0%, #1e3fa8 100%);
     box-shadow: 0 20px 40px -20px rgba(30, 63, 168, 0.55);
 }

 .ldf-action--call .ldf-action-icon {
     background: rgba(255, 255, 255, 0.16);
     color: #ffffff;
 }

 .ldf-action--call h3 {
     color: #ffffff;
 }

 .ldf-action--call p {
     color: #cddcff;
 }

 .ldf-action--call .ldf-action-arrow {
     color: #ffffff;
 }

 /* Quiz card — teal */
 .ldf-action--quiz {
     background: linear-gradient(135deg, #34ecc4 0%, #16d3a3 100%);
     box-shadow: 0 20px 40px -20px rgba(22, 211, 163, 0.55);
 }

 .ldf-action--quiz .ldf-action-icon {
     background: rgba(6, 34, 28, 0.12);
     color: #06221c;
 }

 .ldf-action--quiz h3 {
     color: #06221c;
 }

 .ldf-action--quiz p {
     color: #0d3a30;
 }

 .ldf-action--quiz .ldf-action-arrow {
     color: #06221c;
 }

 /* ==========================================================================
   Responsive
   ========================================================================== */
 @media (max-width: 1024px) {
     .ldf-cta-grid {
         grid-template-columns: 1fr;
         gap: 56px;
     }

     .ldf-news h2 {
         font-size: 40px;
     }
 }

 @media (max-width: 640px) {
     #ldf-cta {
         padding: 64px 20px;
     }

     .ldf-br {
         display: none;
     }

     .ldf-news h2 {
         font-size: 32px;
     }

     .ldf-lede {
         font-size: 16px;
     }

     .ldf-field-row {
         grid-template-columns: 1fr;
         gap: 16px;
     }

     .ldf-action {
         flex-wrap: wrap;
         padding: 24px;
         border-radius: 20px;
     }

     .ldf-action-body h3 {
         font-size: 22px;
     }

     .ldf-action-arrow {
         position: absolute;
         top: 24px;
         right: 24px;
     }
 }