/* ═══════════════════════════════════════════════════════════════════════
   PalmRekha — OVERRIDES STYLESHEET
   • Darkens palette by ~5%
   • Increases text size by ~20% across all sections
   • Complete mobile responsiveness (phones, tablets, small laptops)
   Include AFTER the existing inline <style> block so these rules win.
═══════════════════════════════════════════════════════════════════════ */

/* ──────────────────────────────────────────────────────────
   1) DARKEN THE PALETTE BY ~5%
   Every colour token is shifted ~5% darker / deeper.
────────────────────────────────────────────────────────── */
:root {
  --ink:    #0e0a05 !important;   /* was #130e07 */
  --ink2:   #181108 !important;   /* was #1f1609 */
  --gold:   #b89a45 !important;   /* was #c9a84c */
  --gold2:  #d8c492 !important;   /* was #e8d5a0 */
  --gold3:  #e5dabf !important;   /* was #f5ead0 */
  --parch:  #f4ecdf !important;   /* was #fdf6ec */
  --parch2: #eee2c9 !important;   /* was #f8edda */
  --mist:   #d6cbbe !important;   /* was #e6ddd0 */
  --sage:   #355f46 !important;   /* was #3d6b4f */
}

/* Base body text colour follows the new parchment */
body {
  background: var(--ink) !important;
  color: var(--parch) !important;
  /* +20% base font-size: 15px → 18px */
  font-size: 18px !important;
  line-height: 1.7 !important;
}

/* ──────────────────────────────────────────────────────────
   2) INCREASE TEXT SIZES ~20% ACROSS EVERY SECTION
────────────────────────────────────────────────────────── */

/* --- Navigation --- */
.logo        { font-size: 21px !important; }
.nav-links a { font-size: 12px !important; }
.nav-cta     { font-size: 12px !important; padding: 9px 22px !important; }

/* --- Hero --- */
.hero-eyebrow { font-size: 13px !important; }
.hero-h1      { font-size: clamp(56px, 6.5vw, 90px) !important; }
.hero-sub     { font-size: 18px !important; line-height: 1.8 !important; }
.proof-text   { font-size: 14px !important; }
.proof-av     { width: 36px !important; height: 36px !important; font-size: 14px !important; }

/* --- Buttons --- */
.btn-primary       { font-size: 15px !important; padding: 18px 40px !important; }
.btn-ghost-link    { font-size: 14px !important; }

/* --- Palm scene labels / chips --- */
.palm-label  { font-size: 12px !important; }
.chip-num    { font-size: 24px !important; }
.chip-label  { font-size: 12px !important; }

/* --- Scroll hint --- */
.scroll-text { font-size: 12px !important; }

/* --- Section labels / eyebrows --- */
.section-label,
.process-eyebrow,
.full-intro-label,
.csh-label,
.res-eyebrow,
.scan-eyebrow { font-size: 14px !important; }

/* --- Upload section --- */
.upload-heading   { font-size: clamp(46px, 5vw, 68px) !important; }
.upload-sub       { font-size: 19px !important; line-height: 1.85 !important; }
.live-counter     { font-size: 14px !important; padding: 9px 18px !important; }
.upload-feat-txt  { font-size: 17px !important; }
.form-step-label  { font-size: 13px !important; }
.name-label       { font-size: 13px !important; }
.name-input       { font-size: 17px !important; padding: 16px 20px !important; }
.upload-box-title { font-size: 20px !important; }
.upload-box-sub   { font-size: 13px !important; }
.upload-box-tag   { font-size: 12px !important; }
.upload-action-btn{ font-size: 12px !important; padding: 9px 18px !important; }
.submit-btn       { font-size: 17px !important; padding: 20px !important; }
.submit-btn-sub   { font-size: 14px !important; }
.trust-badge      { font-size: 13px !important; }
.pricing-reveal   { font-size: 14px !important; }

/* --- Insights (palm lines) section --- */
.insights-h2    { font-size: clamp(40px, 4.5vw, 60px) !important; }
.insights-sub   { font-size: 17px !important; }
.insight-num    { font-size: 20px !important; }
.insight-name   { font-size: 30px !important; }
.insight-desc   { font-size: 17px !important; }

