/* cabinpxrn identity: brandbook palette, typography and 1440 / 64 / 24 grid.
   This layer styles the portfolio shell; project interfaces retain their own identity. */
@font-face{font-family:Inter;src:url('/fonts/inter-cyrillic.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap;unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Inter;src:url('/fonts/inter-latin.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url('/fonts/ibm-plex-mono-400.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'IBM Plex Mono';src:url('/fonts/ibm-plex-mono-500.woff2') format('woff2');font-style:normal;font-weight:500;font-display:swap}
:root{--white:#FFFFFF;--paper:#F9FAFB;--ink:#111827;--muted:#6B7280;--line:#E5E7EB;--blue:#2563EB;--blue-pale:#F9FAFB;--display:Inter,Arial,sans-serif;--body:Inter,Arial,sans-serif;--mono:'IBM Plex Mono',monospace;--site-width:1440px;--site-gutter:64px;
 --brand-clearspace:24px;
 --type-h1-size:72px;--type-h1-line:74.8px;--type-h1-tracking:-3.5px;
 --type-thesis-size:64px;--type-thesis-line:69px;--type-thesis-tracking:-2.7px;
 --type-h2-size:48px;--type-h2-line:55px;--type-h2-tracking:-1.8px;
 --type-subtitle-size:22px;--type-subtitle-line:26px;--type-subtitle-tracking:-.4px;
 --type-body-size:18px;--type-body-line:28px;
 --type-label-size:12px;--type-label-line:17px;--type-label-tracking:.4px;
 --type-button-size:16px;--type-button-line:24px;--button-height:52px}
body{font-size:var(--type-body-size);line-height:var(--type-body-line)}
::selection{background:var(--blue);color:var(--white)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:var(--blue)}
.site-header,.hero,.section,.case-intro,.case-story,.site-footer{max-width:var(--site-width);padding-left:var(--site-gutter);padding-right:var(--site-gutter)}
.site-header{height:88px;gap:32px;border-bottom:1px solid var(--line)}
.wordmark{gap:var(--brand-clearspace);letter-spacing:0;flex-shrink:0}
.brand-logo{width:136px;height:auto;flex-shrink:0}
.desktop-nav{gap:24px;font-size:14px;margin-left:auto}
.hero{padding-top:80px;padding-bottom:32px}
.hero-topline{margin-bottom:40px}
.eyebrow{font-size:var(--type-label-size);line-height:var(--type-label-line);font-weight:500;letter-spacing:var(--type-label-tracking)}
.hero-discipline{font-family:var(--mono);font-weight:500;letter-spacing:var(--type-label-tracking);font-size:var(--type-label-size);line-height:var(--type-label-line)}
.hero h1{font-size:var(--type-h1-size);line-height:var(--type-h1-line);font-weight:500;max-width:1120px;text-wrap:initial;letter-spacing:var(--type-h1-tracking)}
.hero-bottom{margin-top:40px;gap:64px;align-items:flex-end}
.hero-bottom p{font-size:var(--type-body-size);line-height:var(--type-body-line);max-width:640px}
.text-link{font-size:var(--type-button-size);line-height:var(--type-button-line);gap:16px;color:var(--blue)}
.hero-bottom .text-link{font-size:var(--type-button-size);line-height:var(--type-button-line);padding-bottom:0;min-height:52px}
.hero-bottom .text-link span{width:40px;height:40px;border-radius:0;border:0;background:var(--paper);color:var(--blue)}
.hero-attribution{display:flex;justify-content:space-between;gap:24px;margin-top:64px;padding-top:24px;border-top:1px solid var(--line);font-size:14px;color:var(--muted)}
.hero-attribution a{display:inline-flex;align-items:center;gap:8px;color:var(--blue);font-family:var(--mono);font-weight:500;font-size:var(--type-label-size);line-height:var(--type-label-line);letter-spacing:var(--type-label-tracking)}
.section{padding-top:80px;padding-bottom:80px;scroll-margin-top:24px}
.section-heading{margin-bottom:32px;gap:32px}
.section-heading .eyebrow{font-size:var(--type-label-size);line-height:var(--type-label-line);margin-bottom:16px;letter-spacing:var(--type-label-tracking)}
.section-heading h2{font-size:var(--type-h2-size);line-height:var(--type-h2-line);font-weight:500;letter-spacing:var(--type-h2-tracking)}
.related-section .section-heading h2{font-size:var(--type-h2-size);line-height:var(--type-h2-line);font-weight:500;letter-spacing:var(--type-h2-tracking)}
.section-heading>p{font-size:var(--type-body-size);line-height:var(--type-body-line)}
.count{font-size:var(--type-label-size);line-height:var(--type-label-line);margin-left:16px;margin-top:8px;letter-spacing:var(--type-label-tracking)}
.works-section{border-top:0;padding-top:64px}
.work-filters{gap:8px;margin-bottom:32px}
.work-filters button,.screen-tabs button{min-height:var(--button-height);padding:12px 16px;border-radius:4px;font-size:var(--type-button-size);line-height:var(--type-button-line)}
.work-filters button:hover,.screen-tabs button:hover{border-color:var(--ink);color:var(--ink)}
.work-filters button.active,.screen-tabs button.active{background:var(--ink);color:var(--white);border-color:var(--ink)}
.project-grid{gap:48px 24px}
.project-media,.project-wedding .project-media,.project-requests .project-media,.project-operations .project-media,.project-control .project-media,.project-finance .project-media{background:var(--paper);border:1px solid var(--line);padding:24px;border-radius:4px}
.project-media .preview{border:1px solid var(--line);box-shadow:none;border-radius:2px}
.project-media>img{border-radius:2px}
.project-link:hover .preview{transform:none}
.project-link:hover .project-media{border-color:var(--muted);background:var(--paper)}
.open-project{background:var(--white);color:var(--blue);border:1px solid var(--line);border-radius:4px;font-size:var(--type-button-size);line-height:var(--type-button-line);min-height:var(--button-height);box-shadow:none;right:16px;bottom:16px}
.project-caption{padding-top:24px;gap:24px}
.project-category{font-weight:500;font-size:var(--type-label-size);line-height:var(--type-label-line);margin-bottom:8px;letter-spacing:var(--type-label-tracking)}
.project-caption h3{font-size:var(--type-subtitle-size);line-height:var(--type-subtitle-line);font-weight:600;letter-spacing:var(--type-subtitle-tracking)}
.project-subtitle{font-size:var(--type-body-size);line-height:var(--type-body-line);margin-top:8px}
.project-arrow{color:var(--blue);width:32px;height:32px;margin-top:24px}
.tags{gap:8px;margin-top:16px}
.tags span{font-family:var(--mono);font-weight:500;font-size:var(--type-label-size);line-height:var(--type-label-line);padding:4px 8px;border-radius:2px;background:var(--white);letter-spacing:var(--type-label-tracking)}
.project-link>.tags{padding-top:16px}
.anonymity-note{font-size:12px;line-height:20px;margin-top:32px;align-items:flex-start}
.services-section{margin-top:0}
.services-section .section-heading h2{font-size:var(--type-h2-size);line-height:var(--type-h2-line);max-width:760px;letter-spacing:var(--type-h2-tracking)}
.service-row{grid-template-columns:40px minmax(0,1fr) minmax(0,1fr);gap:24px;padding:32px 0}
.service-icon{width:40px;height:40px;color:var(--muted);background:var(--paper);border-radius:4px}
.service-row h3{font-size:var(--type-subtitle-size);line-height:var(--type-subtitle-line);font-weight:600;padding-top:4px;letter-spacing:var(--type-subtitle-tracking)}
.service-row p{font-size:var(--type-body-size);line-height:var(--type-body-line);max-width:520px;padding-top:0}
.review-card{padding:32px;border-radius:4px}
.review-card>svg{color:var(--muted)}
.review-card blockquote{font-size:var(--type-body-size);line-height:var(--type-body-line)}
.review-card figcaption{font-size:14px}
.contacts-section{margin-top:0;background:var(--blue);color:var(--white);border:0;padding-top:64px;padding-bottom:64px}
.contacts-section>.eyebrow{font-size:var(--type-label-size);line-height:var(--type-label-line);color:var(--white);letter-spacing:var(--type-label-tracking)}
.contact-layout{margin-top:24px;gap:64px}
.contact-layout h2{font-size:var(--type-thesis-size);line-height:var(--type-thesis-line);max-width:800px;letter-spacing:var(--type-thesis-tracking)}
.contact-layout p{font-size:var(--type-body-size);line-height:var(--type-body-line);max-width:600px;margin-top:24px;color:var(--white)}
.telegram-link{min-width:320px;padding:24px 0;gap:24px;border-bottom-color:var(--white)}
.telegram-link>span:first-child{font-size:var(--type-body-size);line-height:var(--type-body-line);letter-spacing:0}
.telegram-link small{font-family:var(--mono);font-weight:500;font-size:var(--type-label-size);line-height:var(--type-label-line);letter-spacing:var(--type-label-tracking);margin-top:8px;color:var(--white)}
.contact-arrow{width:48px;height:48px;background:transparent;color:var(--white);border-radius:0}
.telegram-link:hover{color:var(--white);border-color:var(--white)}
.telegram-link:hover .contact-arrow{transform:translate(3px,-3px)}
.site-footer{padding-top:32px;padding-bottom:32px;font-size:12px;line-height:20px;gap:24px}
.footer-brand{order:-1;flex-shrink:0}
.footer-brand img{width:128px;height:auto}
.footer-year{margin-left:8px;color:var(--muted)}
/* The loading mark uses the same square terminal as the wordmark. */
.page-transition-mark{width:20px;height:20px;background:var(--blue);animation:brand-loading 1.2s ease-in-out infinite}
.page-transition-mark i{display:none}
.page-transition-label{font-family:var(--mono);font-size:12px;letter-spacing:.4px}
@keyframes brand-loading{0%,100%{opacity:1}50%{opacity:.35}}
/* Case study covers and content follow the same grid and type hierarchy. */
.case-intro{padding-top:48px;padding-bottom:48px}
.back-link{font-size:var(--type-body-size);line-height:var(--type-body-line)}
.case-heading{grid-template-columns:minmax(0,1fr) 264px;gap:64px;margin:48px 0 32px}
.case-heading h1{font-size:var(--type-h1-size);line-height:var(--type-h1-line);font-weight:500;letter-spacing:var(--type-h1-tracking)}
.case-summary{font-size:var(--type-body-size);line-height:var(--type-body-line);margin-top:24px}
.case-meta>span{font-weight:500;font-size:var(--type-label-size);line-height:var(--type-label-line);letter-spacing:.4px}
.case-meta>p{font-size:var(--type-body-size);line-height:var(--type-body-line);margin:8px 0 24px}
.case-intro .button,.demo-invitation .button,.not-found .button{min-height:var(--button-height);padding:12px 24px;font-size:var(--type-button-size);line-height:var(--type-button-line);border-radius:4px}
.button.primary:hover{background:var(--ink)}
.case-showcase{max-width:calc(var(--site-width) - 2 * var(--site-gutter));margin:0 auto 32px;padding:48px;background:var(--paper);border:1px solid var(--line);border-radius:4px}
.case-showcase .preview{box-shadow:none;border:1px solid var(--line);border-radius:2px}
.case-showcase>img{border-radius:2px}
.case-story{padding-top:0;padding-bottom:32px}
.story-row{grid-template-columns:200px minmax(0,1fr);gap:64px;padding:48px 0}
.story-row>.eyebrow{font-size:var(--type-label-size);line-height:var(--type-label-line);color:var(--muted);letter-spacing:var(--type-label-tracking)}
.story-row h2{font-size:var(--type-h2-size);line-height:var(--type-h2-line);margin-bottom:24px;letter-spacing:var(--type-h2-tracking)}
.story-row p{font-size:var(--type-body-size);line-height:var(--type-body-line);max-width:840px}
.feature-list{gap:16px 24px;margin-top:32px}
.feature-list li{font-size:var(--type-body-size);line-height:var(--type-body-line)}
.feature-list svg{color:var(--muted)}
.screen-tabs{margin-bottom:24px}
.screen-preview{padding:40px;border:1px solid var(--line);background:var(--paper);border-radius:4px}
.gallery-image{border-radius:4px;padding:16px}
.demo-invitation{max-width:calc(var(--site-width) - 2 * var(--site-gutter));background:var(--paper);border:1px solid var(--line);border-radius:4px;padding:40px;margin:0 auto 32px;gap:32px}
.demo-invitation h2{font-size:var(--type-h2-size);line-height:var(--type-h2-line);margin-top:16px;letter-spacing:var(--type-h2-tracking)}
.demo-invitation p{font-size:var(--type-body-size);line-height:var(--type-body-line);margin-top:16px}
.related-grid{gap:24px}
.not-found h1{font-size:var(--type-h1-size);line-height:var(--type-h1-line);letter-spacing:var(--type-h1-tracking)}
/* Portfolio controls around each independent project demo. */
.demo-utility-bar{border-color:var(--line);color:var(--ink)}
.demo-back{font-size:12px;color:var(--blue);border-radius:4px}
.demo-back:hover{color:var(--blue);background:var(--paper)}
.demo-session{color:var(--muted);font-size:11px}
.demo-session>i{background:var(--muted);box-shadow:none;border-radius:0}
.demo-session time{color:var(--ink);font-family:var(--mono);font-weight:500}
.demo-loading{color:var(--ink)}
.demo-loading-spinner{width:20px;height:20px;border:0;border-radius:0;background:var(--blue);animation:brand-loading 1.2s ease-in-out infinite}
@media(max-width:1200px){
 .site-header{gap:24px}.wordmark{gap:var(--brand-clearspace)}
 .hero h1{font-size:var(--type-h1-size);line-height:var(--type-h1-line);letter-spacing:var(--type-h1-tracking)}
 .case-showcase,.demo-invitation{margin-left:var(--site-gutter);margin-right:var(--site-gutter)}
 .case-heading{grid-template-columns:minmax(0,1fr) 224px;gap:40px}
 .case-heading h1{font-size:var(--type-h1-size);line-height:var(--type-h1-line);letter-spacing:var(--type-h1-tracking)}
 .contact-layout{gap:40px}.contact-layout h2{font-size:var(--type-thesis-size);line-height:var(--type-thesis-line);letter-spacing:var(--type-thesis-tracking)}
 .telegram-link{min-width:280px}
}
@media(max-width:960px){
 :root{--site-gutter:32px;--type-h1-size:56px;--type-h1-line:61px;--type-h1-tracking:-2.2px;--type-thesis-size:56px;--type-thesis-line:61px;--type-thesis-tracking:-2.2px;--type-h2-size:40px;--type-h2-line:46px;--type-h2-tracking:-1.4px}
 .desktop-nav{display:none}
 .mobile-menu-button{margin-left:auto;display:grid;place-items:center;width:52px;height:52px;border:1px solid var(--line);border-radius:0;flex-shrink:0}
 .mobile-nav:not([hidden]){display:flex;position:absolute;top:calc(100% - 8px);left:var(--site-gutter);right:var(--site-gutter);flex-direction:column;padding:8px;background:var(--white);border:1px solid var(--line);border-radius:0;box-shadow:none;z-index:100}
 .mobile-nav a{padding:12px 16px;font-size:16px;min-height:48px}
}
@media(max-width:800px){
 :root{--site-gutter:24px}
 .site-header{height:88px;gap:var(--brand-clearspace)}.brand-logo{width:136px}
 .mobile-menu-button{width:52px;height:52px;border:1px solid var(--line);border-radius:0;flex-shrink:0}
 .mobile-nav:not([hidden]){top:calc(100% - 8px);left:var(--site-gutter);right:var(--site-gutter);border-radius:0;box-shadow:none;padding:8px}
 .mobile-nav a{font-size:16px;min-height:48px;padding:12px 16px}
 .hero{padding-top:56px;padding-bottom:24px}.hero-topline{margin-bottom:32px}
 .hero h1{font-size:var(--type-h1-size);line-height:var(--type-h1-line);letter-spacing:var(--type-h1-tracking)}
 .hero-discipline{display:none}.hero-bottom{gap:32px;margin-top:32px}
 .hero-bottom p{font-size:var(--type-body-size);line-height:var(--type-body-line);max-width:480px}
 .hero-bottom .text-link{font-size:var(--type-button-size);line-height:var(--type-button-line)}.hero-attribution{margin-top:48px;font-size:12px}
 .section{padding-top:56px;padding-bottom:56px}.works-section{padding-top:48px}
 .section-heading h2{font-size:var(--type-h2-size);line-height:var(--type-h2-line);letter-spacing:var(--type-h2-tracking)}
 .project-media{padding:16px}.project-caption{padding-top:16px;gap:16px}
 .project-caption h3{font-size:var(--type-subtitle-size);line-height:var(--type-subtitle-line);letter-spacing:var(--type-subtitle-tracking)}.project-subtitle{font-size:var(--type-body-size);line-height:var(--type-body-line)}
 .project-category{font-weight:500;font-size:var(--type-label-size);line-height:var(--type-label-line);letter-spacing:var(--type-label-tracking)}.tags span{font-family:var(--mono);font-weight:500;font-size:var(--type-label-size);line-height:var(--type-label-line);letter-spacing:var(--type-label-tracking)}
 .project-grid{gap:40px 24px}
 .service-row{grid-template-columns:40px 1fr;gap:8px 24px;padding:24px 0}
 .service-icon{grid-row:span 2}.service-row h3{font-size:var(--type-subtitle-size);line-height:var(--type-subtitle-line);padding-top:4px;letter-spacing:var(--type-subtitle-tracking)}
 .service-row p{font-size:var(--type-body-size);line-height:var(--type-body-line);grid-column:2;max-width:600px}
 .contacts-section{padding-top:48px;padding-bottom:48px}
 .contact-layout{flex-direction:column;align-items:flex-start;gap:32px}
 .contact-layout h2{font-size:var(--type-thesis-size);line-height:var(--type-thesis-line);letter-spacing:var(--type-thesis-tracking)}
 .contact-layout p{font-size:var(--type-body-size);line-height:var(--type-body-line)}
 .telegram-link{min-width:0;width:100%;max-width:400px;padding:16px 0}
 .case-heading{grid-template-columns:1fr;gap:32px;margin-top:32px}
 .case-heading h1{font-size:var(--type-h1-size);line-height:var(--type-h1-line);letter-spacing:var(--type-h1-tracking)}
 .case-summary{font-size:var(--type-body-size);line-height:var(--type-body-line)}.case-meta>p{font-size:var(--type-body-size);line-height:var(--type-body-line);margin:0}
 .case-meta>.tags{margin-top:8px}.case-showcase{padding:24px}
 .story-row{grid-template-columns:136px 1fr;gap:24px;padding:40px 0}
 .story-row p{font-size:var(--type-body-size);line-height:var(--type-body-line)}.story-row h2{font-size:var(--type-h2-size);line-height:var(--type-h2-line);letter-spacing:var(--type-h2-tracking)}
 .screen-preview{padding:24px}.demo-invitation{padding:32px;flex-direction:column;align-items:flex-start}
 .site-footer{flex-wrap:wrap;gap:24px;font-size:var(--type-label-size)}
}
@media(max-width:560px){
 :root{--site-gutter:20px;--type-h1-size:40px;--type-h1-line:45px;--type-h1-tracking:-1.4px;--type-thesis-size:40px;--type-thesis-line:45px;--type-thesis-tracking:-1.4px;--type-h2-size:32px;--type-h2-line:37px;--type-h2-tracking:-1px}
 html{scroll-padding-top:24px}
 .brand-logo{width:136px}.wordmark{min-width:0}
 .hero{padding-top:48px;padding-bottom:24px}.eyebrow{font-size:var(--type-label-size);line-height:var(--type-label-line);letter-spacing:var(--type-label-tracking)}
 .hero-topline{margin-bottom:24px}.hero h1{font-size:var(--type-h1-size);line-height:var(--type-h1-line);letter-spacing:var(--type-h1-tracking)}
 .hero-bottom{display:block;margin-top:24px}.hero-bottom p{font-size:var(--type-body-size);line-height:var(--type-body-line);max-width:none}
 .hero-bottom .text-link{font-size:var(--type-button-size);line-height:var(--type-button-line);margin-top:24px;min-height:var(--button-height)}.hero-bottom .text-link span{width:32px;height:32px}
 .hero-attribution{margin-top:32px;padding-top:16px;font-size:14px;gap:16px;align-items:flex-start}
 .hero-attribution a{font-size:var(--type-label-size);white-space:nowrap}.hero-attribution>span{max-width:190px}
 .section{padding-top:48px;padding-bottom:48px}.section-heading{margin-bottom:24px;gap:16px}
 .section-heading h2{font-size:var(--type-h2-size);line-height:var(--type-h2-line);letter-spacing:var(--type-h2-tracking)}
 .count{font-size:var(--type-label-size);line-height:var(--type-label-line);margin-left:8px;margin-top:4px;letter-spacing:var(--type-label-tracking)}.work-filters{gap:8px;margin-bottom:24px}
 .work-filters button,.screen-tabs button{font-size:var(--type-button-size);line-height:var(--type-button-line);min-height:var(--button-height);padding:12px 16px}
 .project-grid,.related-grid{grid-template-columns:1fr;gap:32px}
 .project-media{padding:16px;border-radius:4px}.project-caption h3{font-size:var(--type-subtitle-size);line-height:var(--type-subtitle-line);letter-spacing:var(--type-subtitle-tracking)}
 .project-category{font-weight:500;font-size:var(--type-label-size);line-height:var(--type-label-line);letter-spacing:var(--type-label-tracking)}.project-subtitle{font-size:var(--type-body-size);line-height:var(--type-body-line)}
 .tags span{font-family:var(--mono);font-weight:500;font-size:var(--type-label-size);line-height:var(--type-label-line);padding:4px 8px;letter-spacing:var(--type-label-tracking)}.project-arrow{margin-top:24px}
 .anonymity-note{font-size:var(--type-label-size);line-height:var(--type-label-line);justify-content:flex-start;text-align:left}
 .service-row{grid-template-columns:32px 1fr;gap:8px 16px}.service-icon{width:32px;height:32px}
 .service-row h3{font-size:var(--type-subtitle-size);line-height:var(--type-subtitle-line);padding-top:0;letter-spacing:var(--type-subtitle-tracking)}.service-row p{font-size:var(--type-body-size);line-height:var(--type-body-line)}
 .review-card{padding:24px}.contact-layout h2{font-size:var(--type-thesis-size);line-height:var(--type-thesis-line);letter-spacing:var(--type-thesis-tracking)}
 .contact-layout p{font-size:var(--type-body-size);line-height:var(--type-body-line);margin-top:16px}.telegram-link>span:first-child{font-size:18px}
 .telegram-link small{font-size:12px}.contact-arrow{width:40px;height:40px}.contact-arrow svg{width:28px;height:28px}
 .site-footer{padding-top:24px;padding-bottom:24px}.site-footer>span{order:2;flex-basis:100%}
 .site-footer>a:last-child{margin-left:auto}.footer-brand img{width:128px}
 .case-intro{padding-top:32px;padding-bottom:32px}.case-heading{margin-top:32px;gap:24px}
 .case-heading h1{font-size:var(--type-h1-size);line-height:var(--type-h1-line);letter-spacing:var(--type-h1-tracking)}
 .case-heading .eyebrow{font-size:var(--type-label-size);line-height:var(--type-label-line);margin-bottom:16px;letter-spacing:var(--type-label-tracking)}.case-summary{font-size:var(--type-body-size);line-height:var(--type-body-line)}
 .case-showcase{margin:0 var(--site-gutter) 24px;padding:16px;border-radius:4px}
 .story-row{display:block;padding:32px 0}.story-row>.eyebrow{font-size:var(--type-label-size);line-height:var(--type-label-line);margin-bottom:16px;letter-spacing:var(--type-label-tracking)}
 .story-row h2{font-size:var(--type-h2-size);line-height:var(--type-h2-line);margin-bottom:16px;letter-spacing:var(--type-h2-tracking)}.feature-list{grid-template-columns:1fr;gap:16px;margin-top:24px}
 .screen-preview{padding:16px}.screens-section .section-heading{flex-direction:column}
 .demo-invitation{padding:24px;margin:0 var(--site-gutter) 24px;border-radius:4px}
 .demo-invitation h2{font-size:var(--type-h2-size);line-height:var(--type-h2-line);letter-spacing:var(--type-h2-tracking)}.demo-invitation p{font-size:var(--type-body-size);line-height:var(--type-body-line)}
 .not-found h1{font-size:var(--type-h1-size);line-height:var(--type-h1-line);letter-spacing:var(--type-h1-tracking)}
}
@media(max-width:400px){:root{--type-h1-size:32px;--type-h1-line:36px;--type-h1-tracking:-1px;--type-thesis-size:36px;--type-thesis-line:41px;--type-thesis-tracking:-1.2px}.brand-logo{width:124px}.hero-attribution{flex-direction:column;gap:8px}.hero-attribution>span{max-width:none}}
/* Compact phone header with the identity and menu. */
@media(max-width:640px){
 .site-header{height:80px;gap:24px}
 .wordmark{min-width:0}
}
@media(prefers-reduced-motion:reduce){.page-transition-mark,.demo-loading-spinner{animation:none}.telegram-link .contact-arrow{transform:none}.project-link:hover .project-arrow{transform:none}}
