/* L Eclat Communication Limited — district notice wall stylesheet */

:root {
  --block: #F2EAE2;
  --eclat: #2A342E;
  --leaflet: #962E20;
  --prince: #1A2018;
  --stoop: #E4DCCE;
  --sign: #927F38;
  --inkstamp: #35423F;
  --line: #CBBFAE;
  --line-soft: #D9CEBE;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  padding: 0;
  font-size: 16px;
  font-family: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, "Times New Roman", serif;
  background-color: #F2EAE2;
  color: #2A342E;
  line-height: 1.65;
  overflow-x: hidden;
}

img {
  max-width: 100%;
}

a {
  color: #962E20;
}

h1, h2, h3, h4 {
  font-family: "Baskerville", "Iowan Old Style", Georgia, serif;
  color: #2A342E;
  line-height: 1.18;
  letter-spacing: 0.01em;
}

p {
  margin: 0 0 1em;
}

/* ============ LEAFLET NAV ============ */

.leafletrail {
  position: sticky;
  top: 0;
  z-index: 40;
  background-color: #1A2018;
  border-bottom: 4px solid #962E20;
  padding: 0;
}

.leafletrail-inner {
  max-width: 1180px;
  margin: 0 auto;
  padding: 10px 24px;
  display: flex;
  align-items: center;
  gap: 18px;
  flex-wrap: wrap;
}

.leafletrail-brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #F2EAE2;
  text-decoration: none;
  font-family: "Baskerville", Georgia, serif;
  font-size: 17px;
  font-weight: 700;
  letter-spacing: 0.02em;
  flex-shrink: 0;
}

