/*
Theme Name: Bricolage, Motherfucker
Theme URI: https://archive.jaysennett.com/
Author: Jay Sennett
Description: A living-archive WordPress theme for roughly forty years of writing, research, fiction, and work by Jay Sennett.
Version: 0.2.3
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: bricolage-mf
*/

:root{
  --paper:#fffaf3;
  --ink:#0b0b0a;
  --soft:#5d5751;
  --sienna:#c5481f;
  --sienna-deep:#8b2d13;
  --blush:#f2b49a;
  --cream:#f4e3d8;
  --rule:#d8d0c8;
  --white:#fff;
  --shell:1180px;
  --sans:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --serif:Baskerville,"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
  --mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;
}
*{box-sizing:border-box}
html{background:var(--paper);color:var(--ink);scroll-behavior:smooth}
body{
  margin:0;min-width:320px;background:
  radial-gradient(circle at 90% 2%,rgba(197,72,31,.12),transparent 24rem),var(--paper);
  color:var(--ink);font-family:var(--serif);font-size:18px;line-height:1.65;
  text-rendering:optimizeLegibility
}
a{color:inherit;text-decoration-color:var(--sienna);text-underline-offset:.2em}
a:focus-visible,button:focus-visible{outline:3px solid var(--sienna);outline-offset:3px}
img{max-width:100%;height:auto}
.shell{width:min(var(--shell),calc(100% - 40px));margin:0 auto}
.skip-link{position:fixed;left:12px;top:12px;transform:translateY(-180%);z-index:9999;background:var(--ink);color:#fff;padding:10px 14px}
.skip-link:focus{transform:translateY(0)}

.site-header{padding:28px 0 0}
.header-row{display:flex;justify-content:space-between;gap:28px;align-items:center}
.brand{
  color:var(--sienna);font:800 12px/1 var(--sans);letter-spacing:.2em;
  text-transform:uppercase;text-decoration:none
}
.archive-link{font:750 13px/1 var(--sans);text-decoration:none}

.hero{padding:70px 0 104px}
.hero-kicker,.eyebrow,.archive-no{
  margin:0 0 18px;color:var(--sienna);font:800 12px/1.2 var(--sans);
  letter-spacing:.2em;text-transform:uppercase
}
.hero h1{
  max-width:1100px;margin:0;font:800 clamp(60px,11vw,138px)/.82 var(--sans);
  letter-spacing:-.075em;text-transform:uppercase
}
.hero h1 em{display:block;color:var(--sienna);font-style:normal;font-weight:550}
.hero-deck{
  max-width:850px;margin:38px 0 0;font:400 clamp(22px,2.9vw,32px)/1.35 var(--serif);
  color:#2d2926
}
.archive-stamp{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  margin-top:52px;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)
}
.archive-stamp div{padding:18px 18px 18px 0}
.archive-stamp div+div{padding-left:18px;border-left:1px solid var(--rule)}
.archive-stamp span{display:block;color:var(--soft);font:750 11px/1.2 var(--sans);letter-spacing:.13em;text-transform:uppercase}
.archive-stamp strong{display:block;margin-top:7px;font:750 18px/1.1 var(--sans)}

.section{padding:78px 0;border-top:1px solid var(--rule)}
.section-head{display:grid;grid-template-columns:48px 1fr;gap:16px;align-items:baseline;margin-bottom:36px}
.archive-no{font-family:var(--mono);letter-spacing:0}
.section h2{
  max-width:900px;margin:0 0 36px;font:780 clamp(38px,6vw,70px)/.96 var(--sans);
  letter-spacing:-.06em
}
.cri-de-coeur{
  max-width:760px;margin:-10px 0 44px;padding-left:24px;border-left:5px solid var(--sienna);
  font:400 clamp(21px,2.7vw,30px)/1.42 var(--serif);color:#2d2926
}

