/* Odette. — the public site's stylesheet.

   GENERATED by harness/build-site.mjs from site/src/css/*.css, in name order —
   edit those, not this. Colour and type come from assets/tokens.css, which
   every page loads first; nothing here names a colour the token file does
   not. */

/* ==== site/src/css/00-base.css ==== */
*,*::before,*::after {box-sizing:border-box}
html {scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce) {html {scroll-behavior:auto}}
body.site {font-variant-numeric:lining-nums;margin:0;background:var(--site-paper);color:var(--ink);font:400 15.5px/1.65 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden;text-wrap:pretty}
.site img {max-width:100%;height:auto}
.site :where(a) {color:inherit}
.site a {text-decoration:none;transition:color .18s,background .18s,opacity .18s,border-color .18s}
.site a:where(:not([class])):hover {color:var(--accent)}
.site ::selection {background:var(--ink);color:var(--site-paper)}
.site input::placeholder {color:var(--site-placeholder)}
.site :focus-visible {outline:var(--focus);outline-offset:var(--focus-gap);border-radius:8px}
.site :where(button) {font:inherit;color:inherit}
.site [hidden] {display:none !important}
:where(.site) :where(p,h1,h2,h3,h4) {margin:0}
.site ul,.site ol {margin:0;padding:0;list-style:none}
.site table {border-collapse:collapse;width:100%}
.site em {font-style:italic}
.skip {position:absolute;left:-999px;top:8px;z-index:100;padding:10px 16px;background:var(--ink);color:var(--on-ink-strong);border-radius:999px}
.skip:focus {left:16px}
.wrap {max-width:1280px;margin:0 auto;padding:0 40px}
.sec {padding-top:140px}
.sec-pad {padding:140px 0}
.grid-2 {display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch}
.grid-3 {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.grid-4 {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:stretch}
.split {display:grid;grid-template-columns:1.15fr 1fr;gap:56px;align-items:center}
.center {text-align:center}
.mw-560 {max-width:560px} .mw-640 {max-width:640px} .mw-760 {max-width:760px} .mw-860 {max-width:860px}
.mx {margin-left:auto;margin-right:auto}
.m-show {display:none}
.eyebrow {display:inline-block;font-size:10.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--accent)}
.eyebrow-deep {color:var(--ai)}
.eyebrow-muted {color:var(--decor)}
.eyebrow-ink {color:var(--ink-2)}
.serif {font-family:var(--serif);font-weight:400}
.h1 {font-family:var(--serif);font-weight:400;font-size:70px;line-height:1.0;letter-spacing:-.03em}
.h2 {font-family:var(--serif);font-weight:400;font-size:60px;line-height:1.02;letter-spacing:-.025em}
.h3 {font-family:var(--serif);font-weight:400;font-size:34px;line-height:1.08;letter-spacing:-.02em}
.h4 {font-family:var(--serif);font-weight:400;font-size:26px;line-height:1.1;letter-spacing:-.02em}
.h1 em,.h2 em,.h3 em,.h4 em {font-style:italic;color:var(--accent)}
.h1 em.grey,.h2 em.grey,.h3 em.grey {color:var(--faint)}
.lead {font-size:20px;line-height:1.5;color:var(--ink-2)}
.sub {font-size:17px;line-height:1.6;color:var(--ink-2)}
.small {font-size:13px;line-height:1.55}
.meta {font-size:12.5px;color:var(--muted);line-height:1.5}
.muted {color:var(--muted)}
.ink-2 {color:var(--ink-2)}
.fig {font-family:var(--serif);font-weight:400;letter-spacing:-.02em;line-height:1;font-style:normal}
.fig-34 {font-size:34px} .fig-40 {font-size:40px} .fig-20 {font-size:20px} .fig-16 {font-size:16px}
.num {font-family:var(--serif);font-style:italic;font-weight:400;color:var(--accent);line-height:1}
.prose p + p {margin-top:14px}
.prose a {color:var(--accent);font-weight:600}
.prose a:hover {color:var(--accent-hover)}
.prose strong {font-weight:700}
.prose ul {padding-left:18px;list-style:disc} .prose ol {padding-left:18px;list-style:decimal}
.prose li + li {margin-top:6px}
.reveal {opacity:0;transform:translateY(22px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
.reveal.is-in,html.no-reveal .reveal {opacity:1;transform:none}
@media (prefers-reduced-motion:reduce) {.reveal {opacity:1;transform:none;transition:none}}
@media (max-width:860px) {.wrap {padding:0 20px}
.sec {padding-top:80px}
.sec-pad {padding:80px 0}
.grid-2,.grid-3,.grid-4,.split {grid-template-columns:1fr;gap:14px}
.m-hide {display:none !important}
.m-show {display:flex}
.m-stack {display:flex;flex-direction:column;gap:14px;align-items:stretch}
.m-left {text-align:left;max-width:none}
.h1 {font-size:36px;line-height:1.04;letter-spacing:-.02em}
.h2 {font-size:36px;line-height:1.08}
.h3 {font-size:30px}
.h4 {font-size:24px}
.lead {font-size:17px}
.sub {font-size:16px}
.fig-40 {font-size:34px}}

/* ==== site/src/css/10-shell.css ==== */
.nav {position:sticky;top:0;z-index:50;background:var(--site-nav);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--site-line)}
.nav-in {height:68px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.nav-brand {display:flex;align-items:center;gap:10px;color:var(--ink)}
.nav-brand img {width:30px;height:30px;border-radius:22%;display:block}
.nav-brand span {font-family:var(--serif);font-weight:400;font-size:21px;letter-spacing:-.01em}
.nav-links {display:flex;align-items:center;gap:30px;height:68px;font-size:13.5px;font-weight:600;color:var(--muted)}
.nav-link {display:inline-flex;align-items:center;gap:5px;padding:8px 2px;border-bottom:2px solid transparent;color:var(--muted)}
.nav-link i {font-style:normal;font-size:10px;opacity:.6}
.nav-link:hover,.nav-link[aria-expanded="true"] {color:var(--ink)}
html[data-section="product"] .nav-link[data-mega="product"],html[data-section="guides"] .nav-link[data-mega="guides"],html[data-section="cities"] .nav-link[data-mega="cities"],html[data-section="tools"] .nav-link[data-mega="tools"] {color:var(--ink)}
.nav-cta {display:flex;align-items:center;gap:10px}
.lang {padding:8px 12px;border-radius:6px;border:1px solid var(--border);font-size:12px;font-weight:700;color:var(--muted)}
.lang:hover {color:var(--ink)}
.nav-signin {padding:9px 14px;border-radius:6px;font-size:13px;font-weight:700;color:var(--ink)}
.nav-signin:hover {color:var(--accent)}
.nav .btn-sm {padding:9px 20px;min-height:0;border-radius:6px;font-size:13px;font-weight:700}
.nav .btn-ink:hover {background:var(--accent-on-ink);color:var(--site-paper)}
.burger {width:40px;height:40px;border-radius:999px;border:1px solid var(--border);background:var(--paper);cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:0}
.burger i {display:block;width:16px;height:1.5px;background:var(--ink)}
.nav-panels {position:relative;z-index:49}
.mega {position:fixed;left:0;right:0;top:68px}
.mega[hidden] {display:none}
.mega .wrap {padding-top:10px}
.mega-card {background:var(--paper);border-radius:24px;box-shadow:var(--site-shadow-mega);padding:28px;display:grid;gap:28px}
.mega-2 {grid-template-columns:1fr 300px}
.mega-grid {display:grid;grid-template-columns:1fr 1fr;gap:4px 12px;align-content:start}
.mega-grid-rows {gap:0 24px}
.mega-grid-2 {gap:12px}
.mega-item {display:flex;gap:14px;padding:14px 16px;border-radius:14px;color:var(--ink)}
.mega-item:hover {background:var(--site-raised);color:var(--ink)}
.mega-item b {display:block;font-size:15px;font-weight:700}
.mega-item small {display:block;font-size:12.5px;color:var(--muted);margin-top:3px;line-height:1.45}
.mega-item-col {flex-direction:column;gap:3px;padding:12px 14px;border-radius:12px}
.mega-item-col b {font-size:14px}
.mega-item-col small {margin-top:0;font-size:12px;line-height:1.4}
.mega-item-tint {background:var(--tint)}
.mega-item-tint:hover {background:var(--site-rose)}
.mega-num {font-family:var(--serif);font-weight:400;font-style:italic;font-size:22px;color:var(--accent);line-height:1;width:30px;flex:none;padding-top:2px}
.mega-city {display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:14px 16px;border-radius:14px;color:var(--ink);border-bottom:1px solid var(--hairline)}
.mega-city:hover {background:var(--site-raised);color:var(--ink)}
.mega-city span {font-family:var(--serif);font-weight:400;font-size:24px;letter-spacing:-.015em}
.mega-city small {font-size:12px;color:var(--muted);white-space:nowrap}
.mega-tool {display:flex;flex-direction:column;gap:6px;padding:16px;border-radius:16px;color:var(--ink);background:var(--site-raised)}
.mega-tool:hover {background:var(--tint);color:var(--ink)}
.mega-tool .mega-num {width:auto;padding:0}
.mega-tool b {font-size:15px;font-weight:700}
.mega-tool small {font-size:12.5px;color:var(--muted);line-height:1.45}
.mega-card.mega-g {grid-template-columns:260px minmax(0,1fr);align-items:start;gap:16px;padding:16px;min-height:300px}
.mega-cats {display:flex;flex-direction:column;gap:2px;background:var(--site-raised);border-radius:10px;padding:8px;align-self:stretch}
.mega-cat {display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-radius:14px;color:var(--ink)}
.mega-cat b {display:block;font-size:15px;font-weight:700}
.mega-cat small {display:block;font-size:12px;color:var(--muted);margin-top:2px}
.mega-cat i {font-style:normal;font-size:14px;color:var(--muted)}
.mega-cat:hover,.mega-cat[aria-current="true"] {background:var(--site-sunk);color:var(--ink)}
.mega-cat[aria-current="true"] i {color:var(--accent)}
.mega-glist {grid-column:2;grid-row:1;display:grid;grid-template-columns:1fr 1fr;gap:2px 12px;align-content:start;padding:8px 8px 8px 4px}
.mega-glist[hidden] {display:none}
.mega-side {border-radius:10px;padding:26px;display:flex;flex-direction:column;gap:12px;min-height:100%}
.mega-side-ink {background:var(--ink);color:var(--site-paper)}
.mega-side-ink .mega-side-text {color:var(--on-ink)}
.mega-side .eyebrow {color:var(--accent)}
.mega-side-ink .eyebrow,.band .eyebrow {color:var(--site-pink-label)}
.mega-side-ink:hover {color:var(--site-paper)}
.mega-side-canvas {background:var(--site-raised);color:var(--ink);gap:10px}
.mega-side-canvas .mega-side-text {color:var(--muted)}
.mega-side-title {font-family:var(--serif);font-weight:400;font-size:30px;letter-spacing:-.02em;line-height:1.05}
.mega-side-canvas .mega-side-title,#mega-tools .mega-side-title {font-size:26px;line-height:1.08}
.mega-side-text {font-size:13px;line-height:1.55}
.mega-side-cta {margin-top:auto;padding-top:10px;font-size:13px;font-weight:700;color:var(--site-paper)}
.menu {display:none;position:fixed;inset:0;z-index:100;background:var(--ink);color:var(--site-paper);overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;animation:menuIn .55s cubic-bezier(.76,0,.24,1) both}
@keyframes menuIn {from {clip-path:inset(0 0 100% 0)} to {clip-path:inset(0 0 0 0)}}
@keyframes linkIn {from {opacity:0;transform:translateY(22px)} to {opacity:1;transform:none}}
.menu-top {position:sticky;top:0;z-index:1;display:flex;justify-content:space-between;align-items:center;height:64px;padding:0 20px;background:var(--ink)}
.menu-brand {display:flex;align-items:center;gap:10px;color:var(--site-paper);min-height:44px}
.menu-brand img {width:26px;height:26px;display:block}
.menu-brand span {font-family:var(--serif);font-size:22px}
.menu-close {width:44px;height:44px;border:0;background:transparent;color:var(--site-paper);cursor:pointer;font-family:var(--serif);font-size:34px;line-height:1;padding:0}
.menu-in {padding:8px 20px 40px}
.menu-h {font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--on-ink);margin:36px 0 12px;animation:linkIn .6s cubic-bezier(.2,.7,.2,1) both}
.menu-list,.menu-grid {display:grid;grid-template-columns:1fr;column-gap:18px;animation:linkIn .6s cubic-bezier(.2,.7,.2,1) both}
.menu-grid {grid-template-columns:1fr 1fr}
.menu-list a {font-size:15px;line-height:1.35;padding:11px 0;border-bottom:1px solid var(--site-ink-line);color:var(--site-paper);display:flex;align-items:center;min-height:44px}
.menu-serif a {font-family:var(--serif);font-size:clamp(22px,6.4vw,26px);letter-spacing:-.02em;line-height:1.1;padding:12px 0;border-bottom:1px solid var(--site-ink-line);color:var(--site-paper);display:flex;align-items:center;min-height:44px}
.menu-accent {color:var(--site-pink-label) !important}
.menu-home {display:none;flex-direction:column;padding-top:8px}
.menu-home a {font-family:var(--serif);font-size:clamp(34px,10.5vw,44px);letter-spacing:-.025em;line-height:1;padding:15px 0;border-bottom:1px solid var(--site-ink-line);display:flex;justify-content:space-between;align-items:baseline;color:var(--site-paper);animation:linkIn .7s cubic-bezier(.2,.7,.2,1) both}
.menu-home a:nth-child(1) {animation-delay:.18s} .menu-home a:nth-child(2) {animation-delay:.24s} .menu-home a:nth-child(3) {animation-delay:.3s}
.menu-home a:nth-child(4) {animation-delay:.36s} .menu-home a:nth-child(5) {animation-delay:.42s} .menu-home a:nth-child(6) {animation-delay:.48s}
.menu-home i {font-family:var(--sans);font-style:normal;font-size:11px;letter-spacing:.12em;color:var(--on-ink-soft)}
html[data-section="home"] .menu-home {display:flex}
html[data-section="home"] .menu-home {margin-bottom:8px}
.menu-in > :nth-child(1) {animation-delay:.16s} .menu-in > :nth-child(2) {animation-delay:.21s}
.menu-in > :nth-child(3) {animation-delay:.26s} .menu-in > :nth-child(4) {animation-delay:.31s}
.menu-in > :nth-child(5) {animation-delay:.36s} .menu-in > :nth-child(6) {animation-delay:.41s}
.menu-in > :nth-child(7) {animation-delay:.46s} .menu-in > :nth-child(8) {animation-delay:.51s}
.menu-end {margin-top:40px;animation:linkIn .6s cubic-bezier(.2,.7,.2,1) both;animation-delay:.6s}
.menu-cta {display:flex;align-items:center;justify-content:center;min-height:44px;text-align:center;padding:17px 24px;border-radius:6px;background:var(--site-paper);color:var(--ink);font-weight:500;font-size:15px}
.menu-cta:hover {background:var(--accent-on-ink);color:var(--site-paper)}
.menu-foot {display:flex;flex-wrap:wrap;gap:0 22px;margin-top:18px;font-size:13px}
.menu-foot a {color:var(--on-ink);min-height:44px;display:inline-flex;align-items:center}
body.menu-open {overflow:hidden}
.cta-bar {display:none;position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:40;animation:barIn .45s cubic-bezier(.2,.7,.2,1) both}
@keyframes barIn {from {transform:translateY(100%)} to {transform:none}}
.cta-bar a {display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px 14px 20px;border-radius:12px;background:var(--ink);color:var(--site-paper);box-shadow:var(--site-shadow-bar)}
.cta-bar a > span {display:flex;flex-direction:column;gap:2px;min-width:0}
.cta-bar b {font-size:14.5px;font-weight:500;line-height:1.2}
.cta-bar small {font-size:12px;color:var(--on-ink);line-height:1.2}
.cta-bar i {flex:none;width:36px;height:36px;border-radius:999px;background:var(--site-paper);color:var(--ink);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-style:normal;font-size:20px;line-height:1}
.band {background:var(--ink);color:var(--site-paper);margin-top:120px}
.close-wrap {padding-top:140px}
.close {display:grid;grid-template-columns:1.15fr 1fr;gap:56px;align-items:center;position:relative;overflow:hidden}
.close-pitch {position:relative;min-width:0}
.close-brand {display:flex;align-items:center;gap:10px;margin-bottom:22px}
.close-brand img {width:28px;height:28px;display:block}
.close .h2 {font-size:60px;letter-spacing:-.025em;line-height:1.0;margin-bottom:20px;color:var(--site-paper)}
.close .h2 em {font-style:italic;color:var(--on-ink)}
.close-text {font-size:15.5px;line-height:1.65;color:var(--on-ink);max-width:480px}
.close-stats {display:flex;gap:36px;flex-wrap:wrap;margin-top:32px;padding-top:24px;border-top:1px solid var(--site-ink-line)}
.close-stats b {display:block;font-size:34px;color:var(--site-paper)}
.close-stats span {display:block;font-size:12px;color:var(--on-ink);margin-top:6px}
.close-card {position:relative;display:flex;flex-direction:column;gap:14px;min-width:0}
.close-card-title {font-family:var(--serif);font-size:26px;letter-spacing:-.02em;line-height:1.1;color:var(--site-paper)}
.close-card-text {font-size:14px;line-height:1.6;color:var(--on-ink)}
.close-card-note {font-size:12px;color:var(--on-ink);line-height:1.55;text-align:center}
.ea,.ea-form {display:flex;flex-direction:column;gap:14px}
.ea-fields {display:grid;grid-template-columns:1fr 1fr;gap:14px 20px}
.ea-wide {grid-column:1 / -1}
.ea-field {display:flex;flex-direction:column;gap:2px;min-width:0}
.ea-label {font-size:12.5px;font-weight:700;color:var(--on-ink);transition:color .18s ease}
.ea-opt {font-weight:400}
.ea-input {width:100%;min-height:44px;border:0;border-bottom:1px solid color-mix(in srgb,var(--site-paper) 50%,transparent);border-radius:0;padding:10px 0 12px;font-family:inherit;font-size:20px;color:var(--site-paper);caret-color:var(--accent-on-ink);background:transparent;outline:none;-webkit-appearance:none;appearance:none;transition:border-color .18s ease,box-shadow .18s ease}
.ea-input::placeholder {color:var(--site-placeholder)}
.ea-input:hover {border-bottom-color:color-mix(in srgb,var(--site-paper) 80%,transparent)}
.site .ea .ea-input:focus,.site .ea .ea-input:focus-visible {outline:none;border-radius:0;border-bottom-color:var(--accent-on-ink);box-shadow:0 1px 0 var(--accent-on-ink)}
.ea-field:focus-within .ea-label {color:var(--site-paper)}
.ea-input:-webkit-autofill,.ea-input:-webkit-autofill:hover {-webkit-text-fill-color:var(--site-paper);box-shadow:0 0 0 1000px var(--ink) inset;transition:background-color 9999s ease 0s}
.site .ea .ea-input:-webkit-autofill:focus {-webkit-text-fill-color:var(--site-paper);box-shadow:0 0 0 1000px var(--ink) inset,0 1px 0 var(--accent-on-ink)}
.ea-submit {width:100%}
.band .btn-paper {background:var(--site-paper);color:var(--ink);font-weight:500;font-size:14px;padding:15px 24px}
.band .btn-paper:hover {background:var(--accent-on-ink);color:var(--site-paper)}
.ea-error {font-size:13px;line-height:1.5;color:var(--site-pink-label)}
.ea-done {font-size:14px;line-height:1.6;color:var(--on-ink)}
.ea-done b {display:block;font-family:var(--serif);font-weight:400;font-size:22px;letter-spacing:-.02em;line-height:1.15;color:var(--site-paper);margin-bottom:6px}
.close-card-note .ea-signin {color:var(--on-ink);text-decoration:underline;text-underline-offset:2px}
.close-card-note .ea-signin:hover {color:var(--site-paper)}
.foot {margin-top:120px;border-top:1px solid var(--site-ink-line);overflow:hidden}
.foot .wrap {padding-top:72px}
.foot-grid {display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr 1fr;gap:48px;padding-bottom:64px}
.foot-logo {display:flex;align-items:center;gap:10px;margin-bottom:14px;color:var(--site-paper)}
.foot-logo img {width:28px;height:28px;display:block}
.foot-logo span {font-family:var(--serif);font-size:20px}
.foot-tagline {font-size:13px;line-height:1.6;color:var(--on-ink);max-width:260px}
.foot-col {display:flex;flex-direction:column;gap:12px;font-size:13px}
.foot-col a {color:var(--site-ink-link)}
.foot-col a:hover {color:var(--site-paper)}
.foot-h {font-size:10.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--on-ink-soft)}
.foot-copy {display:none}
.wordmark {font-family:var(--serif);font-size:220px;line-height:.72;letter-spacing:-.03em;color:var(--site-ink-ghost);text-align:center;user-select:none;margin:0}
@media (max-width:860px) {.menu:not([hidden]) {display:block}
.cta-bar:not([hidden]) {display:block}
.nav-brand {min-height:44px}
.nav .lang {display:none}
.nav .btn-sm {padding:8px 12px;font-size:12px;min-height:44px}
.burger {width:44px;height:44px}
.band {margin-top:72px}
.close-wrap {padding-top:72px}
.close {grid-template-columns:1fr;gap:28px}
.close .h2 {font-size:44px}
.ea-fields {grid-template-columns:1fr}
.ea-input {font-size:18px}
.ea-submit {min-height:46px}
.foot {margin-top:80px}
.foot-grid {grid-template-columns:1fr 1fr;gap:28px}
.foot-brand {grid-column:1 / -1}
.foot-col {gap:0}
.foot-col a {padding:4px 0;min-height:44px;display:flex;align-items:center}
.wordmark {font-size:84px}}
@media (prefers-reduced-motion:reduce) {.menu,.menu-h,.menu-list,.menu-grid,.menu-end,.cta-bar {animation:none}}
#access {scroll-margin-top:92px}
html.ea-open {overflow:hidden}
.ea-dialog {border:0;padding:36px 34px 28px;width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;overscroll-behavior:contain;background:var(--ink);color:var(--site-paper);border-radius:14px;box-shadow:var(--site-shadow-plan)}
.ea-dialog::backdrop {background:color-mix(in srgb,var(--ink) 55%,transparent);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
.ea-dialog[open] {animation:eaIn .28s cubic-bezier(.2,.7,.2,1)}
@keyframes eaIn {from {opacity:0;transform:translateY(14px)} to {opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce) {.ea-dialog[open] {animation:none}}
.ea-dialog .close-brand {margin:0 44px 18px 0}
.ea-dialog-x {position:absolute;top:14px;right:14px;width:44px;height:44px;border-radius:999px;border:1px solid var(--site-ink-line);background:none;color:var(--site-paper);font-size:22px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}
.ea-dialog-x:hover {background:var(--site-ink-line)}
.site .ea-dialog-x:focus-visible {border-radius:999px;outline-offset:2px}
.ea-dialog .close-card-title {font-size:34px}
html[data-site] .ea-dialog .close-card-title,html[data-site] .ea-dialog .close-card-text {display:block}
.ea-dialog .close-card-text {margin-top:8px}
.ea-grab {display:none}
@media (max-width:860px) {.ea-dialog {width:100%;max-width:100%;margin:auto 0 0;padding:30px 20px calc(24px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0;max-height:92dvh;touch-action:pan-y}
.ea-dialog[open] {animation-name:eaUp;animation-duration:.34s}
@keyframes eaUp {from {transform:translateY(100%)} to {transform:none}}
.ea-grab {display:block;position:absolute;top:10px;left:50%;width:40px;height:5px;margin-left:-20px;border-radius:999px;background:color-mix(in srgb,var(--site-paper) 28%,transparent)}
.ea-dialog-x {top:16px;right:12px}
.ea-dialog .close-brand {margin-bottom:14px}
.ea-dialog .close-card-title {font-size:30px;line-height:1.05}
.ea-dialog .close-card-text {font-size:14px}
.ea-dialog.is-dragging {animation:none;transition:none}
.ea-dialog.is-settling {transition:transform .28s cubic-bezier(.32,.72,0,1)}}

/* ==== site/src/css/20-components.css ==== */
.btn {display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 22px;min-height:44px;border-radius:6px;font-size:14px;font-weight:700;line-height:1.2;border:1px solid transparent;cursor:pointer;text-align:center;white-space:nowrap}
.btn-accent {background:var(--accent);color:var(--on-ink-strong)}
.btn-accent:hover {background:var(--accent-hover);color:var(--on-ink-strong)}
.btn-ink {background:var(--ink);color:var(--on-ink-strong)}
.btn-ink:hover {background:var(--accent);color:var(--on-ink-strong)}
.btn-ghost {background:transparent;color:var(--ink);border-color:var(--border)}
.btn-ghost:hover {background:var(--paper);color:var(--ink)}
.btn-paper {background:var(--paper);color:var(--ink)}
.btn-paper:hover {color:var(--accent)}
.btn-lg {padding:15px 28px;font-size:15px}
.btn-sm {padding:9px 20px;min-height:40px;font-size:13px}
.btn[disabled],.btn[aria-disabled="true"] {background:var(--dash-strong);color:var(--on-ink-strong);cursor:default}
.btns {display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.link {color:var(--accent);font-weight:700}
.link:hover {color:var(--accent-hover)}
.link-ink {color:var(--ink);font-weight:700}
.link-ink:hover {color:var(--accent)}
.card {background:var(--paper);border-radius:12px;padding:28px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:10px}
.card-sm {padding:20px 22px;border-radius:10px}
.card-ink {background:var(--ink);color:var(--on-ink-strong);box-shadow:none}
.card-ink .muted,.card-ink .meta,.card-ink .small-muted {color:var(--on-ink)}
.card-ink .eyebrow {color:var(--site-pink-label)}
.card-canvas {background:var(--board);box-shadow:none}
.card-tint {background:var(--tint);box-shadow:none}
.card-tint,.gd-tool,.gd-note,.tl-soon {--ink-2:var(--site-muted-on-tint);--muted:var(--site-muted-on-tint);--accent:var(--ai)}
.card-dashed {background:transparent;box-shadow:none;border:1.5px dashed var(--dash-strong)}
.card > .btn,.card > .btns {margin-top:auto;align-self:flex-start}
.card-title {font-size:17px;font-weight:700;letter-spacing:-.01em}
.card-text {font-size:14px;line-height:1.6;color:var(--ink-2)}
.card-ink .card-text {color:var(--on-ink)}
.hairline {border-top:1px solid var(--hairline)}
.rows > * {padding:14px 0;border-top:1px solid var(--hairline)}
.rows > :first-child {border-top:0}
.row {display:flex;align-items:center;gap:12px}
.row > .grow {flex:1;min-width:0}
.row b {display:block;font-size:14px;font-weight:700}
.row small {display:block;font-size:12px;color:var(--muted)}
.head {max-width:760px;margin-bottom:40px}
.head .eyebrow {margin-bottom:14px}
.head .h2 {margin-bottom:16px}
.head .h3 {margin-bottom:12px}
.head-center {text-align:center;margin-left:auto;margin-right:auto}
.head-row {display:flex;align-items:flex-end;justify-content:space-between;gap:24px;border-bottom:1px solid var(--hairline-side);padding-bottom:28px;margin-bottom:40px}
.hero {padding-top:96px}
.hero-2 {display:grid;grid-template-columns:1.1fr 1fr;gap:56px;align-items:center}
.crumbs {display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--muted);margin-bottom:18px;flex-wrap:wrap}
.crumbs a:hover {color:var(--ink)}
.crumbs i {font-style:normal;opacity:.6}
.badge {display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;background:var(--paper);font-size:10.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--accent);box-shadow:var(--shadow-card)}
.badge-ink {background:var(--ink);color:var(--on-ink-strong)}
.dot {display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--accent)}
.dot-pulse {animation:pulse 2.4s ease-in-out infinite}
@keyframes pulse {0%,100% {opacity:1} 50% {opacity:.35}}
@media (prefers-reduced-motion:reduce) {.dot-pulse {animation:none}}
.hero .h1 {margin:22px 0 22px}
.hero .lead {max-width:640px}
.hero .btns {margin-top:30px}
.hero-note {font-size:12.5px;color:var(--muted);margin-top:28px}
.phone-wrap {position:relative;height:640px;overflow:clip}
.phone {position:absolute;left:50%;top:44px;margin-left:-207px;width:414px;height:868px;transform:scale(.9);transform-origin:top center}
.phone-shell {width:414px;height:868px;background:var(--ink);border-radius:64px;padding:12px;box-shadow:0 30px 70px rgba(28,23,25,.18)}
.phone-screen {width:390px;height:844px;border-radius:52px;overflow:hidden;background:var(--board);position:relative;color:var(--ink);display:flex;flex-direction:column;text-align:left;font-size:13px;line-height:1.4}
.phone-notch {position:absolute;top:14px;left:50%;margin-left:-60px;width:120px;height:35px;border-radius:20px;background:var(--ink);z-index:4}
.phone-status {height:58px;flex:none;display:flex;align-items:flex-end;justify-content:space-between;padding:0 32px 4px;font-size:15px;font-weight:600}
.phone-status > span:last-child {display:flex;align-items:center;gap:6px}
.phone-bars {display:flex;align-items:flex-end;gap:2px}
.phone-bars i {display:block;width:3px;background:var(--ink);border-radius:1px}
.phone-bars i:nth-child(1) {height:5px} .phone-bars i:nth-child(2) {height:7px} .phone-bars i:nth-child(3) {height:9px} .phone-bars i:nth-child(4) {height:11px}
.phone-batt {display:block;width:25px;height:12px;border:1.5px solid var(--ink);border-radius:4px;padding:1.5px}
.phone-batt i {display:block;height:100%;width:78%;background:var(--ink);border-radius:1.5px}
.phone-body {flex:1;min-height:0;overflow:hidden;padding:8px 18px 0}
.phone-sm {height:520px}
.phone-sm .phone {transform:scale(.72);top:20px}
.app-title {display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.app-title b {font-weight:700;letter-spacing:-.02em;font-size:23px}
.app-title small {font-size:12.5px;color:var(--muted)}
.app-label {font-size:10.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--accent);margin:18px 0 8px}
.app-label-muted {color:var(--muted)}
.app-card {background:var(--paper);border-radius:18px;box-shadow:var(--shadow-card);padding:15px 16px}
.app-card + .app-card {margin-top:9px}
.app-card-rows {padding:4px 16px}
.app-card-dashed {background:var(--paper);border:1.5px dashed var(--dash-strong);box-shadow:none}
.app-card-ink {background:var(--ink);color:var(--on-ink-strong);box-shadow:none}
.app-top {display:flex;align-items:center;gap:8px}
.app-top .grow {flex:1}
.app-chip {display:inline-block;background:var(--data-bg);border-radius:999px;padding:3px 11px;font-size:11px;font-weight:700}
.app-chip-tint {background:var(--tint);color:var(--ai)}
.app-chip-warn {background:var(--watch-bg);color:var(--watch-ink);padding:3px 9px;font-size:10.5px}
.app-chip-ok {background:var(--good-bg);color:var(--good);padding:3px 9px;font-size:10.5px}
.app-chip-late {background:var(--overdue-bg);color:var(--overdue);padding:3px 9px;font-size:10.5px}
.app-chip-opt {border:1px dashed var(--accent);color:var(--accent);background:transparent;padding:3px 9px;font-size:10.5px}
.app-status {font-size:10.5px;font-weight:700;letter-spacing:.04em}
.app-status-ok {color:var(--good)} .app-status-warn {color:var(--watch-ink)} .app-status-late {color:var(--overdue)} .app-status-opt {color:var(--accent)}
.app-name {font-weight:700;letter-spacing:-.02em;font-size:18px;margin:9px 0 2px}
.app-line {font-size:13px;color:var(--muted)}
.app-line .fig {font-size:16px;color:var(--ink)}
.app-card-ink .app-line {color:var(--on-ink)}
.app-card-ink .app-line .fig {color:var(--on-ink-strong)}
.app-note {display:flex;align-items:center;gap:8px;margin-top:12px;padding-top:11px;border-top:1px solid var(--hairline);font-size:12px;color:var(--ink-2)}
.app-note i {font-style:normal;color:var(--accent)}
.app-row {display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--hairline)}
.app-row:last-child {border-bottom:0}
.app-row .grow {min-width:0;flex:1}
.app-row b {display:block;font-size:14px;font-weight:700}
.app-row small {display:block;font-size:12px;color:var(--muted)}
.app-row .fig {font-size:20px}
.app-kpi {display:grid;grid-template-columns:1fr 1fr;gap:9px}
.app-kpi .app-card {display:flex;flex-direction:column;gap:6px}
.app-kpi .fig {font-size:30px}
.app-tabs {display:flex;gap:6px;margin:12px 0 4px;overflow:hidden}
.app-tabs span {padding:7px 12px;border-radius:999px;font-size:12px;font-weight:700;color:var(--ink-2);background:var(--paper)}
.app-tabs span.on {background:var(--ink);color:var(--on-ink-strong)}
.app-pill {display:inline-block;padding:7px 12px;border-radius:999px;font-size:12px;font-weight:700}
.app-pill-accent {background:var(--accent);color:var(--on-ink-strong)}
.app-pill-ink {background:var(--ink);color:var(--on-ink-strong)}
.app-pill-ghost {border:1px solid var(--border);color:var(--ink)}
.app-pill-tint {background:var(--tint);color:var(--ai)}
.app-avatar {display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--data-bg);color:var(--data);font-size:11px;font-weight:700;flex:none}
.bar {position:relative;height:6px;border-radius:999px;background:var(--hairline);overflow:hidden}
.bar i {position:absolute;left:0;top:0;bottom:0;border-radius:999px;background:var(--good)}
.bar i.warn {background:var(--watch)}
.bar i.late {background:var(--overdue)}
.bar-lg {height:10px}
.bar-dashed {background:repeating-linear-gradient(90deg,var(--dash-strong) 0 6px,transparent 6px 10px)}
.legend {display:flex;gap:18px;flex-wrap:wrap;font-size:12.5px;color:var(--muted)}
.legend span {display:inline-flex;align-items:center;gap:7px}
.legend i {display:inline-block;width:10px;height:10px;border-radius:3px;background:var(--good)}
.legend i.warn {background:var(--watch)} .legend i.late {background:var(--overdue)}
.legend i.opt {background:transparent;border:1.5px dashed var(--accent)} .legend i.ink {background:var(--ink)} .legend i.tint {background:var(--tint)}
.conf {display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:999px;font-size:11px;font-weight:700;white-space:nowrap;color:var(--ink)}
.conf::before {content:"";width:7px;height:7px;border-radius:50%;background:var(--good);flex:none}
.conf-sure {background:var(--good-bg)}
.conf-likely {background:var(--watch-bg)} .conf-likely::before {background:var(--watch)}
.conf-check {background:var(--overdue-bg)} .conf-check::before {background:var(--overdue)}
.notif {background:var(--paper);border-radius:10px;box-shadow:var(--shadow-card);padding:16px 18px;display:flex;gap:12px;align-items:flex-start}
.notif img {width:34px;height:34px;border-radius:10px;flex:none}
.notif-body {flex:1;min-width:0}
.notif-head {display:flex;justify-content:space-between;gap:10px;font-size:11px;color:var(--muted)}
.notif-head b {font-size:12.5px;color:var(--ink)}
.notif-text {font-size:14px;line-height:1.5;margin-top:4px}
.notif-actions {display:flex;gap:8px;margin-top:10px}
.notif-actions span {padding:6px 12px;border-radius:999px;font-size:12px;font-weight:700;background:var(--ink);color:var(--on-ink-strong)}
.notif-actions span + span {background:var(--board);color:var(--ink)}
.steps {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px}
.step {display:flex;flex-direction:column}
.step .num {font-family:var(--serif);font-weight:400;font-style:italic;font-size:56px;line-height:1;color:var(--accent)}
.step b {font-size:19px;font-weight:700;margin:18px 0 10px}
.step p {font-size:14.5px;line-height:1.6;color:var(--ink-2)}
.quote {text-align:center;padding:20px 0}
.quote p {font-family:var(--serif);font-size:44px;letter-spacing:-.02em;line-height:1.1;max-width:900px;margin:0 auto}
.quote p em {font-style:italic;color:var(--accent)}
.quote small {display:block;margin-top:18px;font-size:12.5px;color:var(--muted)}
.say p {font-size:34px;max-width:760px}
.say small {font-weight:600}
.faq {display:flex;flex-direction:column;border-top:1px solid var(--site-line)}
.faq-q {border-bottom:1px solid var(--site-line)}
.faq-q summary {list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 0;min-height:44px}
.faq-q summary::-webkit-details-marker {display:none}
.faq-q h3 {font-family:var(--serif);font-weight:400;font-size:25px;letter-spacing:-.015em;line-height:1.15}
.faq-plus {flex:none;width:30px;height:30px;border-radius:50%;border:1px solid var(--site-line);display:flex;align-items:center;justify-content:center;font-size:20px;line-height:1;font-weight:300;transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.faq-q[open] .faq-plus {transform:rotate(45deg)}
.faq-q summary:hover h3 {color:var(--accent)}
.faq-q p {font-size:15.5px;line-height:1.65;color:var(--muted);padding:0 44px 22px 0;animation:linkIn .35s cubic-bezier(.2,.7,.2,1) both}
.faq-q p + p {margin-top:-10px}
@media (prefers-reduced-motion:reduce) {.faq-q p {animation:none} .faq-plus {transition:none}}
.faq-split {display:grid;grid-template-columns:1fr 1.6fr;gap:56px;align-items:start}
.links {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.links a {background:var(--paper);border-radius:12px;padding:28px 26px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:0;color:var(--ink)}
.links a:hover {color:var(--ink);box-shadow:var(--shadow-lift)}
.links b {font-family:var(--serif);font-weight:400;font-size:26px;letter-spacing:-.015em;line-height:1.1;margin-bottom:10px}
.links small {font-size:13.5px;color:var(--muted);line-height:1.55}
.links .eyebrow {font-size:11px;letter-spacing:.16em;margin-bottom:12px}
.links i {font-style:normal;margin-top:auto;padding-top:18px;font-size:13px;font-weight:700;color:var(--accent)}
.table {background:var(--paper);border-radius:10px;box-shadow:var(--shadow-card);overflow:hidden}
.table table {width:100%}
.table th,.table td {padding:14px 18px;text-align:left;border-top:1px solid var(--hairline);font-size:14px;vertical-align:top;line-height:1.5}
.table thead th {border-top:0;font-size:10.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);padding:16px 18px 12px}
.table td.r,.table th.r {text-align:right}
.table td .fig {font-size:16px}
.table-scroll {overflow-x:auto}
.table thead th {border-bottom:1.5px solid var(--ink)}
.kv {display:grid;grid-template-columns:max-content 1fr;gap:10px 20px;font-size:14px}
.kv dt {color:var(--muted)}
.kv dd {margin:0}
.marquee {overflow:hidden;white-space:nowrap;font-family:var(--serif);font-size:44px;letter-spacing:-.02em;color:var(--ink);mask-image:linear-gradient(90deg,transparent,black 8%,black 92%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,black 8%,black 92%,transparent)}
.marquee-track {display:inline-flex;gap:0;animation:marquee 36s linear infinite}
.marquee-track span {padding:0 28px}
.marquee-track i {font-style:normal;color:var(--accent)}
@keyframes marquee {from {transform:translateX(0)} to {transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce) {.marquee-track {animation:none}}
.lede {font-size:18px;font-weight:600;line-height:1.5;color:var(--ink);max-width:560px;margin-bottom:14px}
.pic {position:relative;border-radius:12px;overflow:hidden;background:linear-gradient(160deg,var(--tint),var(--board) 60%,var(--paper));aspect-ratio:4 / 5;display:flex;align-items:flex-end;padding:22px}
.pic-wide {aspect-ratio:16 / 10}
.pic-square {aspect-ratio:1}
.pic::after {content:"";position:absolute;inset:0;background:url(logo-mark.svg) center / 34% no-repeat;opacity:.07}
.pic span {position:relative;font-size:10.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--decor)}
.pic img {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.pic:has(img)::after,.pic:has(img) span {display:none}
@media (max-width:860px) {.btn-sm {min-height:44px}
.link,.link-ink {display:inline-flex;align-items:center;min-height:44px}
.hero {padding-top:56px}
.hero-2 {grid-template-columns:1fr;gap:32px}
.btns {flex-direction:column;align-items:stretch}
.btns .btn {width:100%}
.head {margin-bottom:28px}
.head-row {flex-direction:column;align-items:flex-start;gap:12px;padding-bottom:20px;margin-bottom:28px}
.phone-wrap {height:440px;border-top:1px solid var(--site-line)}
.phone {transform:scale(.74);top:24px}
.steps,.links {grid-template-columns:1fr;gap:14px}
.steps {gap:32px}
.faq-split {grid-template-columns:1fr;gap:14px}
.quote p {font-size:30px;padding:0 4px}
.marquee {font-size:22px}
.table th,.table td {padding:12px 14px;font-size:13px}
.table.table-scroll {overflow:visible;padding:4px 18px 8px}
.table table.stack,.table table.stack tbody,.table table.stack tr,.table table.stack td {display:block;min-width:0;width:auto}
.table table.stack thead {display:none}
.table table.stack tr {padding:16px 0;border-bottom:1px solid var(--hairline)}
.table table.stack tr:last-child {border-bottom:0}
.table table.stack td {border:0;padding:0;margin-top:8px;text-align:left;font-size:15px;line-height:1.5}
.table table.stack td:first-child {margin:0 0 8px;font-size:22px;letter-spacing:-.015em;line-height:1.15;color:var(--ink)}
.table table.stack td[data-l]::before {content:attr(data-l);display:block;font-family:var(--sans);font-size:10.5px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:3px}}
.head-aside {font-size:14px;color:var(--muted);max-width:340px;text-align:right;line-height:1.55}
.tabs {display:flex;gap:8px;flex-wrap:wrap;margin-bottom:40px}
.tab {border:1.5px solid var(--ink);background:transparent;color:var(--ink);cursor:pointer;padding:11px 22px;min-height:44px;border-radius:6px;font-size:14.5px;font-weight:600;transition:background .18s,color .18s;white-space:nowrap}
.tab.on,.tab[aria-selected="true"] {background:var(--ink);color:var(--site-paper)}
.price-toggle {display:inline-flex;background:var(--paper);border-radius:999px;padding:4px;gap:2px;margin:40px 0 28px;box-shadow:var(--shadow-card)}
.price-toggle button {border:0;cursor:pointer;padding:9px 22px;min-height:44px;border-radius:999px;font-size:13px;font-weight:700;background:transparent;color:var(--muted);transition:all .18s}
.price-toggle button.on {background:var(--ink);color:var(--site-paper)}
.plans {display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:stretch}
.plan {background:var(--paper);color:var(--ink);border-radius:12px;padding:36px 32px;box-shadow:var(--shadow-card);display:flex;flex-direction:column;position:relative}
.plan-ink {background:var(--ink);color:var(--site-paper);box-shadow:var(--site-shadow-plan)}
.plan-name {font-size:17px;font-weight:700;display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.plan-badge {background:var(--accent);color:var(--paper);font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:5px 12px;border-radius:999px;white-space:nowrap}
.plan-sub {font-size:12px;color:var(--decor);margin-bottom:22px}
.plan-ink .plan-sub,.plan-ink .plan-period {color:var(--on-ink)}
.plan-price {display:flex;align-items:baseline;gap:8px}
.plan-price .fig {font-size:52px;letter-spacing:-.02em}
.plan-per {font-size:14px;font-weight:600;color:var(--muted)}
.plan-ink .plan-per {color:var(--on-ink)}
.plan-period {font-size:12px;color:var(--decor);margin:8px 0 26px}
.site .plan-list {display:flex;flex-direction:column;gap:12px;font-size:14px;color:var(--muted);flex:1;border-top:1px solid var(--hairline);padding-top:22px}
.site .plan-ink .plan-list {color:var(--site-ink-text);border-top-color:var(--site-ink-line)}
.plan .btn {margin-top:28px;width:100%}
.plans-note {margin-top:22px}
@media (max-width:860px) {.head-aside {text-align:left;max-width:none}
.tabs {overflow-x:auto;flex-wrap:nowrap;padding-bottom:6px;-webkit-overflow-scrolling:touch;margin-bottom:24px}
.tab {padding:10px 18px;font-size:13.5px}
.plans {grid-template-columns:1fr}}
.yr {background:var(--paper);border-radius:14px;box-shadow:var(--shadow-card);padding:28px 30px 8px;margin-top:64px;min-width:0}
.yr-head {display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap;margin-bottom:8px}
.yr-title {font-family:var(--serif);font-size:30px;letter-spacing:-.02em}
.yr-title span {color:var(--decor)}
.yr-sub {font-size:12px;color:var(--muted)}
.yr-cols {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 40px}
.yr-m {display:grid;grid-template-columns:64px minmax(0,1fr);gap:0 18px;padding:12px 0;border-bottom:1px solid var(--site-line);align-items:start}
.yr-cols > div > .yr-m:last-child {border-bottom:0}
.yr-name {font-family:var(--serif);font-size:22px;line-height:1.2;color:var(--ink)}
.yr-m.now .yr-name {color:var(--accent)}
.yr-its {display:flex;flex-direction:column;gap:6px;min-height:22px}
.yr-it {border-radius:8px;padding:9px 12px;font-size:13px;line-height:1.35}
.yr-fw {background:var(--ink);color:var(--site-paper)}
.yr-fw small {font-size:inherit;font-weight:500;color:var(--on-ink)}
.yr-cast {border:1.5px dashed color-mix(in srgb,var(--accent) 50%,transparent);color:var(--data)}
.yr-rem {background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--ai)}
.yr-note {color:var(--muted);font-family:var(--serif);font-style:italic;font-size:16px;padding:6px 0}
.yr-it.cont {opacity:.7}
.yr-it.cont span {opacity:.75}
.yr-it.cont span br,.yr-it.cont span small {display:none}
.yr-it.cont small {font-size:11px;letter-spacing:.06em;opacity:.7}
@media (max-width:860px) {.yr {padding:22px 18px 4px;margin-top:40px}
.yr-cols {grid-template-columns:1fr}
.yr-cols > div:first-child > .yr-m:last-child {border-bottom:1px solid var(--site-line)}}

/* ==== site/src/css/25-phones.css ==== */
.app-cal {padding:14px;margin-top:14px}
.app-cal-dows {display:grid;grid-template-columns:repeat(7,1fr);gap:2px;font-size:10px;font-weight:700;color:var(--faint);text-align:center}
.app-cal-grid {display:grid;grid-template-columns:repeat(7,1fr);gap:2px;text-align:center;margin-top:6px;font-family:var(--serif);font-size:16px}
.app-cal-grid span {padding:9px 0;position:relative}
.app-cal-grid .we {color:var(--faint)}
.app-cal-grid .out {color:var(--faint-2)}
.app-cal-grid .d::after {content:"";position:absolute;left:50%;transform:translateX(-50%);bottom:2px;width:5px;height:5px;border-radius:50%;background:var(--accent)}
.app-cal-grid .cast::after {background:var(--data)}
.app-cal-grid .fit::after {background:var(--watch)}
.app-cal-grid .opt::after {background:transparent;border:1.5px dashed var(--accent)}
.app-cal-grid .today {padding:6px 0}
.app-cal-grid .today.out {color:inherit}
.app-cal-grid .today i {display:inline-flex;width:30px;height:30px;border-radius:50%;background:var(--accent);color:var(--on-ink-strong);align-items:center;justify-content:center;font-style:normal}
.app-cal-legend {display:flex;gap:12px;margin-top:12px;padding-top:11px;border-top:1px solid var(--hairline);font-size:10.5px;color:var(--muted)}
.app-cal-legend span {display:flex;gap:5px;align-items:center}
.app-cal-legend i {width:7px;height:7px;border-radius:50%;background:var(--accent)}
.app-cal-legend i.cast {background:var(--data)} .app-cal-legend i.fit {background:var(--watch)} .app-cal-legend i.opt {background:transparent;border:1.5px dashed var(--accent)}
.app-day {width:44px;flex:none;text-align:center}
.app-day small {display:block;font-size:10px;font-weight:700;color:var(--faint);text-transform:uppercase}
.app-day small.on {color:var(--accent)}
.app-day b {display:block;font-size:20px}
.app-edge {width:4px;height:34px;border-radius:2px;background:var(--accent);flex:none}
.app-edge.fit {background:var(--watch)}
.app-pics {display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:12px}
.pic-slot {aspect-ratio:4 / 5;border-radius:10px;overflow:hidden;position:relative;background:linear-gradient(160deg,var(--tint),var(--hairline) 70%);display:flex;align-items:center;justify-content:center}
.pic-slot i {font-size:20px;color:var(--ink);font-style:normal}
.pic-slot img {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.pic-slot i {position:relative;z-index:1}
.pic-slot:has(i)::after {content:"";position:absolute;inset:0;background:rgba(28,23,25,.55)}
.app-ink-actions {display:flex;gap:8px;margin-top:14px}
.app-ink-actions span {background:var(--sidebar-raised);color:var(--on-ink-strong);border-radius:14px;padding:12px 16px;font-size:12.5px;font-weight:700;text-align:center}
.app-ink-actions span.on {flex:1;background:var(--accent)}
.app-ink-actions span.paper {background:var(--paper);color:var(--ink)}
.app-ink-actions-3 span {flex:1;padding:13px 6px}
.app-pill-late {background:var(--overdue);color:var(--on-ink-strong);padding:7px 12px;font-size:11px}
.app-row small.late {color:var(--overdue);margin-top:2px}
.app-pay {padding:14px 0;border-bottom:1px solid var(--hairline)}
.app-pay:last-child {border-bottom:0}
.app-pay .app-top b {font-size:14px}
.app-bar {display:flex;align-items:center;gap:10px;margin-top:8px}
.app-bar .bar {flex:1;height:5px}
.app-bar small {font-size:11px;font-weight:600}
.app-bar small.late {color:var(--overdue);font-weight:700} .app-bar small.warn {color:var(--watch-ink)} .app-bar small.ok {color:var(--good)}
.app-taxcard {display:flex;align-items:center;gap:10px;margin-top:12px}
.app-taxcard > small {font-size:11px;color:var(--on-ink);text-align:right;line-height:1.5}
.app-avatar-sq {border-radius:10px;width:36px;height:36px}
.app-chip-xs {padding:2px 7px;font-size:9.5px;letter-spacing:.08em;margin-left:4px}
.app-contract {margin-top:12px;padding:18px 18px 16px}
.app-krow {display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid var(--sidebar-raised);font-size:13px}
.app-krow:last-child {border-bottom:0}
.app-krow span {flex:1;color:var(--on-ink)}
.app-krow b {font-weight:400}
.app-krow b.fig {font-size:18px}
.app-dash {display:flex;flex-direction:column;gap:12px}
.app-dash-head {display:flex;align-items:center}
.app-dash-head small {display:block;font-size:12px;color:var(--decor)}
.app-dash-head b {display:block;font-size:26px;letter-spacing:-.02em;line-height:1.1}
.app-me {position:relative;width:40px;height:40px;border-radius:50%;background:var(--tint);color:var(--accent);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px}
.app-me i {position:absolute;top:-2px;right:-2px;width:18px;height:18px;border-radius:50%;background:var(--accent);color:var(--on-ink-strong);font-size:11px;display:flex;align-items:center;justify-content:center;border:2px solid var(--board)}
.app-hero {border-radius:26px;padding:20px 22px 18px;position:relative;overflow:hidden;flex:none}
.app-hero > * {position:relative}
.app-hero-num {position:absolute;right:-18px;top:-36px;font-family:var(--serif);font-size:200px;line-height:1;color:var(--sidebar-raised);letter-spacing:-.04em}
.app-hero-name {font-size:32px;line-height:1.05;letter-spacing:-.01em;margin-top:16px}
.app-hero .app-line {margin-top:8px;line-height:1.5}
.app-tendays {padding:16px 16px 6px;border-radius:22px}
.app-days {display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:0 2px;margin-top:12px;text-align:center;font-family:var(--serif);font-size:16px;line-height:1}
.app-days span {display:flex;flex-direction:column;align-items:center;gap:5px}
.app-days span.on {color:var(--accent)} .app-days span.we {color:var(--faint)}
.app-days i {width:6px;height:6px;border-radius:50%}
.app-days i.job {background:var(--accent)} .app-days i.ink {background:var(--ink)} .app-days i.cast {border:1.5px dashed var(--data)} .app-days i.grey {background:var(--faint-2)}
.app-tendays .app-row {padding:12px 0;border-top:1px solid var(--hairline);border-bottom:0}
.app-tendays .app-days + .app-row {margin-top:12px}
.app-daynum {font-size:20px;width:28px;flex:none}
.app-tendays .app-row b:not(.fig) {font-size:13px}
.app-tendays .app-row small {font-size:11.5px;margin-top:2px}
.app-waitline {display:flex;align-items:center;gap:12px;padding:14px 16px}
.app-waitline small {display:block;font-size:12.5px;margin-top:4px;color:var(--ink-2)}
.app-waitline small b {color:var(--ink)}

/* ==== site/src/css/26-screens.css ==== */
.au-dash,.au-mod,.mn {font-family:var(--sans);color:var(--ink);line-height:normal}
.au-dash p,.au-mod p,.mn p {margin:0}
.au-k {display:block;font-size:10.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}
.au-card {background:var(--paper);border-radius:20px;box-shadow:var(--shadow-card)}
.au-inkcard {background:var(--ink);color:var(--on-ink-strong);box-shadow:none}
.au-inkcard .au-k {color:var(--decor)}
.au-inkp {font-size:12.5px;color:var(--faint);margin-top:12px;line-height:1.5}
.au-big {font-family:var(--serif);font-size:40px;letter-spacing:-.02em;line-height:1;margin-top:12px}
.au-btn {display:inline-block;border:1px solid var(--border);border-radius:999px;padding:7px 12px;font-size:11.5px;font-weight:600;text-align:center;color:var(--ink);white-space:nowrap}
.au-btn.ink {background:var(--ink);border-color:var(--ink);color:var(--on-ink-strong)}
.au-btn.paper {background:var(--paper);border-color:var(--paper);color:var(--ink)}
.au-btn.line {border-color:var(--au-line-on-ink);color:var(--on-ink-strong)}
.au-btn.pk {background:var(--accent);border-color:var(--accent);color:var(--on-ink-strong)}
.au-btns {display:flex;gap:8px}
.au-tag {font-size:11.5px;border-radius:999px;padding:4px 10px;font-weight:600;white-space:nowrap}
.au-tag.watch {color:var(--watch-ink);background:var(--watch-bg)}
.au-tag.late {color:var(--overdue);background:var(--overdue-bg)}
.au-dash {display:flex;width:100%;height:100%}
.au-side {width:236px;flex:none;background:var(--sidebar-ink);color:var(--sidebar-text);padding:22px 16px;display:flex;flex-direction:column}
.au-brand {display:flex;align-items:center;gap:10px;padding:0 6px;margin-bottom:22px !important}
.au-brand img {width:28px;height:28px;display:block}
.au-brand span {font-family:var(--serif);font-size:19px;color:var(--logo-fg)}
.au-search {background:var(--sidebar-raised);border-radius:10px;padding:9px 12px;font-size:12.5px;color:var(--decor);display:flex;justify-content:space-between;margin-bottom:22px !important}
.au-search span + span {font-size:11px}
.au-grp {font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);padding:0 12px;margin:18px 0 8px !important}
.au-grp:first-of-type,.au-search + .au-grp {margin-top:0 !important}
.au-nav {padding:9px 12px;font-size:13.5px;display:flex;justify-content:space-between}
.au-nav b {font-family:var(--serif);font-weight:400;color:var(--muted)}
.au-nav b.pk {color:var(--accent)}
.au-nav.on {background:var(--sidebar-raised);border-radius:9px;padding-left:21px;font-weight:700;color:var(--on-ink-strong);position:relative}
.au-nav.on i {position:absolute;left:9px;top:50%;margin-top:-8px;width:3px;height:16px;border-radius:2px;background:var(--accent)}
.au-me {margin-top:auto !important;display:flex;align-items:center;gap:10px;padding:8px 6px}
.au-av {width:30px;height:30px;border-radius:50%;background:var(--tint);color:var(--accent);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px}
.au-me b {display:block;font-size:13px;color:var(--on-ink-strong);font-weight:600}
.au-me small {display:block;font-size:11px;color:var(--muted)}
.au-main {flex:1;min-width:0;padding:40px 44px;overflow:hidden}
.au-hello {font-family:var(--serif);font-size:30px;letter-spacing:-.02em;line-height:1.1}
.au-hello-p {font-size:13.5px;color:var(--ink-2);margin-top:6px !important}
.au-up {padding:26px 28px;margin-top:26px;display:flex;gap:36px;align-items:center}
.au-up-date {text-align:center;flex:none}
.au-up-date b {display:block;font-family:var(--serif);font-weight:400;font-size:84px;line-height:.9;letter-spacing:-.04em}
.au-up-date small {display:block;font-size:10.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin-top:8px}
.au-up-body {min-width:0;flex:1}
.au-up-name {font-family:var(--serif);font-size:36px;letter-spacing:-.02em;line-height:1.05;margin-top:8px !important}
.au-up-p {font-size:13.5px;color:var(--ink-2);margin-top:8px !important;line-height:1.5}
.au-chips {display:flex;gap:8px;margin-top:16px !important}
.au-chips span {border:1px solid var(--border);border-radius:999px;padding:8px 16px;font-size:12.5px;font-weight:600}
.au-chips span.ink {background:var(--ink);border-color:var(--ink);color:var(--on-ink-strong)}
.au-dash-row {display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:16px;margin-top:16px}
.au-ten {padding:22px 26px}
.au-ten-head {display:flex;justify-content:space-between;align-items:baseline}
.au-ten-head span {font-family:var(--serif);font-size:21px}
.au-ten-head small {font-size:12px;color:var(--muted)}
.au-ten-dows,.au-ten-nums,.au-ten-blocks {display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:6px;text-align:center}
.au-ten-dows {margin-top:16px !important;font-size:9.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--decor)}
.au-ten-dows .on,.au-ten-nums .on {color:var(--accent)}
.au-ten-nums {font-family:var(--serif);font-size:20px;margin-top:4px !important}
.au-ten-nums .we {color:var(--faint)}
.au-ten-blocks {margin-top:12px;padding-top:12px;border-top:1px solid var(--hairline);height:96px;text-align:left;grid-template-rows:1fr}
.au-blk {grid-row:1;background:var(--ink);color:var(--on-ink-strong);border-radius:10px;padding:8px;font-size:10.5px;line-height:1.35;overflow:hidden}
.au-blk small {display:block;font-size:10.5px;color:var(--faint)}
.au-blk b {display:block;font-weight:700}
.au-blk em {display:block;font-family:var(--serif);font-style:normal;font-size:14px;margin-top:4px}
.au-blk-cast {background:transparent;border:1.5px dashed var(--au-cast);color:var(--ink-2)}
.au-blk-cast small {color:var(--ink-2)}
.au-blk-cast b {color:var(--ink)}
.au-blk-cast span {display:block;margin-top:4px}
.au-col {display:flex;flex-direction:column;gap:16px}
.au-col .au-inkcard {padding:22px 24px;flex:1}
.au-bar {height:4px;border-radius:2px;background:var(--sidebar-raised);margin-top:16px !important;overflow:hidden}
.au-bar i {display:block;height:100%;background:var(--overdue)}
.au-pill-o {display:inline-block;margin-top:14px;border:1px solid var(--au-line-on-ink);border-radius:999px;padding:7px 14px;font-size:12px;font-weight:600}
.au-note {padding:18px 22px;font-size:13px;color:var(--ink-2);line-height:1.5}
.au-note i,.au-from i,.au-found i {font-style:normal;color:var(--accent)}
.au-mod {width:960px;height:520px;padding:36px 40px}
.au-mod-head {display:flex;justify-content:space-between;align-items:baseline}
.au-mod-head-c {align-items:center}
.au-title {font-size:22px;font-weight:700;letter-spacing:-.02em}
.au-mod-head .au-btn,.au-btns .au-btn {padding:8px 16px;font-size:12.5px}
.au-head-meta {font-size:12.5px;color:var(--muted)}
.au-tabs {display:flex;gap:22px;font-size:13px;color:var(--muted)}
.au-tabs .on {color:var(--ink);font-weight:700;border-bottom:2px solid var(--ink);padding-bottom:4px}
.au-lede {font-family:var(--serif);font-size:24px;letter-spacing:-.02em;color:var(--ink-2);margin-top:10px !important;max-width:600px}
.au-k-sec {margin:28px 0 10px}
.au-jrow {background:var(--paper);border-radius:16px;padding:16px 20px;margin-top:8px;display:grid;grid-template-columns:44px minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) 90px 110px;gap:18px;align-items:center}
.au-k-sec + .au-jrow {margin-top:0}
.au-jrow.ink {background:var(--ink);color:var(--on-ink-strong)}
.au-jrow.opt {border:1.5px dashed var(--dash-strong);color:var(--ink-2)}
.au-jd {font-family:var(--serif);font-size:34px;line-height:1;color:var(--ink)}
.au-jrow.ink .au-jd {color:inherit}
.au-jrow b {display:block;font-size:15px;font-weight:700;color:var(--ink)}
.au-jrow.ink b {color:inherit}
.au-jrow small {display:block;font-size:12px;color:var(--muted);margin-top:3px}
.au-jrow.ink small {color:var(--faint)}
.au-jc {font-size:12.5px}
.au-jc small {display:block;color:var(--decor);font-size:10.5px;text-transform:uppercase;margin:0}
.au-jf {font-family:var(--serif);font-size:22px}
.au-from {display:flex;align-items:center;gap:8px;margin-top:18px !important;font-size:12.5px;color:var(--ink-2)}
.au-cal-t {display:flex;align-items:baseline;gap:14px}
.au-cal-t small {font-size:12.5px;color:var(--muted)}
.au-cal-dows {display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-top:24px !important;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--decor)}
.au-cal {display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:82px;gap:6px;margin-top:8px;font-family:var(--serif);font-size:17px}
.au-cal > div {background:var(--paper);border-radius:10px;padding:8px 10px;min-width:0}
.au-cal > .we {background:var(--frame)}
.au-cal > .off {color:var(--decor)}
.au-span2 {grid-column:span 2}
.au-span3 {grid-column:span 3}
.au-today {display:inline-flex;width:24px;height:24px;border-radius:50%;border:1.5px solid var(--accent);align-items:center;justify-content:center;margin:-4px 0 0 -4px}
.au-ev {font-family:var(--sans);font-size:10px;border-radius:6px;padding:3px 6px;margin-top:6px !important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.au-ev.ink {background:var(--ink);color:var(--on-ink-strong);font-weight:600}
.au-ev.pk {background:var(--accent);color:var(--on-ink-strong);font-weight:600}
.au-ev.cast {border:1.5px dashed var(--au-cast);color:var(--ink-2)}
.au-cal > .au-held {background-image:repeating-linear-gradient(135deg,var(--au-held) 0 6px,var(--paper) 6px 12px)}
.au-heldk {font-family:var(--sans);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--muted);margin-top:6px !important}
.au-legend {display:flex;gap:18px;margin-top:16px !important;font-size:11px;color:var(--muted)}
.au-legend .d {color:var(--data)}
.au-found {background:var(--ink);color:var(--on-ink-strong);border-radius:14px;padding:12px 18px;margin-top:22px !important;display:flex;align-items:center;gap:14px;font-size:13px}
.au-found > span:first-of-type {flex:1}
.au-set {padding:18px 20px;margin-top:14px}
.au-set + .au-set {margin-top:10px}
.au-set-head {display:flex;justify-content:space-between;align-items:baseline}
.au-set-head b {font-family:var(--serif);font-weight:400;font-size:20px}
.au-set-head small {font-size:12px;color:var(--muted);margin-left:10px}
.au-thumbs {display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-top:14px}
.au-thumbs > span {aspect-ratio:3 / 4;border-radius:8px;background:repeating-linear-gradient(135deg,var(--au-stripe-a) 0 5px,var(--au-stripe-b) 5px 10px);position:relative}
.au-thumbs i {position:absolute;top:6px;left:6px;font-size:10px;font-style:normal}
.au-thumbs em {position:absolute;bottom:6px;left:6px;right:6px;font-size:9px;font-style:normal;background:var(--au-shadow-ink);color:var(--on-ink-strong);border-radius:4px;padding:2px 5px;overflow:hidden;white-space:nowrap}
.au-thumbs > .au-tconf {background:none;border:1.5px dashed var(--dash-strong);display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--accent);text-align:center;line-height:1.3}
.au-thumbs > .au-tmore {background:var(--hairline);display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--muted)}
.au-inv {display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px}
.au-inv-doc {padding:32px 36px;display:flex;flex-direction:column}
.au-inv-head {display:flex;justify-content:space-between;align-items:flex-start}
.au-inv-head b {display:block;font-family:var(--serif);font-weight:400;font-size:30px;letter-spacing:-.02em;margin-top:6px}
.au-inv-head small {display:block;font-size:12.5px;color:var(--muted);margin-top:4px}
.au-inv-head .au-inv-dates {text-align:right;line-height:1.6;margin:0}
.au-inv-lines {margin-top:28px;border-top:1px solid var(--hairline)}
.au-inv-lines p {display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--hairline);font-size:13.5px}
.au-inv-lines p.mu {color:var(--ink-2)}
.au-inv-lines i {font-style:normal;color:var(--accent);font-size:11px;margin-left:6px}
.au-inv-lines b {font-family:var(--serif);font-weight:400;font-size:18px;color:var(--ink)}
.au-inv-total {display:flex;justify-content:space-between;align-items:baseline;margin-top:auto !important;padding-top:20px}
.au-inv-total .au-k {font-size:12px}
.au-inv-total b {font-family:var(--serif);font-weight:400;font-size:40px;letter-spacing:-.02em}
.au-inv-side {display:flex;flex-direction:column;gap:10px}
.au-inv-side .au-inkcard {padding:20px 22px}
.au-rems {margin-top:14px;display:flex;flex-direction:column;gap:10px;font-size:13px}
.au-rems p {display:flex;justify-content:space-between}
.au-rems small {color:var(--decor);font-size:13px}
.au-status {padding:18px 22px;flex:1}
.au-status-p {font-size:13.5px;margin-top:10px !important;line-height:1.5}
.au-status-p i {font-style:normal;color:var(--overdue)}
.au-status-p small {color:var(--muted);font-size:12.5px}
.au-status .au-btns {margin-top:16px}
.au-status .au-btn {padding:8px 14px;font-size:12px}
.au-tiles {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:24px}
.au-tiles > .au-card {padding:20px 22px}
.au-tiles .au-inkp {margin-top:10px;font-size:12px}
.au-tile-p {font-size:12px;color:var(--muted);margin-top:10px !important}
.au-mod .au-k-sec {margin:26px 0 10px}
.au-pays {padding:4px 22px}
.au-pay {display:grid;grid-template-columns:minmax(0,1.4fr) 90px minmax(0,1.6fr) 120px;gap:20px;align-items:center;padding:14px 0;border-bottom:1px solid var(--hairline)}
.au-pay:last-child {border-bottom:0}
.au-pay.late {background:var(--overdue-row);margin:0 -22px;padding-left:22px;padding-right:22px}
.au-pay b {display:block;font-size:14px;font-weight:700}
.au-pay small {display:block;font-size:12px;color:var(--muted)}
.au-track {display:block;height:4px;border-radius:2px;background:var(--hairline);overflow:hidden}
.au-track i {display:block;height:100%;background:var(--au-good-bar)}
.au-pay.late .au-track {background:var(--au-late-track)}
.au-pay.late .au-track i {background:var(--overdue)}
.au-pay.amber .au-track i {background:var(--watch)}
.au-pay .au-clock {font-size:11px;font-weight:600;margin-top:6px;color:var(--good)}
.au-pay.late .au-clock {color:var(--overdue)}
.au-pay.amber .au-clock {color:var(--watch-ink)}
.au-mother {padding:24px 26px;margin-top:22px;display:grid;grid-template-columns:64px minmax(0,1fr) repeat(4,110px);gap:22px;align-items:center}
.au-logo {width:64px;height:64px;border-radius:14px;background:var(--sidebar-raised);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:26px}
.au-mother-name {display:flex;align-items:center;gap:10px}
.au-mother-name b {font-family:var(--serif);font-weight:400;font-size:30px;letter-spacing:-.02em}
.au-mother-name em {font-style:normal;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;background:var(--paper);color:var(--ink);border-radius:999px;padding:3px 8px}
.au-mother > span > small {display:block;font-size:12.5px;color:var(--faint);margin-top:4px}
.au-fact small {display:block;font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--decor)}
.au-fact b {display:block;font-family:var(--serif);font-weight:400;font-size:24px;margin-top:4px}
.au-fact i {font-style:normal;color:var(--accent);font-size:13px}
.au-fact b.owe {color:var(--au-owe-on-ink)}
.au-ags {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:12px}
.au-ags > .au-card {padding:18px 20px}
.au-ag {display:flex;align-items:center;gap:12px}
.au-logo-s {width:40px;height:40px;border-radius:10px;background:var(--data-bg);color:var(--data);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:18px;flex:none}
.au-ag b {display:block;font-family:var(--serif);font-weight:400;font-size:20px}
.au-ag small {display:block;font-size:11.5px;color:var(--muted)}
.au-ag-p {font-size:12.5px;color:var(--ink-2);margin-top:14px !important;line-height:1.55}
.au-ag-p b {color:var(--overdue);font-weight:600}
.au-ag-p i {font-style:normal;color:var(--good);font-weight:600}
.mini {position:relative;overflow:hidden;border-radius:34px;border:1px solid var(--site-line-2);background:var(--board);color:var(--ink);aspect-ratio:360 / 620}
.mini-660 {aspect-ratio:360 / 660}
.mini-700 {aspect-ratio:360 / 700}
.mini-canvas {position:absolute;left:0;top:0;width:360px;height:620px;transform-origin:top left}
.mini-660 .mini-canvas {height:660px}
.mini-700 .mini-canvas {height:700px}
.mn {position:relative;width:360px;height:100%}
.mn-status {height:48px;display:flex;justify-content:space-between;align-items:flex-end;padding:0 24px 6px;font-size:13px;font-weight:600}
.mn-status span + span {letter-spacing:.06em}
.mn-body {padding:8px 18px 0}
.mn-head {display:flex;justify-content:space-between;align-items:center}
.mn-head small {font-size:12px;color:var(--muted)}
.mn-title {font-size:22px;font-weight:700;letter-spacing:-.02em}
.mn-btn {background:var(--ink);color:var(--on-ink-strong);border-radius:999px;padding:7px 12px;font-size:12px;font-weight:600}
.mn-lede {font-family:var(--serif);font-size:19px;color:var(--ink-2);letter-spacing:-.01em;margin-top:8px !important;line-height:1.2}
.mn-k {font-size:10.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}
.mn-k-sec {margin-top:18px !important}
.mn-card {background:var(--paper);border-radius:18px;padding:14px 16px;box-shadow:var(--shadow-card)}
.mn-card.ink {background:var(--ink);color:var(--on-ink-strong);box-shadow:none}
.mn-card.ink .mn-k {color:var(--decor)}
.mn-card.opt {box-shadow:none;border:1.5px dashed var(--dash-strong);color:var(--ink-2)}
.mn-gap {margin-top:10px}
.mn-gap-8 {margin-top:8px}
.mn-list {display:flex;flex-direction:column;gap:8px;margin-top:10px}
.mn-job {display:flex;gap:14px;align-items:center}
.mn-d {font-family:var(--serif);font-size:30px;line-height:1;width:34px;color:var(--ink)}
.mn-card.ink .mn-d {color:inherit}
.mn-job > span:nth-child(2) {flex:1;min-width:0}
.mn-job b {display:block;font-size:14.5px;font-weight:700;color:var(--ink)}
.mn-card.ink .mn-job b {color:inherit}
.mn-job small {display:block;font-size:11.5px;color:var(--muted);margin-top:3px}
.mn-card.ink .mn-job small {color:var(--faint)}
.mn-job em,.mn-fig {font-family:var(--serif);font-style:normal;font-size:20px;color:var(--ink)}
.mn-card.ink .mn-job em,.mn-card.ink .mn-fig {color:inherit}
.mn-from {font-size:12px;color:var(--ink-2);margin-top:14px !important;line-height:1.5}
.mn-from i,.mn-note i,.mn-found-p i,.mn-inv-lines i,.mn-facts i {font-style:normal;color:var(--accent)}
.mn-tabs {position:absolute;left:0;right:0;bottom:0;height:72px;background:var(--paper);border-top:1px solid var(--hairline-side);display:flex;justify-content:space-around;align-items:flex-start;padding:12px 8px 0;font-size:10.5px;font-weight:600;color:var(--decor)}
.mn-tabs .on {color:var(--ink)}
.mn-tiles {display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}
.mn-big {font-family:var(--serif);font-size:30px;letter-spacing:-.02em;line-height:1;margin-top:8px !important}
.mn-big-36 {font-size:36px;margin-top:10px !important}
.mn-pays {margin-top:4px}
.mn-pay {padding:12px 0;border-bottom:1px solid var(--hairline)}
.mn-pay:last-child {border-bottom:0}
.mn-pay p {display:flex;justify-content:space-between;align-items:baseline}
.mn-pay b {font-size:13.5px;font-weight:700}
.mn-pay em {font-family:var(--serif);font-style:normal;font-size:18px}
.mn-pay small {display:block;font-size:11px;color:var(--muted);margin-top:2px}
.mn-track {display:block;height:4px;border-radius:2px;background:var(--hairline);margin-top:8px;overflow:hidden}
.mn-track i {display:block;height:100%;background:var(--au-good-bar)}
.mn-pay.late .mn-track i {background:var(--overdue)}
.mn-pay.amber .mn-track i {background:var(--watch)}
.mn-clock {display:block;font-size:10.5px;font-weight:600;margin-top:5px;color:var(--good)}
.mn-pay.late .mn-clock {color:var(--overdue)}
.mn-pay.amber .mn-clock {color:var(--watch-ink)}
.mn-hello {font-family:var(--serif);font-size:26px;letter-spacing:-.02em;line-height:1.1}
.mn-hello-p {font-size:13px;color:var(--ink-2);margin-top:6px !important;line-height:1.5}
.mn-up {margin-top:18px;padding:16px 18px}
.mn-up-row {display:flex;gap:16px;align-items:center;margin-top:10px !important}
.mn-up-d {font-family:var(--serif);font-size:64px;line-height:.9;letter-spacing:-.04em}
.mn-up-row b {display:block;font-family:var(--serif);font-weight:400;font-size:24px;letter-spacing:-.02em;line-height:1.05}
.mn-up-row small {display:block;font-size:12px;color:var(--ink-2);margin-top:4px;line-height:1.45}
.mn-chips {display:flex;gap:6px;margin-top:14px !important}
.mn-chips span {border:1px solid var(--border);border-radius:999px;padding:8px 14px;font-size:12px;font-weight:600;white-space:nowrap}
.mn-chips .ink {background:var(--ink);border-color:var(--ink);color:var(--on-ink-strong)}
.mn-chips .paper {background:var(--paper);border-color:var(--paper);color:var(--ink);padding:7px 12px;font-size:11.5px}
.mn-chips .line {border-color:var(--au-line-on-ink);color:var(--on-ink-strong);padding:7px 12px;font-size:11.5px}
.mn-chips .pk {background:var(--accent);border-color:var(--accent);color:var(--on-ink-strong);padding:9px 16px}
.mn-bar {display:block;height:4px;border-radius:2px;background:var(--sidebar-raised);margin-top:14px;overflow:hidden}
.mn-bar i {display:block;height:100%;background:var(--overdue)}
.mn-inkp {font-size:12px;color:var(--faint);margin-top:10px !important;line-height:1.5}
.mn-note {font-size:12.5px;color:var(--ink-2);line-height:1.5}
.mn-dows {display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-top:16px !important;font-size:9px;font-weight:700;letter-spacing:.08em;color:var(--decor);text-align:center}
.mn-cal {display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-top:6px}
.mn-cal > div {background:var(--paper);border-radius:8px;padding:6px;min-height:48px;font-family:var(--serif);font-size:14px;min-width:0}
.mn-cal > .off {color:var(--decor)}
.mn-cal p {font-family:var(--sans);font-size:8.5px;margin-top:4px !important;border-radius:4px;padding:2px 4px;white-space:nowrap;overflow:hidden}
.mn-cal .cast {border:1px dashed var(--au-cast);color:var(--ink-2)}
.mn-cal .ink {background:var(--ink);color:var(--on-ink-strong);font-weight:600}
.mn-cal .pk {background:var(--accent);color:var(--on-ink-strong);font-weight:600}
.mn-today {display:inline-flex;width:20px;height:20px;border-radius:50%;border:1.5px solid var(--accent);align-items:center;justify-content:center;margin:-3px 0 0 -3px}
.mn-b {display:block;font-size:14.5px;font-weight:700}
.mn-ink-small {display:block;font-size:11.5px;color:var(--faint);margin-top:3px}
.mn-cal-foot {display:flex;justify-content:space-between;margin-top:12px !important;font-size:12px;color:var(--ink-2)}
.mn-found {margin-top:14px}
.mn-found-p {display:flex;gap:10px;align-items:flex-start;font-size:12.5px;line-height:1.45}
.mn-found .mn-chips {margin-top:12px !important}
.mn-set {font-family:var(--serif);font-size:19px}
.mn-tag {display:inline-block;font-size:10.5px;border-radius:999px;padding:3px 9px;font-weight:600;margin-top:8px !important}
.mn-tag.watch {color:var(--watch-ink);background:var(--watch-bg)}
.mn-head .mn-tag {margin-top:0 !important}
.mn-tag.late {color:var(--overdue);background:var(--overdue-bg)}
.mn-thumbs {display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:12px}
.mn-thumbs > span {aspect-ratio:3 / 4;border-radius:8px;background:repeating-linear-gradient(135deg,var(--au-stripe-a) 0 5px,var(--au-stripe-b) 5px 10px);position:relative}
.mn-thumbs i {position:absolute;top:5px;left:5px;font-size:9px;font-style:normal}
.mn-thumbs em {position:absolute;bottom:5px;left:5px;right:5px;font-size:8px;font-style:normal;background:var(--au-shadow-ink);color:var(--on-ink-strong);border-radius:3px;padding:2px 4px}
.mn-thumbs > .mn-more {background:var(--hairline);display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--muted)}
.mn-inv {margin-top:14px}
.mn-inv-name {font-family:var(--serif);font-size:26px;letter-spacing:-.02em;margin-top:6px !important}
.mn-inv-dates {font-size:11.5px;color:var(--muted);margin-top:2px !important}
.mn-inv-lines {margin-top:14px;border-top:1px solid var(--hairline)}
.mn-inv-lines p {display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--hairline);font-size:12.5px}
.mn-inv-lines p.mu {color:var(--ink-2)}
.mn-inv-lines i {font-size:10px}
.mn-inv-lines em,.mn-inv-total em {font-family:var(--serif);font-style:normal;font-size:16px;color:var(--ink)}
.mn-inv-total {display:flex;justify-content:space-between;align-items:baseline;margin-top:14px !important}
.mn-inv-total em {font-size:32px;letter-spacing:-.02em}
.mn-rems {margin-top:10px;display:flex;flex-direction:column;gap:8px;font-size:12.5px}
.mn-rems p {display:flex;justify-content:space-between}
.mn-rems small {color:var(--decor);font-size:12.5px}
.mn-mother {display:flex;align-items:center;gap:8px}
.mn-mother b {font-family:var(--serif);font-weight:400;font-size:24px;letter-spacing:-.02em}
.mn-mother em {font-style:normal;font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;background:var(--paper);color:var(--ink);border-radius:999px;padding:2px 7px}
.mn-facts {display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}
.mn-facts small {display:block;font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--decor)}
.mn-facts b {display:block;font-family:var(--serif);font-weight:400;font-size:20px;margin-top:3px}
.mn-facts i {font-size:11px}
.mn-facts b.owe {color:var(--au-owe-on-ink)}
.mn-ag {display:flex;align-items:center;gap:10px}
.mn-logo {width:36px;height:36px;border-radius:9px;background:var(--data-bg);color:var(--data);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:16px;flex:none}
.mn-ag b {display:block;font-family:var(--serif);font-weight:400;font-size:18px}
.mn-ag small {display:block;font-size:11px;color:var(--muted)}
.mn-ag-p {font-size:12px;color:var(--ink-2);margin-top:10px !important;line-height:1.5}
.mn-ag-p b {color:var(--overdue);font-weight:600}
.mn-ag-p i {font-style:normal;color:var(--good);font-weight:600}

