privacy policy and business integration
This commit is contained in:
parent
cd3751219d
commit
d563504a14
5 changed files with 341 additions and 3 deletions
|
|
@ -25,6 +25,7 @@ import { KycPage } from './features/compliance/KycPage'
|
||||||
import { DltPage } from './features/compliance/DltPage'
|
import { DltPage } from './features/compliance/DltPage'
|
||||||
import { ComplianceGate } from './features/compliance/ComplianceProvider'
|
import { ComplianceGate } from './features/compliance/ComplianceProvider'
|
||||||
import { AdminApp } from './features/admin/AdminPortal'
|
import { AdminApp } from './features/admin/AdminPortal'
|
||||||
|
import { PrivacyPolicyPage } from './features/legal/PrivacyPolicyPage'
|
||||||
|
|
||||||
function Placeholder() {
|
function Placeholder() {
|
||||||
return (
|
return (
|
||||||
|
|
@ -41,6 +42,7 @@ export default function App() {
|
||||||
<BrowserRouter>
|
<BrowserRouter>
|
||||||
<Routes>
|
<Routes>
|
||||||
<Route path="/" element={<LandingPage />} />
|
<Route path="/" element={<LandingPage />} />
|
||||||
|
<Route path="/privacy" element={<PrivacyPolicyPage />} />
|
||||||
<Route path="/login" element={<AuthPage initialMode="login" />} />
|
<Route path="/login" element={<AuthPage initialMode="login" />} />
|
||||||
<Route path="/register" element={<AuthPage initialMode="register" />} />
|
<Route path="/register" element={<AuthPage initialMode="register" />} />
|
||||||
<Route path="/admin/*" element={<AdminApp />} />
|
<Route path="/admin/*" element={<AdminApp />} />
|
||||||
|
|
|
||||||
|
|
@ -81,7 +81,10 @@ export function AuthPage({ initialMode }: { initialMode: 'login' | 'register' })
|
||||||
{error && <p className="auth-error">{error}</p>}
|
{error && <p className="auth-error">{error}</p>}
|
||||||
<button className="auth-submit" disabled={submitting}>{submitting ? 'Please wait…' : mode === 'login' ? 'Log in to Urmi' : 'Create my account'} {!submitting && <ArrowRight size={17} />}</button>
|
<button className="auth-submit" disabled={submitting}>{submitting ? 'Please wait…' : mode === 'login' ? 'Log in to Urmi' : 'Create my account'} {!submitting && <ArrowRight size={17} />}</button>
|
||||||
</form>
|
</form>
|
||||||
<p className="auth-terms">By continuing, you agree to Urmi’s Terms of Service and Privacy Policy.</p>
|
<p className="auth-terms">
|
||||||
|
By continuing, you agree to Urmi’s Terms of Service and{' '}
|
||||||
|
<Link to="/privacy">Privacy Policy</Link>.
|
||||||
|
</p>
|
||||||
</section>
|
</section>
|
||||||
</main>
|
</main>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -61,7 +61,12 @@ export function LandingPage() {
|
||||||
</section>
|
</section>
|
||||||
</main>
|
</main>
|
||||||
|
|
||||||
<footer className="landing-footer"><img src="/urmi-logo.png" alt="Urmi" /><span>SMS infrastructure for the agentic internet.</span><small>© 2026 Urmi Technologies</small></footer>
|
<footer className="landing-footer">
|
||||||
|
<img src="/urmi-logo.png" alt="Urmi" />
|
||||||
|
<span>SMS infrastructure for the agentic internet.</span>
|
||||||
|
<Link to="/privacy" className="legal-footer-link">Privacy Policy</Link>
|
||||||
|
<small>© 2026 Urmi Technologies</small>
|
||||||
|
</footer>
|
||||||
</div>
|
</div>
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
|
||||||
278
frontend/src/features/legal/PrivacyPolicyPage.tsx
Normal file
278
frontend/src/features/legal/PrivacyPolicyPage.tsx
Normal file
|
|
@ -0,0 +1,278 @@
|
||||||
|
import { Link } from 'react-router-dom'
|
||||||
|
|
||||||
|
const LAST_UPDATED = 'October 2, 2026'
|
||||||
|
const CONTACT_EMAIL = 'privacy@urmiai.com'
|
||||||
|
|
||||||
|
export function PrivacyPolicyPage() {
|
||||||
|
return (
|
||||||
|
<div className="landing legal-page">
|
||||||
|
<header className="landing-nav">
|
||||||
|
<Link to="/" className="landing-brand"><img src="/urmi-logo.png" alt="Urmi" /></Link>
|
||||||
|
<div className="landing-actions">
|
||||||
|
<Link to="/login">Log in</Link>
|
||||||
|
<Link to="/register" className="landing-cta">Start building</Link>
|
||||||
|
</div>
|
||||||
|
</header>
|
||||||
|
|
||||||
|
<main className="legal-main">
|
||||||
|
<article className="legal-document">
|
||||||
|
<header className="legal-header">
|
||||||
|
<span className="eyebrow">Legal</span>
|
||||||
|
<h1>Privacy Policy</h1>
|
||||||
|
<p className="legal-meta">Last updated: {LAST_UPDATED}</p>
|
||||||
|
<p className="legal-intro">
|
||||||
|
This Privacy Policy describes how Urmi Technologies (“Urmi”, “we”, “us”, or “our”), operated by
|
||||||
|
Genzenith Services LLP, collects, uses, discloses, and protects personal information when you use our
|
||||||
|
website at <a href="https://urmiai.com">urmiai.com</a>, our developer console, APIs, and related
|
||||||
|
messaging services—including SMS, voice, OTP, and WhatsApp Business messaging.
|
||||||
|
</p>
|
||||||
|
</header>
|
||||||
|
|
||||||
|
<section>
|
||||||
|
<h2>1. Who we are</h2>
|
||||||
|
<p>
|
||||||
|
<strong>Data controller:</strong> Genzenith Services LLP (trading as Urmi Technologies)<br />
|
||||||
|
<strong>Website:</strong> <a href="https://urmiai.com">https://urmiai.com</a><br />
|
||||||
|
<strong>Privacy contact:</strong> <a href={`mailto:${CONTACT_EMAIL}`}>{CONTACT_EMAIL}</a>
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
Urmi provides business messaging infrastructure for enterprises and developers. If you interact with
|
||||||
|
Urmi only as an end user of one of our customers (for example, you receive an SMS, voice call, or
|
||||||
|
WhatsApp message from a business using Urmi), that business is typically the data controller for your
|
||||||
|
message content, and Urmi processes data on their behalf as a service provider.
|
||||||
|
</p>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section>
|
||||||
|
<h2>2. Scope</h2>
|
||||||
|
<p>This policy applies to:</p>
|
||||||
|
<ul>
|
||||||
|
<li>Visitors to our website and marketing pages</li>
|
||||||
|
<li>Registered users of the Urmi developer console and admin portal</li>
|
||||||
|
<li>Developers and businesses that integrate with Urmi APIs</li>
|
||||||
|
<li>End users whose personal data is processed when our customers send or receive messages through Urmi</li>
|
||||||
|
<li>Users who communicate with Urmi’s own business WhatsApp number or other Urmi-operated channels</li>
|
||||||
|
</ul>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section>
|
||||||
|
<h2>3. Information we collect</h2>
|
||||||
|
<h3>3.1 Account and identity information</h3>
|
||||||
|
<ul>
|
||||||
|
<li>Name, email address, and account credentials</li>
|
||||||
|
<li>Organization name, billing details, and compliance documentation (e.g. KYC, DLT registration)</li>
|
||||||
|
<li>Authentication data if you sign in with a third-party provider (such as Google OAuth)</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>3.2 Messaging and communications data</h3>
|
||||||
|
<ul>
|
||||||
|
<li>Phone numbers (sender and recipient), message content, timestamps, delivery status, and error codes</li>
|
||||||
|
<li>Voice call metadata (caller, callee, duration, routing information) and related session data</li>
|
||||||
|
<li>OTP codes, template names, campaign identifiers, and API request logs</li>
|
||||||
|
<li>
|
||||||
|
<strong>WhatsApp data:</strong> When you or our customers use WhatsApp through Urmi, we may process
|
||||||
|
WhatsApp user phone numbers, message content (text, media, templates, interactive replies), message
|
||||||
|
identifiers, read/delivery receipts, and webhook event payloads received from Meta Platforms, Inc.
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>3.3 Technical and usage information</h3>
|
||||||
|
<ul>
|
||||||
|
<li>IP address, browser type, device information, and referring URLs</li>
|
||||||
|
<li>API keys (stored in hashed or secured form), request metadata, and audit logs</li>
|
||||||
|
<li>Cookies and similar technologies (see Section 9)</li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<h3>3.4 Information from third parties</h3>
|
||||||
|
<ul>
|
||||||
|
<li>Telecom carriers, SMS aggregators, voice providers, and Meta’s WhatsApp Business Platform</li>
|
||||||
|
<li>Compliance registries and identity verification services where required by law</li>
|
||||||
|
</ul>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section>
|
||||||
|
<h2>4. How we use information</h2>
|
||||||
|
<p>We use personal information to:</p>
|
||||||
|
<ul>
|
||||||
|
<li>Provide, operate, maintain, and improve the Urmi platform and APIs</li>
|
||||||
|
<li>Send, receive, route, deliver, and log messages on behalf of our customers</li>
|
||||||
|
<li>Authenticate users, prevent fraud and abuse, and enforce our terms</li>
|
||||||
|
<li>Meet legal, regulatory, and telecom compliance obligations (including India DLT and KYC requirements)</li>
|
||||||
|
<li>Provide customer support, billing, and service notifications</li>
|
||||||
|
<li>Analyze aggregated usage to improve reliability, security, and performance</li>
|
||||||
|
<li>Comply with Meta Platform Terms, WhatsApp Business Messaging Policy, and applicable messaging laws</li>
|
||||||
|
</ul>
|
||||||
|
<p>
|
||||||
|
<strong>WhatsApp-specific commitment:</strong> We use WhatsApp data only to provide messaging services
|
||||||
|
requested by our customers or by Urmi for its own business communications. We do not use WhatsApp message
|
||||||
|
content or contact information for unrelated advertising, profiling, or resale.
|
||||||
|
</p>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section>
|
||||||
|
<h2>5. Legal bases for processing (where applicable)</h2>
|
||||||
|
<p>Depending on your location and relationship with Urmi, we process personal data based on:</p>
|
||||||
|
<ul>
|
||||||
|
<li><strong>Contract:</strong> To perform our agreement with account holders and deliver requested services</li>
|
||||||
|
<li><strong>Legitimate interests:</strong> Security, fraud prevention, service improvement, and B2B operations</li>
|
||||||
|
<li><strong>Legal obligation:</strong> Telecom, tax, anti-spam, and regulatory compliance</li>
|
||||||
|
<li><strong>Consent:</strong> Where required for marketing communications, cookies, or optional integrations</li>
|
||||||
|
</ul>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section>
|
||||||
|
<h2>6. How we share information</h2>
|
||||||
|
<p>We may share personal information with:</p>
|
||||||
|
<ul>
|
||||||
|
<li>
|
||||||
|
<strong>Meta / WhatsApp:</strong> When messages are sent or received via the WhatsApp Business Platform,
|
||||||
|
data is transmitted to and from Meta in accordance with Meta’s terms and the WhatsApp Business Messaging
|
||||||
|
Policy. See{' '}
|
||||||
|
<a href="https://www.whatsapp.com/legal/business-policy" target="_blank" rel="noreferrer">
|
||||||
|
WhatsApp Business Messaging Policy
|
||||||
|
</a>{' '}
|
||||||
|
and{' '}
|
||||||
|
<a href="https://www.facebook.com/privacy/policy" target="_blank" rel="noreferrer">
|
||||||
|
Meta Privacy Policy
|
||||||
|
</a>.
|
||||||
|
</li>
|
||||||
|
<li><strong>Telecom and messaging partners:</strong> SMS gateways, voice carriers, and delivery providers necessary to route messages</li>
|
||||||
|
<li><strong>Infrastructure providers:</strong> Cloud hosting, databases, logging, and security services</li>
|
||||||
|
<li><strong>Professional advisers:</strong> Lawyers, auditors, and insurers where reasonably necessary</li>
|
||||||
|
<li><strong>Authorities:</strong> When required by law, court order, or to protect rights, safety, and security</li>
|
||||||
|
<li><strong>Business transfers:</strong> In connection with a merger, acquisition, or sale of assets, subject to appropriate safeguards</li>
|
||||||
|
</ul>
|
||||||
|
<p>We do not sell personal information.</p>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section>
|
||||||
|
<h2>7. International data transfers</h2>
|
||||||
|
<p>
|
||||||
|
Urmi is based in India. Your information may be processed in India and in other countries where we or our
|
||||||
|
service providers operate. Where required, we implement appropriate safeguards for cross-border transfers,
|
||||||
|
including contractual protections with subprocessors.
|
||||||
|
</p>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section>
|
||||||
|
<h2>8. Data retention</h2>
|
||||||
|
<p>We retain personal information only as long as necessary for the purposes described in this policy, including:</p>
|
||||||
|
<ul>
|
||||||
|
<li>Account data: for the life of the account and a reasonable period thereafter</li>
|
||||||
|
<li>Message logs and API records: as needed for delivery, billing, dispute resolution, and legal compliance</li>
|
||||||
|
<li>Compliance records (KYC/DLT): as required by applicable Indian telecom regulations</li>
|
||||||
|
<li>WhatsApp webhook and message records: for operational, support, and audit purposes, then deleted or anonymized per our retention schedule</li>
|
||||||
|
</ul>
|
||||||
|
<p>Retention periods may vary based on legal requirements and customer configuration.</p>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section>
|
||||||
|
<h2>9. Cookies and similar technologies</h2>
|
||||||
|
<p>
|
||||||
|
We use cookies and similar technologies to keep you signed in, remember preferences, secure the platform,
|
||||||
|
and understand how our website and console are used. You can control cookies through your browser settings.
|
||||||
|
Disabling certain cookies may affect platform functionality.
|
||||||
|
</p>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section>
|
||||||
|
<h2>10. Security</h2>
|
||||||
|
<p>
|
||||||
|
We implement technical and organizational measures designed to protect personal information, including
|
||||||
|
access controls, encryption in transit (HTTPS/TLS), secure credential handling, and monitoring. No method
|
||||||
|
of transmission or storage is completely secure; we cannot guarantee absolute security.
|
||||||
|
</p>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section>
|
||||||
|
<h2>11. Your rights and choices</h2>
|
||||||
|
<p>Depending on applicable law, you may have the right to:</p>
|
||||||
|
<ul>
|
||||||
|
<li>Access, correct, or update your personal information</li>
|
||||||
|
<li>Request deletion of your personal information, subject to legal and contractual exceptions</li>
|
||||||
|
<li>Object to or restrict certain processing</li>
|
||||||
|
<li>Withdraw consent where processing is consent-based</li>
|
||||||
|
<li>Lodge a complaint with a supervisory authority</li>
|
||||||
|
</ul>
|
||||||
|
<p>
|
||||||
|
<strong>Account holders</strong> can update profile information in the Urmi console or contact us at{' '}
|
||||||
|
<a href={`mailto:${CONTACT_EMAIL}`}>{CONTACT_EMAIL}</a>.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
<strong>End users of our customers</strong> (e.g. recipients of SMS or WhatsApp messages) should contact the
|
||||||
|
business that sent the message first. If you cannot reach them, contact us and we will assist or forward
|
||||||
|
your request as appropriate.
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
<strong>WhatsApp users:</strong> You may block or stop messaging a business on WhatsApp at any time using
|
||||||
|
WhatsApp’s in-app controls. To request deletion of data Urmi holds about you in connection with WhatsApp
|
||||||
|
messaging, email <a href={`mailto:${CONTACT_EMAIL}`}>{CONTACT_EMAIL}</a> with your phone number and a
|
||||||
|
description of your request.
|
||||||
|
</p>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section>
|
||||||
|
<h2>12. Children’s privacy</h2>
|
||||||
|
<p>
|
||||||
|
Urmi’s services are intended for businesses and developers. We do not knowingly collect personal
|
||||||
|
information from children under 13 (or the minimum age required in your jurisdiction). If you believe a
|
||||||
|
child has provided us personal information, contact us and we will take appropriate steps to delete it.
|
||||||
|
</p>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section>
|
||||||
|
<h2>13. Third-party services and links</h2>
|
||||||
|
<p>
|
||||||
|
Our platform integrates with third-party services (including Meta WhatsApp, telecom carriers, and optional
|
||||||
|
OAuth providers). Their collection and use of information is governed by their own privacy policies. We
|
||||||
|
encourage you to review those policies before using integrated features.
|
||||||
|
</p>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section>
|
||||||
|
<h2>14. Meta Platform and App Review</h2>
|
||||||
|
<p>
|
||||||
|
Urmi’s application “URMI AI” on the Meta Developer Platform uses WhatsApp Business APIs to enable
|
||||||
|
business messaging. In connection with Meta App Review and Platform Terms, we disclose that:
|
||||||
|
</p>
|
||||||
|
<ul>
|
||||||
|
<li>We access WhatsApp data only to provide messaging functionality authorized by our customers or Urmi’s own business operations</li>
|
||||||
|
<li>We comply with Meta Platform Terms, Developer Policies, and WhatsApp Business Messaging Policy</li>
|
||||||
|
<li>We maintain this publicly accessible Privacy Policy URL for Meta app configuration</li>
|
||||||
|
<li>Users may contact <a href={`mailto:${CONTACT_EMAIL}`}>{CONTACT_EMAIL}</a> regarding data practices related to our Meta-integrated services</li>
|
||||||
|
</ul>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section>
|
||||||
|
<h2>15. Changes to this policy</h2>
|
||||||
|
<p>
|
||||||
|
We may update this Privacy Policy from time to time. We will post the revised policy on this page and
|
||||||
|
update the “Last updated” date. Material changes may be communicated via the console or email where
|
||||||
|
appropriate. Continued use of our services after changes become effective constitutes acceptance of the
|
||||||
|
updated policy.
|
||||||
|
</p>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
<section>
|
||||||
|
<h2>16. Contact us</h2>
|
||||||
|
<p>
|
||||||
|
For privacy questions, data subject requests, or complaints, contact:
|
||||||
|
</p>
|
||||||
|
<p>
|
||||||
|
<strong>Urmi Technologies / Genzenith Services LLP</strong><br />
|
||||||
|
Email: <a href={`mailto:${CONTACT_EMAIL}`}>{CONTACT_EMAIL}</a><br />
|
||||||
|
Website: <a href="https://urmiai.com">https://urmiai.com</a>
|
||||||
|
</p>
|
||||||
|
</section>
|
||||||
|
</article>
|
||||||
|
</main>
|
||||||
|
|
||||||
|
<footer className="landing-footer">
|
||||||
|
<img src="/urmi-logo.png" alt="Urmi" />
|
||||||
|
<span>SMS infrastructure for the agentic internet.</span>
|
||||||
|
<Link to="/privacy" className="legal-footer-link">Privacy Policy</Link>
|
||||||
|
<small>© 2026 Urmi Technologies</small>
|
||||||
|
</footer>
|
||||||
|
</div>
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
@ -203,7 +203,57 @@ main { padding: 30px clamp(20px, 3vw, 44px) 50px; }
|
||||||
.developer-band h2 { color: white; margin-bottom: 7px; }.developer-band p { margin: 0; color: #8fa0b6; }
|
.developer-band h2 { color: white; margin-bottom: 7px; }.developer-band p { margin: 0; color: #8fa0b6; }
|
||||||
.developer-band > a { flex: 0 0 auto; display: flex; align-items: center; gap: 8px; color: white; background: #1475ff; border-radius: 8px; padding: 12px 16px; text-decoration: none; font-size: 11px; font-weight: 700; }
|
.developer-band > a { flex: 0 0 auto; display: flex; align-items: center; gap: 8px; color: white; background: #1475ff; border-radius: 8px; padding: 12px 16px; text-decoration: none; font-size: 11px; font-weight: 700; }
|
||||||
.landing-footer { min-height: 100px; display: flex; align-items: center; gap: 22px; padding: 20px max(5vw, 24px); color: #788ba5; background: #07172f; }
|
.landing-footer { min-height: 100px; display: flex; align-items: center; gap: 22px; padding: 20px max(5vw, 24px); color: #788ba5; background: #07172f; }
|
||||||
.landing-footer img { width: 90px; height: 48px; object-fit: contain; }.landing-footer span { font-size: 10px; }.landing-footer small { margin-left: auto; font-size: 9px; }
|
.landing-footer img { width: 90px; height: 48px; object-fit: contain; }
|
||||||
|
.landing-footer span { font-size: 10px; }
|
||||||
|
.landing-footer small { margin-left: auto; font-size: 9px; }
|
||||||
|
.legal-footer-link { color: #9cacbf; font-size: 10px; text-decoration: none; }
|
||||||
|
.legal-footer-link:hover { color: white; }
|
||||||
|
.legal-page .landing-actions { margin-left: auto; }
|
||||||
|
.legal-main {
|
||||||
|
padding: 48px max(5vw, 24px) 72px;
|
||||||
|
background: #f6f8fb;
|
||||||
|
min-height: calc(100vh - 176px);
|
||||||
|
}
|
||||||
|
.legal-document {
|
||||||
|
max-width: 820px;
|
||||||
|
margin: 0 auto;
|
||||||
|
background: white;
|
||||||
|
border: 1px solid #e6ebf2;
|
||||||
|
border-radius: 14px;
|
||||||
|
padding: 40px 44px;
|
||||||
|
color: #334155;
|
||||||
|
line-height: 1.65;
|
||||||
|
}
|
||||||
|
.legal-header { margin-bottom: 28px; padding-bottom: 24px; border-bottom: 1px solid #e6ebf2; }
|
||||||
|
.legal-header h1 { margin: 8px 0 10px; font-size: 32px; color: #0f172a; line-height: 1.2; }
|
||||||
|
.legal-meta { margin: 0 0 16px; color: #64748b; font-size: 12px; }
|
||||||
|
.legal-intro { margin: 0; font-size: 14px; }
|
||||||
|
.legal-document section { margin-top: 28px; }
|
||||||
|
.legal-document h2 {
|
||||||
|
margin: 0 0 12px;
|
||||||
|
font-size: 18px;
|
||||||
|
color: #0f172a;
|
||||||
|
line-height: 1.35;
|
||||||
|
}
|
||||||
|
.legal-document h3 {
|
||||||
|
margin: 18px 0 8px;
|
||||||
|
font-size: 14px;
|
||||||
|
color: #1e293b;
|
||||||
|
}
|
||||||
|
.legal-document p { margin: 0 0 12px; font-size: 13px; }
|
||||||
|
.legal-document ul {
|
||||||
|
margin: 0 0 12px;
|
||||||
|
padding-left: 22px;
|
||||||
|
font-size: 13px;
|
||||||
|
}
|
||||||
|
.legal-document li { margin-bottom: 6px; }
|
||||||
|
.legal-document a { color: #1475ff; text-decoration: none; }
|
||||||
|
.legal-document a:hover { text-decoration: underline; }
|
||||||
|
.legal-document strong { color: #0f172a; }
|
||||||
|
@media (max-width: 720px) {
|
||||||
|
.legal-document { padding: 28px 22px; }
|
||||||
|
.legal-header h1 { font-size: 26px; }
|
||||||
|
}
|
||||||
|
|
||||||
/* Unified authentication */
|
/* Unified authentication */
|
||||||
.auth-page { min-height: 100vh; display: grid; grid-template-columns: minmax(380px, .8fr) minmax(520px, 1.2fr); background: white; }
|
.auth-page { min-height: 100vh; display: grid; grid-template-columns: minmax(380px, .8fr) minmax(520px, 1.2fr); background: white; }
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue