/* ===========================================================
   PAUL ZELLER — SITE STYLESHEET
   Shared across all pages.
=========================================================== */

:root{
  --ink:#0e0e0f;
  --ink-2:#161617;
  --paper:#ede9e2;
  --paper-dim:#a9a59c;
  --line:#2c2c2c;
  --tally:#e0382d;
  --tally-dim:#7a1f19;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  background:var(--ink);
  color:var(--paper);
  font-family:'Source Serif 4', serif;
  overflow-x:hidden;
}
::selection{background:var(--tally);color:var(--ink);}

h1,h2,h3,.disp{
  font-family:'Archivo',sans-serif;
  text-transform:uppercase;
  letter-spacing:-0.01em;
}
.mono{
  font-family:'Space Mono',monospace;
  letter-spacing:0.02em;
}
.cond{
  font-family:'Barlow Condensed',sans-serif;
  text-transform:uppercase;
  letter-spacing:0.08em;
}

a{color:inherit;text-decoration:none;}

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

/* ---------- Timecode scrubber (signature element, all pages) ---------- */
.scrubber{
  position:fixed;
  top:0;left:0;right:0;
  height:48px;
  z-index:1000;
  display:flex;
  align-items:center;
  background:rgba(14,14,15,0.88);
  backdrop-filter:blur(8px);
  border-bottom:1px solid var(--line);
}
.scrubber-track{
  position:absolute;
  bottom:0;left:0;
  height:2px;
  background:var(--tally);
  width:0%;
  transition:width 0.05s linear;
}
.scrubber-inner{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 28px;
}
.tc-left{display:flex;align-items:center;gap:14px;}
.tc-left a{
  font-family:'Archivo',sans-serif;
  font-weight:800;
  font-size:14px;
  letter-spacing:0.02em;
  text-transform:uppercase;
  color:var(--paper);
  margin-right:6px;
}
.tally-dot{
  width:8px;height:8px;border-radius:50%;
  background:var(--tally);
  box-shadow:0 0 8px var(--tally);
  animation:pulse 2s infinite;
  flex-shrink:0;
}
@keyframes pulse{0%,100%{opacity:1;}50%{opacity:0.35;}}
.tc-readout{font-size:13px;color:var(--paper-dim);}
.tc-readout b{color:var(--paper);font-weight:500;}
.scrubber nav{display:flex;gap:26px;}
.scrubber nav a{
  font-family:'Barlow Condensed',sans-serif;
  font-size:13px;
  letter-spacing:0.12em;
  text-transform:uppercase;
  color:var(--paper-dim);
  position:relative;
  padding:4px 0;
  transition:color .2s;
}
.scrubber nav a:hover,.scrubber nav a.active{color:var(--paper);}
.scrubber nav a::after{
  content:'';
  position:absolute;left:0;bottom:0;
  width:0%;height:1px;background:var(--tally);
  transition:width .25s;
}
.scrubber nav a:hover::after,.scrubber nav a.active::after{width:100%;}
.scrubber nav a.lang-link{
  border:1px solid var(--line);
  padding:4px 10px;
  color:var(--paper);
  transition:border-color .2s, color .2s;
}
.scrubber nav a.lang-link:hover{border-color:var(--tally);color:var(--tally);}
.scrubber nav a.lang-link::after{display:none;}

section{position:relative;padding:0 7vw;}