/* ==== site/src/css/30-home.css ==== */
.wrap-x {max-width:1400px;margin:0 auto;padding:0 40px}
.hm-grid {display:grid;grid-template-columns:280px minmax(0,1fr);gap:48px}
.m-show-b,.m-show-i {display:none}
.dot-p {display:inline-block;width:6px;height:6px;border-radius:999px;background:var(--accent);animation:pulse 2.4s ease-in-out infinite;flex:none}
@media (prefers-reduced-motion:reduce) {.dot-p {animation:none}}
.hm-label {font-size:11.5px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.hm-side {position:sticky;top:104px;align-self:start}
.hm-h2 {font-family:var(--serif);font-weight:400;font-size:clamp(44px,5.2vw,84px);letter-spacing:-.035em;line-height:.98;text-wrap:balance}
.hm-h2 em {font-style:italic;color:var(--muted)}
.hm-sub {font-size:18px;line-height:1.55;color:var(--muted);margin-top:28px;max-width:560px}
.hm-btn {display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:15px 24px;border-radius:6px;background:var(--ink);color:var(--site-paper);font-weight:500;font-size:14px}
.hm-btn:hover {background:var(--accent);color:var(--paper)}
.hm-link {font-size:14px;font-weight:500;border-bottom:1px solid var(--ink);padding-bottom:2px;color:var(--ink)}
.hm-link:hover {border-color:var(--accent)}
.hm-arrow {display:inline-flex;gap:8px;align-items:center;min-height:44px;font-size:14px;font-weight:500;color:var(--ink)}
.hm-arrow i {font-family:var(--serif);font-style:normal}
.hm-hero {padding-top:112px}
.hm-badge {display:flex;align-items:center;gap:12px;font-size:11.5px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:44px}
.hm-h1 {font-family:var(--serif);font-weight:400;font-size:clamp(46px,6.6vw,110px);line-height:.94;letter-spacing:-.04em;max-width:1320px;text-wrap:balance}
.hm-h1 em {font-style:italic;color:var(--accent)}
.hm-hero-row {margin-top:64px;align-items:start}
.hm-hero-r {display:flex;flex-wrap:wrap;gap:32px 64px;align-items:flex-start}
.hm-lead {font-size:19px;line-height:1.5;color:var(--ink);max-width:520px;flex:1 1 320px;min-width:0;text-wrap:pretty}
.hm-btns {display:flex;align-items:center;gap:28px;flex:none;padding-top:4px}
.hm-shot {padding-top:72px}
.frame {position:relative;overflow:hidden;border:1px solid var(--site-line-2);border-radius:10px;background:var(--board);color:var(--ink);aspect-ratio:1240 / 640}
.hm-panel .frame {aspect-ratio:960 / 520}
.frame-canvas {position:absolute;left:0;top:0;transform-origin:top left}
.frame-1240 {width:1240px;height:640px;display:flex}
.frame-960 {width:960px;height:520px}
.hm-cap {display:flex;justify-content:space-between;gap:24px;padding:18px 0 0;font-size:12.5px;color:var(--muted)}
.hm-cities {padding-top:88px;padding-bottom:120px}
.hm-cities p {display:flex;flex-wrap:wrap;gap:12px 40px;justify-content:space-between;padding:26px 0;border-top:1px solid var(--site-line);border-bottom:1px solid var(--site-line);font-family:var(--serif);font-style:italic;font-size:22px;color:var(--muted)}
.hm-ink {background:var(--ink);color:var(--site-paper)}
.hm-ink .hm-label {color:var(--on-ink)}
.hm-ink .hm-sub {color:var(--on-ink)}
.hm-man {padding-top:140px;padding-bottom:150px}
.hm-man-body {display:flex;flex-direction:column;gap:72px}
.hm-man-line {font-family:var(--serif);font-size:clamp(40px,4.6vw,72px);line-height:1.02;letter-spacing:-.03em;text-wrap:pretty;max-width:1000px}
.hm-man-line em {font-style:italic;color:var(--accent-on-ink)}
.hm-man-line + .hm-man-line em {color:var(--on-ink)}
.hm-man-line .grey {color:inherit}
.hm-man-sign {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;border-top:1px solid var(--site-ink-line);padding-top:32px;max-width:1000px}
.hm-man-who {display:flex;align-items:center;gap:14px}
.hm-man-who img {width:44px;height:44px;display:block}
.hm-man-who span {font-family:var(--serif);font-size:24px}
.hm-man-p {font-size:18px;line-height:1.55;color:var(--on-ink);text-wrap:pretty}
.hm-mods {padding-top:160px}
.hm-head {margin-bottom:64px}
.hm-head-r {display:flex;justify-content:space-between;align-items:flex-end;gap:48px}
.hm-aside {font-size:15px;color:var(--muted);max-width:260px;line-height:1.6;flex:none}
.hm-index-wrap {align-items:start;border-top:1px solid var(--site-line);padding-top:40px}
.hm-index {position:sticky;top:104px;display:flex;flex-direction:column}
.hm-index button {background:none;border:0;border-bottom:1px solid var(--site-line);cursor:pointer;text-align:left;padding:15px 0;min-height:44px;display:flex;gap:18px;align-items:baseline;font-family:var(--serif);font-size:27px;letter-spacing:-.02em;color:var(--decor);transition:color .18s}
.hm-index button > span:first-child {font-family:var(--sans);font-size:11px;letter-spacing:.1em;width:22px;flex:none;color:var(--muted)}
.hm-index button i {margin-left:auto;width:6px;height:6px;border-radius:999px;background:transparent;align-self:center}
.hm-index button:hover,.hm-index button.on {color:var(--ink)}
.hm-index button.on i {background:var(--accent)}
.hm-panel-head {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:end;margin-bottom:36px}
.hm-h3 {font-family:var(--serif);font-weight:400;font-size:34px;letter-spacing:-.02em;line-height:1.1;text-wrap:pretty}
.hm-p {font-size:16px;line-height:1.65;color:var(--muted);max-width:440px;text-wrap:pretty}
.hm-how {padding-top:160px;padding-bottom:160px}
.hm-how .hm-head {margin-bottom:80px}
.hm-how .hm-h2 br {display:none}
.hm-how .hm-h2 br + em {margin-left:.22em}
.hm-steps {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--site-line)}
.hm-steps > div {padding:40px 40px 0;border-right:1px solid var(--site-line)}
.hm-steps > div:first-child {padding-left:0}
.hm-steps > div:last-child {padding-right:0;border-right:0}
.hm-step-n {font-family:var(--serif);font-size:22px;color:var(--muted)}
.hm-step-t {font-family:var(--serif);font-size:34px;letter-spacing:-.02em;margin-top:56px;line-height:1.05}
.hm-step-p {font-size:15.5px;line-height:1.65;color:var(--muted);margin-top:16px;max-width:340px}
.hm-quote {padding-top:140px}
.hm-q {font-family:var(--serif);font-style:italic;font-size:clamp(36px,4.2vw,64px);line-height:1.08;letter-spacing:-.025em;max-width:960px;text-wrap:balance}
.hm-q em {font-style:italic;color:var(--accent-on-ink)}
.hm-trust {padding-top:120px;padding-bottom:150px}
.hm-trust .hm-h2 {max-width:1000px}
.hm-trust .hm-h2 em {color:var(--accent-on-ink)}
.hm-trust .hm-sub {margin-bottom:72px}
.hm-rules {border-top:1px solid var(--site-ink-line)}
.hm-rules > div {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.8fr);gap:32px;padding:30px 0;border-bottom:1px solid var(--site-ink-line)}
.hm-rule-t {font-family:var(--serif);font-size:28px;letter-spacing:-.02em;line-height:1.1}
.hm-rule-p {font-size:16px;line-height:1.6;color:var(--on-ink);max-width:560px}
.hm-price {padding-top:150px;padding-bottom:40px}
.hm-price .hm-head {margin-bottom:80px}
.hm-price .hm-sub {max-width:520px}
@media (max-width:860px) {.wrap-x {padding:0 20px}
.m-show-b {display:block}
.m-show-i {display:inline}
.hm-grid {display:flex;flex-direction:column;gap:0}
.hm-side,.hm-index {position:static}
.hm-label {font-size:11px}
.hm-n {display:none}
.hm-h2 {font-size:clamp(38px,11vw,50px);line-height:.96;letter-spacing:-.035em;margin-top:20px}
.hm-hero {padding-top:40px;overflow:hidden}
.hm-badge {font-size:11px;gap:10px;margin-bottom:0}
.hm-h1 {font-size:clamp(38px,10.8vw,48px);line-height:.94;letter-spacing:-.04em;margin-top:28px}
.hm-hero-row {margin-top:32px;align-items:stretch}
.hm-hero-r {display:block}
.hm-btns {flex-direction:column;align-items:stretch;gap:14px;padding:0}
.hm-btns .hm-btn {padding:18px 24px;font-size:15px}
.hm-btns .hm-link {border:0;padding:0;text-align:center;color:var(--muted);display:flex;align-items:center;justify-content:center;min-height:44px}
.hm-fan {position:relative;height:400px;margin:44px 0 0;overflow:hidden}
.hm-fan-l,.hm-fan-r,.hm-fan-c {position:absolute;width:56%;top:46px;transform-origin:bottom center}
.hm-fan-l {left:-4%;transform:rotate(-7deg)}
.hm-fan-r {right:-4%;transform:rotate(7deg)}
.hm-fan-c {left:22%;top:0;box-shadow:0 30px 60px -30px rgba(28,23,25,.4);border-radius:34px}
.hm-fan-fade {position:absolute;left:0;right:0;bottom:0;height:110px;background:linear-gradient(to bottom,transparent,var(--site-paper))}
.hm-marquee {border-top:1px solid var(--site-line);border-bottom:1px solid var(--site-line);padding:16px 0;overflow:hidden;white-space:nowrap;font-family:var(--serif);font-style:italic;font-size:26px;color:var(--muted)}
.hm-marquee > div {display:inline-block;animation:marquee 28s linear infinite}
.hm-marquee span {padding:0 22px}
.hm-man {padding:88px 20px 96px}
.hm-man-body {gap:0}
.hm-man-line {font-size:clamp(34px,10vw,46px);line-height:1.02;margin-top:28px}
.hm-man-line + .hm-man-line {margin-top:40px}
.hm-man-sign {display:flex;align-items:center;gap:14px;margin-top:56px;padding-top:28px}
.hm-man-who {flex:none}
.hm-man-who img {width:36px;height:36px}
.hm-man-who span {display:none}
.hm-man-p {font-size:15px;line-height:1.5}
.hm-mods {padding:80px 0 0}
.hm-mods .hm-head {padding:0 20px;margin:0}
.hm-head-r {display:block}
.hm-car {margin:0}
.hm-snap {display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:36px 20px 0;scrollbar-width:none}
.hm-snap::-webkit-scrollbar {display:none}
.hm-slide {flex:0 0 78%;scroll-snap-align:center}
.hm-slide-end {flex:0 0 8px}
.hm-slide-top {display:flex;justify-content:space-between;align-items:baseline}
.hm-slide-top span {font-family:var(--serif);font-size:30px;letter-spacing:-.02em}
.hm-slide-top small {font-size:11px;letter-spacing:.12em;color:var(--muted)}
.hm-slide-p {font-size:14px;line-height:1.45;color:var(--muted);margin:6px 0 16px;min-height:40px}
.hm-slide-shot {height:400px;overflow:hidden;border-radius:34px 34px 0 0;position:relative}
.hm-slide-shot::after {content:"";position:absolute;left:0;right:0;bottom:0;height:80px;background:linear-gradient(to bottom,transparent,var(--site-paper))}
.hm-car-foot {display:flex;justify-content:space-between;padding:12px 20px 0;font-size:12px;color:var(--muted)}
.hm-how {padding:96px 20px 0}
.hm-how .hm-head {margin-bottom:36px}
.hm-steps {display:block}
.hm-steps > div {display:grid;grid-template-columns:56px 1fr;gap:0 16px;padding:0;border-right:0}
.hm-step-n {font-size:40px;line-height:1;padding:22px 0;color:var(--accent)}
.hm-steps > div > div {padding:24px 0 22px;border-bottom:1px solid var(--site-line)}
.hm-step-t {font-size:24px;margin-top:0}
.hm-step-p {font-size:14px;line-height:1.5;margin-top:6px}
.hm-ink-2 {padding:88px 0 80px;margin-top:96px}
.hm-quote,.hm-trust {padding:0 20px}
.hm-quote .hm-grid {flex-direction:column-reverse}
.hm-quote .hm-label {margin-top:20px}
.hm-q {font-size:clamp(30px,8.6vw,40px);line-height:1.08;letter-spacing:-.02em}
.hm-trust {margin-top:72px}
.hm-trust .hm-h2 {font-size:clamp(30px,8.6vw,40px);line-height:1;letter-spacing:-.03em;margin-top:18px}
.hm-rules {display:grid;grid-template-columns:1fr 1fr;margin-top:36px;border-left:1px solid var(--site-ink-line)}
.hm-rules > div {display:block;padding:18px 14px 20px;border-right:1px solid var(--site-ink-line)}
.hm-rule-t {font-size:20px}
.hm-rule-p {font-size:12.5px;line-height:1.5;margin-top:8px}
.hm-price {padding:88px 20px 0}
.hm-price .hm-head {margin-bottom:32px}
.hm-price-label {display:flex;justify-content:space-between;align-items:baseline}
.hm-price .hm-head {position:relative}
html[data-section="home"] .nav .lang {display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px}
html[data-section="home"] .band {margin-top:96px}
html[data-section="home"] .close-wrap {padding-top:88px}
html[data-section="home"] .close-brand img {display:none}
html[data-section="home"] .close-brand::before {content:"";width:6px;height:6px;border-radius:999px;background:var(--accent-on-ink);animation:pulse 2.4s ease-in-out infinite}
html[data-section="home"] .close-brand .eyebrow {font-size:11px;font-weight:500;letter-spacing:.14em;color:var(--on-ink)}
html[data-section="home"] .close .h2 {font-size:clamp(56px,17vw,76px);line-height:.9;letter-spacing:-.045em;margin:24px 0 0}
html[data-section="home"] .close .h2 br {display:none}
html[data-section="home"] .close .h2 br + em {margin-left:.22em}
html[data-section="home"] .close-text {font-size:15px;line-height:1.55;margin-top:28px}
html[data-section="home"] .close-stats,html[data-section="home"] .close-card-title,html[data-section="home"] .close-card-text {display:none}
html[data-section="home"] .close-card-note {text-align:left;font-size:12px;line-height:1.6}
html[data-section="home"] .foot {margin-top:80px}
html[data-section="home"] .foot .wrap {padding-top:24px;padding-bottom:32px}
html[data-section="home"] .foot-grid {display:flex;flex-direction:column;gap:18px;padding:0}
html[data-section="home"] .foot-tagline,html[data-section="home"] .foot-h,html[data-section="home"] .foot-col:nth-child(2),html[data-section="home"] .foot-col:nth-child(3),html[data-section="home"] .foot-col:nth-child(4) {display:none}
html[data-section="home"] .foot-logo {margin:0}
html[data-section="home"] .foot-logo img {width:22px;height:22px}
html[data-section="home"] .foot-logo span {font-size:19px}
html[data-section="home"] .foot-col {flex-direction:row;flex-wrap:wrap;gap:0 22px}
html[data-section="home"] .foot-col a {color:var(--on-ink);min-width:44px}
html[data-section="home"] .foot-copy {display:block;font-size:13px;color:var(--on-ink)}
html[data-section="home"] .wordmark {display:none}}
.hm-plans-cards {margin-top:8px}
.hm-plans-cards .price-toggle {margin-top:0}

