:root{
    --navy:#0B2332;
    --magenta:#9D1383;
    --magenta-dark:#7F0F6B;
    --orange:#EE8440;
    --gold:#F4C754;
    --coral:#E62321;
    --white:#FFFFFF;
    --bg-warm:#FAF9F7;
    --border:#E8E5E2;
    --text-dark:#0B2332;
    --text-sec:#475967;
    --text-light:#CBD5DB;
    --grad:linear-gradient(135deg,#F4C754,#EE8440,#9D1383);
    --radius-sm:10px; --radius-md:16px; --radius-lg:20px; --radius-xl:28px;
    --shadow-sm:0 2px 10px rgba(11,35,50,.06);
    --shadow-md:0 16px 40px rgba(11,35,50,.10);
    --shadow-lg:0 30px 70px rgba(11,35,50,.18);
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  html{scroll-behavior:smooth;}
  body{ font-family:'Inter',-apple-system,sans-serif; color:var(--text-dark); background:var(--white); line-height:1.55; -webkit-font-smoothing:antialiased; overflow-x:hidden; }
  a{color:inherit; text-decoration:none;}
  img{display:block; max-width:100%;}
  ul{list-style:none;}
  button{font-family:inherit; cursor:pointer;}
  .wrap{ max-width:1480px; margin:0 auto; padding:0 40px; }
  h1,h2,h3,h4{ font-weight:800; letter-spacing:-0.02em; line-height:1.14; }
  .eyebrow{ font-size:12.5px; font-weight:700; letter-spacing:.09em; text-transform:uppercase; color:var(--magenta); margin-bottom:16px; display:inline-flex; align-items:center; gap:8px; }
  .eyebrow::before{ content:''; width:16px; height:2px; background:var(--magenta); border-radius:2px; }
  .section-head{ max-width:640px; margin:0 auto 52px; text-align:center; }
  .section-head h2{ font-size:clamp(28px,4vw,42px); margin-bottom:14px; }
  .section-head p{ color:var(--text-sec); font-size:16.5px; }
  section{ padding:100px 0; position:relative; }

  [data-reveal]{ opacity:0; transform:translateY(26px); transition:opacity .7s cubic-bezier(.16,1,.3,1), transform .7s cubic-bezier(.16,1,.3,1); }
  [data-reveal].in{ opacity:1; transform:translateY(0); }
  @media (prefers-reduced-motion:reduce){ [data-reveal]{ opacity:1; transform:none; transition:none; } }

  .btn{ display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:15px 28px; font-size:15px; font-weight:700; border-radius:11px; border:1.5px solid transparent; transition:all .2s ease; white-space:nowrap; }
  .btn-primary{ background:var(--magenta); color:#fff; box-shadow:0 10px 26px rgba(157,19,131,.28); }
  .btn-primary:hover{ background:var(--magenta-dark); transform:translateY(-2px); box-shadow:0 14px 34px rgba(157,19,131,.36); }
  .btn-outline{ background:#fff; color:var(--navy); border-color:var(--navy); }
  .btn-outline:hover{ background:var(--navy); color:#fff; }
  .btn-warm{ background:var(--orange); color:#fff; box-shadow:0 10px 24px rgba(238,132,64,.3); }
  .btn-warm:hover{ transform:translateY(-2px); }
  .btn-dark-outline{ background:transparent; color:#fff; border-color:rgba(255,255,255,.35); }
  .btn-dark-outline:hover{ background:rgba(255,255,255,.1); }
  .btn-sm{ padding:10px 20px; font-size:14px; }

  header{ position:fixed; top:0; left:0; right:0; z-index:200; background:#ffffff; border-bottom:1px solid var(--border); transition:box-shadow .3s; }
  header.scrolled{ box-shadow:0 4px 24px rgba(11,35,50,.06); }
  .nav{ display:flex; align-items:center; justify-content:space-between; padding:16px 40px; max-width:1480px; margin:0 auto; }
  .nav-logo img{ height:42px; width:auto; }
  .nav-center{ display:flex; align-items:center; gap:6px; }
  .nav-item{ position:relative; }
  .nav-item button, .nav-center > a{ display:flex; align-items:center; gap:5px; padding:10px 16px; font-size:14.5px; font-weight:600; color:var(--navy); background:none; border:none; border-radius:8px; white-space:nowrap; }
  .nav-item button:hover, .nav-center > a:hover{ color:var(--magenta); }
  .caret{ width:8px; height:8px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:rotate(45deg); margin-top:-3px; }
  .mega{ position:absolute; top:100%; left:50%; transform:translateX(-50%) translateY(8px); width:560px; background:#fff; border-radius:var(--radius-md); box-shadow:var(--shadow-lg); padding:22px; opacity:0; visibility:hidden; transition:all .2s ease; display:grid; grid-template-columns:1fr 1fr; gap:6px 20px; border:1px solid var(--border); }
  .mega.mega-wide{ width:760px; grid-template-columns:repeat(4, 1fr); gap:4px 14px; padding:24px 26px; }
  .mega-col-title-full{ grid-column:1 / -1; }
  .nav-item:hover .mega{ opacity:1; visibility:visible; transform:translateX(-50%) translateY(6px); }
  .mega-col-title{ font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; color:var(--text-sec); padding:8px 10px 6px; }
  .mega-wide .mega-link{ flex-direction:column; align-items:flex-start; gap:8px; padding:12px 10px; }
  .mega-link{ display:flex; gap:12px; padding:10px; border-radius:8px; }
  .mega-link:hover{ background:var(--bg-warm); }
  .mega-icon{ width:32px; height:32px; border-radius:8px; flex-shrink:0; display:flex; align-items:center; justify-content:center; color:#fff; font-size:12px; font-weight:700; }
  .mega-link-title{ font-size:13.5px; font-weight:600; color:var(--text-dark); }
  .mega-link-desc{ font-size:11.5px; color:var(--text-sec); }
  .nav-right{ display:flex; align-items:center; gap:12px; }
  .nav-right .btn-ghost{ color:var(--navy); font-size:14.5px; font-weight:600; padding:8px 10px; }
  .mobile-toggle{ display:none; background:none; border:none; padding:8px; }
  .mobile-toggle span{ display:block; width:20px; height:2px; background:var(--navy); margin:4px 0; border-radius:2px; }

  .hero{ padding:150px 0 80px; background:var(--white); overflow:hidden; }
  .hero-grid{ display:grid; grid-template-columns:0.92fr 1.08fr; gap:24px; align-items:start; }
  .hero-badge{ display:inline-flex; align-items:center; gap:8px; background:var(--bg-warm); border:1px solid var(--border); color:var(--magenta); padding:8px 16px; border-radius:30px; font-size:12.5px; font-weight:700; margin-bottom:22px; }
  .hero-text h1{ font-size:clamp(38px,4.6vw,58px); margin-bottom:20px; }
  .hero-text h1 .grad{ background:var(--grad); -webkit-background-clip:text; background-clip:text; color:transparent; }
  .hero-text p.lead{ font-size:17.5px; color:var(--text-sec); max-width:460px; margin-bottom:32px; }
  .hero-ctas{ display:flex; gap:14px; flex-wrap:wrap; }

  .hero-text{ padding-top:36px; }
  .hero-visual{ position:relative; }
  .hero-glow{ position:absolute; width:640px; height:640px; border-radius:50%; background:var(--grad); opacity:.18; filter:blur(90px); top:-140px; right:-160px; z-index:0; }
  .hero-img-wrap{ position:relative; z-index:2; border-radius:var(--radius-lg); overflow:hidden; }
  .hero-img-wrap img{ width:100%; display:block; }
  .hero-dot-grid{ position:absolute; top:20px; left:-40px; width:90px; height:90px; background-image:radial-gradient(circle,var(--magenta) 1.6px,transparent 1.6px); background-size:14px 14px; opacity:.35; z-index:1; }

  .module-strip{ position:relative; z-index:3; margin-top:25px; padding-bottom:0; }
  .module-row{ display:grid; grid-template-columns:repeat(6,1fr); gap:16px; background:#fff; border-radius:var(--radius-lg); box-shadow:var(--shadow-md); border:1px solid var(--border); padding:28px 24px; }
  .module-cell{ display:flex; flex-direction:column; gap:10px; color:inherit; text-decoration:none; transition:transform .18s; }
  .module-cell:hover{ transform:translateY(-3px); }
  .module-icon{ width:42px; height:42px; border-radius:11px; display:flex; align-items:center; justify-content:center; color:#fff; font-weight:800; font-size:14px; }
  .module-cell h4{ font-size:14.5px; }
  .module-cell p{ font-size:12px; color:var(--text-sec); line-height:1.45; }
  .mi-hrms{ background:var(--orange); }
  .mi-crm{ background:var(--magenta); }
  .mi-lms{ background:var(--gold); }
  .mi-pm{ background:linear-gradient(135deg,var(--orange),var(--magenta)); }
  .mi-fin{ background:var(--navy); }
  .mi-inv{ background:linear-gradient(135deg,var(--gold),var(--orange)); }

  .industry-insights{ background:var(--bg-warm); padding-top:150px; }
  .ii-grid{ display:grid; grid-template-columns:0.85fr 1.15fr; gap:56px; align-items:start; }
  .ii-grid h2{ font-size:30px; margin-bottom:10px; }
  .ii-grid > div > p.sub{ color:var(--text-sec); font-size:15px; margin-bottom:28px; max-width:380px; }
  .industry-list{ display:grid; grid-template-columns:1fr 1fr; gap:20px; }
  .industry-item{ display:flex; align-items:flex-start; gap:12px; }
  .industry-item .ii-icon{ width:38px; height:38px; border-radius:10px; background:#fff; border:1px solid var(--border); display:flex; align-items:center; justify-content:center; color:var(--magenta); font-weight:800; font-size:13px; flex-shrink:0; transition:background .15s, color .15s; }
  .industry-item a{ color:inherit; text-decoration:none; }
  .industry-item h4{ font-size:14px; font-weight:700; }
  .industry-item h4 a:hover{ color:var(--magenta); }
  .industry-item a:hover .ii-icon{ background:var(--magenta); color:#fff; border-color:var(--magenta); }
  .industry-item p{ font-size:12px; color:var(--text-sec); margin-top:3px; line-height:1.4; }
  .regions-mini{ margin-top:36px; padding-top:28px; border-top:1px solid var(--border); }
  .regions-mini-label{ font-size:12.5px; font-weight:700; color:var(--text-sec); margin-bottom:14px; }
  .regions-mini-badges{ display:flex; gap:10px; flex-wrap:wrap; }
  .regions-mini-badges span{ font-size:12.5px; font-weight:600; color:var(--navy); background:#fff; border:1px solid var(--border); padding:7px 14px; border-radius:20px; }
  .trust-mini{ margin-top:28px; display:flex; flex-direction:column; gap:18px; }
  .trust-mini-item{ display:flex; gap:14px; align-items:flex-start; }
  .tm-icon{ width:34px; height:34px; border-radius:9px; background:#fff; border:1px solid var(--border); display:flex; align-items:center; justify-content:center; font-size:14px; flex-shrink:0; color:var(--magenta); }
  .trust-mini-item h4{ font-size:13.5px; margin-bottom:3px; }
  .trust-mini-item p{ font-size:12px; color:var(--text-sec); line-height:1.5; }

  .insights-stats{ display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-bottom:24px; }
  .stat-card{ background:#fff; border:1px solid var(--border); border-radius:var(--radius-md); padding:18px; }
  .stat-card .st-label{ font-size:12px; color:var(--text-sec); margin-bottom:6px; }
  .stat-card .st-value{ font-size:22px; font-weight:800; }
  .stat-card .st-delta{ font-size:11.5px; font-weight:700; margin-top:6px; }
  .st-up{ color:#2E9E5B; } .st-down{ color:var(--coral); }

  .insights-visual-panel{ position:relative; border-radius:var(--radius-lg); overflow:hidden; box-shadow:var(--shadow-lg); border:1px solid var(--border); }
  .insights-visual-panel img{ width:100%; display:block; }

  .modules-grid{ display:grid; grid-template-columns:1.3fr 1fr; gap:20px; margin-bottom:20px; }
  .modules-grid.row2{ grid-template-columns:1fr 1fr 1fr; }
  .module-card{ border:1px solid var(--border); border-radius:var(--radius-lg); padding:32px; background:#fff; transition:transform .2s, box-shadow .2s; }
  .module-card:hover{ transform:translateY(-3px); box-shadow:var(--shadow-md); }
  .module-card.featured{ background:var(--navy); color:#fff; }
  .module-card .mc-icon{ width:44px; height:44px; border-radius:11px; margin-bottom:18px; display:flex; align-items:center; justify-content:center; color:#fff; font-weight:800; font-size:15px; }
  .module-card h3{ font-size:20px; margin-bottom:8px; }
  .module-card p{ font-size:14px; color:var(--text-sec); margin-bottom:14px; }
  .module-card.featured p{ color:var(--text-light); }
  .module-card .explore{ font-size:13.5px; font-weight:700; color:var(--magenta); }
  .module-card.featured .explore{ color:var(--gold); }
  .module-card ul.tags{ display:flex; flex-wrap:wrap; gap:6px; margin-bottom:14px; }
  .module-card ul.tags li{ font-size:11.5px; background:var(--bg-warm); color:var(--text-sec); padding:4px 10px; border-radius:20px; }
  .module-card.featured ul.tags li{ background:rgba(255,255,255,.1); color:#fff; }

  .jewellery{ background:linear-gradient(160deg,#241407,#3A2107); color:#fff; position:relative; overflow:hidden; }
  .jewellery .jw-glow{ position:absolute; width:500px; height:500px; border-radius:50%; background:radial-gradient(circle,rgba(244,199,84,.28),transparent 70%); top:-140px; right:-100px; filter:blur(50px); }
  .jewellery-grid{ display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center; position:relative; z-index:2; }
  .jewellery h2{ font-size:clamp(28px,4vw,36px); margin-bottom:16px; }
  .jewellery p{ color:#E9DAC1; font-size:15.5px; margin-bottom:24px; }
  .jewellery-list{ display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:26px; }
  .jewellery-list li{ font-size:13.5px; display:flex; align-items:center; gap:8px; color:#F3E7CE; }
  .jewellery-list li::before{ content:''; width:5px; height:5px; border-radius:50%; background:var(--gold); }
  .jewel-table{ background:rgba(255,255,255,.06); border:1px solid rgba(244,199,84,.25); border-radius:var(--radius-lg); padding:20px; backdrop-filter:blur(8px); }
  .jewel-row{ display:grid; grid-template-columns:1.3fr .9fr .9fr .9fr; gap:8px; padding:11px 4px; font-size:12.5px; border-bottom:1px solid rgba(255,255,255,.08); }
  .jewel-row.head{ color:var(--gold); font-weight:700; text-transform:uppercase; letter-spacing:.04em; font-size:10.5px; }
  .jewel-row:not(.head){ color:#F3E7CE; }
  .jewel-status{ color:#8CE0A8; font-weight:600; }

  .ai-section{ background:#0A0A17; color:#fff; position:relative; overflow:hidden; }
  .ai-glow-1{ position:absolute; width:520px; height:520px; border-radius:50%; background:radial-gradient(circle,rgba(124,58,237,.35),transparent 70%); top:-160px; left:-120px; filter:blur(60px); }
  .ai-glow-2{ position:absolute; width:460px; height:460px; border-radius:50%; background:radial-gradient(circle,rgba(236,72,153,.28),transparent 70%); bottom:-160px; right:-80px; filter:blur(60px); }
  .ai-grid{ display:grid; grid-template-columns:1fr 1.15fr; gap:56px; align-items:center; position:relative; z-index:2; }
  .ai-section h2{ font-size:clamp(28px,4vw,38px); margin-bottom:16px; color:#fff; }
  .ai-grad{ background:linear-gradient(135deg,#F4C754,#EE8440,#EC4899,#7C3AED); -webkit-background-clip:text; background-clip:text; color:transparent; }
  .ai-section > .wrap > div:first-child > p{ color:#B7B3CC; font-size:16px; margin-bottom:32px; max-width:460px; }
  .ai-feature-list{ display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-bottom:28px; }
  .ai-feature{ display:flex; gap:12px; align-items:flex-start; }
  .ai-f-icon{ width:36px; height:36px; border-radius:10px; display:flex; align-items:center; justify-content:center; color:#fff; font-weight:800; font-size:14px; flex-shrink:0; }
  .ai-feature h4{ font-size:13.5px; margin-bottom:3px; color:#fff; }
  .ai-feature p{ font-size:11.5px; color:#9E9BB5; line-height:1.4; }
  .ai-visual{ border-radius:var(--radius-lg); overflow:hidden; box-shadow:0 40px 90px rgba(0,0,0,.5); position:relative; z-index:2; }
  .ai-visual img{ width:100%; display:block; }

  .benefits-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
  .benefit-cell{ background:#fff; padding:30px; border:1px solid var(--border); border-radius:var(--radius-lg); transition:transform .22s, box-shadow .22s, border-color .22s; position:relative; overflow:hidden; }
  .benefit-cell:hover{ transform:translateY(-4px); box-shadow:var(--shadow-md); border-color:transparent; }
  .benefit-cell .b-icon{ width:44px; height:44px; border-radius:12px; display:flex; align-items:center; justify-content:center; margin-bottom:18px; color:#fff; font-weight:800; font-size:17px; box-shadow:0 8px 18px rgba(0,0,0,.12); }
  .benefit-cell h3{ font-size:16.5px; margin-bottom:7px; }
  .benefit-cell p{ font-size:13.5px; color:var(--text-sec); }
  .bi-1 .b-icon{ background:linear-gradient(135deg,var(--magenta),#C0349F); }
  .bi-2 .b-icon{ background:linear-gradient(135deg,var(--orange),#F5A46B); }
  .bi-3 .b-icon{ background:linear-gradient(135deg,var(--gold),#F7D77E); color:var(--navy); box-shadow:0 8px 18px rgba(244,199,84,.35); }
  .bi-4 .b-icon{ background:linear-gradient(135deg,#2E9E5B,#5DC886); }
  .bi-5 .b-icon{ background:linear-gradient(135deg,var(--navy),#1B4A66); }
  .bi-6 .b-icon{ background:linear-gradient(135deg,var(--coral),#F0645F); }
  .bi-1::before, .bi-2::before, .bi-3::before, .bi-4::before, .bi-5::before, .bi-6::before{
    content:''; position:absolute; top:-30px; right:-30px; width:100px; height:100px; border-radius:50%; opacity:.08; z-index:0;
  }
  .bi-1::before{ background:var(--magenta); } .bi-2::before{ background:var(--orange); } .bi-3::before{ background:var(--gold); }
  .bi-4::before{ background:#2E9E5B; } .bi-5::before{ background:var(--navy); } .bi-6::before{ background:var(--coral); }
  .benefit-cell > *{ position:relative; z-index:1; }

  .pricing-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
  .price-card{ border:1px solid var(--border); border-radius:var(--radius-lg); padding:32px; background:#fff; }
  .price-card.highlight{ border-color:var(--magenta); box-shadow:0 0 0 3px rgba(157,19,131,.1), var(--shadow-md); position:relative; }
  .price-card .badge{ position:absolute; top:-13px; left:50%; transform:translateX(-50%); background:var(--magenta); color:#fff; font-size:11.5px; font-weight:700; padding:5px 14px; border-radius:20px; }
  .price-card h3{ font-size:19px; margin-bottom:6px; }
  .price-card .p-desc{ font-size:13.5px; color:var(--text-sec); margin-bottom:20px; }
  .price-card ul{ display:flex; flex-direction:column; gap:10px; margin:22px 0; }
  .price-card ul li{ font-size:13.5px; display:flex; gap:9px; align-items:flex-start; }
  .price-card ul li::before{ content:'✓'; color:var(--magenta); font-weight:800; }

  .faq-list{ max-width:760px; margin:0 auto; }
  .faq-item{ border-bottom:1px solid var(--border); }
  .faq-q{ width:100%; text-align:left; background:none; border:none; padding:22px 4px; display:flex; justify-content:space-between; align-items:center; font-size:15.5px; font-weight:600; }
  .faq-q .plus{ font-size:20px; color:var(--magenta); transition:transform .2s; flex-shrink:0; margin-left:16px; }
  .faq-item.open .plus{ transform:rotate(45deg); }
  .faq-a{ max-height:0; overflow:hidden; transition:max-height .25s ease; font-size:14.5px; color:var(--text-sec); }
  .faq-item.open .faq-a{ max-height:200px; }
  .faq-a-inner{ padding:0 4px 22px; }

  .dark-strip{ background:var(--navy); color:#fff; padding:64px 0; position:relative; overflow:hidden; }
  .dark-glow{ position:absolute; width:500px; height:500px; border-radius:50%; background:var(--grad); opacity:.16; filter:blur(90px); top:-200px; right:10%; }
  .feature-row{ display:grid; grid-template-columns:repeat(6,1fr); gap:20px; align-items:start; position:relative; z-index:2; }
  .feature-item{ display:flex; flex-direction:column; gap:10px; }
  .feature-item .fi-icon{ width:38px; height:38px; border-radius:10px; background:rgba(255,255,255,.08); display:flex; align-items:center; justify-content:center; color:var(--gold); font-weight:800; font-size:13px; }
  .feature-item h4{ font-size:14px; }
  .feature-item p{ font-size:12px; color:var(--text-light); line-height:1.45; }
  .feature-cta{ display:flex; flex-direction:column; gap:12px; }
  .feature-cta h4{ font-size:15.5px; }

  .final-cta{ background:var(--navy); color:#fff; text-align:center; padding:100px 0; position:relative; overflow:hidden; }
  .final-cta .fc-glow{ position:absolute; width:460px; height:460px; border-radius:50%; background:var(--grad); opacity:.2; filter:blur(90px); top:-160px; left:50%; transform:translateX(-50%); }
  .final-cta h2{ font-size:clamp(28px,4vw,40px); margin-bottom:16px; position:relative; z-index:2; }
  .final-cta p{ color:var(--text-light); font-size:16.5px; margin-bottom:32px; max-width:520px; margin-left:auto; margin-right:auto; position:relative; z-index:2; }
  .final-cta-btns{ display:flex; gap:14px; justify-content:center; flex-wrap:wrap; position:relative; z-index:2; }

  /* CTA Banner (Start Free Trial / Get a Demo) */
  .cta-banner-section{ background:#fff; padding:0 0 0; }
  .cta-banner{
    background:#fff; border:1px solid var(--border); border-radius:var(--radius-xl);
    box-shadow:var(--shadow-lg); padding:48px 56px; margin-bottom:-1px;
    display:flex; align-items:center; gap:40px;
  }
  .cta-banner-col{ flex:1; text-align:center; }
  .cta-banner-col h3{ font-size:26px; margin-bottom:14px; position:relative; display:inline-block; padding-bottom:10px; }
  .cta-banner-col h3::after{ content:''; position:absolute; bottom:0; left:50%; transform:translateX(-50%); width:56px; height:3px; background:var(--magenta); border-radius:2px; }
  .cta-banner-col p{ font-size:14.5px; color:var(--text-sec); margin-bottom:24px; max-width:340px; margin-left:auto; margin-right:auto; }
  .cta-banner-divider{ font-size:15px; color:var(--text-sec); font-weight:600; flex-shrink:0; }
  .btn-dark-cta, .btn-outline-cta{ display:inline-flex; align-items:center; justify-content:center; padding:13px 30px; font-size:15px; font-weight:700; border-radius:10px; transition:all .2s; }
  .btn-dark-cta{ background:var(--navy); color:#fff; }
  .btn-dark-cta:hover{ background:var(--magenta); }
  .btn-outline-cta{ background:#fff; color:var(--navy); border:1.5px solid var(--navy); }
  .btn-outline-cta:hover{ background:var(--navy); color:#fff; }

  footer{ background:linear-gradient(160deg,#0B2332 0%,#0E2C3F 55%,#122F2A 100%); color:var(--text-light); padding:56px 0 26px; border-top:1px solid rgba(255,255,255,.08); position:relative; overflow:hidden; }
  footer::before{ content:''; position:absolute; width:600px; height:600px; border-radius:50%; background:var(--grad); opacity:.08; filter:blur(100px); top:-260px; right:-100px; pointer-events:none; }
  footer .wrap{ position:relative; z-index:1; }
  .footer-head{ display:flex; align-items:center; justify-content:space-between; margin-bottom:48px; flex-wrap:wrap; gap:20px; }
  .footer-logo-img{ height:42px; width:auto; }
  .footer-top{ display:grid; grid-template-columns:1fr 1.2fr 1fr 1.1fr; gap:32px; padding-bottom:28px; border-bottom:1px solid rgba(255,255,255,.1); }
  .footer-col h4{ font-size:16px; color:#fff; margin-bottom:18px; font-weight:700; }
  .footer-col ul{ display:flex; flex-direction:column; gap:13px; }
  .footer-col a{ font-size:14.5px; color:var(--text-light); }
  .footer-col a:hover{ color:#fff; }
  .footer-newsletter input{ width:100%; background:transparent; border:none; border-bottom:1px solid rgba(255,255,255,.35); color:#fff; font-size:14.5px; padding:8px 0; margin-bottom:16px; font-family:inherit; }
  .footer-newsletter input::placeholder{ color:#8CA0AE; }
  .footer-newsletter input:focus{ outline:none; border-bottom-color:var(--magenta); }
  .footer-subscribe button{ background:var(--magenta); color:#fff; border:none; padding:10px 22px; border-radius:8px; font-size:14px; font-weight:700; }
  .footer-subscribe button:hover{ background:var(--magenta-dark); }
  .footer-bottom{ display:flex; justify-content:space-between; align-items:center; padding-top:22px; font-size:13px; flex-wrap:wrap; gap:12px; color:var(--text-light); }
  .footer-bottom a{ color:var(--text-light); }
  .footer-bottom a:hover{ color:#fff; }
  .footer-social{ display:flex; gap:12px; }
  .footer-social a{ width:34px; height:34px; border-radius:50%; background:rgba(255,255,255,.08); display:flex; align-items:center; justify-content:center; font-size:13px; color:#fff; }
  .footer-social a:hover{ background:rgba(255,255,255,.16); }

  .scroll-top-btn{
    position:fixed; bottom:28px; right:28px; width:46px; height:46px; border-radius:50%;
    background:var(--navy); color:#fff; border:none; font-size:18px; cursor:pointer;
    box-shadow:0 10px 26px rgba(11,35,50,.35); z-index:150;
    opacity:0; visibility:hidden; transform:translateY(10px); transition:all .25s;
  }
  .scroll-top-btn.visible{ opacity:1; visibility:visible; transform:translateY(0); }
  .scroll-top-btn:hover{ background:var(--magenta); }

  @media (max-width:1100px){
    .module-row{ grid-template-columns:repeat(3,1fr); }
    .ii-grid{ grid-template-columns:1fr; }
    .insights-visual-panel{ margin-top:20px; }
    .feature-row{ grid-template-columns:repeat(3,1fr); gap:28px; }
    .feature-cta{ grid-column:span 3; }
    .footer-top{ grid-template-columns:1fr 1fr 1fr; }
  }
  @media (max-width:860px){
    .wrap{ padding:0 22px; }
    .nav{ padding:14px 22px; }
    .nav-center{ display:none; }
    .nav-center.mobile-open{
      display:flex; flex-direction:column; align-items:stretch; gap:2px;
      position:fixed; top:66px; left:0; right:0; bottom:0;
      background:#fff; padding:16px 22px 100px; z-index:199;
      overflow-y:auto; box-shadow:0 12px 30px rgba(11,35,50,.12);
    }
    .nav-center.mobile-open .nav-item button,
    .nav-center.mobile-open > a{
      width:100%; padding:16px 4px; font-size:16px; border-bottom:1px solid var(--border); border-radius:0; justify-content:space-between;
    }
    .nav-center.mobile-open .mega{
      position:static; transform:none; opacity:1; visibility:visible; width:100%;
      box-shadow:none; border:none; padding:8px 0 8px 12px; display:flex; flex-direction:column; gap:0;
      max-height:0; overflow:hidden; transition:max-height .25s ease;
    }
    .nav-center.mobile-open .nav-item.open .mega{ max-height:600px; }
    .nav-center.mobile-open .mega-col-title{ padding-top:14px; }
    .mobile-toggle{ display:block; }
    .hero{ padding-top:120px; }
    .hero-grid{ grid-template-columns:1fr; }
    .hero-visual{ margin-top:32px; }
    .module-strip{ margin-top:28px; }
    .module-row{ grid-template-columns:1fr 1fr; }
    .industry-insights{ padding-top:60px; }
    .modules-grid, .modules-grid.row2{ grid-template-columns:1fr; }
    .jewellery-grid{ grid-template-columns:1fr; }
    .jewellery-grid > div:first-child{ order:2; }
    .ai-grid{ grid-template-columns:1fr; }
    .ai-feature-list{ grid-template-columns:1fr; }
    .benefits-grid{ grid-template-columns:1fr; }
    .pricing-grid{ grid-template-columns:1fr; }
    .feature-row{ grid-template-columns:1fr 1fr; }
    .feature-cta{ grid-column:span 2; }
    .footer-top{ grid-template-columns:1fr 1fr; }
    .cta-banner{ flex-direction:column; padding:36px 28px; gap:24px; }
    .cta-banner-divider{ padding:2px 0; }
    section{ padding:64px 0; }
  }
  @media (max-width:480px){
    .footer-top{ grid-template-columns:1fr; }
    .footer-head{ justify-content:flex-start; }
    .feature-row{ grid-template-columns:1fr 1fr; }
    .module-row{ grid-template-columns:1fr; }
    .cta-banner{ padding:28px 20px; }
    .scroll-top-btn{ width:42px; height:42px; bottom:18px; right:18px; }
  }

  a:focus-visible, button:focus-visible{ outline:2px solid var(--magenta); outline-offset:2px; }

  /* ================= LOGIN PAGE ================= */
  .login-page{ padding-top:70px; }
  .login-shell{ display:grid; grid-template-columns:1fr 1fr; min-height:calc(100vh - 70px); }
  .login-visual{ background:var(--navy); color:#fff; position:relative; overflow:hidden; display:flex; align-items:center; padding:60px; }
  .login-visual .glow{ position:absolute; width:520px; height:520px; border-radius:50%; background:var(--grad); opacity:.22; filter:blur(90px); top:-140px; left:-120px; }
  .login-visual-content{ position:relative; z-index:2; max-width:440px; }
  .login-visual-content h1{ font-size:clamp(26px,3vw,34px); margin:14px 0 16px; color:#fff; }
  .login-visual-content p{ color:var(--text-light); font-size:15.5px; margin-bottom:28px; }
  .login-visual-list{ display:flex; flex-direction:column; gap:14px; }
  .login-visual-list li{ font-size:14.5px; display:flex; gap:10px; align-items:center; color:#EAF0F5; }
  .login-visual-list li::before{ content:'✓'; color:var(--gold); font-weight:800; }

  .login-form-panel{ display:flex; align-items:center; justify-content:center; padding:60px 40px; background:var(--bg-warm); }
  .login-form-card{ width:100%; max-width:400px; }
  .login-logo{ height:38px; margin-bottom:28px; }
  .login-form-card h2{ font-size:25px; margin-bottom:8px; }
  .login-sub{ color:var(--text-sec); font-size:14.5px; margin-bottom:28px; }
  .login-form label{ display:block; font-size:13.5px; font-weight:600; margin-bottom:18px; color:var(--navy); }
  .login-form input[type="email"], .login-form input[type="password"]{ width:100%; margin-top:6px; padding:12px 14px; border:1px solid var(--border); border-radius:10px; font-size:14.5px; font-family:inherit; background:#fff; }
  .login-form input:focus{ outline:none; border-color:var(--magenta); box-shadow:0 0 0 3px rgba(157,19,131,.12); }
  .login-form-row{ display:flex; justify-content:space-between; align-items:center; margin-bottom:24px; font-size:13.5px; }
  .login-checkbox{ display:flex !important; align-items:center; gap:8px; font-weight:500 !important; color:var(--text-sec); margin-bottom:0 !important; }
  .login-checkbox input{ width:auto; margin:0; }
  .login-forgot{ color:var(--magenta); font-weight:600; }
  .login-submit{ width:100%; }
  .login-divider{ text-align:center; margin:28px 0 20px; position:relative; font-size:13px; color:var(--text-sec); }
  .login-divider::before{ content:''; position:absolute; top:50%; left:0; right:0; height:1px; background:var(--border); }
  .login-divider span{ background:var(--bg-warm); padding:0 14px; position:relative; }
  .login-trial-btn{ width:100%; }

  @media (max-width:860px){
    .login-shell{ grid-template-columns:1fr; min-height:auto; }
    .login-visual{ padding:44px 24px 36px; }
    .login-form-panel{ padding:36px 24px 56px; }
  }

  /* ================= FEATURE PAGES ================= */
  .feature-hero{ padding:150px 0 80px; text-align:center; position:relative; overflow:hidden; }
  .feature-hero-inner{ max-width:720px; margin:0 auto; position:relative; z-index:2; }
  .feature-hero .hero-badge{ display:inline-flex; align-items:center; gap:8px; padding:8px 16px; border-radius:30px; font-size:12.5px; font-weight:700; margin-bottom:22px; }
  .feature-hero h1{ font-size:clamp(32px,4.5vw,48px); margin-bottom:18px; color:#fff; }
  .feature-hero .lead{ font-size:17px; margin-bottom:32px; }
  .feature-hero .hero-ctas{ display:flex; gap:14px; justify-content:center; flex-wrap:wrap; }

  .fa-gold{ background:linear-gradient(160deg,#3A2107,#241407); }
  .fa-gold .hero-badge{ background:rgba(244,199,84,.15); color:var(--gold); }
  .fa-gold .lead{ color:#E9DAC1; }

  .fa-magenta{ background:linear-gradient(160deg,#2E0B27,#1A0617); }
  .fa-magenta .hero-badge{ background:rgba(157,19,131,.2); color:#E88FD4; }
  .fa-magenta .lead{ color:#E7CBE0; }

  .fa-navy{ background:linear-gradient(160deg,var(--navy),#061420); }
  .fa-navy .hero-badge{ background:rgba(255,255,255,.08); color:#9FC4DB; }
  .fa-navy .lead{ color:var(--text-light); }

  .fa-orange{ background:linear-gradient(160deg,#3D2308,#241407); }
  .fa-orange .hero-badge{ background:rgba(238,132,64,.18); color:var(--orange); }
  .fa-orange .lead{ color:#F0D9C2; }

  .fa-navygold{ background:linear-gradient(160deg,var(--navy),#3A2107); }
  .fa-navygold .hero-badge{ background:rgba(244,199,84,.15); color:var(--gold); }
  .fa-navygold .lead{ color:var(--text-light); }

  .fcap-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
  .niche-row{ display:flex; flex-wrap:wrap; gap:12px; justify-content:center; }
  .niche-chip{ background:#fff; border:1px solid var(--border); color:var(--navy); font-size:13.5px; font-weight:600; padding:10px 20px; border-radius:24px; }
  .legal-content{ max-width:760px; margin:0 auto; padding:20px 0 80px; }
  .legal-section{ padding-bottom:32px; margin-bottom:32px; border-bottom:1px solid var(--border); }
  .legal-section:last-child{ border-bottom:none; }
  .legal-section h2{ font-size:20px; color:var(--navy); margin-bottom:14px; }
  .legal-section p{ font-size:14.5px; color:var(--text-sec); line-height:1.75; margin-bottom:12px; }
  .legal-section a{ color:var(--magenta); font-weight:600; }
  .sitemap-grid{ display:grid; grid-template-columns:repeat(5,1fr); gap:32px; padding-bottom:70px; }
  .sitemap-grid h3{ font-size:14px; color:var(--navy); margin-bottom:16px; text-transform:uppercase; letter-spacing:.04em; }
  .sitemap-grid ul{ display:flex; flex-direction:column; gap:11px; list-style:none; padding:0; }
  .sitemap-grid a{ color:var(--text-sec); font-size:13.5px; }
  .sitemap-grid a:hover{ color:var(--magenta); }
  .faq-cats{ display:flex; flex-wrap:wrap; gap:8px; justify-content:center; margin-bottom:36px; }
  .faq-cat-btn{ padding:8px 18px; font-size:13px; font-weight:600; border-radius:20px; border:1px solid var(--border); background:#fff; color:var(--text-sec); cursor:pointer; }
  .faq-cat-btn.active{ background:var(--magenta); border-color:var(--magenta); color:#fff; }
  @media (max-width:900px){ .sitemap-grid{ grid-template-columns:1fr 1fr; } }
  @media (max-width:560px){ .sitemap-grid{ grid-template-columns:1fr; } }
  .fcap-card{ border:1px solid var(--border); border-radius:var(--radius-lg); padding:26px; background:#fff; transition:transform .2s, box-shadow .2s; }
  .fcap-card:hover{ transform:translateY(-3px); box-shadow:var(--shadow-md); }
  .fcap-icon{ width:38px; height:38px; border-radius:10px; display:flex; align-items:center; justify-content:center; color:#fff; font-weight:800; font-size:13px; margin-bottom:14px; }
  .fa-gold .fcap-icon, .fcap-card .fcap-icon{ background:var(--gold); color:var(--navy); }
  .fcap-card h3{ font-size:15.5px; margin-bottom:12px; }
  .fcap-card ul{ display:flex; flex-direction:column; gap:8px; }
  .fcap-card ul li{ font-size:13px; color:var(--text-sec); display:flex; align-items:flex-start; gap:8px; }
  .fcap-card ul li::before{ content:'✓'; color:var(--magenta); font-weight:800; flex-shrink:0; }

  .frelated-row{ display:flex; gap:16px; justify-content:center; flex-wrap:wrap; }
  .frelated-link{ padding:14px 26px; border:1px solid var(--border); border-radius:12px; background:#fff; font-size:14.5px; font-weight:600; color:var(--navy); transition:all .2s; }
  .frelated-link:hover{ border-color:var(--magenta); color:var(--magenta); transform:translateY(-2px); }

  @media (max-width:860px){
    .feature-hero{ padding:120px 0 56px; }
    .fcap-grid{ grid-template-columns:1fr 1fr; }
  }
  @media (max-width:480px){
    .fcap-grid{ grid-template-columns:1fr; }
  }

  /* ================= CONTACT US ================= */
  .contact-grid{ display:grid; grid-template-columns:1.2fr 1fr; gap:32px; align-items:start; }
  .contact-form-card{ border:1px solid var(--border); border-radius:var(--radius-lg); padding:36px; background:#fff; }
  .contact-form-card h2{ font-size:22px; margin-bottom:22px; }
  .contact-form-card textarea{ width:100%; margin-top:6px; padding:12px 14px; border:1px solid var(--border); border-radius:10px; font-size:14.5px; font-family:inherit; background:#fff; resize:vertical; }
  .contact-form-card textarea:focus{ outline:none; border-color:var(--magenta); box-shadow:0 0 0 3px rgba(157,19,131,.12); }
  .contact-info-card{ background:var(--navy); border-radius:var(--radius-lg); padding:36px; color:#fff; }
  .contact-info-card h3{ font-size:16px; margin-bottom:20px; color:#fff; }
  .contact-region{ display:flex; gap:14px; align-items:center; margin-bottom:16px; }
  .contact-region .ii-icon{ background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.15); color:var(--gold); }
  .contact-region b{ font-size:14.5px; display:block; }
  .contact-region p{ font-size:12.5px; color:var(--text-light); margin-top:2px; }
  .contact-divider{ height:1px; background:rgba(255,255,255,.12); margin:24px 0; }

  @media (max-width:860px){
    .contact-grid{ grid-template-columns:1fr; }
  }

  /* ================= LOGIN PAGE — FULL-BLEED BACKGROUND, FORM ON RIGHT ================= */
  .login-page-bg{ position:relative; overflow:hidden; min-height:100vh; padding-top:70px; display:flex; }
  .login-bg-layer{ position:absolute; inset:0; z-index:0; }
  .login-bg-layer img{ width:100%; height:100%; object-fit:cover; object-position:center; display:block; }
  .login-bg-overlay{ position:absolute; inset:0; z-index:1; background:rgba(255,255,255,.10); }

  .login-shell-right{
    position:relative; z-index:2; width:100%;
    display:flex; align-items:center; justify-content:flex-end;
    padding:64px 8vw;
  }
  .login-form-card-large{
    width:100%; max-width:440px;
    background:rgba(255,255,255,.97); backdrop-filter:blur(18px);
    border:1px solid rgba(255,255,255,.7); border-radius:var(--radius-xl);
    padding:44px 42px; box-shadow:var(--shadow-lg);
  }
  .login-form-card-large .login-logo{ height:40px; margin-bottom:26px; }
  .login-form-card-large h2{ font-size:25px; margin-bottom:8px; }
  .login-form-card-large .login-sub{ font-size:14.5px; margin-bottom:26px; }
  .login-form-card-large .login-form label{ font-size:13.5px; margin-bottom:18px; }
  .login-form-card-large .login-form input[type="email"],
  .login-form-card-large .login-form input[type="password"]{ padding:12px 14px; font-size:15px; }
  .login-form-card-large .login-form-row{ margin-bottom:20px; }
  .login-form-card-large .login-recaptcha-wrap{ margin-bottom:20px; }
  .login-form-card-large .login-submit{ padding:14px; font-size:15.5px; }
  .login-form-card-large .login-divider{ margin:26px 0 20px; font-size:13px; }
  .login-form-card-large .login-trial-btn{ padding:13px; font-size:14.5px; }

  .login-recaptcha-wrap{ display:flex; justify-content:center; margin-bottom:20px; }

  /* ================= LOGIN PAGE — MORE ABOUT THE PRODUCT ================= */
  .login-section-divider{ background:var(--bg-warm); padding:36px 0; display:flex; justify-content:center; }
  .login-section-divider img{ width:min(600px, 70%); height:auto; opacity:.9; }
  .login-about{ background:var(--bg-warm); padding:20px 0 90px; }
  .login-about-grid{ display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:start; }
  .login-about-block h2{ font-size:26px; margin:14px 0 16px; }
  .login-about-block p{ font-size:14.5px; color:var(--text-sec); margin-bottom:22px; line-height:1.65; }
  .login-about-list{ display:flex; flex-direction:column; gap:11px; }
  .login-about-list li{ font-size:13.5px; display:flex; align-items:center; gap:9px; color:var(--navy); font-weight:500; }
  .login-about-list li::before{ content:'✓'; color:var(--magenta); font-weight:800; }

  /* Forgot-password modal (redesigned visuals, same functional #ids) */
  .fp-modal-overlay{ display:none !important; position:fixed; top:0; left:0; right:0; bottom:0; background:rgba(11,35,50,.55); z-index:9999; justify-content:center; align-items:center; backdrop-filter:blur(3px); }
  .fp-modal-box{ background:#fff; width:90%; max-width:440px; border-radius:var(--radius-lg); box-shadow:var(--shadow-lg); padding:36px; position:relative; }
  .fp-modal-title{ color:var(--navy); text-align:center; margin-bottom:22px; font-weight:800; font-size:22px; }
  .fp-label{ display:block; font-weight:600; margin-bottom:8px; color:var(--navy); font-size:13.5px; }
  .fp-input{ width:100%; padding:12px 14px; font-size:14.5px; border-radius:10px; border:1px solid var(--border); box-sizing:border-box; margin-bottom:24px; font-family:inherit; }
  .fp-input:focus{ outline:none; border-color:var(--magenta); box-shadow:0 0 0 3px rgba(157,19,131,.12); }
  .fp-modal-actions{ display:flex; justify-content:flex-end; gap:12px; }
  .btn-fp-cancel{ padding:11px 22px; border-radius:10px; border:none; font-weight:600; cursor:pointer; font-size:14px; background:var(--bg-warm); color:var(--navy); }
  .btn-fp-submit{ padding:11px 22px; border-radius:10px; border:none; font-weight:700; cursor:pointer; font-size:14px; background:var(--magenta); color:#fff; }
  .btn-fp-submit:hover{ background:var(--magenta-dark); }

  @media (max-width:1024px){
    .login-about-grid{ grid-template-columns:1fr; gap:36px; }
  }
  @media (max-width:860px){
    .login-shell-right{ padding:32px 20px; justify-content:center; }
    .login-form-card-large{ max-width:400px; padding:32px 26px; }
    .login-about{ padding:56px 0; }
  }

  /* ================= FREE INVOICE GENERATOR ================= */
  .ig-shell{ display:grid; grid-template-columns:1fr 1.1fr; gap:28px; align-items:start; }
  .ig-form-panel{
    background:#fff; border:1px solid var(--border); border-radius:var(--radius-lg);
    padding:28px; box-shadow:var(--shadow-md); position:sticky; top:90px; max-height:calc(100vh - 110px); overflow-y:auto;
  }
  .ig-field-group{ margin-bottom:16px; }
  .ig-field-row-2{ display:grid; grid-template-columns:1fr 1fr; gap:14px; }
  .ig-label{ display:block; font-size:12.5px; font-weight:700; color:var(--navy); margin-bottom:6px; }
  .ig-input, .ig-select{
    width:100%; padding:10px 12px; border:1px solid var(--border); border-radius:9px;
    font-size:13.5px; font-family:inherit; background:#fff; color:var(--text);
  }
  .ig-input:focus, .ig-select:focus{ outline:none; border-color:var(--magenta); box-shadow:0 0 0 3px rgba(157,19,131,.1); }
  textarea.ig-input{ resize:vertical; }
  .ig-form-divider{
    font-size:11.5px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; color:var(--magenta);
    margin:22px 0 14px; padding-top:16px; border-top:1px solid var(--border);
  }
  .ig-field-group:first-child + .ig-form-divider, .ig-shell .ig-form-divider:first-of-type{ border-top:none; padding-top:0; margin-top:0; }

  .ig-logo-upload{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
  .ig-logo-filename{ font-size:12px; color:var(--text-sec); }
  .ig-logo-remove{ background:none; border:none; color:var(--coral); font-size:12px; font-weight:600; cursor:pointer; text-decoration:underline; }

  .ig-items-header{
    display:grid; grid-template-columns:2.2fr 0.7fr 0.9fr 0.9fr 28px; gap:8px;
    font-size:10.5px; font-weight:700; text-transform:uppercase; letter-spacing:.04em; color:var(--text-sec);
    padding:0 2px 6px;
  }
  .ig-item-row{
    display:grid; grid-template-columns:2.2fr 0.7fr 0.9fr 0.9fr 28px; gap:8px; align-items:center; margin-bottom:8px;
  }
  .ig-item-row input{ padding:8px 9px; border:1px solid var(--border); border-radius:7px; font-size:13px; font-family:inherit; width:100%; }
  .ig-item-row input:focus{ outline:none; border-color:var(--magenta); }
  .ig-item-amount{ font-size:13px; font-weight:600; color:var(--navy); text-align:right; padding-right:4px; }
  .ig-item-remove{ background:var(--bg-warm); border:1px solid var(--border); border-radius:6px; color:var(--coral); font-size:12px; cursor:pointer; width:26px; height:26px; }
  .ig-add-item-btn{
    background:none; border:1px dashed var(--border); color:var(--magenta); font-size:13px; font-weight:600;
    padding:9px; width:100%; border-radius:8px; cursor:pointer; margin-top:4px;
  }
  .ig-add-item-btn:hover{ background:var(--bg-warm); }

  .ig-tax-mode{ display:flex; flex-direction:column; gap:10px; margin-top:6px; }
  .ig-radio{ display:flex; align-items:center; gap:8px; font-size:13px; color:var(--text); cursor:pointer; }
  .ig-radio input{ width:auto; }

  /* ---- live preview ---- */
  .ig-preview-panel{ position:sticky; top:90px; }
  .ig-preview-panel-label{ font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; color:var(--text-sec); margin-bottom:10px; text-align:center; }
  .ig-preview-doc{
    background:#fff; border:1px solid var(--border); border-radius:var(--radius-lg); box-shadow:var(--shadow-lg);
    padding:0; min-height:600px; overflow:hidden;
  }
  .ig-preview-doc-inner{ padding:40px; }
  .ig-preview-accent-bar{ height:8px; background:linear-gradient(90deg, var(--magenta), var(--orange), var(--gold)); }
  .ig-preview-top{ display:flex; justify-content:space-between; align-items:flex-start; margin-bottom:28px; gap:20px; }
  .ig-preview-logo{ max-height:110px; max-width:280px; min-height:60px; object-fit:contain; object-position:left top; display:block; }
  .ig-preview-logo-placeholder{
    width:200px; height:90px; border:1.5px dashed var(--border); border-radius:10px;
    display:flex; align-items:center; justify-content:center; color:var(--text-sec); font-size:12.5px; font-weight:600;
  }
  .ig-preview-doctitle{ text-align:right; }
  .ig-preview-doctitle h2{ font-size:26px; color:var(--navy); margin-bottom:8px; letter-spacing:-0.01em; }
  .ig-preview-docmeta{ font-size:12px; color:var(--text-sec); line-height:1.7; background:var(--bg-warm); padding:10px 14px; border-radius:8px; display:inline-block; }
  .ig-preview-parties{ display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-bottom:28px; padding-bottom:24px; border-bottom:1px solid var(--border); }
  .ig-preview-label{ font-size:10.5px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; color:var(--magenta); margin-bottom:6px; }
  .ig-preview-name{ font-size:14.5px; font-weight:700; color:var(--navy); margin-bottom:3px; }
  .ig-preview-addr{ font-size:12.5px; color:var(--text-sec); line-height:1.5; }
  .ig-preview-table{ width:100%; border-collapse:collapse; margin-bottom:20px; }
  .ig-preview-table thead th{ text-align:left; font-size:10.5px; text-transform:uppercase; letter-spacing:.04em; color:#fff; background:var(--navy); padding:10px 10px; }
  .ig-preview-table thead th:first-child{ border-radius:6px 0 0 6px; }
  .ig-preview-table thead th:last-child{ border-radius:0 6px 6px 0; }
  .ig-preview-table tbody td{ padding:11px 10px; font-size:13px; border-bottom:1px solid var(--border); color:var(--text); }
  .ig-preview-table tbody tr:nth-child(even){ background:var(--bg-warm); }
  .ig-num{ text-align:right !important; }
  .ig-preview-totals{ max-width:300px; margin-left:auto; margin-bottom:24px; background:var(--bg-warm); border-radius:12px; padding:16px 20px; }
  .ig-total-row{ display:flex; justify-content:space-between; font-size:13px; color:var(--text-sec); padding:6px 0; }
  .ig-total-grand{ border-top:2px solid var(--navy); margin-top:6px; padding-top:12px; font-size:18px; font-weight:800; color:var(--magenta); }
  .ig-preview-notes{ margin-bottom:24px; }
  .ig-preview-notes p{ font-size:12.5px; color:var(--text-sec); }
  .ig-preview-signature{ text-align:right; font-size:12.5px; color:var(--text-sec); border-top:1px solid var(--border); padding-top:40px; margin-top:40px; max-width:220px; margin-left:auto; }

  @media (max-width:1100px){
    .ig-shell{ grid-template-columns:1fr; }
    .ig-form-panel, .ig-preview-panel{ position:static; max-height:none; }
  }
  @media (max-width:640px){
    .ig-field-row-2{ grid-template-columns:1fr; }
    .ig-items-header{ display:none; }
    .ig-item-row{ grid-template-columns:1fr 1fr; grid-template-areas:"desc desc" "qty rate" "amt remove"; }
    .ig-item-desc{ grid-column:1/-1; }
    .ig-preview-doc-inner{ padding:22px; }
    .ig-preview-top{ flex-direction:column; }
    .ig-preview-doctitle{ text-align:left; }
    .ig-preview-parties{ grid-template-columns:1fr; }
  }

  .ig-doctype-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
  .ig-doctype-card{ background:#fff; border:1px solid var(--border); border-radius:12px; padding:20px; }
  .ig-doctype-card h3{ font-size:14.5px; color:var(--navy); margin-bottom:6px; }
  .ig-doctype-card p{ font-size:12.5px; color:var(--text-sec); line-height:1.5; }
  @media (max-width:1024px){ .ig-doctype-grid{ grid-template-columns:1fr 1fr; } }
  @media (max-width:560px){ .ig-doctype-grid{ grid-template-columns:1fr; } }

  /* ---- print stylesheet: only the invoice preview prints, cleanly ---- */
  @media print{
    header, footer, .cta-banner-section, .dark-strip, .scroll-top-btn,
    .no-print, .feature-hero, .ig-form-panel, .ig-preview-panel-label{
      display:none !important;
    }
    body, html{ background:#fff !important; margin:0 !important; padding:0 !important; }
    main, section, .wrap, .ig-shell, .ig-preview-panel{
      display:block !important; margin:0 !important; padding:0 !important; width:100% !important; max-width:100% !important; position:static !important;
    }
    .ig-preview-doc{
      border:1px solid #E8E5E2 !important; box-shadow:none !important;
      margin:0 auto !important; max-width:800px !important;
      min-height:auto !important;
    }
    .ig-preview-doc-inner{ padding:32px !important; }
  }
