 /* ============================================
       BECOME AN INSTRUCTOR PAGE - CUSTOM STYLES
       ============================================ */


 /* --- Main Section Layout --- */
 .hero-feature {
     background: linear-gradient(125deg, #eef5fc 0%, #e2eef8 100%);
     position: relative;
 }


 #learning-path .container {
     margin: 0 auto;
     display: flex;
     align-items: center;
     justify-content: space-between;
     gap: 40px;
 }

 /* --- Left Side Content --- */
 #learning-path .hero-content {
     text-align: left;
 }

 #learning-path .badge {
     display: inline-block;
     background: rgba(2, 132, 199, 0.12);
     backdrop-filter: blur(4px);
     padding: 0.4rem 1rem;
     border-radius: 40px;
     font-size: 0.8rem;
     font-weight: 600;
     letter-spacing: 0.3px;
     color: #0369a1;
     margin-bottom: 1.5rem;
     border: 1px solid rgba(2, 132, 199, 0.25);
     text-transform: uppercase;
 }

 .hero-title {
     font-size: 3.2rem;
     font-weight: 800;
     line-height: 1.2;
     letter-spacing: -0.02em;
     background: linear-gradient(145deg, #0f2b3d 0%, #1e4a6e 100%);
     background-clip: text;
     -webkit-background-clip: text;
     color: transparent;
     margin-bottom: 1.5rem;
 }

 .hero-title .highlight {
     background: linear-gradient(120deg, #0284c7, #2dd4bf);
     background-clip: text;
     -webkit-background-clip: text;
     color: transparent;
     position: relative;
 }

 .hero-subtitle {
     font-size: 1.2rem;
     line-height: 1.5;
     color: #2c3e4e;
     font-weight: 450;
     margin-bottom: 2rem;
     max-width: 540px;
     border-left: 3px solid #0284c7;
     padding-left: 1.2rem;
 }

 /* CTA Buttons row */
 .cta-group {
     display: flex;
     gap: 1rem;
     flex-wrap: wrap;
     margin-top: 0.5rem;
 }

 .btn-primary {
     background: #0f3b5c;
     color: white;
     border: none;
     padding: 0.9rem 2rem;
     border-radius: 48px;
     font-weight: 600;
     font-size: 1rem;
     cursor: pointer;
     transition: all 0.25s ease;
     box-shadow: 0 8px 20px -8px rgba(2, 132, 199, 0.3);
     display: inline-flex;
     align-items: center;
     gap: 8px;
     text-decoration: none;
 }

 .btn-primary:hover {
     background: #0284c7;
     transform: translateY(-3px);
     box-shadow: 0 18px 30px -12px rgba(2, 132, 199, 0.45);
     color: white;
 }

 .btn-outline {
     background: transparent;
     border: 1.5px solid #0f3b5c;
     color: #0f3b5c;
     padding: 0.9rem 2rem;
     border-radius: 48px;
     font-weight: 600;
     font-size: 1rem;
     cursor: pointer;
     transition: all 0.25s ease;
     backdrop-filter: blur(2px);
     text-decoration: none;
 }

 .learning-options-section {
     padding: 80px 24px 100px;
     background: #f4f9fe;
 }

 .btn-outline:hover {
     background: rgba(2, 132, 199, 0.1);
     border-color: #0284c7;
     color: #0284c7;
     transform: translateY(-2px);
 }

 /* Trust indicators */
 .trust-badge {
     display: flex;
     align-items: center;
     gap: 1.2rem;
     margin-top: 2rem;
     flex-wrap: wrap;
 }

 .trust-item {
     display: flex;
     align-items: center;
     gap: 6px;
     font-size: 0.85rem;
     color: #2c5a74;
     font-weight: 500;
 }

 .trust-item svg {
     width: 18px;
     height: 18px;
     stroke: #0284c7;
     stroke-width: 2;
     fill: none;
 }

 /* --- Right Side: Premium Circular Image Frame --- */
 .hero-image-wrapper {
     flex: 0.9;
     display: flex;
     justify-content: flex-end;
     align-items: center;
     position: relative;
 }

 .circular-frame {
     position: relative;
     width: 420px;
     height: 420px;
     border-radius: 50%;
     background: radial-gradient(circle at 30% 20%, rgba(255, 255, 240, 0.4), rgba(210, 235, 255, 0.6));
     padding: 8px;
     box-shadow: 0 25px 45px -12px rgba(0, 0, 0, 0.2), inset 0 1px 2px rgba(255, 255, 255, 0.6);
     transition: all 0.3s ease;
 }

 .circular-frame::before {
     content: '';
     position: absolute;
     top: -5px;
     left: -5px;
     right: -5px;
     bottom: -5px;
     border-radius: 50%;
     background: linear-gradient(135deg, #0284c7, #38bdf8, #2dd4bf);
     opacity: 0;
     transition: opacity 0.4s ease;
     z-index: -1;
 }

 .circular-frame:hover::before {
     opacity: 0.7;
     filter: blur(8px);
 }

 .inner-ring {
     position: absolute;
     inset: 12px;
     border-radius: 50%;
     border: 2px dashed rgba(2, 132, 199, 0.5);
     pointer-events: none;
     transition: transform 0.8s linear;
 }

 .circular-frame:hover .inner-ring {
     transform: rotate(360deg);
 }

 .circular-frame img {
     width: 100%;
     height: 100%;
     object-fit: cover;
     border-radius: 50%;
     transition: transform 0.5s cubic-bezier(0.2, 0.9, 0.4, 1.1);
     box-shadow: 0 12px 28px rgba(0, 0, 0, 0.1);
 }

 .circular-frame:hover img {
     transform: scale(1.02);
 }

 /* Floating decorative accent nodes */
 .floating-accent {
     position: absolute;
     background: #ffffffcc;
     backdrop-filter: blur(4px);
     border-radius: 50%;
     box-shadow: 0 8px 20px rgba(0, 0, 0, 0.05);
     z-index: 2;
 }

 .accent-1 {
     width: 40px;
     height: 40px;
     top: 5%;
     right: 2%;
     background: radial-gradient(circle, #0284c7, #7dd3fc);
     opacity: 0.7;
 }

 .accent-2 {
     width: 24px;
     height: 24px;
     bottom: 12%;
     left: -8%;
     background: radial-gradient(circle, #2dd4bf, #14b8a6);
 }

 .accent-3 {
     width: 16px;
     height: 16px;
     top: 22%;
     left: -3%;
     background: #facc15;
     box-shadow: 0 0 8px #ffd966;
 }

 .pulse {
     animation: softPulse 2.2s infinite ease-in-out;
 }

 @keyframes softPulse {
     0% {
         transform: scale(1);
         opacity: 0.6;
     }

     50% {
         transform: scale(1.2);
         opacity: 1;
     }

     100% {
         transform: scale(1);
         opacity: 0.6;
     }
 }


 /* ============================================
       FREELANCE OPPORTUNITIES SECTION
       ============================================ */
 .scroll-section {
     padding: 80px 0;
 }

 .bg-white {
     background: #fff;
 }

 .left-box {
     background: #fff;
     border-radius: 20px;
     overflow: hidden;
     min-height: 550px;
     box-shadow: 0 20px 50px rgba(0, 0, 0, 0.08);
 }

 .left-box img {
     width: 100%;
     height: 320px;
     object-fit: cover;
 }

 .left-content {
     background: #e8f1f7;
     padding: 30px;
 }

 .left-content p {
     margin-bottom: 10px;
     color: #2c3e50;
 }

 .left-content p strong {
     color: #115c82;
     font-size: 1rem;
 }

 /* RIGHT SIDE */
 .right-box {
     background: #dbeaf4;
     padding: 40px;
     border-radius: 20px;
     box-shadow: 0 20px 50px rgba(0, 0, 0, 0.15);
 }

 .right-box h3 {
     text-align: center;
     margin-bottom: 30px;
     font-weight: 600;
     color: #1f5e83;
     font-size: 1.7rem;
 }

 /* OVERLAP EFFECT */
 .overlap-box {
     position: relative;
     margin-left: -130px;
     z-index: 5;
 }

 /* FEATURES */
 .feature {
     display: flex;
     align-items: flex-start;
     gap: 15px;
     background: #fff;
     padding: 18px 20px;
     border-radius: 50px;
     margin-bottom: 20px;
     transition: 0.3s;
     border: 1px solid #e2edf5;
 }

 .feature:hover {
     transform: translateY(-5px);
     box-shadow: 0 15px 25px -12px rgba(0, 0, 0, 0.1);
 }

 .icon-box {
     width: 55px;
     height: 55px;
     background: #e6f2fb;
     border-radius: 50%;
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: 22px;
     color: #0f6b9c;
     flex-shrink: 0;
 }

 .feature h5 {
     margin: 0 0 4px 0;
     font-size: 16px;
     font-weight: 700;
     color: #1a2c3e;
 }

 .feature p {
     margin: 0;
     font-size: 14px;
     color: #4a627a;
     line-height: 1.4;
 }





 /* ============================================
       RESPONSIVE BREAKPOINTS
       ============================================ */
 @media (max-width: 1000px) {
     #learning-path .container {
         flex-direction: column-reverse;
         text-align: center;
         gap: 2.5rem;
     }

     .hero-image-wrapper {
         justify-content: center;
     }

     .circular-frame {
         width: 340px;
         height: 340px;
     }

     .hero-title {
         font-size: 2.7rem;
         text-align: center;
     }

     .hero-subtitle {
         margin-left: auto;
         margin-right: auto;
         border-left: none;
         padding-left: 0;
         text-align: center;
     }

     .cta-group {
         justify-content: center;
     }

     .trust-badge {
         justify-content: center;
     }

     .hero-content {
         display: flex;
         flex-direction: column;
         align-items: center;
     }

     .overlap-box {
         margin-left: 0;
         margin-top: 30px;
     }
 }

 .layer-dark p {
     color: #fff;

 }

 @media (max-width: 768px) {
     .scroll-section {
         padding: 50px 0;
     }

     .right-box {
         padding: 30px 20px;
     }

     .right-box h3 {
         font-size: 1.4rem;
     }

     .layer-dark h2 {
         font-size: 1.8rem;
     }

     .hero-title {
         font-size: 2rem;
     }

     .circular-frame {
         width: 270px;
         height: 270px;
     }

     .badge {
         font-size: 0.7rem;
     }

     .hero-subtitle {
         font-size: 1rem;
     }

     .btn-primary,
     .btn-outline {
         padding: 0.7rem 1.4rem;
         font-size: 0.9rem;
     }
 }

 @media (max-width: 576px) {
     .left-box img {
         height: 220px;
     }

     .left-content {
         padding: 20px;
     }

     .feature {
         padding: 14px 16px;
     }

     .icon-box {
         width: 45px;
         height: 45px;
         font-size: 18px;
     }

     .intro__text {
         font-size: 1rem;
     }
 }

 @keyframes fadeInUp {
     from {
         opacity: 0;
         transform: translateY(35px);
     }

     to {
         opacity: 1;
         transform: translateY(0);
     }
 }

 /* Tab Bar */
 .tab-bar-wrap {
     display: flex;
     justify-content: center;
     margin-bottom: 55px;
 }

 .tab-bar {
     display: inline-flex;
     background: rgba(255, 255, 255, 0.9);
     backdrop-filter: blur(4px);
     border: 1px solid #cde3ef;
     border-radius: 80px;
     padding: 6px 8px;
     gap: 6px;
     overflow-x: auto;
     flex-wrap: nowrap;
     box-shadow: 0 8px 20px rgba(0, 0, 0, 0.02);
 }

 .tab-bar::-webkit-scrollbar {
     display: none;
 }

 .tab-item {
     flex-shrink: 0;
     padding: 10px 28px;
     border-radius: 60px;
     font-size: 1rem;
     font-weight: 600;
     color: #2c4f6e;
     background: transparent;
     border: none;
     cursor: pointer;
     transition: all 0.2s;
     white-space: nowrap;
 }

 .tab-item:hover {
     background: #e8f2f9;
     color: #0f6b9c;
 }

 .tab-item.active {
     background: #0f6b9c;
     color: white;
     box-shadow: 0 4px 10px -4px rgba(15, 107, 156, 0.35);
 }

 /* Card Container */
 .card-outer {
     max-width: 1280px;
     margin: 0 auto;
     display: none;
 }

 .card-outer.active {
     display: block;
     animation: fadeSlideUp 0.5s ease-out;
 }

 /* Overlap Grid */
 .overlap-grid {
     display: flex;
     flex-wrap: wrap;
     align-items: center;
     position: relative;
 }

 /* Left Card */
 .left-card {
     flex: 1;
     min-width: 260px;
     background: #e8f1f7;
     border-radius: 28px;
     overflow: hidden;
     box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08);
     z-index: 2;
     margin-right: -40px;
     height: 600px;
 }

 .left-card img {
     width: 100%;
     height: 320px;
     object-fit: cover;
 }

 .left-card-content {
     background: #e8f1f7;
     padding: 32px 28px;
     width: 90%;
 }

 .left-card-content p {
     margin-bottom: 12px;
     color: #2c3e50;
     line-height: 1.55;
     font-size: 0.95rem;
 }

 .left-card-content strong {
     font-size: 1rem;
     color: #115c82;
 }

 /* Right Card (Overlapping) */
 .right-card {
     flex: 0.9;
     min-width: 320px;
     background: #dbeaf4;
     padding: 40px 36px;
     border-radius: 28px;
     box-shadow: 0 25px 45px -12px rgba(0, 0, 0, 0.2);
     z-index: 5;
     margin-left: -32px;
 }

 .right-card h3 {
     text-align: center;
     margin-bottom: 32px;
     font-weight: 700;
     font-size: 1.7rem;
     color: #1f5e83;
 }

 /* Feature Rows */
 .feature-row {
     display: flex;
     align-items: flex-start;
     gap: 18px;
     background: #fff;
     padding: 16px 22px;
     border-radius: 60px;
     margin-bottom: 20px;
     transition: 0.25s ease;
     border: 1px solid #e2edf5;
 }

 .feature-row:hover {
     transform: translateY(-4px);
     box-shadow: 0 15px 25px -12px rgba(0, 0, 0, 0.1);
     background: #ffffff;
     border-color: #c2dfef;
 }

 .icon-circle-lp {
     width: 54px;
     height: 54px;
     background: #e6f2fb;
     border-radius: 50%;
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: 1.6rem;
     color: #0f6b9c;
     flex-shrink: 0;
 }

 .feature-text h6 {
     margin: 0 0 4px 0;
     font-size: 1rem;
     font-weight: 700;
     color: #1a2c3e;
 }

 .feature-text p {
     margin: 0;
     font-size: 0.85rem;
     color: #4a627a;
     line-height: 1.4;
 }



 /* Animations */
 @keyframes softPulse {
     0% {
         transform: scale(1);
         opacity: 0.6;
     }

     50% {
         transform: scale(1.2);
         opacity: 1;
     }

     100% {
         transform: scale(1);
         opacity: 0.6;
     }
 }

 @keyframes fadeSlideUp {
     from {
         opacity: 0;
         transform: translateY(14px);
     }

     to {
         opacity: 1;
         transform: translateY(0);
     }
 }

 /* Responsive */
 @media (max-width: 1000px) {
     #learning-path .container {
         flex-direction: column-reverse;
         text-align: center;
         gap: 2.5rem;
     }

     .hero-image-wrapper {
         justify-content: center;
     }

     .circular-frame {
         width: 340px;
         height: 340px;
     }

     .hero-title {
         font-size: 2.7rem;
     }

     .hero-subtitle {
         margin: 0 auto 2rem auto;
         border-left: none;
         padding-left: 0;
         text-align: center;
         max-width: 80%;
     }

     .overlap-grid {
         flex-direction: column;
     }

     .left-card {
         margin-right: 0;
         width: 100%;
     }

     .right-card {
         margin-left: 0;
         margin-top: 30px;
         width: 100%;
     }
 }

 @media (max-width: 768px) {
     .section-title {
         font-size: 2rem;
     }

     .tab-item {
         padding: 6px 18px;
         font-size: 0.75rem;
     }

     .hero-title {
         font-size: 2rem;
     }

     .circular-frame {
         width: 270px;
         height: 270px;
     }

     .layer-dark h2 {
         font-size: 1.8rem;
     }
 }

 /* -------------------------------
           REGISTRATION SECTION - STANDALONE
        ------------------------------- */

 /* reset & base */
 .registration-section {
     background: linear-gradient(135deg, #f0f7ff 0%, #e9f0fa 100%);

 }

 .registration-wrapper {
     display: flex;
     justify-content: center;
     margin: 0;
 }

 /* main form card */
 .form-wrap {
     max-width: 800px;
     width: 100%;
     background: #ffffff;
     border-radius: 2rem;
     box-shadow: 0 25px 45px -12px rgba(0, 0, 0, 0.2), 0 0 0 1px rgba(2, 132, 199, 0.08);
     padding: 2rem 2rem 2.5rem;
     transition: all 0.2s ease;
 }

 /* heading */
 .form-wrap h2 {
     font-size: 1.9rem;
     font-weight: 700;
     color: #0a2540;
     margin-bottom: 1.5rem;
     letter-spacing: -0.3px;
     border-left: 4px solid #0284c7;
     padding-left: 1rem;
 }

 /* contact buttons row */
 .contact-btns {
     display: flex;
     gap: 1rem;
     margin-bottom: 1.8rem;
     flex-wrap: wrap;
 }

 .contact-btn {
     display: inline-flex;
     align-items: center;
     gap: 0.6rem;
     background: #f1f5f9;
     border: 1px solid #e2e8f0;
     padding: 0.7rem 1.5rem;
     border-radius: 60px;
     font-size: 0.9rem;
     font-weight: 500;
     color: #1e293b;
     cursor: pointer;
     transition: all 0.2s ease;
     font-family: inherit;
 }

 .contact-btn i {
     font-size: 1.2rem;
     color: #0284c7;
 }

 .contact-btn:hover {
     background: #ffffff;
     border-color: #0284c7;
     transform: translateY(-2px);
     box-shadow: 0 6px 12px -8px rgba(2, 132, 199, 0.3);
 }

 /* radio row (individual / enterprise) */
 .radio-row {
     display: flex;
     gap: 2rem;
     margin-bottom: 1.8rem;
     background: #f8fafc;
     padding: 0.6rem 1.2rem;
     border-radius: 48px;
     width: fit-content;
     border: 1px solid #e2edf2;
 }

 .radio-label {
     display: flex;
     align-items: center;
     gap: 0.5rem;
     font-size: 0.9rem;
     font-weight: 500;
     color: #1e2f3e;
     cursor: pointer;
 }

 .radio-label input[type="radio"] {
     width: 1rem;
     height: 1rem;
     accent-color: #0284c7;
     cursor: pointer;
 }

 /* grid for fields */
 .fields-grid {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: 1.2rem;
     margin-bottom: 1.5rem;
 }

 .field-wrap {
     display: flex;
     flex-direction: column;
 }

 .field-full {
     grid-column: span 2;
 }

 .field-wrap label {
     font-size: 0.75rem;
     font-weight: 500;
     text-transform: uppercase;
     letter-spacing: 0.5px;
     color: #475569;
     margin-bottom: 0.3rem;
 }

 .field-input {
     width: 100%;
     padding: 0.85rem 1rem;
     border-radius: 16px;
     border: 1.5px solid #e2edf2;
     background: #ffffff;
     font-size: 0.9rem;
     transition: all 0.2s;
     font-family: inherit;
     color: #0f172a;
 }

 .field-input:focus {
     outline: none;
     border-color: #0284c7;
     box-shadow: 0 0 0 3px rgba(2, 132, 199, 0.1);
 }

 .field-input::placeholder {
     color: #94a3b8;
 }

 select.field-input {
     appearance: none;
     background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23475669' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");
     background-repeat: no-repeat;
     background-position: right 1rem center;
     background-size: 1rem;
 }

 textarea.field-input {
     resize: vertical;
     min-height: 90px;
 }

 /* captcha row (modern reCAPTCHA style) */
 .captcha-row {
     margin: 1.2rem 0 1.8rem;
     background: #f9fafc;
     border-radius: 20px;
     padding: 0.5rem 1rem;
     border: 1px solid #e9edf2;
 }

 .captcha-box {
     display: flex;
     align-items: center;
     gap: 0.8rem;
     flex-wrap: wrap;
     justify-content: space-between;
 }

 .captcha-box input[type="checkbox"] {
     width: 1.1rem;
     height: 1.1rem;
     cursor: pointer;
     accent-color: #0284c7;
 }

 .captcha-box label {
     font-size: 0.85rem;
     color: #1e293b;
     font-weight: 500;
     cursor: pointer;
     flex: 1;
 }

 .captcha-logo {
     display: flex;
     align-items: center;
     gap: 0.4rem;
     background: #f1f5f9;
     padding: 0.2rem 0.7rem;
     border-radius: 30px;
     font-size: 0.7rem;
     font-weight: 600;
     color: #3b4e62;
 }

 .rc-icon {
     width: 18px;
     height: 18px;
     background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%230284c7" stroke-width="1.5"><path d="M12 2a10 10 0 1 0 10 10 10 10 0 0 0-10-10zm0 18a8 8 0 1 1 8-8 8 8 0 0 1-8 8z"/><path d="M12 7v5l3 2"/></svg>') no-repeat center;
     background-size: contain;
 }

 /* submit button */
 .submit-btn {
     width: 100%;
     background: #0f3b5c;
     border: none;
     padding: 1rem;
     font-size: 1rem;
     font-weight: 600;
     color: white;
     border-radius: 60px;
     cursor: pointer;
     transition: all 0.25s ease;
     font-family: inherit;
     box-shadow: 0 8px 18px -8px rgba(2, 132, 199, 0.3);
     display: flex;
     align-items: center;
     justify-content: center;
     gap: 8px;
 }

 .submit-btn:hover {
     background: #0284c7;
     transform: translateY(-2px);
     box-shadow: 0 14px 24px -10px rgba(2, 132, 199, 0.4);
 }

 /* small adjustments for responsive */
 @media (max-width: 640px) {
     .registration-wrapper {
         padding: 1rem;
     }

     .form-wrap {
         padding: 1.5rem;
     }

     .fields-grid {
         grid-template-columns: 1fr;
         gap: 1rem;
     }

     .field-full {
         grid-column: span 1;
     }

     .contact-btns {
         justify-content: center;
     }

     .radio-row {
         width: 100%;
         justify-content: center;
     }

     .form-wrap h2 {
         font-size: 1.6rem;
         text-align: center;
         border-left: none;
         padding-left: 0;
     }
 }

 /* simple animation for form appearance */
 @keyframes fadeSlide {
     from {
         opacity: 0;
         transform: translateY(16px);
     }

     to {
         opacity: 1;
         transform: translateY(0);
     }
 }

 .form-wrap {
     animation: fadeSlide 0.45s ease-out;
 }






 /* ── Section wrapper ── */
 .learning-section {
     padding: 60px 16px 80px;
 }

 .section-title {
     font-size: clamp(1.6rem, 4vw, 2.2rem);
     font-weight: 700;
     color: #1a2332;
     text-align: center;
     margin-bottom: 36px;
 }

 /* ── Tab nav ── */
 .tab-nav-wrapper {
     overflow-x: auto;
     -webkit-overflow-scrolling: touch;
     scrollbar-width: none;
     margin-bottom: 40px;
 }

 .tab-nav-wrapper::-webkit-scrollbar {
     display: none;
 }

 .tab-nav {
     display: inline-flex;
     gap: 4px;
     border: 1.5px solid #c8e6f5;
     border-radius: 50px;
     padding: 6px;
     min-width: max-content;
     background: #fff;
 }

 .tab-btn {
     border: none;
     background: transparent;
     border-radius: 50px;
     padding: 10px 22px;
     font-size: 0.88rem;
     font-weight: 500;
     color: #444;
     white-space: nowrap;
     cursor: pointer;
     transition: background 0.2s, color 0.2s;
 }

 .tab-btn:hover {
     background: #e8f5fc;
     color: #0a90d4;
 }

 .tab-btn.active {
     background: #0a90d4;
     color: #fff;
     font-weight: 600;
 }

 /* ── Content card ── */
 .content-row {
     display: none;
     gap: 0;
     border-radius: 16px;
     overflow: hidden;
 }

 .content-row.active {
     display: flex;
 }

 /* Left panel */
 .left-panel {
     flex: 0 0 clamp(260px, 42%, 460px);
     position: relative;
     overflow: hidden;
 }

 .left-panel img {
     width: 100%;
     height: 320px;
     object-fit: cover;
     display: block;
 }

 .left-caption {
     background: #ddeef8;
     padding: 20px 24px;
 }

 .left-caption p.lead-line {
     font-weight: 700;
     font-size: 0.92rem;
     color: #1a2332;
     margin-bottom: 8px;
 }

 .left-caption p.body-text {
     font-size: 0.84rem;
     line-height: 1.65;
     color: #2c3e50;
     font-weight: 500;
     margin: 0;
 }

 /* Right panel */
 .right-panel {
     flex: 1;
     background: #eaf5fc;
     padding: 36px 32px 36px;
     display: flex;
     flex-direction: column;
     gap: 16px;
 }

 .right-panel .panel-title {
     font-weight: 700;
     font-size: 1rem;
     color: #0a90d4;
     margin-bottom: 8px;
     text-align: center;
 }

 /* Benefit card */
 .benefit-card {
     background: #fff;
     border-radius: 14px;
     padding: 16px 20px;
     display: flex;
     align-items: flex-start;
     gap: 16px;
 }

 .benefit-icon {
     flex-shrink: 0;
     width: 44px;
     height: 44px;
     border: 1.5px solid #c0dcf0;
     border-radius: 10px;
     display: flex;
     align-items: center;
     justify-content: center;
     background: #f0f8ff;
 }

 .benefit-icon svg {
     width: 22px;
     height: 22px;
     stroke: #0a90d4;
     fill: none;
     stroke-width: 1.7;
     stroke-linecap: round;
     stroke-linejoin: round;
 }

 .benefit-text h6 {
     font-size: 0.9rem;
     font-weight: 700;
     margin: 0 0 4px;
     color: #1a2332;
 }

 .benefit-text p {
     font-size: 0.82rem;
     color: #4a5568;
     margin: 0;
     line-height: 1.55;
 }

 /* ── Responsive: stack on mobile ── */
 @media (max-width: 767px) {
     .content-row {
         flex-direction: column;
     }

     .left-panel {
         flex: none;
         width: 100%;
     }

     .left-panel img {
         height: 220px;
     }

     .right-panel {
         padding: 24px 16px;
     }

     .tab-nav-wrapper {
         display: flex;
         justify-content: flex-start;
     }
 }

 /* Tab Bar - Responsive for all screen sizes */
 .tab-bar-wrap {
     display: flex;
     justify-content: center;
     margin-bottom: 55px;
     padding: 0 20px;
     width: 100%;
 }

 .tab-bar {
     display: flex;
     flex-wrap: wrap;
     justify-content: center;
     align-items: center;
     gap: 8px;
     background: rgba(255, 255, 255, 0.9);
     backdrop-filter: blur(4px);
     border: 1px solid #cde3ef;
     border-radius: 60px;
     padding: 12px 20px;
     box-shadow: 0 8px 20px rgba(0, 0, 0, 0.02);
     max-width: 100%;
     width: auto;
 }

 .tab-item {
     padding: 10px 28px;
     border-radius: 60px;
     font-size: 1rem;
     font-weight: 600;
     color: #2c4f6e;
     background: transparent;
     border: none;
     cursor: pointer;
     transition: all 0.2s ease;
     white-space: nowrap;
 }

 .tab-item:hover {
     background: #e8f2f9;
     color: #0f6b9c;
 }

 .tab-item.active {
     background: #0f6b9c;
     color: white;
     box-shadow: 0 4px 10px -4px rgba(15, 107, 156, 0.35);
 }

 /* ============================================
   RESPONSIVE BREAKPOINTS FOR ALL SCREENS
   ============================================ */

 /* Small desktops / Large tablets (1200px - 1300px) */
 @media (max-width: 1300px) {
     .tab-bar {
         gap: 6px;
         padding: 10px 16px;
         border-radius: 50px;
     }

     .tab-item {
         padding: 8px 20px;
         font-size: 0.9rem;
     }
 }

 /* Medium screens (992px - 1199px) */
 @media (max-width: 1199px) {
     .tab-bar {
         gap: 6px;
         padding: 10px 14px;
         border-radius: 45px;
     }

     .tab-item {
         padding: 8px 18px;
         font-size: 0.85rem;
     }
 }

 /* Tablets (768px - 991px) */
 @media (max-width: 991px) {
     .tab-bar-wrap {
         padding: 0 16px;
         margin-bottom: 40px;
     }

     .tab-bar {
         gap: 5px;
         padding: 8px 12px;
         border-radius: 40px;
     }

     .tab-item {
         padding: 7px 16px;
         font-size: 0.82rem;
         border-radius: 40px;
     }
 }

 /* Small tablets / Large phones (576px - 767px) */
 @media (max-width: 767px) {
     .tab-bar-wrap {
         padding: 0 12px;
         margin-bottom: 35px;
     }

     .tab-bar {
         gap: 5px;
         padding: 8px 10px;
         border-radius: 35px;
         border-width: 1.5px;
     }

     .tab-item {
         padding: 6px 14px;
         font-size: 0.78rem;
         border-radius: 35px;
     }
 }

 /* Mobile phones (400px - 575px) */
 @media (max-width: 575px) {
     .tab-bar-wrap {
         padding: 0 8px;
         margin-bottom: 30px;
     }

     .tab-bar {
         gap: 4px;
         padding: 6px 8px;
         border-radius: 30px;
     }

     .tab-item {
         padding: 6px 12px;
         font-size: 0.72rem;
         border-radius: 30px;
         min-width: 0;
     }
 }

 /* Very small phones (below 400px) */
 @media (max-width: 400px) {
     .tab-bar-wrap {
         padding: 0 4px;
         margin-bottom: 25px;
     }

     .tab-bar {
         gap: 3px;
         padding: 5px 6px;
         border-radius: 25px;
     }

     .tab-item {
         padding: 4px 10px;
         font-size: 0.65rem;
         border-radius: 25px;
     }
 }