/* =====================================================================
   CONCEPT 05 — "MONOLITH"
   Brutalist / neo-brutalist · black + paper + signal red
   Archivo Black / Space Grotesk / Space Mono
   ===================================================================== */

:root {
  --ink:   #0a0a0a;
  --paper: #f2f1ec;
  --grey:  #e2e0d8;
  --white: #ffffff;
  --hot:   #ff3b00;
  --hot-d: #d62f00;
  --dim:   #8a8880;

  --f-disp: 'Archivo Black', 'Space Grotesk', system-ui, sans-serif;
  --f-body: 'Space Grotesk', system-ui, sans-serif;
  --f-mono: 'Space Mono', ui-monospace, monospace;

  --pad: clamp(4rem, 7vw, 6.5rem);
  --bd: 2px;
}

body {
  background: var(--paper);
  color: var(--ink);
  font: 400 16px/1.65 var(--f-body);
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
::selection { background: var(--hot); color: #fff; }

.mono { font: 400 .7rem/1.4 var(--f-mono); letter-spacing: .06em; text-transform: uppercase; }

/* ----------------------------------------------------------------- topbar */
.topbar {
  position: fixed; inset: 0 0 auto; z-index: 91;
  display: flex; align-items: center; justify-content: space-between; gap: 1rem;
  height: 28px; padding: 0 1.1rem; background: var(--hot); color: #fff;
  font-size: .66rem; letter-spacing: .1em; text-transform: uppercase;
  white-space: nowrap; overflow: hidden;
}
.topbar__l { overflow: hidden; text-overflow: ellipsis; }
.topbar__r { color: #fff; text-decoration: none; border-bottom: 1px solid rgba(255,255,255,.6); flex: none; }
.topbar__r:hover { border-color: #fff; }

/* ----------------------------------------------------------------- header */
.hd { position: fixed; inset: 28px 0 auto; z-index: 90; background: var(--paper); border-bottom: var(--bd) solid var(--ink); transition: transform .35s cubic-bezier(.7,0,.2,1); }
.hd__in { display: flex; align-items: stretch; gap: 1.2rem; height: 66px; }
.hd__logo { flex: none; display: flex; align-items: center; }
.hd__logo img { height: 28px; width: auto; }
.hd__nav { display: flex; margin-left: auto; }
.hd__nav a {
  display: flex; align-items: center; padding: 0 1.1rem; color: var(--ink); text-decoration: none;
  border-left: var(--bd) solid var(--ink);
  font: 500 .78rem/1 var(--f-mono); letter-spacing: .06em; text-transform: uppercase;
  transition: background .2s, color .2s;
}
.hd__nav a:last-child { border-right: var(--bd) solid var(--ink); }
.hd__nav a:hover { background: var(--ink); color: var(--paper); }

.hd__act { display: flex; align-items: stretch; flex: none; }
.sq {
  display: inline-flex; align-items: center; justify-content: center; gap: .4rem;
  border: var(--bd) solid var(--ink); border-right: 0; background: var(--white); color: var(--ink);
  text-decoration: none; cursor: pointer; padding: 0 1.1rem;
  font: 500 .74rem/1 var(--f-mono); letter-spacing: .06em; text-transform: uppercase;
  transition: background .2s, color .2s;
}
.sq:hover { background: var(--ink); color: var(--paper); }
.sq--hot { background: var(--hot); color: #fff; border-color: var(--hot); }
.sq--hot:hover { background: var(--hot-d); }
.sq--dark { background: var(--ink); color: var(--paper); }
.sq--dark:hover { background: var(--hot); border-color: var(--hot); color: #fff; }
.sq--lg { padding: 1.15rem 1.6rem; font-size: .82rem; }
.sq--full { width: 100%; padding-block: 1.15rem; border-right: var(--bd) solid var(--ink); }
.sq--full:hover { border-color: var(--hot); }
.sq .lang__on, .sq .lang__off { padding: .1rem .3rem; }
html[data-lang="pl"] .lang__off, html[data-lang="en"] .lang__on { opacity: .3; }
html[data-lang="pl"] .lang__on, html[data-lang="en"] .lang__off { background: var(--hot); color: #fff; }

.burger { display: none; width: 46px; border-left: var(--bd) solid var(--ink); padding: 0 12px; }
.burger span { display: block; height: 2px; background: var(--ink); margin: 4px 0; }
html.nav-open .burger span:first-child { transform: translateY(3px) rotate(10deg); }
html.nav-open .burger span:last-child { transform: translateY(-3px) rotate(-10deg); }

/* ------------------------------------------------------------- mobile nav */
.mnav {
  position: fixed; inset: 0; z-index: 200; background: var(--ink); color: var(--paper);
  display: flex; flex-direction: column; justify-content: center;
  padding: 5rem 1.4rem 2rem; clip-path: inset(0 0 100% 0);
  transition: clip-path .5s cubic-bezier(.7,0,.2,1); visibility: hidden;
}
.mnav.is-open { clip-path: inset(0 0 0 0); visibility: visible; }
.mnav__x { position: absolute; top: 1.1rem; right: 1.3rem; font-size: 2.2rem; color: var(--paper); }
.mnav__nav { display: flex; flex-direction: column; }
.mnav__nav a {
  display: flex; gap: 1rem; align-items: baseline; text-decoration: none; color: var(--paper);
  padding: .8rem 0; border-bottom: 1px solid rgba(255,255,255,.2);
  font: 400 clamp(1.6rem, 7vw, 2.6rem)/1.05 var(--f-disp); text-transform: uppercase; letter-spacing: -.02em;
}
.mnav__nav em { font: 400 .7rem/1 var(--f-mono); color: var(--hot); font-style: normal; }

/* ------------------------------------------------------------------- hero */
.hero { padding: calc(28px + 66px + 3rem) 0 0; }
.hero__grid { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); border-bottom: var(--bd) solid var(--ink); }
.hero__l { padding: clamp(2rem, 4vw, 3.5rem) clamp(1.2rem, 3vw, 2.4rem); display: flex; flex-direction: column; justify-content: space-between; }
.hero__k { margin: 0 0 1.3rem; }
.hero__t { margin: 0 0 1.8rem; font: 400 clamp(2.4rem, 6.4vw, 5.4rem)/.92 var(--f-disp); letter-spacing: -.035em; text-transform: uppercase; }
.hero__t > span { display: block; }
.hero__t2 { color: var(--hot); }
.hero__row { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: 1.5rem; align-items: end; margin-top: auto; }
.hero__lead { margin: 0; font-size: .98rem; max-width: 44ch; }
.hero__cta { display: flex; flex-wrap: wrap; gap: .6rem; }
.hero__cta .sq { border-right: var(--bd) solid var(--ink); }

.hero__r { border-left: var(--bd) solid var(--ink); display: flex; flex-direction: column; }
.hero__img { position: relative; flex: 1; min-height: 340px; background: var(--grey); overflow: hidden; }
.hero__slide { position: absolute; inset: 0; background-size: cover; background-position: center; opacity: 0; transition: opacity .8s; }
.hero__slide.is-active { opacity: 1; }
.hero__stamp {
  position: absolute; left: 0; top: 0; padding: .6rem .9rem;
  background: var(--hot); color: #fff; font-size: .9rem; letter-spacing: .3em;
}
.hero__dots { list-style: none; margin: 0; padding: 0; display: flex; border-top: var(--bd) solid var(--ink); }
.hero__dots li { flex: 1; border-right: var(--bd) solid var(--ink); }
.hero__dots li:last-child { border-right: 0; }
.hero__dots button { width: 100%; padding: .7rem 0; background: var(--white); font: 400 .7rem/1 var(--f-mono); color: var(--ink); transition: background .2s, color .2s; }
.hero__dots button.is-active { background: var(--ink); color: var(--paper); }

.hero__facts { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); border-bottom: var(--bd) solid var(--ink); }
.hero__facts li { padding: 1rem clamp(1.2rem, 3vw, 2.4rem); border-right: var(--bd) solid var(--ink); }
.hero__facts li:last-child { border-right: 0; }
.hero__facts b { font: 700 .8rem/1.4 var(--f-mono); letter-spacing: .04em; }

/* ----------------------------------------------------------------- marquee */
.mq { background: var(--ink); color: var(--paper); padding: .9rem 0; overflow: hidden; white-space: nowrap; border-bottom: var(--bd) solid var(--ink); }
.mq span { font: 400 1.1rem/1 var(--f-disp); text-transform: uppercase; letter-spacing: -.01em; padding: 0 1.2rem; }
.mq i { font-style: normal; color: var(--hot); font-size: .7rem; }

/* --------------------------------------------------------------- section */
.sec { padding: var(--pad) 0; }
.sec--hot { background: var(--hot); color: #fff; }
.sec--grey { background: var(--grey); }
.sec--dark { background: var(--ink); color: var(--paper); }

.bhead { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: clamp(1rem, 2.5vw, 2rem); align-items: start; padding-bottom: 1.3rem; margin-bottom: clamp(1.8rem, 3.5vw, 2.8rem); border-bottom: var(--bd) solid var(--ink); }
.sec--hot .bhead, .sec--dark .bhead { border-bottom-color: currentColor; }
.bhead--inv .bhead__n { background: var(--paper); color: var(--ink); border-color: var(--paper); }
.bhead__n {
  display: grid; place-items: center; width: 52px; height: 52px; flex: none;
  background: var(--ink); color: var(--paper); border: var(--bd) solid var(--ink);
  font: 700 1rem/1 var(--f-mono);
}
.bhead__k { margin: 0 0 .5rem; }
.sec--hot .bhead__k { color: #fff; }
.bhead__t { margin: 0; max-width: 22ch; font: 400 clamp(1.8rem, 4.2vw, 3.4rem)/.98 var(--f-disp); text-transform: uppercase; letter-spacing: -.03em; }
.bhead__l { margin: .9rem 0 0; max-width: 54ch; }

/* ----------------------------------------------------------------- about */
.ab { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(1.5rem, 3.5vw, 3rem); align-items: start; }
.ab__l p { margin: 0 0 1.1rem; }
.ab__big { font-size: 1.1rem; }
.ab__hl {
  border: var(--bd) solid var(--ink); background: var(--hot); color: #fff;
  padding: 1.1rem 1.2rem; font-weight: 500;
}
.brk { margin: 0 0 1.4rem; border: var(--bd) solid var(--ink); background: var(--white); }
.brk img { width: 100%; aspect-ratio: 4/3; object-fit: cover; }
.brk figcaption { padding: .6rem .8rem; border-top: var(--bd) solid var(--ink); color: var(--dim); }
.ab__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0; border: var(--bd) solid var(--ink); background: var(--ink); }
.ab__grid article { background: var(--white); border-bottom: var(--bd) solid var(--ink); border-right: var(--bd) solid var(--ink); padding: 1.1rem 1.1rem 1.2rem; }
.ab__grid article:nth-child(2n) { border-right: 0; }
.ab__grid article:nth-child(n+3) { border-bottom: 0; }
.ab__grid .mono { display: block; margin-bottom: .7rem; color: var(--hot); }
.ab__grid h3 { margin: 0 0 .4rem; font: 400 1.02rem/1.2 var(--f-body); letter-spacing: -.01em; }
.ab__grid p { margin: 0; font-size: .83rem; color: var(--dim); }

/* ------------------------------------------------------------ industries */
.ind { list-style: none; margin: 0; padding: 0; border: var(--bd) solid #fff; display: grid; grid-template-columns: 1fr 1fr; background: #fff; }
.ind li { position: relative; padding: 1.6rem 1.5rem; border-right: var(--bd) solid var(--ink); border-bottom: var(--bd) solid var(--ink); background: var(--hot); color: #fff; transition: background .2s, color .2s; }
.ind li:nth-child(2n) { border-right: 0; }
.ind li:nth-child(n+3) { border-bottom: 0; }
.ind li:hover { background: var(--ink); }
.ind__n { display: block; margin-bottom: 1.1rem; }
.ind h3 { margin: 0 0 .4rem; font: 400 clamp(1.3rem, 2.4vw, 1.9rem)/1.05 var(--f-disp); text-transform: uppercase; letter-spacing: -.02em; }
.ind p { margin: 0; font-size: .86rem; opacity: .85; max-width: 46ch; }
.ind__ar { position: absolute; right: 1.2rem; top: 1.2rem; font-size: 1.4rem; transition: transform .25s; }
.ind li:hover .ind__ar { transform: translate(4px, -4px); }

/* -------------------------------------------------------------- services */
.sv { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(1rem, 2.5vw, 1.6rem); }
.sv__b { border: var(--bd) solid var(--ink); background: var(--white); }
.sv__b header { display: flex; align-items: center; gap: .8rem; padding: 1rem 1.1rem; background: var(--ink); color: var(--paper); }
.sv__b header .mono { color: var(--hot); }
.sv__b h3 { margin: 0; font: 400 1.1rem/1 var(--f-disp); text-transform: uppercase; letter-spacing: -.01em; }
.sv__b ul { list-style: none; margin: 0; padding: 0; }
.sv__b li { padding: .7rem 1.1rem; border-bottom: 1px solid rgba(10,10,10,.14); font-size: .87rem; line-height: 1.5; counter-increment: none; }
.sv__b li::before { content: '▸ '; color: var(--hot); }
.sv__b footer { padding: 1.1rem; background: var(--grey); }
.sv__b footer h4 { margin: 0 0 .5rem; }
.sv__b footer p { margin: 0; font-size: .8rem; line-height: 1.55; color: #5d5b54; }

/* ----------------------------------------------------------------- numbers */
.big { background: var(--hot); color: #fff; padding: var(--pad) 0; }
.big__k { margin: 0 0 1rem; color: #fff; }
.big__t { margin: 0 0 clamp(2rem, 4vw, 3rem); max-width: 20ch; font: 400 clamp(1.9rem, 4.6vw, 3.8rem)/.98 var(--f-disp); text-transform: uppercase; letter-spacing: -.03em; }
.big__l { list-style: none; margin: 0 0 2.4rem; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); border: var(--bd) solid #fff; }
.big__l li { padding: 1.4rem 1.2rem; border-right: var(--bd) solid #fff; }
.big__l li:last-child { border-right: 0; }
.big__l b { display: block; font: 400 clamp(2rem, 4.4vw, 3.6rem)/1 var(--f-disp); letter-spacing: -.04em; }
.big__l span { display: block; margin-top: .5rem; font: 400 .7rem/1.4 var(--f-mono); letter-spacing: .06em; text-transform: uppercase; opacity: .9; }
.why { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 0 1.6rem; }
.why li { padding: .8rem 0; border-top: 1px solid rgba(255,255,255,.5); font-size: .92rem; }
.why li span { position: relative; padding-left: 1.1rem; display: block; }
.why li span::before { content: '■'; position: absolute; left: 0; font-size: .5rem; top: .45em; }

/* --------------------------------------------------------------- clients */
.cl { padding: clamp(2.2rem, 4vw, 3.2rem) 0; border-bottom: var(--bd) solid var(--ink); background: var(--white); }
.cl__k { margin: 0 0 1.2rem; color: var(--dim); }
.cl__l { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 1rem 2.4rem; }
.cl__l li { display: grid; place-items: center; height: 26px; }
.cl__l img { max-height: 100%; width: auto; opacity: .45; filter: grayscale(1); transition: opacity .25s, filter .25s; }
.cl__l li:hover img { opacity: 1; filter: grayscale(0); }

/* ------------------------------------------------------------ capabilities */
.cap { border: var(--bd) solid var(--paper); }
.cap__h, .cap__r { display: grid; grid-template-columns: 3.4rem minmax(0, 1fr) minmax(0, 1fr); gap: 1.2rem; align-items: baseline; }
.cap__h { padding: .8rem 1.1rem; background: var(--paper); color: var(--ink); }
.cap__r { position: relative; padding: 1rem 1.1rem 1.3rem; border-top: 1px solid rgba(255,255,255,.18); }
.cap__n { color: var(--hot); }
.cap__a { font-weight: 500; font-size: .95rem; }
.cap__b { font: 400 .84rem/1.5 var(--f-mono); color: #b8b5ac; }
.cap__bar { position: absolute; left: 1.1rem; right: 1.1rem; bottom: .6rem; height: 3px; background: rgba(255,255,255,.15); }
.cap__bar b { display: block; height: 100%; width: var(--v, 0); background: var(--hot); transition: width 1.2s cubic-bezier(.2,.8,.2,1); }

/* --------------------------------------------------------------- gallery */
.gal { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; border: var(--bd) solid var(--ink); background: var(--ink); }
.gal__i { position: relative; display: block; overflow: hidden; border-right: var(--bd) solid var(--ink); border-bottom: var(--bd) solid var(--ink); background: var(--grey); }
.gal__i--a { grid-column: span 2; grid-row: span 2; }
.gal__i img { width: 100%; height: 100%; min-height: 200px; object-fit: cover; transition: transform .8s cubic-bezier(.2,.7,.3,1), filter .35s; filter: grayscale(.2); }
.gal__i:hover img { transform: scale(1.06); filter: grayscale(0); }
.gal__i span { position: absolute; left: 0; top: 0; padding: .35rem .55rem; background: var(--ink); color: var(--paper); }

/* ------------------------------------------------------------------ certs */
.cr { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: clamp(1.5rem, 3.5vw, 3rem); align-items: center; }
.cr .sq { margin-top: 1.6rem; }
.cr__sc { list-style: none; margin: 1.4rem 0 0; padding: 0; border: var(--bd) solid var(--ink); background: var(--ink); display: grid; gap: var(--bd); }
.cr__sc li { background: var(--white); padding: .9rem 1rem; display: grid; grid-template-columns: 2.4rem minmax(0, 1fr); gap: .15rem .9rem; }
.cr__sc .mono { color: var(--hot); }
.cr__sc b { font: 400 1rem/1.25 var(--f-body); }
.cr__sc em { grid-column: 2; font-style: normal; font-size: .82rem; line-height: 1.5; color: #5d5b54; }
.cr__d2 { margin: 0 0 1.2rem; color: var(--hot); }
.cr__l { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); border: var(--bd) solid var(--ink); background: var(--ink); gap: var(--bd); }
.cr__l li { background: var(--white); }
.cr__l a { display: block; padding: .8rem; text-decoration: none; }
.cr__l .mono { display: block; margin-bottom: .5rem; color: var(--hot); }
.cr__l img { width: 100%; aspect-ratio: 3/4; object-fit: contain; }

/* ---------------------------------------------------------------- contact */
.con { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); gap: clamp(1.5rem, 3.5vw, 3rem); align-items: start; }
.ff { border: var(--bd) solid var(--ink); background: var(--white); padding: clamp(1.3rem, 3vw, 2.2rem); }
.ff h3 { margin: 0 0 1.4rem; font: 400 1.5rem/1 var(--f-disp); text-transform: uppercase; letter-spacing: -.01em; }
.ff__two { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.fld { display: block; margin-bottom: 1rem; }
.fld > span { display: block; margin-bottom: .4rem; color: var(--dim); }
.fld input, .fld select, .fld textarea {
  width: 100%; background: var(--paper); color: var(--ink);
  border: var(--bd) solid var(--ink); border-radius: 0; padding: .75rem .85rem;
  font-size: .9rem; transition: background .2s, box-shadow .2s;
}
.fld textarea { resize: vertical; min-height: 130px; }
.fld input:focus, .fld select:focus, .fld textarea:focus { outline: none; background: #fff; box-shadow: 4px 4px 0 var(--hot); }
.fld input::placeholder, .fld textarea::placeholder { color: #a3a099; }
.fld input.is-error, .fld textarea.is-error { border-color: #cc2b2b; }
.chk { display: flex; gap: .6rem; align-items: flex-start; margin: 0 0 1.2rem; cursor: pointer; }
.chk input { margin-top: 3px; accent-color: var(--hot); flex: none; width: 15px; height: 15px; }
.chk span { font-size: .78rem; line-height: 1.5; color: #5d5b54; }

.brk--dark { padding: clamp(1.2rem, 2.5vw, 1.8rem); background: var(--ink); color: var(--paper); border-color: var(--ink); margin-bottom: 1rem; }
.brk--dark h3 { margin: 0 0 .4rem; font: 400 1.4rem/1.1 var(--f-disp); text-transform: uppercase; }
.brk--dark dl { margin: 1.2rem 0 0; }
.brk--dark dl > div { padding: .7rem 0; border-top: 1px solid rgba(255,255,255,.18); }
.brk--dark dt { color: var(--dim); }
.brk--dark dd { margin: .3rem 0 0; font-size: 1rem; }
.brk--dark dd a { color: var(--paper); text-decoration: none; }
.brk--dark dd a:hover { color: var(--hot); }
.brk--dark address { font-style: normal; font-size: .92rem; }
.con__map { position: relative; display: block; border: var(--bd) solid var(--ink); overflow: hidden; }
.con__map img { width: 100%; aspect-ratio: 16/9; object-fit: cover; filter: grayscale(.5); transition: filter .4s; }
.con__map:hover img { filter: none; }
.con__map span { position: absolute; left: 0; bottom: 0; padding: .5rem .8rem; background: var(--hot); color: #fff; }

/* ----------------------------------------------------------------- footer */
.ft { background: var(--ink); color: #9d9b94; padding: clamp(2.5rem, 5vw, 4rem) 0 1.4rem; }
.ft__top { display: grid; grid-template-columns: 1.6fr 1fr 1fr 1.2fr; gap: clamp(1.2rem, 3.5vw, 2.6rem); padding-bottom: 2.2rem; border-bottom: 1px solid rgba(255,255,255,.16); }
.ft__b img { height: 30px; width: auto; margin-bottom: 1rem; }
.ft__b p { margin: 0 0 1.2rem; font-size: .85rem; max-width: 32ch; }
.ft__b .sq { border-right: var(--bd) solid var(--paper); color: var(--paper); background: transparent; }
.ft__b .sq:hover { background: var(--paper); color: var(--ink); }
.ft__c { display: flex; flex-direction: column; gap: .5rem; align-items: flex-start; }
.ft__c h3 { margin: 0 0 .4rem; color: #fff; }
.ft__c a { color: #9d9b94; text-decoration: none; font-size: .87rem; transition: color .2s; }
.ft__c a:hover { color: var(--hot); }
.ft__c address { font-style: normal; font-size: .86rem; }
.ft__bot { display: flex; flex-wrap: wrap; gap: .5rem 1.8rem; padding-top: 1.2rem; color: #6c6a64; }

.totop {
  position: fixed; right: 0; bottom: 0; z-index: 80;
  width: 48px; height: 48px; display: grid; place-items: center;
  background: var(--hot); color: #fff; border: var(--bd) solid var(--ink); border-right: 0; border-bottom: 0;
  opacity: 0; pointer-events: none; transition: opacity .3s, background .2s;
}
body:has(.ft) .totop { opacity: 1; pointer-events: auto; }
.totop:hover { background: var(--hot-d); }

/* ------------------------------------------------------------ responsive */
@media (max-width: 1080px) {
  .hero__grid { grid-template-columns: minmax(0, 1fr); }
  .hero__r { border-left: 0; border-top: var(--bd) solid var(--ink); }
  .ab, .cr, .con { grid-template-columns: minmax(0, 1fr); }
  .sv { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sv__b:last-child { grid-column: span 2; }
  .big__l { grid-template-columns: repeat(2, 1fr); }
  .big__l li { border-bottom: var(--bd) solid #fff; }
  .big__l li:nth-child(2n) { border-right: 0; }
  .big__l li:nth-child(n+3) { border-bottom: 0; }
  .why { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 900px) {
  .hd__nav, .hd__act .sq--hot { display: none; }
  .burger { display: block; }
  .hero__row { grid-template-columns: minmax(0, 1fr); }
  .gal { grid-template-columns: repeat(2, 1fr); }
  .gal__i { border-bottom: var(--bd) solid var(--ink); }
  .ft__top { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 640px) {
  .topbar { padding: 0 .8rem; }
  .topbar__l { display: none; }
  .topbar__r { margin-left: auto; border-bottom: 0; }
  .hero { padding-top: calc(28px + 66px + 2rem); }
  .sv { grid-template-columns: minmax(0, 1fr); }
  .sv__b:last-child { grid-column: auto; }
  .big__l, .why { grid-template-columns: minmax(0, 1fr); }
  .big__l li { border-right: 0; }
  .big__l li:nth-child(n+2) { border-bottom: var(--bd) solid #fff; }
  .big__l li:last-child { border-bottom: 0; }
  .bhead { grid-template-columns: minmax(0, 1fr); gap: .8rem; }
  .ind { grid-template-columns: 1fr; }
  .ind li { border-right: 0; }
  .ind li:nth-child(n+2) { border-bottom: var(--bd) solid var(--ink); }
  .ind li:last-child { border-bottom: 0; }
  .ab__grid { grid-template-columns: 1fr; }
  .ab__grid article { border-right: 0; }
  .ab__grid article:nth-child(n+2) { border-bottom: var(--bd) solid var(--ink); }
  .ab__grid article:last-child { border-bottom: 0; }
  .cap__h, .cap__r { grid-template-columns: 2.6rem minmax(0, 1fr); }
  .cap__b { grid-column: 2; }
  .ff__two { grid-template-columns: 1fr; }
  .hero__facts { grid-template-columns: 1fr; }
  .hero__facts li { border-right: 0; }
  .ft__top { grid-template-columns: 1fr; }
  .cr__l { grid-template-columns: 1fr 1fr 1fr; }
}
