/* media-press */

html.lenis{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto}
main{margin-left:var(--rail)}
html.js .rv{
  opacity:0;
  transform:translateY(26px);
  transition:opacity 1.1s cubic-bezier(.16,1,.3,1),transform 1.1s cubic-bezier(.16,1,.3,1);
}
html.js .rv.on{opacity:1;transform:none}
.head{
  min-height:82vh;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:clamp(90px,14vh,160px) var(--gut) clamp(40px,5vw,64px);
}
.eyerow{
  display:flex;
  justify-content:space-between;
  font-family:var(--mono);
  font-size:clamp(9px,1vw,11px);
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--soft);
  margin-bottom:clamp(26px,4vw,46px);
}
.head h1{font-family:var(--serif);font-size:clamp(52px,9vw,112px);line-height:.9;letter-spacing:-.03em}
.head h1 .it{color:var(--olive)}
.head .lead{
  font-family:var(--serif);
  font-size:clamp(19px,2.3vw,26px);
  line-height:1.5;
  color:#3b372e;
  max-width:46ch;
  margin-top:clamp(22px,3vw,36px);
}
.inst{
  margin:0 var(--gut) 4vh;
  padding:clamp(18px,2.6vw,26px) 0;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  display:flex;
  flex-wrap:wrap;
  gap:10px 0;
  font-family:var(--mono);
  font-size:clamp(9px,1vw,11px);
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--soft);
}
.inst i{font-style:normal;color:var(--bronze);padding:0 14px}
/* chapter headings */
.chap{
  min-height:34vh;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:clamp(28px,5vh,60px) var(--gut);
}
.chap .cy{
  font-family:var(--mono);
  font-size:clamp(10px,1.2vw,13px);
  letter-spacing:.34em;
  text-transform:uppercase;
  color:var(--bronze);
  margin-bottom:26px;
}
.chap .cw{font-size:clamp(34px,13vw,220px);line-height:.9;letter-spacing:-.03em;color:var(--ink)}
.chap .cw .it{color:var(--olive)}
.mlc{display:block}
html.js .mlc b{display:block;font-weight:400}

@media (prefers-reduced-motion:reduce){
  html.js .mlc b, html.js .band .ml b{transform:none}
  html.js .rv{opacity:1!important;transform:none!important;transition:none!important}
}

/* ---------- THE PLATE ---------- */
.plates{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:clamp(18px,2.4vw,40px);
  row-gap:clamp(30px,3.6vw,58px);
  align-items:start;
  width:min(100%,1180px);
  margin-inline:auto;
  padding:clamp(14px,2.4vh,34px) var(--gut) clamp(46px,7vh,92px);
}
.clip{
  position:relative;
  margin:0;
  cursor:zoom-in;
  transition:opacity .6s cubic-bezier(.16,1,.3,1);
}
.clip img{
  display:block;
  width:100%;
  height:auto;
  aspect-ratio:1/1;
  object-fit:contain;
  box-sizing:border-box;
  padding:clamp(10px,1.3vw,22px);
  background:var(--bone);
  border:1px solid var(--line);
  backface-visibility:hidden;
  clip-path:inset(6% 4%);
  transform:scale(1.03);
  transition:clip-path 1.3s cubic-bezier(.16,1,.3,1),transform 1.3s cubic-bezier(.16,1,.3,1);
}
.clip.on img{clip-path:inset(0 0 0 0);transform:none}
/* plate variants */
.clip.tall img{aspect-ratio:3/4}
.clip.wide{grid-column:1/-1}
.clip.wide img{aspect-ratio:16/10}
.clip.solo1{grid-column:1/-1;justify-self:center;width:calc(50% - clamp(9px,1.2vw,20px))}
.plates.one{grid-template-columns:minmax(0,1fr);justify-items:center}
.plates.one .clip{width:min(80%,600px)}
.plates.one .clip.wide{width:100%;grid-column:1}