.leafletrail-badge {
  display: inline-block;
  background-color: #962E20;
  color: #F2EAE2;
  padding: 6px 11px;
  border-radius: 3px;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.leafletrail-tabs {
  display: flex;
  align-items: flex-end;
  gap: 5px;
  margin-left: auto;
  padding-top: 4px;
}

.leafletrail-tab {
  display: inline-block;
  text-decoration: none;
  color: #F2EAE2;
  background-color: #2A342E;
  border: 1px solid #35423F;
  border-bottom: 3px solid #927F38;
  font-family: "Baskerville", Georgia, serif;
  font-size: 14px;
  letter-spacing: 0.05em;
  padding: 9px 14px;
  line-height: 1;
  transition: background-color 0.2s ease, border-color 0.2s ease;
}

.leafletrail-tab:hover,
.leafletrail-tab:focus {
  background-color: #962E20;
  border-bottom-color: #F2EAE2;
  outline: none;
}

.leafletrail-tab.is-t1 { width: 76px; text-align: center; }
.leafletrail-tab.is-t2 { width: 96px; text-align: center; }
.leafletrail-tab.is-t3 { width: 88px; text-align: center; }
.leafletrail-tab.is-t4 { width: 84px; text-align: center; }
.leafletrail-tab.is-t5 { width: 72px; text-align: center; }

.leafletrail-toggle {
  display: none;
  margin-left: auto;
  background-color: #962E20;
  color: #F2EAE2;
  border: 1px solid #F2EAE2;
  font-family: "Baskerville", Georgia, serif;
  font-size: 14px;
  letter-spacing: 0.08em;
  padding: 8px 14px;
  cursor: pointer;
}

/* ============ NOTICE WALL HERO ============ */

.noticewall {
  position: relative;
  max-width: 1180px;
  margin: 0 auto;
  padding: 54px 24px 0;
}

.noticewall-head {
  max-width: 760px;
  padding-bottom: 34px;
}

.noticewall-eyebrow {
  display: inline-block;
  font-size: 12px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: #962E20;
  border-left: 3px solid #927F38;
  padding-left: 10px;
  margin-bottom: 18px;
  font-family: "Baskerville", Georgia, serif;
  font-weight: 700;
}

.noticewall-title {
  font-size: 2.9rem;
  margin: 0 0 20px;
  max-width: 620px;
  color: #2A342E;
}

.noticewall-display {
  display: block;
  font-size: 5.2rem;
  letter-spacing: 0.06em;
  color: #962E20;
  line-height: 0.95;
  margin-top: 8px;
  font-weight: 700;
}

.noticewall-lede {
  font-size: 1.06rem;
  max-width: 640px;
  color: #2A342E;
}

.noticewall-link {
  display: inline-block;
  margin-top: 6px;
  font-family: "Baskerville", Georgia, serif;
  font-weight: 700;
  font-size: 1rem;
  color: #962E20;
  text-decoration: none;
  border-bottom: 2px solid #962E20;
  padding-bottom: 2px;
}

.noticewall-link:hover {
  color: #1A2018;
  border-bottom-color: #1A2018;
}

.noticewall-bandwrap {
  position: relative;
  border-top: 3px solid #35423F;
  border-bottom: 3px solid #35423F;
  background-color: #E4DCCE;
}

.noticewall-band {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 24px;
  display: grid;
  grid-template-columns: 1.15fr 0.85fr 0.9fr;
  gap: 0;
  min-height: 268px;
  align-items: stretch;
}

.noticewall-rail {
  padding: 28px 26px 24px 0;
  border-right: 2px solid #CBBFAE;
  position: relative;
}

.noticewall-railbar {
  height: 12px;
  background-color: #1A2018;
  border-radius: 6px;
  margin-bottom: 18px;
  position: relative;
}

.noticewall-railbar::before,
.noticewall-railbar::after {
  content: "";
  position: absolute;
  top: -5px;
  width: 8px;
  height: 22px;
  background-color: #927F38;
  border-radius: 2px;
}

.noticewall-railbar::before { left: 12px; }
.noticewall-railbar::after { right: 14px; }

.noticewall-tagset {
  display: flex;
  flex-direction: column;
  gap: 9px;
}

.noticewall-tag {
  display: flex;
  align-items: center;
  gap: 10px;
}

.noticewall-tagcord {
  width: 2px;
  height: 14px;
  background-color: #35423F;
  margin-left: 16px;
}

.noticewall-tagcard {
  background-color: #F2EAE2;
  border: 1px solid #CBBFAE;
  border-left: 5px solid #962E20;
  padding: 7px 12px;
  font-size: 0.83rem;
  letter-spacing: 0.06em;
  color: #2A342E;
  font-family: "Baskerville", Georgia, serif;
  box-shadow: 2px 2px 0 #CBBFAE;
}

.noticewall-tag.is-g2 .noticewall-tagcard { margin-left: 18px; }
.noticewall-tag.is-g3 .noticewall-tagcard { margin-left: 6px; }
.noticewall-tag.is-g4 .noticewall-tagcard { margin-left: 26px; }

.noticewall-bucket {
  padding: 28px 26px;
  border-right: 2px solid #CBBFAE;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
}

.noticewall-buckethandle {
  width: 62px;
  height: 30px;
  border: 3px solid #35423F;
  border-bottom: none;
  border-radius: 34px 34px 0 0;
  margin-bottom: -2px;
}

.noticewall-bucketlip {
  width: 98px;
  height: 12px;
  background-color: #962E20;
  border-radius: 3px;
  z-index: 2;
}

.noticewall-bucketbody {
  width: 84px;
  height: 78px;
  background-color: #35423F;
  border: 2px solid #1A2018;
  border-top: none;
  clip-path: polygon(0 0, 100% 0, 88% 100%, 12% 100%);
  position: relative;
}

.noticewall-bucketbody::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 16px;
  width: 26px;
  height: 26px;
  margin-left: -13px;
  border: 2px solid #927F38;
  border-radius: 50%;
}

.noticewall-bucketbrush {
  width: 8px;
  height: 54px;
  background-color: #927F38;
  margin-top: 14px;
  border-radius: 2px 2px 0 0;
  position: relative;
}

