/* Site theme only. Product demonstrations keep their independently selected menu theme. */
:root { color-scheme:dark; --site-bg:#0f1217; --site-text:#fcfcfc; --site-muted:#a4a7ae; --site-border:#2a313c; }
:root[data-theme="light"] { color-scheme:light; --site-bg:#fff; --site-text:#202126; --site-muted:#626872; --site-border:#dfe2e9; --ink:#202126; --muted:#626872; --line:#dfe2e9; --paper:#f7f8fa; }
.theme-toggle { position:fixed; z-index:60; right:20px; bottom:20px; width:48px; height:48px; display:grid; place-items:center; border:1px solid #ffffff35; border-radius:50%; color:#202126; background:#fff; box-shadow:0 5px 20px #0002; transition:transform .2s; }
.theme-toggle:hover { transform:translateY(-3px); }
.theme-toggle svg { width:23px; height:23px; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.theme-toggle .theme-moon { display:none; }
[data-theme="light"] .theme-toggle { background:#202126; border-color:#202126; color:#fff; }
[data-theme="light"] .theme-toggle .theme-moon { display:block; }
[data-theme="light"] .theme-toggle .theme-sun { display:none; }
.journey-step .step-no { margin-bottom:27px; }
.journey-icon { width:58px; height:58px; display:block; margin:0 0 23px; color:#e1d7f4; }
.journey-step { background:#161b23; }
.faq-with-visual { grid-template-columns:1fr 1fr; gap:70px; align-items:center; }
.faq-with-visual .faq-intro { max-width:470px; margin-bottom:20px; }
.faq-with-visual .faq-list { margin-top:42px; }
.faq-visual { position:relative; min-width:0; margin:0; isolation:isolate; align-self:center; }
.faq-visual-backdrop { position:absolute; inset:20% 0 6% 22%; background:#c6f56f; border-radius:28px; z-index:-1; }
.faq-visual img { width:100%; height:auto; position:relative; }
.faq-help-card { position:absolute; top:26%; left:0; width:215px; border-radius:20px; padding:25px; transform:rotate(-9deg); background:#202126; color:#fff; box-shadow:0 15px 35px #0002; }
.faq-help-symbol { display:grid; place-items:center; width:37px; height:37px; border:1px solid #ad8bf4; color:#c6f56f; border-radius:50%; font-size:24px; margin-bottom:17px; }
.faq-help-card strong { display:block; font-size:23px; line-height:1.22; font-weight:400; letter-spacing:-.02em; }
.faq-help-label { display:block; margin-top:20px; font-size:11px; color:#202126; background:#f9eb57; padding:10px 13px; border-radius:25px; }
.faq-visual figcaption { text-align:right; color:var(--site-muted); font-size:10px; margin-top:12px; }

/* Light surfaces and typography. The artwork inside dark preview cards stays dark. */
html[data-theme="light"] body { background:var(--site-bg); color:var(--site-text); }
html[data-theme="light"] :is(.site-header,.hero.hero-centered,.inner-hero,.journey-section,.operations-section,.values-section,.demo-stage) { background:#f7f8fa; color:#202126; }
html[data-theme="light"] :is(.product-section,.gallery-home,.business-section) { background:#fff; }
html[data-theme="light"] .header-inner { background:#fff; border-color:#e1e4eb; }
html[data-theme="light"] :is(nav > a,.nav-group summary,.login-link) { color:#606570; }
html[data-theme="light"] .nav-group[open] summary { color:#7040cc; }
html[data-theme="light"] .nav-actions .button { background:#202126; color:#fff; border-color:#202126; }
html[data-theme="light"] .nav-actions .button:hover { background:#6532c8; border-color:#6532c8; }
html[data-theme="light"] .nav-dropdown { background:#fff; color:#202126; border-color:#e0e3eb; }
html[data-theme="light"] .nav-dropdown a:hover { background:#f3f0f9; }
html[data-theme="light"] .nav-dropdown small { color:#626872; }
html[data-theme="light"] .nav-product-icon { background:#f5f0ff; color:#7040cc; border-color:#e7dcfa; }
html[data-theme="light"] .nav-arrow { color:#7040cc; }
html[data-theme="light"] .nav-dropdown .mega-promo { background:#eee5ff; color:#30233f; }
html[data-theme="light"] .mega-promo > span:last-child { color:#674994; }
html[data-theme="light"] .nav-dropdown .dropdown-last { color:#7040cc; }
html[data-theme="light"] .hero.hero-centered h1 em { color:#202126; }
html[data-theme="light"] .hero.hero-centered .hero-copy > p { color:#626872; }
html[data-theme="light"] .hero-grid-decoration { background-image:linear-gradient(#d2d6e070 1px,transparent 1px),linear-gradient(90deg,#d2d6e070 1px,transparent 1px); }
html[data-theme="light"] .pill-label { color:#334622; background:#eafbcb; }
html[data-theme="light"] .eyebrow { color:#626872; }
html[data-theme="light"] .button-outline { color:#202126; border-color:#d8dce5; }
html[data-theme="light"] .button-outline:hover { background:#ece7f6; border-color:#baa3e0; }
html[data-theme="light"] .text-link { color:#7040cc; }
html[data-theme="light"] .text-link:hover { color:#482884; }
html[data-theme="light"] :is(.section-heading.centered-heading > p,.feature-copy p,.product-overline,.journey-step p,.faq-intro,.faq-list p,.cta-section p,.page-intro > p,.inner-hero p,.feature-grid p,.product-card p,.about-copy p,.breadcrumb) { color:#626872; }
html[data-theme="light"] :is(.feature-showcase-card,.journey-step,.business-grid > a,.product-card,.resource-card,.request-card,.detail-note,.pricing-note,.cta-section) { background:#f7f8fa; border-color:#e0e3eb; }
html[data-theme="light"] .journey-step { background:#fff; }
html[data-theme="light"] .journey-icon { color:#303139; }
html[data-theme="light"] .step-no { color:#626872; border-color:#d8dce5; }
html[data-theme="light"] .feature-showcase-card.restaurant-card { background:#c6f56f; color:#161a12; }
html[data-theme="light"] .restaurant-card .product-overline { color:#495d2a; }
html[data-theme="light"] .restaurant-card .feature-copy p { color:#536933; }
html[data-theme="light"] .feature-discover i { color:#606570; }
html[data-theme="light"] .section-end > span { color:#626872; }
html[data-theme="light"] .theme-preview { background:#edeaf3; border-color:#e0e3eb; }
html[data-theme="light"] .theme-card:nth-child(2) .theme-preview { background:#f1eee6; }
html[data-theme="light"] .theme-card:nth-child(3) .theme-preview { background:#e7efea; }
html[data-theme="light"] .theme-card:nth-child(4) .theme-preview { background:#ede6f7; }
html[data-theme="light"] .arrow-circle { border-color:#d8dce5; }
html[data-theme="light"] .real-screen { background:#eceef3; border-color:#d8dce5; }
html[data-theme="light"] .real-screen figcaption { color:#626872; }
html[data-theme="light"] .check-list li:before { color:#587334; }
html[data-theme="light"] .business-grid > a:nth-child(2) { background:#f4f0f9; }
html[data-theme="light"] .business-grid > a:nth-child(3) { background:#ecf3ee; }
html[data-theme="light"] .business-grid > a:hover { background:#e9e5f2; }
html[data-theme="light"] .business-grid > a > span { color:#626872; }
html[data-theme="light"] .business-grid > a > b { color:#343740; }
html[data-theme="light"] .faq-list details { border-color:#dfe2e9; }
html[data-theme="light"] .faq-list details[open] summary { color:#7040cc; }
html[data-theme="light"] .site-footer { background:#f7f8fa; color:#202126; }
html[data-theme="light"] :is(.footer-grid > div:not(.footer-brand) > a,.footer-brand p,.footer-note,.footer-bottom) { color:#626872; }
html[data-theme="light"] .footer-bottom { border-color:#dfe2e9; }
html[data-theme="light"] .footer-grid a:hover { color:#7040cc; }
html[data-theme="light"] .site-footer{--footer-bg:#f5f6f8;--footer-panel:#fff;--footer-line:#dce1e6;--footer-text:#1d2228;--footer-muted:#626c75;--footer-accent:#7040cc;background:var(--footer-bg);color:var(--footer-text)}html[data-theme="light"] .site-footer:before{background:#7040cc0d}html[data-theme="light"] .footer-start{box-shadow:0 18px 55px #2432470b}html[data-theme="light"] .footer-start a{background:#1c222a;color:#fff}html[data-theme="light"] .footer-nav-column a:hover{color:#7040cc}
html[data-theme="light"] .inner-hero .eyebrow { color:#7040cc; }
html[data-theme="light"] :is(.feature-grid article,.feature-link) { border-color:#dfe2e9; }
html[data-theme="light"] .product-card .eyebrow { color:#7040cc; }
html[data-theme="light"] .detail-note > span { color:#7040cc; }
html[data-theme="light"] .form-preview-note { color:#674994; }
html[data-theme="light"] :is(.request-card input,.request-card select) { background:#fff; color:#626872; border-color:#d8dce5; }
html[data-theme="light"] .demo-theme-tabs .active { background:#eee5ff; color:#674994; }
html[data-theme="light"] .demo-badge { border-color:#d8dce5; color:#626872; }
html[data-theme="light"] .demo-stage-caption { color:#626872; background:#f7f8fa; }
/* These dialogs belong to the marketing shell, not the themed menu itself. */
html[data-theme="light"] .demo-dialog { background:#fff; color:#202126; border-color:#d8dce5; }
html[data-theme="light"] :is(.dialog-heading button,.cart-row button) { background:#f3f0f9; color:#202126; border-color:#d8dce5; }
html[data-theme="light"] .member-gift { background:#eee5ff; color:#674994; }
html[data-theme="light"] .sample-order { border-color:#d8dce5; }

/* Homepage product sections follow the site theme, including their HTML previews. */
html[data-theme="light"] .home-page :is(.stock-section,.core-section,.branch-section) { background:var(--site-bg); color:var(--site-text); }
html[data-theme="light"] .home-page .core-section { background:var(--paper); }
html[data-theme="light"] .home-page :is(.stock-copy h2,.core-copy h2,.branch-heading h2,.stock-list strong,.core-list strong,.branch-benefits h3,.core-visual-placeholder>strong,.core-profile b,.core-metric-grid b,.branch-board-top,.branch-summary strong,.branch-table b,.branch-table strong) { color:var(--site-text); }
html[data-theme="light"] .home-page :is(.stock-copy>p,.core-copy>p,.branch-intro p,.stock-list p,.core-list p,.branch-benefits p,.stock-visual figcaption,.core-visual figcaption,.branch-visual figcaption,.core-profile small,.core-metric-grid small,.branch-board-top>span,.branch-summary span,.branch-summary small,.branch-table header,.branch-table>div) { color:var(--site-muted); }
html[data-theme="light"] .home-page :is(.stock-list,.stock-list li,.core-list li,.core-list li>span,.branch-benefits,.branch-benefits article,.stock-visual-surface,.core-visual-surface,.core-profile,.core-metric-grid>span,.branch-board,.branch-board-top>span,.branch-summary>div,.branch-table,.branch-table>div) { border-color:var(--site-border); }
html[data-theme="light"] .home-page :is(.stock-list li>span,.core-list li>span,.branch-benefits article>span,.core-visual-kicker) { color:#506e26; }
html[data-theme="light"] .home-page :is(.stock-visual-surface,.core-visual-surface,.branch-board) { background:#fff; box-shadow:0 24px 70px #2432470d; }
html[data-theme="light"] .home-page .core-visual-placeholder { background:radial-gradient(circle at 83% 13%,#c6f56f45,transparent 35%),linear-gradient(145deg,#f5f8ef,#edf1f6); }
html[data-theme="light"] .home-page .core-visual-placeholder:before { border-color:#9bb87355; }
html[data-theme="light"] .home-page :is(.core-profile,.core-metric-grid>span) { background:#ffffffd9; }
html[data-theme="light"] .home-page :is(.core-profile em,.branch-table em,.branch-table i) { background:#eafbcb; color:#3f5e1e; }
html[data-theme="light"] .home-page .core-visual-line i { background:#c5cedb; }
html[data-theme="light"] .home-page .core-visual-line i:last-child { background:#709535; }
html[data-theme="light"] .home-page :is(.branch-summary>div,.branch-table) { background:var(--paper); }
html[data-theme="light"] .home-page .branch-board-top i { background:#608529; box-shadow:0 0 0 6px #60852914; }
html[data-theme="light"] .home-page .branch-summary .is-positive { color:#42691d; }
html[data-theme="light"] .home-page .branch-summary .is-warning { color:#916000; }

/* Five product pages and editorial pages */
html[data-theme="light"] .product-intro h1 em { color:#7040cc; }
html[data-theme="light"] :is(.journey-ribbon b,.numbered-features b,.hotspot-features article > span,.stock-tiers article > span,.branch-editorial article > span) { color:#7040cc; }
html[data-theme="light"] .core-bento article { background:#f7f8fa; }
html[data-theme="light"] .core-bento .bento-lime { background:#c6f56f; }
html[data-theme="light"] .bento-lime .eyebrow { color:#4b612e; }
html[data-theme="light"] .feedback-chips span { border-color:#d8dce5; color:#626872; }
html[data-theme="light"] :is(.kitchen-showcase,.product-bridge,.stock-ledger,.recipe-visual,.branch-network,.about-product-image,.featured-post,.article-takeaway) { background:#f1f3f6; border-color:#e0e3eb; }
html[data-theme="light"] :is(.board-heading small,.kitchen-board h2 span,.stock-ledger th,.ledger-bottom,.recipe-visual small,.post-meta,.author-line) { color:#626872; }
html[data-theme="light"] .board-heading i { background:#5b7a31; }
html[data-theme="light"] .hotspot-hero { background:radial-gradient(ellipse at 50% 90%,#e8dafc 0%,#f7f8fa 65%); }
html[data-theme="light"] .signal-ring { border-color:#bca4da50; }
html[data-theme="light"] .signal-tag { color:#56436d; background:#f6f0ff; border-color:#d6c7ea; }
html[data-theme="light"] .stock-ledger td { border-color:#dfe2e9; }
html[data-theme="light"] .recipe-ingredient { border-color:#d8dce5; }
html[data-theme="light"] .recipe-ingredient strong { color:#587334; }
html[data-theme="light"] .branch-locations article { background:#fff; }
html[data-theme="light"] .branch-building { color:#587334; }
html[data-theme="light"] :is(.branch-locations small,.branch-locations p) { color:#626872; }
html[data-theme="light"] .branch-status { color:#7040cc; }
html[data-theme="light"] .branch-report { background:#f1ebfa; }
html[data-theme="light"] .comparison-bars small { color:#705b8e; }
html[data-theme="light"] .about-manifesto p { color:#626872; }
html[data-theme="light"] .about-manifesto em { color:#7040cc; }
html[data-theme="light"] .values-grid article > span { color:#587334; }
html[data-theme="light"] .filter-pills button { border-color:#d8dce5; color:#626872; }
html[data-theme="light"] .filter-pills button[aria-pressed="true"] { background:#c6f56f; color:#172013; border-color:#c6f56f; }
html[data-theme="light"] :is(.filter-count,.sample-notice,.customer-card p,.featured-post p,.blog-card p,.article-heading > p,.article-body p,.article-toc a) { color:#626872; }
html[data-theme="light"] .customer-card { background:#f7f8fa; }
html[data-theme="light"] .product-tags span { color:#626872; border-color:#d8dce5; }
html[data-theme="light"] .round-arrow { border-color:#d8dce5; }
html[data-theme="light"] .article-toc a { border-color:#d8dce5; }
html[data-theme="light"] :is(.article-toc a:hover,.blog-card h3 a:hover) { color:#7040cc; }
/* Preserve intentional artwork palettes when inherited brand variables change. */
html[data-theme="light"] :is(.core-collage,.branch-hub,.feature-ui) { color:#fcfcfc; }
html[data-theme="light"] .branch-hub .eyebrow { color:#b8abc9; }
@media(max-width:900px) {
  html[data-theme="light"] #navigation { background:#fff; border-color:#e0e3eb; }
  html[data-theme="light"] .nav-dropdown { background:#f7f8fa; }
  html[data-theme="light"] .nav-toggle span { background:#202126; }
  .faq-with-visual { gap:35px; }
  .faq-help-card { width:175px; padding:20px; top:24%; }
  .faq-help-card strong { font-size:19px; }
}
@media(max-width:650px) {
  .theme-toggle { width:44px; height:44px; right:14px; bottom:14px; }
  .journey-step .step-no { margin-bottom:24px; }
  .journey-icon { width:52px; height:52px; margin-bottom:22px; }
  .faq-with-visual { grid-template-columns:1fr; gap:45px; }
  .faq-with-visual .faq-list { margin-top:32px; }
  .faq-visual { max-width:440px; width:100%; margin:auto; }
  .faq-help-card { width:165px; padding:18px; }
  .faq-help-card strong { font-size:18px; }
  .faq-help-label { font-size:9px; padding:9px 11px; }
}
@media(prefers-reduced-motion:reduce) { .theme-toggle { transition:none; } }
html[data-theme="light"] .cta-section { color:#202126; }
html[data-theme="light"] :is(.site-footer .wordmark,.footer-grid h2) { color:#202126; }
html[data-theme="light"] .business-grid > a > b > span { color:#7040cc; }
html[data-theme="light"] .brand-poster em { color:#503278; }
.ticket-purple p { color:#332345; }
.hero-tablet figcaption { width:max-content; max-width:90%; margin-inline:auto; padding:3px 10px; border-radius:20px; background:#181d26e6; color:#e1e3e9; }
