 /* ========================================

       RESET & BASE

       ======================================== */

 *,

 *::before,

 *::after {

     margin: 0;

     padding: 0;

     box-sizing: border-box;

 }





 h1 {

     font-size: 16px;

     color: #9D9D9D;

     font-weight: 400;

     text-align: center;

     margin: 16px 0;

 }



 a {

     text-decoration: none;

     color: inherit;

 }



 ul {

     list-style: none;

 }



 img {

     max-width: 100%;

     height: auto;

     display: block;

 }


 /* ========================================
       HERO BANNER
       ======================================== */
 .hero-banner {
     background: url('../images/global-partner-banner.png');
     position: relative;
     overflow: hidden;
     padding: 130px 0;
     color: #ffffff;
     margin: 60px 60px 0;
     border-radius: 16px;
     background-repeat: no-repeat;
     background-size: cover;
 }

 .hero-banner__content {
     position: relative;
     z-index: 1;
 }

 .hero-banner__title {
     font-size: 32px;
     font-weight: 600;
     line-height: 1.2;
 }

 .gradient-text {
     background: linear-gradient(135deg, #e63946, #ff6b6b);
     -webkit-background-clip: text;
     -webkit-text-fill-color: transparent;
     background-clip: text;
 }


 /* ========================================
       PARTNER CONTENT SECTION
       ======================================== */
 .partner-content {
     padding: 80px 0 0;
 }

 .partner-content .container {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: 60px;
     align-items: start;

     @media (max-width: 768px) {
         grid-template-columns: 1fr;
     }
 }

 .content-partner {
    padding: 20px 0px;
 }

/* Default (Desktop) */
.iframe-desktop {
    display: block;
    width: 100%;
    height: 820px;
    border: 0;
}

.iframe-mobile {
    display: none;
}

/* Mobile View */
@media (max-width: 768px) {

    .iframe-desktop {
        display: none;
    }

    .iframe-mobile {
        display: block;
        width: 100%;
        height: 1600px; /* increase if needed */
        border: 0;
    }
}


 /* Left Column — Info */
 .partner-info__title {
     font-size: 32px;
     font-weight: 400;
     line-height: 1.2;
     margin-bottom: 24px;
     color: #1a1a2e;
 }

 .text-center {
     text-align: center;
 }

 .partner-info__title .highlight {
     font-style: italic;
 }

 .partner-info p {
     font-size: 0.95rem;
     color: #000;
     line-height: 1.8;
     margin-bottom: 20px;
 }

 .partner-info__benefits-title {
     font-size: 1rem;
     font-weight: 700;
     color: #1a1a2e;
     margin-bottom: 12px;
 }

 .partner-info__benefits {
     padding-left: 20px;
     margin-bottom: 24px;
 }

 .partner-info__benefits li {
     list-style: disc;
     font-size: 0.95rem;
     color: #000;
     margin-bottom: 6px;
     line-height: 1.6;
 }

 /* Right Column — Form */
 .partner-form-wrapper {
     background: #ffffff;
 }

 .partner-form__title {
     font-size: 32px;
     display: flex;
     font-weight: 600;
     justify-content: center;
     margin-bottom: 8px;
 }

 .partner-form__subtitle {
     font-size: 0.9rem;
     color: #777;
     margin-bottom: 28px;
     line-height: 1.6;
 }

 .partner-form {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: 16px;
 }

 .partner-form .form-field {
     position: relative;
 }

 .partner-form .form-field--full {
     grid-column: 1 / -1;
 }

 .partner-form input,
 .partner-form select {
     width: 100%;
     padding: 7px 14px;
     border: 1px solid #ddd;
     border-radius: 12px;
     font-size: 0.9rem;
     font-family: inherit;
     color: #333;
     background: #ffffff;
     outline: none;
     transition: border-color 0.2s;
     appearance: none;
     -webkit-appearance: none;
 }

 .partner-form input::placeholder {
     color: #aaa;
 }

 .partner-form input:focus,
 .partner-form select:focus {
     border-color: #e63946;
 }

 .partner-form select {
     background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23e63946' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
     background-repeat: no-repeat;
     background-position: right 12px center;
     padding-right: 36px;
     color: #aaa;
 }

 .partner-form select:valid {
     color: #333;
 }

 .form-phone-group {
     display: flex;
     gap: 8px;
 }

 .form-phone-group select {
     width: 80px;
     flex-shrink: 0;
 }

 .form-phone-group input {
     flex: 1;
 }

 .form-consent {
     grid-column: 1 / -1;
     display: flex;
     align-items: center;
     gap: 10px;
     margin-top: 4px;
 }

 .form-consent input[type="checkbox"] {
     width: 16px;
     height: 16px;
     accent-color: #e63946;
     flex-shrink: 0;
     border-radius: 4px;
     padding: 0;
 }

 .form-consent label {
     font-size: 0.85rem;
     color: #777;
 }

 .form-submit {
     grid-column: 1 / -1;
     margin-top: 4px;
 }

 .form-submit .btn {
     padding: 8px 40px;
     font-size: 12px;
     border-radius: 4px;
     text-transform: uppercase;
     letter-spacing: 1px;
     font-weight: 500;
 }


 .gradient-text {
     background: linear-gradient(90deg, rgba(143, 195, 255, 1) 0%, rgba(169, 132, 255, 1) 40%, rgba(230, 50, 58, 1) 100%);
     ;
     -webkit-background-clip: text;
     -webkit-text-fill-color: transparent;
     background-clip: text;
 }

 .gradient-line {
     margin-top: 60px;
     border-width: 1px;
     border-style: solid;
     width: 87%;
     left: 7%;
     position: relative;
     border-image: linear-gradient(to right, #8FC3FF, #A984FF, #E6323A) 1;
 }

 .hero__desc {
     font-size: 1.05rem;
     color: rgba(255, 255, 255, 0.6);
     max-width: 520px;
     margin: 0 auto 40px;
 }

 .hero__buttons {
     display: flex;
     gap: 16px;
     justify-content: center;
     flex-wrap: wrap;
 }

 /* ===== Partners Listing Section ===== */

 .partners-list-section {
     padding: 80px 0;
     background: #f5f7fb;
 }

 .container {
     width: 90%;
     max-width: 1200px;
     margin: 0 auto;
 }

 /* Filter Bar */

 .partners-filter-bar {
     display: flex;
     justify-content: space-between;
     align-items: center;
     margin-bottom: 40px;
     flex-wrap: wrap;
     gap: 15px;
 }

 .filter-left {
     display: flex;
     align-items: center;
     gap: 15px;
     flex-wrap: wrap;
 }

 .filter-label {
     font-weight: 600;
 }

 .filter-select {
     padding: 8px 12px;
     border: 1px solid #dce3f0;
     border-radius: 8px;
     background: #ffffff;
     font-size: 14px;
 }

 .filter-search {
     padding: 8px 14px;
     border: 1px solid #dce3f0;
     border-radius: 8px;
     font-size: 14px;
     width: 200px;
 }

 /* Grid */

 .partners-grid {
     display: grid;
     grid-template-columns: repeat(2, 1fr);
     gap: 30px;
 }

 /* Partner Card */

 .partner-card {
     background: #ffffff;
     border: 1px solid #e4e9f3;
     border-radius: 16px;
     padding: 30px;
     transition: all 0.3s ease;
 }

 .partner-card:hover {
     box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06);
     transform: translateY(-4px);
 }

 .partner-logo {
     height: 40px;
     margin-bottom: 20px;
 }

 .partner-card p {
     margin: 6px 0;
     font-size: 14px;
     color: #333;
 }

 .partner-description {
     margin-top: 12px;
     color: #666;
 }

 /* Responsive */

 @media (max-width: 992px) {
     .partners-grid {
         grid-template-columns: 1fr;
     }

     .filter-search {
         width: 100%;
     }
 }





 /* ========================================

       DARK CTA SECTION

       ======================================== */

 .cta-section {

     background: #000000;

     padding: 80px 0 0;

 }



 .cta-section .container {

     display: flex;

     align-items: center;

     justify-content: space-between;

     gap: 40px;

 }



 .cta-section__text {

     max-width: 600px;

 }



 .cta-section__title {

     font-size: 32px;

     font-weight: 600;

     color: #ffffff;

     line-height: 1.2;

     margin-bottom: 12px;

 }



 .cta-section__sub {

     color: rgba(255, 255, 255, 0.5);

     font-size: 1rem;

 }



 .talk-to-us {

     background: #E6323A;

     border-radius: 50px;

     display: flex;

     padding: 0 20px 0 10px;

     height: 50px;

     color: #fff;



 }



 .partner-listing {

     background: rgb(216 229 244 / 10%);

     margin: 14px 0;

 }



 .partner-listing h1 {

     font-size: 26px;

     color: #9D9D9D;

     margin-bottom: 16px;

 }







 /* ========================================

       RESPONSIVE — TABLET

       ======================================== */

 @media (max-width: 1199px) {

     .hero__title {

         font-size: 2.6rem;

     }



     .cta-section__title {

         font-size: 2rem;

     }



     .footer-top {

         grid-template-columns: 1fr;

         gap: 40px;

     }



     .footer-newsletter {

         max-width: 100%;

     }

 }



 /* ========================================

       RESPONSIVE — MOBILE

       ======================================== */

 @media (max-width: 768px) {

     .site-header .container {

         flex-wrap: wrap;

         height: auto;

         padding-top: 16px;

         padding-bottom: 16px;

         gap: 12px;

     }



     .main-nav {

         order: 3;

         width: 100%;

         justify-content: center;

         gap: 20px;

         flex-wrap: wrap;

     }



     .header-actions {

         gap: 8px;

     }



     .header-actions .btn {

         padding: 8px 14px;

         font-size: 0.8rem;

     }



     .hero {

         padding: 80px 0 60px;

     }



     .hero__title {

         font-size: 2rem;

     }



     .hero__desc {

         font-size: 0.95rem;

     }



     .hero__buttons {

         flex-direction: column;

         align-items: center;

     }



     .partners {

         padding: 60px 0;

     }



     .partners-card {

         grid-template-columns: 1fr;

     }



     .partners-card__image {

         min-height: 220px;

     }



     .partners-card__content {

         padding: 36px 28px;

     }



     .partners-card__title {

         font-size: 1.6rem;

     }



     .cta-section .container {

         flex-direction: column;

         text-align: center;

     }



     .cta-section__title {

         font-size: 1.6rem;

     }



     .footer-nav {

         grid-template-columns: repeat(2, 1fr);

     }



     .footer-bottom {

         flex-direction: column;

         gap: 16px;

         text-align: center;

     }

 }



 /* latest insights - Section 4  */

 .latest-insights {

     position: relative;

     height: auto;

     padding: 60px 100px;

     display: flex;

     justify-content: space-between;

     align-items: start;

     gap: 50px;

     border: var(--border-light-blue);

     border-radius: 20px;

     background: var(--section-gradient);

     margin-block: var(--spacer-120);



     .triangle_graphic {

         position: absolute;

         top: 0;

         left: 0;

         z-index: 0;

     }



     .left-content {

         max-width: 390px;

         width: 100%;

         height: auto;



         .para-primary {

             margin-top: 8px;

         }

     }



     .right-content {

         max-width: 625px;

         width: 100%;

         height: auto;

     }



     @media screen and (max-width: 1024px) {

         & {

             flex-direction: column;

             gap: 32px;

             padding: 40px 20px;

             margin-block: var(--spacer-60);

         }

     }

 }



 /* Form CSS */

 .form {

     display: flex;

     flex-direction: column;

     align-items: baseline;

     width: 100%;

     max-width: 625px;

     height: auto;



     .screen-reader-response {

         display: none;

     }



     .form-row {

         width: 100%;

         display: flex;

         gap: 24px;

         justify-content: start;

         align-items: start;

         margin-top: 20px;



         p {

             width: 50%;

         }



     }



     .form-row-inner {

         p {

             width: 100%;

             display: flex;

             justify-content: start;

             align-items: start;

         }

     }



     input,

     select {

         padding: 15px;

         border-radius: 8px;

         border: 1px solid #D8E5F4;

         background: #FFF;

         width: 100%;

         font-family: "Sora", sans-serif;

         color: var(--text-black-primary);

         font-size: 14px;

         font-weight: 400;

         line-height: normal;

     }



     select:focus-visible,

     input:focus-visible {

         outline: 0;

     }



     input::placeholder,

     select::placeholder {

         color: var(--text-grey2);

         font-size: 14px;

         font-weight: 400;

         line-height: normal;

     }



     input[type='submit'] {

         border-radius: 8px;

         background: #E6323A;

         padding: 16px 32px;

         border: none;

         color: #fff;

         margin-top: 40px;

         width: fit-content;

         color: var(--text-white);

         font-size: 16px;

         font-weight: 400;

         line-height: 22px;

         letter-spacing: 0;

     }



     select[name="country-code"] {

         width: fit-content;

         padding-right: 0;

         border-right: 0;

         border-top-right-radius: 0;

         border-bottom-right-radius: 0;

         font-family: "Sora", sans-serif;

         color: var(--text-black-primary);

         font-size: 14px;

         font-weight: 400;

         line-height: normal;

         padding: 14px;

         padding-right: 0;

     }



     input[type='tel'] {

         width: 185px;

         padding-left: 15px;

         border-left: 0;

         border-top-left-radius: 0;

         border-bottom-left-radius: 0;

     }



     .wpcf7-not-valid-tip {

         font-size: 14px;

     }



     .wpcf7-response-output {

         margin-top: 20px;

         font-size: 14px;

     }



     &:last-child {

         .form-row {

             p {

                 width: 100%;

             }



         }

     }



     @media screen and (max-width: 1024px) {

         & {



             .form-row {

                 flex-direction: column;

             }



             input[type='tel'] {

                 width: 100%;

             }



             input[type='submit'] {

                 width: 100%;

                 font-size: 14px;

                 line-height: 20px;

                 margin-top: 32px;

             }

         }

     }

 }