.noticewall-bucketbrush::after {
  content: "";
  position: absolute;
  bottom: -12px;
  left: -4px;
  width: 16px;
  height: 12px;
  background-color: #962E20;
}

.noticewall-inktray {
  padding: 28px 0 24px 26px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.noticewall-traybox {
  background-color: #1A2018;
  border-radius: 4px;
  padding: 16px 16px 14px;
  border-bottom: 8px solid #35423F;
}

.noticewall-traygrid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 7px;
}

.noticewall-trayslot {
  height: 30px;
  background-color: #2A342E;
  border: 1px solid #35423F;
  border-radius: 2px;
}

.noticewall-trayslot.is-filled {
  background-color: #962E20;
}

.noticewall-stamp {
  margin-top: 16px;
  display: flex;
  align-items: center;
  gap: 10px;
}

.noticewall-stampbody {
  width: 52px;
  height: 30px;
  background-color: #962E20;
  border: 2px solid #1A2018;
  border-radius: 3px;
  position: relative;
}

.noticewall-stampbody::before {
  content: "";
  position: absolute;
  top: -10px;
  left: 16px;
  width: 18px;
  height: 10px;
  background-color: #927F38;
  border-radius: 2px 2px 0 0;
}

.noticewall-stamplabel {
  font-family: "Baskerville", Georgia, serif;
  font-size: 0.72rem;
  letter-spacing: 0.18em;
  color: #F2EAE2;
  text-transform: uppercase;
}

.noticewall-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  background-color: #962E20;
  color: #F2EAE2;
  text-decoration: none;
  margin-top: 22px;
  padding: 18px 28px;
  font-family: "Baskerville", Georgia, serif;
  font-size: 1.1rem;
  letter-spacing: 0.05em;
  border: none;
}

.noticewall-cta:hover,
.noticewall-cta:focus {
  background-color: #1A2018;
  color: #F2EAE2;
  outline: none;
}

.noticewall-cta-arrow {
  font-size: 1.4rem;
  line-height: 1;
}

/* ============ SECTION SCAFFOLD ============ */

.sectionwrap {
  max-width: 1180px;
  margin: 0 auto;
  padding: 66px 24px;
}

.sectionhead {
  display: flex;
  align-items: baseline;
  gap: 18px;
  margin-bottom: 12px;
}

.sectionhead-rule {
  flex: 1;
  height: 2px;
  background-color: #CBBFAE;
}

.sectionhead-kicker {
  font-family: "Baskerville", Georgia, serif;
  font-size: 12px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: #927F38;
  font-weight: 700;
  white-space: nowrap;
}

.sectionhead-title {
  font-size: 2.05rem;
  margin: 0 0 14px;
}

.sectionintro {
  max-width: 720px;
  margin-bottom: 38px;
  font-size: 1.02rem;
}

/* ============ SHOP TAG ROWS ============ */

.shoptagrow {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 26px;
  padding: 10px 0 6px;
}

.shoptagrow-sheet {
  position: relative;
  background-color: #E4DCCE;
  border: 1px solid #CBBFAE;
  border-left: 6px solid #962E20;
  padding: 24px 26px 20px;
  box-shadow: 4px 4px 0 #D9CEBE;
  max-width: 82%;
}

.shoptagrow-sheet.is-r1 { margin-left: 0; }
.shoptagrow-sheet.is-r2 { margin-left: 13%; max-width: 78%; }
.shoptagrow-sheet.is-r3 { margin-left: 4%; max-width: 86%; }
.shoptagrow-sheet.is-r4 { margin-left: 18%; max-width: 76%; }
.shoptagrow-sheet.is-r5 { margin-left: 2%; max-width: 80%; }
.shoptagrow-sheet.is-r6 { margin-left: 11%; max-width: 84%; }

.shoptagrow-mark {
  display: inline-block;
  font-family: "Baskerville", Georgia, serif;
  font-size: 11px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: #F2EAE2;
  background-color: #35423F;
  padding: 3px 8px;
  border-radius: 2px;
  margin-bottom: 8px;
}

