/* SEOMozo India pages. Prefix: sm-  (does not touch your existing styles) */
:root{
  --bg:#F2F5F7; --surface:#FFFFFF; --ink:#0F1E2B; --mute:#4F606D; --line:#D3DDE4;
  --accent:#2447F5; --accent-ink:#FFFFFF; --soft:#E6ECFF; --ok:#0B8A76; --mark:#FFE066; --mark-ink:#0F1E2B;
  --em-c:#0F1E2B; --em-bg:linear-gradient(transparent 62%,#FFE066 62%,#FFE066 92%,transparent 92%); --grid:rgba(15,30,43,.055); --shadow:0 1px 0 rgba(15,30,43,.04),0 12px 30px -16px rgba(15,30,43,.25);
  --f-display:"Bricolage Grotesque","Segoe UI",system-ui,sans-serif;
  --f-body:"Public Sans","Segoe UI",system-ui,-apple-system,sans-serif;
  --f-mono:"IBM Plex Mono",ui-monospace,Menlo,Consolas,monospace;
  --r:6px; --wrap:1180px;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --bg:#0A131B; --surface:#111E29; --ink:#E8EEF3; --mute:#9BAEBB; --line:#223442;
    --accent:#8DA2FF; --accent-ink:#0A131B; --soft:#16263A; --ok:#3FD0B6; --em-c:#FFE066; --em-bg:none;
    --grid:rgba(232,238,243,.05); --shadow:0 1px 0 rgba(0,0,0,.4),0 14px 32px -16px rgba(0,0,0,.7);
  }
}
:root[data-theme="dark"]{
  --bg:#0A131B; --surface:#111E29; --ink:#E8EEF3; --mute:#9BAEBB; --line:#223442;
  --accent:#8DA2FF; --accent-ink:#0A131B; --soft:#16263A; --ok:#3FD0B6; --em-c:#FFE066; --em-bg:none;
  --grid:rgba(232,238,243,.05); --shadow:0 1px 0 rgba(0,0,0,.4),0 14px 32px -16px rgba(0,0,0,.7);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body.sm{margin:0;background:var(--bg);color:var(--ink);font:400 1.0625rem/1.65 var(--f-body);-webkit-font-smoothing:antialiased}
.sm img,.sm svg{max-width:100%}
.sm a{color:var(--accent);text-underline-offset:3px}
.sm a:hover{text-decoration-thickness:2px}
.sm :focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:3px}
.sm-wrap{width:min(100% - 32px,var(--wrap));margin-inline:auto}
.sm-skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:var(--bg);padding:8px 14px;z-index:99}
.sm-skip:focus{left:8px}

/* ---- header ---- */
.sm-hd{position:sticky;top:0;z-index:30;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.sm-hd__in{display:flex;align-items:center;gap:20px;min-height:62px}
.sm-logo{font:800 1.35rem/1 var(--f-display);color:var(--ink);text-decoration:none;letter-spacing:-.02em}
.sm-logo b{color:var(--accent)}
.sm-nav{display:flex;gap:4px;margin-left:auto;flex-wrap:wrap;justify-content:flex-end}
.sm-nav a{color:var(--ink);text-decoration:none;font-size:.95rem;font-weight:500;padding:8px 11px;border-radius:var(--r)}
.sm-nav a:hover{background:var(--soft)}
.sm-nav a[aria-current="page"]{background:var(--soft);font-weight:700}
.sm-nav .sm-btn{padding:9px 16px}

/* ---- buttons ---- */
.sm-btn{display:inline-flex;align-items:center;gap:8px;background:var(--accent);color:var(--accent-ink)!important;font:700 1rem/1 var(--f-body);padding:15px 22px;border-radius:var(--r);text-decoration:none!important;border:2px solid var(--accent);transition:transform .15s,box-shadow .15s}
.sm-btn:hover{transform:translateY(-2px);box-shadow:0 10px 20px -10px var(--accent)}
.sm-btn--ghost{background:transparent;color:var(--ink)!important;border-color:var(--ink)}
.sm-btn--ghost:hover{box-shadow:none;background:var(--soft)}
.sm-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}

