/* ══════════════════════════════════════════
    LIGHT MODE (default)
══════════════════════════════════════════ */
:root {
    --bg-dark:            #ffffff;
    --bg-card:            #ffffff;
    --bg-card2:           #f3f3f3;
    --accent-cyan:        #00aeef;
    --accent-cyan-glow:   rgba(0,153,204,.15);
    --accent-purple:      #7c3aed;
    --accent-purple-light:#9d5cff;
    --text-white:         #0f1117;
    --text-muted:         #6b7280;
    --text-light:         #374151;
    --border:             rgb(0 0 0 / 5%);
    --nav-bg:             rgba(255,255,255,0.95);
    --gradient-hero:      linear-gradient(135deg,#ffffff 0%,#ffffff 50%,#ffffff 100%);
    --button-gradient:    linear-gradient(135deg, #3E46A3 0%, #00AEEF 100%);
    --hero-bg-text-clr:   rgba(0,0,0,.04);
    --section:            #ffffff;
    --section-alt:        #f5f9ff;
    --footer-bg:          #eeeeee;
    --footer-text:        rgb(0 0 0 / 60%);
    --footer-head:        #393939;
    --footer-border:      rgb(209 209 209 / 54%);
    --trusted-bg:         #def4ff;
    --trusted-border:     #bce9ff;
    --offcanvas-bg:       #ffffff;
    --mockup-bg:          rgba(0,0,0,.04);
    --mockup-border:      rgba(0,0,0,.08);
    --floating-bg:        #ffffff;
    --floating-border:    rgba(0,153,204,.3);
    --star-glow:          rgba(124,58,237,.35);
    --phone-bg1:          #e8edf8;
    --phone-bg2:          #dde4f5;
    --phone-inner1:       #4a6fa5;
    --phone-inner2:       #7c5cbf;
    --cm-header-bg:       rgba(0,0,0,.05);
    --mockup-card-bg:     rgba(0,0,0,.05);
    --challenge-icon-bg:  rgba(0,153,204,.1);
    --challenge-icon-bd:  rgba(0,153,204,.25);
    --hero-radial1:       rgba(124,58,237,.10);
    --hero-radial2:       rgba(0,153,204,.06);
}

/* ══════════════════════════════════════════
    DARK MODE  [data-theme="dark"]
══════════════════════════════════════════ */
[data-theme="dark"] {
    --bg-dark:            #0a0a0f;
    --bg-card:            #111118;
    --bg-card2:           #13131c;
    --accent-cyan:        #00aeef;
    --accent-cyan-glow:   rgba(0,229,255,.12);
    --text-white:         #ffffff;
    --text-muted:         #9ca3af;
    --text-light:         #ffffff;
    --border:             rgba(255,255,255,0.07);
    --nav-bg:             rgba(10,10,15,0.92);
    --gradient-hero:      linear-gradient(135deg,#0a0a0f 0%,#0f0f1a 50%,#080814 100%);
    --button-gradient:    linear-gradient(135deg, #3E46A3 0%, #00AEEF 100%);
    --hero-bg-text-clr:   rgba(255,255,255,.03);
    --section:            #0d0d14;
    --section-alt:        #18181c;
    --footer-bg:          #18181c;
    --footer-text:        #9ca3af;
    --footer-head:        #ffffff;
    --footer-border:      rgba(255,255,255,.07);
    --trusted-bg:         #1f3e5f;
    --trusted-border:     #294e76;
    --offcanvas-bg:       #0e0e18;
    --mockup-bg:          rgba(255,255,255,.05);
    --mockup-border:      rgba(255,255,255,.1);
    --floating-bg:        rgba(17,17,24,.9);
    --floating-border:    rgba(0,229,255,.2);
    --star-glow:          rgba(157,92,255,.6);
    --phone-bg1:          #1a1a2e;
    --phone-bg2:          #16213e;
    --phone-inner1:       #0f3460;
    --phone-inner2:       #533483;
    --cm-header-bg:       rgba(255,255,255,.06);
    --mockup-card-bg:     rgba(255,255,255,.06);
    --challenge-icon-bg:  rgba(0,229,255,.1);
    --challenge-icon-bd:  rgba(0,229,255,.2);
    --hero-radial1:       rgba(124,58,237,.18);
    --hero-radial2:       rgba(0,229,255,.08);
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }



body {
    font-family: "Afacad", sans-serif;
    background: var(--bg-dark);
    color: var(--text-white);
    overflow-x: hidden;
    font-size: 18px;
}

h1,h2,h3,h4,h5 {font-family: "Afacad", sans-serif;  }

/* ── NAVBAR ── */
.navbar-custom {
    background: var(--nav-bg);
    backdrop-filter: blur(16px);
    border-bottom: 1px solid var(--border);
    padding: 14px 0;
    position: sticky;
    top: 0;
    z-index: 1000;
    transition: background .35s ease, border-color .25s ease;
}
.navbar-brand span { font-family: "Afacad", sans-serif; font-weight:800; font-size:1.4rem; }
.brand-logo {
    display:inline-flex; align-items:center; gap:2px;
    font-family: "Afacad", sans-serif; font-weight:800; font-size:1.3rem; color:var(--text-white);
    text-decoration:none;
}
.brand-logo .x { color: var(--accent-cyan); }
.nav-link-custom {
    color: var(--text-light) !important;
    font-weight:500;
    transition: color .2s;
    text-decoration:none;
}
.nav-link-custom:hover { color: var(--accent-cyan) !important; }
.btn-trial {
    background: var(--accent-cyan);
    color: #000 !important;
    font-weight:700; 
    border-radius:6px; padding:7px 18px;
    transition: all .2s;
    border:none;
}
.btn-trial:hover { background:#00c8e0; transform:translateY(-1px); }

/* ── HERO ── */
.hero-section {
    background: var(--gradient-hero);
    position: relative;
    overflow: hidden;
    padding: 80px 0 80px;
    transition: background .35s ease;
}
.hero-section::before {
    content:'';
    position:absolute; top:0; left:0; right:0; bottom:0;
    background: radial-gradient(ellipse 60% 50% at 70% 50%, var(--hero-radial1) 0%, transparent 70%),
                radial-gradient(ellipse 40% 40% at 20% 30%, var(--hero-radial2) 0%, transparent 60%);
    pointer-events:none;
}
.hero-bg-text {
    position:absolute; 
    left:50%;
    transform:translate(-50%,-25%);
    width:95%;
}
.hero-bg-text .img-fluid {
    width: 100%;
    opacity: 0.2;
    filter: blur(5px);
}
html[data-theme="dark"] .hero-bg-text .img-fluid {
    filter: blur(1px);
}
.hero-tag {
    display:inline-block; background:rgb(0 76 255 / 8%);
    color:var(--accent-cyan); font-size:.75rem; font-weight:600;
    padding:4px 12px; border-radius:20px; border:1px solid rgba(0,229,255,.25);
    margin-bottom:20px;
}
.hero-title { font-size: clamp(2.2rem,5vw,4.5rem); font-weight:400; line-height:1.1; }
.hero-title .highlight {     
    background: var(--button-gradient);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;font-weight:700; 
}
.hero-subtitle {
    color: var(--text-muted);
    font-size: 18px;
    margin: 14px 0 28px;
    max-width: 400px;
    line-height: normal;
}
.hero-features { list-style:none; padding:0; margin:0 0 30px; }
.hero-features li {
     color:var(--text-light);
    padding:4px 0; display:flex; align-items:center; gap:8px;
}
.hero-features li::before {
    content:''; width:6px; height:6px; border-radius:50%;
    background:var(--accent-cyan); flex-shrink:0;
}
.hero-features-grid {
    display:grid; grid-template-columns:1fr 1fr; gap:0 10px;
}

.wrap {
  perspective: 600px;
  perspective-origin: 50% 45%;
}



.btn-cta-primary {
    background: var(--button-gradient);
    color: #ffffff;
    font-weight: 600;
    border: none;
    padding: 8px 30px;
    transition: all .2s;
    text-decoration: none;
    display: inline-block;
    border-radius: 30px;
}
.btn-cta-primary:hover {transform:translateY(-2px); }
.btn-cta-outline {
    color:var(--text-light); 
    font-weight:600;
    border-radius:30px;
    padding: 8px 30px; transition:all .2s;
    border: 1px solid transparent;
    background:
        var(--gradient-hero) padding-box,
        var(--button-gradient) border-box;
    text-decoration:none; display:inline-block;
}
.btn-cta-outline:hover {transform:translateY(-2px); }
.navbar-custom .btn-cta-primary, 
.navbar-custom .btn-cta-outline {
    padding: 5px 30px;
}

.stat-item { text-align:left; }
.stat-number {
    font-family: "Afacad", sans-serif; 
    font-size:2rem; 
    font-weight:800;
    background: var(--button-gradient);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    display: inline-block;
}
.stat-label { color:var(--text-muted); font-size:.78rem; }



/* ── TRUSTED BAR ── */
.trusted-bar {
    background: var(--trusted-bg);
    border-top:1px solid var(--trusted-border);
    border-bottom:1px solid var(--trusted-border);
    padding:30px 0;
    transition: background .35s ease;
}
.trusted-label { color:var(--accent-cyan); margin-right:24px; white-space:nowrap; }
.brand-logos { display:flex; align-items:center; gap:30px; flex-wrap:wrap; }
.brand-logo-item {
    transition: color .2s;
}
.brand-logo-item:hover { color:var(--text-white); }
.brand-logo-item img {
    width: 78px;
}
html[data-theme="dark"] .brand-logo-item img {
    filter: contrast(0) brightness(2.5);
}

/* ── SECTIONS COMMON ── */
.section-tag {
    display: inline-block;
    background: rgb(0 76 255 / 8%);
    color: var(--accent-cyan);
    font-size: .72rem;
    font-weight: 600;
    padding: 5px 14px 4px 25px;
    border-radius: 20px;
    border: 1px solid rgb(122 160 248 / 20%);
    margin-bottom: 16px;
    position: relative;
}
.section-tag:before {
    content: '';
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--accent-cyan);
    flex-shrink: 0;
    position: absolute;
    top: 10px;
    left: 12px;
}
.section-title { font-size: clamp(1.8rem,3vw,3rem); font-weight:400; line-height:1.15; }
.section-title .highlight { 
    font-weight:700;
    background: var(--button-gradient);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent; 
}
.section-subtitle { color:var(--text-muted);font-size:18px; }

/* ── CHALLENGES ── */
.challenges-section { background: var(--section); padding:90px 0; transition: background .35s ease; }
.challenges-section.alt { background: var(--section-alt); }
.challenge-list {
    position: relative;
}
.challenge-list:before {
    content: "";
    height: 100%;
    width: 2px;
    position: absolute;
    background: linear-gradient(180deg, rgba(138, 79, 211, 0.5) 0%, rgba(22, 196, 187, 0.5) 100%);
    left: 9px;
    z-index: 0;
}
.challenge-item {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 10px 0;
}
.challenge-icon {
    width: 20px;
    height: 20px;
    border-radius: 21px;
    border: 1px solid var(--challenge-icon-bd);
    background: var(--button-gradient);
    position: relative;
}
.challenge-text { color:var(--text-light);font-weight: 700; }


.challenges-section.alt .challenge-list:before {
    right: 9px;
    left:auto;
}
.challenges-section.alt .challenge-item {
    flex-direction: row-reverse;
}
.challenges-section.alt .heading-area{
    justify-content: end;
    display: flex;
    flex-direction: column;
    align-items: end;
}

.ai-visual {
    display:flex; align-items:center; justify-content:center;
}
.ai-star {
    width:200px; height:200px; position:relative;
}
.star-shape {
    width:100%; height:100%;
    background: linear-gradient(135deg, #7c3aed, #9d5cff, #c084fc);
    clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%);
    box-shadow: 0 0 60px rgba(157,92,255,.6);
    animation: rotateStar 8s linear infinite;
}
@keyframes rotateStar { from{transform:rotate(0)} to{transform:rotate(360deg)} }

/* ── WHY CHOOSE ── */
.why-section { background: var(--section-alt); padding:90px 0; transition: background .35s ease; }
.why-card {
    background: var(--bg-card);
    border:1px solid var(--border);
    border-radius:14px;
    padding: 24px;
    transition: all .3s;
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
}
.why-card:hover {
    border-color:rgba(0,153,204,.35);
    box-shadow:0 8px 30px var(--accent-cyan-glow);
    transform:translateY(-3px);
}
.why-icon {
    width: 50px;
    height: 50px;
    border-radius:10px;
    background: var(--challenge-icon-bg);
    border:1px solid var(--challenge-icon-bd);
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--accent-cyan);
    font-size:1rem;
    margin-bottom: 0;
}
.why-card h6 {font-family: "Afacad", sans-serif;font-size: 24px;font-weight:700;margin-bottom: 0;color:var(--text-white);line-height: 24px;}
.why-content {
    width: calc(100% - 65px);
}
/* ── MOBILE ── */
.mobile-section { padding:90px 0; transition: background .35s ease; }
.mobile-mockup {
    position: relative;
}
.overlay-plmex-icon {
    position: absolute;
    width: 187px;
    height: 187px;
    background: #00000000;
    backdrop-filter: blur(5px);
    display: flex;
    align-items: center;
    justify-content: center;
    top: 42%;
    left: 65%;
    transform: translate(-50%,-50%);
    border-radius: 23px;
    box-shadow: 0 0 1px #b4b4b4;
}
.overlay-plmex-icon img {
    width: 80%;
}
.mobile-feature {
    display:flex; align-items:center; gap:10px;
    padding:6px 0;  color:var(--text-light);
}
.mobile-feature i { color:var(--accent-cyan); font-size:.75rem; }
.store-btn {
    display:inline-flex; align-items:center; gap:8px;
    background: var(--bg-card2); border:1px solid var(--border);
    border-radius:10px; padding:9px 18px; text-decoration:none; color:var(--text-white);
    font-size:1.5rem; transition:all .2s;
}
.store-btn span {
    display: block;
    line-height: 20px;
}
.store-btn:hover { border-color:var(--accent-cyan); color:var(--accent-cyan); }
.store-btn i { font-size:2rem; }


/* ── TESTIMONIALS ── */
.testimonials-section { background: var(--section-alt); padding:90px 0; transition: background .35s ease; }
.testimonial-card {
    background: var(--bg-card); border:1px solid var(--border);
    border-radius:14px; padding:22px; height:100%; transition:all .3s;
}
.testimonial-card:hover {
    border-color: var(--accent-cyan);
    box-shadow:0 8px 30px var(--accent-cyan-glow);
}
.stars { color:#facc15; font-size:.8rem; margin-bottom:12px; }
.testimonial-text { font-size:.83rem; color:var(--text-light); line-height:1.6; margin-bottom:16px; }
.reviewer { display:flex; align-items:center; gap:10px; }
.reviewer-avatar {
    width:36px; height:36px; border-radius:50%;
    background: linear-gradient(135deg, var(--accent-purple), var(--accent-cyan));
    display:flex; align-items:center; justify-content:center;
     font-weight:700; color:#fff;
}
.reviewer-name {  font-weight:600; color:var(--text-white); }
.reviewer-role { font-size:.72rem; color:var(--text-muted); }

/* ── CTA ── */
.cta-section {
    padding:100px 0; text-align:center; position:relative; overflow:hidden;
    transition: background .35s ease;
}
.cta-section::before {
    content:'';
    position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);
    width:600px; height:300px;
    background: radial-gradient(ellipse, rgba(124,58,237,.12) 0%, transparent 70%);
    pointer-events:none;
}
.cta-title { font-size: clamp(2rem,4vw,3rem); font-weight:800; line-height:1.15; }
.cta-title .highlight { color:var(--accent-cyan); }
.cta-subtitle { color:var(--text-muted); font-size:.9rem; max-width:500px; margin:0 auto 32px; }
.cta-badges {
    display:flex; align-items:center; justify-content:center; gap:24px;
    flex-wrap:wrap; margin-top:20px;
}
.cta-badge {
    display:flex; align-items:center; gap:6px;
    font-size:.78rem; color:var(--text-muted);
}
.cta-badge i { color:var(--accent-cyan); }

/* ── FOOTER ── */
.footer { 
    background: var(--footer-bg); padding:60px 0 30px; 
    /* border-top:1px solid var(--footer-border);  */
    transition: background .35s ease; 
}
.footer-brand p {  color:var(--footer-text); margin-top:10px; line-height:1.4; }
.footer h6 { font-family: "Afacad", sans-serif;  font-weight:700; margin-bottom:16px; color: var(--footer-head); }
.footer-links { list-style:none; padding:0; margin:0; }
.footer-links li { margin-bottom:10px; }
.footer-links a {
    color: var(--footer-text);
    text-decoration: none;
    transition: color .2s;
    line-height: 20px;
    display: block;
}
.footer-links a:hover { color:var(--accent-cyan); }
.social-icons { display:flex; gap:12px; margin-top:12px; }
.social-icons a {
    width:32px; height:32px; border-radius:8px;
    background:rgba(255,255,255,.06); border:1px solid var(--footer-border);
    display:flex; align-items:center; justify-content:center;
    color: var(--footer-text); font-size:.8rem; transition:all .2s;
    text-decoration:none;
}
.social-icons a:hover { background:rgba(0,229,255,.1); border-color:rgba(0,229,255,.3); color:var(--accent-cyan); }
.footer-bottom {
    border-top:1px solid var(--footer-border); margin-top:40px; padding-top:20px;
    font-size:.78rem; color: var(--footer-text);
}

/* Utilities */
.text-cyan { color: var(--accent-cyan); }
.divider { height:1px; background:var(--border); margin:0; }

/* ── HAMBURGER ── */
.hamburger-btn {
    flex-direction:column; justify-content:center; align-items:center;
    gap:5px; width:38px; height:38px; background: var(--bg-card2);
    border:1px solid var(--border); border-radius:8px; cursor:pointer;
    padding:0; transition:all .2s;
}
.hamburger-btn:hover { background: var(--accent-cyan-glow); border-color:var(--accent-cyan); }
.hamburger-btn span {
    display:block; width:18px; height:2px;
    background: var(--text-white); border-radius:2px; transition:all .3s;
}

/* ── THEME TOGGLE BUTTON ── */
.theme-toggle-btn {
    width: 35.6px;
    height: 35.6px;
    border-radius: 40px;
    background: var(--bg-card2);
    border: 1px solid var(--border);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all .25s ease;
    flex-shrink: 0;
    position: relative;
    overflow: hidden;
}
.theme-toggle-btn:hover {
    background: var(--accent-cyan-glow);
    border-color: var(--accent-cyan);
}
.theme-toggle-btn .icon-sun,
.theme-toggle-btn .icon-moon {
    position:absolute; font-size:.95rem;
    transition: transform .35s cubic-bezier(.34,1.56,.64,1), opacity .25s ease;
}
/* Light mode: show moon (to switch TO dark) */
.theme-toggle-btn .icon-moon  { opacity:1; transform:rotate(0deg) scale(1); color:#7c3aed; }
.theme-toggle-btn .icon-sun   { opacity:0; transform:rotate(90deg) scale(.5); color:#f59e0b; }
/* Dark mode: show sun (to switch TO light) */
[data-theme="dark"] .theme-toggle-btn .icon-moon { opacity:0; transform:rotate(-90deg) scale(.5); }
[data-theme="dark"] .theme-toggle-btn .icon-sun  { opacity:1; transform:rotate(0deg) scale(1); }

/* ── OFFCANVAS ── */
.offcanvas-nav {
    width: 280px !important;
    background: var(--offcanvas-bg) !important;
    border-left: 1px solid var(--border) !important;
    transition: background .35s ease !important;
}
.offcanvas-header {
    padding: 20px 24px;
    border-bottom: 1px solid var(--border);
    display: flex; align-items: center; justify-content: space-between;
}
.offcanvas-close-btn {
    width:34px; height:34px; background: var(--bg-card2);
    border:1px solid var(--border); border-radius:8px; cursor:pointer;
    color:var(--text-muted); font-size:.9rem; display:flex;
    align-items:center; justify-content:center; transition:all .2s;
}
.offcanvas-close-btn:hover { background: var(--accent-cyan-glow); color:var(--accent-cyan); border-color:var(--accent-cyan); }
.offcanvas-body { padding: 28px 24px; }
.offcanvas-nav-links { display:flex; flex-direction:column; gap:6px; }
.offcanvas-link {
    display:block; padding:12px 16px; color:var(--text-light);
    text-decoration:none; font-size:.95rem; font-weight:500;
    border-radius:10px; border:1px solid transparent; transition:all .2s;
}
.offcanvas-link:hover {
    background: var(--accent-cyan-glow); border-color:var(--accent-cyan);
    color:var(--accent-cyan);
}
.offcanvas-backdrop { background:rgba(0,0,0,.55) !important; }
@media (min-width: 1400px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
        max-width: 1144px;
    }
}
/* ══════════════════════════════════════════
    RESPONSIVE — MOBILE (≤767px)
    Desktop layout preserved above this breakpoint.
══════════════════════════════════════════ */
@media (max-width: 767px) {

  /* ── BASE ── */
  body { font-size: 16px; }

  /* ── NAVBAR ── */
  .navbar-custom { padding: 10px 0; }
  .navbar-custom .container { padding-left: 16px; padding-right: 16px; }
  .brand-logo img { width: 130px !important; }

  /* Tighten the right-side pill buttons */
  .btn-cta-primary,
  .navbar-custom .btn-cta-primary { padding: 7px 16px; font-size: .82rem; }

  /* ── HERO ── */
  .hero-section { padding: 44px 0 36px; }
  .hero-section .container { padding-left: 20px; padding-right: 20px; }
  .hero-title { font-size: clamp(2rem, 9vw, 2.6rem); }
  .hero-subtitle { font-size: 15px; margin: 12px 0 22px; max-width: 100%; }
  .hero-features { margin-bottom: 22px; }
  .hero-features-grid { grid-template-columns: 1fr; gap: 0; }
  .hero-features li { font-size: 14px; }

  /* Hero CTA buttons — stack nicely */
  .hero-section .d-flex.gap-3.flex-wrap { gap: 10px !important; }
  .hero-section .btn-cta-primary,
  .hero-section .btn-cta-outline {
    width: 100%;
    text-align: center;
    padding: 11px 20px;
    font-size: .95rem;
  }

  /* Stats row */
  .hero-section .d-flex.gap-5.flex-wrap { gap: 24px !important; }
  .stat-number { font-size: 1.6rem; }
  .stat-label { font-size: .72rem; }

  /* Hero mockup — full-width below text */
  .hero-mockup { margin-top: 0; text-align: center; }
  .hero-mockup img { max-width: 92%; }

  /* ── TRUSTED BAR ── */
  .trusted-bar { padding: 20px 0; }
  .trusted-bar .d-flex { flex-direction: column; align-items: flex-start !important; gap: 14px !important; }
  .trusted-label { font-size: .78rem; margin-right: 0; }
  .brand-logos { gap: 16px; flex-wrap: wrap; }
  .brand-logo-item img { width: 76px; }

  /* ── SECTION COMMON ── */
  .challenges-section,
  .challenges-section.alt,
  .why-section,
  .mobile-section,
  .testimonials-section,
  .cta-section { padding: 52px 0; }

  .section-title { font-size: clamp(1.55rem, 6vw, 2rem); }
  .section-subtitle { font-size: 15px; }

  /* heading area — always left-align on mobile */
  .challenges-section.alt .heading-area {
    align-items: flex-start !important;
    text-align: left !important;
  }

  /* ── CHALLENGES / SOLUTIONS ── */
  .challenge-item { gap: 14px; padding: 8px 0; }
  .challenge-text { font-size: 15px; }

  /* On mobile, flip the alt section back to normal order */
  .challenges-section.alt .challenge-item { flex-direction: row; }
  .challenges-section.alt .challenge-list:before { right: auto; left: 9px; }

  /* Stack image below list on mobile */
  .challenges-section .row.gy-5 > .col-lg-6:last-child,
  .challenges-section.alt .row.gy-5 > .col-lg-6:first-child {
    order: 2;
  }
  .challenges-section .row.gy-5 > .col-lg-6:first-child,
  .challenges-section.alt .row.gy-5 > .col-lg-6:last-child {
    order: 1;
  }
  .challenges-mockup { max-width: 100%; border-radius: 12px; }

  /* AI star — shrink */
  .ai-star { width: 120px; height: 120px; }

  /* ── WHY CARDS ── */
  .why-card { padding: 18px; gap: 12px; }
  .why-icon { width: 42px; height: 42px; flex-shrink: 0; }
  .why-card h6 { font-size: 18px; line-height: 22px; }
  .why-content { width: calc(100% - 54px); }

  /* ── MOBILE SECTION ── */
  .mobile-section .col-lg-6:last-child { order: -1; margin-bottom: 28px; }
  .mobile-mockup img { max-width: 72%; margin: 0 auto; display: block; }
  .overlay-plmex-icon {
    width: 110px;
    height: 110px;
    border-radius: 16px;
    top: 44%;
    left: 66%;
  }
  .mobile-feature { font-size: 14px; padding: 5px 0; }
  .store-btn { font-size: 1.2rem; padding: 8px 14px; }
  .store-btn i { font-size: 1.6rem; }
  .store-btn span { font-size: .85rem; }
  .store-btn span div { font-size: .75rem !important; }

  /* ── TESTIMONIALS ── */
  .testimonial-card { padding: 18px; }
  .testimonial-text { font-size: .82rem; }
  .reviewer-name { font-size: .85rem; }
  .reviewer-role { font-size: .68rem; }

  /* ── CTA ── */
  .cta-title { font-size: clamp(1.6rem, 6vw, 2rem); }
  .cta-subtitle { font-size: .85rem; }
  .cta-section .d-flex { flex-direction: column; align-items: center; gap: 12px !important; }
  .cta-section .btn-cta-primary,
  .cta-section .btn-cta-outline {
    width: 100%;
    max-width: 280px;
    text-align: center;
    padding: 12px 20px;
  }
  .cta-badges { flex-direction: column; gap: 10px; align-items: center; }
  .cta-badge { font-size: .76rem; }

  /* ── FOOTER ── */
  .footer { padding: 44px 0 24px; }
  .footer-brand p { font-size: .85rem; max-width: 100%; }
  .footer h6 { margin-bottom: 12px; }
  .footer-links li { margin-bottom: 8px; }
  .footer-links a { font-size: .85rem; }
  .footer-bottom {
    margin-top: 28px;
    padding-top: 16px;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 6px !important;
    font-size: .72rem;
  }
  .social-icons { gap: 10px; }
  .social-icons a { width: 30px; height: 30px; font-size: .75rem; }

  /* ── OFFCANVAS ── */
  .offcanvas-nav { width: 260px !important; }
  .offcanvas-body { padding: 20px 18px; }
  .offcanvas-link { font-size: .9rem; padding: 10px 14px; }

  /* ── CONTAINER PADDING ── */
  .container { padding-left: 20px !important; padding-right: 20px !important; }

  /* ── SECTION HEADING inline logo ── */
  .section-title img { width: 110px !important; vertical-align: middle; }
}

/* ── SMALL PHONES (≤390px) ── */
@media (max-width: 390px) {
  .hero-title { font-size: 1.85rem; }
  .hero-section .btn-cta-primary,
  .hero-section .btn-cta-outline { padding: 10px 16px; font-size: .88rem; }
  .brand-logo img { width: 115px !important; }
  .btn-cta-primary { font-size: .78rem; padding: 6px 12px; }
  .mobile-mockup img { max-width: 80%; }
  .overlay-plmex-icon { width: 90px; height: 90px; left: 65%; top: 43%; border-radius: 12px; }
}