:root {
  --ink: #0d1b2a;
  --muted: #526274;
  --line: #dbe6e4;
  --paper: #ffffff;
  --canvas: #eef5f4;
  --primary: #0f766e;
  --primary-dark: #134e48;
  --primary-soft: #dff5ef;
  --blue: #2767e8;
  --blue-soft: #e7efff;
  --mint: #33c58e;
  --amber: #f3ad2f;
  --red: #ef4b4b;
  --shadow: 0 20px 50px rgba(16, 52, 47, .15);
  --sans: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ink);
  background: var(--canvas);
  font-family: var(--sans);
  line-height: 1.45;
  -webkit-font-smoothing: antialiased;
}
img { display: block; max-width: 100%; }
a { color: inherit; }

.skip-link {
  position: fixed;
  left: 1rem;
  top: -5rem;
  z-index: 100;
  padding: .7rem 1rem;
  border-radius: .7rem;
  color: #fff;
  background: var(--primary-dark);
}
.skip-link:focus { top: 1rem; }

.web-header {
  position: sticky;
  top: 0;
  z-index: 50;
  display: flex;
  align-items: center;
  gap: 1.5rem;
  min-height: 72px;
  padding: .65rem clamp(1rem, 4vw, 4rem);
  border-bottom: 1px solid rgba(15, 118, 110, .16);
  background: rgba(255, 255, 255, .93);
  backdrop-filter: blur(18px);
}
.web-header .brand { margin-right: auto; }
.web-header nav { display: flex; align-items: center; gap: 1.05rem; }
.web-header nav a { color: #38504d; font-size: .9rem; font-weight: 700; text-decoration: none; }
.web-header nav a:hover { color: var(--primary); }

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: .72rem 1.1rem;
  border: 1px solid var(--primary);
  border-radius: 999px;
  color: #fff;
  background: var(--primary);
  box-shadow: 0 9px 24px rgba(15, 118, 110, .2);
  font-weight: 800;
  text-decoration: none;
}
.button:hover { background: var(--primary-dark); }
.button-small { min-height: 38px; padding: .52rem .9rem; font-size: .84rem; }
.button-ghost { color: var(--primary-dark); background: transparent; box-shadow: none; }
.button-ghost:hover { color: #fff; }
.text-link { color: var(--primary-dark); font-weight: 800; text-decoration: none; }

.brochure-page {
  position: relative;
  width: min(1120px, calc(100% - 2rem));
  min-height: calc(100vh - 72px);
  margin: 1.4rem auto;
  overflow: hidden;
  border: 1px solid rgba(15, 118, 110, .13);
  border-radius: 28px;
  background: var(--paper);
  box-shadow: 0 26px 70px rgba(19, 78, 72, .11);
  scroll-margin-top: 86px;
}
.page-inner { padding: clamp(2rem, 5vw, 4.5rem) clamp(1.35rem, 5vw, 4.5rem) 5.5rem; }
.page-nav {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  min-height: 52px;
  padding: .7rem 2.1rem;
  border-top: 1px solid var(--line);
  background: rgba(248, 251, 250, .96);
  font-size: .78rem;
  font-weight: 800;
}
.page-nav a { color: var(--primary-dark); text-decoration: none; }
.page-nav a:nth-child(2) { justify-self: center; }
.page-nav a:last-child { justify-self: end; }
.page-nav-cover { color: rgba(255,255,255,.8); border-color: rgba(255,255,255,.15); background: rgba(4, 44, 43, .72); }
.page-nav-cover a { color: #fff; }

.eyebrow {
  margin: 0 0 .7rem;
  color: var(--primary);
  font-size: .75rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.section-heading { margin-bottom: 1.55rem; }
.section-heading h2 {
  max-width: 820px;
  margin: 0 0 .65rem;
  font-size: clamp(2rem, 4vw, 3.25rem);
  line-height: 1.05;
  letter-spacing: -.045em;
}
.section-heading p { max-width: 840px; margin: 0; color: var(--muted); font-size: 1.02rem; }
.two-column-heading { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(220px, .8fr); gap: 2rem; align-items: end; }

.cover { color: #fff; border-color: rgba(255,255,255,.09); background: linear-gradient(145deg, #082824, #0c534d 60%, #0f766e); }
.cover-glow { position: absolute; border-radius: 50%; filter: blur(1px); opacity: .38; pointer-events: none; }
.glow-one { width: 540px; height: 540px; right: -180px; top: -170px; background: radial-gradient(circle, #70edcc, transparent 68%); }
.glow-two { width: 470px; height: 470px; left: 24%; bottom: -290px; background: radial-gradient(circle, #1a9dec, transparent 68%); }
.cover-grid { position: relative; z-index: 1; display: grid; grid-template-columns: .92fr 1.08fr; gap: 2.8rem; align-items: center; min-height: calc(100vh - 124px); }
.cover-logo { width: 160px; margin-bottom: 1.8rem; padding: .55rem .75rem; border-radius: 14px; background: #fff; }
.cover .eyebrow { color: #8ff4d5; }
.cover h1 { margin: 0 0 1rem; font-size: clamp(2.75rem, 5.7vw, 5.4rem); line-height: .98; letter-spacing: -.06em; }
.cover .lead { max-width: 640px; margin: 0; color: #d8efea; font-size: clamp(1.05rem, 2vw, 1.35rem); }
.cover-actions { display: flex; flex-wrap: wrap; gap: .8rem; margin: 1.7rem 0; }
.cover .button { color: var(--primary-dark); border-color: #aaf4dc; background: #aaf4dc; }
.cover .button-ghost { color: #fff; border-color: rgba(255,255,255,.42); background: rgba(255,255,255,.05); }
.platform-pills { display: flex; flex-wrap: wrap; gap: .55rem; }
.platform-pills span { padding: .42rem .7rem; border: 1px solid rgba(255,255,255,.18); border-radius: 999px; color: #d6eee9; background: rgba(255,255,255,.07); font-size: .76rem; font-weight: 800; }
.cover-visual { position: relative; min-height: 590px; }
.cover-browser { position: absolute; right: -8%; top: 4%; width: 108%; transform: rotate(1.4deg); }
.cover-phone { position: absolute; z-index: 2; left: -3%; bottom: -3%; width: 31%; transform: rotate(-3deg); }
.cover-note { grid-column: 1 / -1; margin: 0; color: rgba(255,255,255,.68); font-size: .78rem; }

.browser-frame, .phone-frame { margin: 0; overflow: hidden; background: #fff; }
.browser-frame { border: 1px solid #cbd9d7; border-radius: 15px; }
.browser-frame > img { width: 100%; height: auto; }
.browser-bar { display: flex; align-items: center; gap: 6px; height: 28px; padding: 0 12px; color: #66807b; background: #f3f7f6; font-size: .58rem; font-weight: 800; }
.browser-bar i { display: block; width: 7px; height: 7px; border-radius: 50%; background: #ff7575; }
.browser-bar i:nth-child(2) { background: #ffbf4c; }
.browser-bar i:nth-child(3) { background: #55ca85; }
.browser-bar span { margin-left: 5px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.phone-frame { position: relative; padding: 7px; border: 1px solid #a9b9b6; border-radius: 28px; background: #0b1723; }
.phone-frame img { width: 100%; border-radius: 21px; }
.phone-speaker { position: absolute; z-index: 2; left: 50%; top: 12px; width: 25%; height: 5px; border-radius: 99px; background: rgba(4,12,20,.82); transform: translateX(-50%); }
.shadow-frame { box-shadow: var(--shadow); }

.sync-card, .callout-card {
  padding: 1rem 1.15rem;
  border: 1px solid #bde5db;
  border-radius: 17px;
  background: var(--primary-soft);
}
.sync-card { display: grid; grid-template-columns: auto 1fr; gap: .2rem .75rem; }
.sync-icon { grid-row: span 2; display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; color: #fff; background: var(--primary); font-size: 1.4rem; }
.sync-card strong, .callout-card strong { color: var(--primary-dark); }
.sync-card small, .callout-card span { display: block; color: #46645e; }
.contents-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; margin: 2rem 0; }
.contents-grid a { display: grid; grid-template-columns: 42px 1fr; grid-template-rows: auto auto; gap: .08rem .8rem; padding: 1rem; border: 1px solid var(--line); border-radius: 16px; text-decoration: none; transition: transform .18s ease, border-color .18s ease; }
.contents-grid a:hover { border-color: var(--primary); transform: translateY(-2px); }
.contents-grid span { grid-row: span 2; display: grid; place-items: center; width: 42px; height: 42px; border-radius: 12px; color: var(--primary-dark); background: var(--primary-soft); font-weight: 900; }
.contents-grid strong { font-size: 1.05rem; }
.contents-grid small { color: var(--muted); }
.feature-strip { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 1.8rem; overflow: hidden; border: 1px solid #c8e6df; border-radius: 18px; background: #f4fbf9; }
.feature-strip div { display: flex; align-items: baseline; justify-content: center; gap: .55rem; padding: 1.2rem; border-right: 1px solid #c8e6df; }
.feature-strip div:last-child { border: 0; }
.feature-strip b { color: var(--primary); font-size: 2rem; }
.feature-strip span { color: var(--primary-dark); font-size: .83rem; font-weight: 800; }
.fine-print { color: #70807d; font-size: .72rem; }

.split-showcase { display: grid; align-items: center; gap: 2rem; margin: 1.6rem 0; }
.billing-showcase { grid-template-columns: minmax(0, 1fr) 190px; }
.billing-showcase .phone-frame { width: 180px; justify-self: center; }
.khata-showcase { grid-template-columns: 205px minmax(0, 1fr); }
.khata-showcase .phone-frame { width: 195px; justify-self: center; }
.benefit-grid { display: grid; gap: .75rem; }
.benefit-grid.four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.benefit-grid article { padding: .9rem; border: 1px solid var(--line); border-radius: 15px; background: #fbfdfd; }
.benefit-grid article > span { display: grid; place-items: center; width: 34px; height: 34px; margin-bottom: .55rem; border-radius: 10px; color: var(--primary-dark); background: var(--primary-soft); font-weight: 900; }
.benefit-grid h3 { margin: 0 0 .3rem; font-size: .93rem; }
.benefit-grid p { margin: 0; color: var(--muted); font-size: .77rem; }
.callout-card { max-width: 330px; }
.step-row { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr; gap: .55rem; align-items: center; margin-top: 1.4rem; }
.step-row div { display: grid; grid-template-columns: auto 1fr; gap: .55rem; align-items: center; padding: .7rem; border-radius: 12px; background: #f2f7f6; }
.step-row b { display: grid; place-items: center; width: 29px; height: 29px; border-radius: 50%; color: #fff; background: var(--primary); }
.step-row span { color: #3f5551; font-size: .7rem; font-weight: 800; }
.step-row i { color: #8ca09c; font-style: normal; }

.hero-browser { width: 100%; margin: 1.4rem 0 1.2rem; }
.inventory-benefits { margin-top: 1.2rem; }
.wide-callout { margin-top: 1rem; padding: .85rem 1rem; border-left: 4px solid var(--amber); border-radius: 10px; color: #5e4a1e; background: #fff7dd; font-size: .82rem; }

.compliance-note { padding: .85rem; border: 1px solid #f2d791; border-radius: 14px; color: #644d18 !important; background: #fff8df; font-size: .72rem !important; }
.double-browser { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin: 1.2rem 0; }
.tag-list { display: flex; flex-wrap: wrap; gap: .5rem; }
.tag-list span { padding: .43rem .65rem; border-radius: 999px; color: #294d47; background: #e9f5f2; font-size: .72rem; font-weight: 800; }

.staff-flow { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .8rem; margin-top: 1.25rem; }
.staff-flow article { padding: .9rem; border-radius: 15px; color: #fff; background: linear-gradient(145deg, var(--primary-dark), var(--primary)); }
.staff-flow article:nth-child(2) { background: linear-gradient(145deg, #163f73, #2767e8); }
.staff-flow article:nth-child(3) { background: linear-gradient(145deg, #7c4a08, #e49b20); }
.staff-flow article:nth-child(4) { background: linear-gradient(145deg, #4a286a, #8a45b9); }
.staff-flow b, .staff-flow span { display: block; }
.staff-flow b { margin-bottom: .3rem; font-size: 1rem; }
.staff-flow span { color: rgba(255,255,255,.82); font-size: .72rem; }

.settings-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .82fr) 150px; grid-template-areas: "business business phone" "payment payment phone"; gap: .8rem; align-items: start; }
.business-shot { grid-area: business; }
.payment-shot { grid-area: payment; }
.settings-phone { grid-area: phone; width: 150px; align-self: center; }
.settings-checklist { display: grid; grid-template-columns: repeat(2, 1fr); gap: .55rem; margin-top: 1rem; }
.settings-checklist span { padding: .55rem .7rem; border-radius: 10px; color: #35514c; background: #edf6f4; font-size: .75rem; font-weight: 750; }

.document-showcase { display: grid; grid-template-columns: minmax(0, 1fr) 185px; gap: 1.2rem; align-items: center; margin: 1rem 0 1.2rem; }
.document-showcase .phone-frame { width: 180px; }
.closing-cta { display: flex; align-items: center; gap: 2rem; padding: 1.15rem 1.3rem; border-radius: 18px; color: #fff; background: linear-gradient(135deg, var(--primary-dark), var(--primary)); }
.closing-cta > div:first-child { flex: 1; }
.closing-cta img { width: 105px; margin-bottom: .65rem; padding: .35rem .5rem; border-radius: 9px; background: #fff; }
.closing-cta h3 { margin: 0 0 .3rem; font-size: 1.25rem; }
.closing-cta p { margin: 0; color: #d8efea; font-size: .82rem; }
.cta-buttons { display: grid; gap: .55rem; min-width: 170px; }
.closing-cta .button { border-color: #b4f2df; color: var(--primary-dark); background: #b4f2df; }
.closing-cta .button-ghost { border-color: rgba(255,255,255,.45); color: #fff; background: transparent; }
.closing-cta .text-link { color: #fff; text-align: center; }

@media (max-width: 900px) {
  .web-header nav { display: none; }
  .cover-grid, .two-column-heading { grid-template-columns: minmax(0, 1fr); }
  .cover-copy, .cover-visual { min-width: 0; }
  .cover-grid { align-items: start; }
  .cover-visual { min-height: 480px; }
  .cover-browser { right: 0; width: 95%; }
  .cover-phone { left: 0; width: 27%; }
  .benefit-grid.four, .staff-flow { grid-template-columns: repeat(2, 1fr); }
  .settings-grid { grid-template-columns: 1fr 140px; grid-template-areas: "business phone" "payment phone"; }
}

@media (max-width: 640px) {
  .web-header { min-height: 62px; padding: .55rem 1rem; }
  .web-header .button { font-size: 0; }
  .web-header .button::after { content: "PDF"; font-size: .78rem; }
  .brochure-page { width: calc(100% - 1rem); min-height: auto; margin: .5rem auto; border-radius: 20px; }
  .page-inner { padding: 2rem 1.1rem 4.5rem; }
  .page-nav { padding: .65rem 1rem; }
  .cover-grid { min-height: 920px; }
  .cover-copy { width: calc(100vw - 3.2rem); }
  .cover h1 { max-width: 100%; font-size: clamp(2.15rem, 11vw, 2.7rem); overflow-wrap: anywhere; }
  .cover .lead { max-width: 100%; font-size: 1rem; overflow-wrap: anywhere; }
  .cover-visual { min-height: 430px; }
  .cover-browser { right: 0; top: 0; width: 100%; }
  .cover-phone { width: 34%; }
  .contents-grid, .feature-strip, .split-showcase, .double-browser, .settings-grid, .document-showcase { grid-template-columns: 1fr; }
  .feature-strip div { border-right: 0; border-bottom: 1px solid #c8e6df; }
  .feature-strip div:last-child { border: 0; }
  .billing-showcase .phone-frame, .khata-showcase .phone-frame, .document-showcase .phone-frame, .settings-phone { width: min(210px, 56vw); justify-self: center; }
  .benefit-grid.four, .staff-flow, .settings-checklist { grid-template-columns: 1fr; }
  .step-row { grid-template-columns: 1fr; }
  .step-row i { display: none; }
  .settings-grid { grid-template-areas: "business" "payment" "phone"; }
  .closing-cta { display: grid; }
}

@page { size: A4; margin: 0; }

@media print {
  html, body { width: 210mm; margin: 0; background: #fff; print-color-adjust: exact; -webkit-print-color-adjust: exact; }
  .skip-link, .web-header { display: none !important; }
  .brochure-page {
    width: 210mm;
    height: 297mm;
    min-height: 0;
    margin: 0;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    break-after: page;
    page-break-after: always;
    scroll-margin-top: 0;
  }
  .brochure-page:last-child { break-after: auto; page-break-after: auto; }
  .page-inner { height: 297mm; padding: 13mm 14mm 16mm; }
  .page-nav { min-height: 10mm; padding: 2mm 14mm; font-size: 7pt; }
  .eyebrow { margin-bottom: 2mm; font-size: 7.5pt; }
  .section-heading { margin-bottom: 5mm; }
  .section-heading h2 { margin-bottom: 2mm; font-size: 25pt; }
  .section-heading p { font-size: 9.2pt; }
  .cover-grid { min-height: 267mm; grid-template-columns: .9fr 1.1fr; gap: 8mm; }
  .cover-logo { width: 34mm; margin-bottom: 7mm; }
  .cover h1 { font-size: 35pt; }
  .cover .lead { font-size: 10.5pt; }
  .cover-actions { margin: 6mm 0; }
  .button { min-height: 8mm; padding: 2.2mm 4mm; font-size: 8pt; }
  .platform-pills span { padding: 1.2mm 2.5mm; font-size: 6.7pt; }
  .cover-visual { min-height: 160mm; }
  .cover-browser { width: 112%; top: 8%; }
  .cover-phone { width: 33%; bottom: 2%; }
  .cover-note { font-size: 6.5pt; }
  .browser-bar { height: 5.5mm; padding: 0 3mm; font-size: 5.5pt; }
  .browser-bar i { width: 1.5mm; height: 1.5mm; }
  .phone-frame { padding: 1.3mm; border-radius: 6mm; }
  .phone-frame img { border-radius: 4.7mm; }
  .phone-speaker { top: 2.4mm; height: 1mm; }
  .shadow-frame { box-shadow: 0 3mm 9mm rgba(16,52,47,.14); }
  .two-column-heading { gap: 7mm; }
  .sync-card, .callout-card { padding: 3mm; border-radius: 4mm; font-size: 8pt; }
  .sync-icon { width: 8mm; height: 8mm; }
  .contents-grid { gap: 2.5mm; margin: 7mm 0; }
  .contents-grid a { padding: 3mm; border-radius: 4mm; }
  .contents-grid span { width: 9mm; height: 9mm; border-radius: 2.5mm; font-size: 8pt; }
  .contents-grid strong { font-size: 9pt; }
  .contents-grid small { font-size: 7pt; }
  .feature-strip { margin-top: 5mm; }
  .feature-strip div { padding: 3.5mm; }
  .feature-strip b { font-size: 18pt; }
  .feature-strip span { font-size: 7pt; }
  .fine-print { font-size: 6pt; }
  .split-showcase { gap: 6mm; margin: 5mm 0; }
  .billing-showcase { grid-template-columns: minmax(0, 1fr) 41mm; }
  .billing-showcase .phone-frame { width: 38mm; }
  .khata-showcase { grid-template-columns: 45mm minmax(0, 1fr); }
  .khata-showcase .phone-frame { width: 42mm; }
  .benefit-grid { gap: 2.5mm; }
  .benefit-grid article { padding: 2.7mm; border-radius: 3.5mm; }
  .benefit-grid article > span { width: 7mm; height: 7mm; margin-bottom: 1.5mm; border-radius: 2mm; }
  .benefit-grid h3 { margin-bottom: 1mm; font-size: 8pt; }
  .benefit-grid p { font-size: 6.2pt; line-height: 1.35; }
  .step-row { gap: 2mm; margin-top: 4mm; }
  .step-row div { gap: 1.5mm; padding: 2.3mm; }
  .step-row b { width: 6mm; height: 6mm; font-size: 7pt; }
  .step-row span { font-size: 5.7pt; }
  .hero-browser { margin: 4mm 0; }
  .inventory-benefits { margin-top: 3.5mm; }
  .wide-callout { margin-top: 3mm; padding: 2.5mm 3mm; font-size: 7pt; }
  .compliance-note { padding: 2.5mm; font-size: 6.3pt !important; }
  .double-browser { gap: 3mm; margin: 4mm 0; }
  .tag-list { gap: 1.4mm; }
  .tag-list span { padding: 1.2mm 2mm; font-size: 6.2pt; }
  .staff-flow { gap: 2.3mm; margin-top: 4mm; }
  .staff-flow article { padding: 3mm; border-radius: 3.5mm; }
  .staff-flow b { font-size: 8.5pt; }
  .staff-flow span { font-size: 6pt; }
  .settings-grid { grid-template-columns: minmax(0, 1fr) minmax(0, .82fr) 31mm; gap: 2.5mm; }
  .settings-phone { width: 31mm; }
  .settings-checklist { gap: 1.7mm; margin-top: 3.5mm; }
  .settings-checklist span { padding: 1.7mm 2mm; font-size: 6.4pt; }
  .document-showcase { grid-template-columns: minmax(0, 1fr) 39mm; gap: 4mm; margin: 3mm 0 4mm; }
  .document-showcase .phone-frame { width: 38mm; }
  .closing-cta { gap: 6mm; padding: 3.5mm 4mm; border-radius: 4mm; }
  .closing-cta img { width: 23mm; margin-bottom: 2mm; }
  .closing-cta h3 { font-size: 10.5pt; }
  .closing-cta p { font-size: 6.7pt; }
  .cta-buttons { min-width: 36mm; gap: 1.5mm; }
}