/* ---------- HERO (homepage) ---------- */
.hero{
  min-height:100vh;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding-top:48px;
  background:var(--ink);
  border-bottom:1px solid var(--line);
  position:relative;
  overflow:hidden;
}
.hero-video-bg{
  position:absolute;
  top:0;left:0;right:0;bottom:0;
  z-index:0;
  overflow:hidden;
}
.hero-video-bg::before{
  content:'';
  position:absolute;
  top:0;left:0;right:0;bottom:0;
  background:
    linear-gradient(180deg, rgba(14,14,15,0.55) 0%, rgba(14,14,15,0.75) 60%, rgba(14,14,15,0.95) 100%),
    radial-gradient(ellipse 70% 50% at 80% 0%, rgba(224,56,45,0.12), transparent 60%);
  z-index:1;
}
.hero-video-bg iframe{
  position:absolute;
  top:50%;left:50%;
  width:100vw;
  height:56.25vw; /* 16:9 */
  min-height:100vh;
  min-width:177.78vh; /* 16:9 */
  transform:translate(-50%,-50%);
  pointer-events:none;
}
.hero > *:not(.hero-video-bg){
  position:relative;
  z-index:2;
}
.hero-rule{
  display:flex;align-items:center;gap:10px;
  color:var(--paper-dim);font-size:12.5px;margin-bottom:28px;
}
.hero-rule .bar{width:34px;height:1px;background:var(--tally);}
.hero h1{
  font-size:clamp(52px,9vw,128px);
  line-height:0.94;
  font-weight:800;
  color:var(--paper);
}
.hero h1 .accent{color:var(--tally);}
.hero-sub{
  margin-top:28px;
  max-width:640px;
  font-size:clamp(17px,2vw,21px);
  line-height:1.55;
  color:#cfcac0;
  font-style:italic;
}
.hero-meta{
  margin-top:56px;
  display:flex;
  flex-wrap:wrap;
  gap:48px;
  align-items:flex-end;
}
.hero-meta .item .label{
  font-family:'Barlow Condensed',sans-serif;
  font-size:11.5px;
  letter-spacing:0.14em;
  color:var(--paper-dim);
  margin-bottom:6px;
}
.hero-meta .item .val{
  font-family:'Space Mono',monospace;
  font-size:15px;
  color:var(--paper);
}
.hero-cta{
  margin-left:auto;
  display:flex;
  align-items:center;
  gap:12px;
  border:1px solid var(--line);
  padding:14px 22px;
  transition:border-color .2s, background .2s;
}
.hero-cta:hover{border-color:var(--tally);background:rgba(224,56,45,0.06);}
.hero-cta .play{
  width:0;height:0;
  border-top:6px solid transparent;
  border-bottom:6px solid transparent;
  border-left:9px solid var(--tally);
}
.hero-cta span{
  font-family:'Barlow Condensed',sans-serif;
  font-size:13px;letter-spacing:0.1em;text-transform:uppercase;
}

/* ---------- SIMPLE PAGE HEADER (non-home pages) ---------- */
.page-header{
  min-height:46vh;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding-top:48px;
  border-bottom:1px solid var(--line);
  background:
    radial-gradient(ellipse 70% 50% at 80% 0%, rgba(224,56,45,0.08), transparent 60%),
    var(--ink);
}
.page-header .eyebrow{
  font-family:'Barlow Condensed',sans-serif;
  font-size:12.5px;letter-spacing:0.16em;color:var(--tally);margin-bottom:18px;
}
.page-header h1{
  font-size:clamp(42px,7vw,84px);
  font-weight:800;
  line-height:1;
}
.page-header p{
  margin-top:22px;
  max-width:600px;
  font-size:clamp(16px,1.6vw,19px);
  line-height:1.6;
  color:#cfcac0;
  font-style:italic;
}

/* ---------- CLIENT STRIP / MARQUEE ---------- */
.strip{
  border-bottom:1px solid var(--line);
  padding:22px 7vw;
  display:flex;
  align-items:center;
  gap:0;
  overflow:hidden;
}
.strip-label{
  font-family:'Barlow Condensed',sans-serif;
  font-size:11.5px;letter-spacing:0.14em;
  color:var(--paper-dim);
  white-space:nowrap;
  margin-right:40px;
}
.marquee-wrap{overflow:hidden;flex:1;position:relative;}
.marquee-wrap::before,.marquee-wrap::after{
  content:'';position:absolute;top:0;bottom:0;width:60px;z-index:2;
}
.marquee-wrap::before{left:0;background:linear-gradient(90deg,var(--ink),transparent);}
.marquee-wrap::after{right:0;background:linear-gradient(270deg,var(--ink),transparent);}
.marquee{
  display:flex;
  align-items:center;
  gap:0;
  white-space:nowrap;
  animation:scroll 32s linear infinite;
  width:max-content;
}
@keyframes scroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}
.marquee span{
  font-family:'Archivo',sans-serif;
  font-weight:800;
  font-size:19px;
  letter-spacing:0.04em;
  color:var(--paper-dim);
  transition:color .25s;
  padding:0 36px;
  position:relative;
  display:inline-flex;
  align-items:center;
}
.marquee span:hover{color:var(--paper);}
.marquee span:not(:last-child)::after{
  content:'';
  position:absolute;
  right:0;
  top:50%;
  transform:translateY(-50%);
  width:4px;
  height:4px;
  border-radius:50%;
  background:var(--tally);
  opacity:0.7;
}
.marquee span img{
  height:28px;
  width:auto;
  display:block;
  opacity:0.85;
  transition:opacity .25s;
}
.marquee span:hover img{opacity:1;}
.marquee span img.natural{
  filter:none;
  opacity:0.85;
  height:32px;
}