.assemblage{
  display:grid;grid-template-columns:repeat(12,minmax(0,1fr));
  gap:clamp(18px,3.2vw,46px);align-items:start;
  padding:clamp(34px,6vw,78px) 0 clamp(70px,11vw,132px)
}
.fragment{
  --fragment-span:5;--fragment-tilt:0deg;--fragment-lift:0px;
  position:relative;grid-column:span var(--fragment-span);min-width:0;
  color:var(--ink);transform:translateY(var(--fragment-lift)) rotate(var(--fragment-tilt));
  text-decoration:none;transition:transform .18s ease
}
.fragment.is-live:hover{transform:translateY(calc(var(--fragment-lift) - 7px)) rotate(var(--fragment-tilt))}
.fragment-inner{
  min-height:100%;display:flex;flex-direction:column;padding:clamp(22px,3vw,38px)
}
.fragment-eyebrow{
  display:block;margin:0 0 18px;color:var(--sienna-deep);
  font:800 11px/1.25 var(--sans);letter-spacing:.17em;text-transform:uppercase
}
.fragment h3{
  margin:0;font:780 clamp(31px,4.4vw,60px)/.94 var(--sans);
  letter-spacing:-.06em;overflow-wrap:anywhere
}
.fragment-body{margin:22px 0 0;color:var(--soft);font-size:17px;line-height:1.55}
.fragment-status{
  display:block;margin-top:auto;padding-top:34px;color:var(--sienna-deep);
  font:800 11px/1.25 var(--mono);text-transform:uppercase
}
.fragment--collection{
  color:var(--paper);background:var(--ink);box-shadow:14px 14px 0 var(--blush)
}
.fragment--collection .fragment-eyebrow,
.fragment--collection .fragment-status{color:var(--blush)}
.fragment--collection .fragment-body{color:var(--cream)}
.fragment--collection h3{font-size:clamp(54px,8vw,104px);line-height:.83}
.fragment--title{
  border-top:8px solid var(--sienna);border-bottom:1px solid var(--ink);
  background:transparent
}
.fragment--title .fragment-inner{padding-inline:0}
.fragment--title h3{font-family:var(--serif);font-weight:400;letter-spacing:-.045em}
.fragment--work{background:var(--blush);box-shadow:-12px 13px 0 var(--cream)}
.fragment--work h3{font-size:clamp(38px,5.6vw,72px)}
.fragment--note{
  margin-left:clamp(12px,3vw,44px);border-left:5px solid var(--sienna);
  background:rgba(255,255,255,.32)
}
.fragment--note h3{font:400 clamp(29px,4vw,48px)/1 var(--serif);letter-spacing:-.035em}
.fragment--object{border:1px solid var(--rule);background:var(--white)}
.fragment--object::before{
  content:"";position:absolute;inset:9px;border:1px solid var(--rule);pointer-events:none
}
.fragment--finding{background:var(--cream);border-top:12px solid var(--sienna-deep)}
.fragment--finding h3{font-size:clamp(24px,3vw,38px)}
.fragment--finding .fragment-body{
  color:var(--ink);font:400 clamp(22px,3.2vw,38px)/1.3 var(--serif)
}
.fragment--image{background:var(--ink);box-shadow:12px 14px 0 var(--sienna)}
.fragment-figure{margin:0}
.fragment-image{
  display:block;width:auto;height:auto;max-width:100%;max-height:78svh;
  margin-inline:auto;object-fit:contain
}
.fragment-figure figcaption{
  display:grid;gap:5px;padding:18px 20px 22px;color:var(--paper);
  font-size:15px;line-height:1.4
}
.fragment-figure figcaption .fragment-eyebrow{margin:0;color:var(--blush)}
.fragment-figure figcaption strong{font:750 clamp(23px,3vw,34px)/1 var(--sans);letter-spacing:-.035em}
.fragment-figure figcaption span:last-child{color:var(--cream)}
.fragment-tone-2:not(.fragment--image):not(.fragment--collection){background-color:rgba(242,180,154,.28)}
.fragment-tone-3.fragment--object{border-color:var(--sienna)}
.fragment-tone-4.fragment--note{border-left-color:var(--ink)}
.complete-archive-link{margin:0;text-align:right}
.complete-archive-link a{
  display:inline-block;padding:15px 0;border-bottom:4px solid var(--sienna);
  font:800 13px/1.2 var(--sans);letter-spacing:.12em;text-decoration:none;text-transform:uppercase
}
.paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.path{
  min-height:330px;padding:34px;border:1px solid var(--rule);border-radius:22px;
  background:rgba(255,255,255,.45);display:flex;flex-direction:column;justify-content:space-between;
  text-decoration:none
}
.path.is-live{border-color:var(--sienna)}
.path h3{margin:12px 0 0;font:780 clamp(32px,4.4vw,54px)/.96 var(--sans);letter-spacing:-.055em}
.path p{color:var(--soft);font-size:16px}
.path .status{font:800 11px/1.2 var(--mono);color:var(--sienna);text-transform:uppercase}
.paths-single{grid-template-columns:minmax(0,1fr);max-width:760px}

