/* Approved Mira Design 1.2.19 refinements. */

:root { --color-text:#434343; --color-bg:#f8f9f6; --color-contrast:#f4f5f1; --color-unexpected:#eeefeb; --color-2:#e3e4df; }
@media(min-width:769px) { .flex-container>.left-container,.flex-container>.right-container { box-sizing:border-box; flex:0 0 50%; width:50%; min-width:0; } }
.work-page .site-logo--primary { opacity:0.737255; }
.right-container nav.anchored-bottom { display:flex; flex-wrap:wrap; align-items:flex-start; justify-content:flex-start; column-gap:28px; row-gap:14px; width:auto; left:16px; right:16px; }
.right-container nav.anchored-bottom .mira-nav-group { display:flex; flex-direction:column; align-items:flex-start; gap:3px; white-space:nowrap; }
.right-container nav.anchored-bottom .mira-nav-group:last-child { align-self:flex-end; margin-left:auto; }
.right-container nav.anchored-bottom .mira-nav-group:last-child a { color:#b4b1b1; }
.right-container nav.anchored-bottom a,.right-container nav.anchored-bottom .mira-nav-group>span,.mira-primary a { font-size:12px; line-height:14.4px; margin:0; }
.right-container nav.anchored-bottom a { padding:0; }
.mira-primary { display:flex; gap:8px; align-items:center; }
.mira-primary a { padding:0 6px; font-size:14px; line-height:16.52px; }
.work-page .site-logo--primary { width:auto; height:14.28px; }
.right-container .right-inner-container .mira-statement { text-align:left; margin:0; width:auto; font-size:14px; line-height:16.52px; }
.project-carousel .project-frame,.project-carousel .marquee-track img { height:20dvh; }
.work-page .left-container > div:first-child { position:absolute; top:40dvh; left:16px; right:40px; }
.work-page .left-container > div:first-child h1 { margin:0; }
.work-page .right-inner-container { position:absolute; top:40dvh; left:16px; right:16px; }
.work-page .bottom-bar { top:auto; bottom:56px; justify-content:flex-end; }
.work-page .mira-home-tagline { margin:0; font-size:12px; line-height:14.4px; color:#b4b1b1; text-align:right; }
@media(max-width:768px) { .work-page .bottom-bar { top:auto; bottom:120px; } }
@media(max-width:768px) { .work-page .left-container > div:first-child,.work-page .right-inner-container { top:16px; } }
@media(max-width:768px) { .right-container nav.anchored-bottom { column-gap:16px; } }


:root { --paper:#fff; --black:#434343; --nav-active:#eee; --nav-inactive:#e4e4e4; }
body[data-theme="dark"] { --bg:#181818; --ink:#cdcecb; }
body[data-theme="dark"] .mira-unified-footer .mira-primary a { background:#2d2d2f; color:#cdcecb; }
body[data-theme="dark"] .mira-unified-footer .mira-primary a[aria-current="page"] { background:#222223; }
body[data-theme="dark"] #font-weight-control button:not([aria-pressed="true"]),body[data-theme="dark"] .alternate-options button:not([aria-pressed="true"]),body[data-theme="dark"] .alignment-options button:not([aria-pressed="true"]) { color:#5c605d; }
body[data-theme="dark"] .type-tools,body[data-theme="dark"] .character-tabs { border-color:#a0a19e; }
.colour-dark span { background:#181818; }
.colour-options>button.colour-option { display:none; }
.colour-options>.mira-colour-toggle { display:grid; place-items:center; width:28px; height:28px; padding:0; border:0; background:transparent; }
.mira-colour-toggle span { display:block; width:16px; height:16px; border:1px solid var(--ink); border-radius:50%; background:#181818; }
body[data-theme="dark"] .mira-colour-toggle span { background:#f8f9f6; }
.character-tabs,.character-tabs button { font-size:12px; line-height:14.4px; }
.font-heading .weight-row,.font-heading .weight-row button,.font-heading .weight-row a,.type-tools,.type-tools button,.alternate-options button { font-size:12px; line-height:14.4px; }
.font-heading,.font-heading .weight-row,.font-heading .weight-row button,.font-heading .weight-row a { font-size:14px; line-height:16.52px; }
#font-weight-control button { color:#b4b1b1; }
#font-weight-control button[aria-pressed="true"] { color:var(--ink,#434343); }
.alternate-options button { color:#b4b1b1; }
.alternate-options button[aria-pressed="true"] { color:var(--ink,#434343); }
#font-weight-control button[aria-pressed="true"],.alternate-options button[aria-pressed="true"] { text-decoration:none; }
.type-tools,.character-tabs { border-top:1px solid #707070; }
.alignment-options svg { stroke-width:1; }
.alignment-options button { color:#b4b1b1; }
.alignment-options button[aria-pressed="true"] { color:var(--ink,#434343); }
.alignment-options button[aria-pressed="true"]::after { content:none; }
.font-detail .specimen:focus,.font-detail .specimen:focus-visible { outline:none; box-shadow:none; }
.colour-option span { border-width:1px; }
.size-control input::-webkit-slider-runnable-track { height:1px; }
.size-control input::-moz-range-track { height:1px; }
@media(min-width:769px) {
 .font-heading .weight-row { display:grid; grid-template-columns:50vw minmax(0,1fr); gap:0; }
 .font-heading .font-actions { width:100%; margin-left:0; justify-content:space-between; }
 .type-tools { position:relative; }
 .type-tools:has(.alternate-options:not([hidden])) { min-height:84px; }
 .type-tools .alternate-options { position:absolute; top:12px; left:50vw; justify-self:start; align-items:flex-start; }
 .type-tools .colour-control { position:absolute; top:12px; right:0; }
}
body[data-theme="dark"] .mira-unified-footer .mira-nav-group a,body[data-theme="dark"] .mira-unified-footer .mira-nav-group>span { color:#cdcecb; }
body[data-theme="dark"] .mira-unified-footer .mira-nav-group:last-child a { color:#5c605d; }
.site-logo { opacity:.737255; }
.info-page .bottom-bar { display:flex; flex-direction:column; align-items:flex-start; gap:16px; }
.info-page .bottom-bar>p,.footer-credit { color:#b4b1b1; font-size:12px; }
.info-page .right-container nav.anchored-bottom { width:100%; }
.info-page .about-statement { width:90%; }
.flex-container.info-page { display:block; box-sizing:border-box; min-height:100dvh; height:auto; padding:16px 16px 160px; background:var(--color-bg); }
.info-page>.info-panel { width:100%; }
.info-page .info-panel .about-statement { width:min(100%,60ch); }
.info-page .info-panel>.bottom-bar { position:absolute; bottom:72px; left:16px; right:16px; }
@media(max-width:768px) { .info-page .info-panel>.bottom-bar { bottom:120px; } }
.mira-footer-secondary { display:flex; align-items:flex-start; gap:28px; margin-left:0; width:100%; font-size:12px; line-height:14.4px; }
.mira-footer-secondary .mira-nav-group { display:flex; flex-direction:column; align-items:flex-start; gap:3px; white-space:nowrap; }
.mira-footer-secondary .mira-nav-group:last-child { align-self:flex-end; margin-left:auto; }
.mira-footer-secondary .mira-nav-group:last-child a { color:#b4b1b1; }
.site-footer .footer-row { display:grid; grid-template-columns:calc(50vw - 4px) minmax(0,1fr); gap:0; align-items:flex-end; }
.site-footer .site-nav { gap:8px; }
.site-header .site-logo--primary { width:auto; height:14.28px; }
.typeface-list { gap:0; }
body.mira-fonts-page { padding-bottom:80px!important; }
@media(max-width:768px) { body.mira-fonts-page { padding-bottom:112px!important; } }
@media(hover:hover) and (pointer:fine) {
 body:has(.typeface-list) .site-header,body:has(.typeface-list) .mira-unified-footer,.typeface-card { transition:filter .3s ease; }
 body:has(.typeface-card:hover) .site-header,.typeface-list:has(.typeface-card:hover) .typeface-card:not(:hover) { filter:blur(3px); }
}
@media(prefers-reduced-motion:reduce) { body:has(.typeface-list) .site-header,body:has(.typeface-list) .mira-unified-footer,.typeface-card { transition:none; } }
@media(max-width:768px) { .site-footer .footer-row { display:flex; flex-direction:column; align-items:stretch; gap:16px; } .mira-footer-secondary { flex-wrap:wrap; gap:16px; } body.mira-fonts-page { padding-bottom:110px; } }


:root { --paper:#f8f9f6; --nav-active:#eeefeb; --nav-inactive:#e3e4df; }
.mira-unified-footer { position:fixed; z-index:100; bottom:0; left:0; right:0; display:grid; grid-template-columns:50vw minmax(0,1fr); align-items:end; padding:16px; background:transparent; color:#434343; font-family:"Neue Haas Grotesk Display Pro 55 Roman", "Neue Haas",sans-serif; }
.mira-unified-footer .mira-primary { display:flex; align-items:center; gap:8px; }
.mira-footer-left { display:flex; align-items:baseline; gap:8px; min-width:0; padding-right:16px; }
.mira-footer-left .mira-primary { flex-shrink:0; }
.mira-footer-tagline { margin:0; font-size:12px; line-height:14.4px; color:#b4b1b1; white-space:nowrap; text-align:left; }
.mira-footer-tagline[hidden] { display:none; }
.mira-unified-footer .mira-primary a { display:inline-block; padding:0 6px; margin:0; font-size:14px; line-height:16.52px; color:#434343; background:#e3e4df; border-radius:999px; text-decoration:none; }
.mira-unified-footer .mira-primary a[aria-current="page"] { background:#eeefeb; }
.mira-unified-footer .mira-secondary { display:flex; align-items:flex-start; gap:28px; width:100%; margin:0; padding:0; }
.mira-unified-footer .mira-nav-group { display:flex; flex-direction:column; align-items:flex-start; gap:3px; white-space:nowrap; }
.mira-unified-footer .mira-nav-group a,.mira-unified-footer .mira-nav-group>span { padding:0; margin:0; color:#434343; background:none; font-size:12px; line-height:14.4px; font-weight:400; text-decoration:none; }
.mira-unified-footer .mira-nav-group:last-child { margin-left:auto; align-self:flex-end; }
.mira-unified-footer .mira-nav-group:last-child a { color:#b4b1b1; }
.mira-unified-footer .mira-nav-group>span { cursor:default; }
.mira-unified-footer .mira-primary,.mira-unified-footer .mira-footer-left,.mira-unified-footer .mira-secondary { transition:filter .3s ease; }
body.modal-open .mira-unified-footer { filter:blur(var(--blur,3px)); pointer-events:none; }
.image-modal .modal-metadata { left:16px; right:16px; max-width:none; display:grid; grid-template-columns:50vw minmax(0,1fr); gap:0; align-items:end; }
.image-modal .modal-arrow { width:44px; height:44px; padding:14px; display:grid; place-items:center; }
.image-modal .modal-close { font-size:12px; line-height:14.4px; }
.image-modal .modal-previous { left:2px; }
.image-modal .modal-next { right:2px; }
.image-modal .modal-arrow svg { width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
@media(max-width:768px) { .image-modal .modal-metadata { grid-template-columns:1fr; gap:16px; } }
@media(hover:hover) and (min-width:769px) {
 body:has(.left-container.hide-content) .mira-unified-footer>.mira-primary,body:has(.left-container.hide-content) .mira-unified-footer .mira-footer-left { filter:blur(var(--blur,3px)); }
 body:has(.right-container.hide-content) .mira-unified-footer .mira-secondary { filter:blur(var(--blur,3px)); }
 body.mira-fonts-page .mira-unified-footer a { transition:filter .3s ease; }
 body.mira-fonts-page .mira-unified-footer .mira-primary a:hover,body.mira-fonts-page .mira-unified-footer .mira-nav-group a:hover { filter:blur(3px); }
 body:has(.info-page) .mira-unified-footer a { transition:filter .3s ease; }
 body:has(.info-page) .mira-unified-footer .mira-primary a:hover,body:has(.info-page) .mira-unified-footer .mira-nav-group a:hover { filter:blur(3px); }
}
.info-page .left-container>.bottom-bar { position:absolute; bottom:72px; left:16px; right:16px; width:auto; }
@media(max-width:768px) { .mira-unified-footer { grid-template-columns:1fr; gap:16px; } .mira-unified-footer .mira-secondary { gap:20px; } .info-page .left-container>.bottom-bar { bottom:120px; } }