/* ---- hero ---- */
.sm-hero{position:relative;padding:44px 0 60px;background:
  linear-gradient(var(--grid) 1px,transparent 1px) 0 0/44px 44px,
  linear-gradient(90deg,var(--grid) 1px,transparent 1px) 0 0/44px 44px;border-bottom:1px solid var(--line)}
.sm-hero__grid{display:grid;grid-template-columns:1.02fr 1fr;gap:44px;align-items:center}
.sm-crumbs{font:500 .8rem/1.4 var(--f-mono);color:var(--mute);margin:0 0 20px;display:flex;flex-wrap:wrap;gap:6px}
.sm-crumbs a{color:var(--mute)}
.sm-eyebrow{font:500 .8rem/1.4 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--mute);margin:0 0 14px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.sm-eyebrow i{width:9px;height:9px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 4px color-mix(in srgb,var(--ok) 25%,transparent);display:inline-block}
.sm h1{font:800 clamp(2.1rem,5vw,3.7rem)/1.04 var(--f-display);letter-spacing:-.03em;margin:0 0 20px;text-wrap:balance}
.sm h1 em{font-style:normal;background:var(--em-bg);color:var(--em-c);padding:0 .06em}
.sm h2{font:800 clamp(1.6rem,3.2vw,2.35rem)/1.12 var(--f-display);letter-spacing:-.02em;margin:0 0 14px;text-wrap:balance}
.sm h3{font:700 1.2rem/1.25 var(--f-display);margin:0 0 8px}
.sm-lede{font-size:1.18rem;color:var(--mute);max-width:60ch;margin:0}

/* quick answer: the spoken / AI-quotable block */
.sm-answer{margin:26px 0 0;padding:18px 20px;border:1.5px solid var(--ink);border-radius:var(--r);background:var(--surface);box-shadow:5px 5px 0 var(--ink);max-width:62ch}
.sm-answer b{display:block;font:500 .75rem/1 var(--f-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--mute);margin-bottom:8px}
.sm-answer p{margin:0;font-size:1.04rem}
.sm-facts{display:flex;flex-wrap:wrap;gap:8px 22px;margin:22px 0 0;padding:0;list-style:none;font-size:.92rem;color:var(--mute)}
.sm-facts strong{color:var(--ink)}

/* figure frame: survey-sheet corner ticks */
.sm-fig{position:relative;margin:0;padding:14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow)}
.sm-fig::before,.sm-fig::after{content:"";position:absolute;width:14px;height:14px;border:2px solid var(--accent)}
.sm-fig::before{left:-1px;top:-1px;border-right:0;border-bottom:0}
.sm-fig::after{right:-1px;bottom:-1px;border-left:0;border-top:0}
.sm-fig svg{display:block;width:100%;height:auto}
.sm-fig figcaption{font:500 .78rem/1.5 var(--f-mono);color:var(--mute);margin-top:10px;padding-top:10px;border-top:1px dashed var(--line)}

/* ---- sections ---- */
.sm-sec{padding:64px 0;border-bottom:1px solid var(--line)}
.sm-sec--alt{background:var(--surface)}
.sm-sec__head{max-width:70ch;margin-bottom:30px}
.sm-sec__head p{color:var(--mute);margin:0}
.sm-split{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:start}
.sm-split--faq{grid-template-columns:1.25fr .75fr}
.sm-prose p{margin:0 0 16px;max-width:64ch}
.sm-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:0;padding:0;list-style:none}
.sm-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:22px;display:flex;flex-direction:column;gap:6px}
.sm-sec--alt .sm-card{background:var(--bg)}
.sm-card p{margin:0;color:var(--mute);font-size:.98rem}
.sm-card a.sm-card__link{font-weight:700;margin-top:auto;padding-top:10px}
.sm-tag{font:500 .72rem/1 var(--f-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--accent)}
.sm-ico{width:46px;height:46px;color:var(--accent)}
.sm-note{font-size:.92rem;color:var(--mute);margin-top:18px;max-width:70ch}

/* areas list */
.sm-areas{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 0;padding:0;list-style:none}
.sm-areas li{font:500 .85rem/1 var(--f-mono);border:1px solid var(--line);background:var(--surface);padding:9px 12px;border-radius:99px}

