/* Ledger preset (Lajur Konsultan): an accountant's worksheet. White paper, ruled rows, tabular figures,
   a highlighter-yellow marker, double "total" rules, 2px ledger-green frames, grid paper only in the hero
   and the tax calendar. Contract: docs/demo-sectors-plan.md 3.3, 7.7. Every selector is scoped to
   [data-theme-style="ledger"]. */

/* 1. Tokens */
:root[data-theme-style="ledger"] {
  --bg: #fff; --bg-2: #F1F5EF; --tint: #F3F7F2; --zebra: #F1F5EF;
  --ink: #13221A; --ink-2: #3F4F46; --ink-3: #586A5F;
  --line: #DCE6DE; --paper: #E4ECE6; --deep: #0F2A1E; --hl: #F3DD4B; --hl-soft: #FAF4C4;
  --accent-strong: var(--primary);
  --tone-dark: #0F2A1E; --tone-dark-ink: #fff;
  --head: var(--font-heading, "Schibsted Grotesk", system-ui, sans-serif);
  --max: 1200px; --gutter: clamp(18px, 4vw, 44px); --space: clamp(60px, 8vw, 104px);
  --radius: 4px; --r-lg: 4px; --sticky-top: 70px;
  --mark: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Crect width='32' height='32' rx='4' fill='%230E5A3A'/%3E%3Cpath d='M7 10h18M7 16h9M7 22h18' stroke='%23fff' stroke-width='2' stroke-linecap='round' opacity='.9'/%3E%3Cpath d='M16.5 18.5l3.4 3.6 6.4-8.4' fill='none' stroke='%23F3DD4B' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  --mark-hl: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Crect width='32' height='32' rx='4' fill='%23F3DD4B'/%3E%3Cpath d='M7 10h18M7 16h9M7 22h18' stroke='%230F2A1E' stroke-width='2' stroke-linecap='round' opacity='.9'/%3E%3Cpath d='M16.5 18.5l3.4 3.6 6.4-8.4' fill='none' stroke='%230E5A3A' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
:root[data-theme-style="ledger"] { scroll-padding-top: 96px; }

/* 2. Global type: Schibsted headings (tight), Atkinson body, every figure tabular */
[data-theme-style="ledger"] body { background: var(--bg); color: var(--ink); line-height: 1.62; font-variant-numeric: lining-nums; }
/* figures that must line up are tabular */
[data-theme-style="ledger"] :is(table, time, .plan-features, .feature-list, .menu-price, .stat-row, .contact-details, .site-footer, .post-meta, .enquiry-form, .eyebrow) { font-variant-numeric: tabular-nums lining-nums; }
[data-theme-style="ledger"] h1, [data-theme-style="ledger"] h2, [data-theme-style="ledger"] h3, [data-theme-style="ledger"] h4, [data-theme-style="ledger"] .plan-price { font-family: var(--head); letter-spacing: -.03em; word-spacing: .07em; color: var(--ink); }
[data-theme-style="ledger"] h1, [data-theme-style="ledger"] .h1 { font-weight: 800; font-size: clamp(2.5rem, 1.5rem + 4.4vw, 4.6rem); line-height: 1.02; letter-spacing: -.035em; }
[data-theme-style="ledger"] h2 { font-weight: 800; font-size: clamp(1.85rem, 1.25rem + 2.2vw, 2.85rem); line-height: 1.06; }
[data-theme-style="ledger"] h3 { font-weight: 600; font-size: 1.2rem; line-height: 1.25; letter-spacing: -.02em; }
[data-theme-style="ledger"] .lede { font-size: clamp(1.1rem, 1.02rem + .35vw, 1.25rem); color: var(--ink-2); line-height: 1.55; }
[data-theme-style="ledger"] .muted { color: var(--ink-3); }
[data-theme-style="ledger"] strong, [data-theme-style="ledger"] b { font-weight: 700; }
[data-theme-style="ledger"] ::selection { background: var(--hl); color: var(--ink); }
[data-theme-style="ledger"] :focus-visible { outline: 2px solid var(--ink); outline-offset: 3px; }
[data-theme-style="ledger"] .skip:focus { outline-color: #fff; }
/* column-header tab */
[data-theme-style="ledger"] .eyebrow { display: inline-block; font-family: var(--head); font-weight: 600; font-size: .72rem; letter-spacing: .1em; text-transform: uppercase; color: #fff; background: var(--primary); padding: 4px 10px 3px; border-radius: 2px; margin-bottom: 1.2em; }
[data-theme-style="ledger"] .section-head { max-width: 780px; margin-bottom: clamp(28px, 4vw, 48px); }
[data-theme-style="ledger"] .section-head h2 { margin-bottom: .45em; }
[data-theme-style="ledger"] .section-head h2::after, [data-theme-style="ledger"] .page-header h1::after { content: ""; display: block; width: 64px; height: 0; border-top: 5px double var(--primary); margin-top: .4em; }
[data-theme-style="ledger"] .section-head .lede { margin-top: 1em; margin-bottom: 0; }
[data-theme-style="ledger"] .section-foot { margin-top: 32px; }
/* highlighter */
[data-theme-style="ledger"] .hl { position: relative; z-index: 0; color: var(--ink); white-space: nowrap; }
[data-theme-style="ledger"] .hl::after { content: ""; position: absolute; z-index: -1; inset: auto -.12em .06em; height: .46em; background: var(--hl); transform-origin: 0 50%; }

/* 3. Buttons and links */
[data-theme-style="ledger"] .btn { font-family: var(--head); font-weight: 600; font-size: .97rem; letter-spacing: -.005em; min-height: 48px; padding: 10px 22px 13px; border: 2px solid var(--primary); border-radius: 4px; transition: background-color .15s, color .15s; }
[data-theme-style="ledger"] .btn-primary, [data-theme-style="ledger"] .btn-primary:hover { background: var(--primary); color: #fff; box-shadow: inset 0 -4px 0 var(--hl); transform: none; }
[data-theme-style="ledger"] .btn-primary:hover { background: var(--deep); border-color: var(--deep); }
[data-theme-style="ledger"] .btn-secondary, [data-theme-style="ledger"] .btn-secondary:hover { background: transparent; color: var(--primary); border-color: var(--primary); box-shadow: none; transform: none; padding-bottom: 12px; }
[data-theme-style="ledger"] .btn-secondary:hover { background: var(--hl); color: var(--ink); }
[data-theme-style="ledger"] .btn-light, [data-theme-style="ledger"] .btn-light:hover { background: var(--hl); color: #13221A; border-color: var(--hl); box-shadow: none; transform: none; }
[data-theme-style="ledger"] .btn-light:hover { background: #fff; border-color: #fff; }
[data-theme-style="ledger"] .btn-ghost, [data-theme-style="ledger"] .btn-ghost:hover { border: 2px solid #fff; color: #fff; background: transparent; box-shadow: none; transform: none; }
[data-theme-style="ledger"] .btn-ghost:hover { background: #fff; color: var(--deep); }
[data-theme-style="ledger"] .actions { gap: 12px 14px; margin-top: 30px; }
[data-theme-style="ledger"] a { text-underline-offset: 3px; }
[data-theme-style="ledger"] .prose a, [data-theme-style="ledger"] .contact-details a, [data-theme-style="ledger"] .plan-foot a, [data-theme-style="ledger"] .menu-foot a { text-decoration-thickness: 2px; text-decoration-color: var(--hl); color: var(--primary); }
[data-theme-style="ledger"] .prose a:hover, [data-theme-style="ledger"] .contact-details a:hover, [data-theme-style="ledger"] .plan-foot a:hover { background: var(--hl); color: var(--ink); }
[data-theme-style="ledger"] .link-arrow { font-family: var(--head); font-weight: 600; color: var(--primary); text-decoration: none; }
[data-theme-style="ledger"] .link-arrow:hover { color: var(--ink); text-decoration: none; box-shadow: inset 0 -.42em 0 var(--hl); }

/* 4. Notice bar, header, navigation */
[data-theme-style="ledger"] .topbar { background: var(--hl); color: var(--ink); font-size: .86rem; border-bottom: 2px solid var(--ink); }
[data-theme-style="ledger"] .topbar a { color: var(--ink); font-weight: 700; }
[data-theme-style="ledger"] .topbar-close { color: var(--ink); width: 44px; height: 44px; border-radius: 0; }
[data-theme-style="ledger"] .topbar-close:hover { background: var(--ink); color: var(--hl); }
[data-theme-style="ledger"] .site-header { background: #fff; border-bottom: 2px solid var(--primary); }
[data-theme-style="ledger"] .site-header.scrolled { border-color: var(--primary); }
[data-theme-style="ledger"] .header-inner { min-height: 68px; gap: 28px; }
[data-theme-style="ledger"] .brand { min-height: 44px; }
[data-theme-style="ledger"] .wordmark { font-family: var(--head); font-weight: 800; font-size: 1.28rem; letter-spacing: -.035em; color: var(--ink); gap: 10px; }
[data-theme-style="ledger"] .wordmark::before { width: 32px; height: 32px; border-radius: 0; box-shadow: none; background: var(--mark) center / contain no-repeat; }
[data-theme-style="ledger"] .site-nav { gap: 22px; }
[data-theme-style="ledger"] .site-nav > ul { gap: 6px; }
[data-theme-style="ledger"] .site-nav a { font-family: var(--head); font-weight: 600; font-size: .92rem; letter-spacing: -.005em; color: var(--ink-2); padding: 9px 9px; border-radius: 2px; }
[data-theme-style="ledger"] .site-nav a:hover { color: var(--ink); box-shadow: inset 0 -.55em 0 var(--hl-soft); }
[data-theme-style="ledger"] .site-nav > ul > li > a[aria-current="page"] { color: var(--ink); box-shadow: inset 0 -.55em 0 var(--hl); }
[data-theme-style="ledger"] .site-nav .nav-cta, [data-theme-style="ledger"] .site-nav .nav-cta:hover { color: #fff !important; padding: 9px 18px 12px; min-height: 46px; box-shadow: inset 0 -4px 0 var(--hl); border-radius: 4px; }
[data-theme-style="ledger"] .submenu { border: 2px solid var(--primary); border-radius: 0; box-shadow: none; }
[data-theme-style="ledger"] .nav-toggle { min-width: 46px; min-height: 46px; padding: 11px; border: 2px solid var(--primary); border-radius: 4px; }
[data-theme-style="ledger"] .bars, [data-theme-style="ledger"] .bars::before, [data-theme-style="ledger"] .bars::after { background: var(--primary); height: 2px; border-radius: 0; }

/* 5. Hero: text on grid paper, framed photo with a ruler down its left edge */
[data-theme-style="ledger"] .hero { padding-block: clamp(40px, 6vw, 88px) clamp(48px, 6vw, 92px) !important; background: #fff; border-bottom: 2px solid var(--primary); }
[data-theme-style="ledger"] .hero::before { background-image: repeating-linear-gradient(0deg, var(--paper) 0 1px, transparent 1px 24px), repeating-linear-gradient(90deg, var(--paper) 0 1px, transparent 1px 24px); background-size: auto; -webkit-mask-image: none; mask-image: none; }
[data-theme-style="ledger"] .hero-grid { gap: clamp(32px, 5vw, 72px); align-items: center; }
[data-theme-style="ledger"] .hero.has-image .hero-grid { grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr); }
[data-theme-style="ledger"] .hero-text { background: transparent; }
[data-theme-style="ledger"] .hero h1 { max-width: 12.5ch; margin-bottom: .32em; }
[data-theme-style="ledger"] .hero .lede { font-size: clamp(1.1rem, 1.02rem + .4vw, 1.3rem); font-weight: 400; max-width: 34ch; color: var(--ink-2); }
[data-theme-style="ledger"] .hero-media { position: relative; margin-left: auto; width: 100%; max-width: 470px; }
[data-theme-style="ledger"] .hero-media img { aspect-ratio: 4 / 5; width: 100%; object-fit: cover; border: 2px solid var(--primary); border-radius: 0; background: var(--bg-2); }
[data-theme-style="ledger"] .hero-media::before { content: ""; position: absolute; left: -26px; top: 0; bottom: 0; width: 16px; background-image: linear-gradient(var(--primary) 0 2px, transparent 2px), linear-gradient(var(--primary) 0 1px, transparent 1px); background-repeat: repeat-y; background-position: 100% 0, 100% 0; background-size: 16px 60px, 9px 12px; }
[data-theme-style="ledger"] .hero-points { gap: 8px; margin-top: 26px; }
[data-theme-style="ledger"] .hero-points li { padding: 6px 12px 6px 9px; border: 2px solid var(--primary); background: #fff; color: var(--ink); font-family: var(--head); font-weight: 600; font-size: .86rem; gap: 7px; }
[data-theme-style="ledger"] .hero-points .icon { color: var(--primary); width: 16px; height: 16px; }

/* 6. Sections */
[data-theme-style="ledger"] .section-wrap > section { padding-block: var(--space); }
[data-theme-style="ledger"] .section-wrap + .section-wrap > section { border-top: 1px solid var(--line); }
[data-theme-style="ledger"] .section-wrap[data-look~="quiet"] > section { padding-top: 0; border-top: 0; }
[data-theme-style="ledger"] .section-wrap[data-look~="wide"] > section > .container { max-width: 1360px; }
[data-theme-style="ledger"] .section-wrap:is([data-tone="dark"], [data-tone="accent"]) > section .eyebrow { background: var(--hl); color: var(--ink); opacity: 1; }
[data-theme-style="ledger"] .section-wrap:is([data-tone="dark"], [data-tone="accent"]) > section .section-head h2::after { border-top-color: var(--hl); }
[data-theme-style="ledger"] .section-wrap:is([data-tone="dark"], [data-tone="accent"]) > section .link-arrow:hover { color: var(--ink); }
[data-theme-style="ledger"] .container.narrow { max-width: 820px; }
[data-theme-style="ledger"] .richtext .container.narrow { max-width: 980px; }
[data-theme-style="ledger"] .richtext h2 { margin-bottom: .6em; }
[data-theme-style="ledger"] .prose { max-width: none; }
[data-theme-style="ledger"] .prose > :where(p, ul, ol, h2, h3, blockquote) { max-width: 68ch; }
[data-theme-style="ledger"] .prose h2 { font-size: clamp(1.4rem, 1.2rem + .8vw, 1.8rem); margin-top: 1.7em; }
[data-theme-style="ledger"] .prose h3 { font-size: 1.15rem; margin-top: 1.5em; }
[data-theme-style="ledger"] .prose ul { list-style: none; padding: 0; }
[data-theme-style="ledger"] .prose ul li { position: relative; padding-left: 1.4em; }
[data-theme-style="ledger"] .prose ul li::before { content: ""; position: absolute; left: 0; top: .62em; width: 8px; height: 8px; background: var(--primary); }
[data-theme-style="ledger"] .prose ol { list-style: none; padding: 0; counter-reset: pl; }
[data-theme-style="ledger"] .prose ol li { position: relative; padding: 9px 0 9px 2.8rem; margin: 0; border-top: 1px solid var(--line); counter-increment: pl; }
[data-theme-style="ledger"] .prose ol li:last-child { border-bottom: 1px solid var(--line); }
[data-theme-style="ledger"] .prose ol li::before { content: counter(pl, decimal-leading-zero); position: absolute; left: 0; top: 9px; font-family: var(--head); font-weight: 800; color: var(--primary); }
[data-theme-style="ledger"] .prose blockquote { border-left: 4px solid var(--hl); padding: 4px 0 4px 1.1em; color: var(--ink); font-family: var(--head); font-weight: 600; font-size: 1.15rem; }
[data-theme-style="ledger"] .prose code { background: var(--bg-2); border-radius: 2px; }
[data-theme-style="ledger"] .prose img { border: 2px solid var(--primary); border-radius: 0; }
[data-theme-style="ledger"] .prose hr { border-top: 2px solid var(--primary); }
/* ruled tables with zebra rows */
[data-theme-style="ledger"] .prose table { width: 100%; border-collapse: separate; border-spacing: 0; border: 2px solid var(--primary); font-size: .95rem; background: #fff; }
[data-theme-style="ledger"] .prose th { background: var(--primary); color: #fff; font-family: var(--head); font-weight: 600; font-size: .78rem; letter-spacing: .08em; text-transform: uppercase; padding: 12px 14px; border-bottom: 0; }
[data-theme-style="ledger"] .prose td { padding: 12px 14px; border-bottom: 0; border-top: 1px solid var(--line); vertical-align: top; }
[data-theme-style="ledger"] .prose td:first-child { font-weight: 700; }
[data-theme-style="ledger"] .prose tbody tr:nth-child(even) td { background: var(--zebra); }
[data-theme-style="ledger"] .prose tbody tr:hover td { background: var(--hl-soft); }
[data-theme-style="ledger"] .prose :is(th, td) + :is(th, td) { border-left: 1px solid var(--line); }
[data-theme-style="ledger"] .prose th + th { border-left-color: rgba(255,255,255,.28); }

/* Split (paket and konsultasi) */
[data-theme-style="ledger"] .split-grid { gap: clamp(28px, 5vw, 64px); }
[data-theme-style="ledger"] .split-media img { border: 2px solid var(--primary); border-radius: 0; }
[data-theme-style="ledger"] .split-text h2 { margin-bottom: .6em; }

/* Products: client-type chips and folio cards */
[data-theme-style="ledger"] .chips { gap: 8px; margin-bottom: clamp(22px, 3vw, 34px); }
[data-theme-style="ledger"] .chip { min-height: 44px; padding: 0 18px; border: 2px solid var(--primary); border-radius: 4px; background: #fff; color: var(--ink); font-family: var(--head); font-weight: 600; font-size: .92rem; }
[data-theme-style="ledger"] .chip:hover { background: var(--hl-soft); border-color: var(--primary); color: var(--ink); }
[data-theme-style="ledger"] .chip:is([aria-pressed="true"], [aria-current="page"], [aria-current="true"]) { background: var(--hl); border-color: var(--primary); color: var(--ink); box-shadow: inset 0 -3px 0 var(--primary); }
[data-theme-style="ledger"] .chip:focus-visible { outline: 2px solid var(--ink); outline-offset: 3px; }
[data-theme-style="ledger"] .product-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 40px 28px; justify-content: stretch; counter-reset: pc; }
[data-theme-style="ledger"] .product-grid > li { max-width: none; counter-increment: pc; }
[data-theme-style="ledger"] .product-card { transition: none; }
[data-theme-style="ledger"] .product-thumb { position: relative; aspect-ratio: 4 / 3; border: 2px solid var(--primary); border-radius: 0; margin-bottom: 0; }
[data-theme-style="ledger"] .product-thumb::after { content: counter(pc, decimal-leading-zero); position: absolute; left: 0; top: 0; padding: 4px 11px 3px; background: var(--hl); color: var(--ink); font-family: var(--head); font-weight: 800; font-size: .82rem; letter-spacing: .02em; border-right: 2px solid var(--primary); border-bottom: 2px solid var(--primary); }
[data-theme-style="ledger"] .product-body { display: flex; flex-direction: column; flex: 1; border-bottom: 1px solid var(--line); padding-bottom: 16px; }
[data-theme-style="ledger"] .product-card .eyebrow { align-self: flex-start; background: transparent; color: var(--primary); padding: 0; margin: 14px 0 .5em; font-size: .72rem; border-radius: 0; }
[data-theme-style="ledger"] .product-card h3 { font-weight: 800; font-size: 1.3rem; letter-spacing: -.03em; margin-bottom: .3em; }
[data-theme-style="ledger"] .product-card h3 a { color: var(--ink); text-decoration: none; }
[data-theme-style="ledger"] .product-card h3 a:hover { color: var(--ink); background: var(--hl); }
[data-theme-style="ledger"] .product-tagline { font-weight: 700; font-size: .95rem; color: var(--ink); }
[data-theme-style="ledger"] .product-summary { color: var(--ink-2); }
[data-theme-style="ledger"] .product-card .link-arrow { margin-top: auto; padding-top: 4px; }
[data-theme-style="ledger"] .product-group + .product-group { margin-top: 56px; }
[data-theme-style="ledger"] .group-title { font-family: var(--head); color: var(--ink); border-bottom: 3px double var(--primary); }
[data-theme-style="ledger"] .products-index, [data-theme-style="ledger"] .blog-index { padding-block: clamp(36px, 5vw, 64px) var(--space); }
[data-theme-style="ledger"] .search-summary { color: var(--ink-2); }
[data-theme-style="ledger"] .product-layout { grid-template-columns: minmax(0, 1fr) 340px; gap: clamp(32px, 5vw, 64px); }
[data-theme-style="ledger"] .product-hero { border: 2px solid var(--primary); border-radius: 0; margin-bottom: 28px; }
[data-theme-style="ledger"] .product-hero img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
[data-theme-style="ledger"] .product-main .lede { color: var(--ink); font-weight: 700; font-family: var(--head); font-size: 1.3rem; line-height: 1.35; letter-spacing: -.02em; }
[data-theme-style="ledger"] .product-side { top: 92px; border: 2px solid var(--primary); background: #fff; gap: 0; }
[data-theme-style="ledger"] .product-side > section { padding: 20px 22px; }
[data-theme-style="ledger"] .product-side > section + section { border-top: 2px solid var(--primary); }
[data-theme-style="ledger"] .product-side h2 { font-family: var(--head); font-weight: 600; font-size: .75rem; letter-spacing: .1em; color: var(--primary); }
[data-theme-style="ledger"] .product-side h2::after { content: none; }
[data-theme-style="ledger"] .feature-list li { display: block; padding: 12px 0 13px; border-top: 1px solid var(--line); }
[data-theme-style="ledger"] .feature-list strong { font-family: var(--head); font-weight: 600; font-size: .72rem; letter-spacing: .09em; text-transform: uppercase; color: var(--primary); margin-bottom: 3px; }
[data-theme-style="ledger"] .feature-list span { color: var(--ink); font-size: .98rem; }
[data-theme-style="ledger"] .product-contact .btn { width: 100%; justify-content: center; }
[data-theme-style="ledger"] .related { border-top: 2px solid var(--primary); }

/* Services: numbered ruled rows, no cards */
[data-theme-style="ledger"] .service-list { border-top: 2px solid var(--primary); counter-reset: svc; }
[data-theme-style="ledger"] .service-list > li { grid-template-columns: 5.5rem minmax(0, 1fr) minmax(0, 1.3fr); gap: 8px 28px; padding: 24px 12px; align-items: baseline; border-bottom: 1px solid var(--line); transition: background-color .15s; }
[data-theme-style="ledger"] .service-list > li:hover { background: var(--hl-soft); }
[data-theme-style="ledger"] .service-list > li::before { font-family: var(--head); font-weight: 800; font-size: 2.1rem; line-height: 1; letter-spacing: -.04em; color: var(--primary); }
[data-theme-style="ledger"] .service-list > li > h3 { font-weight: 800; font-size: clamp(1.2rem, 1rem + .8vw, 1.55rem); letter-spacing: -.03em; }
[data-theme-style="ledger"] .service-list > li > p { color: var(--ink-2); }
[data-theme-style="ledger"] .service-points li::before { border-radius: 0; background: var(--primary); }

/* Plans: price sheets */
[data-theme-style="ledger"] .plan-grid { gap: 24px; }
[data-theme-style="ledger"] .plan { padding: 0 0 24px; border: 2px solid var(--primary); border-radius: 0; background: #fff; }
[data-theme-style="ledger"] .plan > h3 { margin: 0; padding: 14px 24px 12px; background: var(--primary); color: #fff; font-weight: 600; font-size: .8rem; letter-spacing: .1em; text-transform: uppercase; }
[data-theme-style="ledger"] .plan > * { margin-inline: 24px; }
[data-theme-style="ledger"] .plan > h3 { margin-inline: 0; }
[data-theme-style="ledger"] .plan-desc { margin-top: 18px; margin-bottom: 0; color: var(--ink-2); font-size: .95rem; }
[data-theme-style="ledger"] .plan-price { font-family: var(--head); font-weight: 800; font-size: clamp(1.8rem, 1.4rem + 1.2vw, 2.4rem); letter-spacing: -.04em; line-height: 1.1; margin-top: 14px; margin-bottom: 18px; padding-bottom: 14px; border-bottom: 3px double var(--primary); }
[data-theme-style="ledger"] .plan-price span { font-family: var(--font); font-weight: 400; font-size: .9rem; letter-spacing: 0; word-spacing: 0; color: var(--ink-2); display: block; margin-top: 4px; font-variant-numeric: tabular-nums; }
[data-theme-style="ledger"] .plan-features { gap: 0; margin-bottom: 26px; }
[data-theme-style="ledger"] .plan-features li { align-items: center; padding: 9px 0; border-top: 1px solid var(--line); }
[data-theme-style="ledger"] .plan-features li:first-child { border-top: 0; }
[data-theme-style="ledger"] .plan-features .icon { color: var(--primary); }
[data-theme-style="ledger"] .plan.is-highlight { box-shadow: 0 0 0 4px var(--hl); }
[data-theme-style="ledger"] .plan.is-highlight > h3 { background: var(--deep); }
[data-theme-style="ledger"] .plan-badge { top: -2px; left: auto; right: -2px; margin: 0; padding: 6px 12px 5px; border-radius: 0; background: var(--hl); color: var(--ink); border: 2px solid var(--primary); font-family: var(--head); font-weight: 800; font-size: .72rem; letter-spacing: .08em; text-transform: uppercase; }
[data-theme-style="ledger"] .plan.is-highlight > .plan-badge { margin-inline: 0; }
[data-theme-style="ledger"] .plan-cta { margin-top: auto; justify-content: center; }
[data-theme-style="ledger"] .plan-foot { color: var(--ink-2); }

/* Tax calendar: timeline look="calendar" becomes a two-column deadline ledger on grid paper */
[data-theme-style="ledger"] .section-wrap[data-look~="calendar"] > section { background-color: var(--tint); background-image: repeating-linear-gradient(0deg, var(--paper) 0 1px, transparent 1px 24px), repeating-linear-gradient(90deg, var(--paper) 0 1px, transparent 1px 24px); }
[data-theme-style="ledger"] .section-wrap[data-look~="calendar"] .timeline-list { max-width: none; margin: 0; border: 2px solid var(--primary); background: #fff; display: grid; grid-template-columns: minmax(8rem, 12rem) minmax(0, 1fr); }
[data-theme-style="ledger"] .section-wrap[data-look~="calendar"] .timeline-list::before, [data-theme-style="ledger"] .section-wrap[data-look~="calendar"] .timeline-list::after { padding: 11px 18px 10px; background: var(--primary); color: #fff; font-family: var(--head); font-weight: 600; font-size: .75rem; letter-spacing: .1em; text-transform: uppercase; }
[data-theme-style="ledger"] .section-wrap[data-look~="calendar"] .timeline-list::before { content: "Tanggal"; }
[data-theme-style="ledger"] .section-wrap[data-look~="calendar"] .timeline-list::after { content: "Kewajiban"; order: 0; grid-row: 1; grid-column: 2; border-left: 1px solid rgba(255,255,255,.28); }
[data-theme-style="ledger"] .section-wrap[data-look~="calendar"] .timeline-list li { grid-column: 1 / -1; display: grid; grid-template-columns: subgrid; gap: 0; padding: 0; border-top: 1px solid var(--line); }
[data-theme-style="ledger"] .section-wrap[data-look~="calendar"] .timeline-list li:nth-child(even) { background: var(--zebra); }
[data-theme-style="ledger"] .section-wrap[data-look~="calendar"] .timeline-list li::before { content: none; }
[data-theme-style="ledger"] .section-wrap[data-look~="calendar"] .timeline-list time { padding: 16px 18px; font-family: var(--head); font-weight: 800; font-size: 1.05rem; line-height: 1.25; letter-spacing: -.02em; color: var(--primary); border-right: 1px solid var(--line); }
[data-theme-style="ledger"] .section-wrap[data-look~="calendar"] .timeline-list li > div { padding: 16px 20px; }
[data-theme-style="ledger"] .section-wrap[data-look~="calendar"] .timeline-list h3 { font-size: 1.05rem; font-weight: 600; margin-bottom: .2em; }
[data-theme-style="ledger"] .section-wrap[data-look~="calendar"] .timeline-list p { font-size: .94rem; color: var(--ink-2); }
[data-theme-style="ledger"] .section-wrap[data-look~="calendar"] .timeline-list li:first-child { background: var(--hl); }
[data-theme-style="ledger"] .section-wrap[data-look~="calendar"] .timeline-list li:first-child time { color: var(--ink); border-right-color: var(--ink); }
[data-theme-style="ledger"] .section-wrap[data-look~="calendar"] .timeline-list li:first-child time::after { content: "Berikutnya"; display: block; margin-top: 4px; font-family: var(--font); font-weight: 700; font-size: .68rem; letter-spacing: .1em; text-transform: uppercase; color: var(--ink); }
[data-theme-style="ledger"] .section-wrap[data-look~="calendar"] .timeline-list li:first-child p { color: var(--ink); }
/* plain timeline (no calendar look) */
[data-theme-style="ledger"] .timeline-list { border-left: 2px solid var(--primary); }
[data-theme-style="ledger"] .timeline-list li::before { border-radius: 0; border-color: #fff; background: var(--primary); }
[data-theme-style="ledger"] .timeline-list time { font-family: var(--head); font-weight: 800; color: var(--primary); }

/* Features, process, stats, compare: restrained defaults */
[data-theme-style="ledger"] .feature-grid li { border-top: 3px double var(--primary); }
[data-theme-style="ledger"] .feature-grid.cols-3 li:nth-child(3n+2), [data-theme-style="ledger"] .feature-grid.cols-4 li:nth-child(even), [data-theme-style="ledger"] .feature-grid.cols-2 li:nth-child(even) { border-top-color: var(--primary); }
[data-theme-style="ledger"] .feature-index { font-family: var(--head); color: var(--primary); opacity: 1; font-weight: 800; }
[data-theme-style="ledger"] .icon-tile { border-radius: 0; background: var(--hl); color: var(--ink); }
[data-theme-style="ledger"] .feature-grid.has-photos li.has-photo, [data-theme-style="ledger"] .service-list > li.has-photo { border: 2px solid var(--primary); border-radius: 0; }
[data-theme-style="ledger"] .card-photo img { border-radius: 0; }
[data-theme-style="ledger"] .process-list li::before { border-radius: 0; background: var(--primary); font-family: var(--head); font-weight: 800; }
[data-theme-style="ledger"] .stats { background: var(--deep); }
[data-theme-style="ledger"] .stat-row dd { font-family: var(--head); font-weight: 800; color: var(--hl); }
[data-theme-style="ledger"] .compare-grid { border: 2px solid var(--primary); border-radius: 0; background: var(--primary); gap: 2px; }
[data-theme-style="ledger"] .compare-solution { background: var(--hl-soft); }
[data-theme-style="ledger"] .statement { background: var(--tint); }

/* Gallery (4:5 photos in green frames, folio captions) */
[data-theme-style="ledger"] .gallery-grid.layout-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; counter-reset: gf; }
[data-theme-style="ledger"] .gallery-grid.layout-grid li { aspect-ratio: auto; counter-increment: gf; }
[data-theme-style="ledger"] .gallery-grid figure { height: auto; }
[data-theme-style="ledger"] .gallery-grid.layout-grid img { aspect-ratio: 4 / 5; border: 2px solid var(--primary); border-radius: 0; }
[data-theme-style="ledger"] .gallery-grid.layout-mosaic img { border: 2px solid var(--primary); border-radius: 0; }
[data-theme-style="ledger"] .gallery-grid figcaption { position: static; max-width: none; padding: 10px 0 0; margin-top: 0; background: transparent; color: var(--ink-2); font-size: .9rem; line-height: 1.4; border-radius: 0; border-top: 0; }
[data-theme-style="ledger"] .gallery-grid.layout-grid figcaption::before { content: counter(gf, decimal-leading-zero); display: inline-block; margin-right: 8px; padding: 1px 6px; background: var(--hl); color: var(--ink); font-family: var(--head); font-weight: 800; font-size: .72rem; }

/* Team */
[data-theme-style="ledger"] .team-grid { grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 36px 24px; }
[data-theme-style="ledger"] .team-grid img, [data-theme-style="ledger"] .avatar-placeholder { aspect-ratio: 4 / 5; border: 2px solid var(--primary); border-radius: 0; margin-bottom: 14px; }
[data-theme-style="ledger"] .avatar-placeholder { display: grid; place-items: center; background: var(--bg-2); color: var(--primary); font-family: var(--head); font-weight: 800; font-size: 3.6rem; }
[data-theme-style="ledger"] .team-grid h3 { font-weight: 800; font-size: 1.1rem; letter-spacing: -.03em; margin-bottom: .1em; }
[data-theme-style="ledger"] .team-grid .role { color: var(--primary); font-family: var(--head); font-weight: 600; font-size: .86rem; margin-bottom: .5em; padding-top: 6px; border-top: 3px double var(--primary); display: block; }
[data-theme-style="ledger"] .team-grid p { color: var(--ink-2); }

/* Posts: date-first ruled rows (home look="list" and the guide index) */
[data-theme-style="ledger"] .post-card { display: grid; grid-template-columns: 9rem minmax(0, 1fr) 190px; gap: 6px 28px; align-items: start; padding: 22px 0; border-top: 1px solid var(--line); transition: none; }
[data-theme-style="ledger"] .post-card .post-thumb { grid-column: 3; grid-row: 1 / span 3; margin: 0; aspect-ratio: 4 / 3; border: 2px solid var(--primary); border-radius: 0; }
[data-theme-style="ledger"] .post-card .post-meta { grid-column: 1; grid-row: 1 / span 3; display: flex; flex-direction: column-reverse; align-items: flex-start; gap: 6px; margin: 2px 0 0; font-family: var(--head); font-weight: 800; font-size: 1rem; letter-spacing: -.02em; color: var(--ink); }
[data-theme-style="ledger"] .post-cat { font-family: var(--head); font-weight: 600; font-size: .7rem; letter-spacing: .09em; text-transform: uppercase; color: #fff; background: var(--primary); padding: 3px 8px 2px; border-radius: 2px; }
[data-theme-style="ledger"] .post-card h3 { grid-column: 2; margin: 0; font-weight: 800; font-size: clamp(1.15rem, 1rem + .6vw, 1.45rem); letter-spacing: -.03em; }
[data-theme-style="ledger"] .post-card h3 a { color: var(--ink); text-decoration: none; }
[data-theme-style="ledger"] .post-card h3 a:hover { background: var(--hl); color: var(--ink); }
[data-theme-style="ledger"] .post-card p:last-child { grid-column: 2; color: var(--ink-2); font-size: .98rem; margin: 0; }
[data-theme-style="ledger"] .post-grid, [data-theme-style="ledger"] .post-list { display: block; max-width: none; border-bottom: 1px solid var(--line); }
[data-theme-style="ledger"] .post-list li + li, [data-theme-style="ledger"] .post-grid li + li { padding-top: 0; border-top: 0; }
[data-theme-style="ledger"] .post-list { gap: 0; }
[data-theme-style="ledger"] .post-detail .post-meta { color: var(--ink-2); font-weight: 400; font-size: .92rem; }
[data-theme-style="ledger"] .post-cover { border: 2px solid var(--primary); border-radius: 0; }
[data-theme-style="ledger"] .pagination { max-width: none; font-family: var(--head); font-weight: 600; }

/* FAQ: ruled rows with a square toggle */
[data-theme-style="ledger"] .faq-list details { border-top: 1px solid var(--line); }
[data-theme-style="ledger"] .faq-list details:first-child { border-top: 2px solid var(--primary); }
[data-theme-style="ledger"] .faq-list details:last-child { border-bottom: 1px solid var(--line); }
[data-theme-style="ledger"] .faq-list summary { align-items: center; padding: 18px 0; font-family: var(--head); font-weight: 600; font-size: 1.08rem; letter-spacing: -.02em; color: var(--ink); min-height: 56px; }
[data-theme-style="ledger"] .faq-list summary:hover { background: var(--hl-soft); }
[data-theme-style="ledger"] .faq-list summary::after, [data-theme-style="ledger"] .faq-list details[open] summary::after { content: "+"; flex: none; display: grid; place-items: center; width: 30px; height: 30px; border: 2px solid var(--primary); color: var(--primary); font-family: var(--head); font-weight: 800; font-size: 1.2rem; line-height: 1; padding-bottom: 2px; }
[data-theme-style="ledger"] .faq-list details[open] summary::after { content: "\2212"; background: var(--hl); color: var(--ink); }
[data-theme-style="ledger"] .faq-list .prose { color: var(--ink-2); padding-right: 46px; }

/* CTA band */
[data-theme-style="ledger"] .section-wrap > .cta-band, [data-theme-style="ledger"] .cta-band { background: var(--deep); border-top: 6px solid var(--hl); }
[data-theme-style="ledger"] .cta-band::before { content: none; }
[data-theme-style="ledger"] .cta-band h2 { font-weight: 800; color: #fff; }
[data-theme-style="ledger"] .cta-band p { color: #D7E5DC; }
[data-theme-style="ledger"] .cta-note a { color: #fff; }

/* 8. Enquiry sheet, contact, forms: fields are ruled lines on a pale strip */
[data-theme-style="ledger"] .enquiry.layout-card .container { max-width: 800px; }
[data-theme-style="ledger"] .enquiry.layout-card .enquiry-form { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 20px; }
[data-theme-style="ledger"] .enquiry.layout-card .enquiry-form .btn { grid-column: 1 / -1; justify-self: start; padding-inline: 34px; }
[data-theme-style="ledger"] .enquiry.layout-card .enquiry-form, [data-theme-style="ledger"] .enquiry.layout-bar > .container > .enquiry-form { border: 2px solid var(--primary); border-radius: 0; background: #fff; box-shadow: 8px 8px 0 var(--hl); }
[data-theme-style="ledger"] .enq-field { font-family: var(--head); font-weight: 600; font-size: .86rem; color: var(--ink); }
[data-theme-style="ledger"] .enq-field :where(input, select), [data-theme-style="ledger"] .contact-form input, [data-theme-style="ledger"] .contact-form textarea, [data-theme-style="ledger"] .contact-form select, [data-theme-style="ledger"] .product-search input, [data-theme-style="ledger"] .product-search select, [data-theme-style="ledger"] .docs-search input { border: 0; border-bottom: 2px solid var(--primary); border-radius: 0; background: var(--zebra); color: var(--ink); font-family: var(--font); }
[data-theme-style="ledger"] .contact-form input, [data-theme-style="ledger"] .contact-form textarea { padding: 12px 12px; margin-top: 4px; }
[data-theme-style="ledger"] .enq-field :is(input, select):focus-visible, [data-theme-style="ledger"] .contact-form :is(input, textarea):focus, [data-theme-style="ledger"] .product-search :is(input, select):focus-visible { outline: 2px solid var(--ink); outline-offset: 2px; border-color: var(--primary); background: #fff; }
[data-theme-style="ledger"] ::placeholder { color: var(--ink-2); opacity: 1; }
[data-theme-style="ledger"] .contact-form label { font-family: var(--head); font-weight: 600; color: var(--ink); }
[data-theme-style="ledger"] .contact-form label span[aria-hidden] { color: var(--primary); }
[data-theme-style="ledger"] .form-notice.ok { background: var(--hl-soft); color: var(--ink); border-left: 4px solid var(--primary); border-radius: 0; }
[data-theme-style="ledger"] .form-notice.err { border-radius: 0; border-left: 4px solid #7f1d1d; }
[data-theme-style="ledger"] .contact-grid { gap: clamp(32px, 5vw, 72px); }
[data-theme-style="ledger"] .contact-details dt { font-family: var(--head); font-weight: 600; color: var(--primary); }
[data-theme-style="ledger"] .contact-details { border-top: 2px solid var(--primary); gap: 0; }
[data-theme-style="ledger"] .contact-details > div { padding: 14px 0; border-bottom: 1px solid var(--line); }
[data-theme-style="ledger"] .enquiry-note { color: var(--ink-2); }

/* 7. Page header */
[data-theme-style="ledger"] .page-header { padding: clamp(40px, 6vw, 80px) 0 clamp(28px, 4vw, 44px); background: var(--tint); border-bottom: 2px solid var(--primary); }
[data-theme-style="ledger"] .page-header h1 { font-size: clamp(2.2rem, 1.4rem + 3.4vw, 3.8rem); max-width: 18ch; }
[data-theme-style="ledger"] .page-header .lede { margin-top: .8em; }
[data-theme-style="ledger"] .breadcrumb ol { font-size: .86rem; color: var(--ink-3); }
[data-theme-style="ledger"] .breadcrumb li + li::before { color: var(--ink-3); }
[data-theme-style="ledger"] .breadcrumb a { color: var(--ink-2); text-decoration: underline; text-decoration-color: var(--hl); text-decoration-thickness: 2px; }
[data-theme-style="ledger"] .breadcrumb a:hover { color: var(--ink); background: var(--hl); }
[data-theme-style="ledger"] .not-found h1 { font-size: clamp(2.2rem, 1.4rem + 3vw, 3.4rem); }

/* 9. Footer: deep green, ruled link columns, double rule under column heads */
[data-theme-style="ledger"] .site-footer { background: var(--deep); color: #D7E5DC; border-top: 1px solid rgba(255,255,255,.2); padding-top: clamp(48px, 6vw, 72px); }
[data-theme-style="ledger"] .site-footer :focus-visible { outline-color: var(--hl); }
[data-theme-style="ledger"] .site-footer .wordmark { color: #fff; }
[data-theme-style="ledger"] .site-footer .wordmark::before { background-image: var(--mark-hl); }
[data-theme-style="ledger"] .footer-grid { grid-template-columns: minmax(0, 1.4fr) repeat(calc(var(--footer-cols, 4) - 1), minmax(0, 1fr)); gap: 0; padding-bottom: 44px; }
[data-theme-style="ledger"] .footer-grid > div { padding-inline: 24px; border-left: 1px solid rgba(255,255,255,.18); }
[data-theme-style="ledger"] .footer-grid > div:first-child { padding-left: 0; border-left: 0; }
[data-theme-style="ledger"] .footer-grid > div:last-child { padding-right: 0; }
[data-theme-style="ledger"] .footer-about p { color: #D7E5DC; max-width: 34ch; }
[data-theme-style="ledger"] .footer-col h2 { font-family: var(--head); font-weight: 600; color: #fff; font-size: .75rem; letter-spacing: .12em; padding-bottom: 10px; margin-bottom: 4px; border-bottom: 4px double var(--hl); }
[data-theme-style="ledger"] .footer-col li { margin: 0; border-bottom: 1px solid rgba(255,255,255,.16); }
[data-theme-style="ledger"] .footer-col li a { display: block; padding: 10px 0; }
[data-theme-style="ledger"] .footer-col a, [data-theme-style="ledger"] .footer-contact a, [data-theme-style="ledger"] .social a { color: #E8F1EB; text-decoration: none; }
[data-theme-style="ledger"] .footer-col li a:hover, [data-theme-style="ledger"] .social a:hover { background: var(--hl); color: var(--ink); text-decoration: none; padding-inline: 8px; margin-inline: -8px; }
[data-theme-style="ledger"] .footer-contact a { text-decoration: underline; text-decoration-color: var(--hl); text-decoration-thickness: 2px; }
[data-theme-style="ledger"] .footer-contact a:hover { color: #fff; background: transparent; }
[data-theme-style="ledger"] .footer-contact a { overflow-wrap: anywhere; }
[data-theme-style="ledger"] .footer-contact p { margin-bottom: 0; padding: 10px 0; border-bottom: 1px solid rgba(255,255,255,.16); }
[data-theme-style="ledger"] .footer-bottom { border-top: 1px solid rgba(255,255,255,.22); color: #B7CBBD; }
[data-theme-style="ledger"] .footer-bottom a { color: #D7E5DC; text-decoration: underline; text-decoration-color: rgba(255,255,255,.4); }
[data-theme-style="ledger"] .footer-bottom a:hover { color: #fff; }

/* Floating chat button */
[data-theme-style="ledger"] .float-cta { border-radius: 4px; border: 2px solid #fff; background: var(--primary); color: #fff; font-family: var(--head); font-weight: 600; box-shadow: inset 0 -4px 0 var(--hl), 0 0 0 2px var(--primary); height: 54px; padding: 0 20px 4px 16px; }
[data-theme-style="ledger"] .float-cta:hover { background: var(--deep); color: #fff; }
[data-theme-style="ledger"] .float-cta:focus-visible { outline: 3px solid var(--hl); outline-offset: 4px; box-shadow: inset 0 -4px 0 var(--hl); }

/* 10. Responsive */
@media (max-width: 1100px) {
  [data-theme-style="ledger"] .product-layout { grid-template-columns: minmax(0, 1fr) 300px; }
  [data-theme-style="ledger"] .gallery-grid.layout-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [data-theme-style="ledger"] .site-nav a { padding-inline: 6px; }
}
@media (max-width: 960px) {
  [data-theme-style="ledger"] .hero.has-image .hero-grid { grid-template-columns: 1fr; }
  [data-theme-style="ledger"] .hero-media { margin: 0; max-width: 420px; }
  [data-theme-style="ledger"] .hero-media::before { display: none; }
  [data-theme-style="ledger"] .hero .lede { max-width: 48ch; }
  [data-theme-style="ledger"] .product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [data-theme-style="ledger"] .product-layout { grid-template-columns: 1fr; }
  [data-theme-style="ledger"] .product-side { position: static; }
  [data-theme-style="ledger"] .service-list > li { grid-template-columns: 3.4rem minmax(0, 1fr); padding-inline: 4px; }
  [data-theme-style="ledger"] .service-list > li::before { font-size: 1.7rem; }
  [data-theme-style="ledger"] .footer-grid { grid-template-columns: 1fr 1fr; row-gap: 32px; }
  [data-theme-style="ledger"] .footer-grid > div:nth-child(odd) { padding-left: 0; border-left: 0; }
  [data-theme-style="ledger"] .footer-grid > div:first-child { grid-column: 1 / -1; }
  [data-theme-style="ledger"] .footer-grid > div:nth-child(2) { padding-left: 0; border-left: 0; }
  [data-theme-style="ledger"] .plan-grid { grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
}
@media (max-width: 720px) {
  [data-theme-style="ledger"] .site-nav { background: #fff; border-bottom: 2px solid var(--primary); }
  [data-theme-style="ledger"] .site-nav > ul > li > a { border-bottom: 1px solid var(--line); padding: 13px 4px; }
  [data-theme-style="ledger"] .site-nav > ul > li > a[aria-current="page"] { box-shadow: inset 4px 0 0 var(--primary); background: var(--hl-soft); padding-left: 14px; }
  [data-theme-style="ledger"] .site-nav .nav-cta { margin-top: 12px; justify-content: center; }
  [data-theme-style="ledger"] .post-card { grid-template-columns: minmax(0, 1fr) 88px; gap: 4px 16px; }
  [data-theme-style="ledger"] .post-card .post-thumb { grid-column: 2; grid-row: 1 / span 3; }
  [data-theme-style="ledger"] .post-card .post-meta { grid-column: 1; grid-row: 1; flex-direction: row-reverse; justify-content: flex-end; align-items: center; gap: 10px; }
  [data-theme-style="ledger"] .post-card h3, [data-theme-style="ledger"] .post-card p:last-child { grid-column: 1; }
  [data-theme-style="ledger"] .post-card h3 { grid-row: 2; }
  [data-theme-style="ledger"] .post-card p:last-child { grid-row: 3; }
  [data-theme-style="ledger"] .section-wrap[data-look~="calendar"] .timeline-list { display: block; }
  [data-theme-style="ledger"] .section-wrap[data-look~="calendar"] .timeline-list::before, [data-theme-style="ledger"] .section-wrap[data-look~="calendar"] .timeline-list::after { display: none; }
  [data-theme-style="ledger"] .section-wrap[data-look~="calendar"] .timeline-list li { display: block; padding: 14px 16px 16px; }
  [data-theme-style="ledger"] .section-wrap[data-look~="calendar"] .timeline-list time { display: inline-block; padding: 3px 10px 2px; margin-bottom: 8px; border: 0; background: var(--primary); color: #fff; font-size: 1rem; }
  [data-theme-style="ledger"] .section-wrap[data-look~="calendar"] .timeline-list li > div { padding: 0; }
  [data-theme-style="ledger"] .section-wrap[data-look~="calendar"] .timeline-list li:first-child time { background: var(--ink); color: var(--hl); }
  [data-theme-style="ledger"] .section-wrap[data-look~="calendar"] .timeline-list li:first-child time::after { display: inline; margin: 0 0 0 10px; color: var(--hl); }
  [data-theme-style="ledger"] .prose table { display: block; overflow-x: auto; max-width: 100%; }
  [data-theme-style="ledger"] .prose table:focus-visible { outline: 2px solid var(--ink); }
    [data-theme-style="ledger"] .enquiry.layout-card .enquiry-form { box-shadow: 5px 5px 0 var(--hl); }
  [data-theme-style="ledger"] .contact-grid { gap: 32px; }
}
@media (max-width: 560px) {
  [data-theme-style="ledger"] .product-grid { grid-template-columns: 1fr; }
  [data-theme-style="ledger"] .product-thumb { aspect-ratio: 16 / 10; }
  [data-theme-style="ledger"] .gallery-grid.layout-grid { gap: 14px; }
  [data-theme-style="ledger"] .footer-grid { grid-template-columns: 1fr; }
  [data-theme-style="ledger"] .footer-grid > div { padding-inline: 0; border-left: 0; }
  [data-theme-style="ledger"] .team-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 16px; }
}
@media (max-width: 420px) {
  [data-theme-style="ledger"] .hero h1, [data-theme-style="ledger"] .hero .h1 { font-size: 2.4rem; }
  [data-theme-style="ledger"] .actions .btn { width: 100%; justify-content: center; }
  [data-theme-style="ledger"] .hero-media { max-width: none; }
  [data-theme-style="ledger"] .btn { padding-inline: 18px; }
  [data-theme-style="ledger"] .plan > * { margin-inline: 18px; }
  [data-theme-style="ledger"] .plan > h3 { padding-inline: 18px; margin-inline: 0; }
}

/* 11. Motion: the highlighter swipes in once; sheets fade in without travel */
@media (prefers-reduced-motion: no-preference) {
  :root[data-theme-style="ledger"]:not([data-motion="off"]) .hl::after { transform: scaleX(0); animation: ledger-swipe .6s cubic-bezier(.5, .1, .2, 1) .35s forwards; }
  :root[data-theme-style="ledger"]:not([data-motion="off"]) .reveal { transform: none; transition: opacity .45s ease; }
  :root[data-theme-style="ledger"]:not([data-motion="off"]) .post-card, :root[data-theme-style="ledger"]:not([data-motion="off"]) .product-card { transition: none; }
  :root[data-theme-style="ledger"]:not([data-motion="off"]) .product-card:hover, :root[data-theme-style="ledger"]:not([data-motion="off"]) .post-card:hover { transform: none; }
  :root[data-theme-style="ledger"]:not([data-motion="off"]) .product-card:hover .product-thumb img, :root[data-theme-style="ledger"]:not([data-motion="off"]) .post-card:hover .post-thumb img { transform: none; }
  :root[data-theme-style="ledger"]:not([data-motion="off"]) .product-thumb::after { transition: background-color .15s; }
  :root[data-theme-style="ledger"]:not([data-motion="off"]) .product-card:hover .product-thumb::after { background: #fff; }
}
@keyframes ledger-swipe { to { transform: scaleX(1); } }

/* 12. Print */
@media print {
  [data-theme-style="ledger"] .topbar, [data-theme-style="ledger"] .site-header, [data-theme-style="ledger"] .site-footer, [data-theme-style="ledger"] .float-cta, [data-theme-style="ledger"] .cta-band { display: none; }
  [data-theme-style="ledger"] body { background: #fff; }
  [data-theme-style="ledger"] .hero::before { content: none; }
  [data-theme-style="ledger"] .hl::after { transform: none; animation: none; }
}
[data-theme-style="ledger"] .footer-contact a { font-size: .84rem; letter-spacing: -.01em; overflow-wrap: normal; }
@media (max-width: 1239px) { [data-theme-style="ledger"] .footer-contact a { overflow-wrap: anywhere; } }
