:root {
  --ink: #10241f; --ink-2: #17352e; --green: #0f5a50; --green-2: #1f7669; --mint: #cceade;
  --cream: #f4f0e7; --paper: #fbfaf6; --white: #fff; --line: #dcded6; --muted: #65736e;
  --orange: #e5643f; --amber: #e6a938; --red: #c84739; --shadow: 0 22px 70px rgba(16,36,31,.12);
  --sans: Inter, "Avenir Next", "Segoe UI", Helvetica, Arial, sans-serif;
}

* { box-sizing: border-box; }
[hidden] { display: none !important; }
html { scroll-behavior: smooth; background: var(--paper); }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: var(--sans); -webkit-font-smoothing: antialiased; }
button, input, textarea, select { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; text-decoration: none; }
button { color: inherit; }
img { display: block; max-width: 100%; }
button:focus-visible, a:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible, summary:focus-visible { outline: 3px solid #f3b84b; outline-offset: 3px; }
.shell { width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
.spin { animation: spin .8s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }

.brand { display: inline-flex; align-items: center; gap: 10px; font-size: 25px; font-weight: 840; letter-spacing: -.06em; }
.brand-mark { width: 28px; height: 28px; position: relative; display: inline-block; transform: rotate(-4deg); }
.brand-mark i { position: absolute; width: 9px; background: var(--green); border-radius: 7px; bottom: 2px; }
.brand-mark i:nth-child(1) { height: 15px; left: 1px; }
.brand-mark i:nth-child(2) { height: 23px; left: 10px; }
.brand-mark i:nth-child(3) { height: 19px; left: 19px; }
.brand--inverse { color: #fff; }.brand--inverse .brand-mark i { background: #e1f4ec; }

.button { min-height: 48px; border: 1px solid transparent; border-radius: 14px; display: inline-flex; align-items: center; justify-content: center; gap: 9px; padding: 0 19px; font-size: 14px; font-weight: 760; cursor: pointer; transition: transform .18s ease, box-shadow .18s ease, background .18s ease; }
.button:hover { transform: translateY(-1px); }
.button:disabled { opacity: .55; cursor: wait; transform: none; }
.button--primary { color: #fff; background: var(--green); box-shadow: 0 9px 28px rgba(15,90,80,.2); }
.button--primary:hover { background: #0a4b43; box-shadow: 0 12px 32px rgba(15,90,80,.28); }
.button--dark { background: var(--ink); color: #fff; }
.button--cream { background: var(--cream); color: var(--ink); }
.button--quiet { border-color: #ccd3ce; background: rgba(255,255,255,.72); color: var(--ink); }
.button--small { min-height: 40px; border-radius: 11px; padding-inline: 15px; }
.eyebrow { display: inline-flex; align-items: center; gap: 7px; color: var(--green); font-size: 11px; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.eyebrow--light { color: #a9d9c9; }

/* Marketing */
.marketing-header { position: sticky; z-index: 40; top: 0; border-bottom: 1px solid rgba(16,36,31,.09); background: rgba(251,250,246,.92); backdrop-filter: blur(14px); }
.header-inner { min-height: 74px; display: flex; align-items: center; justify-content: space-between; }
.header-inner nav { display: flex; gap: 31px; font-size: 13px; font-weight: 670; }
.header-inner nav a:hover, .text-link:hover { color: var(--green); }
.header-actions { display: flex; align-items: center; gap: 20px; }.text-link { font-size: 13px; font-weight: 700; }.mobile-login { display: none; font-size: 13px; font-weight: 750; }
.hero { min-height: 720px; overflow: hidden; border-bottom: 1px solid var(--line); background-color: var(--cream); background-image: radial-gradient(circle at 14% 16%, rgba(255,255,255,.8) 0 1px, transparent 1px); background-size: 17px 17px; }
.hero-grid { min-height: 720px; display: grid; grid-template-columns: 1.02fr .98fr; align-items: center; gap: 60px; }
.hero-copy h1 { max-width: 650px; margin: 22px 0 24px; font-size: clamp(52px, 6vw, 82px); line-height: .98; letter-spacing: -.065em; font-weight: 760; }
.hero-copy h1 em { display: block; color: var(--green); font-family: Georgia, "Times New Roman", serif; font-weight: 500; letter-spacing: -.045em; }
.hero-copy > p { max-width: 615px; color: #50625c; font-size: 18px; line-height: 1.7; }
.hero-actions { display: flex; gap: 11px; margin: 34px 0 30px; }
.trust-row { display: flex; flex-wrap: wrap; gap: 18px; color: #52635d; font-size: 12px; font-weight: 650; }.trust-row span { display: flex; align-items: center; gap: 6px; }.trust-row svg { color: var(--green); }
.hero-product { min-height: 610px; position: relative; display: flex; align-items: center; justify-content: center; }
.hero-product::before { content: ""; position: absolute; width: 490px; height: 490px; background: var(--green); border-radius: 50%; opacity: .12; }
.hero-phone { position: relative; z-index: 2; width: 292px; overflow: hidden; border: 8px solid #17342d; border-radius: 40px; background: #fff; box-shadow: 0 40px 95px rgba(16,36,31,.25); transform: rotate(2.5deg); }
.phone-top { padding: 15px 14px 12px; display: flex; gap: 9px; align-items: center; }.venue-avatar { width: 32px; height: 32px; border-radius: 10px; display: grid; place-items: center; color: #fff; background: var(--green); font-size: 10px; font-weight: 850; }.phone-top div { flex: 1; display: flex; flex-direction: column; }.phone-top strong { font-size: 12px; }.phone-top small { color: #61726b; font-size: 8px; }.phone-top > span:last-child { border: 1px solid #dce2de; border-radius: 8px; padding: 5px; font-size: 8px; font-weight: 800; }
.phone-visual { height: 220px; position: relative; }.phone-visual img { width: 100%; height: 100%; object-fit: cover; }.phone-visual > span { position: absolute; left: 11px; bottom: 10px; border-radius: 99px; padding: 5px 8px; color: #fff; background: var(--orange); font-size: 8px; font-weight: 800; }
.phone-content { padding: 16px 15px 18px; }.phone-content > small { color: var(--green); font-size: 8px; font-weight: 850; letter-spacing: .1em; }.phone-content h3 { margin: 5px 0; font-size: 17px; letter-spacing: -.035em; }.phone-content p { margin: 0 0 14px; color: #68766f; font-size: 10px; line-height: 1.5; }.phone-content > div { display: flex; align-items: center; justify-content: space-between; }.phone-content strong { font-size: 12px; }.phone-content button { width: 31px; height: 31px; border: 0; border-radius: 10px; color: #fff; background: var(--green); font-size: 20px; }
.phone-cart { display: flex; align-items: center; justify-content: space-between; padding: 13px 12px; color: #fff; background: var(--ink); font-size: 8px; }.phone-cart strong { font-size: 9px; }
.hero-console-card { position: absolute; z-index: 3; top: 115px; right: -10px; width: 205px; padding: 18px; border: 1px solid rgba(255,255,255,.7); border-radius: 18px; background: rgba(255,255,255,.92); box-shadow: 0 20px 55px rgba(16,36,31,.14); transform: rotate(-3deg); }.hero-console-card > div:first-child { display: flex; align-items: center; gap: 6px; color: var(--muted); font-size: 9px; font-weight: 760; text-transform: uppercase; }.live-dot { width: 7px; height: 7px; display: inline-block; border-radius: 50%; background: #27a876; box-shadow: 0 0 0 4px rgba(39,168,118,.13); }.hero-console-card > strong { display: block; margin-top: 13px; font-size: 24px; letter-spacing: -.05em; }.hero-console-card > small { color: var(--muted); font-size: 10px; }.mini-orders { display: flex; gap: 5px; margin-top: 14px; }.mini-orders i { height: 5px; flex: 1; border-radius: 5px; background: #d7e6df; }.mini-orders i:first-child { background: var(--orange); }.mini-orders i:nth-child(2) { background: var(--amber); }
.hero-time { position: absolute; z-index: 3; left: -12px; bottom: 108px; display: flex; align-items: center; gap: 10px; padding: 13px 16px; border-radius: 14px; color: #fff; background: var(--ink); box-shadow: 0 16px 40px rgba(16,36,31,.2); font-size: 11px; transform: rotate(-2deg); }.hero-time span { display: flex; flex-direction: column; }.hero-time strong { font-size: 15px; }
.proof-strip { border-bottom: 1px solid var(--line); background: #fff; }.proof-strip .shell { min-height: 104px; display: flex; align-items: center; justify-content: space-between; }.proof-strip p { color: var(--muted); font-size: 12px; text-transform: uppercase; letter-spacing: .12em; font-weight: 760; }.proof-strip div div { display: flex; align-items: center; gap: 27px; font-size: 17px; font-weight: 730; }.proof-strip i { width: 4px; height: 4px; border-radius: 50%; background: #acb6b0; }
.section { padding-top: 112px; padding-bottom: 112px; }.section-heading { max-width: 760px; margin-bottom: 46px; }.section-heading h2, .split-feature h2, .benefit-main h2 { margin: 13px 0 15px; font-size: clamp(36px, 4.2vw, 58px); line-height: 1.05; letter-spacing: -.055em; }.section-heading p, .split-feature > div > p, .benefit-main > p { max-width: 650px; color: var(--muted); font-size: 16px; line-height: 1.7; }
.flow-grid { display: grid; grid-template-columns: repeat(4,1fr); border: 1px solid var(--line); border-radius: 24px; overflow: hidden; background: #fff; }.flow-card { min-height: 260px; padding: 28px; border-right: 1px solid var(--line); }.flow-card:last-child { border-right: 0; }.flow-card > div { display: flex; justify-content: space-between; color: var(--green); }.flow-card > div span { color: #9aa69f; font: 13px Georgia,serif; }.flow-card h3 { margin: 55px 0 10px; font-size: 20px; letter-spacing: -.035em; }.flow-card p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.65; }
.section--ink { color: #fff; background: var(--ink); }.split-feature { display: grid; grid-template-columns: .82fr 1.18fr; align-items: center; gap: 80px; }.split-feature > div:first-child { max-width: 480px; }.split-feature > div > p { color: #aec0ba; }.check-list { display: grid; gap: 12px; margin: 27px 0 31px; padding: 0; list-style: none; color: #d6e2dd; font-size: 14px; }.check-list li { display: flex; gap: 10px; align-items: center; }.check-list svg { width: 18px; color: #7ac7ad; }
.ops-mock { overflow: hidden; border: 1px solid rgba(255,255,255,.13); border-radius: 22px; background: #f3f3ef; box-shadow: 0 35px 80px rgba(0,0,0,.24); transform: rotate(1deg); }.ops-head { height: 45px; display: flex; justify-content: space-between; align-items: center; padding: 0 16px; color: #5b6863; background: #fff; font-size: 9px; }.ops-head i { display: inline-block; width: 7px; height: 7px; margin-left: 5px; border-radius: 50%; background: #d0d6d2; }.ops-body { height: 390px; display: flex; }.ops-body aside { width: 52px; padding-top: 17px; display: flex; align-items: center; flex-direction: column; gap: 19px; color: #fff; background: #18372f; }.ops-body aside svg { width: 17px; }.ops-body aside i { width: 17px; height: 17px; border-radius: 5px; background: rgba(255,255,255,.15); }.ops-body aside i.active { background: #81cbb2; }.ops-board { flex: 1; padding: 26px 21px; color: var(--ink); }.ops-title { display: flex; justify-content: space-between; align-items: center; }.ops-title > div { display: flex; flex-direction: column; }.ops-title small { color: var(--green); font-size: 7px; font-weight: 850; letter-spacing: .13em; }.ops-title strong { margin-top: 4px; font-size: 19px; }.ops-title > span { display: flex; align-items: center; gap: 6px; color: #68766f; font-size: 8px; }.kanban-mini { display: grid; grid-template-columns: repeat(3,1fr); gap: 9px; margin-top: 24px; }.kanban-mini > div > b { color: #75817c; font-size: 7px; letter-spacing: .06em; }.kanban-mini article { min-height: 160px; margin-top: 9px; display: flex; flex-direction: column; padding: 13px; border-top: 3px solid var(--orange); border-radius: 10px; background: #fff; box-shadow: 0 7px 20px rgba(16,36,31,.07); }.kanban-mini article.warm { border-color: var(--amber); }.kanban-mini article.green { border-color: #45a980; }.kanban-mini article small { color: #78847f; font-size: 7px; }.kanban-mini article strong { margin-top: 24px; font-size: 10px; line-height: 1.4; }.kanban-mini article span { margin-top: auto; font-size: 8px; color: #77837e; }
.benefit-grid { display: grid; grid-template-columns: 1.45fr .775fr .775fr; gap: 16px; }.benefit-main, .benefit-side { min-height: 390px; border: 1px solid var(--line); border-radius: 22px; padding: 38px; background: #fff; }.benefit-main { background: var(--cream); }.benefit-main h2 { max-width: 650px; font-size: 43px; }.mini-pill-row { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 29px; }.mini-pill-row span { display: inline-flex; align-items: center; gap: 7px; padding: 9px 12px; border: 1px solid #cfd8d3; border-radius: 99px; color: #4d615a; font-size: 11px; font-weight: 720; }.mini-pill-row svg { width: 15px; }.benefit-side { display: flex; flex-direction: column; justify-content: flex-end; }.benefit-side > svg { width: 30px; height: 30px; margin-bottom: auto; color: var(--green); }.benefit-side h3 { margin: 20px 0 9px; font-size: 21px; }.benefit-side p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.65; }
.cta-band { min-height: 290px; display: flex; align-items: center; justify-content: space-between; gap: 40px; padding: 50px 58px; border-radius: 26px; color: #fff; background: var(--green); }.cta-band h2 { max-width: 680px; margin: 12px 0 0; font-size: clamp(35px,4vw,55px); line-height: 1; letter-spacing: -.055em; }.cta-band > div:last-child { display: flex; flex-direction: column; align-items: center; gap: 10px; }.cta-band p { margin: 0; color: #cde6de; font-size: 10px; }
.marketing-footer { margin-top: 90px; padding: 75px 0 28px; color: #d9e3df; background: #0b1c18; }.footer-grid { display: grid; grid-template-columns: 1.7fr repeat(3,1fr); gap: 55px; }.footer-grid > div { display: flex; align-items: flex-start; flex-direction: column; gap: 11px; }.footer-grid > div:first-child p { max-width: 330px; margin: 18px 0 8px; color: #91a49d; line-height: 1.65; font-size: 13px; }.footer-meta { color: #779087; font-size: 11px; }.footer-grid h3 { margin: 2px 0 14px; color: #fff; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; }.footer-grid a, .footer-grid > div > span { display: flex; align-items: center; gap: 7px; color: #9db0a9; font-size: 12px; }.footer-grid a:hover { color: #fff; }.footer-bottom { margin-top: 65px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.1); display: flex; justify-content: space-between; color: #6e847c; font-size: 10px; }

/* Secondary marketing */
.page-hero { padding-top: 118px; padding-bottom: 75px; }.page-hero h1 { max-width: 900px; margin: 17px 0 22px; font-size: clamp(49px,6vw,78px); line-height: .99; letter-spacing: -.065em; }.page-hero > p { max-width: 760px; margin: 0; color: var(--muted); font-size: 18px; line-height: 1.7; }
.feature-list { padding-top: 15px; }.feature-row { display: grid; grid-template-columns: 80px 1fr .85fr; gap: 30px; padding: 45px 0; border-top: 1px solid var(--line); }.feature-icon { width: 56px; height: 56px; display: grid; place-items: center; border-radius: 17px; color: var(--green); background: #e2eee9; }.feature-index { color: #9aa6a1; font: 12px Georgia,serif; }.feature-row h2 { margin: 7px 0 10px; font-size: 31px; letter-spacing: -.045em; }.feature-row p { max-width: 570px; margin: 0; color: var(--muted); font-size: 14px; line-height: 1.65; }.feature-row ul { display: grid; gap: 10px; align-content: center; margin: 0; padding: 0; list-style: none; color: #51635c; font-size: 13px; }.feature-row li { display: flex; align-items: center; gap: 9px; }.feature-row li svg { width: 17px; color: var(--green); }
.tech-trust { display: grid; grid-template-columns: repeat(4,1fr); border: 1px solid var(--line); border-radius: 22px; background: #fff; overflow: hidden; }.tech-trust > div { min-height: 230px; padding: 28px; border-right: 1px solid var(--line); }.tech-trust > div:last-child { border: 0; }.tech-trust svg { color: var(--green); }.tech-trust h3 { margin: 42px 0 9px; font-size: 17px; }.tech-trust p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.6; }
.page-cta { min-height: 190px; display: flex; align-items: center; justify-content: space-between; gap: 30px; margin-bottom: 100px; padding: 42px; border-radius: 22px; color: #fff; background: var(--ink); }.page-cta h2 { margin: 0 0 8px; font-size: 31px; letter-spacing: -.04em; }.page-cta p { margin: 0; color: #aabdb6; }
.pricing-path { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); margin: 0 auto 58px; padding: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 22px; background: #fff; list-style: none; }.pricing-path li { min-height: 112px; display: flex; flex-direction: column; justify-content: center; gap: 4px; padding: 22px; border-right: 1px solid var(--line); }.pricing-path li:last-child { border-right: 0; }.pricing-path span { color: #9aa6a1; font: 11px Georgia,serif; }.pricing-path strong { font-size: 15px; }.pricing-path small { color: var(--muted); font-size: 10px; line-height: 1.4; }.pricing-path__primary { color: #fff; background: var(--ink); }.pricing-path__primary span,.pricing-path__primary small { color: #9fc1b5; }
.pricing-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); align-items: stretch; gap: 18px; padding-bottom: 72px; }.price-card { min-height: 0; position: relative; display: flex; flex-direction: column; padding: 36px; border: 1px solid var(--line); border-radius: 23px; background: #fff; }.price-card--featured { grid-column: 1/-1; display: grid; grid-template-columns: minmax(0,.86fr) minmax(0,1.14fr); gap: 64px; padding: 52px; color: #fff; border-color: var(--ink); background: var(--ink); box-shadow: 0 28px 80px rgba(16,36,31,.18); }.plan-heading { min-height: 29px; display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }.plan-pill,.launch-badge { display: inline-flex; align-items: center; width: fit-content; border-radius: 99px; padding: 7px 10px; font-size: 9px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }.plan-pill { color: var(--green); background: #e2eee9; }.price-card--featured .plan-pill { color: var(--ink); background: #9fddc8; }.launch-badge { color: #53370a; background: #f3c96f; box-shadow: 0 7px 20px rgba(230,169,56,.18); }.price-card h2 { margin: 17px 0 0; font-size: 31px; letter-spacing: -.045em; }.price-value-block { margin: 28px 0 22px; }.price-old { min-height: 24px; display: flex; align-items: center; gap: 10px; color: var(--muted); font-size: 11px; }.price-old span { font-weight: 750; text-transform: uppercase; letter-spacing: .05em; }.price-old del { font-size: 15px; font-weight: 760; text-decoration-thickness: 2px; }.price-current { min-height: 52px; display: flex; align-items: baseline; flex-wrap: wrap; gap: 8px; }.price-current strong { font-size: clamp(34px,4vw,48px); line-height: 1; letter-spacing: -.055em; }.price-current small { color: var(--muted); font-size: 11px; font-weight: 700; }.price-card--featured .price-old,.price-card--featured .price-current small { color: #9fb4ad; }.launch-note { margin: 12px 0 0; color: #87611d; font-size: 11px; font-weight: 760; }.price-card--featured .launch-note { color: #f2ce82; }.price-description { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.65; }.price-card--featured .price-description { color: #b3c4be; }.price-facts { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 24px; }.price-facts span { display: inline-flex; align-items: center; min-height: 34px; padding: 8px 11px; border: 1px solid #d8dfda; border-radius: 99px; color: #496059; background: #f9faf7; font-size: 10px; font-weight: 720; }.price-card--featured .price-facts span { color: #d9e7e2; border-color: rgba(255,255,255,.14); background: rgba(255,255,255,.06); }.price-card__details { display: flex; flex: 1; flex-direction: column; }.price-card ul { flex: 1; display: grid; align-content: start; gap: 12px; margin: 31px 0 34px; padding: 0; list-style: none; color: #4f615a; font-size: 13px; }.price-card--featured ul { grid-template-columns: repeat(2,minmax(0,1fr)); margin-top: 3px; color: #d6e2de; }.price-card li { position: relative; padding-left: 25px; line-height: 1.45; }.price-card li::before { content: "✓"; width: 17px; height: 17px; position: absolute; top: 1px; left: 0; display: grid; place-items: center; border-radius: 50%; color: var(--green); background: #e2eee9; font-size: 10px; font-weight: 900; }.price-card--featured li::before { color: #dff4eb; background: rgba(126,208,180,.18); }.price-card .button { width: 100%; margin-top: auto; }.price-card--featured .button { max-width: 330px; align-self: flex-start; }
.pricing-note { margin-bottom: 100px; padding: 48px; border: 1px solid var(--line); border-radius: 23px; background: var(--cream); }.pricing-note h2 { max-width: 700px; margin: 12px 0 31px; font-size: clamp(30px,4vw,45px); letter-spacing: -.05em; }.pricing-note__grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1px; overflow: hidden; border: 1px solid var(--line); border-radius: 17px; background: var(--line); }.pricing-note__grid article { min-height: 180px; padding: 25px; background: #fff; }.pricing-note__grid strong { font-size: 13px; }.pricing-note__grid p { margin: 13px 0 0; color: var(--muted); font-size: 11px; line-height: 1.65; }.pricing-fineprint { margin: 24px 0 0; color: var(--muted); font-size: 11px; line-height: 1.6; }
@media (max-width:980px) { .pricing-path { grid-template-columns: repeat(2,minmax(0,1fr)); }.pricing-path li { border-bottom: 1px solid var(--line); }.pricing-path li:nth-child(2n) { border-right: 0; }.pricing-path li:last-child { grid-column: 1/-1; border-bottom: 0; }.price-card--featured { grid-template-columns: 1fr; gap: 31px; padding: 40px; }.pricing-note__grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width:660px) { .pricing-path { grid-template-columns: 1fr; }.pricing-path li,.pricing-path li:nth-child(2n),.pricing-path li:last-child { grid-column: auto; border-right: 0; border-bottom: 1px solid var(--line); }.pricing-path li:last-child { border-bottom: 0; }.price-card,.price-card--featured { padding: 27px; }.price-card--featured ul { grid-template-columns: 1fr; }.price-current strong { font-size: 34px; }.price-facts { align-items: stretch; flex-direction: column; }.price-facts span { width: 100%; border-radius: 12px; }.pricing-note__grid { grid-template-columns: 1fr; }.pricing-note__grid article { min-height: 0; } }
.demo-journey { display: grid; grid-template-columns: repeat(3,1fr); gap: 15px; }.demo-journey > article { min-height: 540px; display: flex; flex-direction: column; padding: 34px; border: 1px solid var(--line); border-radius: 22px; background: #fff; }.demo-journey > article > span { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 15px; color: var(--green); background: #e4eee9; }.demo-journey small { margin-top: 40px; color: var(--green); font-size: 9px; font-weight: 850; letter-spacing: .13em; }.demo-journey h2 { margin: 8px 0 10px; font-size: 28px; letter-spacing: -.045em; }.demo-journey p { color: var(--muted); font-size: 13px; line-height: 1.65; }.demo-journey .button { margin-top: auto; }.credential { margin: 18px 0; padding: 13px; border-radius: 13px; background: var(--cream); }.credential > div { display: grid; grid-template-columns: 90px 1fr; padding: 4px; font-size: 11px; }.credential dt { color: var(--muted); }.credential dd { margin: 0; font-weight: 750; }.demo-warning { margin-top: 25px; padding: 28px; border: 1px solid #e6c589; border-radius: 18px; display: flex; gap: 17px; background: #fff7e7; }.demo-warning svg { color: #a66f16; }.demo-warning h3 { margin: 0 0 7px; }.demo-warning p { margin: 0; color: #6c5a3d; font-size: 13px; line-height: 1.6; }.demo-warning code { font-size: 11px; }
.faq-list { padding-bottom: 60px; }.faq-list details { border-top: 1px solid var(--line); }.faq-list details:last-child { border-bottom: 1px solid var(--line); }.faq-list summary { min-height: 92px; display: grid; grid-template-columns: 55px 1fr 30px; align-items: center; cursor: pointer; list-style: none; font-size: 18px; font-weight: 720; }.faq-list summary::-webkit-details-marker { display: none; }.faq-list summary span { color: #9ca8a2; font: 12px Georgia,serif; }.faq-list summary i { font-size: 25px; font-style: normal; font-weight: 400; transition: transform .2s; }.faq-list details[open] summary i { transform: rotate(45deg); }.faq-list details p { max-width: 800px; margin: -7px 0 30px 55px; color: var(--muted); font-size: 14px; line-height: 1.75; }
.contact-layout { display: grid; grid-template-columns: .8fr 1.2fr; gap: 65px; padding-bottom: 70px; }.contact-details h2 { margin-top: 0; font-size: 35px; letter-spacing: -.045em; }.contact-details > p { color: var(--muted); line-height: 1.7; }.contact-details ul { display: grid; gap: 20px; margin: 40px 0 0; padding: 0; list-style: none; }.contact-details li { display: flex; align-items: center; gap: 14px; }.contact-details li > svg { width: 38px; height: 38px; padding: 10px; border-radius: 12px; color: var(--green); background: #e4eee9; }.contact-details li span { display: flex; flex-direction: column; font-size: 13px; font-weight: 700; }.contact-details li small { color: var(--muted); font-size: 9px; text-transform: uppercase; letter-spacing: .08em; }.contact-form { display: grid; gap: 18px; padding: 38px; border: 1px solid var(--line); border-radius: 23px; background: #fff; box-shadow: 0 18px 50px rgba(16,36,31,.06); }.contact-form label, .auth-form label { display: grid; gap: 8px; color: #42554e; font-size: 12px; font-weight: 720; }.contact-form input, .contact-form textarea, .auth-form input { width: 100%; border: 1px solid #cfd7d2; border-radius: 12px; padding: 13px 14px; color: var(--ink); background: #fff; outline: 0; }.contact-form input:focus, .contact-form textarea:focus, .auth-form input:focus { border-color: var(--green); box-shadow: 0 0 0 3px rgba(15,90,80,.1); }.form-error { margin: 0; padding: 10px 12px; border-radius: 10px; color: #8b2e25; background: #fbe9e6; font-size: 12px; line-height: 1.4; }.form-success { min-height: 420px; display: grid; place-content: center; justify-items: center; text-align: center; padding: 38px; border-radius: 23px; color: #fff; background: var(--green); }.form-success svg { width: 50px; height: 50px; }.form-success h2 { margin: 20px 0 8px; font-size: 33px; }.form-success p { max-width: 410px; margin: 0; color: #d1e9e1; }
.legal { max-width: 820px; padding: 40px 50px 80px; border-top: 1px solid var(--line); }.legal h2 { margin: 40px 0 10px; font-size: 24px; letter-spacing: -.035em; }.legal p { color: #53655e; font-size: 14px; line-height: 1.8; }

/* Authentication */
.auth-page { min-height: 100vh; display: grid; grid-template-columns: minmax(420px, .82fr) 1.18fr; background: #fff; }.auth-panel { width: min(100%, 510px); margin: 0 auto; display: flex; flex-direction: column; padding: 48px 55px 35px; }.auth-heading { margin-top: auto; padding-top: 55px; }.auth-heading h1 { margin: 0 0 12px; font-size: 42px; line-height: 1.03; letter-spacing: -.055em; }.auth-heading p { color: var(--muted); line-height: 1.6; font-size: 13px; }.demo-presets { display: grid; grid-template-columns: repeat(3,1fr); gap: 7px; margin: 24px 0 18px; }.demo-presets button { min-height: 66px; display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 6px; border: 1px solid #d8dfdb; border-radius: 12px; background: #fafbf9; cursor: pointer; font-size: 10px; font-weight: 750; }.demo-presets button:hover { border-color: var(--green); color: var(--green); }.demo-presets svg { width: 19px; }.auth-form { display: grid; gap: 15px; }.password-field { position: relative; }.password-field button { width: 42px; position: absolute; top: 1px; right: 1px; bottom: 1px; border: 0; background: transparent; color: #718078; cursor: pointer; }.password-field svg { width: 18px; }.auth-submit { width: 100%; margin-top: 6px; }.auth-switch { text-align: center; color: var(--muted); font-size: 12px; }.auth-switch a, .consent a { color: var(--green); font-weight: 750; }.consent { grid-template-columns: 17px 1fr!important; align-items: start; line-height: 1.5; }.consent input { width: 15px; margin-top: 2px; }.auth-back { margin-top: auto; padding-top: 25px; color: var(--muted); font-size: 11px; }.auth-story { margin: 16px; display: flex; align-items: flex-end; padding: 70px; border-radius: 25px; color: #fff; background-color: var(--ink); background-image: linear-gradient(rgba(16,36,31,.62),rgba(16,36,31,.92)),url('/images/maison-sira-capitaine.webp'); background-size: cover; background-position: center; }.auth-story > div { width: 100%; }.auth-story blockquote { max-width: 720px; margin: 28px 0 52px; font: 48px/1.1 Georgia,serif; letter-spacing: -.04em; }.story-stats { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid rgba(255,255,255,.23); }.story-stats span { display: flex; flex-direction: column; padding: 20px 20px 0 0; color: #afc1ba; font-size: 11px; }.story-stats strong { color: #fff; font-size: 19px; }

/* Guest application */
.guest-app, .tracker-app { --venue: var(--green); width: min(100%, 590px); min-height: 100vh; margin: 0 auto; padding-bottom: 110px; background: #f7f7f2; box-shadow: 0 0 70px rgba(16,36,31,.12); }
.offline-banner { position: sticky; z-index: 70; top: 0; min-height: 38px; display: flex; align-items: center; justify-content: center; gap: 7px; padding: 7px 14px; color: #fff; background: #9b493c; font-size: 10px; font-weight: 750; }.offline-banner svg { width: 15px; }
.guest-header { min-height: 76px; display: flex; align-items: center; justify-content: space-between; padding: 11px 16px; background: #fff; }.guest-brand { display: flex; align-items: center; gap: 10px; }.guest-brand > span, .tracker-header > div > span { width: 39px; height: 39px; display: grid; place-items: center; border-radius: 12px; color: #fff; background: var(--venue); font-size: 11px; font-weight: 850; }.guest-brand h1 { margin: 0; font-size: 14px; letter-spacing: -.025em; }.guest-brand p { margin: 3px 0 0; display: flex; align-items: center; gap: 4px; color: #68766f; font-size: 9px; }.guest-brand p i { width: 6px; height: 6px; border-radius: 50%; background: #33a97f; }.language-button { min-height: 35px; display: flex; align-items: center; gap: 5px; padding: 0 10px; border: 1px solid #d9dfdc; border-radius: 10px; background: #fff; font-size: 9px; font-weight: 850; }.language-button svg { width: 14px; }
.guest-hero { height: 235px; display: flex; align-items: flex-end; padding: 22px 19px; color: #fff; background-color: #183a31; background-size: cover; background-position: center; }.guest-hero span { font-size: 8px; font-weight: 850; letter-spacing: .12em; }.guest-hero h2 { max-width: 350px; margin: 7px 0 0; font: 29px/1.02 Georgia,serif; letter-spacing: -.035em; }
.guest-controls { position: sticky; z-index: 20; top: 0; padding: 13px 14px 0; border-bottom: 1px solid #e2e5df; background: rgba(247,247,242,.96); backdrop-filter: blur(12px); }.guest-search { height: 43px; display: flex; align-items: center; gap: 9px; padding: 0 12px; border: 1px solid #d8dfdb; border-radius: 12px; background: #fff; }.guest-search svg { width: 17px; color: #708078; }.guest-search input { min-width: 0; flex: 1; border: 0; outline: 0; font-size: 12px; }.category-tabs { display: flex; gap: 4px; overflow: auto; margin-top: 10px; scrollbar-width: none; }.category-tabs::-webkit-scrollbar { display: none; }.category-tabs button { min-height: 38px; white-space: nowrap; padding: 0 11px; border: 0; border-bottom: 2px solid transparent; color: #6b7972; background: transparent; font-size: 10px; font-weight: 750; }.category-tabs button[aria-selected="true"] { border-color: var(--venue); color: var(--venue); }
.guest-section { padding: 25px 14px 10px; }.guest-section-title { display: flex; justify-content: space-between; align-items: flex-end; margin-bottom: 15px; }.guest-section-title > div > span { color: var(--venue); font-size: 8px; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }.guest-section-title h2 { margin: 5px 0 0; font-size: 20px; letter-spacing: -.035em; }.guest-section-title > small { color: #78857f; font-size: 9px; }
.product-list { display: grid; gap: 9px; }.product-card { min-height: 150px; position: relative; display: grid; grid-template-columns: 1fr 135px; gap: 13px; padding: 15px; border: 1px solid #e0e3de; border-radius: 17px; background: #fff; cursor: pointer; transition: border .18s, transform .18s; }.product-card:hover { border-color: #b9c8c2; transform: translateY(-1px); }.product-card:focus-visible { outline: 3px solid color-mix(in srgb, var(--venue) 35%, white); outline-offset: 2px; }.product-card--off { opacity: .61; cursor: not-allowed; }.product-info { display: flex; align-items: flex-start; flex-direction: column; }.product-badges { min-height: 18px; display: flex; gap: 5px; }.product-badges span { padding: 4px 7px; border-radius: 99px; color: #8a4a2f; background: #fae8df; font-size: 7px; font-weight: 850; text-transform: uppercase; }.product-info h3 { margin: 8px 0 5px; font-size: 15px; letter-spacing: -.025em; }.product-info > p { display: -webkit-box; overflow: hidden; margin: 0 0 6px; color: #6b7772; font-size: 10px; line-height: 1.48; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }.diet-row { display: flex; gap: 5px; margin-bottom: auto; }.diet-row span { color: #74817b; font-size: 7px; text-transform: uppercase; }.product-info > strong { margin-top: 8px; font-size: 12px; }.product-image { position: relative; height: 118px; overflow: hidden; border-radius: 13px; }.product-image img { width: 100%; height: 100%; object-fit: cover; }.product-add-icon, .product-add { width: 31px; height: 31px; position: absolute; right: 7px; bottom: 7px; display: grid; place-items: center; border: 2px solid #fff; border-radius: 10px; color: #fff; background: var(--venue); box-shadow: 0 4px 12px rgba(0,0,0,.15); }.product-add-icon svg, .product-add svg { width: 16px; }.product-add { right: 14px; bottom: 14px; }.soldout { position: absolute; right: 22px; top: 21px; padding: 5px 8px; border-radius: 7px; color: #fff; background: #6f7774; font-size: 8px; font-weight: 800; }
.guest-service-row { display: grid; grid-template-columns: repeat(3,1fr); gap: 7px; padding: 10px 14px 20px; }.guest-service-row button { min-height: 70px; display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 7px; border: 1px solid #dce1dd; border-radius: 14px; color: #51615b; background: #fff; font-size: 8px; font-weight: 750; }.guest-service-row svg { width: 19px; color: var(--venue); }
.floating-cart { height: 58px; position: fixed; z-index: 50; right: max(15px, calc((100vw - 560px)/2)); bottom: 14px; left: max(15px, calc((100vw - 560px)/2)); display: grid; grid-template-columns: 72px 1fr 115px; align-items: center; padding: 0 9px; border: 0; border-radius: 16px; color: #fff; background: var(--ink); box-shadow: 0 15px 38px rgba(16,36,31,.3); font-size: 10px; }.floating-cart > span:first-child { display: flex; align-items: center; gap: 6px; }.floating-cart svg { width: 17px; }.floating-cart strong { font-size: 12px; }.floating-cart > span:last-child { text-align: right; font-weight: 800; }
.modal-backdrop, .drawer-backdrop { position: fixed; z-index: 100; inset: 0; display: flex; align-items: flex-end; justify-content: center; background: rgba(7,18,15,.58); backdrop-filter: blur(3px); }.product-modal, .cart-drawer, .bill-drawer { width: min(100%, 590px); max-height: 94vh; overflow: auto; position: relative; border-radius: 24px 24px 0 0; background: #fff; box-shadow: 0 -20px 70px rgba(0,0,0,.22); }.modal-close { width: 38px; height: 38px; position: absolute; z-index: 3; right: 13px; top: 13px; display: grid; place-items: center; border: 0; border-radius: 12px; color: #fff; background: rgba(10,20,17,.7); }.modal-image { width: 100%; height: 265px; object-fit: cover; }.modal-content { padding: 22px 18px 110px; }.modal-kicker { color: var(--venue); font-size: 8px; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }.modal-content > h2 { margin: 7px 0; font-size: 25px; letter-spacing: -.045em; }.modal-content > p { margin: 0; color: #68766f; font-size: 11px; line-height: 1.55; }.modal-price { display: block; margin-top: 12px; font-size: 14px; }.modifier-group { margin: 23px 0 0; padding: 0; border: 0; }.modifier-group legend { width: 100%; display: flex; align-items: center; justify-content: space-between; padding: 0 0 8px; font-size: 12px; font-weight: 800; }.modifier-group legend span { color: #78837e; font-size: 8px; font-weight: 650; }.modifier-group label { min-height: 48px; display: flex; align-items: center; gap: 9px; border-top: 1px solid #eceeea; font-size: 11px; cursor: pointer; }.modifier-group input { position: absolute; opacity: 0; }.fake-check { width: 19px; height: 19px; display: grid; place-items: center; border: 1px solid #bec8c2; border-radius: 6px; }.fake-check svg { width: 13px; color: #fff; background: var(--venue); border-radius: 5px; }.modifier-group label b { flex: 1; }.modifier-group label em { color: #62716a; font-size: 10px; font-style: normal; }.product-note { display: grid; gap: 7px; margin-top: 20px; color: #43544e; font-size: 10px; font-weight: 750; }.product-note textarea, .cart-note textarea, .review-box textarea { resize: vertical; border: 1px solid #d6ddd9; border-radius: 11px; padding: 11px; font-size: 11px; outline: 0; }.allergen-note { display: flex; gap: 7px; padding: 9px; border-radius: 9px; color: #6e5945!important; background: #faf2e7; }.allergen-note svg { width: 15px; flex: none; }.modal-action { min-height: 80px; position: sticky; z-index: 4; bottom: 0; display: grid; grid-template-columns: 115px 1fr; gap: 8px; padding: 11px 14px; border-top: 1px solid #e2e6e2; background: #fff; }.quantity { min-height: 48px; display: grid; grid-template-columns: 1fr 35px 1fr; place-items: center; border: 1px solid #d7ded9; border-radius: 13px; }.quantity button { width: 100%; height: 100%; border: 0; background: transparent; }.quantity svg { width: 15px; }
.cart-drawer > header, .bill-drawer > header { min-height: 83px; display: flex; justify-content: space-between; align-items: center; padding: 17px 18px; border-bottom: 1px solid #e3e7e3; }.cart-drawer header > div, .bill-drawer header > div { display: flex; flex-direction: column; }.cart-drawer header span, .bill-drawer header span { color: var(--venue); font-size: 8px; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }.cart-drawer h2, .bill-drawer h2 { margin: 3px 0 0; font-size: 20px; }.cart-drawer header button, .bill-drawer header button { width: 36px; height: 36px; display: grid; place-items: center; border: 1px solid #d9dfdc; border-radius: 11px; background: #fff; }.cart-lines { padding: 5px 18px; }.cart-lines article { min-height: 100px; display: flex; align-items: center; justify-content: space-between; gap: 16px; border-bottom: 1px solid #ecefeb; }.cart-lines h3 { margin: 0 0 4px; font-size: 13px; }.cart-lines p { margin: 0; color: #68766f; font-size: 9px; }.cart-lines small { display: block; margin-top: 3px; color: #9b5d45; font-size: 8px; }.cart-lines strong { display: block; margin-top: 8px; font-size: 10px; }.quantity--small { min-height: 34px; width: 95px; grid-template-columns: 1fr 28px 1fr; border-radius: 10px; font-size: 10px; }.cart-note { display: grid; gap: 6px; padding: 15px 18px; color: #46574f; font-size: 10px; font-weight: 750; }.cart-summary { display: grid; gap: 5px; padding: 15px 18px; border-top: 1px solid #e7eae7; }.cart-summary span { display: flex; justify-content: space-between; font-size: 12px; }.cart-summary small { color: #78847f; font-size: 8px; }.cart-drawer > .form-error { margin: 0 18px 10px; }.cart-checkout { width: calc(100% - 36px); margin: 6px 18px 18px; justify-content: space-between; }.guest-toast { position: fixed; z-index: 150; top: 18px; left: 50%; display: flex; align-items: center; gap: 8px; padding: 12px 16px; border-radius: 12px; color: #fff; background: var(--ink); box-shadow: var(--shadow); font-size: 11px; font-weight: 750; transform: translateX(-50%); }.guest-toast svg { width: 17px; color: #78c7ac; }
.guest-empty { min-height: 220px; display: grid; place-content: center; justify-items: center; text-align: center; color: #7b8982; }.guest-empty svg { width: 27px; }.guest-empty h3 { margin: 12px 0 5px; color: var(--ink); }.guest-empty p { margin: 0; font-size: 10px; }.guest-skeleton { padding: 17px; }.guest-skeleton header { display: flex; gap: 10px; }.guest-skeleton header i { width: 42px; height: 42px; border-radius: 12px; background: #e2e6e2; }.guest-skeleton header span { width: 160px; height: 14px; margin-top: 8px; border-radius: 7px; background: #e2e6e2; }.guest-skeleton > section { height: 250px; margin: 20px -17px; background: #e3e6e1; }.guest-skeleton > div { display: grid; gap: 9px; }.guest-skeleton > div i { height: 140px; border-radius: 17px; background: #e6e9e5; animation: pulse 1.4s ease infinite; }@keyframes pulse { 50% { opacity: .5; } }.guest-error { min-height: 100vh; display: grid; place-content: center; justify-items: center; text-align: center; padding: 30px; background: var(--cream); }.guest-error > svg { width: 44px; height: 44px; color: var(--red); }.guest-error h1 { margin: 18px 0 7px; }.guest-error p { max-width: 380px; color: var(--muted); }.guest-error button { display: flex; align-items: center; gap: 8px; border: 0; border-radius: 12px; padding: 12px 16px; color: #fff; background: var(--ink); }

/* Order tracking and receipt */
.tracker-header { min-height: 72px; display: flex; align-items: center; justify-content: space-between; padding: 11px 16px; background: #fff; }.tracker-header > div { display: flex; align-items: center; gap: 9px; }.tracker-header > div div { display: flex; flex-direction: column; }.tracker-header strong { font-size: 12px; }.tracker-header small { color: #75817b; font-size: 8px; }.tracker-header > button { min-height: 35px; display: flex; align-items: center; gap: 6px; border: 1px solid #dbe1dd; border-radius: 10px; background: #fff; font-size: 9px; font-weight: 750; }.tracker-header > button svg { width: 14px; }.tracker-main { padding: 30px 15px; }.order-confirm { text-align: center; }.confirm-icon { width: 54px; height: 54px; display: grid; place-items: center; margin: auto; border-radius: 50%; color: #fff; background: var(--venue); box-shadow: 0 0 0 9px color-mix(in srgb,var(--venue) 13%,transparent); }.confirm-icon svg { width: 25px; }.order-confirm > small { display: block; margin-top: 23px; color: var(--venue); font-size: 8px; font-weight: 850; letter-spacing: .12em; }.order-confirm h1 { margin: 7px 0; font: 30px/1.1 Georgia,serif; }.order-confirm p { margin: 0; color: #6b7972; font-size: 11px; }.status-timeline { margin: 30px 0 20px; padding: 20px 18px; border: 1px solid #dfe4e0; border-radius: 17px; background: #fff; }.status-timeline > div { min-height: 57px; position: relative; display: grid; grid-template-columns: 38px 1fr; align-items: start; }.status-timeline > div:not(:last-child)::after { content: ""; width: 2px; position: absolute; top: 31px; bottom: -3px; left: 14px; background: #dce2de; }.status-timeline > div.done:not(:last-child)::after { background: var(--venue); }.status-timeline > div > span { width: 29px; height: 29px; z-index: 1; display: grid; place-items: center; border: 1px solid #d4dcd7; border-radius: 50%; color: #8a9790; background: #fff; font-size: 9px; font-weight: 800; }.status-timeline > div.done > span { color: #fff; border-color: var(--venue); background: var(--venue); }.status-timeline svg { width: 14px; }.status-timeline > div div { display: flex; flex-direction: column; padding-top: 5px; }.status-timeline strong { font-size: 11px; }.status-timeline small { margin-top: 2px; color: var(--venue); font-size: 8px; }.order-recap { border: 1px solid #dfe4e0; border-radius: 17px; padding: 17px; background: #fff; }.order-recap > header { display: flex; justify-content: space-between; align-items: center; padding-bottom: 12px; border-bottom: 1px solid #ecefeb; }.order-recap h2 { margin: 0; font-size: 14px; }.order-recap header span { font-size: 11px; font-weight: 800; }.recap-line { min-height: 61px; display: grid; grid-template-columns: 29px 1fr auto; align-items: center; gap: 8px; border-bottom: 1px solid #ecefeb; }.recap-line > span { width: 24px; height: 24px; display: grid; place-items: center; border-radius: 7px; color: var(--venue); background: color-mix(in srgb,var(--venue) 10%,white); font-size: 9px; font-weight: 850; }.recap-line div { display: flex; flex-direction: column; }.recap-line strong, .recap-line b { font-size: 10px; }.recap-line small { color: #78857e; font-size: 8px; }.tracker-actions { display: grid; gap: 8px; margin-top: 12px; }.quick-service { display: grid; grid-template-columns: repeat(3,1fr); gap: 7px; margin-top: 17px; }.quick-service button { min-height: 58px; display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 5px; border: 1px solid #dce1dd; border-radius: 12px; background: #fff; font-size: 8px; font-weight: 750; }.quick-service svg { width: 17px; color: var(--venue); }.review-box { margin-top: 17px; padding: 24px; border-radius: 17px; text-align: center; color: #fff; background: var(--ink); }.review-box > span { color: #88cbb4; font-size: 8px; font-weight: 850; letter-spacing: .12em; }.review-box h2 { margin: 7px 0 13px; font-size: 19px; }.stars { display: flex; justify-content: center; gap: 5px; }.stars button { border: 0; color: #f2b94e; background: transparent; }.stars svg { width: 25px; }.review-box textarea { width: 100%; margin: 13px 0 9px; color: var(--ink); background: #fff; }.review-box--done svg { width: 35px; color: #7ed0b4; }.review-box--done p { color: #aebfb9; font-size: 10px; }
.receipt-brand { display: flex; align-items: center; flex-direction: column; padding: 25px; text-align: center; }.receipt-brand span { color: var(--venue); font-size: 8px; letter-spacing: .15em; }.receipt-brand strong { margin: 6px 0 3px; font-size: 19px; }.receipt-brand small { color: #75827c; font-size: 8px; }.bill-lines, .bill-totals { padding: 0 20px; }.bill-lines > div, .bill-totals > span { min-height: 39px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px dashed #d8ded9; font-size: 10px; }.bill-totals { margin-top: 12px; }.bill-totals .grand-total { min-height: 53px; font-size: 14px; border-bottom-style: solid; }.bill-totals .remaining { color: var(--venue); font-size: 12px; }.demo-pay { margin: 18px 20px; padding: 14px; border: 1px solid #edc77e; border-radius: 12px; background: #fff7e5; }.demo-pay strong { color: #8d5e12; font-size: 10px; text-transform: uppercase; }.demo-pay p { color: #756142; font-size: 9px; line-height: 1.5; }.demo-pay .button { width: 100%; min-height: 43px; font-size: 10px; }.manual-pay-note { display: flex; gap: 10px; margin: 18px 20px; padding: 13px; border-radius: 12px; background: #edf3f0; }.manual-pay-note svg { width: 20px; color: var(--venue); }.manual-pay-note p { margin: 0; color: #52635c; font-size: 9px; line-height: 1.5; }.bill-message { margin: 10px 20px; padding: 10px; border-radius: 9px; color: var(--green); background: #e5f2ed; font-size: 9px; }.receipt-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; padding: 15px 20px 24px; }.receipt-actions button { min-height: 43px; display: flex; align-items: center; justify-content: center; gap: 7px; border: 1px solid #d6deda; border-radius: 11px; background: #fff; font-size: 9px; font-weight: 750; }.receipt-actions svg { width: 15px; }

@media (max-width: 980px) {
  .header-inner nav { display: none; }.hero-grid { grid-template-columns: 1fr; padding-top: 80px; padding-bottom: 75px; }.hero-copy { text-align: center; }.hero-copy > p { margin-inline: auto; }.hero-actions,.trust-row { justify-content: center; }.hero-product { min-height: 570px; }.flow-grid { grid-template-columns: 1fr 1fr; }.flow-card:nth-child(2) { border-right: 0; }.flow-card:nth-child(-n+2) { border-bottom: 1px solid var(--line); }.split-feature { grid-template-columns: 1fr; }.split-feature > div:first-child { max-width: 680px; }.benefit-grid { grid-template-columns: 1fr 1fr; }.benefit-main { grid-column: 1/-1; }.footer-grid { grid-template-columns: 1.5fr 1fr 1fr; }.footer-grid > div:last-child { grid-column: 1/-1; }.tech-trust { grid-template-columns: 1fr 1fr; }.tech-trust > div:nth-child(2) { border-right: 0; }.tech-trust > div:nth-child(-n+2) { border-bottom: 1px solid var(--line); }.pricing-grid,.demo-journey { grid-template-columns: 1fr; }.price-card { min-height: 0; }.price-card--featured { transform: none; }.price-card ul { min-height: 0; }.contact-layout { grid-template-columns: 1fr; }.auth-page { grid-template-columns: 1fr; }.auth-panel { min-height: 100vh; }.auth-story { display: none; }
}
@media (max-width: 660px) {
  .shell { width: min(100% - 28px,1180px); }.header-inner { min-height: 62px; }.header-actions { display: none; }.mobile-login { display: inline-block; }.hero { min-height: 0; }.hero-grid { min-height: 0; padding-top: 62px; gap: 28px; }.hero-copy h1 { font-size: 48px; }.hero-copy > p { font-size: 14px; }.hero-actions { display: grid; }.trust-row { gap: 8px 14px; }.hero-product { min-height: 520px; transform: scale(.9); }.hero-console-card { right: -35px; }.hero-time { left: -30px; }.proof-strip .shell { padding: 22px 0; flex-direction: column; align-items: flex-start; }.proof-strip div div { flex-wrap: wrap; gap: 11px; font-size: 13px; }.section { padding-top: 75px; padding-bottom: 75px; }.section-heading h2,.split-feature h2,.benefit-main h2 { font-size: 38px; }.flow-grid { grid-template-columns: 1fr; }.flow-card { min-height: 210px; border-right: 0; border-bottom: 1px solid var(--line)!important; }.flow-card:last-child { border-bottom: 0!important; }.flow-card h3 { margin-top: 35px; }.split-feature { gap: 45px; }.ops-body { height: 330px; }.ops-body aside { display: none; }.ops-board { padding: 20px 12px; }.kanban-mini { gap: 5px; }.kanban-mini article { padding: 8px; }.benefit-grid { grid-template-columns: 1fr; }.benefit-main { padding: 28px; }.benefit-side { min-height: 270px; }.cta-band { flex-direction: column; align-items: flex-start; padding: 36px 27px; }.cta-band > div:last-child { width: 100%; align-items: stretch; text-align: center; }.footer-grid { grid-template-columns: 1fr 1fr; gap: 40px 25px; }.footer-grid > div:first-child,.footer-grid > div:last-child { grid-column: 1/-1; }.footer-bottom { gap: 10px; flex-direction: column; }.page-hero { padding-top: 75px; }.page-hero h1 { font-size: 48px; }.page-hero > p { font-size: 14px; }.feature-row { grid-template-columns: 55px 1fr; }.feature-row ul { grid-column: 2; }.tech-trust { grid-template-columns: 1fr; }.tech-trust > div { border-right: 0; border-bottom: 1px solid var(--line); }.page-cta { flex-direction: column; align-items: flex-start; }.pricing-note { padding: 28px; }.demo-journey > article { min-height: 480px; padding: 27px; }.faq-list summary { min-height: 80px; grid-template-columns: 35px 1fr 22px; font-size: 15px; }.faq-list details p { margin-left: 35px; }.contact-form { padding: 24px; }.legal { padding: 20px 15px 60px; }.auth-panel { padding: 32px 24px 25px; }.auth-heading h1 { font-size: 37px; }.demo-presets { grid-template-columns: 1fr 1fr 1fr; }.guest-app,.tracker-app { box-shadow: none; }.product-card { grid-template-columns: 1fr 118px; }.floating-cart { grid-template-columns: 55px 1fr 103px; right: 14px; left: 14px; }
}

@media print {
  .bill-drawer { max-height: none; border-radius: 0; }.bill-drawer > header button,.demo-pay,.manual-pay-note,.receipt-actions { display: none!important; }.drawer-backdrop { position: static; background: #fff; }.tracker-app > :not(.drawer-backdrop) { display: none; }
}