.shoptagrow-name {
  margin: 0 0 8px;
  font-size: 1.32rem;
  color: #962E20;
}

.shoptagrow-text {
  margin: 0;
  font-size: 0.97rem;
  color: #2A342E;
}

.shoptagrow-more {
  display: inline-block;
  margin-top: 10px;
  font-family: "Baskerville", Georgia, serif;
  font-size: 0.86rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  color: #962E20;
  text-decoration: none;
  border-bottom: 1px solid #962E20;
}

.shoptagrow-more:hover {
  color: #1A2018;
  border-bottom-color: #1A2018;
}

.shoptagrow-stamp {
  position: absolute;
  font-family: "Baskerville", Georgia, serif;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #35423F;
  border: 2px solid #35423F;
  border-radius: 3px;
  padding: 2px 7px;
}

.shoptagrow-stamp.is-a {
  top: 14px;
  right: 16px;
  font-size: 10px;
  transform: rotate(-5deg);
}

.shoptagrow-stamp.is-b {
  bottom: 10px;
  right: 34px;
  font-size: 13px;
  transform: rotate(3deg);
  border-color: #927F38;
  color: #927F38;
}

/* ============ PASTE BUCKET BAND ============ */

.pastebucket {
  background-color: #1A2018;
  border-top: 4px solid #927F38;
  border-bottom: 4px solid #927F38;
}

.pastebucket-inner {
  max-width: 1180px;
  margin: 0 auto;
  padding: 22px 24px;
  display: flex;
  align-items: center;
  gap: 24px;
}

.pastebucket-rim {
  flex-shrink: 0;
  width: 54px;
  height: 44px;
  position: relative;
}

.pastebucket-rim::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 54px;
  height: 11px;
  background-color: #962E20;
  border-radius: 6px;
}

.pastebucket-rim::after {
  content: "";
  position: absolute;
  top: 10px;
  left: 7px;
  width: 40px;
  height: 34px;
  background-color: #35423F;
  clip-path: polygon(0 0, 100% 0, 88% 100%, 12% 100%);
}

.pastebucket-text {
  color: #F2EAE2;
  font-family: "Baskerville", Georgia, serif;
  font-size: 1.04rem;
  margin: 0;
  letter-spacing: 0.01em;
}

.pastebucket-text strong {
  color: #F2EAE2;
  border-bottom: 2px solid #962E20;
}

/* ============ EDITORIAL BLOCKS ============ */

.proseblock {
  max-width: 780px;
}

.proseblock h3 {
  font-size: 1.35rem;
  margin: 28px 0 10px;
  color: #962E20;
}

.proseblock p {
  font-size: 1rem;
}

.splitnote {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 34px;
  align-items: start;
}

.splitnote h3 {
  margin-top: 0;
}

.quoteblock {
  background-color: #E4DCCE;
  border-top: 4px solid #962E20;
  border-bottom: 1px solid #CBBFAE;
  padding: 28px 30px;
}

.quoteblock p {
  font-family: "Baskerville", Georgia, serif;
  font-size: 1.22rem;
  line-height: 1.5;
  color: #2A342E;
  margin: 0 0 12px;
}

.quoteblock cite {
  font-style: normal;
  font-size: 0.86rem;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #927F38;
}

.flowlist {
  list-style: none;
  margin: 0;
  padding: 0;
  counter-reset: flowstep;
}

.flowlist li {
  position: relative;
  padding: 18px 0 18px 62px;
  border-bottom: 1px solid #CBBFAE;
  font-size: 1rem;
}

.flowlist li::before {
  counter-increment: flowstep;
  content: "0" counter(flowstep);
  position: absolute;
  left: 0;
  top: 16px;
  font-family: "Baskerville", Georgia, serif;
  font-size: 1.5rem;
  color: #927F38;
  font-weight: 700;
}

