@font-face{font-family:'CFX Proof Carlito';src:url('fonts/Carlito-Regular.ttf') format('truetype');font-weight:400;font-display:block}@font-face{font-family:'CFX Proof Carlito';src:url('fonts/Carlito-Bold.ttf') format('truetype');font-weight:700;font-display:block}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 'CFX Proof Carlito',system-ui,sans-serif;-webkit-font-smoothing:antialiased}a{color:var(--link);text-underline-offset:3px}button,input{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer;color:var(--ink);border:1px solid var(--line);background:var(--bg);border-radius:7px;padding:7px 12px;line-height:1.3}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--link);outline-offset:4px}button:hover{background:var(--surface)}button[aria-pressed=true]{color:var(--bg);border-color:var(--ink);background:var(--ink)}[hidden]{display:none!important}html[data-theme=light] [data-visual-theme=dark],html[data-theme=dark] [data-visual-theme=light]{display:none}html[data-output-view=svg] [data-output-format=png],html[data-output-view=png] [data-output-format=svg]{display:none}.skip-link{position:absolute;left:20px;top:-100px;z-index:10;background:var(--bg);padding:10px 16px;border:2px solid var(--link)}.skip-link:focus{top:12px}.gallery-header,.gallery-main,.example-header,.example-main,footer{width:min(100%,1360px);margin:0 auto;padding-left:32px;padding-right:32px}.gallery-header,.example-header{padding-top:28px;padding-bottom:28px}.header-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:32px}.brand{font-size:22px;font-weight:700;letter-spacing:-.3px;text-decoration:none;color:var(--ink)}.theme-control{display:flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}.theme-control button{border:0;padding:7px 11px;background:transparent;font-size:14px}.theme-control button[aria-pressed=true]{background:var(--ink);color:var(--bg)}.eyebrow{font-size:12px;line-height:1.4;letter-spacing:1.8px;font-weight:700;color:var(--link);margin:0 0 14px;text-transform:uppercase}h1,h2{letter-spacing:-.6px;line-height:1.14;margin:0}h1{font-size:clamp(32px,4.4vw,52px);max-width:1000px}.intro{max-width:760px;color:var(--muted);font-size:19px;line-height:1.5;margin:18px 0 0}.catalog-tools{padding:24px 0 22px;border-top:1px solid var(--line)}.search-label{display:block;max-width:480px;color:var(--ink);font-size:14px;font-weight:700}.search-label input{display:block;width:100%;font-size:16px;font-weight:400;margin-top:8px;padding:12px 14px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink)}.search-label input::placeholder{color:var(--muted);opacity:1}.family-nav{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 16px}.family-nav button{font-size:14px;padding:8px 12px;border-radius:24px}.catalog-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:28px}.catalog-summary p{margin:0;color:var(--muted);font-size:14px}.text-button{font-size:14px;padding:4px 0;border:0;background:transparent;color:var(--link)}.text-button:hover{background:transparent;text-decoration:underline}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:start}.tile{min-width:0;background:var(--bg);border:1px solid var(--line);border-radius:12px;overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease}.tile:hover{border-color:var(--link);box-shadow:0 8px 24px color-mix(in srgb,var(--ink) 6%,transparent)}.preview{display:block;aspect-ratio:10/7;background:var(--bg);border-bottom:1px solid var(--line);overflow:hidden}.preview svg{display:block;width:100%;height:100%}.caption{padding:20px 22px 22px;min-height:142px}.tile-family{margin:0 0 8px;color:var(--link);font-size:13px;font-weight:700}.caption h2{font-size:21px;line-height:1.25;letter-spacing:-.2px}.caption h2 a{text-decoration:none;color:var(--ink)}.caption h2 a:hover{text-decoration:underline}.tile-detail{margin:12px 0 0;font-size:13px;color:var(--muted)}.empty-results{text-align:center;padding:64px 20px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.empty-results h2{font-size:25px}.empty-results p{color:var(--muted)}footer{display:flex;justify-content:space-between;gap:24px;border-top:1px solid var(--line);margin-top:56px;padding-top:24px;padding-bottom:32px;color:var(--muted);font-size:14px}.back-link{font-size:15px;text-decoration:none}.example-header{padding-bottom:28px}.example-header h1{font-size:clamp(30px,4vw,44px)}.example-header .header-top{margin-bottom:36px}.variant-nav{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}.variant-nav a{display:block;padding:8px 13px;border:1px solid var(--line);border-radius:7px;color:var(--ink);font-size:14px;text-decoration:none}.variant-nav a:hover{border-color:var(--link)}.variant-nav .current-variant a{background:var(--ink);color:var(--bg);border-color:var(--ink)}.example-surface{display:grid;place-items:center;border:1px solid var(--line);border-radius:12px;padding:16px;background:var(--bg)}.output-control{display:flex;justify-content:flex-end;align-items:center;gap:6px;margin-bottom:12px;font-size:14px;color:var(--muted)}.output-control span{margin-right:8px}.output-control button{font-size:13px;padding:6px 12px}.full{width:100%;max-width:1100px;min-width:0}.full svg,.full img{display:block;width:100%;height:auto}.export-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;padding:18px 0;color:var(--muted);font-size:14px}.export-row nav{display:flex;flex-wrap:wrap;gap:18px}.layout-notes{margin:12px 0 20px;padding:18px 20px;border:1px solid var(--line);border-radius:10px;background:var(--surface);font-size:14px;color:var(--muted)}.layout-notes h2{font-size:18px;color:var(--ink);letter-spacing:0}.layout-notes ul{margin:10px 0 0;padding-left:20px}.source-section{margin-top:28px}.source-heading{display:flex;align-items:center;flex-wrap:wrap;gap:16px}.source-heading h2{font-size:27px;margin-right:auto}.source-heading [role=status]{font-size:14px;color:var(--muted)}.source-section>p{color:var(--muted);font-size:15px}pre{max-height:640px;overflow:auto;padding:24px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);font:13px/1.6 Consolas,'Liberation Mono',monospace;tab-size:4}@media(max-width:1050px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.gallery-header,.gallery-main,.example-header,.example-main,footer{padding-left:20px;padding-right:20px}.gallery-header,.example-header{padding-top:20px;padding-bottom:24px}.header-top{gap:12px;margin-bottom:24px}.brand{font-size:20px}.theme-control button{padding:7px 8px;font-size:13px}.intro{font-size:17px}.grid{grid-template-columns:minmax(0,1fr);gap:20px}.caption{padding:18px 20px 20px;min-height:130px}.family-nav{flex-wrap:nowrap;gap:7px;overflow-x:auto;padding:6px 4px 8px;margin:12px -4px 10px;scroll-padding:4px}.family-nav button{flex-shrink:0;white-space:nowrap;font-size:13px;padding:8px 11px}.example-surface{padding:8px}.example-header .header-top{margin-bottom:28px}.export-row{font-size:13px}.export-row nav{gap:14px}pre{padding:16px;font-size:12px}footer{flex-wrap:wrap;margin-top:36px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.tile{transition:none}}@media print{.theme-control,.catalog-tools,.variant-nav,.source-heading button,.skip-link{display:none}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tile{break-inside:avoid}footer{margin-top:24px}}