:root{
  --ch-blue:#1437d5;
  --ch-blue-dark:#0b258f;
  --ch-night:#081430;
  --ch-acid:#d6f45e;
  --ch-orange:#ff6a38;
  --ch-chalk:#f5f2e9;
  --ch-paper:#fffdf7;
  --ch-ink:#10182e;
  --ch-muted:#6f7481;
  --ch-line:#d9dcd8;
  --ch-white:#fff;
  --ch-max:1240px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:hidden}
body{margin:0;min-width:320px;overflow-x:hidden;background:var(--ch-paper);color:var(--ch-ink);font:16px/1.72 "PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,-apple-system,"Segoe UI",sans-serif}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
h1{overflow-wrap:anywhere;word-break:break-word}
.ch-frame{width:min(calc(100% - 48px),var(--ch-max));margin-inline:auto}
.ch-skip{position:fixed;left:16px;top:-70px;z-index:100;padding:10px 15px;background:var(--ch-acid);color:var(--ch-night);font-weight:800}
.ch-skip:focus{top:12px}
.ch-overline{margin:0 0 13px;color:var(--ch-blue);font-size:12px;font-weight:850;letter-spacing:.18em;line-height:1.5;text-transform:uppercase}
.ch-button,.ch-contact{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:11px 22px;border:1px solid transparent;font-size:15px;font-weight:800;line-height:1.3;transition:transform .2s,background .2s,color .2s}
.ch-button:hover,.ch-contact:hover{transform:translateY(-2px)}
.ch-button--acid{background:var(--ch-acid);color:var(--ch-night)}
.ch-button--line{border-color:rgba(255,255,255,.5);color:var(--ch-white)}
.ch-button--ink{background:var(--ch-night);color:var(--ch-white)}
.ch-contact{background:var(--ch-blue);color:#fff}
.ch-contact--small{min-height:44px;padding:8px 17px;white-space:nowrap}

/* Header */
.ch-header{position:sticky;top:0;z-index:40;background:rgba(255,253,247,.95);border-bottom:1px solid var(--ch-line);backdrop-filter:blur(14px)}
.ch-header__primary{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:30px;min-height:72px}
.ch-header__note{margin:0;color:#687084;font-size:13px;letter-spacing:.06em}
.ch-brand{display:inline-flex;align-items:center;gap:11px;min-width:0;min-height:44px;font-size:19px;font-weight:900;letter-spacing:.015em;color:var(--ch-night)}
.ch-brand img{flex:none;width:42px;height:42px}
.ch-brand span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ch-navline{background:var(--ch-night)}
.ch-nav{display:flex;justify-content:flex-start;align-items:center;gap:2px;min-width:0}
.ch-nav a{display:inline-flex;align-items:center;min-height:48px;padding:8px 16px;border-left:2px solid transparent;color:#c9d1e7;font-size:15px;font-weight:650}
.ch-nav a:hover{border-left-color:var(--ch-acid);background:#101e42;color:var(--ch-acid)}

/* Home hero */
.ch-hero{position:relative;background:var(--ch-blue);color:#fff;overflow:hidden}
.ch-hero::before{content:"";position:absolute;left:0;top:0;width:42%;height:100%;opacity:.16;background:repeating-linear-gradient(90deg,transparent 0 39px,#fff 40px 41px)}
.ch-hero__grid{position:relative;display:grid;grid-template-columns:minmax(0,.82fr) minmax(460px,1.18fr);align-items:center;gap:60px;min-height:660px;padding-block:72px 68px}
.ch-hero__copy{position:relative;z-index:2}
.ch-hero .ch-overline{color:var(--ch-acid)}
.ch-hero h1{max-width:680px;margin:0;font-size:clamp(45px,5.4vw,80px);line-height:1.03;letter-spacing:-.045em}
.ch-hero__lead{max-width:590px;margin:24px 0 0;color:#dbe3ff;font-size:18px;line-height:1.8}
.ch-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}
.ch-hero__visual{position:relative;margin:0;min-width:0;border:1px solid rgba(255,255,255,.35);background:#0a1b4b;box-shadow:28px 28px 0 rgba(6,15,47,.28)}
.ch-hero__visual::before{content:"";position:absolute;z-index:1;left:-18px;top:48px;width:36px;height:148px;background:var(--ch-acid)}
.ch-hero__visual img{width:100%;aspect-ratio:15/11;object-fit:cover}
.ch-hero__visual figcaption{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.24)}
.ch-hero__visual figcaption span{padding:15px 12px;border-right:1px solid rgba(255,255,255,.2);font-size:13px;text-align:center;color:#dce3ff}
.ch-hero__visual figcaption span:last-child{border-right:0}
.ch-spectrum{position:relative;border-top:1px solid rgba(255,255,255,.22);background:var(--ch-night)}
.ch-spectrum .ch-frame{display:grid;grid-template-columns:repeat(4,1fr)}
.ch-spectrum span{min-height:74px;display:flex;align-items:center;padding:15px 22px;border-left:1px solid rgba(255,255,255,.12);color:#bbc5e6;font-size:13px;font-weight:750;letter-spacing:.05em}
.ch-spectrum span:last-child{border-right:1px solid rgba(255,255,255,.12)}

/* Catalog cards */
.ch-catalog{padding:110px 0 120px;background:var(--ch-paper)}
.ch-heading{margin-bottom:46px}
.ch-heading--split{display:grid;grid-template-columns:1.25fr .75fr;align-items:end;gap:70px}
.ch-heading h2{max-width:770px;margin:0;font-size:clamp(32px,4.1vw,55px);line-height:1.15;letter-spacing:-.035em}
.ch-heading>p,.ch-heading>div>p+*+p{margin:0;color:var(--ch-muted)}
.ch-heading--split>p{max-width:440px;padding-bottom:6px;font-size:16px}
.ch-catalog__grid{display:grid;grid-template-columns:repeat(12,1fr);border-top:1px solid var(--ch-line);border-left:1px solid var(--ch-line)}
.ch-catalog__grid .content-card{position:relative;display:grid;grid-template-columns:100px 1fr;grid-template-rows:auto auto 1fr auto;grid-column:span 6;min-height:280px;padding:0 30px 28px;border-right:1px solid var(--ch-line);border-bottom:1px solid var(--ch-line);background:#fff;overflow:hidden}
.ch-catalog__grid .content-card:nth-child(3n){grid-column:span 5;background:var(--ch-chalk)}
.ch-catalog__grid .content-card:nth-child(4n){grid-column:span 7}
.ch-catalog__grid .content-card__media{grid-row:1/5;grid-column:1;width:76px;height:100%;min-height:220px;overflow:hidden}
.ch-catalog__grid .content-card__media img{width:100%;height:100%;object-fit:cover;filter:saturate(.86);transition:transform .45s}
.ch-catalog__grid .content-card:hover img{transform:scale(1.06)}
.ch-catalog__grid .content-card h2{grid-column:2;margin:28px 0 8px;font-size:24px;line-height:1.3}
.ch-catalog__grid .content-card h2 a{display:flex;align-items:center;min-height:44px}
.ch-catalog__grid .content-card time,.ch-catalog__grid .content-card .content-meta{grid-column:2;color:#8c90a0;font-size:13px}
.ch-catalog__grid .content-card p{grid-column:2;margin:12px 0 18px;color:var(--ch-muted);font-size:15px}
.ch-catalog__grid .content-link{grid-column:2;align-self:end;display:flex;align-items:center;min-height:44px;color:var(--ch-blue);font-size:15px;font-weight:800}

/* Application gallery */
.ch-lab{padding:110px 0;background:var(--ch-chalk)}
.ch-lab__head{display:grid;grid-template-columns:.8fr 1.2fr;align-items:end;gap:80px;margin-bottom:44px}
.ch-lab__head h2{margin:0;font-size:clamp(32px,4vw,54px);line-height:1.14;letter-spacing:-.03em}
.ch-lab__gallery{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:360px 320px;gap:14px}
.ch-sample{position:relative;overflow:hidden;background:#fff}
.ch-sample:nth-child(1){grid-column:1/8;grid-row:1}
.ch-sample:nth-child(2){grid-column:8/13;grid-row:1}
.ch-sample:nth-child(3){grid-column:1/6;grid-row:2}
.ch-sample:nth-child(4){grid-column:6/13;grid-row:2}
.ch-sample img{width:100%;height:100%;object-fit:cover;transition:transform .55s}
.ch-sample:hover img{transform:scale(1.025)}
.ch-sample>div{position:absolute;left:0;right:0;bottom:0;padding:26px;background:linear-gradient(transparent,rgba(8,20,48,.92));color:#fff}
.ch-sample b{color:var(--ch-acid);font-size:13px;letter-spacing:.12em}
.ch-sample h3{margin:5px 0 4px;font-size:24px;line-height:1.25}
.ch-sample p{margin:0;color:#dfe4f3;font-size:15px}

/* Method */
.ch-method{padding:120px 0;background:var(--ch-paper)}
.ch-method__grid{display:grid;grid-template-columns:.92fr 1.08fr;align-items:center;gap:90px}
.ch-method__figure{position:relative;padding:0 28px 28px 0}
.ch-method__figure::after{content:"";position:absolute;z-index:-1;inset:28px 0 0 28px;background:var(--ch-acid)}
.ch-method__figure img{width:100%;aspect-ratio:4/3;object-fit:cover;border:1px solid var(--ch-line)}
.ch-method__figure span{position:absolute;right:0;bottom:0;width:86px;height:86px;background:var(--ch-blue);clip-path:polygon(100% 0,100% 100%,0 100%)}
.ch-method__copy h2{margin:0 0 22px;font-size:clamp(32px,4vw,54px);line-height:1.13;letter-spacing:-.035em}
.ch-method__copy>p:not(.ch-overline){margin:0 0 15px;color:var(--ch-muted);font-size:16px}
.ch-method__intro{color:var(--ch-ink)!important;font-size:18px!important}
.ch-method__steps{list-style:none;padding:0;margin:33px 0 0;border-top:1px solid var(--ch-line)}
.ch-method__steps li{display:grid;grid-template-columns:54px 1fr;gap:18px;padding:18px 0;border-bottom:1px solid var(--ch-line)}
.ch-method__steps li>span{color:var(--ch-blue);font-size:13px;font-weight:850}
.ch-method__steps h3{margin:0 0 4px;font-size:17px}
.ch-method__steps p{margin:0;color:var(--ch-muted);font-size:15px}

/* Articles */
.ch-notes{padding:110px 0;background:var(--ch-night);color:#fff}
.ch-heading--inverse{display:grid;grid-template-columns:1.25fr .75fr;align-items:end;gap:70px}
.ch-heading--inverse .ch-overline{color:var(--ch-acid)}
.ch-heading--inverse>p{color:#9da8c8;font-size:16px}
.ch-notes__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.16);border-left:1px solid rgba(255,255,255,.16)}
.ch-notes__grid .content-card{display:flex;min-width:0;flex-direction:column;border-right:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16);padding:18px;background:#0b1839}
.ch-notes__grid .content-card:nth-child(1){grid-column:span 2}
.ch-notes__grid .content-card__media{aspect-ratio:16/9;overflow:hidden;margin:-18px -18px 20px}
.ch-notes__grid .content-card__media img{width:100%;height:100%;object-fit:cover}
.ch-notes__grid .content-card h2{margin:0 0 9px;font-size:20px;line-height:1.45}
.ch-notes__grid .content-card h2 a{display:flex;align-items:center;min-height:44px}
.ch-notes__grid .content-card time,.ch-notes__grid .content-meta{color:#8e98b8;font-size:13px}
.ch-notes__grid .content-card p{margin:12px 0;color:#b8c0d8;font-size:15px}
.ch-notes__grid .content-link{margin-top:auto;padding-top:18px;color:var(--ch-acid);font-size:15px;font-weight:800}
.ch-next{padding:70px 0;background:linear-gradient(var(--ch-night) 0 46%,var(--ch-paper) 46%)}
.ch-next__panel{display:grid;grid-template-columns:170px 1fr auto;align-items:center;gap:34px;padding:44px 48px;background:var(--ch-acid);box-shadow:0 24px 70px rgba(8,20,48,.16)}
.ch-next__panel .ch-overline{margin:0;color:var(--ch-night)}
.ch-next__panel h2{margin:0 0 7px;font-size:30px;line-height:1.25}
.ch-next__panel p{margin:0;color:#3d4820;font-size:15px}

/* Inner headers */
.breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:26px;color:#79819d;font-size:14px}
.breadcrumb a{display:inline-flex;align-items:center;min-width:44px;min-height:44px;color:var(--ch-blue)}
.ch-listhead{padding:68px 0 78px;background:var(--ch-chalk)}
.ch-listhead__grid{display:grid;grid-template-columns:170px 1fr;gap:58px;align-items:end}
.ch-listhead__code{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;height:150px}
.ch-listhead__code span{align-self:end;background:var(--ch-blue)}
.ch-listhead__code span:nth-child(1){height:42%}.ch-listhead__code span:nth-child(2){height:72%;background:var(--ch-orange)}.ch-listhead__code span:nth-child(3){height:100%;background:var(--ch-acid)}
.ch-listhead h1,.ch-pagehead h1,.ch-articlehead h1{max-width:920px;margin:0;font-size:clamp(38px,5vw,68px);line-height:1.08;letter-spacing:-.04em}
.ch-listhead__summary,.ch-pagehead__title>p:last-child,.ch-articlehead__row>div>p:last-child{max-width:700px;margin:20px 0 0;color:var(--ch-muted);font-size:17px}
.ch-listbody{padding:86px 0 110px}
.ch-listbody__grid{display:grid;grid-template-columns:230px minmax(0,1fr);gap:70px;align-items:start}
.ch-indexcard{position:sticky;top:110px;padding:28px;background:var(--ch-night);color:#fff}
.ch-indexcard>span{display:block;color:var(--ch-acid);font-size:12px;font-weight:850;letter-spacing:.18em}
.ch-indexcard p{margin:20px 0;color:#b6bfd9;font-size:15px}
.ch-indexcard a{display:inline-flex;min-height:44px;align-items:center;color:var(--ch-acid);font-size:15px;font-weight:800}
.ch-listintro{margin-bottom:52px;padding:32px;border-left:7px solid var(--ch-blue);background:var(--ch-chalk)}
.ch-listcards{display:grid;gap:1px;background:var(--ch-line)}
.ch-listcards .content-card{display:grid;grid-template-columns:240px minmax(0,1fr) auto;grid-template-rows:auto auto 1fr;gap:0 28px;min-width:0;padding:20px;background:#fff}
.ch-listcards .content-card__media{grid-row:1/4;width:240px;min-height:180px;overflow:hidden}
.ch-listcards .content-card__media img{width:100%;height:100%;object-fit:cover}
.ch-listcards .content-card h2{margin:10px 0 6px;font-size:23px;line-height:1.35}
.ch-listcards .content-card h2 a{display:flex;align-items:center;min-height:44px}
.ch-listcards .content-card time,.ch-listcards .content-meta{color:#8c90a0;font-size:13px}
.ch-listcards .content-card p{margin:13px 0;color:var(--ch-muted);font-size:15px}
.ch-listcards .content-link{grid-column:3;grid-row:1/4;display:flex;align-items:center;min-width:90px;justify-content:center;border-left:1px solid var(--ch-line);color:var(--ch-blue);font-size:15px;font-weight:800}
.pagination{margin-top:34px;padding-top:20px;border-top:1px solid var(--ch-line);color:var(--ch-muted);font-size:15px;text-align:right}

/* Article */
.ch-articlehead{padding:68px 0 76px;background:var(--ch-blue);color:#fff}
.ch-articlehead .breadcrumb{color:#c5ceef}.ch-articlehead .breadcrumb a{color:var(--ch-acid)}
.ch-articlehead__row{display:grid;grid-template-columns:1fr 170px;gap:50px;align-items:end}
.ch-articlehead .ch-overline{color:var(--ch-acid)}
.ch-articlehead__row>div>p:last-child{color:#d6def7}
.ch-articlehead__mark{width:150px;height:150px;border:28px solid var(--ch-acid);border-radius:50%;box-shadow:inset 0 0 0 12px var(--ch-blue),inset 0 0 0 22px #fff}
.ch-related{margin-top:26px;padding-top:23px;border-top:1px solid #c8c9c2}
.ch-related h2{margin:0 0 11px;color:var(--ch-blue);font-size:14px;letter-spacing:.08em;line-height:1.5}
.ch-related__track{display:grid;gap:1px;background:#c8c9c2}
.ch-related__track article{padding:10px 12px;background:#fff}
.ch-related__track h3{margin:0;font-size:15px;line-height:1.55}
.ch-related__track h3 a{display:flex;align-items:center;min-height:44px}
.ch-related__track a:hover{color:var(--ch-blue)}
.ch-articlebody{padding:86px 0 110px}
.ch-articlebody__grid{display:grid;grid-template-columns:250px minmax(0,850px);justify-content:center;gap:54px;align-items:start}
.ch-articlekey{position:sticky;top:110px;border-top:8px solid var(--ch-acid);padding:24px 20px;background:var(--ch-chalk)}
.ch-articlekey span{color:var(--ch-blue);font-size:12px;font-weight:850;letter-spacing:.14em}
.ch-articlekey p{margin:16px 0;color:var(--ch-muted);font-size:15px}
.ch-articlekey a{display:inline-flex;align-items:center;min-height:44px;color:var(--ch-blue);font-weight:800;font-size:15px}
.ch-article{min-width:0}
.ch-article__cover{margin:0 0 42px;border:1px solid var(--ch-line);padding:14px;background:var(--ch-chalk)}
.ch-article__cover img{width:100%;aspect-ratio:16/10;object-fit:cover}
.ch-prose{min-width:0;color:#293047;font-size:17px;line-height:1.88}
.ch-prose h2{margin:42px 0 15px;color:var(--ch-night);font-size:27px;line-height:1.4}
.ch-prose h3{margin:32px 0 12px;font-size:21px;line-height:1.45}
.ch-prose p{margin:0 0 19px}
.ch-prose ul,.ch-prose ol{margin:0 0 20px;padding-left:24px}
.ch-prose blockquote{margin:28px 0;padding:22px 25px;border-left:6px solid var(--ch-blue);background:var(--ch-chalk);color:#4f5668}
.ch-prose img,.ch-prose figure{max-width:100%;margin:30px 0}
.ch-prose table{display:block;width:100%;max-width:100%;overflow-x:auto;border-collapse:collapse;margin:28px 0;font-size:15px}
.ch-prose th,.ch-prose td{min-width:130px;padding:11px 13px;border:1px solid var(--ch-line);text-align:left}
.ch-prose th{background:var(--ch-chalk)}
.ch-article__nav{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;margin-top:54px;padding-top:28px;border-top:1px solid var(--ch-line)}
.ch-article__nav a,.ch-article__nav span{display:flex;align-items:center;min-height:48px;padding:9px 14px;border:1px solid var(--ch-line);font-size:15px}
.ch-article__nav .next{justify-content:flex-end}.ch-article__nav .is-disabled{color:#a6a9b0}.ch-article__nav a:hover{border-color:var(--ch-blue);color:var(--ch-blue)}

/* Single page */
.ch-pagehead{padding:68px 0 82px;background:var(--ch-chalk);border-bottom:1px solid var(--ch-line)}
.ch-pagehead__title{display:grid;grid-template-columns:210px 1fr;gap:40px;align-items:start}
.ch-pagehead__title .ch-overline{padding-top:12px}
.ch-pagehead__title h1{grid-column:2}
.ch-pagehead__title>p:last-child{grid-column:2}
.ch-single{padding:90px 0 120px}
.ch-single__grid{display:grid;grid-template-columns:minmax(360px,.9fr) minmax(0,1.1fr);gap:78px;align-items:start}
.ch-single__visual{position:sticky;top:112px;margin:0;padding:18px;background:var(--ch-blue)}
.ch-single__visual img{width:100%;aspect-ratio:4/3;object-fit:cover}
.ch-single__visual figcaption{padding:18px 4px 2px;color:#dce3ff;font-size:15px}
.ch-single__content{min-width:0}
.ch-single__contact{margin-top:56px;padding:36px;background:var(--ch-acid)}
.ch-single__contact .ch-overline{color:var(--ch-night)}
.ch-single__contact h2{margin:0 0 10px;font-size:30px;line-height:1.3}
.ch-single__contact>p:not(.ch-overline){margin:0 0 24px;color:#465023;font-size:15px}

/* Footer */
.ch-footer{padding:70px 0 26px;background:#050d20;color:#aab3cf}
.ch-footer__top{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(0,1.15fr);gap:70px;align-items:start;padding-bottom:44px}
.ch-footer .ch-brand{color:#fff}
.ch-footer__brand p{max-width:430px;margin:20px 0 0;font-size:15px}
.ch-footer strong{display:block;margin-bottom:15px;color:#fff;font-size:13px;letter-spacing:.12em}
.ch-footer p{margin:0 0 8px;font-size:15px}
.ch-footer__nav{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:flex-start;gap:4px 20px}
.ch-footer__nav a{display:flex;align-items:center;min-width:44px;min-height:44px;font-size:15px}
.ch-footer__nav a:hover{color:var(--ch-acid)}
.ch-footer__info{display:grid;grid-template-columns:1fr 1fr 1fr;gap:45px;padding-top:28px;border-top:1px solid rgba(255,255,255,.12)}
.ch-footer__bottom{display:flex;align-items:flex-end;justify-content:flex-end;flex-direction:column;gap:7px;font-size:13px;text-align:right}

@media (max-width:980px){
  .ch-frame{width:min(calc(100% - 36px),var(--ch-max))}
  .ch-header__primary{grid-template-columns:minmax(0,1fr) auto;gap:14px;padding-block:10px}
  .ch-header__note{display:none}
  .ch-nav{justify-content:flex-start;flex-wrap:wrap}
  .ch-hero__grid{grid-template-columns:1fr;gap:46px;padding-top:64px}
  .ch-hero__copy{max-width:760px}
  .ch-hero__visual{max-width:760px;margin-left:auto}
  .ch-heading--split,.ch-heading--inverse{grid-template-columns:1fr;gap:20px}
  .ch-catalog__grid .content-card,.ch-catalog__grid .content-card:nth-child(3n),.ch-catalog__grid .content-card:nth-child(4n){grid-column:span 6}
  .ch-lab__head{grid-template-columns:1fr;gap:10px}
  .ch-lab__gallery{grid-template-rows:330px 290px}
  .ch-method__grid{grid-template-columns:1fr;gap:62px}.ch-method__figure{max-width:700px}
  .ch-notes__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ch-notes__grid .content-card:nth-child(1){grid-column:span 1}
  .ch-next__panel{grid-template-columns:1fr auto}.ch-next__panel>.ch-overline{grid-column:1/-1}
  .ch-listbody__grid{grid-template-columns:minmax(0,1fr);gap:34px}.ch-indexcard{position:static;display:grid;grid-template-columns:100px 1fr auto;align-items:center;gap:18px}.ch-indexcard p{margin:0}
  .ch-articlebody__grid{grid-template-columns:1fr}.ch-articlekey{position:static;display:grid;grid-template-columns:130px 1fr auto;align-items:center;gap:18px}.ch-articlekey p{margin:0}.ch-related{grid-column:1/-1}
  .ch-single__grid{grid-template-columns:1fr;gap:55px}.ch-single__visual{position:static;max-width:720px}
  .ch-footer__top{grid-template-columns:1fr;gap:28px}.ch-footer__nav{justify-content:flex-start}.ch-footer__info{grid-template-columns:1fr 1fr}.ch-footer__bottom{grid-column:1/-1;align-items:flex-start;text-align:left}
}

@media (max-width:640px){
  body{font-size:15px}
  .ch-frame{width:min(calc(100% - 28px),var(--ch-max))}
  .ch-header__primary{gap:8px}
  .ch-brand{font-size:16px}.ch-brand img{width:38px;height:38px}
  .ch-contact--small{padding-inline:12px;font-size:13px}
  .ch-nav{margin-inline:auto;gap:0}
  .ch-nav a{min-height:44px;padding:7px 10px;font-size:13px}
  .ch-hero__grid{padding-block:54px 44px;gap:38px}
  .ch-hero h1{font-size:clamp(38px,13vw,55px)}
  .ch-hero__lead{font-size:16px}
  .ch-actions{display:grid;grid-template-columns:1fr 1fr}.ch-actions .ch-button{padding-inline:10px;text-align:center}
  .ch-hero__visual{box-shadow:12px 12px 0 rgba(6,15,47,.28)}.ch-hero__visual::before{display:none}
  .ch-hero__visual figcaption span{padding:12px 5px;font-size:11px}
  .ch-spectrum .ch-frame{grid-template-columns:1fr 1fr}.ch-spectrum span{min-height:56px;padding:10px 8px;font-size:11px;border-bottom:1px solid rgba(255,255,255,.12)}
  .ch-catalog,.ch-lab,.ch-notes{padding:76px 0}.ch-method{padding:82px 0}
  .ch-heading h2,.ch-lab__head h2,.ch-method__copy h2{font-size:clamp(30px,10vw,42px)}
  .ch-heading{margin-bottom:32px}
  .ch-catalog__grid{grid-template-columns:1fr}.ch-catalog__grid .content-card,.ch-catalog__grid .content-card:nth-child(3n),.ch-catalog__grid .content-card:nth-child(4n){grid-column:auto;grid-template-columns:74px 1fr;padding:0 18px 20px;min-height:230px}
  .ch-catalog__grid .content-card__media{width:58px;min-height:190px}.ch-catalog__grid .content-card h2{margin-top:20px;font-size:20px}
  .ch-lab__gallery{display:grid;grid-template-columns:1fr;grid-template-rows:none}.ch-sample,.ch-sample:nth-child(n){grid-column:auto;grid-row:auto;min-height:330px}.ch-sample>div{padding:21px}
  .ch-method__figure{padding:0 14px 14px 0}.ch-method__figure::after{inset:14px 0 0 14px}.ch-method__figure span{width:55px;height:55px}
  .ch-notes__grid{grid-template-columns:1fr}.ch-notes__grid .content-card:nth-child(1){grid-column:auto}
  .ch-next{padding:55px 0}.ch-next__panel{grid-template-columns:1fr;padding:34px 25px}.ch-next__panel>.ch-overline{grid-column:auto}.ch-next__panel .ch-button{justify-self:start}
  .ch-listhead,.ch-articlehead,.ch-pagehead{padding:46px 0 58px}
  .ch-listhead__grid{grid-template-columns:1fr;gap:25px}.ch-listhead__code{width:120px;height:70px}
  .ch-listhead h1,.ch-pagehead h1,.ch-articlehead h1{font-size:clamp(36px,11vw,48px)}
  .ch-listbody,.ch-articlebody,.ch-single{padding:56px 0 78px}
  .ch-indexcard,.ch-articlekey{display:block;padding:24px}.ch-indexcard p,.ch-articlekey p{margin:14px 0}
  .ch-listintro{padding:24px 20px}
  .ch-listcards .content-card{grid-template-columns:112px minmax(0,1fr);grid-template-rows:auto auto 1fr auto;gap:0 14px;padding:12px}.ch-listcards .content-card__media{width:112px;min-height:175px;grid-row:1/5}.ch-listcards .content-card h2{margin:5px 0;font-size:18px}.ch-listcards .content-card p{display:none}.ch-listcards .content-link{grid-column:2;grid-row:4;min-width:0;justify-content:flex-start;border:0;min-height:44px}
  .ch-articlehead__row{grid-template-columns:1fr}.ch-articlehead__mark{display:none}
  .ch-related__track{grid-template-columns:1fr}
  .ch-article__cover{padding:8px;margin-bottom:30px}.ch-prose{font-size:16px}.ch-prose h2{font-size:23px}.ch-prose h3{font-size:19px}
  .ch-article__nav{grid-template-columns:1fr 1fr}.ch-article__nav>*:nth-child(2){grid-column:1/-1;grid-row:2;justify-content:center}
  .ch-pagehead__title{grid-template-columns:1fr;gap:8px}.ch-pagehead__title h1,.ch-pagehead__title>p:last-child{grid-column:1}
  .ch-single__contact{padding:28px 22px}.ch-single__contact h2{font-size:25px}
  .ch-footer{padding-top:54px}.ch-footer__top,.ch-footer__info{grid-template-columns:1fr;gap:28px}.ch-footer__top>*,.ch-footer__info>*{min-width:0;max-width:100%}.ch-footer__brand .ch-brand{display:flex;width:100%;max-width:100%;overflow:hidden}.ch-footer__bottom{grid-column:auto;align-items:flex-start;text-align:left}
}