/* ---------- TIMELINE / WORK LIST ---------- */
.timeline-section{padding:130px 7vw 80px;}
.section-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  margin-bottom:64px;
  border-bottom:1px solid var(--line);
  padding-bottom:24px;
  flex-wrap:wrap;
  gap:16px;
}
.section-head .eyebrow{
  font-family:'Barlow Condensed',sans-serif;
  font-size:12.5px;letter-spacing:0.16em;color:var(--tally);margin-bottom:10px;
}
.section-head h2{font-size:clamp(32px,4.5vw,52px);font-weight:700;}
.section-head .count{
  font-family:'Space Mono',monospace;color:var(--paper-dim);font-size:14px;
}

.clip-row{
  display:grid;
  grid-template-columns:90px 1fr 220px 140px;
  align-items:center;
  gap:28px;
  padding:30px 0;
  border-bottom:1px solid var(--line);
  transition:padding-left .25s;
  cursor:pointer;
}
.clip-row:hover{padding-left:14px;background:linear-gradient(90deg,rgba(224,56,45,0.05),transparent);}
.clip-tc{
  font-family:'Space Mono',monospace;
  font-size:13px;
  color:var(--paper-dim);
}
.clip-row:hover .clip-tc{color:var(--tally);}
.clip-name{
  font-family:'Archivo',sans-serif;
  font-weight:700;
  font-size:clamp(22px,3vw,34px);
  text-transform:uppercase;
  display:flex;
  align-items:baseline;
  gap:16px;
  flex-wrap:wrap;
}
.clip-name .tag{
  font-family:'Barlow Condensed',sans-serif;
  font-size:12px;
  letter-spacing:0.1em;
  color:var(--paper-dim);
  text-transform:uppercase;
  font-weight:500;
  border:1px solid var(--line);
  padding:3px 9px;
}
.clip-genre{
  font-family:'Source Serif 4',serif;
  font-style:italic;
  color:var(--paper-dim);
  font-size:15px;
}
.clip-arrow{
  text-align:right;
  font-size:22px;
  color:var(--paper-dim);
  transition:transform .25s, color .25s;
}
.clip-row:hover .clip-arrow{transform:translateX(6px);color:var(--tally);}

@media (max-width:760px){
  .clip-row{grid-template-columns:60px 1fr;row-gap:8px;}
  .clip-genre,.clip-arrow{display:none;}
}

/* ---------- CATEGORY CARDS (work hub) ---------- */
.cat-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1px;
  background:var(--line);
  border:1px solid var(--line);
  margin-bottom:0;
}
.cat-grid.five{
  grid-template-columns:repeat(3,1fr);
}
@media (max-width:1100px) and (min-width:821px){
  .cat-grid.five{grid-template-columns:repeat(2,1fr);}
}
.cat-card{
  background:var(--ink);
  padding:48px 36px;
  min-height:320px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  transition:background .25s;
  position:relative;
  overflow:hidden;
}
.cat-card:hover{background:var(--ink-2);}
.cat-card::before{
  content:'';
  position:absolute;top:0;left:0;width:3px;height:0%;
  background:var(--tally);
  transition:height .3s;
}
.cat-card:hover::before{height:100%;}
.cat-card .cat-tc{
  font-family:'Space Mono',monospace;
  font-size:13px;
  color:var(--paper-dim);
}
.cat-card h3{
  font-size:clamp(28px,3.6vw,40px);
  font-weight:800;
  margin:24px 0 14px;
}
.cat-card p{
  font-family:'Source Serif 4',serif;
  font-style:italic;
  color:var(--paper-dim);
  font-size:15px;
  line-height:1.6;
  margin-bottom:24px;
}
.cat-card .cat-foot{
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-family:'Barlow Condensed',sans-serif;
  font-size:12px;
  letter-spacing:0.1em;
  color:var(--paper-dim);
}
.cat-card .cat-foot .arrow{
  font-size:18px;
  transition:transform .25s, color .25s;
}
.cat-card:hover .cat-foot .arrow{transform:translateX(6px);color:var(--tally);}