/* prices */
.sm-price{width:100%;min-width:0;border-collapse:collapse;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.sm-price th,.sm-price td{text-align:left;padding:15px 18px;border-bottom:1px solid var(--line);vertical-align:top}
.sm-price th{font:700 1rem/1.3 var(--f-body)}
.sm-price td:nth-child(2){font:700 1.15rem/1.3 var(--f-display);white-space:nowrap}
.sm-price td:last-child{color:var(--mute);font-size:.95rem}
.sm-price tr:last-child td,.sm-price tr:last-child th{border-bottom:0}
.sm-tablewrap{overflow-x:auto}
.sm-price--usd{min-width:640px}
.sm-price--usd .grp th{background:var(--soft);font:500 .8rem/1.2 var(--f-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--mute);padding:11px 18px}
.sm-price--usd td:nth-child(2){white-space:nowrap}
.sm-price--usd td:nth-child(3){color:var(--mute);font-size:.92rem}
.sm-terms{margin:22px 0 0;padding:0 0 0 20px;max-width:78ch;color:var(--mute);display:grid;gap:8px}
.sm-terms strong{color:var(--ink)}
.sm-cards--four{grid-template-columns:repeat(4,1fr)}

/* roadmap */
.sm-track{margin:0 0 24px}
.sm-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:0;padding:0;list-style:none}
.sm-step{border-top:3px solid var(--accent);padding-top:14px}
.sm-step small{font:500 .78rem/1 var(--f-mono);color:var(--mute);text-transform:uppercase;letter-spacing:.06em}
.sm-step p{color:var(--mute);margin:6px 0 0;font-size:.98rem}

/* FAQ */
.sm-faq{display:grid;gap:10px;max-width:860px;margin-top:22px}
.sm-faq details{background:var(--surface);border:1px solid var(--line);border-radius:var(--r)}
.sm-faq summary{cursor:pointer;list-style:none;padding:18px 54px 18px 20px;font:700 1.08rem/1.35 var(--f-display);position:relative}
.sm-faq summary::-webkit-details-marker{display:none}
.sm-faq summary::after{content:"+";position:absolute;right:20px;top:50%;transform:translateY(-50%);font:500 1.5rem/1 var(--f-mono);color:var(--accent);transition:transform .2s}
.sm-faq details[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.sm-faq .sm-faq__a{padding:0 20px 20px;color:var(--mute)}
.sm-faq .sm-faq__a p{margin:0;max-width:66ch}

/* city chips */
.sm-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}
.sm-chips a{display:inline-block;padding:10px 15px;border:1px solid var(--line);background:var(--surface);border-radius:99px;color:var(--ink);text-decoration:none;font-weight:600;font-size:.95rem}
.sm-chips a:hover{border-color:var(--accent);color:var(--accent)}
.sm-chips .is-on a{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.sm-region{margin:0 0 22px}
.sm-region h3{font:500 .8rem/1 var(--f-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--mute);margin:0 0 10px}

/* contact band */
.sm-band{background:var(--ink);color:var(--bg);padding:60px 0}
.sm-band h2{color:var(--bg)}
.sm-band p{color:color-mix(in srgb,var(--bg) 78%,transparent);max-width:56ch}
.sm-band a:not(.sm-btn){color:var(--bg)}
.sm-band .sm-btn{background:var(--bg);color:var(--ink)!important;border-color:var(--bg)}
.sm-band .sm-btn--ghost{background:transparent;color:var(--bg)!important;border-color:var(--bg)}
.sm-band__grid{display:grid;grid-template-columns:1.2fr 1fr;gap:44px;align-items:center}
.sm-nap{font-style:normal;line-height:1.8;border-left:3px solid var(--mark);padding-left:18px}
.sm-nap strong{display:block;font:800 1.2rem/1.3 var(--f-display)}

.sm-ft{padding:30px 0 44px;font-size:.9rem;color:var(--mute)}
.sm-ft__in{display:flex;flex-wrap:wrap;gap:12px 28px;justify-content:space-between}
.sm-ft a{color:var(--mute)}

/* =========================================================== reveal effects */
.js .rv{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--i,0)*90ms)}
.js .rv.in{opacity:1;transform:none}
/* figures wipe in like a sheet being uncovered */
.js .rvw>svg{clip-path:inset(0 100% 0 0);transition:clip-path 1.1s cubic-bezier(.65,0,.2,1)}
.js .rvw.in>svg{clip-path:inset(0 0 0 0)}
.js .rvw figcaption{opacity:0;transition:opacity .8s ease .6s}
.js .rvw.in figcaption{opacity:1}
/* SVG internals: lines draw, nodes pop, bars grow */
.sm-svg .ln{stroke-dasharray:var(--len,400);stroke-dashoffset:var(--len,400)}
.sm-svg .pop{opacity:0;transform:scale(.6);transform-box:fill-box;transform-origin:center}
.sm-svg .fadein{opacity:0}
.sm-svg .grow{transform:scaleX(0);transform-box:fill-box;transform-origin:left center}
.no-js .sm-svg .ln,.in .sm-svg .ln,.sm-svg.in .ln{stroke-dashoffset:0;transition:stroke-dashoffset 1.2s ease calc(var(--d,0)*1ms)}
.no-js .sm-svg .pop,.sm-svg.in .pop,.in .sm-svg .pop{opacity:1;transform:none;transition:opacity .5s ease calc(var(--d,0)*1ms),transform .6s cubic-bezier(.3,1.6,.5,1) calc(var(--d,0)*1ms)}
.no-js .sm-svg .fadein,.sm-svg.in .fadein,.in .sm-svg .fadein{opacity:1;transition:opacity .6s ease calc(var(--d,0)*1ms)}
.no-js .sm-svg .grow,.sm-svg.in .grow,.in .sm-svg .grow{transform:none;transition:transform .8s cubic-bezier(.2,.7,.2,1) calc(var(--d,0)*1ms)}
.sm-svg .pulse{animation:smPulse 2.4s ease-in-out infinite;transform-box:fill-box;transform-origin:center}
@keyframes smPulse{0%,100%{opacity:.35;transform:scale(1)}50%{opacity:.9;transform:scale(1.18)}}