/* --- Process (how it works) --- */
.process-h2    { font-size: clamp(40px, 4.5vw, 60px) !important; }
.process-sub   { font-size: 17px !important; }
.step-circle   { font-size: 22px !important; width: 66px !important; height: 66px !important; }
.step-title    { font-size: 24px !important; }
.step-desc     { font-size: 16px !important; }

/* --- Testimonials --- */
.testi-h2      { font-size: clamp(40px, 4.5vw, 60px) !important; }
.testi-sub     { font-size: 17px !important; }
.stat-num      { font-size: 50px !important; }
.stat-label    { font-size: 13px !important; }
.testi-stars   { font-size: 16px !important; }
.testi-quote   { font-size: 20px !important; line-height: 1.7 !important; }
.testi-name    { font-size: 16px !important; }
.testi-loc     { font-size: 13px !important; }
.testi-av      { width: 42px !important; height: 42px !important; font-size: 16px !important; }

/* --- FAQ --- */
.faq-h2             { font-size: clamp(38px, 4.2vw, 58px) !important; }
.faq-desc           { font-size: 17px !important; }
.faq-q              { font-size: 18px !important; padding: 22px 0 !important; }
.faq-a              { font-size: 16px !important; line-height: 1.8 !important; }
.faq-img-badge-num  { font-size: 26px !important; }
.faq-img-badge-lbl  { font-size: 12px !important; }

/* --- CTA strip --- */
.cta-h2       { font-size: clamp(48px, 7vw, 95px) !important; }
.urgency      { font-size: 14px !important; }

/* --- Footer --- */
.footer-logo    { font-size: 24px !important; }
.footer-tagline { font-size: 15px !important; }
.footer-col-title { font-size: 12px !important; }
.footer-links a { font-size: 15px !important; }
.footer-bottom  { font-size: 14px !important; }

/* --- Float CTA --- */
.float-cta      { font-size: 15px !important; padding: 17px 40px !important; }

/* --- Scanning screen --- */
.scan-status-text { font-size: clamp(22px, 3.5vw, 30px) !important; }
.scan-palm-lbl    { font-size: 12px !important; }
.scan-pct         { font-size: 14px !important; }

/* --- Results screen --- */
.res-nav-logo       { font-size: 23px !important; }
.btn-res-pdf        { font-size: 13px !important; padding: 10px 24px !important; }
.btn-res-new        { font-size: 13px !important; padding: 10px 24px !important; }
.res-name-lbl       { font-size: 19px !important; }
.res-tagline        { font-size: clamp(32px, 5.5vw, 62px) !important; }
.res-overview       { font-size: 18px !important; line-height: 1.9 !important; }
.trait-chip         { font-size: 14px !important; padding: 10px 22px !important; }
.full-intro-h2      { font-size: clamp(34px, 4.5vw, 50px) !important; }
.full-intro-sub     { font-size: 15px !important; }
.full-trait-chip    { font-size: 13px !important; padding: 8px 18px !important; }

/* --- Hand cards --- */
.hc-title    { font-size: 25px !important; }
.hc-sub      { font-size: 12px !important; }
.hc-para     { font-size: 15px !important; line-height: 1.85 !important; }
.hc-bullets li { font-size: 14px !important; }

/* --- Reading section cards --- */
.r-card-num   { font-size: 11px !important; }
.r-card-title { font-size: 25px !important; }
.r-para       { font-size: 16px !important; line-height: 1.9 !important; }
.r-bullets li { font-size: 15px !important; }

/* --- Paywall --- */
.pw-badge { font-size: 13px !important; padding: 8px 20px !important; }
.pw-h3    { font-size: clamp(30px, 5vw, 46px) !important; }
.pw-desc  { font-size: 16px !important; line-height: 1.8 !important; }
.pw-btn   { font-size: 17px !important; padding: 18px 42px !important; }
.pw-note  { font-size: 14px !important; }

