/* ============================================================================
   NOVUS PRESS WORKS — house stylesheet
   Light, warm, typographic. Built to sit on a shelf beside a Big Five site.
   Two families only: EB Garamond (display + long-form) and Inter (UI + data).
   ========================================================================== */

:root{
  /* --- paper ------------------------------------------------------------ */
  --paper:      #FFFCF5;   /* page ground — warm, never blue-white          */
  --deckle:     #F6F0E2;   /* section shift, footer, quiet panels           */
  --deckle-2:   #EFE7D5;   /* deepest paper tone; use sparingly             */
  --rule:       #E2D9C6;   /* hairline. The letterpress grid lives here.    */
  --rule-soft:  #F0E9DA;

  /* --- ink -------------------------------------------------------------- */
  --ink:        #22201C;   /* headlines, primary text                        */
  --graphite:   #4A474A;   /* inherited from the NOM mark — secondary ink   */
  --muted:      #6B6459;   /* captions, meta, labels                         */
  --faint:      #938D82;

  /* --- lamplight -------------------------------------------------------- */
  --brass:      #7A3A2C;   /* accent, links, rules of consequence            */
  --brass-deep: #5E2C21;
  --lamp:       #95493A;   /* the lit window. Small doses only.              */
  --brass-wash: #F6EDE7;

  /* --- imprints --------------------------------------------------------- */
  --eald:       #2C3C4C;   /* fiction — dusk blue, drawn from Caretaker      */
  --trewe:      #6E4F26;   /* non-fiction — bronze                           */
  --kinder:     #55704E;   /* children's — sage, drawn from its own mark     */

  /* --- type ------------------------------------------------------------- */
  --serif: 'EB Garamond', Garamond, 'Iowan Old Style', 'Times New Roman', serif;
  --sans:  'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif;

  --wrap: 1180px;
  --gut: 32px;
}

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

html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; }

body{
  margin:0; overflow-x:hidden;
  background:var(--paper);
  color:var(--ink);
  font-family:var(--serif);
  font-size:19px;
  line-height:1.62;
  font-feature-settings:"kern" 1,"liga" 1,"onum" 1;
  -webkit-font-smoothing:antialiased;
}

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

.wrap{ width:100%; max-width:var(--wrap); margin:0 auto; padding:0 var(--gut); }
.narrow{ max-width:760px; }

/* ---------------------------------------------------------------- type --- */
h1,h2,h3,h4{ font-family:var(--serif); font-weight:500; margin:0; letter-spacing:-0.005em; }
h1{ font-size:clamp(38px,6.2vw,82px); line-height:1.05; letter-spacing:-0.018em; }
h2{ font-size:clamp(28px,3.6vw,46px); line-height:1.14; letter-spacing:-0.012em; }
h3{ font-size:26px; line-height:1.24; }
h4{ font-size:21px; line-height:1.3; }
p{ margin:0 0 1.05em; }
p:last-child{ margin-bottom:0; }

.eyebrow{
  font-family:var(--sans); font-size:11px; font-weight:500;
  letter-spacing:.19em; text-transform:uppercase; color:var(--muted);
  margin:0 0 18px;
}
.eyebrow.brass{ color:var(--brass-deep); }

