/* ============================================================
   PANCZAK CONSTRUCTION — site.css
   Visual language: a permitted drawing set.
   Ink ground, vellum sheets, brass linework, mono annotations.
   ============================================================ */

:root{
  /* ground */
  --ink:        #0F151B;
  --ink-2:      #141E26;
  --surface:    #1A252E;
  --rule:       #2B3B46;

  /* paper */
  --vellum:     #EDE8DC;
  --vellum-2:   #E2DACA;
  --vellum-rule:#CFC5B0;

  /* accent */
  --brass:      #C8922F;
  --brass-hi:   #E4B45C;
  --brass-dim:  rgba(200,146,47,.16);

  /* type colour */
  --on-ink:     #D8E1E6;
  --on-ink-mute:#8C9BA5;
  --on-paper:   #1B2229;
  --on-paper-mute:#5E6873;

  --shell: 1240px;
  --gut: clamp(20px, 5vw, 64px);

  --f-display: "Fraunces", Georgia, serif;
  --f-body: "Archivo", system-ui, -apple-system, "Segoe UI", sans-serif;
  --f-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;

  --ease: cubic-bezier(.22,.61,.36,1);
}

*,*::before,*::after{ box-sizing:border-box; }

html{ scroll-behavior:smooth; scroll-padding-top:82px; -webkit-text-size-adjust:100%; }

body{
  margin:0;
  background:var(--ink);
  color:var(--on-ink);
  font-family:var(--f-body);
  font-size:clamp(16px,1.02vw,17px);
  line-height:1.65;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}

img{ max-width:100%; display:block; }
a{ color:inherit; }

.wrap{ width:100%; max-width:var(--shell); margin-inline:auto; padding-inline:var(--gut); }

.skip{
  position:absolute; left:-9999px; top:0; z-index:200;
  background:var(--brass); color:#0F151B; padding:12px 18px;
  font-family:var(--f-mono); font-size:13px;
}
.skip:focus{ left:12px; top:12px; }

:where(a,button,input,select,textarea):focus-visible{
  outline:2px solid var(--brass-hi); outline-offset:3px; border-radius:2px;
}

/* ─────────────── shared type ─────────────── */

.eyebrow{
  font-family:var(--f-mono);
  font-size:11.5px;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--brass);
  display:flex; align-items:center; gap:14px;
  margin:0 0 22px;
  line-height:1.4;
}
.eyebrow__rule{
  width:clamp(24px,5vw,54px); height:1px; flex:none;
  background:var(--brass); position:relative;
}
.eyebrow__rule::before,
.eyebrow__rule::after{
  content:""; position:absolute; top:-3px; width:1px; height:7px; background:var(--brass);
}
.eyebrow__rule::before{ left:0; }
.eyebrow__rule::after{ right:0; }

.h-display{
  font-family:var(--f-display);
  text-wrap:balance;
  font-weight:600;
  font-size:clamp(2.4rem,5vw,4.05rem);
  line-height:.98;
  letter-spacing:-.022em;
  margin:0 0 26px;
  font-variation-settings:"SOFT" 0,"WONK" 1,"opsz" 144;
}
.h-display em{
  font-style:italic; font-weight:400; color:var(--brass-hi);
  font-variation-settings:"SOFT" 40,"WONK" 1,"opsz" 144;
}

.h-sect{
  font-family:var(--f-display);
  font-weight:600;
  font-size:clamp(2rem,3.9vw,3.2rem);
  line-height:1.03;
  letter-spacing:-.018em;
  margin:0 0 20px;
  font-variation-settings:"SOFT" 0,"WONK" 1;
}
.h-sect em{ font-style:italic; font-weight:400; color:var(--brass); }

.sect__lede{
  max-width:46ch; color:var(--on-ink-mute);
  font-size:1.05rem; margin:0 0 clamp(38px,5vw,60px);
}
.lede{ font-size:1.14rem; line-height:1.55; }

/* ─────────────── header ─────────────── */

.hdr{
  position:fixed; inset:0 0 auto 0; z-index:100;
  background:rgba(15,21,27,0);
  border-bottom:1px solid transparent;
  transition:background .35s var(--ease), border-color .35s var(--ease), backdrop-filter .35s;
}
.hdr.is-stuck{
  background:rgba(15,21,27,.92);
  backdrop-filter:blur(14px) saturate(140%);
  border-bottom-color:var(--rule);
}
.hdr__in{
  width:100%; max-width:var(--shell); margin-inline:auto;
  padding:16px var(--gut);
  display:flex; align-items:center; justify-content:space-between; gap:24px;
}