/* --- Rekha chat --- */
.csh-h2             { font-size: clamp(30px, 4vw, 44px) !important; }
.csh-sub            { font-size: 15px !important; }
.rekha-hdr-name     { font-size: 22px !important; }
.rekha-online-txt   { font-size: 12px !important; }
.r-msg-bub          { font-size: 15px !important; line-height: 1.7 !important; }
.r-msg-time         { font-size: 12px !important; }
.rekha-sug          { font-size: 13px !important; padding: 8px 18px !important; }
.rekha-inp          { font-size: 16px !important; padding: 18px 22px !important; }
.rekha-limit        { font-size: 14px !important; }

/* --- Toast --- */
.pr-toast { font-size: 15px !important; }

/* --- Camera modal --- */
.cam-eyebrow  { font-size: 13px !important; }
.cam-title    { font-size: 30px !important; }
.cam-hint     { font-size: 13px !important; }
.cam-back-btn { font-size: 14px !important; padding: 11px 24px !important; }

/* ──────────────────────────────────────────────────────────
   3) GLOBAL MOBILE RESPONSIVENESS
   A cascade of breakpoints so things always look right.
────────────────────────────────────────────────────────── */

/* ───── TABLETS & SMALL LAPTOPS (≤1100px) ───── */
@media (max-width: 1100px) {
  nav                           { padding: 18px 28px !important; }
  nav.scrolled                  { padding: 12px 28px !important; }
  .hero-left                    { padding: 120px 32px 60px !important; }
  .hero-right                   { padding: 80px 60px 60px 20px !important; }
  .upload-section               { padding: 80px 32px !important; gap: 48px !important; }
  .insights-section,
  .testi-section,
  .cta-section,
  .process-section              { padding: 70px 32px !important; }
  .faq-section                  { padding: 70px 32px !important; gap: 48px !important; }
  footer                        { padding: 50px 32px 24px !important; }
  .res-nav                      { padding: 12px 28px !important; }
  .res-hero                     { padding: 70px 32px 50px !important; }
  .res-body                     { padding: 50px 32px 0 !important; }
  .insights-grid                { grid-template-columns: repeat(2, 1fr) !important; }
  .testi-grid                   { grid-template-columns: repeat(2, 1fr) !important; }
  .footer-top                   { grid-template-columns: 1.5fr 1fr 1fr !important; gap: 36px !important; }
}