/* featured document */
.plates.feat{align-items:center;row-gap:clamp(24px,3vw,40px)}
.featx{padding-left:clamp(0px,1.6vw,28px)}
.featx blockquote{
  margin:0;
  font-family:var(--serif);
  font-size:clamp(19px,1.95vw,30px);
  line-height:1.34;
  letter-spacing:-.01em;
  color:var(--ink);
}
.featx .ftr{
  margin-top:clamp(14px,1.7vw,22px);
  font-family:var(--serif);
  font-style:italic;
  font-size:clamp(14px,1.15vw,17px);
  line-height:1.5;
  color:var(--soft);
  max-width:44ch;
}
.featx .fw{
  margin-top:clamp(16px,2.1vw,28px);
  font-family:var(--mono);
  font-size:10.5px;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--soft);
  line-height:1.75;
}
/* viewer */
.viewer{
  position:fixed;
  inset:0;
  z-index:300;
  background:rgba(16,15,10,.95);
  opacity:0;
  pointer-events:none;
  transition:opacity .45s;
}
.viewer.open{opacity:1;pointer-events:auto}
.viewer img{position:absolute;object-fit:contain;will-change:transform,width,height;cursor:zoom-out}
.viewer .vcap{
  position:absolute;
  bottom:26px;
  left:50%;
  transform:translateX(-50%);
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(244,241,232,.75);
  white-space:nowrap;
  max-width:90vw;
  overflow:hidden;
  text-overflow:ellipsis;
}
.viewer .vx{
  position:absolute;
  top:22px;
  right:28px;
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:rgba(244,241,232,.75);
  cursor:pointer;
  padding:8px;
  z-index:2;
}
/* quote band */
.band{background:var(--spine);color:var(--cream);padding:clamp(70px,10vw,140px) var(--gut)}
.band .k{
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:#C7C49B;
  margin-bottom:28px;
}
.band blockquote{
  font-family:var(--serif);
  font-style:italic;
  font-size:clamp(24px,3.8vw,50px);
  white-space:nowrap;
  line-height:1.2;
  letter-spacing:-.01em;
  max-width:26ch;
}
.band .ml{display:block}
html.js .band .ml b{display:block;font-weight:400}
.band .who{
  margin-top:32px;
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(244,241,232,.7);
}

@media (max-width:899px){
  .plates{grid-template-columns:minmax(0,1fr);row-gap:clamp(22px,6vw,36px);padding:2vh var(--gut) 6vh}
  .clip.wide, .clip.solo1{grid-column:1;width:100%;justify-self:stretch}
  .plates.one .clip{width:100%}
  .featx{padding-left:0}
  .chap{min-height:30vh}
}

@media (max-width:760px){
  main{margin-left:0;padding-top:52px}
}

.serif, .cw, .big, blockquote{
  font-kerning:normal;
  font-feature-settings:"kern" 1,"liga" 1,"calt" 1;
  font-variant-ligatures:common-ligatures contextual;
  text-rendering:optimizeLegibility;
}
.online{padding:clamp(48px,7vw,110px) var(--gut) clamp(24px,4vw,60px)}
.online .ohead, .awards .ohead, .sasel .ohead{margin-bottom:clamp(20px,3vw,36px)}
.online .ok, .awards .ok, .sasel .ok{
  font-family:var(--mono);
  font-size:10.5px;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--soft);
  font-weight:400;
}
.online .lk{
  display:grid;
  grid-template-columns:1fr auto;
  align-items:baseline;
  gap:8px 24px;
  padding:clamp(18px,2.4vw,26px) 0;
  border-top:1px solid var(--line);
  text-decoration:none;
  color:var(--ink);
}
.online .lk:last-of-type{border-bottom:1px solid var(--line)}
.online .lkt{font-family:var(--serif);font-size:clamp(20px,2.6vw,30px);line-height:1.1}
.online .lkd{grid-column:1;font-family:var(--sans);font-size:13.5px;color:var(--soft)}
.online .lka{
  grid-column:2;
  grid-row:1;
  font-family:var(--mono);
  font-size:11px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--bronze);
  transition:transform .3s ease;
}
.online .lk:hover .lka{transform:translateX(6px)}
/* awards */
.awards{padding:clamp(56px,8vw,120px) var(--gut) 0}
.awards .aw{display:grid;grid-template-columns:1fr;gap:clamp(10px,1.4vw,18px);padding:clamp(22px,3vw,34px) 0}
.awards .awy{font-size:clamp(30px,4.4vw,58px);line-height:1;letter-spacing:-.02em;color:var(--ink)}
.awards .awi{margin-bottom:clamp(9px,1.1vw,14px)}
.awards .awi:last-child{margin-bottom:0}
.awards .awt{font-size:clamp(16px,1.55vw,21px);line-height:1.32;color:var(--ink)}
.awards .awp{
  font-family:var(--mono);
  font-size:10.5px;
  letter-spacing:.13em;
  text-transform:uppercase;
  color:var(--soft);
  margin-top:4px;
}

@media (min-width:820px){
  .awards .aw{grid-template-columns:minmax(150px,220px) 1fr;column-gap:clamp(28px,4vw,64px);align-items:start}
}