.mark{ display:flex; align-items:center; gap:11px; text-decoration:none; color:var(--on-ink); }
.mark__glyph{ width:30px; height:30px; color:var(--brass); flex:none; }
.mark__wd{ display:flex; flex-direction:column; line-height:1; }
.mark__name{
  font-family:var(--f-display); font-weight:600; font-size:1.12rem; letter-spacing:-.01em;
}
.mark__sub{
  font-family:var(--f-mono); font-size:9.5px; letter-spacing:.24em;
  text-transform:uppercase; color:var(--on-ink-mute); margin-top:3px;
}

.nav{ display:flex; align-items:center; gap:6px; }
.nav a{
  display:flex; align-items:baseline; gap:7px;
  text-decoration:none; padding:9px 12px;
  font-size:.9rem; color:var(--on-ink); opacity:.82;
  transition:opacity .2s, color .2s;
}
.nav a i{
  font-family:var(--f-mono); font-style:normal; font-size:9.5px;
  letter-spacing:.1em; color:var(--brass); opacity:.75;
}
.nav a:hover{ opacity:1; color:#fff; }
.nav__cta{
  margin-left:10px; border:1px solid var(--brass);
  color:var(--brass-hi) !important; opacity:1 !important;
  padding:9px 18px !important;
  font-family:var(--f-mono); font-size:11.5px !important;
  letter-spacing:.1em; text-transform:uppercase;
  transition:background .25s var(--ease), color .25s var(--ease);
}
.nav__cta:hover{ background:var(--brass); color:#0F151B !important; }

.burger{
  display:none; width:42px; height:42px; padding:0;
  background:none; border:1px solid var(--rule); cursor:pointer;
  flex-direction:column; align-items:center; justify-content:center; gap:5px;
}
.burger span{ width:18px; height:1.5px; background:var(--on-ink); transition:transform .3s var(--ease), opacity .2s; }
.burger[aria-expanded="true"] span:nth-child(1){ transform:translateY(6.5px) rotate(45deg); }
.burger[aria-expanded="true"] span:nth-child(2){ opacity:0; }
.burger[aria-expanded="true"] span:nth-child(3){ transform:translateY(-6.5px) rotate(-45deg); }

/* ─────────────── hero ─────────────── */

.hero{
  position:relative; min-height:100svh;
  display:flex; flex-direction:column; justify-content:center;
  padding:122px 0 0; overflow:hidden;
  background:
    radial-gradient(120% 90% at 78% 18%, rgba(200,146,47,.10), transparent 62%),
    linear-gradient(180deg,#0D1319 0%,#0F151B 55%,#121B22 100%);
}
.hero__grid{
  position:absolute; inset:0; pointer-events:none;
  background-image:
    linear-gradient(to right, rgba(216,225,230,.045) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(216,225,230,.045) 1px, transparent 1px);
  background-size:56px 56px;
  mask-image:radial-gradient(90% 70% at 50% 40%, #000 30%, transparent 100%);
}
.hero__in{
  position:relative; width:100%; max-width:var(--shell);
  margin-inline:auto; padding:0 var(--gut) clamp(48px,7vw,84px);
  display:grid; grid-template-columns:1.05fr .95fr; gap:clamp(28px,5vw,68px);
  align-items:center; flex:1;
}
.hero__copy{ max-width:46ch; }
.hero__lede{
  color:var(--on-ink-mute); font-size:1.04rem; max-width:46ch; margin:0 0 30px;
}

.btns{ display:flex; flex-wrap:wrap; gap:12px; }
.btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:15px 28px; text-decoration:none; cursor:pointer;
  font-family:var(--f-mono); font-size:12px; letter-spacing:.11em; text-transform:uppercase;
  border:1px solid transparent; transition:all .25s var(--ease);
}
.btn--primary{ background:var(--brass); color:#0F151B; border-color:var(--brass); font-weight:500; }
.btn--primary:hover{ background:var(--brass-hi); border-color:var(--brass-hi); transform:translateY(-2px); }
.btn--ghost{ border-color:var(--rule); color:var(--on-ink); }
.btn--ghost:hover{ border-color:var(--brass); color:var(--brass-hi); }
.btn--wide{ width:100%; padding:17px 28px; }

/* the drafted elevation */
.hero__draw{ position:relative; }
.elev{ width:100%; height:auto; color:var(--brass); overflow:visible; }
.elev__line path{ stroke-width:1.35; }
.elev__siding{ stroke-width:.6 !important; opacity:.42; }
.elev__grade{ stroke-width:.6; opacity:.5; }
.elev__dims{ opacity:.45; }
.elev__notes text{
  font-family:var(--f-mono); font-size:8.5px; letter-spacing:.13em;
  fill:var(--brass); opacity:.85;
}
.elev__notes .elev__dimtxt{ text-anchor:middle; fill:var(--on-ink-mute); }

.elev__line path,.elev__dims path{
  stroke-dasharray:var(--len,900); stroke-dashoffset:var(--len,900);
  animation:draw 1.5s var(--ease) forwards;
}
.elev__notes,.elev__notes *{ animation:fadeUp .8s var(--ease) 1.35s backwards; }
@keyframes draw{ to{ stroke-dashoffset:0; } }
@keyframes fadeUp{ from{ opacity:0; transform:translateY(6px);} to{ opacity:1; transform:none;} }

.titleblock{
  margin-top:14px; border-top:1px solid var(--rule);
  padding-top:9px; display:flex; justify-content:space-between;
  font-family:var(--f-mono); font-size:9.5px; letter-spacing:.2em;
  text-transform:uppercase; color:var(--on-ink-mute);
}

.ticker{
  position:relative; border-top:1px solid var(--rule); border-bottom:1px solid var(--rule);
  background:rgba(26,37,46,.5);
}
.ticker__row{
  width:100%; max-width:var(--shell); margin-inline:auto; padding:16px var(--gut);
  display:flex; flex-wrap:wrap; gap:10px clamp(20px,4vw,48px);
  font-family:var(--f-mono); font-size:11px; letter-spacing:.08em;
  text-transform:uppercase; color:var(--on-ink-mute);
}
.ticker__row b{ color:var(--brass-hi); font-weight:500; }

/* ─────────────── sections ─────────────── */

.sect{ padding:clamp(72px,9vw,132px) 0; position:relative; }
.sect--dark{ background:var(--ink-2); border-block:1px solid var(--rule); }

.sect--vellum{
  background:var(--vellum);
  color:var(--on-paper);
  background-image:
    linear-gradient(to right, rgba(27,34,41,.032) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(27,34,41,.032) 1px, transparent 1px);
  background-size:28px 28px;
}
.sect--vellum .eyebrow{ color:#8A6318; }
.sect--vellum .eyebrow__rule,
.sect--vellum .eyebrow__rule::before,
.sect--vellum .eyebrow__rule::after{ background:#8A6318; }
.sect--vellum .h-sect em{ color:#8A6318; }
.sect--vellum .sect__lede{ color:var(--on-paper-mute); }

.split{ display:grid; grid-template-columns:.85fr 1.15fr; gap:clamp(32px,5vw,76px); align-items:start; }
.split__side{ position:sticky; top:106px; }
.split__body > p{ margin:0 0 18px; }
.sect--vellum .split__body > p{ color:#39424C; }

.facts{ list-style:none; margin:34px 0 0; padding:0; border-top:1px solid var(--vellum-rule); }
.facts li{
  display:flex; justify-content:space-between; gap:20px; align-items:baseline;
  padding:13px 0; border-bottom:1px solid var(--vellum-rule);
}
.facts span{
  font-family:var(--f-mono); font-size:10.5px; letter-spacing:.16em;
  text-transform:uppercase; color:var(--on-paper-mute);
}
.facts b{ font-weight:500; text-align:right; }

/* ─────────────── service cards ─────────────── */

.cards{
  display:grid; grid-template-columns:repeat(3,1fr);
  gap:1px; background:var(--rule); border:1px solid var(--rule);
}
.card{
  background:var(--ink); padding:clamp(26px,3vw,38px);
  transition:background .3s var(--ease);
  position:relative;
}
.card:hover{ background:var(--surface); }
.card__no{
  font-family:var(--f-mono); font-size:10.5px; letter-spacing:.2em;
  color:var(--brass); display:block; margin-bottom:20px;
}
.card h3{
  font-family:var(--f-display); font-weight:600; font-size:1.34rem;
  line-height:1.15; margin:0 0 12px; letter-spacing:-.01em;
}
.card p{ margin:0; color:var(--on-ink-mute); font-size:.96rem; }

/* ─────────────── phases ─────────────── */

.phases{ list-style:none; margin:0; padding:0; counter-reset:p; }
.phase{
  display:grid; grid-template-columns:88px 1fr 240px;
  column-gap:clamp(16px,3vw,40px); row-gap:8px; align-items:start;
  padding:30px 0; border-top:1px solid var(--vellum-rule);
}
.phase:last-child{ border-bottom:1px solid var(--vellum-rule); }
.phase__key{
  grid-column:1; grid-row:1 / span 2;
  font-family:var(--f-mono); font-size:13px; letter-spacing:.12em;
  color:#8A6318; padding-top:8px;
}
.phase h3{ grid-column:2; grid-row:1; }
.phase p{ grid-column:2; grid-row:2; }
.phase__out{ grid-column:3; grid-row:1; align-self:start; }
.phase h3{
  font-family:var(--f-display); font-weight:600; font-size:1.5rem;
  margin:0; letter-spacing:-.012em; line-height:1.2;
}
.phase p{ margin:0; color:#39424C; max-width:52ch; font-size:.98rem; }
.phase__out{
  font-family:var(--f-mono); font-size:10.5px; letter-spacing:.1em; line-height:1.6;
  text-transform:uppercase; color:var(--on-paper-mute);
  border-left:1px solid var(--vellum-rule); padding:2px 0 2px 16px;
}

/* ─────────────── gallery ─────────────── */

.filters{ display:flex; flex-wrap:wrap; gap:8px; margin:0 0 26px; }
.filter{
  background:none; border:1px solid var(--rule); color:var(--on-ink-mute);
  padding:9px 17px; cursor:pointer;
  font-family:var(--f-mono); font-size:11px; letter-spacing:.1em; text-transform:uppercase;
  transition:all .22s var(--ease);
}
.filter:hover{ color:var(--on-ink); border-color:var(--on-ink-mute); }
.filter.is-on{ background:var(--brass); border-color:var(--brass); color:#0F151B; }

.gal{
  display:grid; grid-template-columns:repeat(4,1fr);
  grid-auto-rows:212px; grid-auto-flow:dense; gap:12px;
}
.tile{
  margin:0; position:relative; overflow:hidden; cursor:pointer;
  border:1px solid var(--rule); background:var(--ink-2);
  transition:opacity .35s var(--ease), transform .35s var(--ease), border-color .3s;
}
.tile--wide{ grid-column:span 2; grid-row:span 2; }
.tile--tall{ grid-row:span 2; }
.tile.is-off{ display:none; }
.tile:hover{ border-color:var(--brass); }

.tile img{ width:100%; height:100%; object-fit:cover; }
.tile__ph{
  position:absolute; inset:0;
  background-image:repeating-linear-gradient(45deg,
    rgba(200,146,47,.10) 0 1px, transparent 1px 11px);
}
.tile__ph::after{
  content:attr(data-file);
  position:absolute; left:14px; top:13px;
  font-family:var(--f-mono); font-size:9.5px; letter-spacing:.14em;
  text-transform:uppercase; color:var(--on-ink-mute); opacity:.55;
}
.tile figcaption{
  position:absolute; inset:auto 0 0 0; z-index:2;
  padding:38px 16px 15px;
  background:linear-gradient(to top, rgba(13,19,25,.94), transparent);
  display:flex; flex-direction:column; gap:3px;
}
.tile figcaption span{
  font-family:var(--f-mono); font-size:9.5px; letter-spacing:.18em;
  text-transform:uppercase; color:var(--brass);
}
.tile figcaption b{ font-family:var(--f-display); font-weight:600; font-size:1.02rem; }

/* ─────────────── record ─────────────── */

.record{ display:grid; grid-template-columns:1fr 1fr; gap:1px; background:var(--rule); border:1px solid var(--rule); }
.record__item{ background:var(--ink-2); padding:clamp(24px,2.6vw,34px); }
.record__big{
  font-family:var(--f-display); font-weight:600; font-size:clamp(2.6rem,4.6vw,3.6rem);
  line-height:1; color:var(--brass-hi); display:block; letter-spacing:-.03em;
  font-variation-settings:"SOFT" 0,"WONK" 1;
}
.record__plus{ font-size:.5em; vertical-align:super; }
.record__lbl{
  font-family:var(--f-mono); font-size:10.5px; letter-spacing:.16em;
  text-transform:uppercase; color:var(--on-ink-mute);
  display:block; margin:10px 0 14px;
}
.record__item p{ margin:0; font-size:.93rem; color:var(--on-ink-mute); }
.verify{
  margin:20px 0 0; font-family:var(--f-mono); font-size:11px;
  letter-spacing:.08em; color:var(--on-ink-mute);
}
.verify a{ color:var(--brass-hi); }

/* ─────────────── booker ─────────────── */

.booker{
  background:#fff; border:1px solid var(--vellum-rule);
  box-shadow:0 24px 60px -30px rgba(27,34,41,.45);
  overflow:hidden;
}
.booker iframe{ display:block; width:100%; min-height:620px; }
.booker__alt{
  margin:16px 0 0; font-family:var(--f-mono); font-size:11.5px;
  letter-spacing:.05em; color:var(--on-paper-mute);
}
.booker__alt a{ color:#8A6318; }

/* ─────────────── contact ─────────────── */

.sect--contact{ background:var(--ink-2); border-top:1px solid var(--rule); }
.contact__list{ list-style:none; margin:30px 0 0; padding:0; border-top:1px solid var(--rule); }
.contact__list li{
  display:flex; justify-content:space-between; gap:18px; align-items:baseline;
  padding:13px 0; border-bottom:1px solid var(--rule);
}
.contact__list span{
  font-family:var(--f-mono); font-size:10.5px; letter-spacing:.16em;
  text-transform:uppercase; color:var(--on-ink-mute);
}
.contact__list a,.contact__list b{ font-weight:500; text-align:right; text-decoration:none; }
.contact__list a:hover{ color:var(--brass-hi); }

.form{ display:flex; flex-direction:column; gap:16px; }
.form__row{ display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.field{ display:flex; flex-direction:column; gap:7px; }
.field span{
  font-family:var(--f-mono); font-size:10.5px; letter-spacing:.14em;
  text-transform:uppercase; color:var(--on-ink-mute);
}
.field input,.field select,.field textarea{
  background:var(--ink); border:1px solid var(--rule); color:var(--on-ink);
  padding:13px 14px; font-family:var(--f-body); font-size:.97rem;
  border-radius:0; transition:border-color .2s;
}
.field textarea{ resize:vertical; }
.field input:focus,.field select:focus,.field textarea:focus{ border-color:var(--brass); }
.form__note{
  margin:2px 0 0; font-family:var(--f-mono); font-size:11px;
  letter-spacing:.05em; color:var(--on-ink-mute);
}
.form__note a{ color:var(--brass-hi); }
.hp{ position:absolute; left:-9999px; }

/* ─────────────── footer ─────────────── */

.ftr{ background:var(--ink); border-top:1px solid var(--rule); padding-top:clamp(52px,6vw,76px); }
.ftr__in{ display:grid; grid-template-columns:1fr 1.35fr; gap:clamp(30px,5vw,64px); padding-bottom:44px; }
.ftr__brand p{ color:var(--on-ink-mute); font-size:.94rem; max-width:38ch; margin:14px 0 0; }
.ftr__lic{
  font-family:var(--f-mono) !important; font-size:10.5px !important;
  letter-spacing:.1em; text-transform:uppercase; margin-top:16px !important;
}
.ftr__nav{ display:grid; grid-template-columns:repeat(3,1fr); gap:26px; }
.ftr__nav h4{
  font-family:var(--f-mono); font-size:10.5px; letter-spacing:.18em;
  text-transform:uppercase; color:var(--brass); margin:0 0 14px; font-weight:500;
}
.ftr__nav a,.ftr__nav span{
  display:block; text-decoration:none; color:var(--on-ink-mute);
  font-size:.92rem; padding:3.5px 0;
}
.ftr__nav a:hover{ color:var(--brass-hi); }
.ftr__base{
  display:flex; flex-wrap:wrap; justify-content:space-between; gap:10px;
  padding-block:20px; border-top:1px solid var(--rule);
  font-family:var(--f-mono); font-size:10.5px; letter-spacing:.1em;
  text-transform:uppercase; color:var(--on-ink-mute);
}

/* ─────────────── lightbox ─────────────── */

.lb{
  position:fixed; inset:0; z-index:150;
  background:rgba(10,15,20,.96); backdrop-filter:blur(6px);
  display:flex; align-items:center; justify-content:center; gap:12px;
  padding:clamp(16px,4vw,52px);
}
.lb[hidden]{ display:none; }
.lb__fig{ margin:0; max-width:min(1100px,92vw); max-height:86vh; display:flex; flex-direction:column; gap:12px; }
.lb__fig img{ max-height:78vh; width:auto; object-fit:contain; border:1px solid var(--rule); }
.lb__fig figcaption{
  font-family:var(--f-mono); font-size:11px; letter-spacing:.12em;
  text-transform:uppercase; color:var(--on-ink-mute); text-align:center;
}
.lb__x{
  position:absolute; top:18px; right:20px; width:44px; height:44px;
  background:none; border:1px solid var(--rule); color:var(--on-ink);
  font-size:24px; line-height:1; cursor:pointer;
}
.lb__nav{
  width:52px; height:52px; flex:none;
  background:none; border:1px solid var(--rule); color:var(--on-ink);
  font-size:28px; line-height:1; cursor:pointer;
}
.lb__x:hover,.lb__nav:hover{ border-color:var(--brass); color:var(--brass-hi); }

/* ─────────────── reveal ─────────────── */

.reveal{ opacity:0; transform:translateY(18px); transition:opacity .7s var(--ease), transform .7s var(--ease); }
.reveal.is-in{ opacity:1; transform:none; }

/* ─────────────── responsive ─────────────── */

@media (max-width:1080px){
  .nav a i{ display:none; }
  .nav a{ padding:9px 9px; font-size:.86rem; }
}

@media (max-width:1020px){
  .cards{ grid-template-columns:repeat(2,1fr); }
}

@media (max-width:900px){
  .burger{ display:flex; }
  .nav{
    position:fixed; inset:70px 0 auto 0;
    flex-direction:column; align-items:stretch; gap:0;
    background:rgba(15,21,27,.985); backdrop-filter:blur(16px);
    border-bottom:1px solid var(--rule);
    padding:8px var(--gut) 24px;
    transform:translateY(-120%); opacity:0; pointer-events:none;
    transition:transform .4s var(--ease), opacity .3s;
  }
  .nav.is-open{ transform:none; opacity:1; pointer-events:auto; }
  .nav a{ padding:15px 0; border-bottom:1px solid var(--rule); font-size:1.05rem; }
  .nav a i{ display:inline; }
  .nav__cta{ margin:18px 0 0; justify-content:center; padding:15px !important; }

  .hero{ padding-top:104px; }
  .hero__in{ grid-template-columns:1fr; gap:40px; }
  .hero__draw{ order:-1; max-width:520px; }
  .hero__copy{ max-width:none; }

  .split{ grid-template-columns:1fr; }
  .split__side{ position:static; }

  .phase{ grid-template-columns:56px 1fr; }
  .phase__key{ grid-row:1 / span 3; }
  .phase h3{ grid-column:2; grid-row:1; }
  .phase p{ grid-column:2; grid-row:2; }
  .phase__out{
    grid-column:2; grid-row:3; border-left:0; border-top:1px solid var(--vellum-rule);
    padding:10px 0 0; margin-top:12px; align-self:start;
  }

  .gal{ grid-template-columns:repeat(2,1fr); grid-auto-rows:190px; }
  .tile--wide{ grid-column:span 2; grid-row:span 1; }
  .tile--tall{ grid-row:span 1; }

  .record{ grid-template-columns:1fr; }
  .ftr__in{ grid-template-columns:1fr; }
}

@media (max-width:560px){
  .cards{ grid-template-columns:1fr; }
  .form__row{ grid-template-columns:1fr; }
  .ftr__nav{ grid-template-columns:1fr 1fr; }
  .gal{ grid-template-columns:1fr; }
  .tile--wide{ grid-column:span 1; }
  .lb__nav{ width:44px; height:44px; }
}

@media (prefers-reduced-motion:reduce){
  html{ scroll-behavior:auto; }
  *,*::before,*::after{ animation-duration:.001ms !important; animation-delay:0ms !important; transition-duration:.001ms !important; }
  .elev__line path,.elev__dims path{ stroke-dashoffset:0 !important; }
  .reveal{ opacity:1; transform:none; }
}