.collection-hero{padding-bottom:78px}
.examined-woman-entry .hero-deck{margin-top:34px}

.ledger{border-top:1px solid var(--rule)}
.ledger-row{
  display:grid;grid-template-columns:76px 150px 1fr;gap:22px;
  padding:27px 0;border-bottom:1px solid var(--rule);text-decoration:none
}
.ledger-row time,.ledger-row .kind{color:var(--soft);font:700 12px/1.35 var(--sans);text-transform:uppercase;letter-spacing:.08em}
.ledger-row h2,.ledger-row h3{margin:0;font:760 clamp(24px,3vw,36px)/1.05 var(--sans);letter-spacing:-.04em}
.ledger-row:hover h2,.ledger-row:hover h3{text-decoration:underline;text-decoration-color:var(--sienna);text-underline-offset:5px}

.entry{padding:72px 0 96px}
.entry-header{max-width:1050px}
.entry-title{margin:0;font:800 clamp(52px,8vw,100px)/.88 var(--sans);letter-spacing:-.07em}
.entry-meta{
  display:flex;flex-wrap:wrap;gap:10px 24px;margin:30px 0 0;padding:18px 0;
  border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);
  color:var(--soft);font:700 12px/1.3 var(--sans);letter-spacing:.08em;text-transform:uppercase
}
.entry-content{max-width:72ch;margin-top:54px}
.entry-content p,.entry-content li{font-size:19px}
.entry-content h2{margin:54px 0 18px;font:780 clamp(32px,4.6vw,52px)/1 var(--sans);letter-spacing:-.05em}
.entry-content h3{margin:38px 0 14px;font:760 28px/1.05 var(--sans);letter-spacing:-.035em}
.entry-content blockquote{
  margin:38px 0;padding:26px 30px;border-left:5px solid var(--sienna);background:var(--cream);
  font-size:25px;line-height:1.45
}
.entry-content figcaption,.entry-content .wp-block-footnotes{color:var(--soft);font-size:14px}
.entry-content code{font-family:var(--mono);font-size:.88em}

.site-footer{padding:34px 0 48px;border-top:1px solid var(--rule);color:var(--soft);font:700 12px/1.5 var(--sans)}
.footer-row{display:flex;justify-content:space-between;gap:24px}

@media(max-width:760px){
  .shell{width:min(100% - 28px,var(--shell))}
  .header-row{align-items:flex-start}
  .hero{padding:58px 0 76px}
  .archive-stamp{grid-template-columns:1fr}
  .archive-stamp div,.archive-stamp div+div{padding:15px 0;border-left:0;border-top:1px solid var(--rule)}
  .archive-stamp div:first-child{border-top:0}
  .paths{grid-template-columns:1fr}
  .assemblage{grid-template-columns:1fr;gap:34px;padding-top:32px}
  .fragment{grid-column:1!important;transform:none}
  .fragment.is-live:hover{transform:translateY(-5px)}
  .fragment--note{margin-left:0}
  .fragment--collection h3{font-size:clamp(50px,16vw,76px)}
  .complete-archive-link{text-align:left}
  .section{padding:58px 0}
  .section-head{grid-template-columns:34px 1fr;gap:8px}
  .ledger-row{grid-template-columns:62px 1fr}
  .ledger-row .kind{grid-column:2}
  .ledger-row h3{grid-column:2}
  .ledger-row h2{grid-column:2}
  .footer-row{flex-direction:column}
}
@media(min-width:761px) and (max-width:980px){
  .fragment{grid-column:span 6!important}
  .fragment--collection,.fragment--image,.fragment--finding{grid-column:span 12!important}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .fragment{transition:none}
}
@media print{
  body{background:#fff;color:#000}
  .site-header,.site-footer{display:none}
  .path{break-inside:avoid}
  .fragment{grid-column:span 6!important;transform:none;break-inside:avoid;box-shadow:none}
  a{text-decoration:none;color:#000}
}