/* ==== site/src/css/40-product.css ==== */
.pd-hero {display:grid;grid-template-columns:1.05fr 1fr;gap:48px;align-items:center;padding-top:64px}
.pd-hero-1 {display:block}
.pd-hero-c {text-align:center}
.pd-hero-c .crumbs,.pd-hero-c .btns {justify-content:center}
.pd-hero-c .pd-h1,.pd-hero-c .pd-lead,.pd-hero-c .lede {margin-left:auto;margin-right:auto}
.pd-hero .crumbs {margin-bottom:26px}
.pd-eyebrow {font-size:12px;letter-spacing:.16em;margin-bottom:18px}
.pd-h1 {font-size:60px;line-height:1;letter-spacing:-.025em;margin:0 0 14px;text-wrap:balance}
.pd-sub {font-family:var(--serif);font-style:italic;font-size:34px;color:var(--muted);line-height:1.15;margin-bottom:24px}
.pd-lead {font-size:18px;line-height:1.55;max-width:560px;margin-bottom:32px}
.pd-hero .btns {margin-top:0}
.pd-hero .btn-lg {padding:15px 30px;font-size:15px;font-weight:700}
.pd-hero .btn-accent {box-shadow:var(--site-shadow-accent)}
.pd-hero .btn-paper {border:1px solid var(--border)}
.pd-season-foot {display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:22px;flex-wrap:wrap;font-size:13px;color:var(--muted)}
.pd-season-foot .legend {font-size:13px}
.pd-season-foot .legend i.ink {background:var(--ink)}
.pd-season-foot .legend i.cast {background:transparent;border:1.5px dashed color-mix(in srgb,var(--accent) 60%,transparent)}
.pd-season-foot .legend i.rem {background:var(--tint)}
.pd-season-foot em {font-family:var(--serif);font-size:16px;color:var(--muted)}
.pd-hero .phone-wrap {min-width:0}
.pd-page .phone-wrap::after {content:"";position:absolute;left:0;right:0;bottom:0;height:120px;background:linear-gradient(to bottom,transparent,var(--board) 90%);pointer-events:none;z-index:3}
.pd-head {border-bottom:1px solid var(--hairline-side);padding-bottom:28px;margin-bottom:40px}
.pd-h2 {font-size:56px;line-height:1.04;letter-spacing:-.02em}
.pd-card {border-radius:14px;padding:32px 34px;min-width:0}
.pd-card-k {font-size:10.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}
.card-ink .pd-card-k {color:var(--site-pink-label)}
.pd-card-head {display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px 16px}
.pd-card-head .h4 {font-size:30px}
.pd-card-head .h4 span {color:var(--muted)}
.pd-card-sub {font-size:12.5px;color:var(--muted)}
.pd-pair {display:grid;grid-template-columns:1fr 1.15fr;gap:24px;align-items:stretch}
.pd-pair-r {grid-template-columns:1.55fr 1fr}
.pd-pair-l {grid-template-columns:1fr 1fr}
.pd-ai {display:flex;gap:10px;align-items:flex-start;background:var(--board);border-radius:14px;padding:12px 16px;font-size:13px;line-height:1.5;color:var(--ink-2)}
.pd-ai i {font-style:normal;color:var(--accent);flex:none}
.pd-pill {display:inline-flex;align-items:center;padding:11px 20px;border-radius:999px;font-size:13px;font-weight:700;white-space:nowrap}
.pd-pill-ink {background:var(--ink);color:var(--on-ink-strong)}
.pd-pill-ghost {border:1px solid var(--border);color:var(--ink)}
.pd-pill-paper {background:var(--paper);color:var(--ink)}
.pd-pill-sm {padding:5px 11px;font-size:11.5px}
.pd-pill-tint {background:var(--tint);color:var(--ai)}
.pd-pill-soft {background:var(--hairline);color:var(--ink-2)}
.pd-actions {margin-top:auto;padding-top:22px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.pd-actions .meta {font-size:12.5px;color:var(--muted)}
.pd-page .conf {color:var(--ink);font-size:11.5px;padding:5px 11px}
.pd-page .conf::before {content:"";width:7px;height:7px;border-radius:50%;margin-right:7px;background:var(--good)}
.pd-page .conf-likely::before {background:var(--watch)}
.pd-page .conf-check::before {background:var(--overdue)}
.pd-rules {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px;margin-top:56px}
.pd-rules .num {font-size:56px}
.pd-rules b {display:block;font-size:19px;font-weight:700;margin:18px 0 10px}
.pd-rules p:not(.num) {font-size:14.5px;line-height:1.6;color:var(--ink-2)}
.pd-page .quote {padding:150px 40px}
.pd-page .quote p {font-style:italic;font-size:52px;line-height:1.12;letter-spacing:-.015em;text-wrap:balance}
.pd-page .quote small {margin-top:26px;font-size:12px;letter-spacing:.16em}
.pd-band {background:var(--ink);color:var(--on-ink-strong);padding:130px 0;margin-top:140px}
.pd-band .pd-eyebrow {color:var(--site-pink-label)}
.pd-band :is(.h1,.h2,.h3) em,.card-ink :is(.h1,.h2,.h3) em {color:var(--accent-on-ink)}
.pd-band .h2 {color:var(--on-ink-strong)}
.pd-band p.lead {color:var(--on-ink);font-size:15px;line-height:1.65;margin-top:26px;max-width:420px}
.pd-band .pd-pair {align-items:center}
.pd-legend {display:flex;flex-direction:column;gap:16px}
.pd-legend > div {display:flex;gap:12px}
.pd-legend > div > span {width:10px;height:10px;border-radius:999px;background:var(--good);flex:none;margin-top:6px}
.pd-legend b {display:block;font-size:14px;font-weight:700}
.pd-legend p {font-size:13px;color:var(--ink-2);line-height:1.55;margin-top:3px}
.pd-mail {padding:34px 36px}
.pd-mail-from {display:flex;align-items:center;gap:12px;padding-bottom:18px;border-bottom:1px solid var(--hairline)}
.pd-mail-from .app-avatar {width:38px;height:38px;font-size:13px}
.pd-mail-from .grow {flex:1;min-width:0}
.pd-mail-from b {display:block;font-size:14px;font-weight:700}
.pd-mail-from small {display:block;font-size:12px;color:var(--muted)}
.pd-mail-from .eyebrow {font-size:11px}
.pd-mail-subject {font-size:15px;font-weight:700;margin:18px 0 12px}
.pd-mail-body {font-size:14.5px;line-height:1.75;color:var(--ink-2)}
.pd-mail-body mark {background:var(--tint);color:var(--ink);border-radius:4px;padding:0 4px}
.pd-mail-conf {margin-top:auto;padding-top:22px;display:flex;gap:8px;flex-wrap:wrap}
.pd-job {padding:28px;gap:12px}
.pd-job-top {display:flex;align-items:center;gap:10px;padding:0 4px 6px;font-size:12.5px;color:var(--muted)}
.pd-job-top .dot {background:var(--good)}
.pd-job-top b {color:var(--good);font-weight:700}
.pd-job-top .fig {margin-left:auto;font-size:30px;color:var(--ink)}
.pd-job-name {font-size:38px;padding:0 4px 6px}
.pd-tiles {display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pd-tile {background:var(--board);border-radius:10px;padding:18px 20px;display:flex;flex-direction:column;gap:6px;min-width:0}
.pd-tile .pd-card-k {color:var(--muted)}
.pd-tile b {font-family:var(--serif);font-weight:400;font-size:22px;letter-spacing:-.01em;line-height:1.15}
.pd-tile small {font-size:12.5px;color:var(--muted);line-height:1.45}
.pd-tile-ink {background:var(--ink);color:var(--on-ink-strong)}
.pd-tile-ink .pd-card-k {color:var(--site-pink-label)}
.pd-tile-ink b {font-size:30px}
.pd-tile-ink small {color:var(--on-ink)}
.pd-month {display:flex;flex-direction:column;padding:28px 30px}
.pd-cal-scroll {overflow-x:auto}
.phone-box {background:var(--paper);border-radius:14px;box-shadow:var(--shadow-card);height:auto;min-height:560px;align-self:stretch}
.phone-box .phone {top:36px;transform:scale(.9)}
.pd-cal-dows,.pd-cal-grid {display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}
.pd-cal-dows {margin-top:22px}
.pd-cal-dows span {font-size:10.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);padding:0 4px 8px;border-bottom:1px solid var(--hairline-side)}
.pd-cal-dows span.we {color:var(--muted)}
.pd-cal-grid {margin-top:6px}
.pd-day {min-height:96px;border-radius:12px;padding:6px 4px;display:flex;flex-direction:column;gap:6px;min-width:0}
.pd-day.we {background:var(--frame)}
.pd-day > b {font-family:var(--serif);font-weight:400;font-size:18px;line-height:1;color:var(--ink)}
.pd-day.out > b,.pd-day.we > b {color:var(--muted)}
.pd-day > b.today {background:var(--accent);color:var(--on-ink-strong);width:28px;height:28px;border-radius:999px;display:flex;align-items:center;justify-content:center;font-size:16px}
.pd-ev {display:block;border-radius:8px;padding:5px 7px;font-size:10.5px;font-weight:700;line-height:1.35;min-width:0}
.pd-ev small {display:block;font-weight:500;font-size:10.5px}
.pd-ev.job {background:var(--ink);color:var(--site-paper)}
.pd-ev.job small {color:var(--on-ink)}
.pd-ev.cast {border:1.5px dashed color-mix(in srgb,var(--accent-on-ink) 60%,transparent);color:var(--data)}
.pd-ev.opt {border:1.5px dashed color-mix(in srgb,var(--accent) 55%,transparent);color:var(--accent)}
.pd-ev.fit,.pd-ev.party {background:var(--paper);border:1px solid var(--hairline-side);border-left:3px solid var(--watch);color:var(--ink)}
.pd-ev.party {border-left-color:var(--ai)}
.pd-month-side {display:flex;flex-direction:column;gap:16px}
.pd-month-side > .card:first-child {flex:1}
.pd-what {display:flex;flex-direction:column;margin-top:14px}
.pd-what > div {display:flex;gap:14px;align-items:flex-start;padding:13px 0;border-bottom:1px solid var(--hairline)}
.pd-what > div:last-child {border-bottom:0}
.pd-what i {display:block;width:26px;height:18px;border-radius:6px;flex:none;margin-top:2px}
.pd-what i.job {background:var(--ink)}
.pd-what i.cast {border:1.5px dashed color-mix(in srgb,var(--accent-on-ink) 60%,transparent)}
.pd-what i.opt {border:1.5px dashed var(--accent)}
.pd-what i.fit {background:var(--paper);border:1px solid var(--hairline-side);border-left:3px solid var(--watch)}
.pd-what b {display:block;font-size:14px;font-weight:700}
.pd-what p {font-size:12.5px;color:var(--ink-2);line-height:1.5;margin-top:2px}
.pd-fw .h4 {font-size:24px;margin:12px 0 8px}
.pd-fw p {font-size:13px;color:var(--muted);line-height:1.55}
.pd-fw .h4 {letter-spacing:-.015em;line-height:1.15}
.pd-avail .h3 {margin:16px 0 18px;font-size:34px}
.pd-avail .h3 em {font-style:italic;color:var(--on-ink)}
.pd-avail-days {display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:4px}
.pd-avail-days span {text-align:center;padding:10px 0 8px;border-radius:9px;border:1px solid var(--site-paper)}
.pd-avail-days span b {display:block;font-family:var(--serif);font-weight:400;font-size:18px;line-height:1;color:var(--on-ink-strong)}
.pd-avail-days span small {display:block;font-size:9.5px;color:var(--on-ink);margin-top:5px}
.pd-avail-days span.busy {background:var(--site-paper)}
.pd-avail-days span.busy small {color:var(--muted)}
.pd-avail-days span.cast {border:1.5px dashed var(--faint)}
.pd-avail-days span.busy b {color:var(--muted)}
.pd-avail p.small {color:var(--on-ink);margin-top:18px}
.pd-avail .pd-actions code {font-family:inherit;font-size:12.5px;color:var(--on-ink)}
.pd-notifs {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.pd-notifs-col {grid-template-columns:1fr;gap:12px;margin-top:28px}
.pd-notifs .notif-text {font-size:14.5px}
.pd-notifs .notif-head {margin-bottom:4px}
.pd-notifs:not(.pd-notifs-col) {align-items:stretch}
.pd-notifs:not(.pd-notifs-col) .notif {display:grid;grid-template-columns:28px minmax(0,1fr);grid-template-rows:auto 1fr;gap:16px 12px;padding:26px 28px;border-radius:12px;box-shadow:none;border:2px solid var(--tint)}
.pd-notifs:not(.pd-notifs-col) .notif img {width:28px;height:28px;border-radius:22%}
.pd-notifs:not(.pd-notifs-col) .notif-body {display:contents}
.pd-notifs:not(.pd-notifs-col) .notif-text {font-family:var(--serif);font-size:23px;line-height:1.2;letter-spacing:-.01em;margin:0}
.pd-notifs:not(.pd-notifs-col) .notif-actions {grid-column:1 / -1;align-self:end;margin:0}
.pd-notifs:not(.pd-notifs-col) .notif-actions span {padding:9px 16px;font-size:12.5px;background:var(--ink);color:var(--site-paper)}
.pd-notifs:not(.pd-notifs-col) .notif-actions span + span {background:transparent;border:1px solid var(--border);color:var(--ink)}
.pd-page .pic span {color:var(--muted)}
.pd-pics-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.pd-pics-grid {align-content:start}
.pd-pics-grid .pic {border-radius:16px;padding:0;background:var(--hairline)}
.pd-pics-grid .pic span.conf {position:absolute;left:10px;bottom:10px;z-index:1;font-size:11.5px;padding:5px 11px;letter-spacing:0;text-transform:none;color:var(--ink)}
.pd-rights-axis {display:flex;justify-content:space-between;margin:26px 0 6px;padding-bottom:6px;border-bottom:1px solid var(--hairline-side)}
.pd-rights-axis span {font-size:10.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}
.pd-rights-row {display:grid;grid-template-columns:1.1fr 2fr auto;gap:18px;align-items:center;padding:18px 0;border-bottom:1px solid var(--hairline)}
.pd-rights-row:last-child {border-bottom:0;padding-bottom:0}
.pd-rights-row b {display:block;font-size:15px;font-weight:700}
.pd-rights-row small {display:block;font-size:12.5px;color:var(--muted);margin-top:2px}
.pd-rights-row .bar {height:8px}
.pd-rights-row .bar i.late {background:var(--overdue)}
.pd-rights-row .bar.late {background:var(--overdue-bg)}
.pd-rights-row p {font-size:12px;color:var(--ink-2);font-weight:600;margin-top:7px}
.pd-rights-row > span:last-child {font-size:12.5px;font-weight:700;color:var(--accent);white-space:nowrap}
.pd-comp-wrap {display:grid;grid-template-columns:minmax(0,1fr);gap:24px}
.pd-comp {max-width:720px}
.pd-comp .pd-comp-pics {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.pd-comp .pic {border-radius:12px;padding:0;aspect-ratio:3 / 4;background:var(--hairline)}
.pd-comp-name {display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-top:22px}
.pd-comp-name b {font-family:var(--serif);font-weight:400;font-size:32px;letter-spacing:-.02em}
.pd-comp-name small {font-size:12px;color:var(--muted)}
.pd-meas {display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid var(--hairline)}
.pd-meas small {display:block;font-size:10.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}
.pd-meas b {display:block;font-family:var(--serif);font-weight:400;font-size:22px;margin-top:4px}
.pd-digitals {margin-top:22px;padding-top:18px;border-top:1px solid var(--hairline)}
.pd-digitals b {display:block;font-size:10.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}
.pd-digitals-list {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px}
.pd-digitals-list span {border:1.5px dashed var(--dash);border-radius:10px;aspect-ratio:3 / 4;display:flex;align-items:flex-end;justify-content:center;padding:0 4px 8px;text-align:center;font-size:11px;font-weight:700;color:var(--muted)}
.pd-digitals p {font-size:12.5px;color:var(--muted);line-height:1.5;margin-top:12px}
.pd-comp-foot {display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:auto;padding-top:18px;font-size:12.5px;color:var(--muted)}
.pd-comp-foot span + span {font-size:11.5px;font-weight:700;padding:5px 11px;border-radius:999px;background:var(--ink);color:var(--site-paper)}
.pd-watch {background:var(--paper);color:var(--ink);border-radius:14px;padding:28px;display:flex;flex-direction:column;gap:14px}
.pd-watch .pd-comp-pics {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.pd-watch .pic {border-radius:12px;padding:10px}
.pd-watch p.small {color:var(--ink-2)}
.pd-watch-answers {display:flex;flex-wrap:wrap;gap:8px}
.pd-watch-answers .pd-pill-ghost {background:var(--paper)}
.pd-watch-note {font-size:12.5px;color:var(--muted);line-height:1.55}
.pd-doc {background:var(--paper);border-radius:14px;box-shadow:var(--shadow-modal);padding:56px 64px;max-width:820px;margin:72px auto 0;position:relative}
.pd-doc-badge {position:absolute;top:-16px;right:32px}
.pd-doc-head {display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:12px}
.pd-doc-head .h3 {font-size:44px}
.pd-doc-head .h3 span {color:var(--muted)}
.pd-doc-head small {font-size:13px;color:var(--muted)}
.pd-doc-parties {display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:34px;font-size:14px;line-height:1.65}
.pd-doc-parties .pd-card-k {display:block;margin-bottom:8px}
.pd-doc-lines {margin-top:34px;border-top:1.5px solid var(--ink)}
.pd-doc-line {display:grid;grid-template-columns:1fr auto;gap:16px;padding:16px 0;border-bottom:1px solid var(--hairline);font-size:15px;align-items:baseline}
.pd-doc-line .fig {font-size:20px}
.pd-doc-line.muted {font-size:13px;color:var(--muted);padding:14px 0}
.pd-doc-total {display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding-top:20px}
.pd-doc-total b {font-size:15px;font-weight:700}
.pd-doc-total .fig {font-size:40px}
.pd-doc-foot {margin-top:28px;font-size:12px;color:var(--muted);line-height:1.6}
.pd-doc-actions {margin-top:28px;display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap}
.pd-who .h3 {margin:12px 0 14px}
.pd-who .h3 em {font-style:italic;color:var(--muted)}
.pd-who p.card-text {max-width:none}
.pd-who-rows {margin-top:auto;display:flex;flex-direction:column;border-top:1px solid var(--hairline)}
.pd-who-row {display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--hairline);font-size:13.5px}
.pd-who-row b {font-weight:700;margin-right:auto}
.pd-who-row span {color:var(--muted)}
.pd-who-row small {font-size:11.5px;font-weight:700;padding:5px 11px;border-radius:999px;background:var(--hairline);color:var(--muted);white-space:nowrap}
.card-ink .pd-who-rows,.card-ink .pd-who-row {border-color:var(--site-paper)}
.card-ink .pd-who-row span {color:var(--on-ink)}
.card-ink .pd-who-row small {background:none;padding:0;color:var(--on-ink)}
.card-ink .pd-who-row small.send {color:var(--site-pink-label)}
.card-ink .pd-who-row small.late {color:var(--site-late-on-ink)}
.card-ink .pd-who-row small.ok {color:var(--site-good-on-ink)}
.pd-who .card-text {font-size:14.5px;line-height:1.65;margin-bottom:20px}
.card-ink.pd-who .h3 em {color:var(--on-ink)}
.pd-remind {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.pd-remind > div {position:relative;padding-top:24px;--c:var(--ink);--t:var(--ink)}
.pd-remind > div.g {--c:var(--site-good-bar);--t:var(--good)}
.pd-remind > div.a {--c:var(--watch);--t:var(--watch-ink)}
.pd-remind > div.r {--c:var(--overdue);--t:var(--overdue)}
.pd-remind > div::before {content:"";position:absolute;left:0;top:0;width:10px;height:10px;border-radius:999px;background:var(--c)}
.pd-remind > div::after {content:"";position:absolute;left:20px;right:0;top:4px;height:2px;background:var(--c);opacity:.45}
.pd-remind .num {font-family:var(--serif);font-style:normal;font-size:30px;letter-spacing:-.02em;line-height:1;color:var(--t)}
.pd-remind b {display:block;font-size:14px;font-weight:700;margin:8px 0 12px}
.pd-remind p:not(.num) {background:var(--paper);border-radius:10px;padding:16px 18px;box-shadow:var(--shadow-card);font-family:var(--serif);font-size:16px;line-height:1.6;color:var(--ink)}
.pd-remind .eyebrow {display:block;margin-top:10px;font-size:11.5px;letter-spacing:.1em;color:var(--muted)}
.pd-bullets {display:flex;flex-direction:column;gap:14px;margin-top:26px}
.pd-bullets > div {display:flex;gap:12px;font-size:14px;line-height:1.55;color:var(--ink-2)}
.pd-bullets i {font-style:normal;color:var(--accent);flex:none}
.pd-bullets b {color:var(--ink)}
.pd-kpis {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:64px;padding-top:40px;border-top:1px solid var(--line)}
.pd-kpis .pd-kpi {background:none;box-shadow:none;border-radius:0;padding:0}
.pd-kpi .fig {font-size:64px;letter-spacing:-.03em;line-height:1;margin:12px 0 8px}
.pd-kpi.late .fig {color:var(--overdue)}
.pd-kpi small {font-size:13px;color:var(--muted);line-height:1.5}
.pd-clock {position:relative;margin-top:84px}
.pd-clock-bar {display:flex;height:16px;border-radius:999px;overflow:hidden}
.pd-clock-bar i {display:block;background:var(--good);flex:60}
.pd-clock-bar i.a {background:var(--watch);flex:30}
.pd-clock-bar i.r {background:var(--overdue);flex:20}
.pd-clock-marks {position:relative;height:30px}
.pd-clock-marks span {position:absolute;top:12px;transform:translateX(-50%);font-size:10.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}
.pd-pin {position:absolute;top:-70px;transform:translateX(-50%);text-align:center;white-space:nowrap}
.pd-pin small {display:block;font-size:11.5px;font-weight:700;color:var(--ink-2)}
.pd-pin b {display:block;font-family:var(--serif);font-weight:400;font-size:22px;line-height:1.1}
.pd-pin i {display:block;width:2px;height:16px;margin:4px auto 0;background:var(--good)}
.pd-pin.a i {background:var(--watch)}
.pd-pin.r i {background:var(--overdue)}
.pd-zones {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:40px}
.pd-zones > div {display:flex;gap:12px}
.pd-zones > div > span {width:10px;height:10px;border-radius:999px;background:var(--good);flex:none;margin-top:6px}
.pd-zones > div.a > span {background:var(--watch)}
.pd-zones > div.r > span {background:var(--overdue)}
.pd-zones b {display:block;font-size:14px;font-weight:700}
.pd-zones p {font-size:13px;color:var(--ink-2);line-height:1.55;margin-top:3px}
.pd-net .fig-40 {font-size:52px;margin:10px 0 4px}
.pd-net-rows {margin-top:22px;border-top:1px solid var(--hairline)}
.card-ink.pd-net .pd-net-rows,.card-ink.pd-net .pd-net-row {border-color:var(--site-ink-line)}
.card-ink.pd-net .pd-net-row small,.card-ink.pd-net .meta,.card-ink.pd-net .pd-card-sub {color:var(--on-ink)}
.card-ink.pd-net .pd-ai {background:none;border-radius:0;padding:18px 0 0;border-top:1px solid var(--site-ink-line);color:var(--on-ink)}
.card-ink.pd-net .pd-ai i {color:var(--site-pink-label)}
.pd-pair:has(> .pd-net) {grid-template-columns:1fr 1.4fr}
.pd-net-row {display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 0;border-bottom:1px solid var(--hairline)}
.pd-net-row b {display:block;font-size:14px;font-weight:700}
.pd-net-row small {display:block;font-size:12px;color:var(--muted)}
.pd-net-row .fig {font-size:20px;white-space:nowrap}
.pd-net-total {display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:20px 0 0}
.pd-net-total b {font-size:15px;font-weight:700}
.pd-net-total .fig {font-size:34px}
.pd-net .pd-ai {margin-top:auto}
.pd-net > .pd-ai {margin-top:22px}
.pd-fx .table {box-shadow:none;border-radius:0;margin-top:18px}
.pd-fx .table th,.pd-fx .table td {padding:12px 10px}
.pd-fx .table th:first-child,.pd-fx .table td:first-child {padding-left:0}
.pd-fx .table th:last-child,.pd-fx .table td:last-child {padding-right:0}
.pd-fx .table td small {display:block;font-size:12px;color:var(--muted)}
.pd-fx .table td.r {white-space:nowrap}
.pd-fx .table td .fig {font-size:20px}
.pd-fx .table td.rate {font-size:12.5px;color:var(--muted);line-height:1.5}
.pd-fx .pd-ai {margin-top:auto}
.pd-ag {display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:56px}
.pd-ag .card {padding:22px;gap:14px;border-radius:12px}
.pd-ag-top {display:flex;justify-content:space-between;align-items:center;gap:8px}
.pd-ag-top .app-avatar {width:40px;height:40px;border-radius:12px;font-size:13px}
.pd-ag-top .app-chip {font-size:10px;letter-spacing:.1em;text-transform:uppercase}
.pd-ag b {display:block;font-size:16px;font-weight:700}
.pd-ag small {display:block;font-size:12.5px;color:var(--muted);margin-top:3px;line-height:1.45}
.pd-ag .pd-bal {margin-top:auto;font-size:13px;font-weight:700;color:var(--overdue)}
.pd-ag .pd-bal.ok {color:var(--good)}
.pd-ag .pd-bal.even {color:var(--muted);font-weight:600}
.pd-contract .h3 {margin:16px 0 22px}
.pd-contract .h3 em {font-style:italic;color:var(--muted)}
.pd-clauses {display:flex;flex-direction:column;gap:2px}
.pd-clause {display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center;padding:14px;border-radius:12px;border-bottom:1px solid var(--hairline);font-size:14.5px}
.pd-clause .fig {font-size:20px}
.pd-clause.likely {background:var(--watch-bg);border-bottom-color:transparent}
.pd-clause.check {background:var(--overdue-bg);border-bottom-color:transparent}
.pd-contract .pd-actions .link {font-size:13px}
.pd-side {display:flex;flex-direction:column;gap:16px}
.pd-side .card {flex:1}
.pd-side .h4 {font-size:24px;margin:10px 0 8px}
.pd-stmt {margin-top:22px}
.pd-stmt-row {display:grid;grid-template-columns:1.3fr auto 1.5fr auto;gap:18px;align-items:center;padding:14px 0;border-bottom:1px solid var(--hairline);font-size:14px}
.pd-stmt-row.head {padding:0 0 10px}
.pd-stmt-row.head span {font-size:10.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}
.pd-stmt-row .fig {font-size:18px;white-space:nowrap}
.pd-stmt-row .to {font-size:13px;color:var(--ink-2)}
.pd-stmt-row .st {font-size:12.5px;font-weight:700;color:var(--good);white-space:nowrap}
.pd-stmt-row.aside {background:var(--watch-bg);border-radius:12px;padding:14px;margin:4px -14px;border-bottom:0}
.pd-stmt-row.aside .st {color:var(--ink)}
.pd-stmt-row.aside .to {color:var(--ink)}
.pd-stmt-row.recv .st {color:var(--ink)}
.pd-ledger-row {display:grid;grid-template-columns:64px 1fr auto;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid var(--hairline);font-size:14px}
.pd-ledger-row .d {font-size:12.5px;color:var(--muted)}
.pd-ledger-row .fig {font-size:20px;white-space:nowrap}
.pd-ledger-row .app-chip {margin-left:8px;font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;padding:2px 7px}
.pd-ledger-row.pending {color:var(--muted)}
.pd-ledger-row.pending .fig {color:var(--muted);text-decoration:line-through;text-decoration-thickness:1px}
.pd-ledger-total {display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:20px 0 0}
.pd-ledger-total b {font-size:15px;font-weight:700}
.pd-ledger-total .fig {font-size:34px;color:var(--overdue)}
.pd-ledger p.small {margin-top:18px;color:var(--muted)}
.pd-ledger .h3 {margin:16px 0 10px}
.card-ink.pd-ledger .pd-ledger-row {border-color:var(--site-ink-line)}
.card-ink.pd-ledger .pd-card-sub,.card-ink.pd-ledger .pd-ledger-row .d,.card-ink.pd-ledger .pd-ledger-row.pending,.card-ink.pd-ledger .pd-ledger-row.pending .fig,.card-ink.pd-ledger p.small {color:var(--on-ink)}
.card-ink.pd-ledger .pd-ledger-row .app-chip {display:block;width:max-content;margin:3px 0 0;padding:0;background:none;color:var(--on-ink)}
.card-ink.pd-ledger .pd-ledger-total .fig {color:var(--site-late-on-ink)}
.card-ink.pd-ledger .h3 em {color:var(--on-ink)}
@media (max-width:1100px) {.pd-ag {grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:860px) {.pd-hero {grid-template-columns:1fr;gap:24px;padding-top:64px}
.pd-season-foot {flex-direction:column;align-items:flex-start}
.pd-h1 {font-size:clamp(32px,9.4vw,42px);line-height:1;letter-spacing:-.03em}
.pd-sub {font-size:20px}
.pd-lead {font-size:16px}
.pd-head {flex-direction:column;align-items:flex-start;gap:12px;padding-bottom:20px;margin-bottom:28px}
.pd-h2 {font-size:36px;line-height:1.08}
.pd-card {padding:22px 20px;border-radius:12px}
.pd-card-head .h4 {font-size:24px}
.pd-pair,.pd-pair-r,.pd-pair-l {grid-template-columns:1fr;gap:14px}
.pd-rules {grid-template-columns:1fr;gap:28px;margin-top:36px}
.pd-page .quote {padding:80px 20px}
.pd-page .quote p {font-size:30px}
.pd-band {padding:80px 0;margin-top:80px}
.pd-mail {padding:22px 20px}
.pd-job {padding:20px}
.pd-job-name {font-size:30px}
.pd-tiles {grid-template-columns:1fr}
.pd-cal-scroll {margin:0 -20px;padding:0 20px;scrollbar-width:none}
.pd-cal-in {min-width:760px}
.phone-box {min-height:460px;height:460px}
.phone-box .phone {transform:scale(.74)}
.pd-avail-scroll {overflow-x:auto;margin:0 -20px;padding:0 20px;scrollbar-width:none}
.pd-avail-scroll .pd-avail-days {min-width:760px}
.pd-avail .h3 {font-size:26px}
.pd-avail-days span small {font-size:8.5px}
.pd-notifs {grid-template-columns:1fr;gap:12px}
.pd-pics-grid {gap:8px}
.pd-meas {gap:6px}
.pd-meas small {font-size:9.5px;letter-spacing:.08em}
.pd-meas b {font-size:18px}
.pd-digitals-list {gap:6px}
.pd-pics-grid .pic span.conf {left:6px;bottom:6px;font-size:10px;padding:3px 8px}
.pd-rights-row {grid-template-columns:1fr;gap:8px}
.pd-rights-row > span:last-child {white-space:normal}
.pd-doc {padding:28px 22px;margin-top:48px;border-radius:12px}
.pd-doc-badge {position:static;margin-bottom:18px}
.pd-doc-head .h3 {font-size:32px}
.pd-doc-parties {grid-template-columns:1fr;gap:16px}
.pd-doc-total .fig {font-size:32px}
.pd-remind-scroll {overflow-x:auto;margin:0 -20px;padding:0 20px;scrollbar-width:none}
.pd-remind {min-width:760px}
.pd-who-row {flex-wrap:wrap}
.pd-kpis {grid-template-columns:1fr;gap:28px;margin-top:40px;padding-top:28px}
.pd-kpi .fig {font-size:44px}
.pd-clock {margin-top:28px;display:flex;flex-direction:column}
.pd-pins {order:2;margin-top:8px}
.pd-pin {position:static;transform:none;text-align:left;white-space:normal;display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--hairline)}
.pd-pin i {width:10px;height:10px;border-radius:50%;margin:0;order:-1;flex:none}
.pd-pin small {flex:1}
.pd-zones {grid-template-columns:1fr;margin-top:28px}
.pd-net .fig-40 {font-size:40px}
.pd-fx .table th,.pd-fx .table td {padding:10px 8px;font-size:12.5px}
.pd-ag {grid-template-columns:1fr;gap:10px;margin-top:36px}
.pd-clause {grid-template-columns:1fr auto;padding:12px}
.pd-clause .conf {grid-column:1 / -1;justify-self:start}
.pd-stmt-row {grid-template-columns:1fr auto;gap:6px 14px}
.pd-stmt-row .to {grid-column:1}
.pd-stmt-row .st {grid-column:2;grid-row:2}
.pd-stmt-row.head .to,.pd-stmt-row.head .st {display:none}
.pd-stmt-row.aside {margin:4px 0;padding:12px}
.pd-ledger-row {grid-template-columns:56px 1fr auto}}

/* ==== site/src/css/50-tools.css ==== */
.tl-hero {text-align:center;padding-top:80px}
.tl-hero .crumbs,.tl-chips {justify-content:center}
.tl-hero .badge {margin-bottom:6px;padding:7px 16px;font-size:12px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--ink-2);box-shadow:var(--shadow-card)}
.tl-hero .h1 {max-width:860px;margin:22px auto 22px;font-size:66px;line-height:1;letter-spacing:-.025em;text-wrap:balance}
.tl-hero .lead {max-width:700px;margin:0 auto;font-size:19px;line-height:1.55;text-wrap:pretty}
.tl-chips {display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}
.tl-chips span {display:inline-flex;align-items:center;padding:7px 14px;border-radius:999px;border:1px solid var(--site-line-2);font-size:12.5px;font-weight:600;color:var(--ink-2)}
.tl-tool [hidden],.tl-calc [hidden] {display:none !important}
.tl-tool {display:grid;grid-template-columns:1fr 1.15fr;gap:24px;align-items:stretch;margin-top:56px}
.tl-tool[data-tool="reader"] {align-items:start}
.tl-tool-rights {grid-template-columns:1fr 1.3fr;align-items:start}
.tl-side {display:flex;flex-direction:column;gap:16px;min-width:0}
.tl-side > :last-child {flex:1}
.tl-side > .card:last-child > .meta:last-child {margin-top:auto}
.tl-tool-rights .tl-panel > .btn-accent {width:100%;justify-content:center;padding:14px 26px;font-size:14.5px;box-shadow:var(--site-shadow-accent)}
.tl-rt-title {font-family:var(--serif);font-weight:400;font-size:28px;letter-spacing:-.02em;line-height:1}
.tl-panel {gap:18px;min-width:0;padding:28px}
.tl-tool > .tl-panel:not(.card-ink) {box-shadow:var(--site-shadow-tool)}
.tl-tool .card:not(.card-ink) > .eyebrow,.tl-tool .card:not(.card-ink) > .tl-panel-head > .eyebrow {color:var(--ink-2)}
.tl-side > .card-ink {padding:32px 34px;gap:6px}
.tl-side > .card-ink .tl-kpis {margin-top:16px;gap:24px}
.tl-side > .card-ink .tl-lines {margin-top:22px}
.tl-side > .card-ink .tl-due {padding-top:16px}
.tl-panel > .btn,.tl-panel > .btns {margin-top:4px}
.tl-panel-head {display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.tl-note {font-size:12.5px;line-height:1.55;color:var(--ink);background:var(--tint);border-radius:14px;padding:12px 16px}
.card-ink .tl-note {color:var(--on-ink);background:none;padding:16px 0 0;border-radius:0}
.tl-soon {font-size:13.5px;line-height:1.55;color:var(--ink);background:var(--tint);border-radius:12px;padding:12px 14px}
.tl-error {font-size:13.5px;line-height:1.55;color:var(--overdue);background:var(--overdue-bg);border-radius:12px;padding:12px 14px}
.tl-actions {align-items:center}
.tl-actions .meta {flex-basis:100%}
.tl-tool button.btn-accent,.tl-calc button.btn-accent {color:var(--on-ink-strong)}
.tl-tool button.btn-accent[disabled] {background:var(--paper);color:var(--muted);border-color:var(--border)}
.tl-field {display:flex;flex-direction:column;gap:8px}
.tl-grid2 {display:grid;grid-template-columns:1fr 1fr;gap:14px}
.tl-label {font-size:12.5px;font-weight:700;color:var(--ink-2);letter-spacing:.01em}
.tl-label-row {display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.tl-label-row b {font-size:12.5px;font-weight:700;color:var(--ink)}
.tl-input,.tl-select,.tl-textarea {width:100%;min-height:44px;border:1.5px solid var(--line);border-radius:var(--r-field);padding:10px 14px;font-family:inherit;font-size:15px;color:var(--ink);background:var(--frame)}
.tl-input:focus-visible,.tl-select:focus-visible,.tl-textarea:focus-visible,.tl-range:focus-visible {outline:var(--focus);outline-offset:var(--focus-gap);border-color:var(--accent)}
.tl-select {appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ink) 50%),linear-gradient(135deg,var(--ink) 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 15px) 50%;background-size:5px 5px;background-repeat:no-repeat;padding-right:36px}
.tl-textarea {min-height:340px;resize:vertical;line-height:1.6;font-size:14.5px;padding:16px 18px;border-radius:10px}
.tl-input-unit {position:relative}
.tl-input-unit span {position:absolute;right:14px;top:50%;transform:translateY(-50%);font-size:14px;color:var(--muted)}
.tl-input-unit .tl-input {padding-right:34px}
.tl-input[type="number"] {-moz-appearance:textfield}
.tl-input[type="number"]::-webkit-outer-spin-button,.tl-input[type="number"]::-webkit-inner-spin-button {-webkit-appearance:none;margin:0}
.tl-range {width:100%;height:44px;margin:0;padding:0;background:transparent;cursor:pointer;-webkit-appearance:none;appearance:none}
.tl-range {accent-color:var(--accent)}
.tl-range::-webkit-slider-runnable-track {height:4px;border-radius:999px;background:linear-gradient(to right,var(--accent) var(--fill,50%),var(--hairline) var(--fill,50%))}
.tl-range::-moz-range-track {height:4px;border-radius:999px;background:var(--hairline)}
.tl-range::-moz-range-progress {height:4px;border-radius:999px;background:var(--accent)}
.tl-range::-webkit-slider-thumb {-webkit-appearance:none;width:20px;height:20px;margin-top:-8px;border-radius:50%;background:var(--accent);border:0}
.tl-range::-moz-range-thumb {width:18px;height:18px;border-radius:50%;background:var(--accent);border:0}
.tl-tabs {display:flex;flex-wrap:nowrap;gap:2px;padding:4px;margin:0;border-radius:999px;background:var(--hairline)}
.tl-tabs .tab {flex:1;border:0;border-radius:999px;padding:10px 16px;font-size:13.5px;font-weight:700;color:var(--ink-2);background:transparent}
.card-tint .tl-tabs .tab {color:var(--ink)}
.tl-tabs .tab.on,.tl-tabs .tab[aria-selected="true"] {background:var(--ink);color:var(--site-paper)}
.tl-range-marks {display:flex;justify-content:space-between}
.tl-kpis {display:grid;grid-template-columns:1fr 1fr;gap:18px}
.tl-kpis-3 {grid-template-columns:repeat(3,1fr)}
.tl-kpis > div {display:flex;flex-direction:column;gap:8px;min-width:0}
.tl-kpi-label {font-size:13px;color:var(--ink-2)}
.card-ink .tl-kpi-label {color:var(--on-ink)}
.tl-kpi {display:block;font-family:var(--serif);font-weight:400;font-size:56px;letter-spacing:-.03em;line-height:1;overflow-wrap:anywhere}
.tl-kpis-3 .tl-kpi {font-size:34px}
.card-ink .tl-kpi[data-out="keep"] {color:var(--accent-on-ink)}
.tl-lines {display:flex;flex-direction:column;border-top:1px solid var(--on-ink-strong)}
.tl-line {display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:11px 0;border-bottom:1px solid var(--on-ink-strong);font-size:13.5px;color:var(--site-ink-text)}
.tl-line b {font-family:var(--serif);font-weight:400;font-size:19px;white-space:nowrap;color:var(--on-ink-strong)}
.tl-line-muted b {color:var(--on-ink)}
.card-tint .tl-lines,.card-tint .tl-line {border-color:var(--hairline)}
.card-tint .tl-line,.card-tint .tl-line-muted b {color:var(--ink-2)}
.card-tint .tl-line b {color:var(--ink)}
.card-tint .tl-line-plus b {color:var(--ink)}
.tl-line-warn b {color:var(--watch)}
.tl-line-plus b {color:var(--site-good-on-ink)}
.tl-due {display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:13.5px;color:var(--on-ink)}
.tl-due b {font-family:var(--serif);font-weight:400;font-size:26px;letter-spacing:-.02em;color:var(--on-ink-strong);text-align:right}
.tl-zones {position:relative;display:flex;height:10px;border-radius:999px;overflow:visible;background:var(--hairline)}
.tl-zones i {display:block;height:100%}
.tl-zones i.ok {background:var(--good);border-radius:999px 0 0 999px}
.tl-zones i.warn {background:var(--watch)}
.tl-zones i.late {background:var(--overdue);border-radius:0 999px 999px 0}
.tl-marker {position:absolute;top:-6px;width:3px;height:22px;margin-left:-1.5px;border-radius:2px;background:var(--ink)}
.tl-clock-line {font-size:14px;font-weight:700}
.tl-reminders .row b {font-size:14px}
.tl-dplus {font-family:var(--serif);font-size:22px;color:var(--good);width:64px;flex:none}
.tl-reminders .row:nth-child(2) .tl-dplus {color:var(--site-watch-text)}
.tl-reminders .row:nth-child(3) .tl-dplus {color:var(--overdue)}
.tl-rdate {font-size:13px;color:var(--ink-2);text-align:right}
.tl-list {display:flex;flex-direction:column;gap:14px}
.tl-list li {display:flex;gap:14px;align-items:flex-start}
.tl-list .num {font-size:22px;width:30px;flex:none;padding-top:2px}
.tl-list b {display:block;font-size:14.5px;font-weight:700}
.tl-list p {font-size:13.5px;line-height:1.55;color:var(--ink-2)}
.tl-loading-head {display:flex;align-items:center;gap:12px;font-size:16px}
.tl-loading-head img {width:34px;height:34px;border-radius:10px}
.tl-skeleton {display:flex;flex-direction:column;gap:10px}
.tl-skeleton i {display:block;height:14px;border-radius:7px;background:linear-gradient(90deg,var(--sk-a),var(--sk-b),var(--sk-a));background-size:200% 100%;animation:tl-sheen 1.4s linear infinite}
.tl-skeleton i:nth-child(2) {width:82%} .tl-skeleton i:nth-child(4) {width:64%} .tl-skeleton i:nth-child(5) {width:90%}
@keyframes tl-sheen {from {background-position:200% 0} to {background-position:-200% 0}}
@media (prefers-reduced-motion:reduce) {.tl-skeleton i {animation:none}}
.tl-tally {display:inline-flex;gap:6px;flex-wrap:wrap}
.tl-summary {font-family:var(--serif);font-size:24px;line-height:1.25;letter-spacing:-.02em}
.tl-clauses {display:flex;flex-direction:column}
.tl-clause {display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:14px 0;border-top:1px solid var(--hairline)}
.tl-clause-main {min-width:0;flex:1}
.tl-clause-head {display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}
.tl-clause-head b {font-size:14.5px;font-weight:700}
.tl-clause-head span {font-family:var(--serif);font-size:17px;letter-spacing:-.01em;color:var(--ink)}
.tl-clause p {font-size:13.5px;line-height:1.55;color:var(--ink-2);margin-top:4px}
.tl-questions {display:flex;flex-direction:column}
.tl-q {display:flex;gap:10px;padding:12px 0;border-top:1px solid var(--hairline);font-size:14px;line-height:1.55}
.tl-q i {font-style:normal;color:var(--ai);flex:none}
.tl-app .btn {align-self:flex-start}
.tl-does {margin-top:56px;gap:16px}
.tl-does .card {padding:26px 28px;border-radius:12px}
.tl-does .eyebrow {margin-bottom:10px}
.tl-does-yes {color:var(--good)}
.tl-does-no {color:var(--overdue)}
.tl-does-text {font-size:14.5px;line-height:1.7;color:var(--site-ink-soft)}
.tl-looks {padding:32px 34px;gap:0}
.tl-looks-title {font-family:var(--serif);font-weight:400;font-size:32px;letter-spacing:-.02em;line-height:1.08;margin:14px 0 20px;color:var(--on-ink-strong)}
.tl-looks-title em {color:var(--on-ink)}
.tl-looks .tl-list {gap:0}
.tl-looks .tl-list li {gap:14px;padding:12px 0;border-bottom:1px solid var(--on-ink-strong)}
.tl-looks .tl-list .num {font-size:16px;width:26px;padding-top:0;color:var(--site-pink-label)}
.tl-looks .tl-list b {font-size:14px}
.tl-looks .tl-list p {font-size:12.5px;line-height:1.5;color:var(--on-ink);margin-top:2px}
.tl-looks .tl-note {margin-top:auto;padding:20px 0 0;background:none;border-radius:0;font-size:12.5px;color:var(--on-ink)}
.tl-timeline {gap:0}
.tl-timeline .tl-panel-head {margin-bottom:18px}
.tl-row {display:grid;grid-template-columns:1.1fr 2fr auto;gap:18px;align-items:center;padding:16px 0;border-top:1px solid var(--hairline)}
.tl-axis-row {padding:0 0 6px;border-top:0;align-items:end}
.tl-axis {position:relative;height:22px}
.tl-axis span {position:absolute;top:0;transform:translateX(-50%);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);white-space:nowrap}
.tl-axis span:first-child {transform:none}
.tl-axis b {position:absolute;top:0;bottom:-6px;width:2px;margin-left:-1px;background:var(--accent)}
.tl-row-name {min-width:0}
.tl-row-name b {display:block;font-size:15px;font-weight:700}
.tl-row-name small {display:block;font-size:12.5px;color:var(--muted);margin-top:2px;line-height:1.45}
.tl-track {position:relative;height:10px;border-radius:999px;background:var(--hairline)}
.tl-bar {position:absolute;top:0;bottom:0;border-radius:999px;background:var(--good);min-width:4px}
.tl-bar.soon {background:var(--watch)}
.tl-bar.over {background:var(--overdue)}
.tl-today {position:absolute;top:-5px;bottom:-5px;width:2px;margin-left:-1px;background:var(--accent)}
.tl-status {display:flex;align-items:center;gap:7px;font-size:12.5px;font-weight:700;color:var(--ink-2);margin-top:8px}
.tl-status::before {content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--good);flex:none}
.tl-status.soon::before {background:var(--watch)}
.tl-status.over::before {background:var(--overdue)}
.tl-action {font-size:12.5px;color:var(--muted);margin-top:2px;line-height:1.45}
.tl-action:empty {display:none}
.tl-remove {min-height:0;padding:6px 12px;border-radius:999px;border:1px solid var(--site-line-2);background:var(--paper);font-size:11.5px;font-weight:700;color:var(--ink-2)}
.tl-empty {font-size:14px;color:var(--ink-2);padding:18px 0}
.tl-legend {flex-direction:column;gap:8px;padding-top:12px;border-top:1px solid var(--hairline)}
.tl-legend span {align-items:flex-start}
.tl-legend i {flex:none;margin-top:3px;width:9px;height:9px;border-radius:999px}
.tl-legend i:not([class]) {background:var(--site-good-bar)}
.tl-calc {margin:28px 0;gap:18px}
.tl-calc .tl-input,.tl-calc .tl-select {background:var(--paper)}
@media (max-width:860px) {.tl-tool,.tl-tool-rights {grid-template-columns:1fr;gap:14px;margin-top:32px}
.tl-grid2 {grid-template-columns:1fr}
.tl-kpis,.tl-kpis-3 {grid-template-columns:1fr}
.tl-kpi,.tl-kpis-3 .tl-kpi {font-size:40px}
.tl-summary {font-size:21px}
.tl-row {grid-template-columns:1fr;gap:10px}
.tl-axis-row {grid-template-columns:1fr}
.tl-axis-row > :first-child,.tl-axis-row > :last-child {display:none}
.tl-reminders .row {flex-direction:column;align-items:flex-start;gap:4px}
.tl-reminders .tl-dplus {width:auto}
.tl-rdate {text-align:left}
.tl-remove {justify-self:stretch;width:100%;min-height:44px;padding:10px 16px}
.tl-tabs {margin-bottom:0;overflow:visible;padding-bottom:4px}
.tl-hero {padding-top:48px}
.tl-hero .h1 {font-size:36px;line-height:1.04;letter-spacing:-.02em}
.tl-hero .lead {font-size:16.5px}
.tl-input,.tl-select,.tl-textarea {font-size:16px}}

/* ==== site/src/css/60-guides.css ==== */
.gd-hero {padding-top:72px}
.gd-hero .crumbs {margin-bottom:26px}
.gd-kicker {display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:22px}
.gd-kicker i {font-style:normal;color:var(--muted)}
.gd-kicker span {letter-spacing:0;font-weight:600;text-transform:none;color:var(--muted)}
.gd-hero .h1 {font-size:63px;letter-spacing:-.025em;max-width:920px;margin-bottom:22px;text-wrap:balance}
.gd-hero .lead {font-size:19px;max-width:720px}
.gd-hero .gd-disclaimer {margin-top:14px}
.gd-brief {margin-top:22px;max-width:720px;border-left:3px solid var(--accent);padding:6px 0 6px 20px}
.gd-brief .eyebrow {display:block;color:var(--ai);margin-bottom:6px}
.gd-brief p {font-size:16px;line-height:1.6;color:var(--ink);margin:0}
.gd-by {margin-top:14px;max-width:720px;font-size:13px;line-height:1.55;color:var(--muted)}
.gd-by a {color:var(--accent);font-weight:600}
.gd-source {margin:26px 0 0;font-size:13.5px;line-height:1.6;color:var(--muted)}
.gd-source .eyebrow {display:block;color:var(--muted);margin-bottom:4px}
.gd-source a {color:var(--accent);font-weight:600}
.gd-layout {display:grid;grid-template-columns:240px minmax(0,1fr);gap:56px;margin-top:64px;align-items:start}
.gd-toc {position:sticky;top:92px;align-self:start;display:flex;flex-direction:column}
.gd-toc-d summary {list-style:none;cursor:default;display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding:0 0 10px;border-bottom:1px solid var(--ink)}
.gd-toc-d summary::-webkit-details-marker {display:none}
.gd-toc-plus {display:none;font-family:var(--serif);font-size:22px;line-height:1;color:var(--ink);transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.gd-toc-d[open] .gd-toc-plus {transform:rotate(45deg)}
.gd-toc-d nav {display:flex;flex-direction:column}
.gd-toc a {display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;align-items:baseline;padding:11px 0;border-bottom:1px solid var(--site-line);font-size:14px;line-height:1.35;color:var(--ink);min-height:44px}
.gd-toc a:hover {color:var(--accent)}
.gd-toc a .num {font-family:var(--serif);font-style:normal;font-size:15px;color:var(--muted);width:auto}
@media (min-width:861px) {.gd-toc-d summary {pointer-events:none}}
.gd-toc-card {margin-top:22px;background:var(--ink);color:var(--on-ink-strong);border-radius:10px;padding:20px;display:flex;flex-direction:column;gap:10px}
.gd-toc-card .eyebrow {color:var(--site-pink-label);margin:0}
.gd-toc-card p {font-family:var(--serif);font-size:20px;line-height:1.2;letter-spacing:-.01em;color:var(--on-ink-strong)}
.gd-toc-card a {font-size:12.5px;font-weight:700;color:var(--on-ink-strong);min-height:44px;display:inline-flex;align-items:center}
.gd-toc-card a:hover {color:var(--site-pink-label)}
.gd-art {max-width:760px;font-size:17.5px;line-height:1.75;color:var(--ink);min-width:0}
.gd-art > p {margin:0 0 22px}
.gd-art strong {font-weight:700}
.gd-art a {color:var(--accent);font-weight:600}
.gd-h2 {display:flex;align-items:baseline;gap:16px;font-family:var(--serif);font-weight:400;font-size:40px;line-height:1.1;letter-spacing:-.02em;margin:56px 0 20px;scroll-margin-top:92px}
.gd-h2 .num {font-size:30px;flex:none}
.gd-h2 em {font-style:italic;color:var(--accent)}
.gd-fig {margin:36px 0}
.gd-fig .pic {border-radius:12px}
.gd-fig figcaption {font-size:12.5px;color:var(--muted);margin-top:10px}
.gd-fig .pic span,.gd-founder .pic span {color:var(--muted)}
.gd-polas {margin:32px 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.gd-polas div {border:1.5px dashed var(--dash-strong);border-radius:16px;background:var(--frame);aspect-ratio:3 / 4;display:flex;flex-direction:column;justify-content:flex-end;gap:6px;padding:16px}
.gd-polas b {font-family:var(--serif);font-weight:400;font-size:22px;line-height:1.1}
.gd-polas small {font-size:12px;line-height:1.45;color:var(--muted)}
.gd-note {margin:32px 0;background:var(--tint);border-radius:10px;padding:20px 24px;display:flex;gap:14px;align-items:flex-start}
.gd-note .eyebrow,.gd-note a {color:var(--ai)}
.gd-note img {width:28px;height:28px;border-radius:8px;flex:none;margin-top:2px}
.gd-note .eyebrow {color:var(--ai);display:block;margin-bottom:6px}
.gd-note p {font-size:15px;line-height:1.6;color:var(--ink);margin:0}
.gd-tbl {margin:32px 0}
.gd-tbl.table {padding:8px 30px 14px}
.gd-tbl th,.gd-tbl td {padding:15px 22px 15px 0;border-top:0;border-bottom:1px solid var(--hairline)}
.gd-tbl th:last-child,.gd-tbl td:last-child {padding-right:0}
.gd-tbl thead th {padding:16px 22px 12px 0;border-bottom:1.5px solid var(--ink)}
.gd-tbl tbody tr:last-child td {border-bottom:0}
.gd-tbl.gd-tbl-k td:first-child {font-family:var(--serif);font-weight:400;font-size:22px;letter-spacing:-.015em;line-height:1.2;color:var(--ink)}
.gd-tbl table {min-width:640px}
@media (max-width:860px) {.gd-tbl table.stack {min-width:0} .gd-tbl.table {padding:4px 18px 8px}}
.gd-tbl thead th {font-family:var(--serif);font-weight:400;font-size:22px;letter-spacing:-.015em;text-transform:none;color:var(--ink);line-height:1.15;padding-top:22px}
.gd-tbl thead th:first-child {font-family:var(--sans);font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}
.gd-tbl td:first-child {font-weight:700;color:var(--ink)}
.gd-tbl td,.gd-tbl td.gd-ask {color:var(--site-ink-soft)}
.gd-tbl td.gd-word {font-family:var(--serif);font-size:19px;letter-spacing:-.01em;font-weight:400}
.gd-tbl td.gd-city {font-family:var(--serif);font-size:22px;letter-spacing:-.015em;font-weight:400}
.gd-tbl td.gd-term {font-weight:700;color:var(--ink)}
.gd-tbl-note {font-size:12.5px;color:var(--muted);margin-top:14px}
.gd-tbl td.gd-city a {display:inline-flex;align-items:center;min-height:44px;min-width:44px;color:var(--ink)}
.gd-tbl td.gd-city a:hover {color:var(--accent)}
.gd-quote {margin:36px 0;padding:0 0 0 26px;border-left:3px solid var(--accent);font-family:var(--serif);font-style:italic;font-size:30px;line-height:1.25;letter-spacing:-.015em;color:var(--ink)}
.gd-ink {margin:40px 0;background:var(--ink);color:var(--on-ink-strong);border-radius:14px;padding:34px 36px;display:flex;flex-direction:column;gap:14px}
.gd-ink .eyebrow {color:var(--site-pink-label)}
.gd-ink .gd-ink-title {font-family:var(--serif);font-size:32px;line-height:1.15;letter-spacing:-.02em;color:var(--on-ink-strong);margin-bottom:8px}
.gd-ink-list {display:flex;flex-direction:column;gap:12px}
.gd-ink-list div {display:flex;gap:12px;font-size:14.5px;line-height:1.5;color:var(--on-ink)}
.gd-ink-list .num {width:26px;flex:none;font-size:17px;color:var(--site-pink-label)}
.gd-check {margin:32px 0;background:var(--paper);border-radius:12px;box-shadow:var(--shadow-card);padding:24px 28px}
.gd-check .eyebrow {color:var(--muted);margin-bottom:14px}
.gd-check div {display:flex;flex-direction:column;gap:12px}
.gd-check div div {flex-direction:row;align-items:flex-start;gap:12px}
.gd-check i {display:block;width:20px;height:20px;flex:none;border:1.5px solid var(--ink);border-radius:6px;margin-top:2px}
.gd-check span {font-size:14.5px;line-height:1.5}
.gd-faq p a {color:var(--accent);font-weight:600}
.gd-art .gd-faq {margin-top:22px}
.gd-faq-split {display:grid;grid-template-columns:1fr 1.6fr;gap:56px;align-items:start}
.gd-faq-split .h2 {position:sticky;top:92px}
.gd-head {display:flex;justify-content:space-between;align-items:flex-end;gap:32px;border-bottom:1px solid var(--hairline-side);padding-bottom:28px;margin-bottom:40px}
.gd-head .h2 {font-size:56px}
.gd-head p {font-size:14px;color:var(--muted);max-width:360px;text-align:right;line-height:1.55}
.gd-next {padding-top:110px}
.gd-next .links b {font-family:var(--serif);font-weight:400;font-size:26px;letter-spacing:-.015em;line-height:1.15}
.gd-two {display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:56px}
.gd-two .card {gap:12px}
.gd-two .card-title {font-family:var(--serif);font-weight:400;font-size:30px;letter-spacing:-.02em;line-height:1.1}
.gd-two .card-text {font-size:13.5px}
.gd-two-fig {display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-top:auto;padding-top:16px;border-top:1px solid var(--hairline);font-size:12.5px;color:var(--muted)}
.gd-two-fig .fig {font-size:34px}
.gd-two-fig strong {color:var(--ink)}
.card-ink .gd-two-fig {border-top-color:var(--ink-raised-2);color:var(--on-ink)}
.card-ink .gd-two-fig strong,.card-ink .gd-two-fig .fig {color:var(--on-ink-strong)}
.gd-rail {display:flex;gap:8px;flex-wrap:wrap;margin:40px 0 0}
.gd-rail a {display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:10px 16px;border-radius:6px;background:var(--paper);box-shadow:var(--shadow-card);font-size:13.5px;font-weight:600;color:var(--ink)}
.gd-rail a:hover {color:var(--accent)}
.gd-rail .num {font-size:15px}
.gd-sec {padding:110px 0 0;scroll-margin-top:60px}
.gd-sec-paper {background:var(--paper);padding:110px 0;margin-top:110px}
.gd-sec-paper + .gd-sec {padding-top:110px}
.gd-sec-paper .card {background:var(--board);box-shadow:none}
.gd-sec-paper .card-ink {background:var(--ink)}
.gd-sec-paper .table {background:var(--board);box-shadow:none}
.gd-split {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:64px;align-items:start}
.gd-static {position:sticky;top:92px}
.gd-static .num {font-size:64px;display:block;margin-bottom:14px}
.gd-static .h2 {font-size:44px;margin-bottom:14px}
.gd-static p {font-size:14.5px;color:var(--muted);line-height:1.6;max-width:360px}
.gd-split .gd-art {max-width:none}
.gd-split .gd-art > :first-child {margin-top:0}
.gd-slip {margin:32px 0;background:var(--paper);border-radius:12px;box-shadow:var(--shadow-card);padding:24px 28px}
.gd-sec-paper .gd-slip {background:var(--board);box-shadow:none}
.gd-slip .eyebrow {color:var(--muted);margin-bottom:12px}
.gd-slip-row {display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:10px 0;font-size:14px;border-top:1px solid var(--hairline)}
.gd-slip-row:first-of-type {border-top:0}
.gd-slip-row .fig {font-size:18px;white-space:nowrap}
.gd-slip-total {font-weight:700;border-top:1.5px solid var(--ink);margin-top:4px}
.gd-slip-total .fig {font-size:24px}
.gd-slip-note {font-size:12px;color:var(--muted);margin-top:12px}
.gd-slip-row.gd-flag {background:var(--overdue-row);margin:0 -12px;padding-left:12px;padding-right:12px;border-radius:8px}
.gd-slip-row .num {font-size:15px;width:22px;text-align:right;flex:none}
.gd-slip-row .gd-slip-amount {display:flex;align-items:baseline;gap:8px}
.gd-contract {display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:40px;margin-top:56px;align-items:start}
.gd-doc {background:var(--paper);border-radius:12px;box-shadow:var(--shadow-card);padding:36px 40px;display:flex;flex-direction:column;gap:26px}
.gd-doc-head {display:flex;justify-content:space-between;align-items:baseline;gap:20px;flex-wrap:wrap;border-bottom:1px solid var(--hairline);padding-bottom:18px}
.gd-doc-head b {font-family:var(--serif);font-weight:400;font-size:30px;letter-spacing:-.02em}
.gd-doc-head b span {color:var(--muted)}
.gd-doc-head small {font-size:12px;color:var(--muted)}
.gd-doc .eyebrow {color:var(--muted);display:block;margin-bottom:8px}
.gd-doc p {font-size:14.5px;line-height:1.75;color:var(--ink-2)}
.gd-doc mark {border-radius:4px;padding:1px 4px}
.gd-doc mark sup {font-family:var(--serif);font-style:italic;font-weight:400;font-size:13px;color:var(--accent);margin-left:2px}
mark.gd-ok {background:var(--good-bg);color:var(--ink)}
mark.gd-warn {background:var(--watch-bg);color:var(--ink)}
mark.gd-bad {background:var(--overdue-bg);color:var(--ink)}
.gd-notes {position:sticky;top:92px;display:flex;flex-direction:column;gap:14px}
.gd-notes .eyebrow {color:var(--muted)}
.gd-notes-list {display:flex;flex-direction:column;gap:14px}
.gd-note-row {display:grid;grid-template-columns:28px 1fr;gap:6px}
.gd-note-row .num {font-size:18px}
.gd-note-row b {display:flex;align-items:center;gap:8px;font-size:13.5px;font-weight:700}
.gd-note-row small {display:block;font-size:12.5px;line-height:1.5;color:var(--ink-2);margin-top:2px}
.gd-dot {display:inline-block;width:8px;height:8px;border-radius:2px;background:var(--good);flex:none}
.gd-dot.warn {background:var(--watch-ink)}
.gd-dot.bad {background:var(--overdue)}
.gd-legend {display:flex;gap:16px;flex-wrap:wrap;font-size:11.5px;color:var(--muted);padding-top:12px;border-top:1px solid var(--hairline-side)}
.gd-legend span {display:inline-flex;align-items:center;gap:6px}
.gd-pair {display:grid;grid-template-columns:1fr 1fr;gap:20px}
.gd-pair .card {padding:32px;gap:12px}
.gd-pair .card-title {font-family:var(--serif);font-weight:400;font-size:36px;letter-spacing:-.02em;line-height:1.1}
.gd-pair .card-text {font-size:14.5px}
.gd-kv {display:flex;flex-direction:column;gap:10px;margin-top:8px;padding-top:18px;border-top:1px solid var(--hairline)}
.gd-kv div {display:grid;grid-template-columns:1fr 1.6fr;gap:12px;font-size:13.5px;line-height:1.45}
.gd-kv b {font-weight:700}
.gd-kv span {color:var(--ink-2)}
.gd-cardlink {margin-top:auto;display:inline-flex;align-items:center;min-height:44px;font-size:13.5px}
.card-ink .gd-kv {border-top-color:var(--ink-raised-2)}
.card-ink .gd-kv span {color:var(--on-ink)}
.gd-buy {display:grid;grid-template-columns:1.4fr 1fr;gap:20px}
.gd-scale-head {display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap}
.gd-scale-head b {font-family:var(--serif);font-weight:400;font-size:30px;letter-spacing:-.02em}
.gd-scale-head small {font-size:12.5px;color:var(--muted)}
.gd-scale {display:flex;flex-direction:column;gap:14px;margin:18px 0}
.gd-scale div {display:grid;grid-template-columns:1.3fr 2fr auto;gap:14px;align-items:center}
.gd-scale b {font-size:14px;font-weight:700}
.gd-scale .bar {height:8px}
.gd-scale .fig {font-size:20px;min-width:96px;text-align:right}
.gd-scale-note {font-size:12.5px;color:var(--muted);line-height:1.5}
.gd-reads {gap:14px}
.gd-reads .card-title {font-family:var(--serif);font-weight:400;font-size:30px;letter-spacing:-.02em;line-height:1.1}
.gd-reads-list {display:flex;flex-direction:column;gap:10px;margin-top:4px}
.gd-reads-list div {display:grid;grid-template-columns:110px 1fr;gap:10px;align-items:center;font-size:13.5px;color:var(--on-ink)}
.gd-reads .card-text {margin-top:auto}
.gd-reads .conf {color:var(--ink)}
.gd-reads .btn {margin-top:12px}
.gd-quote-band {padding:120px 0;text-align:center}
.gd-quote-band .quote p {font-style:italic;font-size:58px;letter-spacing:-.015em}
.gd-quote-band .quote small {letter-spacing:.16em;text-transform:uppercase;font-weight:700;font-size:12px;color:var(--muted)}
.gd-frieze-scroll {overflow-x:auto;margin-top:56px}
.gd-frieze {position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}
.gd-frieze::before {content:"";position:absolute;left:12%;right:12%;top:26px;height:2px;background:var(--line)}
.gd-frieze div {position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;padding:0 16px;--c:var(--ink);--t:var(--ink)}
.gd-frieze i {display:block;width:16px;height:16px;border-radius:999px;background:var(--c);border:3px solid var(--site-paper);box-shadow:0 0 0 1px var(--c);margin-top:18px}
.gd-frieze .fig {font-size:30px;margin-top:16px;color:var(--t)}
.gd-frieze b {font-size:15px;font-weight:700;margin-top:6px}
.gd-frieze small {font-size:13px;color:var(--muted);line-height:1.55;margin-top:6px}
.gd-frieze .gd-ok {--c:var(--site-good-bar);--t:var(--good)}
.gd-frieze .gd-warn {--c:var(--watch);--t:var(--watch-ink)}
.gd-frieze .gd-accent {--c:var(--accent);--t:var(--accent)}
.gd-kpis {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:40px;padding-top:32px;border-top:1px solid var(--dash)}
.gd-kpis .eyebrow {color:var(--muted);display:block;margin-bottom:10px}
.gd-kpis .fig {font-size:64px;letter-spacing:-.03em;display:block}
.gd-kpis .fig.late {color:var(--overdue)}
.gd-kpis small {display:block;font-size:13px;color:var(--muted);margin-top:8px;line-height:1.5}
.gd-bars {display:grid;grid-template-columns:1.5fr 1fr;gap:20px}
.gd-bars .card {gap:18px}
.gd-bars .gd-scale-head {padding-bottom:6px}
.gd-pay {display:flex;flex-direction:column;gap:8px}
.gd-pay-head {display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}
.gd-pay-head b {font-size:15px;font-weight:700}
.gd-pay-head span {font-size:12.5px;font-weight:700;color:var(--good)}
.gd-pay-head span.warn {color:var(--ink)}
.gd-pay-head span.late {color:var(--overdue)}
.gd-pay small {font-size:13px;color:var(--ink-2);line-height:1.5}
.gd-why .card-title {font-family:var(--serif);font-weight:400;font-size:30px;letter-spacing:-.02em;line-height:1.1}
.gd-why .card-text {font-size:14px}
.gd-why-list {display:flex;flex-direction:column;gap:10px;margin-top:auto;padding-top:16px;border-top:1px solid var(--ink-raised-2);font-size:13.5px}
.gd-why-list div {display:flex;align-items:flex-start;gap:10px;color:var(--on-ink);line-height:1.5}
.gd-why-list strong {color:var(--on-ink-strong)}
.gd-why-list i {display:block;width:10px;height:10px;border-radius:3px;flex:none;margin-top:5px;background:var(--good)}
.gd-why-list i.warn {background:var(--watch)}
.gd-why-list i.late {background:var(--accent-on-ink)}
.gd-letters {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.gd-letter {gap:12px}
.gd-letter-head {display:flex;justify-content:space-between;align-items:center;gap:12px}
.gd-letter-head .fig {font-size:30px}
.gd-letter-head .fig.ok {color:var(--good)} .gd-letter-head .fig.warn {color:var(--watch-ink)} .gd-letter-head .fig.late {color:var(--overdue)}
.gd-letter-head span:not(.fig) {font-size:11.5px;font-weight:700;background:var(--hairline);color:var(--ink-2);padding:4px 10px;border-radius:999px}
.gd-letter b {font-size:15px;font-weight:700}
.gd-letter .gd-subject {font-size:12px;color:var(--muted)}
.gd-letter-body {font-family:var(--serif);font-size:16.5px;line-height:1.5;color:var(--ink-2);padding:14px 0;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline)}
.gd-letter small {font-size:12.5px;color:var(--muted);line-height:1.5;margin-top:auto}
.gd-after {max-width:760px;margin-top:40px;font-size:17.5px;line-height:1.75}
.gd-stmt {display:grid;grid-template-columns:1.5fr 1fr;gap:40px;align-items:start}
.gd-stmt .gd-slip {margin:0}
.gd-stmt-head {display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap;margin-bottom:14px}
.gd-stmt-head b {font-family:var(--serif);font-weight:400;font-size:30px;letter-spacing:-.02em}
.gd-stmt-head b span {color:var(--muted)}
.gd-stmt-head small {font-size:12px;color:var(--muted)}
.gd-stmt .gd-slip-row:first-of-type {border-top:1.5px solid var(--ink)}
.gd-stmt .gd-notes {position:static}
.gd-start {background:var(--ink);color:var(--on-ink-strong);border-radius:14px;padding:34px 36px;display:grid;grid-template-columns:1fr 2fr;gap:32px;margin-top:56px;align-items:center}
.gd-start .eyebrow {color:var(--site-pink-label);display:block;margin-bottom:10px}
.gd-start .gd-start-title {font-family:var(--serif);font-size:32px;line-height:1.15;letter-spacing:-.02em;color:var(--on-ink-strong)}
.gd-start-cards {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.gd-start-cards a {display:flex;flex-direction:column;gap:6px;background:var(--sidebar-raised);color:var(--on-ink-strong);border-radius:16px;padding:18px;min-height:44px}
.gd-start-cards a:hover {color:var(--on-ink-strong);background:var(--ink-raised-2)}
.gd-start-cards b {font-family:var(--serif);font-weight:400;font-size:24px}
.gd-start-cards small {font-size:12.5px;color:var(--on-ink);line-height:1.5}
.gd-alpha {display:flex;gap:6px;flex-wrap:wrap;margin:40px 0 8px}
.gd-alpha a {display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:999px;background:var(--paper);box-shadow:var(--shadow-card);font-family:var(--serif);font-size:20px;color:var(--ink)}
.gd-alpha a:hover {color:var(--accent)}
.gd-letter-sec {display:grid;grid-template-columns:80px minmax(0,1fr);gap:24px;padding:32px 0;border-top:1px solid var(--dash);scroll-margin-top:80px}
.gd-letter-sec > .fig {font-size:64px;color:var(--accent);line-height:1}
.gd-terms {display:grid;grid-template-columns:1fr 1fr;gap:14px}
.gd-term {background:var(--paper);border-radius:10px;box-shadow:var(--shadow-card);padding:22px 24px;display:flex;flex-direction:column;gap:8px}
.gd-term b {font-family:var(--serif);font-weight:400;font-size:28px;letter-spacing:-.02em;line-height:1.1}
.gd-term p {font-size:14.5px;line-height:1.55;color:var(--ink-2)}
.gd-term-foot {margin-top:auto;padding-top:12px;border-top:1px solid var(--hairline);display:flex;gap:8px;font-size:13px;line-height:1.5;color:var(--ink-2)}
.gd-term-foot > i {font-style:normal;color:var(--accent)}
.gd-term-foot .eyebrow {color:var(--muted);display:block;margin-bottom:2px}
.gd-term-foot a {color:var(--accent);font-weight:700;display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;margin:-12px 0 -12px 2px}
.gd-blog-top {display:grid;grid-template-columns:1.2fr 1fr;gap:20px;margin-top:56px}
.gd-feat {background:var(--ink);color:var(--on-ink-strong);border-radius:14px;padding:36px;display:flex;flex-direction:column;justify-content:flex-end;gap:12px;min-height:380px;position:relative;overflow:clip}
.gd-feat::before {content:"";position:absolute;inset:0;background:url(logo-mark.svg) right -10% top -10% / 60% no-repeat;opacity:.06}
.gd-feat > * {position:relative}
.gd-feat .eyebrow {color:var(--site-pink-label)}
.gd-feat b {font-family:var(--serif);font-weight:400;font-size:40px;letter-spacing:-.02em;line-height:1.05}
.gd-feat small {font-size:14.5px;line-height:1.55;color:var(--on-ink)}
.gd-feat:hover {color:var(--on-ink-strong)}
.gd-reader {padding:36px;display:flex;flex-direction:column;gap:12px}
.gd-reader b {font-family:var(--serif);font-weight:400;font-size:34px;letter-spacing:-.02em;line-height:1.08}
.gd-reader .card-text {font-size:14px}
.gd-tools {display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}
.gd-tool {background:var(--tint);color:var(--ink);border-radius:12px;padding:26px 28px;display:flex;justify-content:space-between;align-items:center;gap:20px}
.gd-tool:hover {color:var(--ink);box-shadow:var(--shadow-lift)}
.gd-tool .eyebrow {color:var(--ai);display:block;margin-bottom:6px}
.gd-tool b {display:block;font-family:var(--serif);font-weight:400;font-size:26px;letter-spacing:-.02em;line-height:1.1}
.gd-tool small {display:block;font-size:13px;color:var(--ink-2);margin-top:4px}
.gd-tool i {display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--ink);color:var(--on-ink-strong);font-style:normal;font-size:14px;font-weight:700;flex:none}
.gd-list {background:var(--paper);border-radius:12px;box-shadow:var(--shadow-card);margin-top:20px;padding:0 32px}
.gd-list a {display:grid;grid-template-columns:56px 220px 1fr auto;gap:20px;align-items:center;padding:26px 0;border-top:1px solid var(--hairline);color:var(--ink)}
.gd-list a:first-child {border-top:0}
.gd-list a:hover {color:var(--ink)}
.gd-list .num {font-size:30px}
.gd-list .eyebrow {color:var(--muted)}
.gd-list b {display:block;font-family:var(--serif);font-weight:400;font-size:30px;letter-spacing:-.02em;line-height:1.1}
.gd-list small {display:block;font-size:14.5px;color:var(--ink-2);margin-top:6px;line-height:1.5}
.gd-list i {font-style:normal;font-size:13px;font-weight:700;color:var(--accent)}
.gd-cities {display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.gd-cities-8 {grid-template-columns:repeat(4,minmax(0,1fr))}
.gd-cities-8 a {flex-direction:column;align-items:flex-start;gap:4px}
.gd-cities-8 .eyebrow {color:var(--muted)}
.gd-cities-8 i {margin-top:6px}
.gd-posts b {font-family:var(--serif);font-weight:400;font-size:24px;letter-spacing:-.02em;line-height:1.1}
.gd-posts .eyebrow i {font-style:normal;margin:0 5px;color:var(--muted)}
.gd-feat-photo img {position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.gd-feat-photo::before {z-index:1;background:linear-gradient(to top,rgba(28,23,25,.94),rgba(28,23,25,.72) 45%,rgba(28,23,25,.34));opacity:1}
.gd-feat-photo > * {position:relative;z-index:2}
.gd-cities a {background:var(--paper);border-radius:10px;box-shadow:var(--shadow-card);padding:22px;display:flex;justify-content:space-between;align-items:center;gap:8px;color:var(--ink);min-height:44px}
.gd-cities a:hover {color:var(--ink);box-shadow:var(--shadow-lift)}
.gd-cities b {font-family:var(--serif);font-weight:400;font-size:26px;letter-spacing:-.02em}
.gd-cities i {font-style:normal;font-size:12px;font-weight:700;color:var(--accent)}
.gd-faq-sec {display:grid;grid-template-columns:1fr 1.6fr;gap:56px;padding-top:72px;scroll-margin-top:60px;align-items:start}
.gd-faq-sec .h2 {font-size:48px;position:sticky;top:92px}
.gd-link {color:inherit;text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px}
.gd-link:hover {color:var(--accent);text-decoration-color:var(--accent)}
.gd-ink .gd-link,.gd-ink-list .gd-link,.card-ink .gd-link {color:var(--on-ink-strong);text-decoration-color:var(--on-ink)}
.gd-ink .gd-link:hover,.gd-ink-list .gd-link:hover,.card-ink .gd-link:hover {color:var(--site-pink-label);text-decoration-color:var(--site-pink-label)}
.gd-flow {display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;list-style:none;counter-reset:none}
.gd-flow li {position:relative;background:var(--paper);border-radius:10px;box-shadow:var(--shadow-card);padding:18px 16px}
.gd-flow li + li::before {content:"";position:absolute;left:-10px;top:50%;width:10px;height:1.5px;background:var(--line)}
.gd-flow .eyebrow {display:block;color:var(--muted);margin-bottom:6px}
.gd-flow b {font-family:var(--serif);font-weight:400;font-size:22px;letter-spacing:-.02em;line-height:1.1}
.gd-flow-4 {grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.gd-flow-4 li + li::before {left:-14px;width:14px}
.gd-flow-4 b {font-size:34px;display:block}
.gd-flow small {display:block;margin-top:6px;font-size:13px;line-height:1.45;color:var(--muted)}
.gd-flow-line {gap:0;background:var(--paper);border-radius:12px;box-shadow:var(--shadow-card);padding:24px 12px}
.gd-flow-line li {background:none;box-shadow:none;border-radius:0;text-align:center;padding:0 10px}
.gd-flow-line li + li::before {content:"→";left:-8px;top:8px;width:auto;height:auto;background:none;font-size:16px;color:var(--decor)}
.gd-flow-line .eyebrow {font-family:var(--serif);font-weight:400;font-size:21px;letter-spacing:-.01em;text-transform:none;color:var(--ink);margin:0}
.gd-flow-line li:first-child .eyebrow {color:var(--accent)}
.gd-flow-line b {display:block;font-family:var(--sans);font-size:11px;letter-spacing:0;color:var(--muted);margin-top:6px}
.gd-flow li.gd-flow-end {background:var(--ink);color:var(--on-ink-strong)}
.gd-flow-end .eyebrow {color:var(--site-pink-label)}
.gd-flow-end b {color:var(--on-ink-strong)}
.gd-flow-end small {color:var(--on-ink)}
.gd-rights-tl {padding:26px 30px}
.gd-bar-span {background:transparent;box-shadow:inset 0 0 0 1px var(--hairline)}
.gd-bar-span i {display:block;height:100%;border-radius:inherit}
.gd-rights-legend {margin-top:18px}
.gd-alt {display:flex;flex-direction:column;gap:16px}
.gd-alt article {display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr) minmax(0,1fr);gap:0 28px;padding:26px 22px;align-items:start}
.gd-alt header {display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px}
.gd-alt header > div {display:contents}
.gd-alt header .num {font-size:20px}
.gd-alt header .eyebrow {font-size:10.5px;letter-spacing:0;text-transform:none;padding:3px 9px;border-radius:999px;background:var(--hairline);color:var(--muted)}
.gd-alt h3 {flex-basis:100%;font-family:var(--serif);font-weight:400;font-size:24px;letter-spacing:-.02em;line-height:1.1;margin:4px 0 0}
.gd-alt .meta {flex-basis:100%;font-size:11.5px;color:var(--muted)}
.gd-alt-cols {display:contents}
.gd-alt-cols .eyebrow {display:block;font-size:10.5px;margin-bottom:8px;color:var(--good)}
.gd-alt-cols > div + div .eyebrow {color:var(--overdue)}
.gd-alt-cols p {font-size:13.5px;line-height:1.6;color:var(--ink)}
.gd-alt .card-ink .meta,.gd-alt .card-ink .gd-alt-cols p {color:var(--on-ink)}
.gd-alt .card-ink h3 {color:var(--on-ink-strong)}
.gd-alt .card-ink .num {color:var(--site-pink-label)}
.gd-alt .card-ink header .eyebrow {background:var(--ink-raised-2);color:var(--on-ink)}
.gd-alt .card-ink .gd-alt-cols .eyebrow {color:var(--site-good-on-ink)}
.gd-alt .card-ink .gd-alt-cols > div + div .eyebrow {color:var(--site-late-on-ink)}
.gd-inv-wrap {display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:20px;align-items:start}
.gd-pin {display:inline-block;font-family:var(--serif);font-style:italic;font-weight:400;font-size:15px;color:var(--accent);margin-left:3px;vertical-align:super;line-height:0}
.gd-invoice {gap:22px}
.gd-invoice .gd-doc-head b {display:inline-flex;align-items:baseline;gap:8px}
.gd-inv-parties {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.gd-inv-parties p,.gd-inv-foot p {font-size:13.5px;line-height:1.6;color:var(--ink-2)}
.gd-inv-parties b {color:var(--ink)}
.gd-inv-vat {font-size:12.5px;color:var(--muted)}
.gd-inv-lines {display:flex;flex-direction:column;border-top:1px solid var(--hairline)}
.gd-inv-lines > div {display:flex;justify-content:space-between;gap:18px;padding:14px 0;border-bottom:1px solid var(--hairline);font-size:14px;color:var(--ink-2)}
.gd-inv-lines .fig {font-family:var(--serif);font-size:20px;color:var(--ink);white-space:nowrap}
.gd-inv-lines .gd-inv-total {border-bottom:0;font-weight:700;color:var(--ink)}
.gd-inv-lines .gd-inv-total .fig {font-size:30px}
.gd-inv-foot {display:grid;grid-template-columns:1fr 1fr;gap:18px;padding-top:6px}
.gd-inv-side {display:flex;flex-direction:column;gap:12px;position:sticky;top:92px;align-self:start}
.gd-inv-dl {padding:28px;gap:12px}
.gd-inv-dl .btn {justify-content:center;width:100%;padding:13px 20px;border-radius:6px;font-size:14px;font-weight:700}
.gd-inv-dl .card-title {font-family:var(--serif);font-weight:400;font-size:30px;letter-spacing:-.02em;line-height:1.08;margin:4px 0 8px}
.gd-inv-dl .btn-accent {background:var(--site-paper);color:var(--ink)}
.gd-inv-dl .btn-accent:hover {background:var(--accent-on-ink);color:var(--site-paper)}
.gd-inv-dl .btn-paper {background:none;border:1px solid var(--ink-line);color:var(--site-paper)}
.gd-inv-dl .gd-inv-app {display:flex;align-items:center;justify-content:center;min-height:44px;padding:13px 20px;border-radius:6px;background:var(--accent);color:var(--paper);font-size:14px;font-weight:700}
.gd-inv-dl .gd-inv-app:hover {background:var(--accent-hover);color:var(--paper)}
.gd-inv-dl .card-text {font-size:13px}
.gd-inv-app {color:var(--on-ink-strong)}
.gd-inv-app:hover {color:var(--site-pink-label)}
.gd-inv-agency {padding:20px 22px;gap:8px}
.gd-inv-agency .eyebrow {color:var(--ink-2)}
.gd-inv-agency p {font-size:13.5px;line-height:1.6;color:var(--ink-2)}
.gd-inv-agency b {color:var(--ink)}
.gd-story {margin-top:44px;max-width:760px;display:flex;flex-direction:column;gap:22px;font-size:17.5px;line-height:1.75;color:var(--ink-2)}
.gd-story em {font-style:italic;color:var(--ink)}
.gd-story .beat {font-family:var(--serif);font-style:normal;font-size:36px;line-height:1.1;letter-spacing:-.02em;color:var(--accent)}
.gd-founder {display:grid;grid-template-columns:1fr 1.3fr;gap:56px;align-items:center}
.gd-founder .eyebrow {display:block;margin-bottom:14px}
.gd-founder .h2 {font-size:40px;line-height:1.1;letter-spacing:-.02em;margin-bottom:16px}
.gd-founder p {font-size:16.5px;line-height:1.65;color:var(--ink-2)}
.gd-founder p + p {margin-top:16px}
.gd-founder p a {color:var(--accent);font-weight:600}
.gd-build {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.gd-build-2 {grid-template-columns:repeat(2,minmax(0,1fr))}
.gd-build-5 {grid-template-columns:repeat(5,minmax(0,1fr))}
.gd-build-5 > div {padding:22px 16px 24px}
.gd-build-5 b {font-size:21px}
.gd-build > div {background:var(--paper);border-radius:12px;box-shadow:var(--shadow-card);padding:26px 20px 28px}
.gd-build .num {font-size:18px;display:block;margin-bottom:10px}
.gd-build b {display:block;font-family:var(--serif);font-weight:400;font-size:24px;letter-spacing:-.015em;line-height:1.15;margin-bottom:12px}
.gd-build b:has(a) {margin-bottom:12px}
.gd-build b a {display:inline-flex;align-items:center;min-height:44px;min-width:44px;color:var(--ink)}
.gd-build b a:hover {color:var(--accent)}
.gd-build p {font-size:13px;line-height:1.6;color:var(--muted)}
.gd-build-rows {grid-template-columns:1fr 1fr;gap:12px}
.gd-build-rows > div {display:grid;grid-template-columns:30px 1fr;column-gap:12px;padding:20px 24px;border-radius:12px}
.gd-build-rows .num {grid-row:span 2;font-size:22px;margin:0}
.gd-build-rows b {font-family:var(--sans);font-weight:700;font-size:15px;letter-spacing:0;margin-bottom:6px}
.gd-build-rows p {color:var(--ink-2)}
.gd-build-lg {gap:16px}
.gd-build-lg > div {border-radius:14px;padding:28px 30px}
.gd-build-lg .num {font-size:22px;margin-bottom:0}
.gd-build-lg b {font-size:36px;letter-spacing:-.02em;margin:12px 0}
.gd-build-lg p {font-size:14.5px;line-height:1.65;color:var(--ink-2)}
.gd-phrases {display:grid;grid-template-columns:1fr 1fr;gap:16px}
.gd-phrases > .card {padding:24px 26px;border-radius:14px;gap:0}
.gd-phrases .card-title {font-family:var(--serif);font-weight:400;font-size:26px;letter-spacing:-.015em;color:var(--accent)}
.gd-phrases .card-text {font-size:14.5px;line-height:1.65;color:var(--ink-2);margin-top:10px}
.gd-princ {background:var(--ink);color:var(--on-ink-strong);padding:130px 0;margin-top:140px}
.gd-princ-in {display:grid;grid-template-columns:1fr 1.3fr;gap:64px;align-items:start}
.gd-princ .h2 {color:var(--on-ink-strong);font-size:60px;margin-bottom:18px}
.gd-princ .h2 em {color:var(--accent-on-ink)}
.gd-princ-in > div > p {font-size:15px;line-height:1.65;color:var(--on-ink);max-width:400px}
.gd-princ-list {display:flex;flex-direction:column;gap:0}
.gd-princ-item {display:grid;grid-template-columns:44px minmax(0,1fr);column-gap:12px;row-gap:8px;align-items:baseline;padding:18px 0;border-bottom:1px solid var(--on-ink-strong)}
.gd-princ-item:first-child {padding-top:0}
.gd-princ-item .num {font-size:26px;color:var(--accent-on-ink)}
.gd-princ-item b {font-family:var(--serif);font-weight:400;font-size:28px;letter-spacing:-.015em;line-height:1.2;color:var(--on-ink-strong)}
.gd-princ-item p {grid-column:2;font-size:14.5px;line-height:1.6;color:var(--on-ink)}
.gd-write {display:grid;grid-template-columns:1fr 1.4fr;gap:40px;align-items:center;padding:40px}
.gd-write b {font-family:var(--serif);font-weight:400;font-size:44px;letter-spacing:-.02em;line-height:1.1}
.gd-write p {font-size:16px;line-height:1.65;color:var(--ink-2);margin-bottom:18px}
.gd-sign {margin-top:26px;font-size:12.5px;color:var(--muted)}
.gd-plans {margin-top:0}
.gd-plans .price-toggle {margin-top:40px}
.gd-plans .plans {text-align:left}
.gd-cmp {padding:0 22px 8px}
.gd-cmp table {min-width:720px}
.gd-cmp th:first-child,.gd-cmp td:first-child {padding-left:0}
.gd-cmp thead th {font-family:var(--serif);font-weight:400;font-size:26px;letter-spacing:-.015em;text-transform:none;color:var(--ink);padding-top:22px}
.gd-cmp thead th.gd-accent {color:var(--accent)}
.gd-cmp td:first-child {font-weight:600;width:40%}
.gd-cmp td {font-size:14.5px}
.gd-cmp td .gd-yes {color:var(--good);font-weight:700}
.gd-cmp td .gd-no {color:var(--muted)}
@media (max-width:860px) {.gd-hero {padding-top:48px}
.gd-hero .h1 {font-size:36px;line-height:1.04;letter-spacing:-.02em}
.gd-hero .lead {font-size:17px}
.gd-layout {grid-template-columns:1fr;gap:32px;margin-top:40px}
.gd-toc {position:static}
.gd-toc-d summary {cursor:pointer;min-height:44px;padding:0;width:max-content;gap:14px}
.gd-toc-plus {display:inline}
.gd-toc-d nav {flex-direction:row;overflow-x:auto;gap:8px;padding:12px 20px 8px;margin:0 -20px;scrollbar-width:none}
.gd-toc a {display:inline-flex;gap:8px;white-space:nowrap;border:1px solid var(--border);border-radius:999px;padding:8px 14px;min-height:44px;align-items:center}
.gd-toc-card {display:none}
.gd-toc a {min-height:44px}
.gd-art {font-size:16.5px;line-height:1.7}
.gd-h2 {font-size:32px;margin-top:44px}
.gd-h2 .num {font-size:24px}
.gd-polas {grid-template-columns:1fr 1fr}
.gd-quote {font-size:24px}
.gd-ink {padding:26px 22px}
.gd-ink .gd-ink-title {font-size:26px}
.gd-check {padding:20px}
.gd-faq-split,.gd-faq-sec {grid-template-columns:1fr;gap:20px}
.gd-faq-split .h2,.gd-faq-sec .h2 {position:static;font-size:36px}
.gd-head {flex-direction:column;align-items:flex-start;gap:12px;padding-bottom:20px;margin-bottom:28px}
.gd-head .h2 {font-size:36px}
.gd-head p {text-align:left;max-width:none}
.gd-next {padding-top:80px}
.gd-two,.gd-split,.gd-contract,.gd-pair,.gd-buy,.gd-bars,.gd-letters,.gd-stmt,.gd-blog-top,.gd-tools,.gd-founder,.gd-build,.gd-princ-in,.gd-write {grid-template-columns:1fr;gap:16px}
.gd-sec,.gd-sec-paper {padding:80px 0 0;margin-top:0}
.gd-sec-paper {padding-bottom:80px;margin-top:80px}
.gd-static {position:static}
.gd-static .num {font-size:48px}
.gd-static .h2 {font-size:34px}
.gd-doc {padding:24px 22px}
.gd-doc-head b {font-size:24px}
.gd-notes {position:static}
.gd-scale div {grid-template-columns:1fr;gap:6px}
.gd-scale .fig {text-align:left}
.gd-quote-band {padding:80px 0}
.gd-quote-band .quote p {font-size:30px}
.gd-frieze-scroll {margin:40px -20px 0;padding:0 20px;scrollbar-width:none}
.gd-frieze {min-width:760px}
.gd-kpis {grid-template-columns:1fr;gap:20px}
.gd-kpis .fig {font-size:48px}
.gd-start {grid-template-columns:1fr;padding:26px 22px;gap:20px}
.gd-start-cards {grid-template-columns:1fr}
.gd-letter-sec {grid-template-columns:1fr;gap:12px}
.gd-letter-sec > .fig {font-size:44px}
.gd-terms {grid-template-columns:1fr}
.gd-feat {padding:26px 22px;min-height:280px}
.gd-feat b {font-size:30px}
.gd-reader {padding:26px 22px}
.gd-list {padding:0 20px}
.gd-list a {grid-template-columns:1fr;gap:8px;padding:22px 0}
.gd-list .num {font-size:24px}
.gd-list b {font-size:24px}
.gd-cities {grid-template-columns:1fr 1fr}
.gd-inv-wrap,.gd-inv-parties,.gd-inv-foot {grid-template-columns:1fr}
.gd-inv-side {position:static}
.gd-alt article {grid-template-columns:1fr;gap:16px;padding:22px 20px}
.gd-flow {grid-template-columns:1fr 1fr;gap:8px}
.gd-flow li + li::before {display:none}
.gd-flow-4 b {font-size:26px}
.gd-flow b {font-size:19px}
.gd-build-5 {grid-template-columns:1fr 1fr}
.gd-flow-line {grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 0}
.gd-flow-line b {font-size:11px}
.gd-cities-8 {grid-template-columns:1fr 1fr}
.gd-posts b {font-size:21px}
.gd-story {margin-top:28px;font-size:16px}
.gd-story .beat {font-size:28px}
.gd-founder .h2 {font-size:30px}
.gd-princ {padding:80px 0;margin-top:80px}
.gd-princ .h2 {font-size:40px}
.gd-princ-item b {font-size:22px}
.gd-write {padding:24px 22px}
.gd-write b {font-size:32px}
.gd-rail {gap:8px}}
.gd-card-title {font-family:var(--serif);font-weight:400;font-size:30px;letter-spacing:-.02em;line-height:1.08}
.gd-g2n {display:grid;grid-template-columns:1.4fr 1fr;gap:24px;align-items:stretch}
.gd-g2n > .card {padding:32px 34px;border-radius:14px;gap:0}
.gd-g2n-slip .gd-card-title {margin-bottom:18px}
.gd-g2n-tax {grid-template-columns:1.2fr 1fr}
.gd-g2n-tax .gd-g2n-slip .gd-card-title {margin-bottom:0}
.gd-g2n-text {font-size:15.5px;line-height:1.7;color:var(--ink-2);margin-top:16px}
.gd-g2n-text strong,.gd-g2n-text b {color:var(--ink)}
.gd-g2n-slip .btn {margin-top:20px}
.gd-g2n-slip .gd-slip-row {padding:13px 0;border-top:0;border-bottom:1px solid var(--hairline)}
.gd-g2n-slip .gd-slip-row:last-of-type {border-bottom:0}
.gd-g2n-slip .gd-slip-total {margin-top:0}
.gd-g2n-slip .gd-slip-total .fig {font-size:18px}
.gd-g2n-ink {display:flex;flex-direction:column}
.gd-g2n-ink .gd-card-title {margin:14px 0 18px;color:var(--on-ink-strong)}
.gd-g2n-ink p {font-size:14px;line-height:1.7;color:var(--on-ink)}
.gd-g2n-ink p a {color:var(--on-ink-strong)}
.gd-g2n-cta {margin-top:auto;padding-top:22px;font-size:13.5px;font-weight:700;color:var(--on-ink-strong)}
.gd-g2n-cta:hover {color:var(--accent-on-ink)}
.tl-earn {display:grid;grid-template-columns:1fr 1.1fr;gap:24px;align-items:stretch;margin:0}
.tl-earn > .card {padding:32px 34px;border-radius:14px;gap:0}
.tl-earn-form .eyebrow {color:var(--ink-2)}
.tl-earn-form .gd-card-title {margin-top:10px}
.tl-earn-fields {display:flex;flex-direction:column;gap:18px;margin-top:26px}
.tl-earn-fields .tl-label {margin-bottom:0}
.tl-earn-fields .tl-input {font-size:18px;padding:14px 16px;border-radius:14px;background:var(--paper)}
.tl-earn .tl-tabs {display:inline-flex;align-self:flex-start;padding:3px;border-radius:999px;background:var(--site-line)}
.tl-earn .tl-tabs .tab {flex:none;padding:9px 16px;font-size:13px;font-weight:600}
.tl-earn .tl-tabs .tab:not(.on) {color:var(--ink)}
.tl-earn-out {display:flex;flex-direction:column}
.tl-earn-big {display:flex;align-items:baseline;gap:12px;margin-top:14px}
.tl-earn-big .tl-kpi {font-size:64px;color:var(--on-ink-strong)}
.tl-earn-big span {font-size:13px;color:var(--on-ink)}
.tl-earn-out .tl-lines {margin-top:22px}
.tl-earn-out .tl-line {padding:12px 0;font-size:14px;color:var(--on-ink)}
@media (max-width:860px) {.gd-g2n,.gd-g2n-tax,.tl-earn,.gd-phrases {grid-template-columns:1fr;gap:14px}
.gd-build-lg b {font-size:30px}
.gd-g2n > .card,.tl-earn > .card {padding:26px 22px}
.gd-card-title {font-size:26px}
.tl-earn .tl-tabs {display:flex;align-self:stretch}
.tl-earn .tl-tabs .tab {flex:1;padding:9px 8px}
.tl-earn-big .tl-kpi {font-size:48px}
.tl-earn-fields .tl-input {font-size:16px}}
.gd-zones {padding:32px 34px;border-radius:14px;gap:0}
.gd-zones-axis {display:flex;justify-content:space-between;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.gd-zones-bar {display:flex;height:14px;margin:14px 0;border-radius:999px;overflow:hidden;background:var(--hairline)}
.gd-zones-bar i {display:block;height:100%}
.gd-zones-bar .ok {width:50%;background:var(--site-good-bar)}
.gd-zones-bar .warn {width:25%;background:var(--watch)}
.gd-zones-bar .late {width:25%;background:var(--overdue)}
.gd-zones-text {display:grid;grid-template-columns:2fr 1fr 1fr;gap:24px}
.gd-zones-text p {font-size:13.5px;line-height:1.55;color:var(--ink-2);margin:0}
.gd-zones-text b {color:var(--ink)}
@media (max-width:860px) {.gd-zones {padding:26px 22px}
.gd-zones-text {grid-template-columns:1fr;gap:12px}}
@media (max-width:860px) {.gd-alpha {flex-wrap:nowrap;overflow-x:auto;margin-right:-16px;padding:2px 16px 6px 2px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.gd-alpha::-webkit-scrollbar {display:none}
.gd-alpha a {flex:none}}

/* ==== site/src/css/70-cities.css ==== */
.ct-hero {display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:end}
.ct-hero .crumbs {margin-bottom:26px}
.ct-eyebrow {font-size:12px;letter-spacing:.16em;margin-bottom:14px}
.ct-name {font-family:var(--serif);font-weight:400;font-size:120px;line-height:.95;letter-spacing:-.035em;margin:0 0 10px}
.ct-name-lead {display:block;font-family:var(--sans);font-size:17px;font-weight:600;letter-spacing:0;line-height:1.3;color:var(--muted);margin-bottom:10px}
.ct-updated {font-size:12.5px;color:var(--muted);margin-bottom:18px}
.ct-name em {font-style:italic;color:var(--accent)}
.ct-tagline {font-size:19px;line-height:1.5;color:var(--ink-2);max-width:560px}
.ct-brief {max-width:560px}
.ct-pic {max-height:460px}
.ct-facts {display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin-top:48px}
.ct-fact {background:var(--paper);border-radius:10px;padding:18px 18px 16px;box-shadow:var(--shadow-card);min-width:0}
.ct-fact b {display:block;font-family:var(--serif);font-weight:400;font-size:20px;letter-spacing:-.015em;line-height:1.15;margin-top:10px}
.ct-label {color:var(--muted)}
.ct-head {display:flex;justify-content:space-between;align-items:flex-end;gap:24px;border-bottom:1px solid var(--hairline-side);padding-bottom:28px;margin-bottom:40px}
.ct-head .h2 {font-size:56px;line-height:1.04}
.ct-head p {font-size:14px;color:var(--muted);max-width:340px;text-align:right;line-height:1.55;flex:none}
.ct-strip {background:var(--paper);border-radius:14px;box-shadow:var(--shadow-card);padding:28px 30px}
.ct-strip-scroll {overflow-x:auto}
.ct-months,.ct-row {display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:8px}
.ct-months span {text-align:center;font-family:var(--serif);font-size:20px;padding-bottom:12px;border-bottom:1px solid var(--dash)}
.ct-row {margin-top:8px}
.ct-months + .ct-row {margin-top:16px}
.ct-bar {border-radius:10px;padding:9px 12px;font-size:12px;font-weight:700;line-height:1.3;text-align:left;overflow-wrap:anywhere;min-width:0}
.ct-bar-1 {padding:8px 4px;font-size:11px;text-align:center}
.ct-season {background:var(--ink);color:var(--on-ink-strong)}
.ct-casting {border:1.5px dashed var(--dash-strong);color:var(--data)}
.ct-remind {background:var(--tint);color:var(--ai)}
.ct-c1 {grid-column-start:1} .ct-c2 {grid-column-start:2} .ct-c3 {grid-column-start:3} .ct-c4 {grid-column-start:4}
.ct-c5 {grid-column-start:5} .ct-c6 {grid-column-start:6} .ct-c7 {grid-column-start:7} .ct-c8 {grid-column-start:8}
.ct-c9 {grid-column-start:9} .ct-c10 {grid-column-start:10} .ct-c11 {grid-column-start:11} .ct-c12 {grid-column-start:12}
.ct-s1 {grid-column-end:span 1} .ct-s2 {grid-column-end:span 2} .ct-s3 {grid-column-end:span 3} .ct-s4 {grid-column-end:span 4}
.ct-s5 {grid-column-end:span 5} .ct-s6 {grid-column-end:span 6} .ct-s7 {grid-column-end:span 7} .ct-s8 {grid-column-end:span 8}
.ct-s9 {grid-column-end:span 9} .ct-s10 {grid-column-end:span 10} .ct-s11 {grid-column-end:span 11} .ct-s12 {grid-column-end:span 12}
.ct-strip .legend {margin-top:20px}
.ct-card-text {font-size:15px;line-height:1.7;margin-top:4px;color:var(--ink-2)}
.card-ink .ct-card-text {color:var(--on-ink)}
.ct-money {display:grid;grid-template-columns:1.5fr 1fr;gap:24px;align-items:start}
.ct-money-main {min-width:0}
.ct-table {background:var(--paper);border-radius:14px;box-shadow:var(--shadow-card);padding:8px 30px 14px}
.ct-mrow {display:grid;grid-template-columns:.8fr 2fr;gap:22px;padding:17px 0;border-bottom:1px solid var(--hairline)}
.ct-mrow:last-child {border-bottom:0}
.ct-mrow b {font-family:var(--serif);font-weight:400;font-size:22px;letter-spacing:-.015em;line-height:1.2}
.ct-mrow p {font-size:14.5px;line-height:1.6;color:var(--ink-2)}
.ct-tips {border-radius:14px;padding:32px 34px;gap:0}
.ct-tips-title {font-family:var(--serif);font-weight:400;font-size:30px;letter-spacing:-.02em;line-height:1.08;margin:14px 0 18px}
.ct-tip {display:flex;gap:14px;padding:12px 0;border-bottom:1px solid var(--ink-line);font-size:14px;line-height:1.6;color:var(--on-ink)}
.ct-tip:last-child {border-bottom:0}
.ct-tip i {font-family:var(--serif);font-style:italic;color:var(--site-pink-label);flex:none;width:26px}
.ct-tips .ct-tips-cta {margin-top:auto;padding-top:20px;font-size:13px;color:var(--on-ink-strong);align-self:flex-start}
.ct-tips .ct-tips-cta:hover {color:var(--site-pink-label)}
.ct-faq {display:grid;grid-template-columns:1fr 1.6fr;gap:56px;align-items:start}
.ct-faq .h2 {font-size:56px;line-height:1.04}
.ct-links .eyebrow {font-size:11px;letter-spacing:.16em;margin-bottom:8px}
.ct-links b {font-family:var(--serif);font-weight:400;font-size:34px;letter-spacing:-.02em;line-height:1.05;margin-bottom:4px}
.ct-links small {font-size:13.5px}
.ct-links i {padding-top:18px}
@media (max-width:860px) {.ct-hero {grid-template-columns:1fr;gap:28px}
.ct-name {font-size:42px;line-height:1.04;letter-spacing:-.02em;margin-bottom:8px}
.ct-name-lead {font-size:15px;margin-bottom:6px}
.ct-tagline {font-size:17px}
.ct-facts {grid-template-columns:1fr 1fr;gap:10px;margin-top:32px}
.ct-fact {min-width:0;overflow-wrap:anywhere}
.ct-fact {padding:14px 14px 12px}
.ct-fact b {font-size:17px}
.ct-head {flex-direction:column;align-items:flex-start;gap:12px;padding-bottom:20px;margin-bottom:28px}
.ct-head .h2,.ct-faq .h2 {font-size:36px;line-height:1.08}
.ct-head p {text-align:left;max-width:none}
.ct-strip {padding:20px}
.ct-strip-grid {min-width:720px}
.ct-money,.ct-faq {grid-template-columns:1fr;gap:14px}
.ct-table {padding:4px 20px 8px}
.ct-mrow {grid-template-columns:1fr;gap:4px;padding:14px 0}
.ct-tips {padding:26px 24px}
.ct-tips-title {font-size:26px}
.ct-links b {font-size:28px}}
.ct-visa {margin-top:18px;font-size:13.5px;line-height:1.6;color:var(--muted)}
.ct-visa .eyebrow {display:block;color:var(--muted);margin-bottom:4px}
.ct-visa a {color:var(--accent);font-weight:600}
.ct-asof {margin-top:14px;font-size:12.5px;line-height:1.55;color:var(--muted)}
.fw-grid-in {display:flex;flex-direction:column}
.fw-row {display:grid;grid-template-columns:130px minmax(0,1fr);gap:14px;align-items:start;padding:10px 0;border-top:1px solid var(--hairline)}
.fw-head {border-top:0;padding-top:0}
.fw-head .ct-months span {font-size:17px}
.fw-city {font-family:var(--serif);font-size:20px;letter-spacing:-.015em;color:var(--ink);display:inline-flex;align-items:center;min-height:44px}
.fw-city:hover {color:var(--accent)}
.fw-lanes .ct-row {margin-top:6px}
.fw-lanes .ct-row:first-child {margin-top:0}
@media (max-width:860px) {.fw-grid-in {min-width:820px}
.fw-row {grid-template-columns:96px minmax(0,1fr)}}
.ct-agencies {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.ct-agency {padding:20px 22px;gap:8px}
.ct-agency b {font-family:var(--serif);font-weight:400;font-size:22px;letter-spacing:-.015em;line-height:1.15}
.ct-agency p {font-size:13px;line-height:1.5;color:var(--ink-2)}
@media (max-width:860px) {.ct-agencies {grid-template-columns:1fr 1fr}}
.ct-yr {margin-top:0}
.ct-yr .yr-it {font-size:12.5px}
.ct-yr .yr-it.cont {opacity:.55}
.yr-cast-grey {border:1.5px dashed var(--site-dash-strong);color:var(--ink-2)}
.yr-sunk {background:var(--site-sunk);color:var(--ink)}
.yr-none {display:block;height:1px;margin-top:14px;background:var(--hairline)}
.ct-yr .legend {padding:16px 0 20px;border-top:1px solid var(--site-line);margin-top:4px}
.legend i.opt-grey {background:transparent;border:1.5px dashed var(--site-dash-strong)}
.legend i.sunk {background:var(--site-sunk)}
.ct-agency-logo {display:flex;align-items:center;height:56px;margin-bottom:6px}
.ct-agency-logo img {display:block;max-height:40px;max-width:170px;width:auto;height:auto;object-fit:contain}
.ct-agency-logo.on-ink {align-self:flex-start;padding:8px 12px;border-radius:10px;background:var(--ink)}
.ct-agency-logo.on-ink img {max-height:32px;max-width:150px}
.ct-agency-init {width:48px;height:48px;justify-content:center;border-radius:12px;background:var(--tint);color:var(--ai);font-weight:700;font-size:15px;letter-spacing:.02em}

/* ==== site/src/css/90-legal.css ==== */
.doc {max-width:760px;padding-top:72px;padding-bottom:40px}
.doc-kicker {font-size:10.5px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--accent);margin-bottom:14px}
.doc h1 {font-family:var(--serif);font-weight:400;font-size:52px;line-height:1.04;letter-spacing:-.025em;margin-bottom:14px}
.doc-meta {font-size:13px;color:var(--muted);margin-bottom:28px}
.doc-meta a {color:var(--accent);font-weight:600}
.doc-warn {background:var(--watch-bg);color:var(--ink);border-left:3px solid var(--watch);border-radius:14px;padding:16px 20px;font-size:14px;line-height:1.6;margin-bottom:32px}
.doc h2 {font-family:var(--serif);font-weight:400;font-size:28px;line-height:1.15;letter-spacing:-.015em;margin:40px 0 12px}
.doc h3 {font-size:16px;font-weight:700;margin:24px 0 8px}
.doc p,.doc li {font-size:15px;line-height:1.7;color:var(--ink-2)}
.doc p + p {margin-top:12px}
.doc b {color:var(--ink)}
.doc table {margin:16px 0;font-size:14px}
.doc th,.doc td {text-align:left;padding:10px 12px 10px 0;border-top:1px solid var(--hairline);vertical-align:top;line-height:1.5}
.doc th {font-weight:700;color:var(--ink)}
.doc ul {list-style:disc;padding-left:20px} .doc ol {list-style:decimal;padding-left:20px}
.doc li + li {margin-top:6px}
@media (max-width:860px) {.doc {padding-top:40px}
.doc h1 {font-size:36px}
.doc h2 {font-size:24px}}