.flowlist li strong {
  display: block;
  font-family: "Baskerville", Georgia, serif;
  font-size: 1.08rem;
  color: #2A342E;
  margin-bottom: 2px;
}

/* ============ SERVICE SHEETS (services page) ============ */

.servicegrid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 26px;
}

.servicegrid-item {
  background-color: #E4DCCE;
  border: 1px solid #CBBFAE;
  border-top: 5px solid #962E20;
  padding: 26px 26px 22px;
}

.servicegrid-item h3 {
  font-size: 1.3rem;
  margin: 0 0 10px;
  color: #962E20;
}

.servicegrid-item p {
  font-size: 0.97rem;
}

.servicegrid-note {
  font-family: "Baskerville", Georgia, serif;
  font-size: 0.78rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #927F38;
  margin-top: 14px;
  display: block;
}

/* ============ CONTACT ============ */

.contactgrid {
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  gap: 36px;
  align-items: start;
}

.contactpanel {
  background-color: #E4DCCE;
  border: 1px solid #CBBFAE;
  padding: 28px 28px 24px;
}

.contactpanel h3 {
  margin-top: 0;
  font-size: 1.22rem;
  color: #962E20;
}

.contactlist {
  list-style: none;
  margin: 0;
  padding: 0;
}

.contactlist li {
  padding: 12px 0;
  border-bottom: 1px solid #CBBFAE;
  font-size: 0.97rem;
}

.contactlist li:last-child {
  border-bottom: none;
}

.contactlist-label {
  display: block;
  font-family: "Baskerville", Georgia, serif;
  font-size: 11px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #927F38;
  margin-bottom: 3px;
}

.formfield {
  margin-bottom: 18px;
}

.formfield label {
  display: block;
  font-family: "Baskerville", Georgia, serif;
  font-size: 12px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #2A342E;
  margin-bottom: 6px;
  font-weight: 700;
}

.formfield input,
.formfield textarea {
  min-height: 44px;
  resize: vertical;
  width: 100%;
  background-color: #F2EAE2;
  border: 1px solid #CBBFAE;
  border-left: 4px solid #962E20;
  color: #2A342E;
  font-family: "Iowan Old Style", Georgia, serif;
  font-size: 1rem;
  padding: 11px 13px;
  border-radius: 0;
}

.formfield input:focus,
.formfield textarea:focus {
  outline: 2px solid #927F38;
  outline-offset: 1px;
}

.formsubmit {
  display: inline-block;
  background-color: #962E20;
  color: #F2EAE2;
  font-family: "Baskerville", Georgia, serif;
  font-size: 1rem;
  letter-spacing: 0.08em;
  border: none;
  padding: 14px 30px;
  cursor: pointer;
}

.formsubmit:hover,
.formsubmit:focus {
  background-color: #1A2018;
  outline: none;
}

.formnote {
  margin-top: 14px;
  font-size: 0.86rem;
  color: #35423F;
}

.faqitem {
  border-bottom: 1px solid #CBBFAE;
  padding: 0;
}

.faqitem summary {
  cursor: pointer;
  padding: 16px 0;
  font-family: "Baskerville", Georgia, serif;
  font-size: 1.06rem;
  color: #2A342E;
  list-style: none;
}

.faqitem summary::-webkit-details-marker {
  display: none;
}

.faqitem summary::before {
  content: "+";
  display: inline-block;
  width: 22px;
  color: #962E20;
  font-weight: 700;
}

.faqitem[open] summary::before {
  content: "-";
}

.faqitem p {
  padding: 0 0 16px 22px;
  margin: 0;
  font-size: 0.96rem;
}

/* ============ INK TRAY FOOTER ============ */

.inktray {
  background-color: #1A2018;
  color: #F2EAE2;
  margin-top: 30px;
  border-top: 4px solid #962E20;
}