@media (max-width:820px){
  .cat-grid{grid-template-columns:1fr;}
}

/* ---------- SHOWREEL CARD (work hub 5th slot) ---------- */
.reel-card{
  cursor:pointer;
  position:relative;
  overflow:hidden;
  grid-column:span 2;
  flex-direction:row;
  align-items:center;
  gap:36px;
}
.reel-card:hover{background:var(--ink-2);}
.reel-card .cat-tc{flex-shrink:0;}
@media (max-width:820px){
  .reel-card{grid-column:span 1; flex-direction:column; align-items:stretch;}
}
.reel-video-wrap{
  position:relative;
  flex:1;
  margin:0;
  border-radius:2px;
  overflow:hidden;
  background:#000;
  aspect-ratio:16/9;
  max-height:220px;
  max-width:560px;
}
.reel-video-wrap iframe{
  position:absolute;
  top:0;left:0;width:100%;height:100%;border:0;
}
.reel-play-prompt{
  position:absolute;
  top:0;left:0;right:0;bottom:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:14px;
  background:
    radial-gradient(ellipse 70% 60% at 50% 40%, rgba(224,56,45,0.15), transparent 70%),
    var(--ink-2);
  transition:background .25s;
}
.reel-card:hover .reel-play-prompt{background:#1c1c1d;}
.reel-play-prompt .play-big{
  width:0;height:0;
  border-top:14px solid transparent;
  border-bottom:14px solid transparent;
  border-left:22px solid var(--tally);
  transition:transform .25s;
}
.reel-card:hover .play-big{transform:scale(1.15);}
.reel-play-prompt span{
  font-family:'Barlow Condensed',sans-serif;
  font-size:12.5px;
  letter-spacing:0.12em;
  text-transform:uppercase;
  color:var(--paper-dim);
}

/* ---------- SHOWREEL MODAL ---------- */
.reel-modal{
  position:fixed;
  top:0;left:0;right:0;bottom:0;
  z-index:2000;
  display:none;
  align-items:center;
  justify-content:center;
  padding:5vh 5vw;
}
.reel-modal.open{display:flex;}
.reel-modal-backdrop{
  position:absolute;
  top:0;left:0;right:0;bottom:0;
  background:rgba(8,8,9,0.92);
  backdrop-filter:blur(4px);
  animation:fadeIn .25s ease;
}
@keyframes fadeIn{from{opacity:0;}to{opacity:1;}}
.reel-modal-inner{
  position:relative;
  width:min(1100px, 100%);
  z-index:1;
  animation:reelPop .3s ease;
}
@keyframes reelPop{
  from{opacity:0;transform:scale(0.96);}
  to{opacity:1;transform:scale(1);}
}
.reel-modal-video{
  position:relative;
  width:100%;
  aspect-ratio:16/9;
  background:#000;
  box-shadow:0 30px 80px rgba(0,0,0,0.6);
  border-radius:2px;
  overflow:hidden;
}
.reel-modal-video iframe{
  position:absolute;
  top:0;left:0;width:100%;height:100%;border:0;
}
.reel-modal-close{
  position:absolute;
  top:-46px;right:0;
  background:none;
  border:1px solid var(--line);
  color:var(--paper);
  width:36px;height:36px;
  border-radius:50%;
  font-size:15px;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:border-color .2s, color .2s;
}
.reel-modal-close:hover{border-color:var(--tally);color:var(--tally);}

@media (max-width:700px){
  .reel-modal-close{top:-42px;}
}

/* ---------- VIDEO GRID (category pages) — watch-first layout ---------- */
.video-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:60px 40px;
}
@media (max-width:900px){
  .video-grid{grid-template-columns:1fr;}
}
.video-card{
  display:flex;
  flex-direction:column;
}
.video-frame{
  position:relative;
  width:100%;
  aspect-ratio:16/9;
  background:var(--ink-2);
  border:1px solid var(--line);
  overflow:hidden;
  margin-bottom:20px;
}
.video-frame.square{
  aspect-ratio:1/1;
}
.video-frame iframe{
  position:absolute;top:0;left:0;width:100%;height:100%;border:0;
}
.video-frame.placeholder{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:10px;
}
.video-frame.placeholder .ph-icon{
  width:0;height:0;
  border-top:11px solid transparent;
  border-bottom:11px solid transparent;
  border-left:16px solid var(--line);
}
.video-frame.placeholder span{
  font-family:'Barlow Condensed',sans-serif;
  font-size:12px;
  letter-spacing:0.1em;
  color:var(--paper-dim);
  text-transform:uppercase;
}
.video-card .v-title{
  font-family:'Archivo',sans-serif;
  font-weight:700;
  font-size:21px;
  text-transform:none;
  letter-spacing:0;
  line-height:1.25;
  margin-bottom:8px;
}
.video-card .v-production{
  font-family:'Barlow Condensed',sans-serif;
  font-size:13px;
  letter-spacing:0.1em;
  text-transform:uppercase;
  color:var(--tally);
}