/* ───── MOBILE (≤760px) — FULL RESTYLE ───── */
@media (max-width: 760px) {

  html, body              { overflow-x: hidden !important; }
  body                    { font-size: 17px !important; cursor: auto !important; }
  * { cursor: auto !important; }
  #cursor, #cursor-trail  { display: none !important; }

  /* ── NAV ── */
  nav {
    padding: 14px 18px !important;
  }
  nav.scrolled {
    padding: 10px 18px !important;
  }
  .logo img {
    width: 110px !important;
    height: auto !important;
  }
  .nav-links { display: none !important; }
  .nav-cta {
    font-size: 11px !important;
    padding: 9px 16px !important;
    letter-spacing: 0.08em !important;
  }

  /* ── HERO ── */
  .hero {
    grid-template-columns: 1fr !important;
    min-height: auto !important;
    padding-bottom: 40px !important;
  }
  .hero-right { display: none !important; }
  .hero-left {
    padding: 120px 22px 50px !important;
  }
  .hero-eyebrow {
    font-size: 11px !important;
    margin-bottom: 20px !important;
  }
  .hero-h1 {
    font-size: clamp(38px, 10vw, 52px) !important;
    margin-bottom: 22px !important;
  }
  .hero-sub {
    font-size: 15px !important;
    margin-bottom: 32px !important;
  }
  .hero-proof { margin-bottom: 28px !important; }
  .proof-text { font-size: 12px !important; }
  .proof-av   { width: 30px !important; height: 30px !important; font-size: 11px !important; }
  .hero-actions {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 16px !important;
  }
  .btn-primary {
    font-size: 13px !important;
    padding: 16px 28px !important;
    text-align: center !important;
  }
  .btn-ghost-link {
    font-size: 12px !important;
    text-align: center !important;
  }
  .scroll-hint { display: none !important; }

  /* ── UPLOAD ── */
  .upload-section {
    grid-template-columns: 1fr !important;
    padding: 50px 18px !important;
    gap: 36px !important;
  }
  .upload-left { padding-top: 0 !important; }
  .section-label { font-size: 11px !important; }
  .upload-heading {
    font-size: clamp(32px, 8vw, 44px) !important;
    line-height: 1.15 !important;
    margin-bottom: 14px !important;
  }
  .upload-sub {
    font-size: 15px !important;
    margin-bottom: 24px !important;
  }
  .live-counter { font-size: 12px !important; padding: 7px 14px !important; }
  .upload-feat-txt { font-size: 14px !important; }
  .upload-feat-icon { width: 34px !important; height: 34px !important; }

  /* Upload card */
  .upload-card {
    padding: 24px 18px !important;
    border-radius: 14px !important;
  }
  .form-step-label {
    font-size: 11px !important;
    margin-bottom: 18px !important;
    letter-spacing: 0.14em !important;
  }
  .name-label  { font-size: 11px !important; }
  .name-input  { font-size: 15px !important; padding: 14px 16px !important; }

  /* Upload boxes — stay side by side but smaller */
  .palm-upload-grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
    margin-bottom: 18px !important;
  }
  .palm-upload-box {
    padding: 22px 10px !important;
    min-height: 210px !important;
    gap: 8px !important;
  }
  .upload-hand-icon svg {
    width: 46px !important;
    height: 46px !important;
  }
  .upload-box-title { font-size: 16px !important; }
  .upload-box-sub   { font-size: 11px !important; }
  .upload-actions {
    flex-direction: column !important;
    gap: 6px !important;
    width: 100% !important;
  }
  .upload-action-btn {
    width: 100% !important;
    justify-content: center !important;
    font-size: 10px !important;
    padding: 7px 10px !important;
  }

  /* Submit */
  .submit-btn {
    font-size: 13px !important;
    padding: 16px !important;
  }
  .submit-btn-sub { font-size: 12px !important; }
  .trust-row { gap: 12px !important; }
  .trust-badge { font-size: 11px !important; }

  /* ── INSIGHTS GRID ── */
  .insights-section {
    padding: 56px 20px !important;
  }
  .insights-header { margin-bottom: 40px !important; }
  .insights-h2  { font-size: clamp(30px, 8vw, 42px) !important; }
  .insights-sub { font-size: 14px !important; }
  .insights-grid { grid-template-columns: 1fr !important; }
  .insight-card { padding: 32px 22px !important; }
  .insight-num  { font-size: 15px !important; }
  .insight-name { font-size: 24px !important; }
  .insight-desc { font-size: 14px !important; }

  /* ── PROCESS ── */
  .process-section { padding: 56px 20px !important; }
  .process-header  { margin-bottom: 40px !important; }
  .process-h2      { font-size: clamp(30px, 8vw, 42px) !important; }
  .process-sub     { font-size: 14px !important; }
  .process-steps {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }
  .process-connector {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    min-width: unset !important;
    height: 46px !important;
  }
  .process-connector-inner {
    width: 1px !important;
    height: 100% !important;
    background: linear-gradient(180deg, rgba(184,154,69,.6), rgba(184,154,69,.2)) !important;
  }
  .process-connector-inner::before { display: none !important; }
  .process-connector-inner::after {
    content: '↓' !important;
    right: 50% !important;
    top: auto !important;
    bottom: -10px !important;
    transform: translateX(50%) !important;
  }
  .process-connector-dots {
    flex-direction: column !important;
    gap: 5px !important;
    margin-top: 0 !important;
    margin-left: 4px !important;
  }
  .step-circle  { width: 54px !important; height: 54px !important; font-size: 17px !important; }
  .step-title   { font-size: 20px !important; }
  .step-desc    { font-size: 13px !important; max-width: 100% !important; }

  /* ── TESTIMONIALS ── */
  .testi-section { padding: 56px 20px !important; }
  .testi-header  { margin-bottom: 40px !important; }
  .testi-h2      { font-size: clamp(30px, 8vw, 42px) !important; }
  .testi-sub     { font-size: 14px !important; }
  .stats-strip   {
    flex-direction: column !important;
    gap: 0 !important;
    max-width: 320px !important;
    margin-bottom: 40px !important;
  }
  .stat-block {
    border-right: none !important;
    border-bottom: 1px solid rgba(184,154,69,.12) !important;
    padding: 18px !important;
  }
  .stat-block:last-child { border-bottom: none !important; }
  .stat-num   { font-size: 36px !important; }
  .stat-label { font-size: 11px !important; }
  .testi-grid { grid-template-columns: 1fr !important; gap: 16px !important; }
  .testi-card { padding: 24px 20px !important; }
  .testi-quote { font-size: 16px !important; margin-bottom: 18px !important; }
  .testi-name  { font-size: 14px !important; }
  .testi-loc   { font-size: 12px !important; }

  /* ── FAQ ── */
  .faq-section {
    grid-template-columns: 1fr !important;
    padding: 56px 20px !important;
    gap: 32px !important;
  }
  .faq-h2   { font-size: clamp(28px, 7.5vw, 40px) !important; }
  .faq-desc { font-size: 14px !important; margin-bottom: 24px !important; }
  .faq-img-wrap { max-width: 100% !important; }
  .faq-img { height: 240px !important; }
  .faq-q { font-size: 15px !important; padding: 18px 0 !important; }
  .faq-a { font-size: 14px !important; line-height: 1.75 !important; }

  /* ── CTA STRIP ── */
  .cta-section { padding: 80px 22px !important; }
  .cta-h2      { font-size: clamp(36px, 9vw, 56px) !important; margin-bottom: 28px !important; }
  .urgency     { font-size: 12px !important; padding: 7px 16px !important; margin-bottom: 28px !important; }

  /* ── FOOTER ── */
  footer { padding: 44px 20px 22px !important; }
  .footer-top {
    grid-template-columns: 1fr 1fr !important;
    gap: 30px !important;
    margin-bottom: 36px !important;
    padding-bottom: 36px !important;
  }
  .footer-top > div:first-child {
    grid-column: 1 / -1 !important;
  }
  .footer-logo img { width: 130px !important; }
  .footer-tagline { font-size: 13px !important; }
  .footer-col-title { font-size: 11px !important; }
  .footer-links a { font-size: 13px !important; }
  .footer-bottom {
    flex-direction: column !important;
    gap: 8px !important;
    text-align: center !important;
    font-size: 12px !important;
  }

  /* ── FLOAT CTA ── */
  .float-cta {
    bottom: 16px !important;
    font-size: 12px !important;
    padding: 13px 28px !important;
    letter-spacing: 0.08em !important;
  }

  /* ── SCANNING SCREEN ── */
  #screen-scanning { padding: 40px 18px !important; }
  .scan-palms-row  { gap: 28px !important; margin-bottom: 32px !important; }
  .scan-divider    { display: none !important; }
  .scan-palm-box   { width: 100px !important; height: 132px !important; }
  .scan-status-text{ font-size: 17px !important; min-height: 44px !important; padding: 0 8px !important; }
  .scan-eyebrow    { font-size: 11px !important; margin-bottom: 32px !important; }

  /* ── RESULTS SCREEN ── */
  .res-nav { padding: 10px 16px !important; }
  .res-nav-logo img { width: 110px !important; }
  .res-nav-actions { gap: 6px !important; }
  .btn-res-pdf, .btn-res-new {
    padding: 7px 12px !important;
    font-size: 10px !important;
    letter-spacing: 0.08em !important;
  }
  .res-hero  { padding: 50px 18px 32px !important; }
  .res-body  { padding: 30px 14px 0 !important; }
  .res-eyebrow   { font-size: 10px !important; margin-bottom: 14px !important; }
  .res-name-lbl  { font-size: 14px !important; }
  .res-tagline   { font-size: clamp(22px, 6.5vw, 32px) !important; margin-bottom: 22px !important; }
  .res-overview  { font-size: 14px !important; line-height: 1.8 !important; margin-bottom: 28px !important; }
  .trait-chip    { font-size: 11px !important; padding: 7px 14px !important; }
  .hand-grid     { grid-template-columns: 1fr !important; gap: 14px !important; }
  .hand-card     { padding: 22px 18px !important; }
  .hc-title      { font-size: 19px !important; }
  .hc-sub        { font-size: 10px !important; }
  .hc-para       { font-size: 13px !important; }
  .hc-bullets li { font-size: 12px !important; }
  .full-intro    { margin-bottom: 32px !important; }
  .full-intro-h2 { font-size: clamp(24px, 7vw, 34px) !important; }
  .full-intro-sub{ font-size: 12px !important; }
  .full-trait-chip { font-size: 11px !important; padding: 6px 14px !important; }
  .r-card        { padding: 22px 18px !important; border-radius: 10px !important; }
  .r-card-hdr    { gap: 12px !important; margin-bottom: 14px !important; }
  .r-card-icon   { width: 36px !important; height: 36px !important; }
  .r-card-num    { font-size: 9px !important; }
  .r-card-title  { font-size: 18px !important; }
  .r-para        { font-size: 14px !important; line-height: 1.8 !important; }
  .r-bullets li  { font-size: 13px !important; }

  /* ── PAYWALL ── */
  .paywall-block { padding: 44px 22px 40px !important; border-radius: 16px !important; }
  .pw-lock-ring  { width: 60px !important; height: 60px !important; margin-bottom: 18px !important; }
  .pw-badge      { font-size: 10px !important; padding: 6px 14px !important; }
  .pw-h3         { font-size: clamp(22px, 6.5vw, 32px) !important; }
  .pw-desc       { font-size: 13px !important; line-height: 1.75 !important; }
  .pw-btn        {
    font-size: 14px !important;
    padding: 15px 28px !important;
    width: 100% !important;
    justify-content: center !important;
  }
  .pw-note       { font-size: 11px !important; }

  /* ── REKHA CHAT ── */
  .chat-section      { padding-top: 40px !important; margin-bottom: 52px !important; }
  .chat-section-hdr  { margin-bottom: 24px !important; }
  .csh-h2            { font-size: clamp(22px, 6vw, 30px) !important; }
  .csh-sub           { font-size: 12px !important; }
  .rekha-chat-wrap   { border-radius: 12px !important; }
  .rekha-hdr         { padding: 16px 18px !important; }
  .rekha-av          { width: 38px !important; height: 38px !important; font-size: 17px !important; }
  .rekha-hdr-name    { font-size: 16px !important; }
  .rekha-online-txt  { font-size: 10px !important; }
  .rekha-msgs        { height: 280px !important; padding: 16px !important; gap: 12px !important; }
  .r-msg-av          { width: 26px !important; height: 26px !important; font-size: 11px !important; }
  .r-msg-body        { max-width: 82% !important; }
  .r-msg-bub         { font-size: 13px !important; padding: 10px 14px !important; line-height: 1.6 !important; }
  .r-msg-time        { font-size: 10px !important; }
  .rekha-sugs        { padding: 10px 14px !important; gap: 6px !important; }
  .rekha-sug         { font-size: 10px !important; padding: 6px 12px !important; }
  .rekha-inp         { font-size: 14px !important; padding: 14px 16px !important; }
  .rekha-send        { padding: 14px 18px !important; font-size: 18px !important; }
  .rekha-limit       { font-size: 12px !important; padding: 10px 14px !important; }

  /* ── CAMERA MODAL ── */
  #camera-modal   { padding: 16px 12px !important; }
  .cam-title      { font-size: 22px !important; }
  .cam-eyebrow    { font-size: 11px !important; }
  .cam-capture-btn{ width: 62px !important; height: 62px !important; }
  .cam-side-btn   { width: 42px !important; height: 42px !important; }
  .cam-hint       { font-size: 11px !important; }
  .cam-back-btn   { font-size: 12px !important; padding: 9px 20px !important; }

  /* ── TOAST ── */
  .pr-toast { font-size: 13px !important; padding: 10px 20px !important; max-width: 94vw !important; }
}