.awards .awnote .awt{
  font-family:var(--mono);
  font-size:10.5px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--soft);
  line-height:1.5;
}
.awards .awnote{margin-bottom:clamp(12px,1.5vw,18px)}
.ccap{
  padding-top:13px;
  font-family:var(--mono);
  font-size:10px;
  letter-spacing:.16em;
  text-transform:uppercase;
  line-height:1.55;
  color:var(--soft);
  transition:color .4s ease;
}
.ccap span{white-space:nowrap}
.ccap span:not(:last-child)::after{content:" \00B7";color:var(--line2)}
.ccap::before{
  content:"";
  display:block;
  width:20px;
  height:1px;
  background:var(--bronze);
  margin-bottom:10px;
  transition:width .55s cubic-bezier(.16,1,.3,1);
}

@media (hover:hover){
  .clip:hover, .clip:focus-visible{z-index:5}
  .clip:hover .ccap, .clip:focus-visible .ccap{color:var(--ink)}
  .clip:hover .ccap::before, .clip:focus-visible .ccap::before{width:42px}
  .plates:has(.clip:hover) .clip:not(:hover){opacity:.42}
  .plates:has(.clip:focus-visible) .clip:not(:focus-visible){opacity:.42}
}

@media (prefers-reduced-motion:reduce){
  .ccap::before{transition:none}
}

@media (min-width:1600px){
  main{margin-left:calc((100vw - 1560px) / 2 + var(--rail));margin-right:calc((100vw - 1560px) / 2)}
}

@media print{
  .intro, .curve, .viewer{display:none!important}
  main{margin-left:0!important}
  html.js .rvf, html.js .rv{opacity:1!important;transform:none!important}
  .clip img{clip-path:none!important;transform:none!important}
}

.clip:focus-visible{outline:2px solid var(--bronze);outline-offset:4px}
main{
  margin-left:0!important;
  margin-right:0!important;
  max-width:1560px!important;
  margin-inline:auto!important;
  padding-top:0!important;
}
.gs i{font-style:italic}
.snav a{
  writing-mode:vertical-rl;
  transform:rotate(180deg);
  color:currentColor;
  position:relative;
  padding:2px 3px;
  white-space:nowrap;
  transition:opacity .3s;
}
.snav a::after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  right:-4px;
  width:1px;
  background:currentColor;
  transform:scaleY(0);
  transform-origin:bottom;
  transition:transform .4s cubic-bezier(.16,1,.3,1);
}

@media (max-width:900px){
  .snav a{writing-mode:horizontal-tb!important;transform:none!important}
  .snav a::after{
    top:auto!important;
    bottom:-2px!important;
    right:0!important;
    left:0!important;
    width:auto!important;
    height:1px!important;
    transform:scaleX(0)!important;
    transform-origin:left!important;
  }
}

