/* ==========================================================================
   Lotus365 — lotus-365.blue
   Shared shell only: fonts, tokens, header, footer, repeated blocks.
   Page-specific rules live in that page's own <style>.
   Theme: "Ink Rail" — charcoal canvas, indigo primary, mint action, amber marks.
   ========================================================================== */

@font-face{
  font-family:"Space Grotesk";
  src:url("/fonts/space-grotesk-latin.woff2") format("woff2");
  font-weight:400 700;font-style:normal;font-display:swap;
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:"Public Sans";
  src:url("/fonts/public-sans-latin.woff2") format("woff2");
  font-weight:100 900;font-style:normal;font-display:swap;
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}

:root{
  --bg:#0d1016;
  --bg-2:#11151d;
  --surface:#161b26;
  --surface-2:#1b2230;
  --surface-3:#222a3a;
  --indigo:#5566ff;
  --indigo-lt:#8592ff;
  --indigo-dk:#3a45c9;
  --indigo-glow:rgba(85,102,255,.18);
  --mint:#2fd6a5;
  --mint-dk:#1aa87e;
  --mint-glow:rgba(47,214,165,.14);
  --amber:#ffb340;
  /* B7 — CTA colours: sirf WhatsApp-green ya gold. Contrast gina hua (12.09:1 / 7.79:1) */
  --cta-gold:#ffc93c;
  --cta-gold-2:#e0a800;
  --cta-gold-ink:#1a1200;
  --cta-green:#25D366;
  --cta-green-2:#1fb757;
  --cta-green-ink:#052a20;
  --txt:#e8ecf4;
  --txt-dim:#98a2b6;
  --txt-mute:#6b7689;
  --line:rgba(232,236,244,.10);
  --line-2:rgba(85,102,255,.26);
  --radius:12px;
  --radius-lg:18px;
  --wrap:1150px;
  --shadow:0 18px 48px rgba(0,0,0,.48);
  --ff-head:"Space Grotesk",system-ui,-apple-system,"Segoe UI",sans-serif;
  --ff-body:"Public Sans",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --ff-mono:ui-monospace,"SFMono-Regular","Cascadia Mono",Consolas,monospace;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;background:var(--bg);color:var(--txt);
  font-family:var(--ff-body);font-size:17px;line-height:1.75;
}
/* B8 — horizontal overflow zero tolerance. clip pehle (sticky header nahi todta),
   hidden sirf fallback ke liye */
html,body{overflow-x:clip}
@supports not (overflow-x:clip){html,body{overflow-x:hidden}}
img,video,iframe,table,pre{max-width:100%}
img{height:auto}
a{color:var(--indigo-lt);text-decoration:none}
a:hover{text-decoration:underline}
h1,h2,h3,h4{font-family:var(--ff-head);line-height:1.18;margin:0 0 .5em;letter-spacing:-.018em}
h1{font-size:clamp(1.92rem,4.7vw,3rem);font-weight:700}
h2{font-size:clamp(1.4rem,3.1vw,2.05rem);font-weight:700}
h3{font-size:clamp(1.06rem,2.1vw,1.3rem);font-weight:700}
h4{font-size:1rem;font-weight:700}
p{margin:0 0 1.05em}
ul,ol{margin:0 0 1.15em;padding-left:1.25em}
li{margin-bottom:.46em}
strong{color:#fff;font-weight:700}
hr{border:0;border-top:1px solid var(--line);margin:30px 0}
::selection{background:var(--indigo);color:#fff}
code{overflow-wrap:anywhere}
h1,h2,h3,h4{overflow-wrap:break-word}
:focus-visible{outline:2px solid var(--mint);outline-offset:2px}

.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 20px}
.sec{padding:48px 0}
.sec-sm{padding:30px 0}
.narrow{max-width:830px}

.skip-link{position:absolute;left:-9999px;top:0;z-index:999;background:var(--mint);color:#062018;
  padding:11px 18px;font-weight:700;border-radius:0 0 10px 0}
.skip-link:focus{left:0}

/* ---------- header ---------- */
.hdr{position:sticky;top:0;z-index:60;background:rgba(13,16,22,.94);
  backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.hdr-in{display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:11px 0;position:relative}
.brand{display:flex;align-items:center;gap:9px;flex-shrink:0}
.brand img{width:150px;height:22px;display:block}
.nav{display:flex;align-items:center;gap:2px}
.nav a{color:var(--txt-dim);font-size:.9rem;font-weight:600;padding:8px 10px;border-radius:8px;
  white-space:nowrap}
.nav a:hover{color:var(--txt);background:var(--surface-2);text-decoration:none}
.nav a[aria-current="page"]{color:var(--mint)}
.hdr-cta{background:var(--cta-gold);color:var(--cta-gold-ink);font-weight:700;font-size:.88rem;
  padding:9px 17px;border-radius:999px;white-space:nowrap}
.hdr-cta:hover{background:#ffd75e;text-decoration:none}
@media(min-width:941px) and (max-width:1180px){
  .nav{gap:0}
  .nav a{padding:8px 7px;font-size:.82rem}
  .hdr-cta{padding:9px 13px;font-size:.82rem}
}
.burger{display:none;background:var(--surface-2);border:1px solid var(--line);color:var(--txt);
  width:41px;height:38px;border-radius:9px;font-size:1.15rem;line-height:1;cursor:pointer}

@media(max-width:940px){
  .burger{display:block}
  .nav{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;
    background:var(--bg-2);border-bottom:1px solid var(--line);
    box-shadow:var(--shadow);padding:8px 20px 14px;display:none}
  .nav.open{display:flex}
  .nav a{padding:11px 6px;border-bottom:1px solid var(--line);border-radius:0}
  .hdr-cta{display:none}
  .brand img{width:132px;height:19px}
}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--ff-head);font-weight:700;font-size:1rem;padding:13px 26px;
  border-radius:999px;border:0;cursor:pointer;text-align:center;transition:transform .15s ease}
.btn:hover{text-decoration:none;transform:translateY(-2px)}
.btn-1{background-color:var(--cta-gold);background-image:linear-gradient(135deg,var(--cta-gold),var(--cta-gold-2));
  color:var(--cta-gold-ink);box-shadow:0 10px 26px rgba(255,201,60,.24)}
.btn-1:hover{background-color:#ffd75e;background-image:linear-gradient(135deg,#ffd75e,#f0b800)}
.btn-2{background:var(--surface-2);color:var(--txt);border:1px solid var(--line-2)}
.btn-3{background-color:var(--cta-green);background-image:linear-gradient(135deg,var(--cta-green),var(--cta-green-2));
  color:var(--cta-green-ink);box-shadow:0 10px 26px rgba(37,211,102,.24)}
.btn-3:hover{background-color:#3ee07d;background-image:linear-gradient(135deg,#3ee07d,#1aa64e)}
.btn-wide{width:100%}
.btn-sm{padding:10px 20px;font-size:.9rem}

/* ---------- site motif: accent rail + ghost numeral + dot eyebrow ---------- */
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--ff-mono);
  font-size:.73rem;letter-spacing:.13em;text-transform:uppercase;color:var(--mint);
  background:var(--mint-glow);border:1px solid rgba(47,214,165,.24);
  padding:5px 13px 5px 10px;border-radius:999px;margin-bottom:14px}
.eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--mint);
  box-shadow:0 0 0 3px rgba(47,214,165,.2)}
