:root{
    --bg:#0A0A1F;
    --bg-alt:#0F0F2E;
    --surface:#15153F;
    --surface-2:#1B1B4C;
    --line:rgba(157,153,255,0.14);
    --line-strong:rgba(157,153,255,0.28);
    --primary:#4640E0;
    --primary-light:#6E68FF;
    --secondary:#9D4EDD;
    --secondary-light:#C77DFF;
    --text:#F1EFFF;
    --muted:#A6A2D6;
    --muted-2:#7B77AE;
    --success:#3DDC97;
    --radius:16px;
    --radius-sm:10px;
    --max:1180px;
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  html{scroll-behavior:smooth;}
  body{
    background:var(--bg);
    color:var(--text);
    font-family:'Inter', sans-serif;
    line-height:1.55;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  h1,h2,h3,h4{font-family:'Sora', sans-serif; letter-spacing:-0.02em; font-weight:700;}
  a{color:inherit; text-decoration:none;}
  ul{list-style:none;}
  img{max-width:100%; display:block;}
  .wrap{max-width:var(--max); margin:0 auto; padding:0 28px;}
  section{position:relative;}
  ::selection{background:var(--secondary); color:#fff;}

  body::before{
    content:"";
    position:fixed; inset:0; z-index:-2;
    background:
      radial-gradient(900px 500px at 12% -10%, rgba(70,64,224,0.35), transparent 60%),
      radial-gradient(700px 500px at 100% 10%, rgba(157,78,221,0.28), transparent 55%),
      var(--bg);
  }
  .grain{
    position:fixed; inset:0; z-index:-1; opacity:0.035; pointer-events:none;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  }

  /* header */
  header{
    position:sticky; top:0; z-index:100;
    background:rgba(10,10,31,0.72);
    backdrop-filter:blur(14px);
    border-bottom:1px solid var(--line);
    overflow:visible !important;
  }
  .nav{display:flex; align-items:center; justify-content:space-between; height:74px; overflow:visible !important;}
  .logo{display:flex; align-items:center; gap:10px; font-family:'Sora'; font-weight:800; font-size:1.15rem;}
  .nav-links{display:flex; align-items:center; gap:8px;}
  .nav-links a.nav-item{
    padding:10px 16px; border-radius:100px; font-weight:500; font-size:0.94rem; color:var(--muted);
    transition:color .2s, background .2s;
  }
  .nav-links a.nav-item:hover{color:var(--text); background:rgba(157,153,255,0.08);}
  .nav-links a.nav-item.active{color:var(--text); background:rgba(157,153,255,0.10);}
  .nav-actions{display:flex; align-items:center; gap:10px; flex-shrink:0; z-index:102;}
  .btn{
    display:inline-flex; align-items:center; justify-content:center; gap:8px;
    padding:11px 20px; border-radius:100px; font-weight:600; font-size:0.92rem;
    border:1px solid transparent; cursor:pointer; transition:transform .15s, box-shadow .15s, background .15s, border-color .15s;
    white-space:nowrap;
  }
  .btn:active{transform:scale(0.97);}
  .btn-ghost{color:var(--text); border-color:var(--line-strong); background:transparent;}
  .btn-ghost:hover{background:rgba(157,153,255,0.08); border-color:var(--primary-light);}
  .btn-solid{
    color:#fff; background:linear-gradient(135deg, var(--primary), var(--secondary));
    box-shadow:0 8px 22px rgba(105,70,224,0.38);
  }
  .btn-solid:hover{box-shadow:0 10px 28px rgba(157,78,221,0.5); transform:translateY(-1px);}
  .btn-lg{padding:15px 28px; font-size:1rem;}
  .btn-block{width:100%;}
  .menu-toggle{display:none; background:none; border:none; color:var(--text); font-size:1.5rem; cursor:pointer; font-weight:700; pointer-events:auto !important; z-index:101 !important; touch-action:manipulation;}
  body.theme-light .menu-toggle { color: #0f0f0f !important; }

  .eyebrow{
    display:inline-flex; align-items:center; gap:8px;
    padding:7px 14px; border-radius:100px; font-size:0.82rem; font-weight:600;
    color:var(--secondary-light); background:rgba(157,78,221,0.1); border:1px solid rgba(157,78,221,0.28);
    margin-bottom:22px;
  }
  .eyebrow .dot{width:6px; height:6px; border-radius:50%; background:var(--success); box-shadow:0 0 8px var(--success);}

  .hero{padding:48px 0 20px; text-align:center;}
  .hero h1{
    font-size:clamp(2.1rem, 5.4vw, 3.7rem);
    line-height:1.06; letter-spacing:-0.03em; margin:0 auto 24px;
  }
  @media (min-width:769px){ .hero h1{white-space:nowrap;} }
  .hero h1 .grad{
    background:linear-gradient(100deg, var(--primary-light), var(--secondary-light));
    -webkit-background-clip:text; background-clip:text; color:transparent;
  }
  .hero p.lead{max-width:none; margin:0 auto 26px; color:var(--muted); font-size:1.12rem;}
  @media (min-width:769px){ .hero p.lead{white-space:nowrap;} }
  .hero-ctas{display:flex; gap:14px; justify-content:center; flex-wrap:wrap; margin-bottom:0;}
  .hero-note{font-size:0.85rem; color:var(--muted-2);}
  .hero-note b{color:var(--secondary-light); font-weight:600;}

  .flow-caption{font-size:0.78rem; color:var(--muted-2); text-transform:uppercase; letter-spacing:0.09em; margin-bottom:22px; font-weight:600;}

  .section{padding:64px 0;}
  .section-alt{background:var(--bg-alt);}
  .head{max-width:640px; margin:0 auto 40px; text-align:center;}
  .head .eyebrow{margin-bottom:16px;}
  .head h2{font-size:clamp(1.8rem, 3.4vw, 2.6rem); margin-bottom:12px;}
  .head p{color:var(--muted); font-size:1.05rem;}

  .check-list{display:flex; flex-direction:column; gap:12px;}
  .check-list li{display:flex; gap:10px; align-items:flex-start; color:var(--text); font-size:0.96rem;}
  .check-list .tick{
    width:20px; height:20px; border-radius:50%; background:rgba(61,220,151,0.15); color:var(--success);
    display:flex; align-items:center; justify-content:center; font-size:12px; flex-shrink:0; margin-top:2px; font-weight:700;
  }

  /* trial ribbon */
  .trial-bar{
    display:inline-flex; align-items:center; gap:10px;
    padding:10px 20px; border-radius:100px;
    background:linear-gradient(135deg, rgba(70,64,224,0.18), rgba(157,78,221,0.18));
    border:1px solid rgba(199,125,255,0.34);
    color:var(--text); font-size:0.9rem; font-weight:600;
    margin-bottom:26px;
  }
  .trial-bar i{color:var(--secondary-light);}
  .trial-bar span{color:var(--muted); font-weight:400;}

  /* pricing */
  .pricing-grid{display:grid; grid-template-columns:repeat(3, 1fr); gap:22px; align-items:stretch;}
      .price-card{
    background:var(--surface); border:1px solid var(--line); border-radius:20px;
    padding:34px 28px; display:flex; flex-direction:column; position:relative;
  }
  .price-card.featured{
    border-color:var(--secondary-light);
    background:linear-gradient(180deg, rgba(157,78,221,0.12), var(--surface) 40%);
    position:relative; transform:translateY(-10px);
    box-shadow:0 20px 50px rgba(70,64,224,0.28);
  }
  .price-tag{
    position:absolute; top:-13px; left:50%; transform:translateX(-50%);
    background:linear-gradient(135deg, var(--primary), var(--secondary)); color:#fff;
    font-size:0.72rem; font-weight:700; padding:6px 16px; border-radius:100px; letter-spacing:0.03em;
  }
  .price-card h3{font-size:1.15rem; margin-bottom:6px;}
  .price-card .sub{color:var(--muted-2); font-size:0.86rem; margin-bottom:22px;}
  .price-amount{display:flex; align-items:baseline; gap:6px; margin-bottom:8px;}
  .price-amount .num{font-family:'Sora'; font-size:2.6rem; font-weight:800;}
  .price-amount .per{color:var(--muted-2); font-size:0.92rem;}
  .price-trial{
    font-size:0.8rem; color:var(--secondary-light); font-weight:600;
    margin-bottom:24px; display:flex; align-items:center; gap:7px;
  }
  .price-meta{font-size:0.8rem; color:var(--muted-2); margin-bottom:24px;}
  .price-tag.trial{background:linear-gradient(135deg, #5B54E8, var(--secondary)); white-space:nowrap;}
  .price-trial i{font-size:0.72rem;}
  .price-card .check-list{margin-bottom:28px; flex:1;}
  .price-card .check-list li{font-size:0.9rem;}
  .btn-sub{text-align:center; font-size:0.75rem; color:var(--muted-2); margin-top:11px;}

  /* included band */
  .incl-grid{display:grid; grid-template-columns:repeat(4, 1fr); gap:16px;}
  .incl-item{
    background:var(--surface); border:1px solid var(--line); border-radius:var(--radius-sm);
    padding:20px; display:flex; gap:12px; align-items:flex-start;
  }
  .incl-item.hl{border-color:rgba(199,125,255,0.4); background:linear-gradient(180deg, rgba(157,78,221,0.12), var(--surface) 60%);}
  .incl-item .ic{
    width:34px; height:34px; border-radius:9px; background:var(--surface-2); flex-shrink:0;
    display:flex; align-items:center; justify-content:center; font-size:15px;
  }
  .incl-item h5{font-size:0.95rem; margin-bottom:4px; font-weight:600;}
  .incl-item p{font-size:0.82rem; color:var(--muted-2); line-height:1.45;}

  /* comparison table */
  .table-scroll{overflow-x:auto; -webkit-overflow-scrolling:touch; border:1px solid var(--line); border-radius:var(--radius); background:var(--surface);}
  table.compare{width:100%; border-collapse:collapse; min-width:620px;}
  table.compare th, table.compare td{padding:15px 18px; text-align:left; border-bottom:1px solid var(--line); font-size:0.92rem;}
  table.compare thead th{
    font-family:'Sora'; font-weight:700; font-size:0.95rem; color:var(--text);
    background:rgba(157,153,255,0.05);
  }
  table.compare thead th span{display:block; font-family:'Inter'; font-weight:500; font-size:0.76rem; color:var(--muted-2); margin-top:3px;}
  table.compare td:not(:first-child), table.compare th:not(:first-child){text-align:center; width:17%;}
  table.compare td:first-child{color:var(--muted); font-weight:500;}
  table.compare tbody tr:last-child td{border-bottom:none;}
  table.compare tbody tr:hover{background:rgba(157,153,255,0.03);}
  .yes{color:var(--success); font-weight:700;}
  .no{color:var(--muted-2); opacity:0.6;}
  .val{font-family:'Sora'; font-weight:700; color:var(--text);}
  .col-hi{background:rgba(157,78,221,0.06);}

  /* faq */
  .faq-list{max-width:820px; margin:0 auto; display:flex; flex-direction:column; gap:12px;}
  details.faq{
    background:var(--surface); border:1px solid var(--line); border-radius:var(--radius-sm);
    padding:18px 22px; transition:border-color .2s;
  }
  details.faq[open]{border-color:var(--line-strong);}
  details.faq summary{
    cursor:pointer; list-style:none; font-weight:600; font-size:1rem;
    display:flex; align-items:center; justify-content:space-between; gap:14px;
  }
  details.faq summary::-webkit-details-marker{display:none;}
  details.faq summary::after{content:"+"; color:var(--secondary-light); font-size:1.3rem; font-weight:400; line-height:1; flex-shrink:0;}
  details.faq[open] summary::after{content:"–";}
  details.faq p{color:var(--muted); font-size:0.92rem; margin-top:12px; line-height:1.6;}

  /* cta band */
  .cta-band{
    max-width:var(--max); margin:0 auto; padding:56px 56px;
    background:linear-gradient(120deg, var(--primary), var(--secondary));
    border-radius:28px; text-align:center; position:relative; overflow:hidden;
  }
  .cta-band::before{
    content:""; position:absolute; inset:0;
    background:radial-gradient(400px 200px at 80% 0%, rgba(255,255,255,0.18), transparent 70%);
    pointer-events:none;
  }
  .cta-band h2{color:#fff; font-size:clamp(1.6rem,3vw,2.3rem); margin-bottom:14px; position:relative;}
  .cta-band p{color:rgba(255,255,255,0.88); margin-bottom:30px; position:relative;}
  .cta-band .btn-solid{background:#fff; color:var(--primary); box-shadow:none;}
  .cta-band .btn-solid:hover{background:#f2f1ff;}
  .cta-band .btn-ghost{border-color:rgba(255,255,255,0.5); color:#fff;}

  /* footer base */
  footer{border-top:1px solid var(--line); padding:48px 0 28px;}
  .foot-grid{display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr; gap:40px; margin-bottom:36px;}
  .foot-brand p{color:var(--muted-2); font-size:0.88rem; margin-top:14px; max-width:280px;}
  .foot-col h5{font-size:0.82rem; text-transform:uppercase; letter-spacing:0.06em; color:var(--muted-2); margin-bottom:16px;}
  .foot-col ul{display:flex; flex-direction:column; gap:10px;}
  .foot-col a{color:var(--muted); font-size:0.9rem; transition:color .2s;}
  .foot-col a:hover{color:var(--text);}
  .foot-bottom{
    display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px;
    padding-top:28px; border-top:1px solid var(--line); color:var(--muted-2); font-size:0.82rem;
  }

  @media (max-width:980px){
    .incl-grid{grid-template-columns:repeat(2,1fr);}
    .pricing-grid{grid-template-columns:1fr; max-width:420px; margin:0 auto;}
    .price-card.featured{transform:none;}
    .foot-grid{grid-template-columns:1fr 1fr;}
  }
  @media (max-width:768px){
    header .nav{height:68px;}
    .wrap{padding:0 20px;}
    .hero{padding:56px 0 18px;}
    .hero h1{font-size:clamp(1.95rem, 7.4vw, 2.9rem); margin-bottom:18px;}
    .hero p.lead{font-size:1rem; margin-bottom:26px;}
    .btn-lg{padding:13px 22px; font-size:0.96rem;}
    .section{padding:56px 0;}
    .head{margin-bottom:32px;}
    .head h2{font-size:clamp(1.65rem, 5vw, 2.25rem);}
    .head p{font-size:0.98rem;}
    .price-card{padding:28px 22px;}
    .cta-band{padding:48px 28px; border-radius:24px;}
    header .nav-actions > a.btn,
    header .nav-links{display:none !important;}
    header .menu-toggle{display:block !important;}
    footer{padding:40px 0 24px;}
  }
  @media (max-width:640px){
    .nav-links{display:none;}
    .menu-toggle{display:block;}
    .wrap{padding:0 18px;}
    .hero{padding:44px 0 16px;}
    .hero h1{font-size:clamp(1.75rem, 8.2vw, 2.5rem); line-height:1.1;}
    .hero p.lead{font-size:0.96rem;}
    .hero-ctas{flex-direction:column; align-items:stretch;}
    .hero-ctas .btn{width:100%;}
    .trial-bar{font-size:0.84rem; padding:9px 16px;}
    .section{padding:48px 0;}
    .head{margin-bottom:26px;}
    .incl-grid{grid-template-columns:1fr;}
    .pricing-grid{gap:16px;}
    .price-card{padding:24px 18px; border-radius:18px;}
    .price-amount .num{font-size:2.25rem;}
    .check-list li{font-size:0.86rem;}
    details.faq{padding:16px 18px;}
    details.faq summary{font-size:0.94rem;}
    .cta-band{padding:44px 20px;}
    .cta-band h2{font-size:clamp(1.45rem, 6vw, 2rem);}
    .foot-grid{grid-template-columns:1fr; gap:28px;}
  }

#mobile-menu.mobile-menu-overlay{
      display:none; position:fixed; inset:0; z-index:200;
      background:rgba(10,10,31,0.94); backdrop-filter:blur(10px);
      align-items:center; justify-content:center; padding:32px;
    }
    #mobile-menu.mobile-menu-overlay.open{display:flex;}
    .mm-close{
      position:absolute; top:20px; right:20px; width:40px; height:40px; border-radius:50%;
      border:1px solid var(--line-strong); background:rgba(255,255,255,0.04); color:var(--text);
      font-size:1.1rem; cursor:pointer; display:flex; align-items:center; justify-content:center;
    }
    .mm-modal{width:100%; max-width:340px; display:flex; flex-direction:column; gap:14px;}
    .mm-btn{
      display:flex; align-items:center; justify-content:center; width:100%; padding:16px 24px;
      border-radius:100px; font-size:1.05rem; font-weight:600; text-align:center;
      border:1px solid var(--line-strong); color:var(--text); background:rgba(255,255,255,0.03);
      transition:transform .15s ease, background .15s ease;
    }
    body.theme-light #mobile-menu .mm-btn { color: #171738 !important; }
    .mm-btn:active{transform:scale(0.97); background:rgba(157,153,255,0.08);}
    .mm-btn-solid{
      background:linear-gradient(135deg, var(--primary), var(--secondary));
      border-color:transparent; color:#fff; box-shadow:0 10px 26px rgba(105,70,224,0.4); font-weight:700;
    }

    body.theme-light{
      --bg:#F6F7FF;
      --bg-alt:#EEF1FF;
      --surface:#FFFFFF;
      --surface-2:#F2F4FF;
      --line:rgba(70,64,224,0.12);
      --line-strong:rgba(70,64,224,0.22);
      --text:#171738;
      --muted:#4F4B78;
      --muted-2:#6D6A92;
      color:var(--text);
    }
    body.theme-light header{background:rgba(246,247,255,0.82);}
    body.theme-light .menu-toggle{ color:#0f0f0f !important; }
    body.theme-light .trial-bar{background:linear-gradient(135deg, rgba(70,64,224,0.1), rgba(157,78,221,0.1));}
    body.theme-light .price-trial{color:var(--secondary);}

    @media (max-width: 768px){
      .nav{height:72px; padding:0 2px 0 0;}
      .nav-actions{align-items:center; gap:10px; margin-left:auto;}
      .nav-actions .theme-toggle{margin-top:12px; width:52px; height:52px; flex-shrink:0;}
      .menu-toggle{
        position:relative; z-index:102 !important; min-width:48px; min-height:48px;
        width:48px; height:48px; border-radius:18px; display:inline-flex;
        align-items:center; justify-content:center; font-size:40px; line-height:1; touch-action:manipulation;
      }
    }

#login .footer-card{
      position:relative; overflow:hidden; border:1px solid var(--line); border-radius:22px;
      background:linear-gradient(180deg, rgba(255,255,255,0.015), rgba(255,255,255,0.008));
      box-shadow:0 14px 36px rgba(0,0,0,0.2);
    }
    #login .footer-card::before{
      content:""; position:absolute; inset:auto auto 0 0; width:240px; height:240px;
      background:radial-gradient(circle at 30% 30%, rgba(110,104,255,0.1), transparent 62%);
      pointer-events:none;
    }
    #login .footer-card::after{
      content:""; position:absolute; inset:0;
      background:linear-gradient(135deg, rgba(157,78,221,0.04), transparent 40%, rgba(70,64,224,0.04));
      pointer-events:none;
    }
    #login .footer-inner{position:relative; padding:22px 22px 14px;}
    #login .footer-grid{
      display:grid;
      grid-template-columns:minmax(0,1.3fr) repeat(3, minmax(0, 1fr));
      grid-template-areas:
        "brand product company partner"
        "brand . legal partner";
      gap:20px 24px; align-items:flex-start;
    }
    #login .gi-brand{grid-area:brand; min-width:0;}
    #login .gi-product{grid-area:product; min-width:0;}
    #login .gi-company{grid-area:company; min-width:0;}
    #login .gi-partner{grid-area:partner; min-width:0;}
    #login .gi-legal{grid-area:legal; min-width:0;}

    #login .foot-brand{min-width:0; text-align:left; display:flex; flex-direction:column; align-items:flex-start;}
    #login a.logo{font-size:0.98rem; gap:10px; align-items:center; width:max-content; height:34px;}
    #login .foot-brand p{margin-top:10px; max-width:280px; color:var(--muted); font-size:0.84rem; line-height:1.45;}
    #login .social-row{margin-top:14px; display:flex; align-items:center; gap:8px; flex-wrap:wrap;}
    #login .social-row .social-icon{
      width:34px; height:34px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center;
      color:#fff; border:1px solid rgba(255,255,255,0.08); transition:transform .15s ease, box-shadow .15s ease; flex-shrink:0;
    }
    #login .social-row .social-icon:hover{transform:translateY(-1px);}
    #login .social-row .social-icon i{font-size:13px;}
    #login .foot-brand .address{margin-top:10px; color:var(--muted-2); font-size:0.74rem; line-height:1.45; max-width:30ch;}

    #login .foot-col{min-width:0; text-align:left;}
    #login .foot-col h5{margin-bottom:10px; color:var(--muted-2); font-size:0.74rem; letter-spacing:0.08em; text-transform:uppercase;}
    #login .foot-col ul{gap:8px; display:flex; flex-direction:column;}
    #login .foot-col ul li a{display:inline-flex; align-items:center; gap:8px; color:var(--muted);}

    #login .partner-card{
      margin-top:0; padding:12px 12px 10px; border:1px solid var(--line); border-radius:16px;
      background:rgba(255,255,255,0.02); box-shadow:inset 0 1px 0 rgba(255,255,255,0.03); text-align:left;
    }
    #login .partner-badge{
      display:inline-flex; align-items:center; gap:6px; padding:4px 8px; border-radius:999px;
      font-size:0.63rem; font-weight:700; letter-spacing:0.08em; text-transform:uppercase;
      color:var(--secondary-light); background:rgba(157,78,221,0.1); border:1px solid rgba(157,78,221,0.2); margin-bottom:8px;
    }
    #login .partner-head{display:flex; align-items:center; gap:8px; margin-bottom:6px;}
    #login .partner-ic{
      width:30px; height:30px; border-radius:9px;
      background:linear-gradient(135deg, rgba(157,78,221,0.2), rgba(70,64,224,0.2));
      border:1px solid rgba(157,153,255,0.16); display:flex; align-items:center; justify-content:center; flex-shrink:0;
    }
    #login .partner-ic i{font-size:12px; color:var(--secondary-light);}
    #login .partner-name{font-size:0.88rem; font-weight:700; color:var(--text); line-height:1.15;}
    #login .partner-sub{font-size:0.72rem; color:var(--muted-2); margin-top:1px; line-height:1.35;}
    #login .partner-socials{display:flex; align-items:center; gap:7px; margin-top:10px; flex-wrap:wrap;}
    #login .partner-socials .social-icon{
      width:32px; height:32px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center;
      color:#fff; border:1px solid rgba(255,255,255,0.08); flex-shrink:0;
    }
    #login .partner-socials .social-icon i{font-size:12px;}

    #login .foot-bottom{
      margin-top:18px; padding-top:14px; border-top:1px solid var(--line);
      display:flex; align-items:center; justify-content:center; gap:10px; flex-wrap:wrap;
      color:var(--muted-2); font-size:0.76rem; line-height:1.4; text-align:center; position:relative; z-index:1;
    }

    @media (max-width: 768px){
      #login{padding:44px 0 24px;}
      #login .wrap{padding-left:18px; padding-right:18px;}
      #login > .wrap{padding-top:0 !important; padding-bottom:0 !important;}
      #login > .wrap > div{border-radius:20px;}
      #login .footer-inner{padding:26px 20px 18px !important;}
      #login .footer-grid{
        grid-template-columns:1fr !important;
        grid-template-areas:"brand" "product" "company" "partner" "legal";
        gap:28px !important;
      }
      #login .gi-brand, #login .gi-product, #login .gi-company,
      #login .gi-partner, #login .gi-legal,
      #login .foot-brand, #login .foot-col, #login .partner-card{text-align:left !important;}
      #login .foot-brand{align-items:flex-start !important; width:100%;}
      #login .foot-brand p{max-width:34ch !important; font-size:0.86rem !important; line-height:1.55 !important;}
      #login .foot-brand .address{max-width:30ch !important;}
      #login .social-row{gap:10px !important;}
      #login .social-row .social-icon{width:38px !important; height:38px !important;}
      #login .social-row .social-icon i{font-size:14px !important;}
      #login .foot-col{width:100%; min-width:0;}
      #login .foot-col h5{margin-bottom:12px !important; font-size:0.72rem !important; letter-spacing:0.1em !important;}
      #login .foot-col ul{gap:2px !important;}
      #login .foot-col ul li a{display:inline-flex !important; justify-content:flex-start; width:100%; padding:9px 0 !important; font-size:0.92rem !important;}
      #login .partner-card{padding:18px 16px !important; border-radius:16px !important; width:100%;}
      #login .partner-head{justify-content:flex-start !important;}
      #login .partner-socials{justify-content:flex-start !important; gap:8px !important;}
      #login .partner-socials .social-icon{width:34px !important; height:34px !important;}
      #login .partner-socials .social-icon i{font-size:12px !important;}
      #login .foot-bottom{margin-top:22px !important; padding-top:16px !important;}
    }

    @media (max-width: 480px){
      #login{padding:36px 0 20px;}
      #login .wrap{padding-left:14px; padding-right:14px;}
      #login > .wrap > div{border-radius:16px;}
      #login .footer-inner{padding:22px 16px 14px !important;}
      #login .footer-grid{gap:24px !important;}
      #login .foot-brand p{font-size:0.82rem !important; max-width:30ch !important;}
      #login .social-row{gap:8px !important;}
      #login .social-row .social-icon{width:34px !important; height:34px !important;}
      #login .social-row .social-icon i{font-size:13px !important;}
      #login .foot-col h5{font-size:0.68rem !important;}
      #login .foot-col ul li a{font-size:0.88rem !important; padding:8px 0 !important;}
      #login .partner-card{padding:15px 14px !important;}
      #login .partner-socials .social-icon{width:32px !important; height:32px !important;}
      #login .partner-socials .social-icon i{font-size:11px !important;}
      #login .foot-bottom{font-size:0.74rem !important; line-height:1.5 !important; padding-top:14px !important; margin-top:18px !important;}
    }