:root{
    --bg:#FAF8FF;
    --bg-soft:#F1EAFB;
    --surface:#FFFFFF;
    --ink:#1E0B45;
    --ink-soft:#5B4B82;
    --muted:#8577A8;
    --violet-800:#3B0F70;
    --violet-700:#5B21B6;
    --violet-600:#6D28D9;
    --violet-500:#7C3AED;
    --violet-400:#9D5CF5;
    --fuchsia-400:#C084FC;
    --line:#E6DCFA;
    --shadow: 0 20px 50px -20px rgba(76,29,149,0.35);
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    margin:0;
    background:var(--bg);
    color:var(--ink);
    font-family:'Inter',sans-serif;
    -webkit-font-smoothing:antialiased;
  }
  h1,h2,h3,.display{
    font-family:'Baloo 2',sans-serif;
    color:var(--ink);
    margin:0;
  }
  h1{
    
    color:var(--surface);
   
  }
  p{ margin:0; }
  a{ color:inherit; text-decoration:none; }
  img{ max-width:100%; display:block; }
  .wrap{
    max-width:1160px;
    margin:0 auto;
    padding:0 32px;
  }
  .eyebrow{
    font-family:'Inter',sans-serif;
    font-weight:700;
    font-size:13px;
    letter-spacing:.14em;
    text-transform:uppercase;
  }

  /* ---------- NAV ---------- */
  header.nav{
    position:sticky; top:0; z-index:50;
    background:rgba(250,248,255,0.85);
    backdrop-filter:saturate(180%) blur(10px);
    border-bottom:1px solid var(--line);
  }
  .nav-inner{
    max-width:1160px; margin:0 auto; padding:14px 32px;
    display:flex; align-items:center; justify-content:space-between;
    gap:24px;
  }
  .nav-logo{ display:flex; align-items:center; gap:10px; }
  .nav-logo img{ height:70px; width:auto; }
  .nav-links{ display:flex; align-items:center; gap:32px; }
  .nav-links a{
    font-size:15px; font-weight:600; color:var(--ink-soft);
    transition:color .15s ease;
  }
  .nav-links a:hover{ color:var(--violet-600); }
  .nav-cta{
    background:var(--ink);
    color:#fff !important;
    padding:10px 20px;
    border-radius:999px;
    font-size:14px; font-weight:700;
    white-space:nowrap;
  }
  .nav-mobile-toggle{
    display:none;
    width:46px;
    height:46px;
    border:1px solid var(--line);
    border-radius:14px;
    background:#fff;
    color:var(--violet-700);
    align-items:center;
    justify-content:center;
    flex-direction:column;
    gap:5px;
    cursor:pointer;
    box-shadow:0 12px 28px -22px rgba(30,11,69,.45);
  }
  .nav-mobile-toggle span{
    width:20px;
    height:2px;
    border-radius:999px;
    background:currentColor;
    transition:transform .18s ease, opacity .18s ease;
  }
  .nav-mobile-toggle.is-open span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
  .nav-mobile-toggle.is-open span:nth-child(2){ opacity:0; }
  .nav-mobile-toggle.is-open span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }

  /* ---------- HERO ---------- */
  .hero{
    position:relative;
    overflow:hidden;
    background:
      radial-gradient(120% 140% at 15% -10%, #C084FC 0%, transparent 45%),
      linear-gradient(160deg, var(--violet-800) 0%, var(--violet-700) 45%, var(--violet-500) 100%);
    color:#fff;
    padding:96px 0 0;
  }
  .hero-arch{
    position:absolute;
    right:-160px; top:-120px;
    width:640px; height:640px;
    opacity:.5;
    pointer-events:none;
  }
  .hero-inner{
    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:48px;
    align-items:center;
    position:relative;
    z-index:2;
  }
  .hero-eyebrow{ color:#E4D4FF; margin-bottom:18px; }
  .hero h1{
    font-size:52px;
    line-height:1.08;
    font-weight:700;
    letter-spacing:-.01em;
    color:#fff;
  }
  .hero h1 em{
    font-style:normal;
    color:#F4E8FF;
    -webkit-text-decoration: none;
    position:relative;
  }
  .hero p.lead{
    margin-top:22px;
    font-size:18px;
    line-height:1.6;
    color:#E7DBFC;
    max-width:520px;
  }
  .badge-row{
    display:flex; gap:14px; margin-top:34px; flex-wrap:wrap;
  }
  .store-badge{
    display:flex; align-items:center; gap:10px;
    background:#12082B;
    border:1px solid rgba(255,255,255,.18);
    padding:11px 20px 11px 16px;
    border-radius:12px;
    transition:transform .15s ease, background .15s ease;
  }
  .store-badge:hover{ transform:translateY(-2px); background:#1B0F3B; }
  .store-badge svg{ width:26px; height:26px; flex:none; }
  .store-icon{ color:#fff; }
  .store-badge .store-text{ line-height:1.15; }
  .store-badge .store-text small{ display:block; font-size:10.5px; color:#C9B9EE; font-weight:500; }
  .store-badge .store-text strong{ display:block; font-size:16px; font-weight:700; color:#fff; }
  .hero-microcopy{
    margin-top:20px; margin-bottom:48px; font-size:13.5px; color:#C9B9EE; font-weight:500;
    display:flex; align-items:center; gap:8px; flex-wrap:wrap;
  }
  .hero-microcopy span{ display:flex; align-items:center; gap:6px; }
  .dot{ width:4px; height:4px; border-radius:50%; background:#C9B9EE; display:inline-block; }

  .hero-visual{
    position:relative;
    display:flex; justify-content:center; align-items:flex-end;
    height:100%;
  }
  .hero-card{
    background:rgba(255,255,255,0.08);
    border:1px solid rgba(255,255,255,0.22);
    border-radius:32px 32px 0 0;
    padding:36px 36px 0;
    backdrop-filter:blur(6px);
    width:100%;
    max-width:380px;
  }
  .search-panel{
    background:#fff;
    border-radius:18px;
    padding:18px 18px 20px;
    box-shadow:0 14px 30px -10px rgba(30,11,69,.35);
  }
  .search-bar{
    display:flex; align-items:center; gap:10px;
    background:var(--bg-soft);
    border-radius:12px;
    padding:12px 14px;
    color:var(--ink-soft);
  }
  .search-glass{ width:18px; height:18px; flex:none; color:var(--violet-500); }
  .search-text{
    font-size:14px; font-weight:600; color:var(--ink);
    white-space:nowrap; overflow:hidden;
  }
  .search-caret{
    width:1.5px; height:16px; background:var(--violet-500);
    animation:caretBlink 1s steps(1) infinite;
  }
  @keyframes caretBlink{ 50%{ opacity:0; } }
  .search-results{ margin-top:14px; display:flex; flex-direction:column; gap:10px; }
  .result-chip{
    display:flex; align-items:center; gap:10px;
    border:1px solid var(--line);
    border-radius:12px;
    padding:10px 12px;
    opacity:0;
    transform:translateY(8px);
    animation:resultIn .55s ease-out forwards;
  }
  @keyframes resultIn{ to{ opacity:1; transform:translateY(0); } }
  .result-delay-1{ animation-delay:.3s; }
  .result-delay-2{ animation-delay:.7s; }
  .result-emoji{ font-size:20px; flex:none; }
  .result-copy strong{ display:block; font-size:13.5px; color:var(--ink); }
  .result-copy small{ display:block; font-size:12px; color:var(--muted); margin-top:1px; }
  .hero-tags{
    display:flex; gap:10px; margin-top:18px; padding-bottom:26px; flex-wrap:wrap;
  }
  .hero-tag{
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.2);
    color:#F4E8FF;
    font-size:12.5px; font-weight:600;
    padding:7px 12px; border-radius:999px;
  }

  /* ---------- TRUST STRIP ---------- */
  .trust{
    background:var(--surface);
    border-bottom:1px solid var(--line);
  }
  .trust-inner{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:0;
  }
  .trust-item{
    padding:36px 32px;
    display:flex; gap:16px; align-items:flex-start;
    border-left:1px solid var(--line);
  }
  .trust-item:first-child{ border-left:none; }
  .trust-icon{
    flex:none; width:44px; height:44px; border-radius:12px;
    background:var(--bg-soft);
    display:flex; align-items:center; justify-content:center;
  }
  .trust-icon svg{ width:22px; height:22px; color:var(--violet-600); }
  .trust-item h3{ font-size:16.5px; font-weight:700; margin-bottom:4px; }
  .trust-item p{ font-size:14px; color:var(--ink-soft); line-height:1.5; }

  /* ---------- WHAT IS PAASO ---------- */
  .about{
    padding:100px 0;
    position:relative;
  }
  .about-inner{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:64px;
    align-items:center;
  }
  .section-tag{
    color:var(--violet-600);
  }
  .about h2{
    font-size:38px;
    margin-top:14px;
    line-height:1.15;
  }
  .about p.body-lead{
    margin-top:20px;
    font-size:17px;
    line-height:1.75;
    color:var(--ink-soft);
    max-width:480px;
  }
  .hindi-line{
    margin-top:22px;
    font-size:15px;
    font-weight:600;
    color:var(--violet-700);
    padding-left:16px;
    border-left:3px solid var(--fuchsia-400);
  }
  .about-visual{
    position:relative;
    display:flex; justify-content:center;
  }
  .arch-frame{
    position:relative;
    width:320px; height:400px;
    border-radius:170px 170px 24px 24px;
    background:linear-gradient(160deg, var(--violet-700), var(--fuchsia-400));
    display:flex; align-items:center; justify-content:center;
    box-shadow:var(--shadow);
  }
  .arch-frame img{
    width:62%;
    filter:brightness(0) invert(1) drop-shadow(0 12px 24px rgba(30,11,69,.25));
    opacity:.96;
  }
  .arch-frame::after{
    content:"";
    position:absolute; inset:14px;
    border-radius:156px 156px 14px 14px;
    border:1.5px dashed rgba(255,255,255,.45);
  }

  /* ---------- HOW IT WORKS ---------- */
  .how{
    background:var(--bg-soft);
    padding:100px 0;
  }
  .how-head{ max-width:560px; margin-bottom:56px; }
  .how-head h2{ font-size:38px; margin-top:14px; line-height:1.15; }
  .steps{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:28px;
    position:relative;
  }
  .step{
    background:var(--surface);
    border:1px solid var(--line);
    border-radius:24px;
    padding:32px 28px;
    position:relative;
  }
  .step-num{
    font-family:'Baloo 2',sans-serif;
    font-size:15px;
    font-weight:700;
    color:var(--violet-500);
    letter-spacing:.05em;
  }
  .step-arch{
    width:56px; height:60px;
    border-radius:28px 28px 6px 6px;
    background:linear-gradient(160deg, var(--violet-600), var(--fuchsia-400));
    display:flex; align-items:center; justify-content:center;
    margin:18px 0 20px;
  }
  .step-arch svg{ width:26px; height:26px; color:#fff; }
  .step h3{ font-size:19px; margin-bottom:8px; }
  .step p{ font-size:14.5px; color:var(--ink-soft); line-height:1.6; }

  /* ---------- DOWNLOAD BAND ---------- */
  .download{
    background:linear-gradient(135deg, var(--violet-800), var(--violet-600) 60%, var(--fuchsia-400) 130%);
    color:#fff;
    padding:88px 0;
    text-align:center;
    position:relative;
    overflow:hidden;
  }
  .download-arch{
    position:absolute; left:50%; top:-220px; transform:translateX(-50%);
    width:800px; height:800px;
    border-radius:50%;
    background:radial-gradient(circle, rgba(255,255,255,.10), transparent 60%);
    pointer-events:none;
  }
  .download-eyebrow{ color:#E4D4FF; }
  .download h2{
    font-size:36px; color:#fff; position:relative; z-index:1;
  }
  .download p{
    margin:16px auto 0;
    max-width:500px;
    color:#E7DBFC;
    font-size:16px; line-height:1.6;
    position:relative; z-index:1;
  }
  .download .badge-row{ justify-content:center; margin-top:32px; position:relative; z-index:1; }

  /* ---------- FOOTER ---------- */
  footer{
    background:var(--ink);
    color:#C9B9EE;
    padding:56px 0 28px;
  }
  .footer-top{
    display:flex; justify-content:space-between; align-items:flex-start;
    gap:32px; flex-wrap:wrap;
    padding-bottom:32px;
    border-bottom:1px solid rgba(255,255,255,.1);
  }
  .footer-brand{ display:flex; align-items:center; gap:10px; }
  .footer-brand img{ height:40px; width:auto; filter:brightness(0) invert(1); }
  .social-row{ display:flex; gap:12px; }
  .social-btn{
    width:40px; height:40px; border-radius:12px;
    background:rgba(255,255,255,.06);
    border:1px solid rgba(255,255,255,.12);
    display:flex; align-items:center; justify-content:center;
    transition:background .15s ease, transform .15s ease;
  }
  .social-btn:hover{ background:rgba(255,255,255,.14); transform:translateY(-2px); }
  .social-btn svg{ width:18px; height:18px; color:#fff; }
  .footer-bottom{
    display:flex; justify-content:space-between; align-items:center;
    padding-top:22px; font-size:13px; color:#8577A8; flex-wrap:wrap; gap:12px;
  }
  .footer-bottom a{ color:#A997CF; }
  .footer-bottom a:hover{ color:#fff; }

  /* ---------- CONTACT / ENQUIRY FORM ---------- */
  .field{ margin-top:18px; display:flex; flex-direction:column; gap:6px; }
  .field label{ font-size:12.5px; font-weight:700; color:var(--ink-soft); text-transform:uppercase; letter-spacing:.03em; }
  .field input, .field textarea, .field select{
    font-family:'Inter',sans-serif;
    font-size:14.5px;
    padding:11px 13px;
    border-radius:10px;
    border:1.5px solid var(--line);
    background:var(--bg);
    color:var(--ink);
    outline:none;
    transition:border-color .15s ease, box-shadow .15s ease;
    resize:vertical;
  }
  .field input:focus, .field textarea:focus, .field select:focus{
    border-color:var(--violet-500);
    box-shadow:0 0 0 3px rgba(124,58,237,.15);
  }
  .field.has-error input, .field.has-error textarea, .field.has-error select{ border-color:#E11D48; }
  .field .error{
    display:none;
    font-size:12.5px; color:#E11D48; font-weight:500;
  }
  .field.has-error .error{ display:block; }
  .form-submit{
    margin-top:24px; width:100%;
    background:linear-gradient(135deg, var(--violet-600), var(--fuchsia-400));
    color:#fff; border:none; border-radius:12px;
    padding:14px; font-size:15px; font-weight:700;
    font-family:'Inter',sans-serif;
    cursor:pointer;
    transition:transform .15s ease, box-shadow .15s ease;
  }
  .form-submit:hover{ transform:translateY(-1px); box-shadow:0 10px 20px -8px rgba(124,58,237,.5); }
  .form-submit:active{ transform:translateY(0); }
  .form-submit:disabled{ opacity:.72; cursor:not-allowed; transform:none; box-shadow:none; }
  .form-success{
    display:none;
    margin-top:16px; padding:12px 14px;
    background:#ECFDF5; border:1px solid #A7F3D0; border-radius:10px;
    color:#047857; font-size:13.5px; font-weight:600;
  }
  .form-success.show{ display:block; }


  /* ---------- LEGAL PAGES ---------- */
  .legal-nav{ position:sticky; }
  .legal-main{ background:var(--bg); }
  .legal-hero{
    padding:96px 0 54px;
    background:
      radial-gradient(circle at 82% 24%, rgba(255,255,255,.22), transparent 22%),
      linear-gradient(135deg, var(--violet-700), var(--violet-600) 48%, #9D4EDD);
    color:#fff;
    overflow:hidden;
  }
  .legal-hero-inner{ max-width:860px; }
  .legal-hero h1{ font-size:46px; line-height:1.06; margin-top:12px; }
  .legal-hero p{ margin-top:16px; max-width:680px; color:#EDE9FE; font-size:17px; line-height:1.65; }
  .legal-hero span{ display:inline-block; margin-top:20px; color:#C9B9EE; font-size:13px; font-weight:700; }
  .legal-content{ padding:56px 0 76px; }
  .legal-content-inner{ max-width:860px; }
  .legal-notice{
    border:1px solid #D8B4FE;
    background:#F5F3FF;
    border-radius:18px;
    padding:18px 20px;
    margin-bottom:24px;
  }
  .legal-notice strong{ color:var(--violet-700); font-size:14px; text-transform:uppercase; letter-spacing:.08em; }
  .legal-notice p{ margin-top:8px; color:var(--ink-soft); line-height:1.65; }
  .legal-section{
    background:#fff;
    border:1px solid var(--line);
    border-radius:20px;
    padding:24px;
    margin-top:16px;
    box-shadow:0 14px 38px -30px rgba(30,11,69,.45);
  }
  .legal-section h2{ font-size:22px; line-height:1.2; color:var(--ink); }
  .legal-section p{ margin-top:10px; color:var(--ink-soft); line-height:1.75; font-size:15.5px; }
  .footer-links{ display:flex; flex-wrap:wrap; gap:10px 0; max-width:none; justify-content:flex-start; padding:24px 0 0; }
  .footer-links a{ color:#C9B9EE; font-size:14px; font-weight:600; line-height:1.2; }
  .footer-links a:hover{ color:#fff; }
  .footer-links a + a{
    margin-left:18px;
    padding-left:18px;
    border-left:1px solid rgba(255,255,255,.18);
  }

  /* ---------- ENQUIRY PAGE ---------- */
  .enquiry-layout{ display:grid; grid-template-columns:minmax(0, 1.2fr) minmax(280px, .8fr); gap:24px; align-items:start; }
  .enquiry-card, .enquiry-aside{ background:#fff; border:1px solid var(--line); border-radius:22px; padding:26px; box-shadow:0 14px 38px -30px rgba(30,11,69,.45); }
  .enquiry-card h2, .enquiry-aside h2{ font-size:24px; color:var(--ink); }
  .enquiry-card p, .enquiry-aside li{ color:var(--ink-soft); line-height:1.65; }
  .enquiry-card > p{ margin-top:8px; }
  .enquiry-form{ margin-top:8px; }
  .enquiry-aside ul{ margin-top:14px; padding-left:20px; display:grid; gap:10px; }

  /* ---------- BACK TO TOP ---------- */
  .back-to-top{
    position:fixed;
    right:22px; bottom:22px;
    width:48px; height:48px;
    border-radius:16px;
    border:1px solid rgba(255,255,255,.22);
    background:linear-gradient(135deg, var(--violet-700), var(--fuchsia-400));
    color:#fff;
    display:flex; align-items:center; justify-content:center;
    box-shadow:0 18px 40px -18px rgba(91,33,182,.65);
    cursor:pointer;
    opacity:0; visibility:hidden; transform:translateY(14px);
    transition:opacity .2s ease, visibility .2s ease, transform .2s ease;
    z-index:80;
  }
  .back-to-top.visible{ opacity:1; visibility:visible; transform:translateY(0); }
  .back-to-top svg{ width:21px; height:21px; }
  .back-to-top:hover{ transform:translateY(-2px); }

  /* ---------- RESPONSIVE ---------- */
  @media (max-width: 1280px){.hero-arch{display:none}}
  @media (max-width: 860px){
    .wrap{ padding:0 22px; }
    .nav-inner{
      position:relative;
      padding:12px 22px;
      gap:12px;
    }
    .nav-logo img{ height:64px; }
    .nav-mobile-toggle{ display:flex; flex:none; }
    .nav-links{
      margin-left:auto;
      gap:12px;
    }
    .nav-links a:not(.nav-cta){ display:none; }
    .nav-cta{ padding:10px 18px; font-size:14px; }
    .nav-links.is-open{
      position:absolute;
      left:18px;
      right:18px;
      top:calc(100% + 8px);
      margin-left:0;
      display:grid;
      gap:6px;
      padding:12px;
      background:#fff;
      border:1px solid var(--line);
      border-radius:18px;
      box-shadow:0 24px 60px -30px rgba(30,11,69,.55);
      z-index:60;
    }
    .nav-links.is-open a,
    .nav-links.is-open a:not(.nav-cta){
      display:flex;
      align-items:center;
      justify-content:space-between;
      min-height:44px;
      padding:10px 12px;
      border-radius:12px;
      color:var(--ink);
    }
    .nav-links.is-open a:hover{ background:var(--bg-soft); color:var(--violet-700); }
    .nav-links.is-open .nav-cta{
      justify-content:center;
      background:var(--violet-700);
      color:#fff !important;
      margin-top:4px;
    }
    .hero-inner{ grid-template-columns:1fr; gap:30px; }
    .hero{ padding-top:60px; }
    .hero h1{ font-size:38px; line-height:1.05; }
    .hero p.lead{ margin-top:18px; font-size:16.5px; line-height:1.55; }
    .hero-eyebrow{ margin-bottom:14px; }
    .badge-row{ margin-top:26px; }
    .hero-microcopy{ margin-bottom:34px; }
    .hero-visual{ margin-top:18px; }
    .hero-card{ border-radius:26px 26px 0 0; padding:26px 24px 0; }
    .trust-inner{ grid-template-columns:1fr; }
    .trust-item{ padding:24px 22px; border-left:none; border-top:1px solid var(--line); }
    .trust-item:first-child{ border-top:none; }
    .about{ padding:64px 0; }
    .about-inner{ grid-template-columns:1fr; gap:34px; }
    .about-visual{ order:-1; }
    .about h2, .how-head h2{ font-size:32px; }
    .arch-frame{ width:250px; height:315px; }
    .how{ padding:64px 0; }
    .how-head{ margin-bottom:32px; }
    .steps{ grid-template-columns:1fr; gap:18px; text-align:center; }
    .step{ padding:26px 24px; }
    .footer-top{ flex-direction:column; }
    footer{ padding:44px 0 24px; }
    .download{ padding:64px 0; }
    .download h2{ font-size:28px; }
    .download p{ font-size:15.5px; }
    .step-arch{ margin:18px auto; }
    .legal-hero{ padding:64px 0 38px; }
    .legal-hero h1{ font-size:34px; }
    .legal-content{ padding:36px 0 56px; }
    .legal-section{ padding:20px; }
    .footer-links{ justify-content:flex-start; }
    .footer-links a + a{ margin-left:14px; padding-left:14px; }
    .enquiry-layout{ grid-template-columns:1fr; }
  }
  @media (max-width: 420px){
    .wrap{ padding:0 18px; }
    .nav-inner{ padding:10px 18px; }
    .nav-logo img{ height:58px; }
    .nav-cta{ padding:9px 15px; font-size:13px; }
    .nav-mobile-toggle{ width:42px; height:42px; }
    .hero{ padding-top:48px; }
    .hero h1{ font-size:34px; }
    .hero p.lead{ font-size:15.5px; }
    .badge-row{ flex-direction:column; }
    .store-badge{ width:100%; justify-content:center; }
    .hero-card{ max-width:280px; }
    .trust-item{ padding:22px 18px; }
    .about, .how, .download{ padding:54px 0; }
    .legal-hero{ padding:54px 0 34px; }
    .legal-content{ padding:30px 0 48px; }
    .footer-links{ gap:12px 0; }
    .footer-links a{ width:100%; }
    .footer-links a + a{ margin-left:0; padding-left:0; border-left:0; padding-top:12px; border-top:1px solid rgba(255,255,255,.12); }
  }

  @media (prefers-reduced-motion: reduce){
    html{ scroll-behavior:auto; }
    *{ transition:none !important; }
    .search-caret{ animation:none; opacity:1; }
    .result-chip{ animation:none; opacity:1; transform:none; }
  }