.eyebrow.ind{color:var(--indigo-lt);background:var(--indigo-glow);
  border-color:rgba(85,102,255,.3)}
.eyebrow.ind::before{background:var(--indigo-lt);box-shadow:0 0 0 3px rgba(85,102,255,.22)}

.rail{position:relative;padding-left:20px;margin-bottom:20px}
.rail::before{content:"";position:absolute;left:0;top:6px;bottom:6px;width:3px;border-radius:3px;
  background:linear-gradient(180deg,var(--indigo),var(--mint))}
.rail h2,.rail h3{margin-bottom:.3em}
.rail .num{font-family:var(--ff-mono);font-size:.74rem;letter-spacing:.14em;color:var(--amber);
  display:block;margin-bottom:6px}

/* ---------- cards / boxes ---------- */
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  padding:22px}
.grid{display:grid;gap:16px}
.g2{grid-template-columns:repeat(2,1fr)}
.g3{grid-template-columns:repeat(3,1fr)}
.g4{grid-template-columns:repeat(4,1fr)}
@media(max-width:860px){.g3,.g4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.g2,.g3,.g4{grid-template-columns:1fr}}

.note{border-left:3px solid var(--amber);background:rgba(255,179,64,.07);
  padding:14px 18px;border-radius:0 var(--radius) var(--radius) 0;margin:22px 0;
  color:var(--txt-dim);font-size:.96rem}
.note strong{color:var(--amber)}

/* ---------- tables ---------- */
.tbl-wrap{overflow-x:auto;margin:22px 0;border:1px solid var(--line);border-radius:var(--radius)}
table{width:100%;border-collapse:collapse;font-size:.95rem;min-width:520px}
th,td{padding:11px 15px;text-align:left;border-bottom:1px solid var(--line)}
th{background:var(--surface-2);font-family:var(--ff-head);font-weight:700;font-size:.87rem;
  letter-spacing:.02em;color:var(--txt)}
tbody tr:last-child td{border-bottom:0}
tbody tr:nth-child(even){background:rgba(232,236,244,.022)}

/* ---------- images ---------- */
.shot{margin:26px auto;max-width:820px;width:100%}
.shot img{display:block;width:100%;height:auto;border-radius:var(--radius);
  border:1px solid var(--line)}
.shot figcaption{margin-top:9px;font-size:.85rem;color:var(--txt-dim);text-align:center}