/* ───── VERY SMALL PHONES (≤400px) ───── */
@media (max-width: 400px) {

  .hero-left       { padding: 110px 16px 40px !important; }
  .hero-h1         { font-size: 34px !important; }
  .hero-sub        { font-size: 14px !important; }

  .upload-section  { padding: 44px 14px !important; }
  .upload-heading  { font-size: 28px !important; }
  .upload-sub      { font-size: 13px !important; }
  .upload-card     { padding: 20px 14px !important; }
  .name-input      { font-size: 14px !important; }

  .palm-upload-grid   { gap: 8px !important; }
  .palm-upload-box    { min-height: 190px !important; padding: 18px 8px !important; }
  .upload-hand-icon svg { width: 40px !important; height: 40px !important; }
  .upload-box-title   { font-size: 14px !important; }
  .upload-box-sub     { font-size: 10px !important; }
  .upload-action-btn  { font-size: 9px !important; padding: 6px 8px !important; letter-spacing: 0.06em !important; }

  .submit-btn         { font-size: 12px !important; padding: 14px !important; }

  .insights-section,
  .process-section,
  .testi-section,
  .faq-section,
  .cta-section   { padding: 44px 14px !important; }

  .insights-h2, .process-h2, .testi-h2, .faq-h2 { font-size: 28px !important; }
  .cta-h2        { font-size: 34px !important; }

  .insight-card  { padding: 26px 18px !important; }
  .insight-name  { font-size: 22px !important; }

  .testi-card    { padding: 22px 16px !important; }
  .testi-quote   { font-size: 15px !important; }

  .faq-img       { height: 200px !important; }

  .footer-top    { grid-template-columns: 1fr !important; }
  footer         { padding: 36px 16px 20px !important; }

  .float-cta     { font-size: 11px !important; padding: 11px 22px !important; bottom: 12px !important; }

  /* Results */
  .res-hero      { padding: 40px 14px 28px !important; }
  .res-body      { padding: 26px 12px 0 !important; }
  .res-tagline   { font-size: 22px !important; }
  .res-overview  { font-size: 13px !important; }
  .hand-card     { padding: 20px 16px !important; }
  .r-card        { padding: 20px 16px !important; }
  .r-card-title  { font-size: 16px !important; }
  .r-para        { font-size: 13px !important; }

  .pw-h3         { font-size: 22px !important; }
  .pw-desc       { font-size: 12px !important; }
  .pw-btn        { font-size: 13px !important; padding: 13px 22px !important; }

  .rekha-msgs    { height: 240px !important; }
}

/* ───── LANDSCAPE PHONE (≤820px WIDE, ≤500px TALL) ───── */
@media (max-width: 820px) and (max-height: 500px) and (orientation: landscape) {
  .hero-left         { padding-top: 100px !important; padding-bottom: 30px !important; }
  .hero-h1           { font-size: 32px !important; }
  #screen-scanning   { padding: 30px 18px !important; }
  .scan-palms-row    { margin-bottom: 20px !important; }
  .scan-palm-box     { width: 80px !important; height: 108px !important; }
  .scan-status-text  { font-size: 15px !important; }
}

/* ──────────────────────────────────────────────────────────
   4) SAFETY — keep sections from horizontal overflow
────────────────────────────────────────────────────────── */
section, footer, .res-hero, .res-body, .upload-section {
  max-width: 100vw !important;
  overflow-x: hidden !important;
}

/* Ensure images & SVGs shrink */
img, svg { max-width: 100%; height: auto; }

/* Ensure buttons wrap long labels gracefully on narrow screens */
@media (max-width: 420px) {
  .btn-primary, .submit-btn, .pw-btn, .float-cta,
  .nav-cta, .btn-res-pdf, .btn-res-new {
    white-space: normal !important;
    line-height: 1.3 !important;
  }
}