.curve{line-height:0;background:var(--paper)}
/* ---------- FOOTER ---------- */
.footer{
  background:var(--spine);
  color:var(--cream);
  padding-top:clamp(60px,8vw,110px);
  padding-bottom:clamp(30px,4vw,44px);
  overflow:hidden;
}
.footer .bigmark .it{font-style:italic;color:#C7C49B}
.footer{padding-left:var(--gut)!important;padding-right:var(--gut)!important}
.curve{margin-bottom:-1px!important}

@media (hover:hover) and (pointer:fine){
  html.cur-on, html.cur-on *{cursor:none!important}
}

@media (prefers-reduced-motion:reduce){
  html.cur-on, html.cur-on *{cursor:auto!important}
}

html.js .mlc b{transform:none!important}
html.vopen .gs, html.vopen .snav, html.vopen .snavtog{opacity:0!important;pointer-events:none!important}
.services{grid-area:srv;align-self:start;margin-bottom:0;max-width:none;text-wrap:balance}

@media (max-width:760px){
  .ccap span{white-space:normal}
}

/* hide section eyebrows */
.eyerow{display:none!important}
.footer .h2 .it{color:#C7C49B}
.cinvite{text-wrap:balance}
/* static quote */
.band .ml{overflow:visible}
html.js .band .ml b{transform:none!important}
/* reveals fire slightly early, no stagger delay */
.rv{transition-delay:0ms!important}

@media (max-width:760px){
  .footer .services{max-width:none}
}

/* footer spacing */
.footer{row-gap:clamp(30px,4.2vw,58px)}
.footer .cinvite{margin:20px 0 16px;align-self:start}
.footer .lines{margin:0;align-self:start}
.footer .services{margin:0}
.footer .bigmark{margin:clamp(20px,3vw,42px) 0 clamp(20px,3vw,34px)}

@media (max-width:760px){
  .footer{row-gap:clamp(22px,5vw,34px)}
}

/* explicit line breaks on desktop */
.footer .cinvite{max-width:none}

@media (max-width:900px){
  .footer .cinvite{max-width:38ch}
}

@media (prefers-reduced-motion:no-preference){
  a.gs{view-transition-name:gsmark}
}

/* ---------- SELECTED PRESS · SA TITLES ---------- */
.sasel{padding:clamp(48px,7vw,96px) var(--gut) clamp(40px,6vw,84px)}
.sastrips{width:min(100%,1180px);margin-inline:auto}
.sasel .eyerow{margin-bottom:clamp(22px,3vw,36px)}
.safeat{margin-bottom:clamp(34px,4.5vw,60px)}
.sastrips{display:flex;flex-direction:column;gap:clamp(22px,3vw,44px);margin-bottom:clamp(30px,4vw,56px)}
.sastrips .clip img{aspect-ratio:4/1;padding:clamp(10px,1.2vw,18px)}
.sagrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(18px,2.4vw,40px);row-gap:clamp(30px,3.6vw,58px);align-items:start;width:min(100%,1180px);margin-inline:auto}




@media (max-width:899px){
  .sagrid{grid-template-columns:1fr;row-gap:clamp(22px,7vw,36px)}
}

/* ---------- THE ARCHIVE ---------- */
.archintro{
  max-width:60ch;
  font-family:var(--serif);
  font-size:clamp(16px,1.55vw,21px);
  line-height:1.55;
  color:var(--soft);
  margin:clamp(18px,2vw,28px) var(--gut);
}
.archrub{padding:clamp(34px,4vw,64px) var(--gut) clamp(6px,1vw,14px)}
.archrub .ptable{margin:0;counter-reset:archn;display:grid;gap:clamp(28px,3.6vw,54px)}

@media (min-width:1000px){
  .archrub .ptable{
    grid-template-columns:repeat(2,minmax(0,1fr));
    column-gap:clamp(40px,6vw,110px);
    row-gap:clamp(34px,4.2vw,62px);
  }
}

.archrub .prow{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  grid-template-rows:auto auto;
  column-gap:clamp(16px,2.4vw,38px);
  padding:0;
  border-top:0;
  background:none;
  align-items:start;
}
.archrub .prow:hover{background:none}
.archrub .prow::before{
  counter-increment:archn;
  content:counter(archn,decimal-leading-zero);
  grid-column:1;
  grid-row:1/3;
  font-family:var(--serif);
  font-size:clamp(52px,6.6vw,98px);
  line-height:.74;
  color:var(--ink);
  opacity:.11;
  letter-spacing:-.03em;
}
.archrub .pt{
  grid-column:2;
  grid-row:1;
  font-family:var(--serif);
  font-size:clamp(23px,2.6vw,36px);
  line-height:1.06;
  color:var(--ink);
}
.archrub .pd{
  grid-column:2;
  grid-row:2;
  font-family:var(--mono);
  font-size:clamp(9px,.85vw,11px);
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--soft);
  line-height:1.85;
  margin-top:clamp(9px,1.1vw,15px);
  max-width:54ch;
  text-align:left;
}
.archrub .pt a{border-bottom:1px solid var(--line2);padding-bottom:2px}
.archrub .pt a:hover{border-bottom-color:var(--bronze)}

@media (max-width:640px){
  .archrub .prow{column-gap:clamp(12px,4vw,20px)}
  .archrub .prow::before{font-size:clamp(40px,13vw,60px)}
  .archrub .pt{font-size:clamp(20px,6vw,26px)}
}

.prow{
  display:grid;
  grid-template-columns:1fr auto;
  align-items:baseline;
  column-gap:clamp(18px,3vw,44px);
  padding:clamp(13px,1.6vw,20px) 0;
  border-top:1px solid var(--line2);
}
.pt{font-family:var(--serif);font-size:clamp(17px,1.7vw,24px);color:var(--ink);line-height:1.3}
.pd{
  font-family:var(--mono);
  font-size:clamp(9px,.85vw,11px);
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--soft);
  text-align:right;
  max-width:44ch;
}

@media (max-width:760px){
  .prow{grid-template-columns:1fr;row-gap:6px}
  .pd{text-align:left;max-width:none}
}

.prow{transition:background .3s ease}
.prow:hover{background:var(--bone)}
/* contacts */
.footer .lines{
  font-family:var(--mono);
  font-size:clamp(12px,1.15vw,14px);
  letter-spacing:.04em;
  line-height:2.9;
  margin:clamp(28px,4vw,42px) 0;
}

/* max width 1560px */
.band{margin-inline:min(0px, calc((1560px - 100vw) / 2))}
.band{padding-inline:calc(var(--gut) + max(0px, (100vw - 1560px) / 2))}

/* mobile */
@media (max-width:899px){
  .plates{display:block;padding:2vh var(--gut) 6vh}
  .plates .clip{width:100%;margin:0 0 clamp(22px,7vw,36px)}
  .plates .clip:last-child{margin-bottom:0}
  .plates.feat .featx{margin-top:clamp(4px,2vw,14px)}
}
