/* =========================================================
   TKSE 008D4B - Landing Mobile UAT Polish
   Scope: landing pages only. Keep desktop behavior from 008D4A.
   Goals: cleaner mobile hero, no horizontal overflow, no complex hero cards,
   bottom CTA appears only after hero, and footer/sections remain tappable.
   ========================================================= */

@media (max-width: 820px){
  html{
    scroll-padding-top:84px;
  }

  body.tkse-landing-page{
    padding-top:82px;
    overflow-x:hidden;
    -webkit-text-size-adjust:100%;
  }

  .site-header,
  .nav-bar{
    height:82px;
  }

  .nav-bar{
    gap:10px;
  }

  .brand img{
    width:76px;
    max-height:70px;
    object-fit:contain;
  }

  .header-actions{
    gap:8px;
  }

  .flag-lang > button{
    height:50px;
    border-radius:17px;
    padding:0 13px;
    gap:8px;
  }

  .flag-icon{
    width:24px;
    height:17px;
  }

  .mobile-toggle{
    width:54px;
    height:54px;
    border-radius:17px;
    padding:11px;
  }

  .mobile-toggle span{
    width:25px;
    height:3px;
  }

  .main-menu.is-open{
    top:90px;
  }

  .tkse-landing-hero{
    min-height:auto;
    overflow:hidden;
  }

  .tkse-landing-hero:before{
    background-image:
      linear-gradient(180deg,rgba(1,11,31,.94),rgba(1,11,31,.88) 58%,rgba(1,11,31,.92)),
      url('/assets/images/hero/tkse-hero-master-bg-008d2a.png');
    background-size:cover;
    background-position:62% center;
  }

  .tkse-landing-hero:after{
    height:70px;
    background:linear-gradient(0deg,rgba(3,21,53,.7),transparent);
  }

  .landing-hero-grid{
    display:block;
    min-height:auto;
    padding:36px 0 38px;
  }

  .landing-eyebrow{
    max-width:100%;
    min-height:42px;
    padding:10px 16px;
    gap:11px;
    font-size:11px;
    letter-spacing:.1em;
    margin-bottom:22px;
  }

  .landing-eyebrow:before{
    width:32px;
    height:4px;
    flex:0 0 auto;
  }

  .landing-copy h1{
    max-width:100%;
    font-size:clamp(34px,8.7vw,46px);
    line-height:1.1;
    letter-spacing:-.045em;
    overflow-wrap:break-word;
  }

  .landing-copy p{
    max-width:100%;
    margin-top:20px;
    font-size:16.5px;
    line-height:1.58;
    color:#dce8f8;
  }

  .landing-actions{
    display:grid;
    grid-template-columns:1fr;
    gap:12px;
    margin-top:28px;
  }

  .landing-actions .btn{
    width:100%;
    min-height:54px;
    height:auto;
    padding:15px 18px;
    border-radius:18px;
    text-align:center;
    white-space:normal;
    line-height:1.25;
  }

  .landing-chips{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
    margin-top:20px;
  }

  .landing-chips span{
    min-height:48px;
    height:auto;
    justify-content:center;
    padding:13px 16px;
    border-radius:17px;
    font-size:14px;
    line-height:1.25;
    text-align:center;
    background:rgba(3,18,48,.72);
  }

  .landing-card-cluster{
    display:none !important;
  }

  .landing-section{
    padding:44px 0;
  }

  .section-head{
    display:block;
    margin-bottom:22px;
  }

  .section-head .btn{
    margin-top:14px;
  }

  .landing-section h2{
    font-size:clamp(27px,7vw,32px);
    line-height:1.18;
  }

  .landing-section p{
    font-size:15.5px;
  }

  .value-grid,
  .steps-grid,
  .split-grid,
  .doc-grid,
  .footer-grid{
    grid-template-columns:1fr !important;
  }

  .value-card,
  .info-card,
  .step-card,
  .risk-card,
  .audience-card,
  .doc-card{
    padding:22px;
    border-radius:18px;
  }

  .navy-panel,
  .final-landing-cta{
    border-radius:22px;
    padding:26px 22px;
  }

  .final-landing-cta{
    display:block;
  }

  .final-landing-cta .landing-actions{
    margin-top:18px;
  }

  .floating{
    display:none !important;
  }

  .scroll-top{
    right:16px;
    bottom:82px;
    width:42px;
    height:42px;
    z-index:8990;
  }

  .mobile-cta{
    position:fixed;
    left:12px;
    right:12px;
    bottom:12px;
    display:none;
    grid-template-columns:1fr 1.18fr 1fr;
    gap:8px;
    padding:9px;
    border-radius:24px;
    background:rgba(255,255,255,.96);
    border:1px solid rgba(7,26,63,.08);
    box-shadow:0 14px 42px rgba(7,26,63,.24);
    z-index:9000;
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
  }

  body.tkse-mobile-cta-visible .mobile-cta{
    display:grid;
  }

  body.tkse-mobile-cta-visible{
    padding-bottom:92px;
  }

  .mobile-cta a{
    height:50px;
    min-width:0;
    border-radius:17px;
    display:grid;
    place-items:center;
    background:#f3f7fb;
    color:#06183b;
    text-decoration:none;
    font-weight:950;
    font-size:15px;
  }

  .mobile-cta a.main{
    background:linear-gradient(135deg,#10c874,#049956);
    color:#fff;
  }

  .footer{
    padding-bottom:104px;
  }
}

@media (max-width: 430px){
  .wrap{
    width:min(100% - 28px,760px);
  }

  .brand img{
    width:70px;
  }

  .flag-lang > button{
    height:48px;
    padding:0 12px;
  }

  .mobile-toggle{
    width:52px;
    height:52px;
  }

  .landing-hero-grid{
    padding-top:34px;
  }

  .landing-copy h1{
    font-size:clamp(32px,8.4vw,42px);
  }

  .landing-copy p{
    font-size:16px;
  }
}