.lede{ font-size:clamp(20px,2.05vw,25px); line-height:1.55; color:#33302B; }
.small{ font-family:var(--sans); font-size:13.5px; line-height:1.6; color:var(--muted); }
.meta{
  font-family:var(--sans); font-size:11.5px; font-weight:500;
  letter-spacing:.13em; text-transform:uppercase; color:var(--muted);
}

.rule{ height:1px; background:var(--rule); border:0; margin:0; }
.rule-brass{ height:1px; background:var(--brass); opacity:.5; border:0; }

/* ------------------------------------------------------------- buttons --- */
.btn{
  display:inline-flex; align-items:center; gap:10px;
  font-family:var(--sans); font-size:12.5px; font-weight:500;
  letter-spacing:.12em; text-transform:uppercase; text-decoration:none;
  padding:15px 26px; border:1px solid var(--ink); background:var(--ink); color:var(--paper);
  transition:background .18s ease,color .18s ease,border-color .18s ease;
}
.btn:hover{ background:var(--brass-deep); border-color:var(--brass-deep); }
.btn--ghost{ background:transparent; color:var(--ink); border-color:var(--rule); }
.btn--ghost:hover{ background:transparent; color:var(--brass-deep); border-color:var(--brass); }
.btn-row{ display:flex; gap:14px; flex-wrap:wrap; }

.link{
  font-family:var(--sans); font-size:12.5px; font-weight:500;
  letter-spacing:.12em; text-transform:uppercase; text-decoration:none;
  color:var(--ink); border-bottom:1px solid var(--brass); padding-bottom:3px;
  display:inline-block; transition:color .18s ease;
}
.link:hover{ color:var(--brass-deep); }

/* -------------------------------------------------------------- header --- */
.masthead{
  position:sticky; top:0; z-index:50;
  background:rgba(251,249,244,.93); backdrop-filter:saturate(180%) blur(12px);
  border-bottom:1px solid var(--rule);
}
.masthead__in{
  display:flex; align-items:center; justify-content:space-between;
  gap:28px; height:78px;
}
.masthead__mark{ display:flex; align-items:center; gap:14px; text-decoration:none; }
.masthead__mark img{ width:46px; height:46px; }
.masthead__wm{ line-height:1; }
.masthead__wm .n{ display:block; font-size:20px; letter-spacing:.1em; }
.masthead__wm .p{
  display:block; font-family:var(--sans); font-size:8.5px; font-weight:500;
  letter-spacing:.30em; text-transform:uppercase; color:var(--muted); margin-top:4px;
}
.nav{ display:flex; align-items:center; gap:30px; }
.nav a{
  font-family:var(--sans); font-size:12.5px; font-weight:500;
  letter-spacing:.10em; text-transform:uppercase; text-decoration:none;
  color:var(--graphite); padding:6px 0; border-bottom:1px solid transparent;
  transition:color .16s ease,border-color .16s ease;
}
.nav a:hover{ color:var(--ink); border-bottom-color:var(--brass); }
.nav a[aria-current="page"]{ color:var(--ink); border-bottom-color:var(--ink); }
.nav .btn{ padding:11px 18px; font-size:11.5px; border-bottom:1px solid var(--ink); }
.nav .btn:hover{ border-bottom-color:var(--brass-deep); }
.navtoggle{ display:none; }

/* ------------------------------------------------------------ sections --- */
.sec{ padding:96px 0; }
.sec--tight{ padding:64px 0; }
.sec--deckle{ background:var(--deckle); }
.sec--line{ border-top:1px solid var(--rule); }

.sechead{ display:flex; align-items:flex-end; justify-content:space-between; gap:32px; margin-bottom:44px; }
.sechead h2{ max-width:22ch; }

/* ---------------------------------------------------------------- hero --- */
.brk{ display:block; }
.hero{ padding:104px 0 84px; position:relative; overflow:hidden; }
.hero__grid{ display:grid; grid-template-columns:1.15fr .85fr; gap:72px; align-items:center; }
.hero h1{ margin-bottom:26px; }
.hero h1 em{ font-style:italic; color:var(--brass-deep); }
.hero__sub{ max-width:46ch; }
.hero__cta{ margin-top:36px; }
.hero__stack{ position:relative; height:430px; }
.hero__stack img{
  position:absolute; border-radius:2px;
  box-shadow:0 1px 2px rgba(25,23,20,.10), 0 18px 44px -14px rgba(25,23,20,.30);
}
.hero__stack .b1{ width:47%; left:0;    bottom:34px; transform:rotate(-6deg); z-index:1; }
.hero__stack .b2{ width:52%; left:24.5%; bottom:0;    z-index:3; }
.hero__stack .b3{ width:47%; right:0;    bottom:34px; transform:rotate(6deg); z-index:1; }

.kicker-row{
  display:flex; gap:26px; flex-wrap:wrap; align-items:center;
  padding-top:26px; margin-top:34px; border-top:1px solid var(--rule);
}
.kicker-row span{ font-family:var(--sans); font-size:11.5px; letter-spacing:.13em;
  text-transform:uppercase; color:var(--muted); }

/* --------------------------------------------------------- two engines --- */
.engines{ display:grid; grid-template-columns:1fr 1fr; gap:1px; background:var(--rule); border:1px solid var(--rule); }
.engine{ background:var(--paper); padding:52px 46px; }
.engine__no{
  font-family:var(--sans); font-size:11px; font-weight:500; letter-spacing:.2em;
  color:var(--brass-deep); text-transform:uppercase; margin-bottom:20px;
}
.engine h3{ margin-bottom:14px; }
.engine p{ font-size:18px; color:#3A3630; }
.engine .link{ margin-top:24px; }

/* --------------------------------------------------------------- books --- */
.books{ display:grid; grid-template-columns:repeat(auto-fill,minmax(212px,1fr)); gap:48px 34px; }
.book{ text-decoration:none; display:block; }
.book__cov{
  position:relative; height:290px; margin-bottom:20px;
  display:flex; align-items:flex-end; justify-content:flex-start;
}
.book__cov img{
  max-height:100%; width:auto; max-width:100%;
  outline:1px solid rgba(25,23,20,.12); outline-offset:-1px;
  box-shadow:0 1px 2px rgba(25,23,20,.10), 0 14px 30px -12px rgba(25,23,20,.26);
  transition:transform .22s ease, box-shadow .22s ease;
}
.book:hover .book__cov img{ transform:translateY(-5px);
  box-shadow:0 1px 2px rgba(25,23,20,.12), 0 24px 44px -14px rgba(25,23,20,.34); }
.book__imp{
  display:inline-flex; align-items:center; gap:7px;
  font-family:var(--sans); font-size:10px; font-weight:500; letter-spacing:.15em;
  text-transform:uppercase; color:var(--muted); margin-bottom:8px;
}
.book__imp::before{ content:""; width:7px; height:7px; border-radius:50%; background:var(--graphite); }
.book__imp.eald::before{ background:var(--eald); }
.book__imp.trewe::before{ background:var(--trewe); }
.book__imp.kinder::before{ background:var(--kinder); }
.book h4{ margin-bottom:5px; }
.book__by{ font-size:16.5px; color:var(--muted); font-style:italic; }
.book__fmt{ font-family:var(--sans); font-size:11.5px; color:var(--faint); margin-top:9px; letter-spacing:.04em; }
.book__flag{
  position:absolute; top:0; left:0; z-index:2;
  pointer-events:none;
  font-family:var(--sans); font-size:9px; font-weight:600;
  letter-spacing:.14em; text-transform:uppercase; color:var(--paper);
  background:var(--ink); padding:6px 10px;
}

/* ------------------------------------------------------------ imprints --- */
.imps{ display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--rule); border:1px solid var(--rule); }
.imp{ background:var(--paper); padding:44px 34px 40px; text-align:center; text-decoration:none; display:block;
      transition:background .2s ease; }
.imp:hover{ background:#FDFCF9; }
.imp__art{ height:132px; display:flex; align-items:center; justify-content:center; margin-bottom:16px; }
.imp__art img{ max-height:100%; max-width:210px; width:auto; }
.imp__name{ font-family:var(--serif); font-size:22px; margin-bottom:14px; }
.imp__name.eald{ color:var(--eald); }
.imp__name.trewe{ color:var(--trewe); }
.imp__name.kinder{ color:var(--kinder); }
.imp p{ font-size:17px; color:#3A3630; max-width:32ch; margin:0 auto; }
.imp__bar{ height:3px; width:52px; margin:0 auto 22px; }
.imp__bar.eald{ background:var(--eald); }
.imp__bar.trewe{ background:var(--trewe); }
.imp__bar.kinder{ background:var(--kinder); }

/* -------------------------------------------------------------- quotes --- */
.quote{ text-align:center; max-width:840px; margin:0 auto; }
.quote blockquote{ margin:0 0 22px; font-size:clamp(24px,2.9vw,36px); line-height:1.34; font-style:italic; }
.quote cite{ font-family:var(--sans); font-size:12px; font-style:normal; letter-spacing:.15em;
  text-transform:uppercase; color:var(--muted); }

.press{ display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:1px; background:var(--rule);
        border-top:1px solid var(--rule); border-bottom:1px solid var(--rule); }
.press div{ background:var(--paper); padding:30px 24px; text-align:center; }
.press strong{ display:block; font-family:var(--serif); font-size:30px; font-weight:500; margin-bottom:6px; }
.press span{ font-family:var(--sans); font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--muted); }

/* --------------------------------------------------------------- lists --- */
.steps{ counter-reset:s; display:grid; gap:1px; background:var(--rule); border:1px solid var(--rule); }
.step{ background:var(--paper); padding:34px 38px; display:grid; grid-template-columns:64px 1fr; gap:26px; align-items:start; }
.step::before{
  counter-increment:s; content:counter(s,decimal-leading-zero);
  font-family:var(--sans); font-size:12px; font-weight:500; letter-spacing:.14em;
  color:var(--brass-deep); padding-top:7px;
}
.step h4{ margin-bottom:7px; }
.step p{ font-size:17.5px; color:#3A3630; margin:0; }

.plain{ list-style:none; padding:0; margin:0; }
.plain li{ padding:15px 0; border-bottom:1px solid var(--rule-soft); font-size:18px; }
.plain li:first-child{ padding-top:0; }
.check li{ padding-left:28px; position:relative; }
.check li::before{ content:"—"; position:absolute; left:0; color:var(--brass); }

.cols{ display:grid; grid-template-columns:1fr 1fr; gap:56px; }
.cols-3{ display:grid; grid-template-columns:repeat(3,1fr); gap:44px; }

.panel{ background:var(--deckle); border:1px solid var(--rule); padding:44px 46px; }
.panel--brass{ background:var(--brass-wash); border-color:#E6D6B4; }

/* --------------------------------------------------------------- table --- */
/* horizontally scrollable on small screens */
.tablewrap{ overflow-x:auto; -webkit-overflow-scrolling:touch; }
.tablewrap table.data{ min-width:720px; }
table.data{ width:100%; border-collapse:collapse; font-family:var(--sans); font-size:14px; }
table.data th{
  text-align:left; font-size:10.5px; font-weight:600; letter-spacing:.15em; text-transform:uppercase;
  color:var(--muted); padding:0 14px 12px 0; border-bottom:1px solid var(--rule);
}
table.data td{ padding:15px 14px 15px 0; border-bottom:1px solid var(--rule-soft); vertical-align:top; }
table.data td:first-child{ font-family:var(--serif); font-size:18px; }

/* ------------------------------------------------------------- authors --- */
.people{ display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:1px;
         background:var(--rule); border:1px solid var(--rule); }
.person{ background:var(--paper); padding:40px 36px; }
.person h3{ margin-bottom:4px; }
.person .meta{ margin-bottom:16px; }
.person p{ font-size:17.5px; color:#3A3630; }

.person__portrait{ width:100%; height:auto; aspect-ratio:1/1; object-fit:cover; display:block;
                   margin-bottom:24px; filter:saturate(.92); }
.imprint__faces{ display:flex; gap:14px; margin:22px 0; align-items:center; }
.imprint__faces img{ width:64px; height:64px; flex:0 0 64px; object-fit:cover; border:1px solid var(--rule); }
.imprint__faces span{ font-family:var(--sans); font-size:12px; letter-spacing:.08em;
                      text-transform:uppercase; color:var(--muted); }

/* --------------------------------------------------------------- forms --- */
.form{ display:grid; gap:20px; }
.field label{
  display:block; font-family:var(--sans); font-size:11px; font-weight:500;
  letter-spacing:.14em; text-transform:uppercase; color:var(--muted); margin-bottom:8px;
}
.field input,.field select,.field textarea{
  width:100%; font-family:var(--serif); font-size:18px; color:var(--ink);
  background:var(--paper); border:1px solid var(--rule); padding:14px 16px; border-radius:0;
}
.field input:focus,.field select:focus,.field textarea:focus{ outline:none; border-color:var(--brass); }
.field textarea{ min-height:150px; resize:vertical; }
.two{ display:grid; grid-template-columns:1fr 1fr; gap:20px; }

/* -------------------------------------------------------------- footer --- */
.foot{ background:var(--deckle); border-top:1px solid var(--rule); padding:70px 0 34px; }
.foot__grid{ display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:44px; }
.foot h5{
  font-family:var(--sans); font-size:10.5px; font-weight:600; letter-spacing:.17em;
  text-transform:uppercase; color:var(--muted); margin:0 0 18px;
}
.foot ul{ list-style:none; margin:0; padding:0; }
.foot li{ margin-bottom:11px; }
.foot a{ font-size:17px; text-decoration:none; color:var(--graphite); }
.foot a:hover{ color:var(--brass-deep); }
.foot__mark{ display:flex; align-items:center; gap:14px; margin-bottom:18px; }
.foot__mark img{ width:56px; }
.foot__mark .n{ font-size:21px; letter-spacing:.09em; display:block; line-height:1; }
.foot__mark .p{ font-family:var(--sans); font-size:8.5px; letter-spacing:.3em; text-transform:uppercase;
  color:var(--muted); display:block; margin-top:5px; }
.foot__legal{
  margin-top:52px; padding-top:26px; border-top:1px solid var(--rule);
  display:flex; justify-content:space-between; gap:24px; flex-wrap:wrap;
  font-family:var(--sans); font-size:11.5px; color:var(--faint); letter-spacing:.04em;
}

/* --------------------------------------------------------------- misc ---- */
.pagehead{ padding:74px 0 56px; border-bottom:1px solid var(--rule); }
.pagehead h1{ font-size:clamp(40px,5vw,64px); max-width:18ch; }
.pagehead .lede{ margin-top:24px; max-width:62ch; }

.filters{ display:flex; gap:10px; flex-wrap:wrap; margin-bottom:44px; }
.filters button{
  font-family:var(--sans); font-size:11.5px; font-weight:500; letter-spacing:.12em;
  text-transform:uppercase; color:var(--graphite); background:transparent;
  border:1px solid var(--rule); padding:11px 18px; cursor:pointer;
  transition:all .16s ease;
}
.filters button:hover{ border-color:var(--brass); color:var(--brass-deep); }
.filters button.on{ background:var(--ink); border-color:var(--ink); color:var(--paper); }

.notice{ font-family:var(--sans); font-size:12.5px; color:var(--muted); }
.hide{ display:none !important; }

/* -------------------------------------------------------- responsive ----- */
@media (max-width:1000px){
  .hero__grid{ grid-template-columns:1fr; gap:52px; }
  .hero__stack{ height:340px; }
  .engines,.imps,.cols,.cols-3,.foot__grid,.two{ grid-template-columns:1fr; }
  .foot__grid{ gap:38px; }
  .cols,.cols-3{ gap:38px; }
  .nav{ display:none; }
  .navtoggle{
    display:inline-flex; font-family:var(--sans); font-size:12px; letter-spacing:.12em;
    text-transform:uppercase; background:none; border:1px solid var(--rule); padding:10px 16px; cursor:pointer;
  }
  .nav.open{
    display:flex; position:absolute; top:78px; left:0; right:0; flex-direction:column;
    align-items:flex-start; gap:0; background:var(--paper); border-bottom:1px solid var(--rule); padding:8px 32px 20px;
  }
  .nav.open a{ padding:14px 0; width:100%; border-bottom:1px solid var(--rule-soft); }
  .sec{ padding:68px 0; }
  .engine{ padding:38px 30px; }
  .step{ grid-template-columns:44px 1fr; padding:28px 24px; gap:16px; }
  :root{ --gut:22px; }
}
@media (max-width:760px){ .brk{ display:inline; } .brk::after{ content:" "; } }
@media (max-width:620px){
  body{ font-size:18px; }
  .pagehead h1{ font-size:clamp(34px,8vw,64px); }
  .books{ grid-template-columns:repeat(auto-fill,minmax(148px,1fr)); gap:34px 20px; }
  .book__cov{ height:210px; }
  .sechead{ flex-direction:column; align-items:flex-start; gap:16px; }
  .press{ grid-template-columns:1fr 1fr; }
}

@media print{
  .masthead,.foot,.btn-row{ display:none; }
  body{ background:#fff; font-size:11pt; }
}


/* ------------------------------------------------- homepage featured row --- */
@media (min-width:1080px){ .books--five{ grid-template-columns:repeat(5,1fr); gap:44px 26px; } }

/* --------------------------------------------------------- imprint block --- */
.impblock{ display:grid; grid-template-columns:.86fr 1.14fr; gap:64px; align-items:center; margin-bottom:56px; }
.impblock__mark{ text-align:center; padding:16px 0; }
.impblock__art{ height:220px; display:flex; align-items:center; justify-content:center; margin-bottom:20px; }
.impblock__art img{ max-height:100%; max-width:320px; width:auto; }
.impblock__mark span{ margin-top:10px;
  font-family:var(--sans); font-size:10.5px; letter-spacing:.16em; text-transform:uppercase;
  color:var(--faint); display:block;
}
@media (max-width:1000px){
  .impblock{ grid-template-columns:1fr; gap:36px; }
  .impblock__art{ height:170px; }
  .impblock__art img{ max-width:250px; }
}


/* ==========================================================================
   REGISTER 2026-08-15 - cream ground (#FFFCF5, from manhattanbookgroup.com),
   oxblood accent, dark footer, press photography. Layered over the house
   stylesheet so every page inherits it. Ruled by Jason 2026-08-15.
   ========================================================================== */

.masthead__cta{ display:inline-block; font-family:var(--sans); font-size:11.5px;
  letter-spacing:.15em; text-transform:uppercase; font-weight:500; padding:12px 22px;
  background:var(--brass); color:var(--paper); margin-left:22px; }
.masthead__cta:hover{ background:var(--brass-deep); color:var(--paper); }

.plate{ position:relative; margin:88px 0; }
.plate img{ width:100vw; margin-left:calc(50% - 50vw); max-width:none;
  height:56vh; min-height:340px; object-fit:cover; display:block; }
.plate__q{ position:absolute; left:0; right:0; bottom:0; padding:48px 54px;
  color:#FFFCF5; background:linear-gradient(180deg,transparent,rgba(28,25,21,.84)); }
.plate__q span{ font-size:clamp(23px,2.9vw,40px); font-style:italic; line-height:1.24;
  display:block; max-width:26ch; }
.plate__q cite{ display:block; font-style:normal; font-family:var(--sans); font-size:11px;
  letter-spacing:.18em; text-transform:uppercase; color:#CDC3B2; margin-top:18px; }

.pagehead--photo{ position:relative; overflow:hidden; padding:0; }
.pagehead--photo>img{ width:100%; height:44vh; min-height:280px; object-fit:cover; display:block; }
.pagehead--photo .in{ position:absolute; inset:0; display:flex; flex-direction:column;
  justify-content:flex-end; padding:0 0 44px; background:linear-gradient(180deg,
  rgba(28,25,21,.58) 0%, rgba(28,25,21,.46) 38%, rgba(28,25,21,.93) 100%); }
.pagehead--photo .in>div{ max-width:var(--wrap); margin:0 auto; padding:0 var(--gut); width:100%; }
.pagehead--photo h1{ color:#FFFCF5; }
.pagehead--photo .eyebrow{ color:#D9A996; }
.pagehead--photo .lede{ color:#DCD3C2; }

.imp__photo{ width:100%; aspect-ratio:4/3; object-fit:cover; display:block;
  margin-bottom:26px; border:1px solid var(--rule); }
.impblock__photo{ width:100%; aspect-ratio:16/9; object-fit:cover; display:block;
  margin-bottom:30px; }
.person__portrait{ border:1px solid var(--rule); }

.foot{ background:#252422; color:#E6DFD2; border-top:0; }
.foot a{ color:#E6DFD2; }
.foot a:hover{ color:#D9A996; }
.foot h4,.foot .foot__h{ color:#9A9184; }
.foot p,.foot .small{ color:#B8B0A3; }
.foot__base,.foot__legal{ border-top:1px solid rgba(255,252,245,.16); color:#9A9184; }
.foot__mark img{ filter:invert(1) brightness(1.6); opacity:.9; }

.nav .btn{ background:var(--brass); color:var(--paper); border-color:var(--brass); }
.nav .btn:hover{ background:var(--brass-deep); color:var(--paper); }
.pagehead--photo .wrap{ padding:0; }

/* imprint blocks: the mark is the focal point, the photograph is ground */
.impblock__wrap{ position:relative; }
.impblock__photo{ margin-bottom:0; }
.medal{ position:relative; z-index:2; width:170px; height:170px; margin:-85px auto 26px;
  background:var(--paper); border:1px solid var(--rule); display:flex; align-items:center;
  justify-content:center; padding:20px; box-shadow:0 16px 34px -16px rgba(34,32,28,.42); }
.medal img{ max-width:100%; max-height:100%; width:auto; height:auto; }
@media(max-width:700px){ .medal{ width:132px;height:132px;margin:-66px auto 22px;padding:15px; } }

/* awards list, Rights & Press */
.sec ul.plain li{ padding:13px 0; border-bottom:1px solid var(--rule); }
.sec ul.plain li:last-child{ border-bottom:0; }
.sec ul.plain li strong{ font-weight:600; }

/* netlify-honeypot field — must never be visible to a human */
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* long-form legal prose — single column at a readable measure.
   ⛔ Do NOT use .cols here: it is a 2-column grid and scrambles reading order. */
.legal{ max-width:68ch; }
.legal h2{ font-size:clamp(23px,2.5vw,31px); margin:56px 0 4px; }
.legal h3{ font-size:19px; margin:30px 0 2px; }
.legal h2:first-of-type{ margin-top:40px; }
.legal .panel{ margin:34px 0; }
.legal ul.plain{ margin:6px 0 18px; }
.legal ul.plain li{ padding:11px 0; }
