 :root {
     --navy: #183868;
     --navy-deep: #0F2648;
     --sky: #4898D8;
     --green: #20B263;
     --sky-soft: #BFDCF1;
     --sky-wash: #E6F1F9;
     --saffron: #E8A54A;
     --saffron-deep: #C87F25;
     --coral: #E26D5A;
     --teal: #2FA39A;
     --ink: #1C2233;
     --ink-soft: #4B5468;
     --ink-mute: #8A92A3;
     --rule: #E2DFD6;
     --paper: #F7F5F0;
     --paper-warm: #F1ECDF;
     --white: #ffffff;
     --accent: var(--saffron);
     --accent-deep: var(--saffron-deep);
     --accent-tint: #FBEACB;
     --font-display: 'Poppins', system-ui, sans-serif;
     --font-body: 'Poppins', system-ui, sans-serif;
     --font-mono: 'JetBrains Mono', ui-monospace, monospace;
 }

 .form-message {
     padding: 12px 16px;
     border-radius: 8px;
     font-size: 14px;
     font-weight: 500;
     line-height: 1.5;
 }

 .form-message.success {
     background: #e8f8ee;
     color: #1e7e34;
     border: 1px solid #b7e4c7;
 }

 .form-message.error {
     background: #fdeaea;
     color: #c62828;
     border: 1px solid #f5c2c7;
 }

 html[data-accent="coral"] {
     --accent: var(--coral);
     --accent-deep: #B94A37;
     --accent-tint: #FBDCD4
 }

 .plan .perks {
     margin-top: 5px !important;
 }

 html[data-accent="teal"] {
     --accent: var(--teal);
     --accent-deep: #1F7772;
     --accent-tint: #CFE9E6
 }

 * {
     box-sizing: border-box
 }

 * ul {
     padding-left: 0 !important;
 }

 .flag,
 .badge,
 .city,
 .rank {
     z-index: 99 !important;
 }

 html,
 body {
     margin: 0;
     padding: 0;
     scroll-behavior: smooth;
 }

 body {
     background: var(--paper);
     color: var(--ink);
     font-family: var(--font-body);
     font-weight: 400;
     -webkit-font-smoothing: antialiased;
     text-rendering: optimizeLegibility;
     line-height: 1.55;
     overflow-x: hidden;
 }

 h1,
 h2,
 h3,
 h4 {
     font-family: var(--font-display);
     margin: 0;
     color: var(--navy);
     letter-spacing: -0.015em;
     line-height: 1.1
 }

 p {
     margin: 0
 }

 a {
     color: inherit;
     text-decoration: none;
     cursor: pointer;
 }

 .mono {
     font-family: var(--font-mono);
     font-size: 11px;
     letter-spacing: .16em;
     text-transform: uppercase;
     color: var(--ink-mute);
     font-weight: 500;
     color: #183868;
     font-size: 13px !important;
 }

 .container {
     max-width: 1240px;
     margin: 0 auto;
     padding: 0 32px
 }

 .hero .lede {
     font-size: 17px !important;
     line-height: 1.55;
     color: var(--ink-soft);
     margin: 35px 0 34px;
     max-width: 54ch
 }

 /* ——— announce bar ——— */
 .announce {
     background: var(--navy);
     color: var(--white);
     font-size: 13px;
     padding: 10px 32px;
     text-align: center;
     font-family: var(--font-body)
 }

 .announce b {
     color: var(--accent);
     font-weight: 600;
     margin-right: 6px
 }

 .announce .sep {
     margin: 0 16px;
     opacity: .4
 }

 /* ——— nav ——— */

 .mobile-dropdown {
     position: relative;
     display: inline-block;
 }

 .dropdown-btn {
     display: flex;
     align-items: center;
     gap: 5px;
     cursor: pointer;
     padding: 15px;
     font-weight: 500;
 }

 .arrow {
     transition: 0.3s;
 }

 .weeks-grid {
     grid-template-columns: repeat(4, 1fr) !important;
 }

 .weeks-grid .wk:nth-child(5),
 .weeks-grid .wk:nth-child(6),
 .weeks-grid .wk:nth-child(7),
 .weeks-grid .wk:nth-child(8) {
     border-top: 1px solid var(--rule);
 }

 .weeks-grid .wk:nth-child(4) {
     border-right-width: 0px !important;
 }

 .weeks-grid .wk h5 {
     margin: 5px 0 !important
 }

 .mobile-dropdown-content {
     display: none;
     position: absolute;
     top: 100%;
     left: 0;
     min-width: 220px;
     background: #fff;
     border-radius: 5px;
     box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
     z-index: 999;
 }

 .mobile-dropdown-content .dropdown-list.two-column li {
     flex-basis: 50%;
     border-right: 1px solid var(--sky-wash) !important;
 }

 .mobile-dropdown-content .dropdown-list li a.active {
     display: block;
     background-color: #2f5999;
     color: #ffffff;
 }

 .dropdown-list.two-column li:nth-child(even) {
     border-right: none;

 }


 .mobile-dropdown-content a {
     display: block;
     padding: 12px 20px;
     color: #333;
     text-decoration: none;
     text-transform: capitalize;
 }


 .mobile-dropdown-content a:hover {
     background: #2f5999;
     color: #ffffff;
 }

 .mobile-dropdown.active .mobile-dropdown-content {
     display: block;
 }

 .mobile-dropdown.active .arrow {
     transform: rotate(180deg);
 }

 .nav {
     background: rgba(247, 245, 240, .92);
     border-bottom: 1px solid var(--rule);
     position: sticky;
     top: 0;
     z-index: 40;
     backdrop-filter: blur(12px);
 }

 .nav-inner {
     display: flex;
     align-items: center;
     justify-content: space-between;
     padding: 18px 0;
     gap: 32px
 }

 .brand {
     display: flex;
     align-items: center;
     gap: 12px;
     flex-shrink: 0;
 }

 .brand img {
     height: 50px;
     width: auto;
     display: block
 }

 .brand .word {
     display: flex;
     flex-direction: column;
     line-height: 1
 }

 .brand .word b {
     font-family: var(--font-display);
     font-weight: 700;
     color: var(--navy);
     font-size: 17px;
     letter-spacing: -0.01em
 }

 .brand .word span {
     font-family: var(--font-mono);
     font-size: 9px;
     letter-spacing: .18em;
     color: var(--ink-mute);
     text-transform: uppercase;
     margin-top: 3px
 }

 .nav-links {
     display: flex;
     gap: 28px;
     font-size: 14px;
     font-weight: 500;
     color: var(--ink);
     align-items: center;
 }

 .nav-links .li {
     position: relative;
     padding: 6px 0;
     cursor: pointer !important;
 }

 .nav-links .li.has:after {
     content: "";
     display: inline-block;
     width: 6px;
     height: 6px;
     border-right: 1.5px solid var(--ink-soft);
     border-bottom: 1.5px solid var(--ink-soft);
     transform: translateY(-3px) rotate(45deg);
     margin-left: 6px
 }

 .nav-links .li:hover {
     color: var(--navy)
 }

 .nav-cta {
     display: flex;
     gap: 10px;
     align-items: center;
     flex-shrink: 0;
 }

 /* dropdowns */
 .dropdown {
     position: relative;
 }

 .dropdown-menu {
     position: absolute;
     top: 100%;
     left: 0;
     background: var(--white);
     min-width: 200px;
     padding: 12px 0;
     border-radius: 12px;
     box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
     border: 1px solid var(--rule);
     opacity: 0;
     visibility: hidden;
     transform: translateY(10px);
     transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
     z-index: 50;
 }

 .dropdown:hover .dropdown-menu {
     opacity: 1;
     visibility: visible;
     transform: translateY(0);
 }

 .dropdown-item {
     display: block;
     padding: 10px 20px;
     font-size: 14px;
     color: var(--ink-soft);
     transition: all 0.2s ease;
 }

 .dropdown-item:hover {
     background: var(--sky-wash);
     color: var(--navy);
     padding-left: 24px;
 }


 /* hamburger */
 .hamburger {
     display: none;
     flex-direction: column;
     gap: 5px;
     cursor: pointer;
     padding: 8px;
     border: none;
     background: transparent;
     min-width: 44px;
     min-height: 44px;
     align-items: center;
     justify-content: center;
     border-radius: 8px;
     margin-right: 15px;

 }

 .hamburger span {
     display: block;
     width: 22px;
     height: 2px;
     background: var(--ink);
     border-radius: 2px;
     transition: all .25s ease;
 }

 .hamburger.open span:nth-child(1) {
     transform: translateY(7px) rotate(45deg)
 }

 .hamburger.open span:nth-child(2) {
     opacity: 0
 }

 .hamburger.open span:nth-child(3) {
     transform: translateY(-7px) rotate(-45deg)
 }

 /* mobile drawer */
 .mobile-menu {
     visibility: hidden;
     pointer-events: none;
     position: fixed;
     top: 0;
     left: 0;
     right: 0;
     bottom: 0;
     z-index: 100;
     background: rgba(0, 0, 0, .4);
     opacity: 0;
     transition: opacity .3s ease, visibility .3s ease;
 }

 .mobile-menu.open {
     opacity: 1;
     visibility: visible;
     pointer-events: auto;
 }

 .mobile-menu-inner {
     position: absolute;
     top: 0;
     right: 0;
     bottom: 0;
     width: 80%;
     background: var(--white);
     padding: 24px 0;
     overflow-y: auto;
     transform: translateX(100%);
     transition: transform .3s ease;
     display: flex;
     flex-direction: column;
     gap: 0;
     overflow-x: hidden;
 }

 .mobile-menu.open .mobile-menu-inner {
     transform: translateX(0)
 }

 .mobile-menu-header {
     display: flex;
     align-items: center;
     justify-content: space-between;
     margin-bottom: 10px;
     padding-bottom: 10px;
     /* border-bottom: 1px solid var(--rule); */
     padding: 0 24px;

 }

 .mobile-menu-close {
     width: 42px;
     height: 42px;
     display: flex;
     align-items: center;
     justify-content: center;
     border: 1px solid var(--rule);
     border-radius: 5px;
     background: transparent;
     cursor: pointer;
     font-size: 28px;
     color: #7e7e7e;
 }

 .mobile-menu-close:hover {
     color: #ffffff !important;
     background: #183868 !important;
     border: 1px solid #183868 !important;
 }

 .mobile-nav-links {
     display: flex;
     flex-direction: column;
     gap: 0;
 }

 .mobile-nav-links .li {
     font-size: 15px;
     font-weight: 500;
     color: var(--ink);
     padding: 14px 0;
     border-bottom: 1px solid var(--rule);
     cursor: pointer;
     display: flex;
     align-items: center;
     justify-content: space-between;
     min-height: 44px;
 }

 .mobile-nav-links .li,
 .mobile-accordion .mobile-accordion-header .li {
     padding-left: 24px !important;
 }


 .mobile-nav-links .li:last-child {
     border-bottom: 0;
 }

 .mobile-dropdown-content {
     display: none;
     flex-direction: column;
 }

 .mobile-dropdown-content a {
     display: block;
     padding: 12px 10px;
     font-size: 14px;
     color: var(--ink-soft);
     border-bottom: 1px solid var(--sky-wash) !important;

 }

 .mobile-dropdown-content a:last-child {
     border-bottom: 0;
 }

 .mobile-dropdown:hover .mobile-dropdown-content {
     display: flex;
 }

 /* mobile accordion */
 .mobile-accordion {
     border-bottom: 1px solid var(--rule);
 }

 .mobile-accordion-header {
     display: flex;
     align-items: center;
     justify-content: space-between;
     padding: 0 0 6px 0;
     cursor: pointer;
 }

 .mobile-accordion.active .mobile-accordion-header {
     padding: 0;
 }

 .mobile-accordion-header .li {
     font-size: 15px;
     font-weight: 500;
     color: var(--ink);
     padding: 0;
     border-bottom: 0;
 }

 .mobile-accordion-header .arrow {
     font-size: 26px !important;
     color: var(--ink-mute);
     transition: transform 0.3s ease;
     padding-right: 30px;
     padding-left: 30px;

 }

 .mobile-accordion.active .mobile-accordion-header .arrow {
     transform: rotate(90deg);
 }

 .mobile-accordion-content {
     max-height: 0;
     overflow: hidden;
     transition: max-height 0.35s ease-out;
     /* background: var(--sky-wash); */
     margin: 0 -24px;
     padding: 0 24px;
 }

 .mobile-accordion.active .mobile-accordion-content {
     max-height: 800px;
     /* Large enough to fit content */
     padding-bottom: 5px;
     padding-top: 1px;
 }

 .mobile-accordion-content .dropdown-list {
     list-style: none;
     padding: 0;
     margin: 0;
     width: 100% !important;
     /* Override desktop width */
     display: flex;
     flex-direction: column;
 }

 .mobile-accordion-content .dropdown-list li {
     flex-basis: 100% !important;
     border-right: none !important;
     border-bottom: 1px solid #E2DFD6;
 }

 .mobile-accordion-content .dropdown-list li:last-child {
     border-bottom: 0 !important;
 }

 .mobile-accordion.active .dropdown-list li:first-child a {
     padding-top: 5px !important;
 }

 .mobile-accordion-content a {
     display: block;
     padding: 10px 0;
     font-size: 14px;
     color: var(--ink-soft);
     border-bottom: 1px solid rgba(0, 0, 0, 0.05) !important;
     padding-left: 45px;
 }

 .mobile-accordion-content a:hover,
 .mobile-accordion-content a:focus,
 .mobile-accordion-content a:active {
     color: #0083dc;
 }

 .mobile-accordion-content a:last-child {
     border-bottom: 0 !important;
 }


 .mobile-nav-cta {
     margin-top: 24px;
     display: flex;
     flex-direction: column;
     gap: 10px;
     padding: 0 24px;
 }

 /* ——— buttons ——— */
 .btn {
     font-family: var(--font-display);
     font-weight: 600;
     font-size: 14px;
     padding: 12px 20px;
     border-radius: 999px;
     border: 1.5px solid transparent;
     cursor: pointer;
     display: inline-flex;
     align-items: center;
     gap: 10px;
     line-height: 1;
     transition: transform .18s ease, box-shadow .2s ease, background .2s ease, color .2s ease;
     min-height: 44px;
     white-space: nowrap;
 }

 .btn.primary {
     background: var(--coral);
     color: var(--white)
 }

 .btn.primary:hover {
     background: var(--navy-deep);
     transform: translateY(-1px);
     box-shadow: 0 8px 20px rgba(24, 56, 104, .25)
 }

 .btn.ghost {
     background: transparent;
     color: var(--navy);
     border-color: var(--navy)
 }

 .btn.ghost:hover {
     background: var(--navy);
     color: var(--white)
 }

 .btn.accent {
     background: var(--accent);
     color: #2A1B07
 }

 .btn.accent:hover {
     background: var(--accent-deep);
     color: #fff;
     border: 1px solid var(--accent-deep);
     cursor: pointer !important;
 }

 .pull blockquote,
 .pull blockquote::before {
     margin: 0 !important;
 }

 .pull blockquote {
     font-size: 23px !important;
 }

 .btn.lg {
     font-size: 15px;
     padding: 15px 26px
 }

 .btn.sm {
     font-size: 13px;
     padding: 9px 16px
 }

 .btn .arr {
     display: inline-block;
     transition: transform .2s
 }

 .btn:hover .arr {
     transform: translateX(3px)
 }

 .btn.full {
     width: 100%;
     justify-content: center;
 }

 /* Footer */
 /* ——— footer ——— */

 footer p,
 footer span,
 footer a {
     font-weight: 500 !important;
 }

 .footer-two-column li,
 .footer-inner.footer-two-column li {
     width: 50%;
     padding: 0;
 }

 .form input,
 .form select {
     border: 1px solid #ccc;
     outline: none;
 }

 .form input:focus,
 .form select:focus {
     border-color: #000;
 }

 .error-msg {
     display: block;
 }

 /* ============================================================
   FOOTER
============================================================ */
 footer {
     background: var(--navy);
     color: rgba(255, 255, 255, .7);
     padding: 72px 0 32px;


 }

 footer h5 {
     color: #fff;
     font-size: 13px;
     font-weight: 600;
     letter-spacing: .04em;
     margin-bottom: 16px;
     text-transform: uppercase
 }

 .foot-grid {
     display: grid;
     grid-template-columns: 1.2fr .7fr 1fr 1fr 1fr !important;
     gap: 40px
 }

 .foot-grid ul {
     list-style: none;
     padding: 0;
     margin: 0;
     font-size: 13px;
     line-height: 2
 }

 .foot-grid .brand img {
     height: 50px;
     filter: brightness(0) invert(1);
     opacity: .95
 }

 .foot-grid .brand .word b {
     color: #fff
 }

 .foot-grid .brand .word span {
     color: rgba(255, 255, 255, .5)
 }

 .foot-grid .intro {
     font-size: 14px;
     line-height: 1.6;
     margin-top: 18px;
     color: rgba(255, 255, 255, .65);
     max-width: 30ch
 }

 .foot-grid .social {
     display: flex;
     gap: 10px;
     margin-top: 20px
 }

 .foot-grid .social a {
     width: 34px;
     height: 34px;
     border-radius: 50%;
     border: 1px solid rgba(255, 255, 255, .18);
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: 13px;
     color: rgba(255, 255, 255, .7)
 }

 .foot-grid .social a i {
     margin-top: 2px;
 }

 .foot-grid .social a:hover {
     border-color: #fff;
     background: #fff;
     color: var(--navy);
     cursor: pointer;
 }

 .foot-meta {
     border-top: 1px solid rgba(255, 255, 255, .12);
     padding-top: 24px;
     margin-top: 56px;
     display: flex;
     justify-content: space-between;
     font-size: 12px;
     color: rgba(255, 255, 255, .5)
 }


 .foot-grid {
     display: grid;
     grid-template-columns: 1.4fr 1fr 1fr 1fr 1fr;
     gap: 40px
 }

 .foot-grid ul {
     list-style: none;
     padding: 0;
     margin: 0;
     font-size: 13px;
     line-height: 2
 }

 .foot-grid .brand img {
     height: 50px;
     filter: brightness(0) invert(1);
     opacity: .95
 }

 .foot-grid .brand .word b {
     color: #fff
 }

 .foot-grid .brand .word span {
     color: rgba(255, 255, 255, .5)
 }

 .foot-grid .intro {
     font-size: 14px;
     line-height: 1.6;
     margin-top: 18px;
     color: rgba(255, 255, 255, .65);
     max-width: 30ch
 }

 .foot-grid .social {
     display: flex;
     gap: 10px;
     margin-top: 20px
 }

 .foot-grid .social span {
     width: 34px;
     height: 34px;
     border-radius: 50%;
     border: 1px solid rgba(255, 255, 255, .18);
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: 13px;
     color: rgba(255, 255, 255, .7)
 }

 .foot-meta {
     border-top: 1px solid rgba(255, 255, 255, .12);
     padding-top: 24px;
     margin-top: 56px;
     display: flex;
     justify-content: space-between;
     font-size: 12px;
     color: rgba(255, 255, 255, .5)
 }

 .off .right-arrow {
     margin-top: -1px !important;
     font-size: 15px !important;
 }

 .off .links a:hover {
     color: #ffffff !important;
 }

 .hero .kicker,
 .hero-grid .kicker {
     font-weight: 500 !important;
 }

 .qa .q .plus {
     width: 25px !important;
     height: 25px !important;
     line-height: 25px;
     font-size: 16px !important;
     font-weight: 500 !important;

 }

 .dest-card .bg,
 .passport::before,
 .hero-card .bg,
 .map-card .bg {
     background: linear-gradient(356deg, rgb(103 71 31 / 86%), rgb(137 81 11 / 70%)) !important;
 }

 .hero-card .stage .ttl em,
 .map-card .heading em,
 .map-card .num,
 .passport .name h3 span {
     color: #ffffff !important
 }

 .float-chip.b,
 .float.b {
     background: #dd4d35 !important;
     color: #ffffff !important
 }

 .float.b .ic {
     color: #ffffff !important;
 }

 .passport {
     background: url(../mbbs-abroad/russian-federation.webp) !important;
     background-size: cover !important;
     background-position: left center !important;
     background-repeat: no-repeat !important;
 }

 .float.b .mono {
     color: rgb(255 255 255 / 65%) !important;
 }

 .qa.open {
     pointer-events: none;
 }

 .qa p {
     color: var(--ink-soft);
 }

 #outcomes .pull {
     display: none;
 }

 /* ——— tweaks panel ——— */
 .tw {
     position: fixed;
     right: 20px;
     bottom: 20px;
     width: 260px;
     background: rgba(255, 255, 255, .95);
     backdrop-filter: blur(12px);
     border: 1px solid var(--rule);
     border-radius: 14px;
     padding: 16px;
     box-shadow: 0 20px 50px rgba(0, 0, 0, .14);
     display: none;
     z-index: 60;
     font-family: var(--font-body)
 }

 .tw.on {
     display: block
 }

 .tw h4 {
     font-size: 14px;
     margin: 0 0 10px;
     display: flex;
     justify-content: space-between;
     align-items: center;
     color: var(--navy)
 }

 .tw h4 button {
     appearance: none;
     border: 0;
     background: transparent;
     font-size: 18px;
     color: var(--ink-mute);
     cursor: pointer
 }

 .tw .k {
     font-family: var(--font-mono);
     font-size: 10px;
     letter-spacing: .14em;
     text-transform: uppercase;
     color: var(--ink-mute);
     margin: 10px 0 6px
 }

 .tw .opts {
     display: flex;
     gap: 6px;
     flex-wrap: wrap
 }

 .tw .opt {
     font-family: var(--font-mono);
     font-size: 11px;
     padding: 6px 10px;
     border-radius: 999px;
     border: 1px solid var(--rule);
     background: var(--white);
     cursor: pointer;
     color: var(--ink-soft)
 }

 .tw .opt.on {
     background: var(--navy);
     color: #fff;
     border-color: var(--navy)
 }

 .tw .swatch {
     display: inline-block;
     width: 9px;
     height: 9px;
     border-radius: 50%;
     margin-right: 5px;
     vertical-align: middle
 }

 .err {
     color: #ff6060;
     font-size: 13px;
     margin-top: 4px;
     display: block;
     font-weight: 500;
 }

 .input-error {
     border: 1px solid #ff6060 !important;
 }

 .track.acad h3,
 .track h3 {
     max-width: 100% !important;
 }

 .s.warm h2 {
     max-width: 32ch !important;
 }

 .row2 .two-column {
     display: grid;
     grid-template-columns: repeat(2, 1fr);
     gap: 0 15px;
 }




 @media (min-width:1000px) and (max-width: 1450px) {
     .nav .btn.ghost.sm {
         display: none;
     }

     .hero-full .lede {
         max-width: 85% !important;
     }

     .nav .nav-inner {
         padding: 18px 15px !important;
         gap: 20px !important;
     }

     .spotlight-card {
         left: 9% !important;
         right: 9% !important;
         bottom: 45px !important;
     }


 }

 @media (min-width:1000px) and (max-width: 1100px) {
     .nav .nav-links {
         gap: 15px;
     }


 }

 @media(min-width: 1000px) and (max-width: 1400px) {
     .hero-full h1 {
         font-size: 45px !important;
     }
 }




 /* =============================================
       TABLET — 768px to 1024px
    ============================================= */



 @media (max-width: 1024px) {
     .container {
         padding: 0 24px
     }

     /* announce */
     .announce .sep {
         display: none
     }

     .announce {
         font-size: 12px;
         padding: 10px 24px
     }

     /* nav */
     .nav-links {
         display: none
     }

     .nav-cta {
         display: none
     }

     .hamburger {
         display: flex
     }

     .nav-inner {
         padding: 14px 0;
         gap: 16px
     }
 }



 /* =============================================
       MOBILE — up to 767px
    ============================================= */
 @media (max-width: 767px) {
     .container {
         padding: 0 16px
     }

     /* announce */
     .announce {
         font-size: 11px;
         padding: 8px 16px
     }

     .announce .sep {
         display: none
     }

     /* nav */
     .nav-inner {
         padding: 12px 0
     }

     .brand img {
         height: 50px
     }

     .brand .word b {
         font-size: 15px
     }

     .mobile-menu-header img {
         height: 45px;
         position: relative;
         left: -10px;
     }

     .weeks-grid {
         grid-template-columns: repeat(1, 1fr) !important;
     }

     .weeks-grid .wk h5 {
         font-size: 18px !important;
     }

     /* footer */
     footer {
         padding: 48px 0 24px;
     }

     .foot-grid {
         grid-template-columns: .7fr 1fr !important;
         gap: 28px
     }

     .foot-grid>div:first-child {
         grid-column: span 2
     }

     .foot-grid .intro {
         max-width: 100%
     }

     .foot-meta {
         flex-direction: column;
         gap: 8px;
         text-align: center;
         margin-top: 40px
     }

     /* buttons touch targets */
     .btn {
         min-height: 44px
     }


 }

 @media(min-width:768px)and(max-width:1024px) {

     /* footer */
     footer {
         padding: 48px 0 24px;

     }

     .foot-grid {
         grid-template-columns: 1fr 1fr;
         gap: 24px
     }

     .foot-grid>div:first-child {
         grid-column: span 2
     }

     .foot-grid .intro {
         max-width: 100%
     }

     .foot-meta {
         flex-direction: column;
         gap: 8px;
         text-align: center;
         margin-top: 36px
     }
 }

 .hero-grid h1 {
     margin-bottom: 40px;
 }


 /* -- Scroll to Top Button -- */
 #scroll-top {
     position: fixed;
     bottom: 32px;
     right: 32px;
     z-index: 999;
     width: 39px;
     height: 39px;
     border-radius: 5%;
     border: none;
     cursor: pointer;
     background: #e26d5a;
     color: #fff;
     font-size: 16px;
     display: flex;
     align-items: center;
     justify-content: center;

     opacity: 0;
     visibility: hidden;
     transform: translateY(12px);
     transition: opacity .3s, visibility .3s, transform .3s, background .2s;
 }

 #scroll-top.show {
     opacity: 1;
     visibility: visible;
     transform: translateY(0);
 }

 .foot b {
     color: var(--navy);
 }

 /* ============================================================
   SECTION WRAPPER
   ============================================================ */
 .russia-section {
     width: 100%;
     background-color: #FDF3E8;
     /* background: url(../bg-contact-us.webp); */
     background-size: cover;
     background-position: center;
     background-repeat: no-repeat;
     overflow: hidden;

 }

 .russia-section .container {
     position: relative;
     display: grid;
     grid-template-columns: 1.3fr 1fr;
     padding: 15px 0;
 }

 .russia-section .col-left {
     display: flex;
     flex-direction: column;
     justify-content: center;
     padding: 50px 50px 50px 20px;
     position: relative;

     z-index: 2;
 }

 @media (max-width: 1100px) {
     .russia-section .col-left {
         padding: 20px;
         clip-path: none;
         -webkit-clip-path: none;
         background-position: center 30%;
     }
 }


 /* ============================================================
   DECORATIVE DOTS (bottom-left)
   ============================================================ */
 .russia-section::before {
     content: "";
     position: absolute;
     bottom: 40px;
     left: 40px;
     width: 100px;
     height: 80px;
     background-image: radial-gradient(circle, var(--rule) 1.5px, transparent 1.5px);
     background-size: 14px 14px;
     z-index: 0;
     pointer-events: none;
 }

 /* ============================================================
   LEFT COLUMN — heading + trust icons
   ============================================================ */
 .col-left {
     padding: 64px 48px 64px 56px;
     display: flex;
     flex-direction: column;
     justify-content: center;
     position: relative;
     z-index: 1;
 }

 /* Eyebrow */
 .eyebrow {
     display: inline-flex;
     align-items: center;
     gap: 10px;
     font-family: var(--font-mono);
     font-size: 11px;
     letter-spacing: .18em;
     text-transform: uppercase;
     color: var(--accent-deep);
     font-weight: 600;
     margin-bottom: 20px;
 }

 .uni-row {
     position: relative;
     z-index: 2;
     padding: 15px 0 18px 0;
     display: flex;
     flex-wrap: wrap;
     gap: 15px 7px;

     border-bottom: 1px solid rgba(255, 255, 255, .1);
 }

 .plan .per {
     font-size: 13px !important;
 }

 .band-card .stage .label {
     line-height: 0 !important;
     margin-bottom: 15px;
     font-size: 30px !important;
 }

 .container-label-text {
     color: rgb(255 255 255 / 72%);
     font-size: 14px;
 }

 .uni-row .bk.hi {
     background: #ffffff;
     color: #183868;
     border-color: #ffffff;
     font-weight: 700;
 }

 .uni-row .bk {
     font-family: var(--font-mono);
     font-size: 10px;
     letter-spacing: .1em;
     text-transform: uppercase;
     padding: 5px 11px;
     border-radius: 999px;
     border: 1px solid rgb(255 255 255 / 58%);
 }

 /* .eyebrow::before {
     content: "";
     display: inline-block;
     width: 28px;
     height: 2px;
     background: var(--accent);
     border-radius: 2px;
     flex-shrink: 0;
 } */

 /* Headline */
 .col-left h2 {
     font-family: var(--font-display);
     font-size: clamp(32px, 3.8vw, 50px);
     font-weight: 700;
     line-height: 1.08;
     letter-spacing: -0.025em;
     color: var(--navy);
     margin-bottom: 20px;
 }

 .col-left h2 .accent-text {
     color: var(--accent);
 }

 /* Body copy */
 .col-left .lede {
     font-size: 15px;
     line-height: 1.7;
     color: var(--ink-soft);
     margin-bottom: 20px;
 }

 /* Trust icons grid */
 .trust-row {
     display: grid;
     grid-template-columns: repeat(4, 1fr);
     gap: 16px;
 }

 .trust-item:nth-last-child(1) {
     border-right: 0px
 }

 .trust-item {
     display: flex;
     flex-direction: column;
     align-items: center;
     text-align: center;
     gap: 10px;
     border-right: 1px solid #c5c5c5;
     padding-right: 25px;
 }

 .trust-icon {
     width: 48px;
     height: 48px;
     border-radius: 50%;
     display: flex;
     align-items: center;
     justify-content: center;
     flex-shrink: 0;
 }

 .trust-icon.shield {
     background: #183868;
 }

 .trust-icon.person {
     background: #e8a54a;
 }

 .trust-icon.clock {
     background: #183868;
 }

 .trust-icon.check {
     background: #e8a54a;
 }

 .trust-icon svg {
     width: 22px;
     height: 22px;
     stroke-width: 1.8;
     stroke-linecap: round;
     stroke-linejoin: round;
     fill: none;
 }

 .trust-icon.shield svg {
     stroke: white
 }

 .trust-icon.person svg {
     stroke: white
 }

 .trust-icon.clock svg {
     stroke: white
 }

 .trust-icon.check svg {
     /* stroke: white; */
     fill: #e8a54a;
 }

 .trust-item h4 {
     font-family: var(--font-display);
     font-size: 13px;
     font-weight: 700;
     color: var(--navy);
     letter-spacing: -0.01em;
     line-height: 1.3;
 }

 .trust-item p {
     font-size: 12px;
     color: var(--ink-soft);
     line-height: 1.4;
 }

 /* ============================================================
   MIDDLE COLUMN — Contact card
   ============================================================ */
 .col-mid {
     display: flex;
     align-items: center;
     justify-content: start;
     padding: 64px 0px 64px 0px;
     margin-right: 60px;
     z-index: 1;
 }

 .contact-card {
     background: var(--white);
     border-radius: 20px;
     padding: 30px;
     width: 100%;
     max-width: 445px;
     box-shadow: 0 20px 60px -16px rgba(24, 56, 104, .14);
     display: flex;
     flex-direction: column;
     gap: 10px;
 }

 .contact-card h3 {
     font-family: var(--font-display);
     font-size: 22px;
     font-weight: 700;
     color: var(--navy);
     letter-spacing: -0.02em;
     line-height: 1.2;
     margin-bottom: 5px;
 }

 .card-divider {
     width: 36px;
     height: 3px;
     background: var(--accent);
     border-radius: 2px;
     margin-top: -8px;
 }

 .col-mid.edu-page form .row2 {
     grid-template-columns: repeat(2, 1fr);
 }

 .contact-card .sub {
     font-size: 14px;
     color: var(--ink-soft);
     margin-top: -8px;
 }

 .cta-form .row2 {
     display: grid;
     grid-template-columns: repeat(1, 1fr);
     gap: 10px 15px;

 }

 .cta-form .row1 {
     display: grid;
     grid-template-columns: repeat(1, 1fr);
     gap: 6px;
 }

 .cta-form label {
     font-family: var(--font-mono);
     font-size: 10px;
     letter-spacing: .14em;
     text-transform: uppercase;
     color: var(--ink-mute);
     font-weight: 500;
 }

 .cta-form input,
 .cta-form select,
 .cta-form textarea {
     font-family: var(--font-body);
     font-size: 15px;
     padding: 12px 14px;
     border: 1px solid var(--rule);
     border-radius: 10px;
     background: var(--paper);
     color: var(--ink);
     outline: none;
     width: 100%;
     min-height: 44px;
     margin-bottom: 5px;
 }

 .cta-form {
     display: flex;
     flex-direction: column;
     gap: 10px 14px;
 }

 .col-right {
     display: none;
 }



 /* ============================================================
   RIGHT COLUMN — Russia image panel
   ============================================================ */
 .col-right {
     position: relative;
     overflow: hidden;
     border-radius: 0 28px 28px 0;
 }



 /* Country card floating badge */
 .country-badge {
     position: absolute;
     bottom: 28px;
     right: 24px;
     background: rgba(255, 255, 255, .96);
     border-radius: 14px;
     padding: 14px 18px;
     display: flex;
     align-items: center;
     gap: 12px;
     box-shadow: 0 10px 30px rgba(0, 0, 0, .18);
     z-index: 5;
     min-width: 170px;
 }

 .badge-icon {
     width: 40px;
     height: 40px;
     border-radius: 50%;
     background: var(--accent-tint);
     display: flex;
     align-items: center;
     justify-content: center;
     flex-shrink: 0;
 }

 .badge-icon svg {
     width: 20px;
     height: 20px;
     stroke: var(--accent-deep);
     stroke-width: 1.8;
     fill: none;
     stroke-linecap: round;
     stroke-linejoin: round;
 }

 .badge-text strong {
     display: block;
     font-family: var(--font-display);
     font-size: 16px;
     font-weight: 700;
     color: var(--navy);
     letter-spacing: -0.01em;
     line-height: 1.1;
 }

 .badge-text span {
     font-size: 13px;
     color: var(--ink-soft);
 }

 /* Plane + dashed path */
 .flight-path {
     position: absolute;
     top: 40px;
     right: 30px;
     z-index: 6;
     pointer-events: none;
 }

 /* ============================================================
   IMAGE PLACEHOLDER
   Replace .photo-overlay background-image with your actual
   photo URL or swap the <div> for an <img> tag.
   ============================================================ */
 .photo-overlay {
     position: absolute;
     inset: 0;
     z-index: 1;

     /* ── Placeholder fill ── */
     background: linear-gradient(145deg, #d6e4f0 0%, #c4d8e8 40%, #b0c8dc 100%);

     display: flex;
     flex-direction: column;
     align-items: center;
     justify-content: center;
     gap: 14px;
 }

 /* Dashed border frame */
 .photo-overlay::before {
     content: "";
     position: absolute;
     inset: 16px;
     border: 2px dashed rgba(24, 56, 104, .2);
     border-radius: 12px;
     pointer-events: none;
     z-index: 2;
 }

 /* Image icon */
 .photo-overlay .ph-icon {
     position: relative;
     z-index: 3;
     width: 56px;
     height: 56px;
     border-radius: 14px;
     background: rgba(255, 255, 255, .55);
     display: flex;
     align-items: center;
     justify-content: center;
     box-shadow: 0 4px 16px rgba(24, 56, 104, .12);
 }

 .photo-overlay .ph-icon svg {
     width: 26px;
     height: 26px;
     stroke: rgba(24, 56, 104, .55);
     stroke-width: 1.6;
     fill: none;
     stroke-linecap: round;
     stroke-linejoin: round;
 }

 /* Label */
 .photo-overlay .ph-label {
     position: relative;
     z-index: 3;
     text-align: center;
 }

 .photo-overlay .ph-label strong {
     display: block;
     font-family: var(--font-display);
     font-size: 14px;
     font-weight: 600;
     color: rgba(24, 56, 104, .7);
     letter-spacing: -0.01em;
 }

 .photo-overlay .ph-label span {
     display: block;
     font-family: var(--font-mono);
     font-size: 10px;
     letter-spacing: .12em;
     text-transform: uppercase;
     color: rgba(24, 56, 104, .45);
     margin-top: 4px;
 }

 /* Gradient blend into section on the left edge */
 .photo-overlay::after {
     content: "";
     position: absolute;
     inset: 0;
     background: linear-gradient(to right,
             rgba(247, 245, 240, .7) 0%,
             rgba(247, 245, 240, .2) 28%,
             transparent 55%);
     z-index: 2;
     pointer-events: none;
     border-radius: inherit;
 }

 /* ——— stories ——— */
 .stories-grid {
     display: grid;
     grid-template-columns: 1.1fr .9fr;
     gap: 32px;
     align-items: stretch
 }

 .story {
     background: var(--white);
     border: 1px solid var(--rule);
     border-radius: 18px;
     padding: 32px;
     display: flex;
     flex-direction: column;
     gap: 18px
 }

 .story .q {
     font-family: var(--font-display);
     font-size: 20px;
     font-weight: 500;
     line-height: 1.4;
     color: var(--ink);
     letter-spacing: -0.01em
 }

 .story .who {
     display: flex;
     align-items: center;
     gap: 14px;
     margin-top: auto;
     padding-top: 18px;
     border-top: 1px solid var(--rule)
 }

 .story .who .av {
     width: 52px;
     height: 52px;
     border-radius: 50%;
     background: linear-gradient(135deg, var(--sky-soft), var(--sky))
 }

 .story .who .n {
     font-weight: 600;
     color: var(--navy)
 }

 .story .who .d {
     font-family: var(--font-mono);
     font-size: 11px;
     letter-spacing: .1em;
     color: var(--ink-mute);
     text-transform: uppercase;
     margin-top: 2px
 }

 .story.feature {
     background: var(--navy);
     color: #fff
 }

 .story.feature .q {
     color: #fff
 }

 .story.feature .who {
     border-top-color: rgba(255, 255, 255, .14)
 }

 .story.feature .who .n {
     color: #fff
 }

 .story.feature .who .d {
     color: rgba(255, 255, 255, .55)
 }

 .story.feature .who .av {
     background: linear-gradient(135deg, var(--accent), var(--accent-deep))
 }

 .story .stars {
     color: var(--accent);
     letter-spacing: 2px
 }

 .mini-cards {
     display: grid;
     grid-template-columns: 1fr;
     gap: 14px
 }

 .mini {
     background: var(--white);
     border: 1px solid var(--rule);
     border-radius: 14px;
     padding: 18px;
     display: flex;
     gap: 16px;
     align-items: center
 }

 .mini .av {
     width: 42px;
     height: 42px;
     border-radius: 50%;
     flex-shrink: 0;
     background: linear-gradient(135deg, #f4d3a8, var(--accent-deep))
 }

 .mini .av.b {
     background: linear-gradient(135deg, var(--sky-soft), var(--sky))
 }

 .mini .av.c {
     background: linear-gradient(135deg, #D6ECD6, #2F7A44)
 }

 .mini h5 {
     font-size: 14px;
     font-weight: 600;
     color: var(--navy);
     margin: 0
 }

 .mini p {
     font-size: 12px;
     color: var(--ink-soft);
     margin-top: 2px
 }


 /*Mail*/

 .ii.gt a {
     text-decoration: none !important;
 }

 .chart-wrapper {
     background: var(--navy);
     border-radius: 14px;
     padding: 32px 36px 36px;
     width: 100%;
     max-width: 1200px;
 }

 .chart-title {
     text-align: center;
     font-size: 25px;
     font-weight: 500;
     color: #ffffff;
     margin-bottom: 28px;
 }

 table {
     width: 100%;
     border-collapse: collapse;
 }

 thead tr th {
     font-size: 12px;
     font-weight: 700;
     letter-spacing: 0.13em;
     text-transform: uppercase;
     color: #7a90aa;
     padding-bottom: 14px;
     text-align: center;
 }



 /* Divider line under header */
 .chart-wrapper thead tr th {
     border-bottom: 1px solid rgba(255, 255, 255, 0.07);
 }

 .chart-wrapper tbody tr td {
     padding: 10px 0;
     vertical-align: middle;
     text-align: center;
     border: 0 !important
 }

 /* Row separator */
 .chart-wrapper tbody tr+tr td {
     border-top: 1px solid rgba(255, 255, 255, 0.05);
 }

 /* NO column */
 .col-no {
     font-size: 13px;
     color: #c8d8e8;
     font-weight: 600;
     padding-right: 12px;
 }

 /* Pill badge */
 .pill {
     display: inline-block;
     background: rgba(255, 255, 255, .1);
     border-radius: 8px;
     padding: 10px 20px;
     font-size: 14px;
     font-weight: 500;
     color: #ffffff;
     min-width: 240px;
     text-align: center;
     border: 1px solid #dddddd4a;
 }

 /* CEFR column */
 .col-cefr {
     font-size: 18px;
     font-weight: 500;
     color: #f0a030;
     padding-left: 8px;
 }

 /* Proficiency pill — wider */
 .pill-wide {
     min-width: 240px;
 }

 /* IELTS Card Features */
 .ielts-features {
     list-style: none;
     padding: 0;
     margin: 0;
     width: 100%;
 }

 .ielts-features li {
     display: flex;
     align-items: center;
     gap: 12px;
     padding: 14px 0;
     border-bottom: 1px solid rgba(255, 255, 255, 0.15);
     font-size: 15px;
     color: #ffffff;
     font-weight: 500;
     justify-content: center;
 }

 .ielts-features li:last-child {
     border-bottom: 1px solid rgba(255, 255, 255, 0.15);
 }

 .ielts-features li i {
     color: #f5c469;
     font-size: 18px;
     width: 24px;
     text-align: center;
 }

 .ielts-features li i.fa-book-open {
     color: #f5c469;
     /* Keep the icon yellow/gold */
 }

 .ielts-features li i.fa-globe {
     color: #f5c469;
 }

 .ielts-features li i.fa-award {
     color: #f5c469;
     font-size: 22px;
 }

 .ielts-features li:nth-child(1) span {
     color: #f5c469;
 }

 .ielts-features li b {
     color: #f5c469;
     font-weight: 600;
 }

 .ielts-features .dot {
     margin: 0 4px;
     opacity: 0.8;
 }

 .uni-row {
     display: flex;
     gap: 10px;
     justify-content: center;
     flex-wrap: wrap;
 }

 .uni-row .bk {
     border: 1px solid rgba(255, 255, 255, 0.4);
     color: white;
     padding: 6px 16px;
     border-radius: 20px;
     font-size: 12px;
     text-transform: uppercase;
     letter-spacing: 0.05em;
 }

 .uni-row .bk.hi {
     background: white;
     color: var(--navy);
     border-color: white;
     font-weight: 600;
 }

 .floatc.a .ic {
     background: #eef2fa;
     color: #628cd1;

 }

 .wrapper {
     max-width: 1200px;
     margin: 0 auto;
     display: flex;
     flex-direction: column;
     gap: 0px;
 }

 /* Section label */
 .section-label {
     font-size: 13px;
     font-weight: 700;
     letter-spacing: 0.15em;
     text-transform: uppercase;
     color: #8899aa;
     margin-bottom: 10px;
 }

 /* Card base */
 .card {
     background: var(--navy);
     border-radius: 12px;
     padding: 28px 32px 32px;
     position: relative;
     overflow: hidden;
     margin-bottom: 40px;
 }

 /* Decorative circle accent */
 .card::after {
     content: '';
     position: absolute;
     right: -28px;
     top: -28px;
     width: 120px;
     height: 120px;
     border-radius: 50%;
     background: rgb(253 253 253 / 8%);
     pointer-events: none;
 }



 .card-title {
     font-size: 19px;
     font-weight: 500;
     color: #ffffff;
     margin-bottom: 16px;
     position: relative;
     z-index: 1;
 }

 ol,
 ul {
     padding-left: 0;
     list-style: none;
     position: relative;
     z-index: 1;
     margin-bottom: 0 !important;
 }

 ol li {
     display: flex;
     gap: 10px;
     font-size: 16px;
     color: #c8d8e8;
     margin-bottom: 8px;
     align-items: flex-start;
 }

 ol li .num {
     color: #f0a030;
     font-weight: 500;
     min-width: 18px;
     flex-shrink: 0;
 }

 .card ul li {
     display: flex;
     gap: 10px;
     font-size: 14px;
     color: #c8d8e8;
     margin-bottom: 8px;
     align-items: flex-start;
 }

 .card ul li::before {
     content: '•';
     color: #c8d8e8;
     flex-shrink: 0;
     margin-top: 1px;
 }

 /* Two-column grid */
 .grid-2 {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: 20px;
 }

 /* Task label */
 .task-label {
     font-size: 13px;
     font-weight: 600;
     letter-spacing: 0.12em;
     text-transform: uppercase;
     color: #f0a030;
     margin-bottom: 6px;
     margin-top: 14px;
 }

 .task-label:first-of-type {
     margin-top: 0;
 }

 .task-text {
     font-size: 13.5px;
     color: #c8d8e8;
     line-height: 1.55;
     position: relative;
     z-index: 1;
 }



 /* ============================================================
   RESPONSIVE — TABLET (≤ 1024px)
   ============================================================ */
 @media (max-width: 1024px) {

     /* stories */
     .stories-grid {
         grid-template-columns: 1fr
     }

     .story .q {
         font-size: 20px
     }



     .russia-section {
         grid-template-columns: 1fr 1fr;
         grid-template-rows: auto auto;
         border-radius: 20px;

     }

     .col-left {
         grid-column: 1 / 2;
         grid-row: 1 / 2;
         padding: 48px 36px 36px 40px;
     }

     .col-mid {
         grid-column: 2 / 3;
         grid-row: 1 / 2;
         padding: 48px 36px 36px 16px;
         margin-right: 0 !important;
     }

     .col-right {
         grid-column: 1 / 3;
         grid-row: 2 / 3;
         border-radius: 0 0 20px 20px;
         height: 260px;
     }

     .col-left h2 {
         font-size: clamp(28px, 4.5vw, 42px);
     }

     .trust-row {
         grid-template-columns: repeat(2, 1fr);
         gap: 18px;
     }

     .contact-card {
         padding: 28px 24px;
         max-width: 100% !important;
     }

     .photo-overlay::after {
         background: linear-gradient(to bottom,
                 rgba(247, 245, 240, .5) 0%,
                 transparent 40%);
     }

     .country-badge {
         bottom: 20px;
         right: 20px;
     }

     .flight-path {
         display: none;
     }
 }

 /* ============================================================
   RESPONSIVE — MOBILE (≤ 767px)
   ============================================================ */
 @media (max-width: 767px) {


     .pull blockquote {
         font-size: 20px !important;
     }

     /* stories */
     .stories-grid {
         grid-template-columns: 1fr
     }

     .story {
         padding: 24px
     }

     .story .q {
         font-size: 18px
     }


     .russia-section .container {
         grid-template-columns: 1fr;
         grid-template-rows: auto auto auto;
         border-radius: 16px;
         padding-bottom: 60px !important;
     }

     .col-left {
         grid-column: 1;
         grid-row: 1;
         padding: 36px 24px 28px;
     }

     .col-left h2 {
         font-size: clamp(26px, 7vw, 36px);
         max-width: none;
     }

     .col-left .lede {
         font-size: 14px;
         max-width: none;
         margin-bottom: 28px;
     }

     .trust-row {
         grid-template-columns: repeat(2, 1fr);
         gap: 14px;
     }

     .trust-icon {
         width: 40px;
         height: 40px;
     }

     .trust-item h4 {
         font-size: 12px;
     }

     .trust-item:nth-child(2) {
         border-right: none;
     }

     .trust-item p {
         font-size: 11px;
     }

     .col-mid {
         grid-column: 1;
         grid-row: 2;
         padding: 0 24px 28px;
         margin-top: 20px;
     }

     .contact-card {
         padding: 24px 20px;
         gap: 16px;
     }

     .contact-card h3 {
         font-size: 18px;
     }

     .action-btn {
         padding: 14px 16px;
         gap: 12px;
     }

     .action-btn .btn-icon {
         width: 38px;
         height: 38px;
     }

     .action-btn .btn-text strong {
         font-size: 14px;
     }

     .action-btn .btn-text span {
         font-size: 12px;
     }

     .col-right {
         grid-column: 1;
         grid-row: 3;
         border-radius: 0 0 16px 16px;
         height: 200px;
     }

     .photo-overlay::after {
         background: linear-gradient(to bottom,
                 rgba(247, 245, 240, .6) 0%,
                 transparent 50%);
     }

     .country-badge {
         bottom: 16px;
         right: 16px;
         padding: 10px 14px;
         gap: 10px;
         min-width: 150px;
     }

     .badge-icon {
         width: 34px;
         height: 34px;
     }

     .badge-text strong {
         font-size: 14px;
     }

     .badge-text span {
         font-size: 12px;
     }
 }

 /* ============================================================
   RESPONSIVE — SMALL MOBILE (≤ 480px)
   ============================================================ */
 @media (max-width: 480px) {
     .trust-row {
         grid-template-columns: repeat(2, 1fr);
         gap: 12px;
     }

     .col-left {
         padding: 28px 20px 24px;
     }

     .col-mid {
         padding: 0 20px 24px;
     }
 }