.inktray-inner {
  max-width: 1180px;
  margin: 0 auto;
  padding: 46px 24px 30px;
  display: grid;
  grid-template-columns: 1.3fr 0.7fr 0.7fr;
  gap: 36px;
}

.inktray-board {
  position: relative;
  padding-left: 26px;
  border-left: 3px solid #927F38;
}

.inktray-brand {
  font-family: "Baskerville", Georgia, serif;
  font-size: 1.25rem;
  color: #F2EAE2;
  margin: 0 0 12px;
  letter-spacing: 0.02em;
}

.inktray-blurb {
  font-size: 0.93rem;
  color: #F2EAE2;
  max-width: 400px;
  margin: 0 0 16px;
}

.inktray-cutter {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 18px;
}

.inktray-cutterbase {
  width: 84px;
  height: 12px;
  background-color: #35423F;
  border-radius: 2px;
  position: relative;
}

.inktray-cutterbase::after {
  content: "";
  position: absolute;
  right: -12px;
  top: -14px;
  width: 14px;
  height: 26px;
  background-color: #927F38;
  border-radius: 2px;
}

.inktray-cutterslot {
  width: 66px;
  height: 3px;
  background-color: #962E20;
}

.inktray-head {
  font-family: "Baskerville", Georgia, serif;
  font-size: 12px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #927F38;
  margin: 0 0 12px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.inktray-headstamp {
  display: inline-block;
  width: 14px;
  height: 14px;
  border: 2px solid #962E20;
  border-radius: 2px;
}

.inktray-links {
  display: flex;
  flex-direction: column;
  gap: 7px;
}

.inktray-links a {
  color: #F2EAE2;
  text-decoration: none;
  font-size: 0.95rem;
  width: fit-content;
  border-bottom: 1px solid #1A2018;
}

.inktray-links a:hover,
.inktray-links a:focus {
  border-bottom-color: #F2EAE2;
  color: #F2EAE2;
  outline: none;
}

.inktray-strip {
  border-top: 1px solid #35423F;
}

.inktray-stripinner {
  max-width: 1180px;
  margin: 0 auto;
  padding: 18px 24px 24px;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 28px;
  align-items: center;
  font-size: 0.85rem;
  color: #F2EAE2;
}

.inktray-stripinner a {
  color: #F2EAE2;
  text-decoration: none;
  border-bottom: 1px solid #927F38;
}

.inktray-stripinner a:hover {
  border-bottom-color: #F2EAE2;
}

.inktray-yearstamp {
  display: inline-block;
  border: 1px solid #962E20;
  color: #F2EAE2;
  font-family: "Baskerville", Georgia, serif;
  font-size: 11px;
  letter-spacing: 0.14em;
  padding: 2px 7px;
  border-radius: 2px;
}

.inktray-sep {
  color: #927F38;
}

/* ============ UTILITIES ============ */

.pagebanner {
  background-color: #E4DCCE;
  border-top: 3px solid #35423F;
  border-bottom: 3px solid #35423F;
}

.pagebanner-inner {
  max-width: 1180px;
  margin: 0 auto;
  padding: 46px 24px 40px;
}

.pagebanner-eyebrow {
  font-family: "Baskerville", Georgia, serif;
  font-size: 12px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: #962E20;
  margin: 0 0 10px;
  font-weight: 700;
}

.pagebanner-title {
  font-size: 2.6rem;
  margin: 0 0 14px;
}

.pagebanner-text {
  max-width: 680px;
  margin: 0;
  font-size: 1.02rem;
}

.ctaband {
  background-color: #962E20;
  border-top: 4px solid #1A2018;
}

.ctaband-inner {
  max-width: 1180px;
  margin: 0 auto;
  padding: 40px 24px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}

.ctaband-text {
  color: #F2EAE2;
  font-family: "Baskerville", Georgia, serif;
  font-size: 1.35rem;
  margin: 0;
  max-width: 640px;
}

.ctaband-link {
  display: inline-block;
  background-color: #F2EAE2;
  color: #1A2018;
  text-decoration: none;
  font-family: "Baskerville", Georgia, serif;
  font-size: 1rem;
  letter-spacing: 0.05em;
  padding: 14px 26px;
  border: 2px solid #F2EAE2;
}

.ctaband-link:hover,
.ctaband-link:focus {
  background-color: #1A2018;
  color: #F2EAE2;
  border-color: #1A2018;
}

.js-ready .reveal {
  transform: translateY(18px);
  transition: transform 0.55s ease, border-color 0.3s ease;
}

.js-ready .reveal.is-shown {
  transform: translateY(0);
}

/* ============ RESPONSIVE ============ */

@media (max-width: 900px) {
  .noticewall-band {
    grid-template-columns: 1fr 1fr;
    min-height: 240px;
    column-gap: 0;
    align-items: start;
    row-gap: 0;
    padding-bottom: 6px;
  }
  .noticewall-rail {
    border-right: 2px solid #CBBFAE;
    margin-right: 12px;
  }
  .noticewall-bucket {
    border-right: none;
    flex-direction: row-reverse;
    gap: 22px;
    padding: 20px 12px;
    justify-content: center;
    align-items: center;
  }
  .noticewall-traybox {
    max-width: 300px;
  }
  .splitnote {
    grid-template-columns: 1fr;
  }
  .contactgrid {
    grid-template-columns: 1fr;
  }
  .servicegrid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .leafletrail-tabs {
    display: none;
    width: 100%;
    flex-direction: column;
    align-items: stretch;
    gap: 6px;
    margin-top: 6px;
  }
  .leafletrail-tabs.is-open {
    display: flex;
  }
  .leafletrail-tab,
  .leafletrail-tab.is-t1,
  .leafletrail-tab.is-t2,
  .leafletrail-tab.is-t3,
  .leafletrail-tab.is-t4,
  .leafletrail-tab.is-t5 {
    width: 100%;
    text-align: left;
    border-bottom-width: 1px;
    border-left: 4px solid #927F38;
  }
  .leafletrail-toggle {
    display: inline-block;
  }
  .noticewall {
    padding-top: 34px;
  }
  .noticewall-title {
    font-size: 2.1rem;
  }
  .noticewall-display {
    font-size: 3.4rem;
  }
  .noticewall-band {
    grid-template-columns: 1fr;
    min-height: auto;
    align-items: stretch;
    row-gap: 4px;
    padding-bottom: 0;
  }
  .noticewall-bucket {
    border-right: none;
    border-bottom: 2px solid #CBBFAE;
    flex-direction: row-reverse;
    gap: 26px;
    padding: 24px 0;
    align-items: flex-end;
    justify-content: flex-start;
  }
  .shoptagrow-sheet,
  .shoptagrow-sheet.is-r2,
  .shoptagrow-sheet.is-r3,
  .shoptagrow-sheet.is-r4,
  .shoptagrow-sheet.is-r5,
  .shoptagrow-sheet.is-r6 {
    margin-left: 0;
    max-width: 100%;
  }
  .inktray-inner {
    grid-template-columns: 1fr;
  }
  .inktray-board {
    grid-column: 1 / -1;
  }
  .sectionhead {
    flex-wrap: wrap;
  }
  .sectionhead-title {
    font-size: 1.65rem;
  }
  .pagebanner-title {
    font-size: 2rem;
  }
  .pastebucket-inner {
    align-items: flex-start;
  }
}

@media (max-width: 700px) {
  .noticewall-rail {
    border-right: none;
    border-bottom: 2px solid #CBBFAE;
    padding-right: 0;
    padding-bottom: 20px;
    margin-bottom: 4px;
    margin-right: 0;
    max-width: 100%;
    align-self: stretch;
  }
}

@media (prefers-reduced-motion: reduce) {
  .js-ready .reveal {
    transform: none;
    transition: none;
  }
  html {
    scroll-behavior: auto;
  }
}