/* svg colour tokens */
.sm-svg text{font-family:var(--f-body);fill:var(--ink)}
.sm-svg .mono{font-family:var(--f-mono)}
.sm-svg .m{fill:var(--mute)}
.sm-svg .card{fill:var(--surface);stroke:var(--line);stroke-width:1.5}
.sm-svg .card-hl{fill:var(--soft);stroke:var(--accent);stroke-width:2}
.sm-svg .stroke{fill:none;stroke:var(--accent);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.sm-svg .stroke-m{fill:none;stroke:var(--line);stroke-width:2;stroke-linecap:round}
.sm-svg .fill-a{fill:var(--accent)}
.sm-svg .fill-ok{fill:var(--ok)}
.sm-svg .fill-m{fill:var(--line)}
.sm-svg .fill-mark{fill:var(--mark)}
.sm-svg .on-a{fill:var(--accent-ink)}
.sm-svg .on-mark{fill:#0F1E2B}
.sm-svg .grid{stroke:var(--line);stroke-width:1;fill:none;stroke-dasharray:3 5}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .js .rv,.js .rvw>svg,.js .rvw figcaption,.sm-svg .ln,.sm-svg .pop,.sm-svg .fadein,.sm-svg .grow{opacity:1!important;transform:none!important;clip-path:none!important;stroke-dashoffset:0!important;transition:none!important}
  .sm-svg .pulse{animation:none}
}

@media (max-width:900px){
  .sm-hero__grid,.sm-split,.sm-split--faq,.sm-band__grid{grid-template-columns:1fr;gap:32px}
  .sm-cards[style]{grid-template-columns:1fr!important}
  .sm-cards,.sm-cards--four,.sm-steps{grid-template-columns:1fr}
  .sm-sec{padding:48px 0}
  .sm-nav a:not(.sm-btn){display:none}
  .sm-answer{box-shadow:4px 4px 0 var(--ink)}
}
@media (max-width:520px){
  .sm-price td:nth-child(2){white-space:normal}
  .sm-price th,.sm-price td{padding:12px}
}
@media print{.sm-hd,.sm-band .sm-btn{display:none}.js .rv,.js .rvw>svg,.js .rvw figcaption{opacity:1;transform:none;clip-path:none}}