/* ---------- FAQ ---------- */
.faq{margin:22px 0}
.faq details{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  margin-bottom:10px;overflow:hidden}
.faq details[open]{border-color:var(--line-2)}
.faq summary{cursor:pointer;padding:15px 46px 15px 18px;font-family:var(--ff-head);
  font-weight:700;font-size:1rem;list-style:none;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:18px;top:13px;font-size:1.4rem;
  color:var(--mint);line-height:1}
.faq details[open] summary::after{content:"\2212"}
.faq .a{padding:0 18px 16px;color:var(--txt-dim);font-size:.97rem}

/* ---------- breadcrumb ---------- */
.crumbs{font-size:.83rem;color:var(--txt-mute);padding:15px 0 0}
.crumbs a{color:var(--txt-dim)}
.crumbs span{margin:0 7px;opacity:.5}

/* ---------- SEO box ---------- */
.seo-box{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  padding:22px;max-height:330px;overflow-y:auto;margin:34px 0;font-size:.94rem;
  color:var(--txt-dim);scrollbar-width:thin}
.seo-box h2{font-size:1.18rem;margin-bottom:.5em}
.seo-box h3{font-size:1rem;color:var(--txt);margin-top:1.1em}
.seo-box::-webkit-scrollbar{width:8px}
.seo-box::-webkit-scrollbar-thumb{background:var(--surface-3);border-radius:8px}

/* ---------- also-search cloud ---------- */
.also-search{margin:26px 0 8px}
.also-search h2{font-size:1.1rem;color:var(--txt-dim);font-weight:500}
.also-search ul{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.also-search li{margin:0;background:var(--surface-2);border:1px solid var(--line);
  color:var(--txt-mute);font-size:.82rem;padding:6px 13px;border-radius:999px;
  word-break:break-word;overflow-wrap:anywhere}

/* ---------- footer ---------- */
.ftr{background:var(--bg-2);border-top:1px solid var(--line);padding:40px 0 26px;margin-top:44px}
.ftr-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:28px}
@media(max-width:820px){.ftr-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.ftr-grid{grid-template-columns:1fr}}
.ftr img{width:150px;height:22px;margin-bottom:12px}
.ftr h3{font-size:.83rem;letter-spacing:.12em;text-transform:uppercase;color:var(--txt-mute);
  font-family:var(--ff-mono);font-weight:500}
.ftr ul{list-style:none;padding:0}
.ftr li{margin-bottom:7px}
.ftr a{color:var(--txt-dim);font-size:.92rem}
.ftr p{font-size:.9rem;color:var(--txt-mute)}
/* B10 — social: sirf logo, koi text label nahi. aria-label screen-reader ke liye hai */
.socials{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px;padding:0;list-style:none}
.socials li{margin:0}
.socials a{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;
  background:var(--surface-2);border:1px solid var(--line);color:var(--txt-dim);
  transition:color .15s ease,border-color .15s ease}
.socials a:hover{color:var(--cta-gold);border-color:rgba(255,201,60,.4);text-decoration:none}
.socials svg{width:17px;height:17px;fill:currentColor;display:block}
/* Trustpilot badge — star + wordmark ka official lockup, isliye wordmark allowed (B10 apwaad) */
.socials li.tp a{width:auto;padding:0 11px;gap:6px;grid-auto-flow:column;align-items:center}
.socials li.tp svg{width:15px;height:15px;fill:#00b67a}
.socials li.tp b{font-family:var(--ff-head);font-weight:700;font-size:.78rem;
  letter-spacing:-.01em;color:var(--txt-dim)}
.socials li.tp a:hover b{color:var(--cta-gold)}

.ftr-btm{border-top:1px solid var(--line);margin-top:26px;padding-top:18px;
  display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;
  font-size:.83rem;color:var(--txt-mute)}
.age{display:inline-block;background:#c1121f;color:#fff;font-weight:700;font-size:.72rem;
  padding:2px 8px;border-radius:5px;margin-right:7px}

/* ---------- WhatsApp float ---------- */
.wa{position:fixed;right:18px;bottom:18px;z-index:80;width:60px;height:60px;border-radius:50%;
  background:#25D366;display:flex;align-items:center;justify-content:center;
  box-shadow:0 8px 22px rgba(37,211,102,.42);animation:wapulse 2.4s ease-out infinite}
.wa:hover{text-decoration:none}
.wa svg{width:33px;height:33px;fill:#fff}
@keyframes wapulse{0%{box-shadow:0 8px 22px rgba(37,211,102,.42),0 0 0 0 rgba(37,211,102,.5)}
  70%{box-shadow:0 8px 22px rgba(37,211,102,.42),0 0 0 17px rgba(37,211,102,0)}
  100%{box-shadow:0 8px 22px rgba(37,211,102,.42),0 0 0 0 rgba(37,211,102,0)}}
@media(prefers-reduced-motion:reduce){
  .wa{animation:none}
  .btn:hover{transform:none}
  html{scroll-behavior:auto}
}
