Adobe Fonts Worth Knowing

Pepe

October 2026 · 5 min read

Adobe Fonts Worth Knowing on a yellow background beside an illustrated lavender hand holding a mint square.

Adobe Fonts has thousands of typefaces and nobody telling you where to start. These six are the ones we’d reach for. We picked them for range: a loud display face, a serif with an edge, and a few sans families that stay out of the way. There are font testers further down this page so you can try them before you commit.

Halyard Display font card

Halyard Display

A clean sans from Eben Sorkin, Joshua Darden and Lucas Sharp at Darden Studio. Eight weights from ExtraLight to Black, with italics, plus Text and Micro cuts for smaller sizes. The one we’d hand to a project that needs to look sharp without announcing a style.

Climate Crisis font card

Climate Crisis

A variable display face from Daniel Coull and Eino Korkala. Wide, heavy, one Regular style and a YEAR axis. Made for posters and big statements. Use it large and use it sparingly.

Goldich font card

Goldich

A serif from Jasper de Waard at Bold Monday. High contrast, sharp details. Five upright weights from Regular to Black, each with an italic. Pair it with something plain and let it carry the headline.

<style> /* Keep the category chips inside the viewport on phones */ .blog_author-flex.w-dyn-items{flex-wrap:wrap;max-width:100%;} .blog_author-flex .w-dyn-item{max-width:100%;} </style>

Mestiza Sans font card

Mestiza Sans

Antonio Mejía Lechuga’s sans for Lechuga Type. Two weights, Regular and Bold, each with an italic. A small family keeps decisions short. Good for names, labels and short lines.

Utile Display font card

Utile Display

Sibylle Hagmann’s family for Kontour. Seven weights from Light to Black, with italics, tuned for display sizes. Low contrast and calm. A headline face for brands that want warm and quiet instead of loud.

Degular font card

Degular

James Edmondson’s family at OH no Type Co. Seven weights from Thin to Black, with italics, in Display and Text versions for large and small sizes. One family that can run a whole site.

What we tell clients about the license

Adobe Fonts comes with Creative Cloud. If you already pay for a plan, you already have the fonts.

We think every organization should carry at least one Creative Cloud license. Not because Adobe is the only tool worth using, but because it’s where so much creative work ends up. Printers, agencies and vendors still trade files in Photoshop, Illustrator, InDesign and PDF. One seat gives you access to open them, and the fonts to match. Whatever else your team works in, Adobe is the bridge.

On a website, the fonts load from Adobe through an embed code. There’s no file to host yourself, and no pageview limit to watch. The catch is that the subscription behind the site has to stay active. If it lapses, the site falls back to a default font. Nobody gets an error. The site just stops looking like itself.