/* ---------- ABOUT ---------- */
.about{
  padding:120px 7vw;
  display:grid;
  grid-template-columns:1fr 1.3fr;
  gap:70px;
  border-top:1px solid var(--line);
  background:var(--ink-2);
}
.about-photo{
  aspect-ratio:4/5;
  background:linear-gradient(160deg,#1c1c1d,#0e0e0f);
  border:1px solid var(--line);
  position:relative;
  overflow:hidden;
}
.about-photo img{
  width:100%;height:100%;object-fit:cover;
  position:absolute;top:0;left:0;
}
.about-photo::before{
  content:'00:00:00:00';
  position:absolute;bottom:16px;left:16px;
  font-family:'Space Mono',monospace;
  font-size:12px;color:var(--paper-dim);
  z-index:2;
}
.about-photo::after{
  content:'PAUL ZELLER — SOURCE TAPE 01';
  position:absolute;top:16px;left:16px;
  font-family:'Barlow Condensed',sans-serif;
  font-size:11px;letter-spacing:0.1em;color:var(--paper-dim);
  z-index:2;
}
.about-text .eyebrow{
  font-family:'Barlow Condensed',sans-serif;
  font-size:12.5px;letter-spacing:0.16em;color:var(--tally);margin-bottom:18px;
}
.about-text h2{
  font-size:clamp(28px,4vw,44px);
  font-weight:700;
  margin-bottom:28px;
  max-width:560px;
}
.about-text p{
  font-size:17px;
  line-height:1.75;
  color:#cfcac0;
  max-width:560px;
  margin-bottom:20px;
}
.stat-row{
  display:flex;
  gap:50px;
  margin-top:40px;
  flex-wrap:wrap;
}
.stat .num{
  font-family:'Archivo',sans-serif;
  font-weight:800;
  font-size:38px;
  color:var(--tally);
}
.stat .lab{
  font-family:'Barlow Condensed',sans-serif;
  font-size:12px;letter-spacing:0.1em;color:var(--paper-dim);
  margin-top:4px;
}

@media (max-width:820px){
  .about{grid-template-columns:1fr;padding:80px 7vw;}
}

/* ---------- CAREER LOG (about page extra) ---------- */
.career-log{
  padding:100px 7vw 120px;
  border-top:1px solid var(--line);
}
.career-row{
  display:grid;
  grid-template-columns:140px 1fr;
  gap:28px;
  padding:26px 0;
  border-bottom:1px solid var(--line);
}
.career-row .yr{
  font-family:'Space Mono',monospace;
  font-size:14px;
  color:var(--tally);
}
.career-row .role{
  font-family:'Archivo',sans-serif;
  font-weight:700;
  font-size:18px;
  text-transform:uppercase;
  margin-bottom:6px;
}
.career-row .desc{
  font-size:15.5px;
  line-height:1.6;
  color:var(--paper-dim);
  max-width:640px;
}
@media (max-width:600px){
  .career-row{grid-template-columns:1fr;gap:6px;}
}

/* ---------- CONTACT ---------- */
.outro{
  padding:140px 7vw 60px;
  border-top:1px solid var(--line);
  text-align:left;
}
.outro .eyebrow{
  font-family:'Barlow Condensed',sans-serif;
  font-size:12.5px;letter-spacing:0.16em;color:var(--tally);margin-bottom:20px;
}
.outro h2{
  font-size:clamp(40px,7vw,92px);
  font-weight:800;
  line-height:1.02;
  max-width:900px;
}
.outro h2 a{
  border-bottom:2px solid var(--tally);
  transition:opacity .2s;
}
.outro h2 a:hover{opacity:0.75;}
.outro-grid{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  margin-top:80px;
  padding-top:30px;
  border-top:1px solid var(--line);
  flex-wrap:wrap;
  gap:30px;
}
.outro-grid .col .label{
  font-family:'Barlow Condensed',sans-serif;
  font-size:11.5px;letter-spacing:0.14em;color:var(--paper-dim);margin-bottom:8px;
}
.outro-grid .col .val{
  font-family:'Space Mono',monospace;
  font-size:14px;
}
.outro-grid .col .val a:hover{color:var(--tally);}

/* ---------- CONTACT FORM ---------- */
.contact-form{
  padding:0 7vw 120px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:70px;
  border-top:1px solid var(--line);
  margin-top:80px;
  padding-top:80px;
}
.contact-form .form-intro .eyebrow{
  font-family:'Barlow Condensed',sans-serif;
  font-size:12.5px;letter-spacing:0.16em;color:var(--tally);margin-bottom:16px;
}
.contact-form .form-intro h3{
  font-size:clamp(24px,3vw,32px);
  font-weight:700;
  margin-bottom:18px;
  max-width:380px;
}
.contact-form .form-intro p{
  font-size:15.5px;
  line-height:1.7;
  color:var(--paper-dim);
  max-width:380px;
}
form.slate{display:flex;flex-direction:column;gap:26px;}
form.slate label{
  font-family:'Barlow Condensed',sans-serif;
  font-size:11.5px;
  letter-spacing:0.12em;
  color:var(--paper-dim);
  display:block;
  margin-bottom:8px;
}
form.slate input,form.slate textarea{
  width:100%;
  background:transparent;
  border:none;
  border-bottom:1px solid var(--line);
  color:var(--paper);
  font-family:'Source Serif 4',serif;
  font-size:16px;
  padding:10px 2px;
  transition:border-color .2s;
}
form.slate input:focus,form.slate textarea:focus{
  outline:none;
  border-color:var(--tally);
}
form.slate textarea{resize:vertical;min-height:110px;}
form.slate button{
  align-self:flex-start;
  margin-top:10px;
  background:transparent;
  border:1px solid var(--line);
  color:var(--paper);
  font-family:'Barlow Condensed',sans-serif;
  font-size:13px;
  letter-spacing:0.1em;
  text-transform:uppercase;
  padding:14px 28px;
  cursor:pointer;
  display:flex;
  align-items:center;
  gap:12px;
  transition:border-color .2s, background .2s;
}
form.slate button:hover{border-color:var(--tally);background:rgba(224,56,45,0.06);}
form.slate button .play{
  width:0;height:0;
  border-top:6px solid transparent;
  border-bottom:6px solid transparent;
  border-left:9px solid var(--tally);
}
@media (max-width:820px){
  .contact-form{grid-template-columns:1fr;}
}

/* ---------- FOOTER ---------- */
footer{
  padding:24px 7vw 40px;
  display:flex;
  justify-content:space-between;
  font-family:'Space Mono',monospace;
  font-size:12px;
  color:var(--paper-dim);
  flex-wrap:wrap;
  gap:10px;
  border-top:1px solid var(--line);
}

@media (max-width:600px){
  .scrubber nav{display:none;}
  .hero-meta{gap:28px;}
  .hero-cta{margin-left:0;}
}