<meta name="color-scheme" content="light"> <link rel="stylesheet" href="https://use.typekit.net/obt3kkt.css"> <style> @font-face { font-family: 'Circular'; src: url('https://assets.yellowboxcreative.agency/fonts/circular/circular-black.woff') format('woff'); font-weight: 900; font-display: swap; } @font-face { font-family: 'Circular'; src: url('https://assets.yellowboxcreative.agency/fonts/circular/circular-book.woff') format('woff'); font-weight: 400; font-display: swap; } :root { color-scheme: light; --gft-bg: #FAFAF8; --gft-surface: #FFFFFF; --gft-border: #E0DCD6; --gft-ink: #191718; --gft-muted: #9E9B98; --gft-body: #4A4745; --gft-subtle: #6B6664; --gft-yellow: #FBD305; --gft-sans: 'Circular', system-ui, -apple-system, sans-serif; } #gf-tester { background: var(--gft-bg); border: 1px solid var(--gft-border); border-radius: 12px; padding: 28px 24px 24px; font-family: var(--gft-sans); color: var(--gft-ink); max-width: 720px; box-sizing: border-box; color-scheme: light; } #gft-label { font-weight: 900; font-size: 10px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--gft-muted); margin-bottom: 16px; } #gft-tabs { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 20px; } .gft-tab { background: var(--gft-surface); border: 1.5px solid var(--gft-border); border-radius: 40px; padding: 7px 14px; font-family: var(--gft-sans); font-size: 13px; font-weight: 500; color: var(--gft-body); cursor: pointer; transition: border-color 0.12s, background 0.12s, color 0.12s; white-space: nowrap; line-height: 1.2; } .gft-tab:hover { border-color: var(--gft-ink); color: var(--gft-ink); } .gft-tab.active { background: var(--gft-ink); border-color: var(--gft-ink); color: #FAFAF8; } #gft-canvas { background: var(--gft-surface); border: 1px solid var(--gft-border); border-radius: 8px; padding: 32px 28px 24px; margin-bottom: 14px; min-height: 200px; } #gft-pairing-type { font-size: 9.5px; font-weight: 900; letter-spacing: 0.12em; text-transform: uppercase; color: var(--gft-muted); margin-bottom: 14px; } #gft-headline { overflow-wrap: anywhere; font-size: 42px; line-height: 1.1; color: var(--gft-ink); margin-bottom: 18px; font-weight: 700; } #gft-sample { font-size: 15.5px; line-height: 1.7; color: var(--gft-body); max-width: 58ch; } #gft-legend { display: flex; gap: 18px; margin-top: 22px; padding-top: 18px; border-top: 1px solid var(--gft-border); flex-wrap: wrap; } .gft-legend-item { display: flex; align-items: center; gap: 8px; } .gft-legend-dot { width: 8px; height: 8px; border-radius: 50%; flex-shrink: 0; } .gft-legend-dot.display { background: var(--gft-ink); } .gft-legend-dot.body { background: var(--gft-muted); } .gft-legend-label { font-size: 11px; color: var(--gft-subtle); line-height: 1.3; } .gft-legend-name { font-weight: 700; color: var(--gft-ink); } #gft-footer { display: flex; align-items: flex-start; gap: 10px; flex-wrap: wrap; } #gft-copy-btn { background: var(--gft-yellow); border: none; border-radius: 40px; padding: 9px 18px; font-family: var(--gft-sans); font-size: 12px; font-weight: 900; letter-spacing: 0.03em; color: var(--gft-ink); cursor: pointer; flex-shrink: 0; transition: opacity 0.12s; } #gft-copy-btn:hover { opacity: 0.82; } #gft-import-wrap { flex: 1; min-width: 0; } #gft-import-code { display: none; background: #F0EDE9; border: 1px solid var(--gft-border); border-radius: 6px; padding: 9px 13px; font-family: 'SF Mono', 'Fira Code', 'Fira Mono', monospace; font-size: 11px; line-height: 1.5; color: var(--gft-body); white-space: pre-wrap; word-break: break-word; cursor: pointer; } #gft-import-code.visible { display: block; } #gft-feedback { font-size: 11px; color: var(--gft-muted); margin-top: 6px; height: 14px; } #gft-import-hint { margin: 10px 0 0; font-family: var(--gft-sans); font-size: 12px; color: var(--gft-muted); line-height: 1.5; } @media (max-width: 540px) { #gf-tester { padding: 20px 16px 18px; } #gft-headline { font-size: 30px; } #gft-canvas { padding: 24px 18px 18px; } .gft-tab { font-size: 12px; padding: 6px 12px; } } </style> <div id="gf-tester"> <div id="gft-label">Font pairings →</div> <div id="gft-tabs"> <button class="gft-tab active" data-pair="0">Goldich + Degular Text</button> <button class="gft-tab" data-pair="1">Climate Crisis + Halyard Text</button> <button class="gft-tab" data-pair="2">Utile Display + Mestiza Sans</button> </div> <div id="gft-canvas"> <div id="gft-pairing-type">Serif Display + Grotesque Text</div> <div id="gft-headline" style="font-family:'goldich',serif;font-weight:700;">A serif with an edge, a sans that stays out of the way</div> <div id="gft-sample" style="font-family:'degular-text',sans-serif;">Goldich has the contrast and the cut-in details to open a page. Degular Text keeps everything under it easy to read.</div> <div id="gft-legend"> <div class="gft-legend-item"> <div class="gft-legend-dot display"></div> <div class="gft-legend-label"><span class="gft-legend-name" id="gft-leg-display">Goldich</span> (display)</div> </div> <div class="gft-legend-item"> <div class="gft-legend-dot body"></div> <div class="gft-legend-label"><span class="gft-legend-name" id="gft-leg-body">Degular Text</span> (body)</div> </div> </div> </div> <div id="gft-footer"> <button id="gft-copy-btn">Copy CSS →</button> <div id="gft-import-wrap"> <code id="gft-import-code" class=""></code> <div id="gft-feedback"></div> </div> </div> <p id="gft-import-hint">Add your own Adobe Fonts web project to your site first, then paste these rules. Adobe serves the fonts, so the project has to stay active.</p> </div> <script> (function(){ var PAIRS = [ { id: 'goldich-degular', type: 'Serif Display + Grotesque Text', display: { name: 'Goldich', css: "'goldich', serif", rule: '"goldich", serif', w: 700 }, body: { name: 'Degular Text', css: "'degular-text', sans-serif", rule: '"degular-text", sans-serif' }, headline: 'A serif with an edge, a sans that stays out of the way', sample: 'Goldich has the contrast and the cut-in details to open a page. Degular Text keeps everything under it easy to read.' }, { id: 'climate-halyard', type: 'Poster Display + Quiet Text', display: { name: 'Climate Crisis', css: "'climate-crisis-variable', sans-serif", rule: '"climate-crisis-variable", sans-serif', w: 400 }, body: { name: 'Halyard Text', css: "'halyard-text', sans-serif", rule: '"halyard-text", sans-serif' }, headline: 'LOUD ON TOP', sample: 'Climate Crisis takes up the room it needs and no more. Halyard Text does the explaining at a normal size.' }, { id: 'utile-mestiza', type: 'Calm Display + Compact Sans', display: { name: 'Utile Display', css: "'utile-display', sans-serif", rule: '"utile-display", sans-serif', w: 600 }, body: { name: 'Mestiza Sans', css: "'mestiza-sans', sans-serif", rule: '"mestiza-sans", sans-serif' }, headline: 'Warm without getting soft', sample: 'Utile Display is low in contrast and easy to live with. Mestiza Sans has two weights, so setting the hierarchy takes about a minute.' } ]; var activeIdx = 0; var codeVisible = false; function gid(id){ return document.getElementById(id); } function buildImport(pair){ return 'h1 { font-family: ' + pair.display.rule + '; font-weight: ' + pair.display.w + '; }\n' + 'body { font-family: ' + pair.body.rule + '; font-weight: 400; }'; } function applyPair(idx){ activeIdx = idx; var p = PAIRS[idx]; var typeEl = gid('gft-pairing-type'); var headEl = gid('gft-headline'); var sampleEl = gid('gft-sample'); var legDisplay = gid('gft-leg-display'); var legBody = gid('gft-leg-body'); if(typeEl) typeEl.textContent = p.type; if(headEl){ headEl.textContent = p.headline; headEl.style.fontFamily = p.display.css; headEl.style.fontWeight = p.display.w; } if(sampleEl){ sampleEl.textContent = p.sample; sampleEl.style.fontFamily = p.body.css; } if(legDisplay) legDisplay.textContent = p.display.name; if(legBody) legBody.textContent = p.body.name; var codeEl = gid('gft-import-code'); if(codeEl){ codeEl.textContent = buildImport(p); codeEl.className = codeVisible ? 'visible' : ''; } var tabs = document.querySelectorAll('#gf-tester .gft-tab'); for(var i = 0; i < tabs.length; i++){ tabs[i].className = 'gft-tab' + (i === idx ? ' active' : ''); } } function showFeedback(msg){ var fb = gid('gft-feedback'); if(!fb) return; fb.textContent = msg; setTimeout(function(){ fb.textContent = ''; }, 2200); } function copyText(str){ if(navigator.clipboard && window.isSecureContext){ navigator.clipboard.writeText(str).then(function(){ showFeedback('✓ Copied to clipboard'); }).catch(function(){ legacyCopy(str); }); } else { legacyCopy(str); } } function legacyCopy(str){ var ta = document.createElement('textarea'); ta.value = str; ta.style.cssText = 'position:fixed;opacity:0;'; document.body.appendChild(ta); ta.focus(); ta.select(); try{ document.execCommand('copy'); showFeedback('✓ Copied to clipboard'); }catch(e){} document.body.removeChild(ta); } // Document-level delegation: survives Webflow DOM replacement document.addEventListener('click', function(e){ var el = e.target; while(el && el !== document.body){ if(el.getAttribute && el.getAttribute('data-pair') !== null && el.className && el.className.indexOf('gft-tab') !== -1){ applyPair(parseInt(el.getAttribute('data-pair'))); return; } if(el.id === 'gft-copy-btn'){ codeVisible = true; var codeEl = document.getElementById('gft-import-code'); if(codeEl){ codeEl.className = 'visible'; copyText(codeEl.textContent); } return; } if(el.id === 'gft-import-code'){ if(el.textContent) copyText(el.textContent); return; } el = el.parentElement; } }, false); document.addEventListener('touchstart', function(e){ var el = e.target; while(el && el !== document.body){ if(el.getAttribute && el.getAttribute('data-pair') !== null && el.className && el.className.indexOf('gft-tab') !== -1){ e.preventDefault(); applyPair(parseInt(el.getAttribute('data-pair'))); return; } if(el.id === 'gft-copy-btn'){ e.preventDefault(); codeVisible = true; var codeEl = document.getElementById('gft-import-code'); if(codeEl){ codeEl.className = 'visible'; copyText(codeEl.textContent); } return; } if(el.id === 'gft-import-code'){ e.preventDefault(); if(el.textContent) copyText(el.textContent); return; } el = el.parentElement; } }, { passive: false }); // Set initial @import code, retried to handle Webflow's async DOM replacement function tryInitCode(){ var codeEl = document.getElementById('gft-import-code'); if(codeEl && !codeEl.textContent.trim()){ codeEl.textContent = buildImport(PAIRS[0]); } } setTimeout(tryInitCode, 50); setTimeout(tryInitCode, 300); setTimeout(tryInitCode, 1200); })(); </script>

<link rel="stylesheet" href="https://use.typekit.net/wrj5cfd.css"> <link rel="stylesheet" href="https://use.typekit.net/obt3kkt.css"> <style> #gf-avoid{ margin:40px 0; font-family:-apple-system,BlinkMacSystemFont,'Helvetica Neue',Arial,sans-serif; } @font-face{ font-family:'Circular Black'; src:url('https://assets.yellowboxcreative.agency/fonts/circular/circular-black.woff') format('woff'); font-weight:900;font-style:normal;font-display:swap; } #gf-avoid .gfa-header{ display:flex;align-items:baseline;justify-content:space-between; flex-wrap:wrap;gap:8px;margin-bottom:24px; } #gf-avoid .gfa-title{ font-family:'Circular Black',sans-serif;font-weight:900; font-size:1rem;letter-spacing:-.01em;color:#191718; } #gf-avoid .gfa-meta{ font-size:.78rem;color:#9E9B98; } /* ── Comparison cards ──────────────────── */ #gf-avoid .gfa-list{ display:flex;flex-direction:column;gap:12px; } #gf-avoid .gfa-card{ border-radius:12px;overflow:hidden; border:1px solid #E0DCD6; display:flex; transition:border-color .2s; } /* ── Tired side ────────────────────────── */ #gf-avoid .gfa-tired{ flex:0 0 45%;padding:20px 20px 18px; background:#F2F0EC; display:flex;flex-direction:column;justify-content:center; position:relative; } #gf-avoid .gfa-tired::after{ content:''; position:absolute;right:0;top:0;bottom:0;width:1px; background:#E0DCD6; } #gf-avoid .gfa-badge{ display:inline-block;font-size:.6rem;font-weight:700; letter-spacing:.08em;text-transform:uppercase; padding:2px 8px;border-radius:100px;margin-bottom:10px; align-self:flex-start; } #gf-avoid .gfa-badge-tired{ background:#E0DCD6;color:#8A8380; } #gf-avoid .gfa-badge-better{ background:#191718;color:#fff; transition:background .2s,color .2s; } #gf-avoid .gfa-font-name{ font-size:1.55rem;font-weight:700;line-height:1.1; color:#9E9B98; } #gf-avoid .gfa-tired .gfa-why{ font-size:.72rem;color:#B0ABA6;margin-top:8px;line-height:1.4; } /* ── Better side ───────────────────────── */ #gf-avoid .gfa-better{ flex:1;padding:20px 20px 18px; background:#FAFAF8; display:flex;flex-direction:column;justify-content:center; transition:background .2s; } #gf-avoid .gfa-better .gfa-font-name{ color:#191718; } #gf-avoid .gfa-better .gfa-why{ font-size:.72rem;color:#6B6664;margin-top:8px;line-height:1.4; } /* ── Arrow divider ─────────────────────── */ #gf-avoid .gfa-arrow{ display:flex;align-items:center;justify-content:center; padding:0 10px;background:#F2F0EC; color:#9E9B98;font-size:1rem; flex-shrink:0; border-right:1px solid #E0DCD6; transition:color .2s; } /* ── Hover states ──────────────────────── */ #gf-avoid .gfa-card:hover{border-color:#FBD305;} #gf-avoid .gfa-card:hover .gfa-badge-better{background:#FBD305;color:#191718;} #gf-avoid .gfa-card:hover .gfa-arrow{color:#FBD305;} #gf-avoid .gfa-card:hover .gfa-better{background:#FFFDF0;} @media(max-width:560px){ #gf-avoid .gfa-card{flex-direction:column;} #gf-avoid .gfa-tired{flex:none;} #gf-avoid .gfa-tired::after{display:none;} #gf-avoid .gfa-arrow{ padding:6px 20px;border-right:none;border-bottom:1px solid #E0DCD6; border-top:1px solid #E0DCD6; } } </style> <div id="gf-avoid"> <div class="gfa-header"> <div class="gfa-title">What to skip</div> <div class="gfa-meta">And what to reach for instead</div> </div> <div class="gfa-list"> <!-- 1 · Proxima Nova → Halyard Display --> <div class="gfa-card"> <div class="gfa-tired"> <span class="gfa-badge gfa-badge-tired">Tired pick</span> <div class="gfa-font-name" style="font-family:'proxima-nova',sans-serif;font-weight:400;">Proxima Nova</div> <div class="gfa-why">Everywhere since the mid-2010s. Startups, dashboards and nonprofits all picked it, and it stopped saying anything.</div> </div> <div class="gfa-arrow">→</div> <div class="gfa-better"> <span class="gfa-badge gfa-badge-better">Try instead</span> <div class="gfa-font-name" style="font-family:'halyard-display',sans-serif;font-weight:400;">Halyard Display</div> <div class="gfa-why">Same clean footing, with more character at headline sizes. It also has Text and Micro cuts for small sizes.</div> </div> </div> <!-- 2 · Futura PT → Degular --> <div class="gfa-card"> <div class="gfa-tired"> <span class="gfa-badge gfa-badge-tired">Tired pick</span> <div class="gfa-font-name" style="font-family:'futura-pt',sans-serif;font-weight:400;">Futura PT</div> <div class="gfa-why">The geometric default. Clean, but it shows up on every brand deck that wants a mid-century nod.</div> </div> <div class="gfa-arrow">→</div> <div class="gfa-better"> <span class="gfa-badge gfa-badge-better">Try instead</span> <div class="gfa-font-name" style="font-family:'degular',sans-serif;font-weight:400;">Degular</div> <div class="gfa-why">Geometric structure with a more current feel. Display and Text versions cover headline to caption.</div> </div> </div> <!-- 3 · Myriad Pro → Mestiza Sans --> <div class="gfa-card"> <div class="gfa-tired"> <span class="gfa-badge gfa-badge-tired">Tired pick</span> <div class="gfa-font-name" style="font-family:'myriad-pro',sans-serif;font-weight:400;">Myriad Pro</div> <div class="gfa-why">Adobe’s own default for years. It looks like nobody chose it.</div> </div> <div class="gfa-arrow">→</div> <div class="gfa-better"> <span class="gfa-badge gfa-badge-better">Try instead</span> <div class="gfa-font-name" style="font-family:'mestiza-sans',sans-serif;font-weight:400;">Mestiza Sans</div> <div class="gfa-why">A sans that looks chosen. Two weights keep the decision short.</div> </div> </div> <!-- 4 · Minion Pro → Goldich --> <div class="gfa-card"> <div class="gfa-tired"> <span class="gfa-badge gfa-badge-tired">Tired pick</span> <div class="gfa-font-name" style="font-family:'minion-pro',serif;font-weight:400;">Minion Pro</div> <div class="gfa-why">The book-text serif everyone grabs for “serious.” Capable, and invisible.</div> </div> <div class="gfa-arrow">→</div> <div class="gfa-better"> <span class="gfa-badge gfa-badge-better">Try instead</span> <div class="gfa-font-name" style="font-family:'goldich',serif;font-weight:400;">Goldich</div> <div class="gfa-why">A serif with an edge. You get the editorial feel without the default look.</div> </div> </div> <!-- 5 · Brandon Grotesque → Utile Display --> <div class="gfa-card"> <div class="gfa-tired"> <span class="gfa-badge gfa-badge-tired">Tired pick</span> <div class="gfa-font-name" style="font-family:'brandon-grotesque',sans-serif;font-weight:400;">Brandon Grotesque</div> <div class="gfa-why">The craft-brand sans of the 2010s. Friendly, and on every coffee label.</div> </div> <div class="gfa-arrow">→</div> <div class="gfa-better"> <span class="gfa-badge gfa-badge-better">Try instead</span> <div class="gfa-font-name" style="font-family:'utile-display',sans-serif;font-weight:400;">Utile Display</div> <div class="gfa-why">Calm and warm without the craft-brand shorthand.</div> </div> </div> </div><!-- /list --> </div> <script> (function(){ var cards = document.querySelectorAll('#gf-avoid .gfa-card'); if('IntersectionObserver' in window){ var io = new IntersectionObserver(function(entries){ entries.forEach(function(en){ if(en.isIntersecting){ en.target.classList.add('visible'); io.unobserve(en.target); } }); },{threshold:.1}); cards.forEach(function(c){ io.observe(c); }); } else { cards.forEach(function(c){ c.classList.add('visible'); }); } })(); </script>

<meta name="color-scheme" content="light"> <link rel="stylesheet" href="https://use.typekit.net/obt3kkt.css"> <style> @font-face { font-family: 'Circular'; src: url('https://assets.yellowboxcreative.agency/fonts/circular/circular-black.woff') format('woff'); font-weight: 900; font-display: swap; } @font-face { font-family: 'Circular'; src: url('https://assets.yellowboxcreative.agency/fonts/circular/circular-book.woff') format('woff'); font-weight: 400; font-display: swap; } :root { color-scheme: light; --gf7-bg: #FAFAF8; --gf7-surface: #FFFFFF; --gf7-border: #E0DCD6; --gf7-ink: #191718; --gf7-muted: #9E9B98; --gf7-body: #4A4745; --gf7-yellow: #FBD305; --gf7-sans: 'Circular', system-ui, -apple-system, sans-serif; } #gf7 { background: var(--gf7-bg); border: 1px solid var(--gf7-border); border-radius: 12px; padding: 28px 24px 24px; font-family: var(--gf7-sans); color: var(--gf7-ink); max-width: 720px; box-sizing: border-box; color-scheme: light; } #gf7-label { font-family: var(--gf7-sans); font-weight: 900; font-size: 10px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--gf7-muted); margin-bottom: 16px; } #gf7-btns { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 20px; } .gf7-btn { background: var(--gf7-surface); border: 1.5px solid var(--gf7-border); border-radius: 40px; padding: 8px 16px; font-size: 15px; font-weight: 500; color: var(--gf7-body); cursor: pointer; transition: border-color 0.12s, background 0.12s, color 0.12s; white-space: nowrap; line-height: 1.2; } .gf7-btn:hover { border-color: var(--gf7-ink); color: var(--gf7-ink); } .gf7-btn.active { background: var(--gf7-ink); border-color: var(--gf7-ink); color: #FAFAF8; } #gf7-preview { background: var(--gf7-surface); border: 1px solid var(--gf7-border); border-radius: 8px; padding: 28px 24px 22px; margin-bottom: 14px; min-height: 160px; } #gf7-prev-cat { font-family: var(--gf7-sans); font-size: 10px; font-weight: 900; letter-spacing: 0.12em; text-transform: uppercase; color: var(--gf7-muted); margin-bottom: 12px; } #gf7-prev-head { overflow-wrap: anywhere; font-size: 46px; line-height: 1.08; color: var(--gf7-ink); margin-bottom: 16px; outline: none; cursor: text; font-weight: 700; } #gf7-prev-head:empty::before { content: attr(data-placeholder); color: var(--gf7-muted); pointer-events: none; } #gf7-prev-body { font-size: 16px; line-height: 1.65; color: var(--gf7-body); font-weight: 400; } #gf7-footer { display: flex; align-items: flex-start; gap: 10px; flex-wrap: wrap; } #gf7-copy-btn { background: var(--gf7-yellow); border: none; border-radius: 40px; padding: 9px 18px; font-family: var(--gf7-sans); font-size: 12px; font-weight: 900; letter-spacing: 0.03em; color: var(--gf7-ink); cursor: pointer; flex-shrink: 0; transition: opacity 0.12s; } #gf7-copy-btn:hover { opacity: 0.82; } #gf7-import-wrap { flex: 1; min-width: 0; } #gf7-import-code { white-space: pre-wrap; display: none; background: #F0EDE9; border: 1px solid var(--gf7-border); border-radius: 6px; padding: 9px 13px; font-family: 'SF Mono', 'Fira Code', 'Fira Mono', monospace; font-size: 11.5px; line-height: 1.5; color: var(--gf7-body); word-break: break-all; cursor: pointer; } #gf7-import-code.visible { display: block; } #gf7-feedback { font-family: var(--gf7-sans); font-size: 11px; color: var(--gf7-muted); margin-top: 6px; height: 14px; } @media (max-width: 520px) { #gf7 { padding: 20px 16px 18px; } #gf7-prev-head { font-size: 34px; } .gf7-btn { font-size: 13.5px; padding: 7px 13px; } } </style> <div id="gf7"> <div id="gf7-label">Try the fonts →</div> <div id="gf7-btns"> <button class="gf7-btn active" data-idx="0">Halyard Display</button> <button class="gf7-btn" data-idx="1">Climate Crisis</button> <button class="gf7-btn" data-idx="2">Goldich</button> <button class="gf7-btn" data-idx="3">Mestiza Sans</button> <button class="gf7-btn" data-idx="4">Utile Display</button> <button class="gf7-btn" data-idx="5">Degular</button> </div> <div id="gf7-preview"> <div id="gf7-prev-cat"></div> <div id="gf7-prev-head" contenteditable="true" spellcheck="false" data-placeholder="Type something…">The quick brown fox</div> <div id="gf7-prev-body">A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9</div> </div> <div id="gf7-footer"> <button id="gf7-copy-btn">Copy CSS →</button> <div id="gf7-import-wrap"> <code id="gf7-import-code"></code> <div id="gf7-feedback"></div> </div> </div> </div> <script> (function(){ var FONTS = [ { name: 'Halyard Display', css: "'halyard-display', sans-serif", rule: '"halyard-display", sans-serif', w: 700, cat: 'Grotesque Sans' }, { name: 'Climate Crisis', css: "'climate-crisis-variable', sans-serif", rule: '"climate-crisis-variable", sans-serif', w: 400, cat: 'Display Sans' }, { name: 'Goldich', css: "'goldich', serif", rule: '"goldich", serif', w: 700, cat: 'Display Serif' }, { name: 'Mestiza Sans', css: "'mestiza-sans', sans-serif", rule: '"mestiza-sans", sans-serif', w: 700, cat: 'Sans Serif' }, { name: 'Utile Display', css: "'utile-display', sans-serif", rule: '"utile-display", sans-serif', w: 600, cat: 'Display Sans' }, { name: 'Degular', css: "'degular', sans-serif", rule: '"degular", sans-serif', w: 700, cat: 'Sans Serif' } ]; var activeIdx = 0; var codeVisible = false; var gf7Container = null; function gid(id){ return document.getElementById(id); } function buildImport(f){ return 'font-family: ' + f.rule + ';\nfont-weight: ' + f.w + ';'; } function applyFont(idx){ activeIdx = idx; var f = FONTS[idx]; var head = gid('gf7-prev-head'); var body = gid('gf7-prev-body'); var cat = gid('gf7-prev-cat'); if(head){ head.style.fontFamily = f.css; head.style.fontWeight = f.w; } if(body) body.style.fontFamily = f.css; if(cat) cat.textContent = f.cat; var code = gid('gf7-import-code'); if(code){ code.textContent = buildImport(f); if(codeVisible) code.className = 'visible'; else code.className = ''; } var container = gf7Container || document.getElementById('gf7'); if(container){ var btns = container.querySelectorAll('.gf7-btn'); for(var i = 0; i < btns.length; i++){ btns[i].className = 'gf7-btn' + (i === idx ? ' active' : ''); } } } function showFeedback(msg){ var fb = gid('gf7-feedback'); if(!fb) return; fb.textContent = msg; setTimeout(function(){ fb.textContent = ''; }, 2200); } function copyText(str){ if(navigator.clipboard && window.isSecureContext){ navigator.clipboard.writeText(str).then(function(){ showFeedback('✓ Copied to clipboard'); }).catch(function(){ legacyCopy(str); }); } else { legacyCopy(str); } } function legacyCopy(str){ var ta = document.createElement('textarea'); ta.value = str; ta.style.position = 'fixed'; ta.style.opacity = '0'; document.body.appendChild(ta); ta.focus(); ta.select(); try { document.execCommand('copy'); showFeedback('✓ Copied to clipboard'); } catch(e){} document.body.removeChild(ta); } // Document-level delegation: survives Webflow DOM replacement document.addEventListener('click', function(e){ var el = e.target; while(el && el !== document.body){ if(el.getAttribute && el.getAttribute('data-idx') !== null && el.className && el.className.indexOf('gf7-btn') !== -1){ applyFont(parseInt(el.getAttribute('data-idx'))); return; } if(el.id === 'gf7-copy-btn'){ codeVisible = true; var code = document.getElementById('gf7-import-code'); if(code){ code.className = 'visible'; copyText(code.textContent); } return; } if(el.id === 'gf7-import-code'){ if(el.textContent) copyText(el.textContent); return; } el = el.parentElement; } }, false); document.addEventListener('touchstart', function(e){ var el = e.target; while(el && el !== document.body){ if(el.getAttribute && el.getAttribute('data-idx') !== null && el.className && el.className.indexOf('gf7-btn') !== -1){ e.preventDefault(); applyFont(parseInt(el.getAttribute('data-idx'))); return; } if(el.id === 'gf7-copy-btn'){ e.preventDefault(); codeVisible = true; var code = document.getElementById('gf7-import-code'); if(code){ code.className = 'visible'; copyText(code.textContent); } return; } if(el.id === 'gf7-import-code'){ e.preventDefault(); if(el.textContent) copyText(el.textContent); return; } el = el.parentElement; } }, { passive: false }); // Initialize button font-families and initial state: retried for Webflow timing function tryInit(){ var container = document.getElementById('gf7'); if(!container) return; var btns = container.querySelectorAll('.gf7-btn'); for(var i = 0; i < btns.length; i++){ if(FONTS[i]) btns[i].style.fontFamily = FONTS[i].css; } applyFont(0); } setTimeout(tryInit, 50); setTimeout(tryInit, 300); setTimeout(tryInit, 1200); })(); </script>
<style> #gf-rail{ font-family:'Circular Book',-apple-system,BlinkMacSystemFont,'Helvetica Neue',Arial,sans-serif; display:flex;flex-direction:column;row-gap:24px; } @font-face{ font-family:'Circular Black'; src:url('https://assets.yellowboxcreative.agency/fonts/circular/circular-black.woff') format('woff'); font-weight:900;font-style:normal;font-display:swap; } @font-face{ font-family:'Circular Book'; src:url('https://assets.yellowboxcreative.agency/fonts/circular/circular-book.woff') format('woff'); font-weight:400;font-style:normal;font-display:swap; } /* ── Nav ─────────────────────────── */ #gf-rail .gfr-section-lbl{ font-family:'Circular Black',sans-serif;font-weight:900; font-size:.66rem;letter-spacing:.09em;text-transform:uppercase; color:#5E5D5D;margin-bottom:14px; } #gf-rail .gfr-nav-list{ list-style:none;padding:0;margin:0; display:flex;flex-direction:column;gap:3px; } #gf-rail .gfr-nav-list li a{ display:flex;align-items:center;gap:10px; padding:8px 10px;border-radius:8px; text-decoration:none;font-size:.875rem;font-weight:500; color:#5E5D5D;transition:background .15s,color .15s; } #gf-rail .gfr-nav-list li a:hover{background:rgba(0,0,0,.05);color:#191718;} #gf-rail .gfr-nav-list li a.is-active{background:#191718;color:#fff;} #gf-rail .gfr-nav-list li a .gfr-num{ font-family:'Circular Black',sans-serif;font-size:.65rem;font-weight:900; width:20px;height:20px;border-radius:50%;border:1.5px solid currentColor; display:flex;align-items:center;justify-content:center;flex-shrink:0; opacity:.55;transition:opacity .15s; } #gf-rail .gfr-nav-list li a.is-active .gfr-num{opacity:1;border-color:#fff;} /* ── Divider ─────────────────────── */ #gf-rail .gfr-divider{height:1px;background:#E0DCD6;} /* ── Shortlist ───────────────────── */ #gf-rail .gfr-shortlist-empty{ font-size:.8rem;color:#9E9B98;line-height:1.55; padding:14px 12px;text-align:center; border:1.5px dashed #E0DCD6;border-radius:8px; } #gf-rail .gfr-shortlist-list{ list-style:none;padding:0;margin:0; display:flex;flex-direction:column;gap:8px; } #gf-rail .gfr-shortlist-item{ display:flex;align-items:center;justify-content:space-between; padding:10px 14px;border-radius:8px; background:#FAFAF8;border:1px solid #E0DCD6; animation:gfrSlideIn .3s ease both; } @keyframes gfrSlideIn{ from{opacity:0;transform:translateY(-5px);} to{opacity:1;transform:translateY(0);} } #gf-rail .gfr-pair-display{font-size:.8rem;font-weight:700;color:#191718;margin-bottom:2px;} #gf-rail .gfr-pair-body{font-size:.72rem;color:#6B6664;} #gf-rail .gfr-remove{ background:none;border:none;cursor:pointer; color:#C8BEB5;font-size:13px;line-height:1; padding:4px 6px;border-radius:4px;transition:color .15s; } #gf-rail .gfr-remove:hover{color:#191718;} /* ── CTA ─────────────────────────── */ #gf-rail .gfr-cta{border-left:3px solid #FBD305;padding:2px 0 2px 18px;} #gf-rail .gfr-cta .gfr-cta-eyebrow{ font-family:'Circular Black',sans-serif;font-weight:900; font-size:.66rem;letter-spacing:.09em;text-transform:uppercase; color:#5E5D5D;margin-bottom:8px; } #gf-rail .gfr-cta .gfr-cta-headline{ font-family:'Circular Black',sans-serif;font-weight:900; font-size:1.05rem;line-height:1.3;margin-bottom:10px; letter-spacing:-.005em;color:#191718; } #gf-rail .gfr-cta .gfr-cta-copy{ font-size:.87rem;color:#5E5D5D;line-height:1.5;margin-bottom:14px; } #gf-rail .gfr-cta a.gfr-cta-btn{ display:inline-flex;align-items:center;gap:6px; font-family:'Circular Book',sans-serif;font-weight:700; font-size:.82rem;color:#191718;background:#FBD305; padding:9px 16px;border-radius:100px;text-decoration:none; transition:background .15s;cursor:pointer; } #gf-rail .gfr-cta a.gfr-cta-btn:hover{background:#e8c200;} /* ── Contact modal ───────────────── */ #gft-type-overlay{ display:none;position:fixed;inset:0;z-index:9999; align-items:center;justify-content:center; background:rgba(25,23,24,.90); backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px); padding:20px;box-sizing:border-box; font-family:'Circular Book',-apple-system,BlinkMacSystemFont,'Helvetica Neue',Arial,sans-serif; } #gft-type-overlay.is-open{display:flex;} #gft-type-overlay .gfto-card{ background:#FAFAF8;border-radius:16px; max-width:520px;width:100%; padding:44px 44px 38px; position:relative;box-sizing:border-box; animation:gftoIn .25s ease both; } @keyframes gftoIn{ from{opacity:0;transform:translateY(12px);} to{opacity:1;transform:translateY(0);} } #gft-type-overlay .gfto-close{ position:absolute;top:16px;right:16px; background:none;border:none;cursor:pointer; color:#C8BEB5;font-size:20px;line-height:1; width:32px;height:32px;border-radius:6px; display:flex;align-items:center;justify-content:center; transition:color .15s,background .15s; } #gft-type-overlay .gfto-close:hover{color:#191718;background:rgba(0,0,0,.06);} #gft-type-overlay .gfto-eyebrow{ font-family:'Circular Black',sans-serif;font-weight:900; font-size:.66rem;letter-spacing:.09em;text-transform:uppercase; color:#5E5D5D;margin-bottom:18px; display:flex;align-items:center;gap:8px; } #gft-type-overlay .gfto-eyebrow::before{ content:'';display:inline-block; width:22px;height:3px;background:#FBD305;border-radius:2px;flex-shrink:0; } #gft-type-overlay .gfto-headline{ font-family:'Circular Black',sans-serif;font-weight:900; font-size:1.8rem;line-height:1.12;letter-spacing:-.018em; color:#191718;margin-bottom:10px; } #gft-type-overlay .gfto-body{ font-size:.925rem;color:#5E5D5D;line-height:1.65;margin-bottom:22px; } /* form fields */ #gft-type-overlay .gfto-field{ display:flex;flex-direction:column;gap:5px;margin-bottom:14px; } #gft-type-overlay .gfto-field label{ font-family:'Circular Black',sans-serif; font-size:.68rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase; color:#5E5D5D; } #gft-type-overlay .gfto-field input, #gft-type-overlay .gfto-field textarea{ background:#F0EDE9;border:1.5px solid #E0DCD6;border-radius:8px; padding:10px 13px; font-family:'Circular Book',-apple-system,sans-serif;font-size:.875rem; color:#191718;outline:none;transition:border-color .15s; box-sizing:border-box;width:100%; } #gft-type-overlay .gfto-field input:focus, #gft-type-overlay .gfto-field textarea:focus{border-color:#191718;} #gft-type-overlay .gfto-field textarea{resize:vertical;min-height:88px;} #gft-type-overlay .gfto-submit{ display:flex;align-items:center;justify-content:center;gap:8px; font-family:'Circular Black',sans-serif;font-weight:900; font-size:.875rem;color:#191718;background:#FBD305; padding:12px 24px;border-radius:100px;border:none; cursor:pointer;transition:background .15s,opacity .15s; width:100%;margin-top:4px;letter-spacing:.01em; } #gft-type-overlay .gfto-submit:hover:not(:disabled){background:#e8c200;} #gft-type-overlay .gfto-submit:disabled{opacity:.6;cursor:not-allowed;} #gft-type-overlay .gfto-status{ margin-top:12px;font-size:.82rem;line-height:1.5; text-align:center;min-height:20px; } #gft-type-overlay .gfto-status.ok{color:#2a7f4f;} #gft-type-overlay .gfto-status.err{color:#c0392b;} #gft-type-overlay .gfto-footer{ margin-top:18px; font-size:.74rem;color:#9E9B98;line-height:1.5; } @media(max-width:560px){ #gft-type-overlay .gfto-card{padding:32px 24px 28px;} #gft-type-overlay .gfto-headline{font-size:1.45rem;} } </style> <div id="gf-rail"> <!-- 1 · Navigation --> <div> <div class="gfr-section-lbl">In this guide</div> <ul class="gfr-nav-list"> <li><a href="#gf-tester" data-gfr-link="gf-tester"><span class="gfr-num">1</span>Pairings</a></li> <li><a href="#gf-avoid" data-gfr-link="gf-avoid"><span class="gfr-num">2</span>What to skip</a></li> <li><a href="#gf7" data-gfr-link="gf7"><span class="gfr-num">3</span>Try the fonts</a></li> </ul> </div> <div class="gfr-divider"></div> <!-- 3 · CTA --> <div class="gfr-cta"> <div class="gfr-cta-eyebrow">From YBX</div> <div class="gfr-cta-headline">Ready to explore something more custom for your type family?</div> <div class="gfr-cta-copy">We build type systems that hold everywhere: brand, web, and editorial.</div> <a href="/contact" class="gfr-cta-btn">Let's talk &rarr;</a> </div> </div> <script> (function(){ var links = document.querySelectorAll('[data-gfr-link]'); if('IntersectionObserver' in window){ var io = new IntersectionObserver(function(entries){ entries.forEach(function(en){ if(en.isIntersecting){ var id = en.target.id; links.forEach(function(a){ a.classList.toggle('is-active', a.getAttribute('data-gfr-link')===id); }); } }); },{threshold:.25,rootMargin:'0px 0px -55% 0px'}); ['gf-tester','gf-avoid','gf7'].forEach(function(id){ var el = document.getElementById(id); if(el) io.observe(el); }); } })(); </script> <script> /* ── Contact modal ───────────────────────── */ (function(){ if(document.getElementById('gft-type-overlay')) return; var overlay = document.createElement('div'); overlay.id = 'gft-type-overlay'; overlay.setAttribute('role','dialog'); overlay.setAttribute('aria-modal','true'); overlay.setAttribute('aria-label','Get in touch with Yellowbox Creative'); overlay.innerHTML = '<div class="gfto-card">' + '<button class="gfto-close" aria-label="Close">&times;</button>' + '<div class="gfto-eyebrow">Yellowbox Creative</div>' + '<div class="gfto-headline">Let\'s talk type.</div>' + '<div class="gfto-body">Tell us about your project—what you\'re building, what\'s not working, or where you want to end up.</div>' + '<form id="gfto-form" novalidate>' + '<div class="gfto-field"><label for="gfto-name">Name</label><input type="text" id="gfto-name" name="name" placeholder="Your name" autocomplete="name" required></div>' + '<div class="gfto-field"><label for="gfto-email">Email</label><input type="email" id="gfto-email" name="email" placeholder="you@example.com" autocomplete="email" required></div>' + '<div class="gfto-field"><label for="gfto-msg">Message</label><textarea id="gfto-msg" name="message" placeholder="What are you working on?" required></textarea></div>' + '<button type="submit" class="gfto-submit">Send it →</button>' + '<div class="gfto-status" id="gfto-status"></div>' + '</form>' + '<div class="gfto-footer">We work with brands, publishers, and agencies. No retainer required to start.</div>' + '</div>'; document.body.appendChild(overlay); function openModal(){ overlay.classList.add('is-open'); document.body.style.overflow = 'hidden'; } function closeModal(){ overlay.classList.remove('is-open'); document.body.style.overflow = ''; } overlay.querySelector('.gfto-close').addEventListener('click', closeModal); overlay.addEventListener('click', function(e){ if(e.target === overlay) closeModal(); }); document.addEventListener('keydown', function(e){ if(e.key === 'Escape' && overlay.classList.contains('is-open')) closeModal(); }); /* ── FormSubmit AJAX ── */ var form = document.getElementById('gfto-form'); if(form){ form.addEventListener('submit', function(e){ e.preventDefault(); var btn = form.querySelector('.gfto-submit'); var status = document.getElementById('gfto-status'); var name = (form.querySelector('[name="name"]').value||'').trim(); var email = (form.querySelector('[name="email"]').value||'').trim(); var msg = (form.querySelector('[name="message"]').value||'').trim(); status.className = 'gfto-status'; status.textContent = ''; if(!name || !email || !msg){ status.className = 'gfto-status err'; status.textContent = 'Please fill in all fields.'; return; } btn.disabled = true; btn.textContent = 'Sending…'; fetch('https://formsubmit.co/ajax/kevin@yellowbox.co',{ method:'POST', headers:{'Content-Type':'application/json','Accept':'application/json'}, body:JSON.stringify({ name:name, email:email, message:msg, _subject:'Type inquiry: YBX Adobe Fonts article' }) }) .then(function(r){ return r.json(); }) .then(function(d){ if(d.success==='true'||d.success===true){ form.style.display = 'none'; status.className = 'gfto-status ok'; status.textContent = 'Got it. We\'ll be in touch soon.'; } else { throw new Error('fail'); } }) .catch(function(){ btn.disabled = false; btn.textContent = 'Send it →'; status.className = 'gfto-status err'; status.textContent = 'Something went wrong. Try again in a moment.'; }); }); } /* ── Wire CTA button to open modal ── */ var rail = document.getElementById('gf-rail'); if(rail){ var ctaBtn = rail.querySelector('.gfr-cta-btn'); if(ctaBtn){ ctaBtn.addEventListener('click', function(e){ e.preventDefault(); openModal(); }); } } })(); </script>

Discovery

Trends & Culture

Strategy & Planning

Tools & Software

Brand & Identity

Pepe

October 2026 · 5 min read

More from Yellowbox

Our Google Fonts Must-Haves for the Fall

Seven Google Fonts worth actually using, for brand, editorial, UI, and bold statements. Try the pairings live, see what to skip, and copy the CSS.

Image of the resource

Plan Your Creative

Map the year's initiatives, campaigns, and communication needs in one place, so creative support, planning, and momentum stay ahead of the calendar.

Image of the resource

Adobe Fonts Worth Knowing

Six Adobe Fonts worth knowing, from a heavy poster face to a quiet text sans. Try the pairings live and get the licensing straight before you build.

Image of the resource

Canva vs. Adobe Express

Both Canva and Adobe Express can help your team create faster — but only if you know what you're building on top of. This comparison breaks down where each tool excels, where it falls short, and what to have in place before your team picks one.

Image of the resource

Design Persona Quiz

The Design Persona Quiz helps organizations uncover their creative instincts and visual communication style. By identifying your design persona, you gain insight into how your brand can communicate with greater clarity, consistency, and confidence.

Image of the resource

Design Trends 2026

The YBX Design Trends 2026 resource explores the creative movements shaping the year ahead and offers guidance on how organizations can apply trends thoughtfully—using design as a tool for clarity, connection, and long-term brand health.

Image of the resource

The Sad Beige Design Era

Sad, safe, and forgettable: why so many brands landed on the same muted palette. How a decade of “clean” minimalism sanded brands down to one look, which ones held their equity through it, and what building a real color system looks like instead.

Image of the resource
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.