:root {
  scrollbar-gutter: stable;
  --ink: #14242c;
  --paper: #f6f0e2;
  --white: #fffaf0;
  --gold: #dca52e;
  --rust: #ad4029;
  --sage: #849072;
  --line: rgba(20, 36, 44, .25);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
html:has(dialog[open]) { overflow: hidden; }
body {
  margin: 0;
  overflow-x: hidden;
  color: var(--ink);
  background: var(--paper);
  font-family: "DM Sans", Arial, sans-serif;
}
a { color: inherit; }
button, input, textarea { font: inherit; }
button { color: inherit; }

.utility-bar {
  min-height: 31px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  padding: 0 3vw;
  background: var(--ink);
  color: var(--paper);
  font-size: .63rem;
  font-weight: 700;
  letter-spacing: .13em;
}
.utility-bar > span:last-child { justify-self: end; }
.date-panel {
  grid-column: 1;
  justify-self: start;
  min-width: 245px;
  padding: 11px 15px;
  border: 1px solid var(--ink);
  background: var(--white);
}
.date-label {
  display: block;
  margin-bottom: 4px;
  color: var(--rust);
  font-size: .63rem;
  font-weight: 800;
  letter-spacing: .12em;
}
.date-panel > strong {
  display: block;
  font-family: "DM Serif Display", serif;
  font-size: 1.35rem;
  font-weight: 400;
}
.nameday-strip {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-top: 4px;
}
.nameday-button {
  border: 0;
  padding: 4px 0;
  background: transparent;
  color: var(--ink);
  font-size: .75rem;
  font-weight: 600;
  cursor: pointer;
}
.nameday-button strong { color: var(--rust); }
.nameday-button:hover strong { text-decoration: underline; text-underline-offset: 3px; }
.masthead {
  min-height: 124px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 20px;
  padding: 12px 3vw 5px;
}
.brand-lockup {
  grid-column: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(14px, 2vw, 28px);
}
.brand-symbol {
  justify-self: start;
  width: 66px;
  height: 66px;
  position: relative;
  display: block;
  border-radius: 50%;
  transition: transform .25s ease, filter .25s ease;
}
.brand-symbol img {
  width: 100%;
  height: 100%;
  display: block;
  border-radius: 50%;
  object-fit: cover;
}
.brand-symbol:hover {
  transform: translateY(-3px);
  filter: drop-shadow(0 0 10px rgba(220, 165, 46, .65));
}
.logo-whisper {
  width: max-content;
  position: absolute;
  left: calc(100% + 14px);
  top: 50%;
  padding: 7px 10px;
  opacity: 0;
  pointer-events: none;
  transform: translate(-5px, -50%);
  background: var(--ink);
  color: var(--paper);
  font-family: "DM Sans", sans-serif;
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .02em;
  transition: opacity .2s ease, transform .2s ease;
  z-index: 5;
}
.brand-symbol:hover .logo-whisper,
.brand-symbol:focus-visible .logo-whisper {
  opacity: 1;
  transform: translate(0, -50%);
}
.wordmark, .footer-logo {
  text-decoration: none;
  font-family: "DM Serif Display", Georgia, serif;
  letter-spacing: -.06em;
}
.wordmark { font-size: clamp(3.6rem, 7vw, 7.3rem); line-height: .8; }
.wordmark span, .footer-logo span { color: var(--rust); }
.mast-actions {
  grid-column: 3;
  justify-self: end;
  display: flex;
  align-items: center;
  gap: 10px;
}
.shop-link, .wish-link {
  padding: 11px 15px;
  border: 1px solid var(--ink);
  background: transparent;
  color: var(--ink);
  text-decoration: none;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .07em;
  cursor: pointer;
}
.wish-link {
  border-color: var(--rust);
  background: var(--rust);
  color: var(--white);
}
.shop-link:hover { background: var(--ink); color: var(--paper); }
.wish-link:hover { background: var(--gold); border-color: var(--gold); color: var(--ink); }
nav {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 0;
  padding: 0 3vw;
  border-block: 1px solid var(--ink);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  background: rgba(246, 240, 226, .96);
  position: sticky;
  top: 0;
  z-index: 20;
  max-width: 100vw;
}
nav a {
  min-width: 0;
  padding: 15px 7px;
  border-right: 1px solid var(--line);
  text-align: center;
  text-decoration: none;
}
nav a:first-child { border-left: 1px solid var(--line); }
nav a:hover { color: var(--rust); }

.front-page {
  display: grid;
  grid-template-columns: minmax(0, 2.15fr) minmax(280px, .85fr);
  gap: 34px;
  padding: 34px 3vw 58px;
  border-bottom: 1px solid var(--ink);
  align-items: start;
}
.lead-story {
  display: grid;
  grid-template-columns: minmax(330px, 1.15fr) minmax(290px, .85fr);
  gap: 31px;
  align-items: start;
}
.image-wrap {
  min-height: 610px;
  position: relative;
  display: block;
  overflow: hidden;
  background: var(--ink);
}
.image-wrap img {
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
  object-fit: cover;
  object-position: center;
  transition: transform .5s ease;
}
.image-wrap:hover img { transform: scale(1.018); }
.edition-tag {
  position: absolute;
  left: 0;
  bottom: 0;
  padding: 10px 14px;
  color: var(--ink);
  background: var(--gold);
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .1em;
}
.eyebrow, .small-label {
  margin: 0 0 14px;
  color: var(--rust);
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}
h1, h2, h3, blockquote { font-family: "DM Serif Display", Georgia, serif; font-weight: 400; }
h1 {
  margin: 0;
  font-size: clamp(3.15rem, 5.15vw, 6.9rem);
  line-height: .91;
  letter-spacing: -.052em;
}
.standfirst {
  margin: 27px 0;
  max-width: 580px;
  font-size: 1.08rem;
  line-height: 1.58;
}
.read-more {
  display: inline-flex;
  gap: 15px;
  padding-bottom: 5px;
  border-bottom: 2px solid var(--ink);
  text-decoration: none;
  font-size: .7rem;
  font-weight: 800;
  letter-spacing: .07em;
}
.read-more span { color: var(--rust); }
.news-rail { border-left: 1px solid var(--ink); padding-left: 27px; }
.rail-heading { display: flex; align-items: center; gap: 15px; font-size: .7rem; font-weight: 800; letter-spacing: .11em; }
.rail-heading i { flex: 1; height: 1px; background: var(--ink); }
.news-rail article {
  position: relative;
  padding: 30px 36px 30px 0;
  border-bottom: 1px solid var(--line);
}
.news-rail .clickable-story { padding-top: 18px; }
.news-rail .clickable-story .story-no { top: 19px; }
.news-rail h2 {
  margin: 0 0 11px;
  font-size: clamp(1.7rem, 2.1vw, 2.55rem);
  line-height: 1.02;
  letter-spacing: -.035em;
}
.rail-post-image {
  display: block;
  margin: 0 0 22px;
  overflow: hidden;
  border: 1px solid var(--ink);
  background: var(--ink);
}
.rail-post-image img {
  width: 100%;
  aspect-ratio: 4 / 5;
  display: block;
  object-fit: cover;
  transition: transform .35s ease;
}
.rail-post-image:hover img { transform: scale(1.018); }
.news-rail h2 a { text-decoration: none; }
.news-rail h2 a:hover { color: var(--rust); }
.news-rail article > p:not(.eyebrow) { margin: 0; font-size: .89rem; line-height: 1.5; }
.rail-read {
  display: inline-block;
  margin-top: 16px;
  color: var(--rust);
  font-size: .65rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-decoration: none;
}
.story-no { position: absolute; right: 0; top: 31px; color: var(--rust); font-size: .66rem; font-weight: 800; }

.credo {
  display: flex;
  justify-content: center;
  align-items: baseline;
  gap: 26px;
  padding: 19px 4vw;
  background: var(--ink);
  color: var(--paper);
}
.credo p { margin: 0; color: var(--gold); font-family: "DM Serif Display", serif; font-size: clamp(1.6rem, 2.6vw, 3rem); }
.credo span { font-size: .82rem; letter-spacing: .04em; }

.wisdom-section {
  display: grid;
  grid-template-columns: .63fr 1.37fr;
  min-height: 650px;
  border-bottom: 1px solid var(--ink);
}
.section-intro {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 7vw;
  border-right: 1px solid var(--ink);
}
.section-intro h2, .decision h2, .section-heading h2, .merch h2 {
  margin: 0;
  font-size: clamp(3.6rem, 6.1vw, 7.7rem);
  line-height: .88;
  letter-spacing: -.055em;
}
.section-intro h2 em, .merch h2 em { color: var(--rust); }
.wisdom-card {
  display: grid;
  grid-template-rows: auto 1fr auto;
  padding: 4vw 6vw;
  background: var(--gold);
}
.wisdom-number { justify-self: end; font-size: .72rem; font-weight: 800; letter-spacing: .12em; }
blockquote {
  max-width: 950px;
  margin: auto;
  font-size: clamp(3.2rem, 5.7vw, 7.2rem);
  line-height: .96;
  letter-spacing: -.048em;
}
#next-wisdom {
  justify-self: end;
  border: 0;
  border-bottom: 2px solid var(--ink);
  padding: 7px 0;
  background: transparent;
  cursor: pointer;
  font-size: .7rem;
  font-weight: 800;
  letter-spacing: .08em;
}
#next-wisdom span { margin-left: 9px; font-size: 1rem; }

.decision {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 7vw;
  padding: 100px 7vw;
  background: var(--white);
  border-bottom: 1px solid var(--ink);
}
.decision-copy > p:last-child { max-width: 520px; font-size: 1.13rem; line-height: 1.6; }
.poll { align-self: center; }
.poll-label {
  margin-bottom: 16px;
  font-size: .65rem;
  font-weight: 800;
  letter-spacing: .1em;
}
.poll-option {
  width: 100%;
  min-height: 61px;
  position: relative;
  display: flex;
  align-items: center;
  gap: 16px;
  overflow: hidden;
  padding: 10px 17px;
  border: 1px solid var(--ink);
  border-bottom: 0;
  background: transparent;
  text-align: left;
  cursor: pointer;
  isolation: isolate;
}
.poll-option:last-of-type { border-bottom: 1px solid var(--ink); }
.poll-option::before {
  content: "";
  width: var(--result, 0%);
  position: absolute;
  inset: 0 auto 0 0;
  z-index: -1;
  background: rgba(220, 165, 46, .48);
  transition: width .6s ease;
}
.poll-option span:first-child {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  border: 1px solid var(--ink);
  border-radius: 50%;
  font-size: .68rem;
  font-weight: 800;
}
.poll-option .percent { margin-left: auto; font-weight: 800; }
.poll-option:hover, .poll-option.selected { background: var(--ink); color: var(--paper); }
.poll-option:hover span:first-child, .poll-option.selected span:first-child { border-color: var(--paper); }
.poll-option:disabled { opacity: 1; color: inherit; cursor: default; }
.poll-option.selected:disabled { color: var(--paper); }
.poll-status { margin: 14px 0 0; font-size: .78rem; opacity: .72; }

.club-stories { padding: 100px 5vw 0; }
.section-heading {
  display: grid;
  grid-template-columns: 1fr .55fr;
  align-items: end;
  gap: 50px;
  margin-bottom: 45px;
}
.section-heading h2 { font-size: clamp(4.5rem, 8.5vw, 10rem); }
.section-heading > p { max-width: 480px; font-size: 1rem; line-height: 1.55; }
.story-grid { display: grid; grid-template-columns: 1.2fr .9fr .9fr; border: 1px solid var(--ink); }
.story-card {
  min-height: 420px;
  display: flex;
  flex-direction: column;
  padding: 32px;
  border-right: 1px solid var(--ink);
  background: var(--white);
}
.story-card:last-child { border-right: 0; }
.feature-card { background: var(--gold); }
.dark-card { background: var(--ink); color: var(--paper); }
.dark-card .eyebrow { color: var(--gold); }
.card-icon {
  width: 54px;
  height: 54px;
  display: grid;
  place-items: center;
  margin-bottom: 70px;
  border: 1px solid currentColor;
  border-radius: 50%;
  font-family: "DM Serif Display", serif;
  font-size: 1.8rem;
}
.story-card h3 { margin: 0; font-size: clamp(2rem, 2.8vw, 3.3rem); line-height: 1.02; letter-spacing: -.035em; }
.author { margin: auto 0 0; padding-top: 30px; font-size: .63rem; font-weight: 800; letter-spacing: .08em; }
.club-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  padding: 45px 5vw;
  margin-top: 38px;
  transform: translateY(50%);
  background: var(--rust);
  color: var(--white);
}
.club-cta h3 { margin: 5px 0 0; font-size: clamp(2rem, 3vw, 3.4rem); line-height: 1; }
.club-cta .small-label { color: var(--white); opacity: .75; }
.outline-button, .solid-button {
  min-height: 50px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 22px;
  border: 1px solid currentColor;
  text-decoration: none;
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .07em;
  cursor: pointer;
}
.outline-button { background: transparent; color: var(--white); }
.outline-button:hover { background: var(--white); color: var(--rust); }

.merch {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 7vw;
  align-items: center;
  padding: 180px 7vw 110px;
  background: #ddd4bd;
}
.merch-copy > p:not(.eyebrow) { max-width: 620px; margin: 32px 0; font-size: 1.08rem; line-height: 1.65; }
.solid-button { border-color: var(--ink); background: var(--ink); color: var(--paper); }
.solid-button:hover { background: var(--rust); border-color: var(--rust); }
.muted-button { cursor: default; }
.muted-button:hover { background: var(--ink); border-color: var(--ink); }
.shirt-stage {
  min-height: 590px;
  position: relative;
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 1px solid var(--line);
  background: var(--paper);
}
.sun-disc { width: 420px; height: 420px; position: absolute; border-radius: 50%; background: var(--gold); }
.shirt {
  width: 340px;
  height: 450px;
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 115px 45px 40px;
  color: var(--paper);
  background: var(--ink);
  clip-path: polygon(23% 0, 38% 8%, 62% 8%, 77% 0, 100% 18%, 88% 36%, 78% 30%, 78% 100%, 22% 100%, 22% 30%, 12% 36%, 0 18%);
  filter: drop-shadow(15px 18px 0 rgba(20, 36, 44, .18));
}
.shirt-mark {
  width: 62px;
  height: 62px;
  display: grid;
  place-items: center;
  margin-bottom: 25px;
  border-radius: 50%;
  background: var(--gold);
  color: var(--ink);
  font-family: "DM Serif Display", serif;
  font-size: 2.25rem;
}
.shirt-mark img { width: 100%; height: 100%; border-radius: 50%; object-fit: cover; }
.shirt strong { text-align: center; font-family: "DM Serif Display", serif; font-size: 1.7rem; line-height: 1; }
.shirt small { margin-top: 14px; letter-spacing: .15em; }
.shirt-stage > p { position: absolute; right: 18px; bottom: 8px; font-size: .65rem; font-weight: 800; letter-spacing: .1em; }

footer {
  display: grid;
  grid-template-columns: 1.2fr 1fr 1fr auto;
  gap: 40px;
  align-items: end;
  padding: 65px 5vw;
  background: var(--ink);
  color: var(--paper);
}
.footer-logo { font-size: clamp(2.5rem, 4.5vw, 5rem); }
footer p { margin: 0; font-size: .79rem; line-height: 1.55; }
.footer-links { display: flex; flex-direction: column; gap: 7px; font-size: .78rem; }
.copyright { opacity: .55; }

.article-header {
  min-height: 104px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 22px;
  padding: 14px 4vw;
  border-bottom: 1px solid var(--ink);
}
.article-header .brand-lockup { grid-column: 2; }
.article-header .wordmark { font-size: clamp(3rem, 5.5vw, 5.8rem); }
.article-header .shop-link { justify-self: end; }
.article-page { padding: 38px 5vw 110px; }
.back-link {
  display: inline-block;
  margin-bottom: 65px;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-decoration: none;
}
.back-link:hover { color: var(--rust); }
.article-page article { max-width: 1180px; margin: 0 auto; }
.article-page h1 {
  max-width: 1050px;
  font-size: clamp(4.3rem, 8vw, 9rem);
}
.article-lead {
  max-width: 780px;
  margin: 35px 0 55px;
  font-family: "DM Serif Display", serif;
  font-size: clamp(1.7rem, 2.7vw, 3rem);
  line-height: 1.2;
}
.article-page figure { margin: 0 0 65px; }
.article-page figure img {
  width: min(680px, 100%);
  display: block;
  margin: 0 auto;
  border: 1px solid var(--ink);
}
.article-page figcaption {
  width: min(680px, 100%);
  margin: 10px auto 0;
  font-size: .75rem;
  opacity: .7;
}
.article-body { max-width: 760px; margin: 0 auto; }
.article-body > p {
  margin: 0 0 27px;
  font-size: 1.14rem;
  line-height: 1.75;
}
.article-body h2 {
  margin: 58px 0 18px;
  font-size: clamp(2.6rem, 4.5vw, 4.8rem);
  line-height: 1;
  letter-spacing: -.04em;
}
.article-body blockquote {
  margin: 55px -9vw;
  padding: 45px 6vw;
  border-block: 1px solid var(--ink);
  color: var(--rust);
  font-size: clamp(2.8rem, 5vw, 5.6rem);
}
.dropcap::first-letter {
  float: left;
  margin: .1em .12em 0 0;
  color: var(--rust);
  font-family: "DM Serif Display", serif;
  font-size: 5.5rem;
  line-height: .72;
}
.article-body .article-signoff {
  margin-top: 60px;
  padding: 27px;
  border: 1px solid var(--ink);
  background: var(--gold);
}

dialog {
  width: min(620px, calc(100% - 28px));
  border: 1px solid var(--ink);
  padding: 0;
  background: var(--paper);
  color: var(--ink);
  box-shadow: 15px 15px 0 var(--gold);
}
#wish-dialog { width: min(720px, calc(100% - 28px)); }
dialog::backdrop { background: rgba(20, 36, 44, .74); backdrop-filter: blur(3px); }
dialog form { position: relative; padding: 42px; }
dialog h2 { margin: 0 0 15px; font-size: 4rem; }
.dialog-close { position: absolute; right: 17px; top: 13px; border: 0; background: transparent; font-size: 2rem; cursor: pointer; }
label { display: grid; gap: 7px; margin-top: 19px; font-size: .75rem; font-weight: 800; }
input, textarea, select { width: 100%; min-height: 46px; border: 1px solid var(--ink); padding: 12px; background: var(--white); resize: vertical; }
dialog .solid-button { margin-top: 20px; }
.form-result { color: var(--rust); font-weight: 700; }
.dialog-intro { max-width: 570px; line-height: 1.55; }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; }
.optional { opacity: .55; font-weight: 500; }
.wish-styles {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 22px 0 0;
  padding: 0;
  border: 0;
}
.wish-styles legend {
  width: 100%;
  margin-bottom: 7px;
  font-size: .75rem;
  font-weight: 800;
}
.wish-styles label {
  display: flex;
  align-items: center;
  gap: 7px;
  margin: 0;
  padding: 9px 12px;
  border: 1px solid var(--ink);
  cursor: pointer;
}
.wish-styles input { width: auto; min-height: 0; margin: 0; }
.wish-result {
  margin-top: 27px;
  padding: 22px;
  border-left: 5px solid var(--gold);
  background: var(--white);
}
.wish-result > p { margin: 0 0 20px; font-family: "DM Serif Display", serif; font-size: 1.55rem; line-height: 1.3; }
.share-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.share-button {
  min-height: 40px;
  display: inline-flex;
  align-items: center;
  padding: 0 13px;
  border: 1px solid var(--ink);
  background: transparent;
  color: var(--ink);
  text-decoration: none;
  font-size: .68rem;
  font-weight: 800;
  cursor: pointer;
}
.share-button:hover { background: var(--ink); color: var(--paper); }
.share-button.whatsapp { background: #1f8f56; border-color: #1f8f56; color: white; }
#copy-status { display: block; min-height: 1.2em; margin-top: 10px; color: var(--rust); }

@media (max-width: 1050px) {
  .lead-story { grid-template-columns: 1fr; align-items: start; }
  .image-wrap { min-height: 590px; }
  .front-page { grid-template-columns: 1.55fr .8fr; }
  .story-grid { grid-template-columns: 1fr 1fr; }
  .story-card:last-child { grid-column: 1 / -1; border-top: 1px solid var(--ink); }
  .story-card:nth-child(2) { border-right: 0; }
}

@media (max-width: 980px) {
  .utility-bar { grid-template-columns: 1fr auto; }
  .utility-bar > span:nth-child(2) { display: none; }
  .masthead { grid-template-columns: 1fr; gap: 11px; padding-block: 18px 14px; }
  .date-panel { grid-column: 1; justify-self: center; text-align: center; }
  .nameday-strip { justify-content: center; }
  .brand-lockup { grid-column: 1; justify-self: center; }
  .mast-actions { grid-column: 1; justify-self: center; }
  .logo-whisper { display: none; }
}

@media (max-width: 760px) {
  .utility-bar { grid-template-columns: 1fr auto; gap: 5px; padding: 6px 4vw; }
  .utility-bar > span:nth-child(2) { display: none; }
  .masthead { min-height: 92px; grid-template-columns: 1fr; gap: 10px; padding-block: 18px 13px; }
  .date-panel { grid-column: 1; justify-self: center; text-align: center; }
  .nameday-strip { justify-content: center; }
  .brand-lockup { grid-column: 1; justify-self: center; }
  .brand-symbol { width: 51px; height: 51px; }
  .logo-whisper { display: none; }
  .wordmark { font-size: clamp(3.2rem, 15vw, 5.8rem); }
  .mast-actions { grid-column: 1; justify-self: center; flex-direction: row; align-items: stretch; gap: 7px; }
  .shop-link, .wish-link { padding: 8px 11px; font-size: .68rem; text-align: center; }
  nav { grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 0; }
  nav a { display: grid; place-items: center; min-height: 48px; padding: 8px 5px; white-space: normal; line-height: 1.15; }
  nav a:nth-child(4) { border-left: 1px solid var(--line); }
  nav a:nth-child(-n+3) { border-bottom: 1px solid var(--line); }
  .front-page { grid-template-columns: 1fr; padding-inline: 4vw; }
  .image-wrap { min-height: min(590px, 115vw); }
  .lead-copy { padding-bottom: 25px; }
  h1 { font-size: clamp(3.5rem, 13vw, 6rem); }
  .news-rail { border-left: 0; padding-left: 0; border-top: 1px solid var(--ink); padding-top: 25px; }
  .credo { align-items: center; flex-direction: column; gap: 3px; text-align: center; }
  .wisdom-section { grid-template-columns: 1fr; }
  .section-intro { min-height: 340px; border-right: 0; border-bottom: 1px solid var(--ink); }
  .wisdom-card { min-height: 500px; padding: 30px 7vw; }
  .decision { grid-template-columns: 1fr; padding: 80px 6vw; }
  .section-heading { grid-template-columns: 1fr; gap: 10px; }
  .story-grid { grid-template-columns: 1fr; }
  .story-card, .story-card:nth-child(2) { border-right: 0; border-bottom: 1px solid var(--ink); }
  .story-card:last-child { grid-column: auto; border-top: 0; border-bottom: 0; }
  .club-cta { align-items: flex-start; flex-direction: column; }
  .merch { grid-template-columns: 1fr; padding: 170px 6vw 80px; }
  .shirt-stage { min-height: 520px; }
  footer { grid-template-columns: 1fr 1fr; }
  .form-row { grid-template-columns: 1fr; gap: 0; }
  .article-header { grid-template-columns: 1fr auto; }
  .article-header .brand-lockup { grid-column: 1; justify-self: start; }
  .article-header .brand-symbol { display: block; }
  .article-page { padding-inline: 6vw; }
  .article-body blockquote { margin-inline: -3vw; padding-inline: 5vw; }
}

@media (max-width: 480px) {
  .masthead { grid-template-columns: 1fr; padding-bottom: 13px; }
  .brand-symbol { width: 47px; height: 47px; }
  .wordmark { justify-self: auto; }
  .mast-actions { grid-column: 1; width: min(100%, 340px); flex-direction: row; }
  .date-panel { width: min(100%, 340px); min-width: 0; }
  .mast-actions > * { flex: 1; }
  .front-page { padding-top: 20px; }
  .image-wrap { min-height: 128vw; }
  .section-intro h2, .decision h2, .section-heading h2, .merch h2 { font-size: 3.8rem; }
  blockquote { font-size: 3.25rem; }
  .story-grid { margin-inline: -2vw; }
  .club-cta { margin-inline: -2vw; }
  .shirt-stage { min-height: 450px; }
  .sun-disc { width: 340px; height: 340px; }
  .shirt { transform: scale(.82); }
  footer { grid-template-columns: 1fr; align-items: start; }
  dialog form { padding: 34px 24px; }
  dialog h2 { font-size: 3.25rem; }
  .wish-styles { display: grid; grid-template-columns: 1fr; }
  .article-header { grid-template-columns: auto 1fr; }
  .article-header .shop-link { grid-column: 1 / -1; width: 100%; text-align: center; }
  .article-page h1 { font-size: 3.8rem; }
  .back-link { margin-bottom: 45px; }
}
/* Compact editorial layout */
.solid-button,.outline-button{display:inline-flex!important;align-items:center;justify-content:center;min-height:44px;padding:12px 20px;line-height:1.2;text-align:center}
.site-header .masthead{min-height:96px;padding:10px 3vw;gap:16px}.site-header .wordmark{font-size:clamp(2.6rem,5vw,4.6rem);line-height:1}.site-header .brand-symbol{width:50px;height:50px}.site-header .utility-bar{min-height:25px}.site-header .date-panel{min-width:230px;padding:8px 12px}.date-panel>strong{font-size:1rem}.date-panel .date-label{display:none}.date-panel .wish-link{padding:5px 8px;margin-top:4px;font-size:.63rem}.compact-header .masthead{min-height:78px;grid-template-columns:1fr auto}.compact-header .brand-lockup{grid-column:1;justify-content:flex-start}.compact-header .mast-actions{grid-column:2}.compact-header .utility-bar{display:none}.site-header nav a{padding:12px 8px}.site-header nav a[aria-current=page]{color:var(--rust);box-shadow:inset 0 -3px var(--rust)}.mobile-menu-toggle,.mobile-shop-link{display:none}
.dulak-intro{padding:20px 3vw;gap:30px}.dulak-intro h1{font-size:clamp(2rem,3vw,2.8rem);margin:6px 0}.dulak-intro-copy p{font-size:.95rem;line-height:1.5;margin-bottom:12px}.front-page{padding:24px 3vw 30px;gap:25px}.lead-story{grid-template-columns:minmax(210px,1fr) minmax(240px,1fr);gap:22px}.image-wrap{min-height:370px}.lead-copy .lead-title{font-size:clamp(2.3rem,3.5vw,3.6rem)}.news-rail article{padding-block:14px}.news-rail h2{font-size:1.4rem}.news-rail p{font-size:.86rem}.credo{padding-block:20px}.wisdom-section,.club-stories,.merch{padding:36px 3vw}.about-dulak{padding:35px 3vw;border-bottom:1px solid var(--ink)}.about-dulak h2{font-family:"DM Serif Display",serif;font-size:2.1rem;margin:10px 0}.about-dulak>p:last-child{max-width:780px;line-height:1.7}.section-heading{display:block!important;margin-bottom:24px}.section-heading>p{max-width:650px;margin-top:12px}.club-invitation{padding:10px 0 28px}.story-card{padding:24px}.merch{gap:25px}.shirt-stage{min-height:280px}.merch h2{font-size:2.6rem}.footer-links{flex-wrap:wrap;gap:14px}.article-breadcrumb{display:flex;gap:10px;font-size:.8rem;margin-bottom:20px}.article-page{padding-top:30px}.article-page h1{line-height:1.15}.article-meta{font-size:.8rem;opacity:.75;margin:16px 0}.article-share{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding-top:20px}.article-share>a{font-size:.8rem}.article-share>span{font-size:.8rem}.wisdom-card .article-share{border-top:1px solid currentColor;margin-top:20px}.related-reading{margin-top:50px;border-top:1px solid var(--ink);padding-top:25px}.related-reading h2{font-family:"DM Serif Display",serif;font-size:2rem}.related-reading .story-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:20px}.related-reading .story-card h3{font-size:1.5rem}
@media(max-width:1050px) and (min-width:761px){.home-header .masthead{grid-template-columns:230px 1fr}.home-header .brand-lockup{grid-column:2}.home-header .mast-actions{display:none}.front-page{grid-template-columns:1.7fr 1fr}.lead-story{grid-template-columns:1fr}.image-wrap{min-height:300px}}
@media(max-width:760px){.site-header .utility-bar,.site-header .mast-actions{display:none}.site-header .masthead,.compact-header .masthead{display:flex;flex-wrap:wrap;justify-content:space-between;min-height:64px;padding:10px 4vw;gap:10px}.site-header .brand-lockup{order:0;gap:8px;justify-content:flex-start}.site-header .brand-symbol{width:36px;height:36px}.site-header .wordmark{font-size:1.85rem;line-height:1}.mobile-menu-toggle{display:block;order:1;border:1px solid var(--ink);background:transparent;padding:9px 10px;font-size:.7rem;font-weight:800;min-height:40px}.site-header .date-panel{order:2;width:100%;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px}.date-panel>strong{display:none}.nameday-strip{margin:0;gap:5px}.date-panel .wish-link{width:auto;margin:0;padding:7px;font-size:.6rem}.site-header nav{display:none;padding:0 4vw}.site-header nav.menu-open{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.site-header nav .mobile-shop-link{display:block;grid-column:1/-1}.site-header nav a{border:0;border-bottom:1px solid var(--line);padding:14px 8px}.dulak-intro{padding:20px 4vw;gap:12px}.dulak-intro h1{font-size:2rem;line-height:1.15}.dulak-intro-copy p{font-size:.95rem}.front-page{padding:20px 4vw;grid-template-columns:1fr}.lead-story{grid-template-columns:1fr;gap:15px}.image-wrap{min-height:310px}.lead-copy .lead-title{font-size:2.4rem;line-height:1.15}.news-rail{margin-top:10px}.news-rail article{padding-block:16px}.news-rail h2{font-size:1.55rem}.wisdom-section,.club-stories,.merch{padding:28px 4vw}.about-dulak{padding:28px 4vw}.wisdom-card blockquote{font-size:1.8rem;line-height:1.25}.section-heading h2{font-size:2.2rem}.article-page{padding:24px 5vw 40px}.article-page h1{font-size:clamp(2rem,8vw,3rem);line-height:1.18;letter-spacing:-.02em}.article-lead{font-size:1.1rem;line-height:1.55}.article-body{font-size:1.05rem;line-height:1.8}.related-reading .story-grid{grid-template-columns:1fr}.article-share{gap:12px}.merch h2{font-size:2.2rem}.shirt-stage{min-height:250px}.footer-links{display:flex;flex-wrap:wrap}.solid-button,.outline-button{min-height:44px}}

.news-rail .rail-post-image{width:130px;max-width:100%;float:right;margin:0 0 12px 15px}.news-rail .rail-post-image img{aspect-ratio:1/1}.news-rail article::after{content:"";display:block;clear:both}

/* Category cards follow their content; occupied columns fill the row. */
.category-page .category-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));align-items:start;gap:20px;border:0;margin-inline:0}
.category-page .category-grid .story-card{height:auto;min-height:0;align-self:start;grid-column:auto;border:1px solid var(--ink);padding:24px;min-width:0}
.category-page .category-grid .story-card>p:not(.eyebrow):not(.author){margin:16px 0 0;line-height:1.6}
.category-page .category-grid .story-card .author{margin:0;padding-top:24px}
@media(min-width:1200px){.category-page .category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.category-page .category-grid:has(>.story-card:only-child){grid-template-columns:1fr}.category-page .category-grid:has(>.story-card:nth-child(2)):not(:has(>.story-card:nth-child(3))){grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:768px){.category-page .category-grid{grid-template-columns:minmax(0,1fr)}}

.category-story-image{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;margin:0 0 18px;border:1px solid var(--line)}

/* A compact daily thought, sized to match the surrounding editorial content. */
.wisdom-section{min-height:0;grid-template-columns:minmax(0,.63fr) minmax(0,1.37fr);padding:28px 3vw;gap:24px}
.wisdom-section .section-intro{min-height:0;padding:24px 2vw}
.wisdom-section .section-intro h2{font-size:clamp(2.2rem,3.2vw,3.5rem);line-height:1.04;letter-spacing:-.035em}
.wisdom-section .wisdom-card{min-height:0;padding:24px 3vw;gap:16px}
.wisdom-section .wisdom-card blockquote{width:100%;max-width:950px;margin:4px 0;font-size:clamp(1.8rem,2.6vw,3rem);line-height:1.15;letter-spacing:-.025em}
.wisdom-section .wisdom-card .article-share{margin-top:0;padding-top:14px}
@media(max-width:1050px){
  .wisdom-section{grid-template-columns:minmax(0,1fr);gap:16px;padding:24px 4vw}
  .wisdom-section .section-intro{min-height:0;padding:0 0 16px}
  .wisdom-section .section-intro h2{font-size:2.4rem}
  .wisdom-section .wisdom-card{min-height:0;padding:22px 5vw}
  .wisdom-section .wisdom-card blockquote{font-size:clamp(1.6rem,4.2vw,2.4rem)}
}

/* Keep the club invitation and its stories in the same editorial scale. */
.club-stories{padding:28px 3vw}
.club-stories .section-heading{margin-bottom:12px}
.club-stories .section-heading h2{font-size:clamp(2rem,3vw,3.2rem);line-height:1.1;letter-spacing:-.035em}
.club-stories .section-heading>p{margin:12px 0 0}
.club-stories .club-invitation{padding:0 0 18px}
.club-stories .club-invitation>p:first-child{margin:0 0 14px}
.club-stories .submission-note{margin:12px 0 0}
.club-stories .story-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.club-stories .story-card{min-height:240px;padding:22px}
.club-stories .story-card h3{font-size:clamp(1.4rem,1.7vw,1.9rem);line-height:1.15;letter-spacing:-.025em}
.club-stories .story-card .author{padding-top:20px}
@media(max-width:1050px){
  .club-stories{padding:24px 4vw}
  .club-stories .story-grid{grid-template-columns:1fr}
  .club-stories .story-card{min-height:0;padding:20px}
}

/* Read complete stories in each category, with modest uncropped images. */
.category-page .category-reading-list{display:grid;gap:24px;max-width:1180px;margin:20px auto 0}
.category-reading-story{display:grid;grid-template-columns:280px minmax(0,1fr);align-items:start;gap:32px;padding:24px 0;border-top:1px solid var(--line)}
.category-reading-story:not(:has(.category-reading-figure)){grid-template-columns:minmax(0,1fr)}
.category-reading-figure{margin:0}
.category-reading-figure img{display:block;width:100%;height:auto;max-height:360px;object-fit:contain;object-position:top;border:1px solid var(--line)}
.category-reading-copy{min-width:0;max-width:868px}
.category-reading-copy h2{font-family:"DM Serif Display",serif;font-size:clamp(1.6rem,2.2vw,2.2rem);line-height:1.15;letter-spacing:-.025em;margin:0 0 18px}
.category-reading-body{font-size:1.05rem;line-height:1.5}
.category-reading-body p{margin:0 0 8px}
.reading-columns{column-width:290px;column-count:2;column-gap:32px;column-rule:1px solid var(--line);column-fill:balance}
.reading-columns p{break-inside:avoid;orphans:2;widows:2}
.reading-layout-choice{display:flex;align-items:center;flex-wrap:wrap;gap:8px;max-width:1180px;margin:20px auto 0;font-size:.8rem}
.reading-layout-choice span{margin-right:8px}
.reading-layout-choice button,.reading-expand{border:1px solid var(--ink);background:transparent;color:var(--ink);padding:10px 14px;min-height:44px;cursor:pointer;font:inherit}
.reading-layout-choice button[aria-pressed="true"]{background:var(--ink);color:var(--paper)}
.reading-expand{margin-top:8px;font-size:.82rem;font-weight:700}
.reading-layout-choice button:focus-visible,.reading-expand:focus-visible{outline:2px solid var(--rust);outline-offset:3px}
.category-reading-copy .article-share{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
.category-page .club-invitation h2{font-size:1.8rem;line-height:1.15}
@media(max-width:760px){
  .category-reading-story{grid-template-columns:minmax(0,1fr);gap:20px;padding:20px 0}
  .category-reading-figure{max-width:260px}
  .category-reading-figure img{max-height:320px}
  .category-reading-body{font-size:1rem;line-height:1.55;column-count:1;column-width:auto}
}

.story-contact-dialog{position:fixed;inset:0;width:min(540px,calc(100% - 32px));max-height:calc(100dvh - 40px);overflow:auto;margin:auto;padding:32px;border:1px solid var(--ink);background:var(--paper);color:var(--ink)}
.story-contact-dialog::backdrop{background:rgba(20,36,44,.55)}
.story-contact-dialog h2{font-family:"DM Serif Display",serif;font-size:2rem;line-height:1.15;margin:12px 0 20px}
.story-contact-dialog>p{line-height:1.5}
.story-contact-dialog .story-contact-email{font-size:1.25rem;font-weight:700;overflow-wrap:anywhere;user-select:all}
.story-contact-actions{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}
.story-contact-dialog [role="status"]{font-size:.85rem}

.mast-actions button.shop-link{font-family:inherit;cursor:pointer}
.site-header nav button.mobile-shop-link{font-family:inherit;font-size:inherit;background:transparent;color:var(--ink);cursor:pointer;border:0;border-bottom:1px solid var(--line);padding:14px 8px;text-align:center}
.shop-coming-dialog{position:fixed;inset:0;width:fit-content;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);margin:auto;padding:0;border:1px solid var(--ink);background:var(--paper);overflow:auto}
.shop-coming-dialog::backdrop{background:rgba(20,36,44,.7)}
.shop-coming-dialog img{display:block;width:auto;height:auto;max-width:100%;max-height:calc(100dvh - 34px);object-fit:contain}
.shop-coming-close{position:absolute;right:10px;top:10px;z-index:1;display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--ink);border-radius:50%;background:var(--paper);color:var(--ink);font-size:1.8rem;cursor:pointer}
.shop-coming-close:focus-visible{outline:3px solid var(--rust);outline-offset:2px}

.brand-lockup button.brand-symbol{padding:0;border:0;background:transparent;font:inherit;cursor:pointer}
.brand-lockup button.brand-symbol:focus-visible{outline:2px solid var(--rust);outline-offset:5px}
.dulak-host-dialog{position:fixed;inset:0;width:min(1000px,calc(100vw - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:0;border:1px solid var(--ink);background:var(--paper);color:var(--ink);overflow:auto}
.dulak-host-dialog::backdrop{background:rgba(20,36,44,.75)}
.host-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
.host-portrait{width:100%;height:auto;max-height:calc(100dvh - 34px);object-fit:contain;align-self:start;background:#573a22}
.host-content{padding:36px 28px}
.host-content h2{font-family:"DM Serif Display",serif;font-size:clamp(1.9rem,3vw,2.7rem);line-height:1.12;margin:14px 0;letter-spacing:-.025em}
.host-content>p{line-height:1.5}
.host-choices{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}
.host-choices button{cursor:pointer}
.host-choices button:disabled{opacity:.5;cursor:wait}
.host-story{display:block;padding:16px 0;border-top:1px solid var(--line);text-decoration:none;color:inherit}
.host-story:hover h3{color:var(--rust)}
.host-story h3{font-family:"DM Serif Display",serif;font-size:1.4rem;line-height:1.2;margin:8px 0}
.host-story p{font-size:.9rem;line-height:1.5;margin:8px 0}
.host-read{font-size:.65rem;font-weight:800;letter-spacing:.06em}
.host-results>.outline-button{margin-top:12px;cursor:pointer}
.host-invitation{opacity:.7;font-style:italic}
.host-close{position:absolute;right:8px;top:8px;z-index:2;width:44px;height:44px;border:1px solid var(--ink);border-radius:50%;background:var(--paper);color:var(--ink);font-size:1.8rem;cursor:pointer}
@media(max-width:700px){.host-layout{grid-template-columns:1fr}.host-portrait{max-height:280px;width:100%;object-fit:contain}.host-content{padding:24px 20px}.host-content h2{font-size:2rem}}

.shop-dulak-scene{position:relative;width:min(560px,calc(100vw - 34px),calc((100dvh - 34px) * .8));aspect-ratio:1122/1402;overflow:hidden}
.shop-coming-dialog .shop-dulak-scene img{width:100%;height:100%;max-height:none;max-width:none;object-fit:contain;pointer-events:none}
.shop-coming-dialog .shop-dulak-pendulum,.shop-coming-dialog .shop-dulak-blink{position:absolute;inset:0}
.shop-coming-dialog .shop-dulak-scene .shop-dulak-rack{position:absolute;right:0;bottom:4%;width:75%;height:75%;object-fit:fill;clip-path:polygon(55% 0,100% 0,100% 100%,55% 100%)}
.shop-coming-dialog .shop-dulak-scene .shop-dulak-gifts{position:absolute;left:1%;bottom:2%;width:60%;height:60%;object-fit:fill;clip-path:polygon(0 0,45% 0,45% 100%,0 100%)}
.shop-dulak-pendulum{clip-path:polygon(34.15% 52.7%,34.8% 52.7%,34.9% 56.6%,35.8% 57.5%,34.4% 61.2%,32.85% 57.5%,34.1% 56.6%);transform-origin:34.45% 52.7%}
.shop-dulak-blink{opacity:0;clip-path:polygon(44.3% 7.1%,47.3% 7.2%,51.3% 8.5%,51% 10.3%,47% 9.6%,44.2% 8.8%)}
.shop-coming-dialog[open] .shop-dulak-pendulum{animation:dulak-pendulum 3.8s ease-in-out infinite}
.shop-coming-dialog[open] .shop-dulak-blink{animation:dulak-blink 8.7s linear infinite}
@keyframes dulak-pendulum{0%,100%{transform:rotate(-7deg)}50%{transform:rotate(7deg)}}
@keyframes dulak-blink{0%,61%,64%,100%{opacity:0}62%,63%{opacity:1}}
@media(prefers-reduced-motion:reduce){.shop-coming-dialog[open] .shop-dulak-pendulum,.shop-coming-dialog[open] .shop-dulak-blink{animation:none}}

.dulak-host-dialog .host-choices>a,.dulak-host-dialog .host-choices button,.dulak-host-dialog .host-results>.outline-button{min-height:48px;margin-top:0;border:2px solid var(--ink);color:var(--ink);background:var(--paper);font-size:.75rem;font-weight:800;letter-spacing:.06em;opacity:1;box-shadow:0 2px 0 rgba(20,36,44,.12)}
.dulak-host-dialog .host-choices .solid-button{background:var(--ink);color:var(--paper)}
.dulak-host-dialog .host-choices button:hover,.dulak-host-dialog .host-results>.outline-button:hover{background:var(--gold);color:var(--ink);border-color:var(--ink)}
.dulak-host-dialog .host-choices button:disabled{background:#d8d3c7;color:#4f534f;border-color:#777b75;cursor:wait;box-shadow:none}
.dulak-host-dialog .host-choices button:focus-visible,.dulak-host-dialog .host-results>.outline-button:focus-visible{outline:3px solid var(--rust);outline-offset:3px}
.host-visual{position:relative;aspect-ratio:1122/1402;width:100%;align-self:start;overflow:hidden;background:#573a22}
.host-visual .host-portrait{display:block;width:100%;height:100%;max-height:none;object-fit:contain}
.host-smoke-ring{position:absolute;left:48.8%;top:15.8%;width:4%;aspect-ratio:1;border:2px solid rgba(230,228,221,.65);border-radius:50%;filter:blur(.6px);box-shadow:0 0 4px rgba(240,238,230,.25);opacity:0;pointer-events:none;transform-origin:center}
.dulak-host-dialog[open] .host-smoke-ring{animation:host-smoke-ring 11s linear infinite}
@keyframes host-smoke-ring{0%,48%,75%,100%{opacity:0;transform:translate(-50%,-50%) scale(.25) rotateX(30deg)}50%{opacity:.55;transform:translate(-60%,-50%) scale(.45) rotateX(30deg)}59%{opacity:.35;transform:translate(-180%,-170%) scale(1.6) rotateX(20deg)}70%{opacity:0;transform:translate(-330%,-350%) scale(3) rotateX(10deg)}}
@media(max-width:700px){.host-visual{width:min(224px,100%);margin:0 auto}.host-visual .host-portrait{max-height:none}.host-choices{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.host-choices>button{width:100%;min-height:48px}}
@media(prefers-reduced-motion:reduce){.dulak-host-dialog[open] .host-smoke-ring{animation:none}}

/* Article pages use the same restrained scale as category reading. */
.article-page{padding:28px 4vw 48px}
.article-page .article-breadcrumb{max-width:1040px;margin:0 auto 24px}
.article-page article{display:grid;grid-template-columns:260px minmax(0,1fr);gap:0 28px;max-width:1040px;margin:0 auto}
.article-page article>.eyebrow,.article-page article>h1,.article-page article>.article-meta,.article-page article>.article-lead,.article-page article>.article-share{grid-column:1/-1}
.article-page article>h1{font-size:clamp(2rem,3.2vw,3rem);line-height:1.12;letter-spacing:-.03em;margin:8px 0 12px;overflow-wrap:anywhere}
.article-page .article-meta{margin:0 0 16px}
.article-page .article-lead{font-family:"DM Sans",sans-serif;font-size:1.08rem;line-height:1.55;font-weight:400;max-width:780px;margin:0 0 24px}
.article-page figure{grid-column:1;margin:0;align-self:start;min-width:0}
.article-page figure img{display:block;width:100%;height:auto;max-height:340px;object-fit:contain}
.article-page figcaption{font-size:.72rem;line-height:1.4;margin:8px 0 0}
.article-page .article-body{grid-column:2;max-width:740px;min-width:0;margin:0;font-size:1.05rem;line-height:1.6}
.article-page article:not(:has(>figure)) .article-body{grid-column:1/-1}
.article-page .article-body>p{font-size:1.05rem;line-height:1.6;margin:0 0 10px}
.article-page .article-body .dropcap:first-letter{float:none;font-size:inherit;line-height:inherit;padding:0;margin:0;font-family:inherit}
.article-page article>.article-share{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}
.article-page .article-share .outline-button{color:var(--ink);border-color:var(--ink)}
.article-page .related-reading{max-width:1040px;margin:36px auto 0}
.article-page .related-reading .story-card{min-height:0;padding:20px}
@media(max-width:760px){
  .article-page article{grid-template-columns:minmax(0,1fr);gap:0}
  .article-page figure{grid-column:1;max-width:260px;margin:0 0 20px}
  .article-page .article-body{grid-column:1}
  .article-page article>h1{font-size:2rem}
  .article-page .article-lead,.article-page .article-body>p{font-size:1rem;line-height:1.55}
}

.article-page .article-body .reading-layout-choice{margin:0 0 18px}
.dulak-host-dialog .host-choices button{margin:0!important}
.dulak-host-dialog .host-choices .story-contact-dialog .solid-button{background:var(--ink);color:var(--paper)}

/* Bound every article to the viewport, including zoomed and narrow screens. */
main.article-page{width:100%;max-width:1080px;min-width:0;margin-inline:auto;padding:24px 24px 40px}
.article-page article{width:100%;max-width:100%;min-width:0;grid-template-columns:240px minmax(0,1fr);column-gap:24px}
.article-page article>*{min-width:0;max-width:100%}
.article-page figure img{max-height:300px}
.article-page .article-body{width:100%;max-width:100%;overflow-wrap:anywhere}
.article-page .category-reading-body{font-size:1rem;line-height:1.55;max-width:100%;overflow-wrap:anywhere}
.article-page .category-reading-body p{margin-bottom:9px}
.article-page .category-reading-body hr{width:80px;max-width:100%;margin:18px auto}
.article-page .article-body .reading-layout-choice{gap:8px;margin-bottom:16px}
.article-page .related-reading .story-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:760px){main.article-page{padding:22px 5vw 36px}.article-page article{grid-template-columns:minmax(0,1fr)}.article-page .related-reading .story-grid{grid-template-columns:minmax(0,1fr)}}

main.clubroom-page{width:100%;max-width:1120px;min-width:0;margin:0 auto;padding:28px 24px 44px}
.clubroom-page>.section-heading{margin:0 0 22px}
.clubroom-page>.section-heading h2{font-size:clamp(2rem,3vw,2.8rem);line-height:1.15}
.clubroom-page>.section-heading>p{font-size:1rem;line-height:1.55;max-width:680px}
.clubroom-page>.club-invitation{padding:24px 28px;margin:0 0 32px;background:var(--ink);color:var(--paper);border-left:5px solid var(--gold)}
.clubroom-page>.club-invitation h2{font-family:"DM Serif Display",serif;font-size:1.9rem;line-height:1.15;margin:0 0 12px}
.clubroom-page>.club-invitation>p{font-size:1rem;line-height:1.55;margin:0 0 16px;max-width:680px}
.clubroom-page>.club-invitation>.solid-button{background:var(--gold);border:2px solid var(--gold);color:var(--ink);margin:0;font-weight:800;min-height:48px;cursor:pointer}
.clubroom-page>.club-invitation>.solid-button:hover{background:var(--paper);border-color:var(--paper)}
.clubroom-page>.club-invitation>.submission-note{margin:14px 0 0;font-size:.8rem;color:var(--paper);opacity:.85}
.clubroom-stories-heading h2{font-family:"DM Serif Display",serif;font-size:1.7rem;line-height:1.2;margin:6px 0 10px}
.clubroom-stories-heading>p:last-child{font-size:.9rem;line-height:1.5;margin:0 0 16px}
.clubroom-page .reading-layout-choice{margin:16px 0}
.clubroom-page .category-reading-list{margin:0;gap:16px;max-width:100%}
.clubroom-page .category-reading-story{grid-template-columns:200px minmax(0,1fr);gap:24px;padding:22px 0;width:100%;max-width:100%;min-width:0}
.clubroom-page .category-reading-story:not(:has(.category-reading-figure)){grid-template-columns:minmax(0,1fr)}
.clubroom-page .category-reading-figure img{max-height:240px}
.clubroom-page .category-reading-copy h2{font-size:1.6rem;line-height:1.2;margin-bottom:14px}
.clubroom-page .category-reading-body{font-size:1rem;line-height:1.55;overflow-wrap:anywhere}
.clubroom-page .article-share .outline-button{color:var(--ink);border-color:var(--ink)}
@media(max-width:760px){main.clubroom-page{padding:24px 5vw 36px}.clubroom-page>.club-invitation{padding:22px 20px}.clubroom-page .category-reading-story{grid-template-columns:minmax(0,1fr)}.clubroom-page .category-reading-figure{max-width:220px}}

.clubroom-page .section-heading h1{font-family:"DM Serif Display",serif;font-size:2.5rem;line-height:1.15;margin:8px 0 20px;letter-spacing:-.03em}
.club-callout{max-width:100%;padding:30px 32px;background:var(--ink);color:var(--paper);border-left:5px solid var(--gold)}
.club-callout>.eyebrow{color:var(--gold);margin:0 0 14px}
.club-callout h2{font-family:"DM Serif Display",serif;font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.12;letter-spacing:-.025em;margin:0 0 20px}
.club-callout>p:not(.eyebrow){max-width:680px;font-size:1rem;line-height:1.6;margin:0 0 16px}
.club-callout .club-callout-first{margin-top:22px}
.club-callout>.solid-button{background:var(--gold);color:var(--ink);border:2px solid var(--gold);min-height:48px;cursor:pointer;margin:0}
.club-callout>.solid-button:hover{background:var(--paper);border-color:var(--paper)}
.club-callout>.submission-note{font-size:.8rem!important;opacity:.85;margin:14px 0 0!important}
.home-club-callout{max-width:1120px;margin-inline:auto}
@media(max-width:760px){.club-callout{padding:24px 20px}.clubroom-page .section-heading h1{font-size:2rem}}

/* Two equally sized invitation panels. */
.club-invitation-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:stretch;max-width:100%;min-width:0}
.club-draw-portrait{position:relative;margin:0;min-width:0;min-height:0;aspect-ratio:1/1;overflow:hidden}
.club-draw-portrait img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center;border:1px solid var(--line)}
.club-invitation-layout .club-callout{min-width:0;aspect-ratio:1/1;padding:clamp(20px,2.4vw,32px);display:flex;flex-direction:column;justify-content:center}
.club-invitation-layout .club-callout h2{font-size:clamp(1.8rem,2.6vw,2.3rem);margin-bottom:16px}
.club-invitation-layout .club-callout>p:not(.eyebrow){line-height:1.45;margin-bottom:12px}
.club-invitation-layout .club-callout>.solid-button{align-self:flex-start}
@media(max-width:1000px){.club-invitation-layout{grid-template-columns:minmax(0,1fr);gap:18px;max-width:580px;margin-inline:auto}.club-draw-portrait{width:100%;max-width:100%}.club-invitation-layout .club-callout{padding:24px 20px;aspect-ratio:1/1}}

.footer-links>.footer-contact-link{display:block;align-self:flex-start;border:0;padding:0;margin:0;background:transparent;color:var(--paper);font:inherit;line-height:1.5;cursor:pointer;text-align:left}
.footer-links>.footer-contact-link:hover{color:var(--gold);text-decoration:underline}
.footer-links>.footer-contact-link:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
.story-contact-dialog .outline-button{color:var(--ink);border-color:var(--ink)}
.story-contact-dialog .outline-button:hover{background:var(--gold);color:var(--ink)}

/* Keep the opening spread compact without losing the lead portrait. */
@media(min-width:1051px){
  .front-page{padding-top:20px;padding-bottom:22px;gap:24px}
  .lead-story{grid-template-columns:minmax(210px,1fr) minmax(240px,1fr);gap:20px}
  .lead-story .image-wrap{min-height:360px}
  .news-rail{padding-left:22px}
  .news-rail article,.news-rail .clickable-story{padding:12px 22px 12px 0}
  .news-rail .eyebrow{font-size:.62rem;letter-spacing:.08em;margin-bottom:9px}
  .news-rail h2{font-size:1.35rem;line-height:1.1;margin-bottom:8px}
  .news-rail article>p:not(.eyebrow){font-size:.84rem;line-height:1.4}
  .news-rail .rail-post-image{width:110px;margin:0 0 8px 12px}
  .news-rail .rail-read{margin-top:10px}
  .news-rail .story-no,.news-rail .clickable-story .story-no{top:13px}
}

/* Readable text and comfortable touch targets. */
.skip-link{position:fixed;top:8px;left:8px;z-index:10000;padding:14px 20px;background:var(--ink);color:var(--paper);transform:translateY(-160%)}
.skip-link:focus{transform:translateY(0)}
.nameday-button,.wish-link,.rail-read,.read-more,.footer-links>a,.footer-contact-link{min-height:44px;display:inline-flex;align-items:center}
.nameday-button{column-gap:.35em;flex-wrap:wrap}
.wish-link{justify-content:center;text-align:center}
.dulak-intro-copy p,.news-rail article>p:not(.eyebrow),.merch-copy>p:not(.eyebrow){font-size:1rem;line-height:1.55}
@media(max-width:760px){.news-rail .eyebrow,.eyebrow,.edition-tag,.small-label,.article-meta,.article-page figcaption,.shirt-stage>p,.shirt small{font-size:max(.75rem,12px)}.news-rail article>p:not(.eyebrow),.dulak-intro-copy p{font-size:1rem;line-height:1.55}.nameday-button{padding-block:10px}.club-invitation-layout .club-callout{aspect-ratio:auto;min-height:0}}

.wisdom-card .article-share .outline-button{color:var(--ink);border-color:var(--ink);font-size:.8rem}
.merch .eyebrow,.merch .small-label{color:#943621}
footer .footer-logo span{color:#e68a69}

.logo-whisper{visibility:hidden;font-size:.8rem}
.brand-symbol:hover .logo-whisper,.brand-symbol:focus-visible .logo-whisper{visibility:visible}

.wish-card-preview{display:block;width:100%;height:auto;margin:0 0 18px;border:1px solid var(--line)}
.greeting-page{max-width:1100px;margin:0 auto;padding:40px 24px 60px;text-align:center}.greeting-page h1{font-family:"DM Serif Display",serif;font-size:clamp(2rem,5vw,3.5rem);margin:12px 0 24px}.greeting-page>img{display:block;width:100%;height:auto}.greeting-page>p:not(.eyebrow){font-size:1.1rem;line-height:1.6;margin:24px 0}.greeting-page>.solid-button{display:inline-flex;min-height:48px;align-items:center}

/* Quiet descriptor beneath the homepage wordmark. */
.home-header .brand-lockup{display:grid;grid-template-columns:50px auto;column-gap:clamp(14px,2vw,28px);row-gap:7px;padding-bottom:5px}
.home-header .brand-symbol{grid-column:1;grid-row:1}
.home-header .wordmark{grid-column:2;grid-row:1}
.home-header .brand-tagline{grid-column:2;grid-row:2;margin:0;text-align:center;font-family:"DM Sans",sans-serif;font-size:.85rem;font-weight:400;line-height:1.4;letter-spacing:.035em;color:var(--ink)}
@media(max-width:760px){.home-header .brand-lockup{grid-template-columns:36px minmax(0,1fr);column-gap:8px;row-gap:4px;max-width:calc(100% - 64px);padding-bottom:0}.home-header .brand-tagline{font-size:.75rem;letter-spacing:0}}

.home-header .brand-tagline>span{display:block}
.home-header .brand-tagline>span+span{margin-top:3px}

/* Boží trička: photographic collection preview, preserve the full artwork. */
.merch{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center}.merch-photo{min-width:0;border:1px solid var(--ink);overflow:hidden}.merch-photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}
@media(max-width:900px){.merch{grid-template-columns:1fr}.merch-photo{width:100%}}

/* Give category illustrations editorial weight without cropping or stretching. */
.category-page:not(.clubroom-page) .category-reading-story{grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:clamp(22px,3vw,40px)}
.category-page:not(.clubroom-page) .category-reading-figure{width:100%;max-width:none;min-width:0}
.category-page:not(.clubroom-page) .category-reading-figure img{width:100%;height:auto;max-height:none;object-fit:contain}
@media(max-width:760px){.category-page:not(.clubroom-page) .category-reading-story{grid-template-columns:minmax(0,1fr);gap:20px}.category-page:not(.clubroom-page) .category-reading-figure{width:100%;max-width:none}}

/* One shared square frame for every category, regardless of source proportions. */
.category-page:not(.clubroom-page) .category-reading-figure img{display:block;width:100%;height:auto;aspect-ratio:1/1;max-height:none;object-fit:cover;object-position:center}

/* Quiet magazine colophon. */
footer.public-footer{display:block;padding:28px 5vw 16px;background:var(--ink);color:var(--paper)}
.footer-inner{max-width:1180px;margin:0 auto;min-width:0}
.footer-directory{display:flex;align-items:flex-start;justify-content:space-between;gap:30px;padding:0 0 22px}
.public-footer .footer-brand{min-width:0}
.public-footer .footer-logo{display:inline-block;font-size:1.8rem;line-height:1;margin:0 0 10px;white-space:nowrap}
.public-footer .footer-brand p{font-size:.8rem;line-height:1.45;opacity:.75}
.footer-navigation{display:flex;flex-direction:column;align-items:flex-start;gap:6px;max-width:480px}
.public-footer nav.footer-links{position:static;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 26px;width:100%;max-width:none;padding:0;border:0;background:none;font-size:.8rem;font-weight:500;letter-spacing:0;text-transform:none;z-index:auto}
.public-footer nav.footer-links>a{display:flex;align-items:center;justify-content:flex-start;min-height:36px;padding:4px 0;border:0;color:var(--paper);line-height:1.4;text-align:left;white-space:normal;text-decoration:none}
.public-footer nav.footer-links>a:hover,.public-footer .footer-contact-link:hover{color:#e68a69}
.public-footer .footer-contact-link{display:inline-flex;align-items:center;min-height:36px;padding:4px 0;margin:0;border:0;background:none;color:#e68a69;font:inherit;font-size:.8rem;line-height:1.4;cursor:pointer;text-align:left}
.public-footer a:focus-visible,.public-footer button:focus-visible{outline:2px solid #e68a69;outline-offset:4px}
.public-footer .footer-note{display:flex;flex-wrap:wrap;align-items:baseline;gap:5px 18px;margin:0;padding:16px 0 0;border-top:1px solid #f5efdf33;font-size:.78rem;line-height:1.6}
.footer-note strong{font-weight:700;color:#e68a69}.footer-note span{opacity:.8}
.public-footer .copyright{margin:10px 0 0;padding:0;border:0;font-size:.65rem;line-height:1.5;opacity:.5}
@media(max-width:650px){footer.public-footer{padding:26px 5vw 16px}.footer-directory{flex-direction:column;gap:18px;padding-bottom:18px}.footer-navigation{width:100%;max-width:none}.public-footer nav.footer-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.public-footer .footer-note{gap:4px 12px;padding-top:14px;font-size:.75rem}.footer-note strong{flex-basis:100%}.public-footer .footer-logo{font-size:1.7rem}}

/* Wider homepage invitation, aligned below the last four rubric columns. */
.dulak-intro-copy{min-width:0}
.dulak-intro-copy p{max-width:none;text-align:justify;text-align-last:left;hyphens:auto;overflow-wrap:break-word}
@media(min-width:761px){.dulak-intro{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}}

/* Keep the faces in the lead illustration visible at every thumbnail size. */
.lead-story .image-wrap img{object-position:center top}

/* Keep small utility text readable after the footer redesign. */
.public-footer .copyright{font-size:.8rem;opacity:1;color:#f6f0e2}
@media(max-width:760px){.mobile-menu-toggle,.site-header .brand-symbol,.mobile-shop-link{min-width:44px;min-height:44px}}

.category-page>.section-heading h1{font-family:"DM Serif Display",serif;font-weight:400;font-size:clamp(2.2rem,4vw,3.2rem);line-height:1.1;margin:0}

.site-header .mast-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px 14px}.mast-social-link{display:inline-flex;align-items:center;min-height:44px;font-size:.75rem;font-weight:700;color:var(--ink);text-decoration:none}.mast-social-link:hover,.mast-social-link:focus-visible{color:var(--rust);text-decoration:underline}@media(max-width:1050px){.home-header .mast-actions{display:flex;grid-column:1/-1;justify-content:center}}@media(max-width:760px){.site-header .mast-actions{display:flex;order:3;width:100%;justify-content:center;gap:4px 18px}.site-header .mast-actions .shop-link{font-size:.75rem;min-height:44px}}

/* Klubovna: stories, shirt slogans and the upcoming reader selection. */
.club-shirt-block{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center;margin-top:56px;scroll-margin-top:100px}.club-shirt-copy{padding:clamp(20px,4vw,48px)}.club-shirt-copy h2,.club-vote h2{font-family:"DM Serif Display",serif;font-size:clamp(2rem,4vw,3.5rem);line-height:1.12;margin:12px 0 22px}.club-shirt-copy p{line-height:1.65;margin-bottom:20px}.club-shirt-block figure{margin:0}.club-shirt-block img{display:block;width:100%;height:auto;border-radius:2px}.club-shirt-block figcaption{font-size:.8rem;padding-top:8px}.club-vote{margin-top:44px;padding:clamp(24px,5vw,56px);border:1px solid var(--line);border-top:5px solid var(--rust);text-align:center;scroll-margin-top:100px}.club-vote>p{max-width:650px;margin:16px auto;line-height:1.6}.club-vote-steps{display:flex;justify-content:center;gap:24px;flex-wrap:wrap;margin:30px 0}.club-vote-steps span{display:flex;gap:10px;align-items:center}.club-vote-steps b{color:var(--rust)}.club-vote-status{font-weight:700}.club-teaser,.club-home-shirt{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px;margin-top:36px;border-top:3px solid var(--rust);background:#ece4d3;color:var(--ink)}.club-teaser h2,.club-home-shirt h3{font-family:"DM Serif Display",serif;font-size:1.8rem;line-height:1.2;margin:8px 0}.club-teaser p,.club-home-shirt p{margin:8px 0;line-height:1.5}.club-teaser .solid-button,.club-home-shirt .solid-button{flex-shrink:0;white-space:nowrap}.slogan-dialog label{display:block;font-weight:700;margin:18px 0}.slogan-dialog textarea,.slogan-dialog input{display:block;width:100%;margin-top:8px;border:1px solid #8a8a80;border-radius:3px;padding:12px;font:inherit;color:#14283b;background:#fff;box-sizing:border-box}.slogan-dialog textarea{resize:vertical}.slogan-dialog form+p{font-size:.85rem;line-height:1.6}.site-header nav a.nav-clubroom{color:var(--rust);font-weight:800}.site-header nav a.nav-clubroom::after{content:" ✦";font-size:.8em}.reader-content .club-teaser{margin:32px 0;padding:22px}.reader-content .club-teaser h2{font-size:1.6rem}.reader-content .club-teaser p{font-family:"DM Sans",sans-serif;font-size:.9rem}
@media(max-width:1000px){.club-shirt-block{grid-template-columns:1fr;max-width:580px;margin:36px auto 0;gap:18px}.club-shirt-copy{padding:24px 8px}.club-shirt-block figure{grid-row:2}.club-vote-steps{align-items:flex-start;flex-direction:column}.club-teaser,.club-home-shirt{align-items:flex-start;flex-direction:column}.club-teaser .solid-button,.club-home-shirt .solid-button{white-space:normal}.club-vote{text-align:left}.club-vote>p{margin-inline:0}}

.brand-symbol>img,.admin-brand>img{border-radius:50%;object-fit:cover}

.club-jump-links{display:flex;flex-wrap:wrap;gap:10px 24px;margin:0 0 20px}.club-jump-links a{display:inline-flex;align-items:center;min-height:44px;font-weight:700;color:var(--rust);text-decoration:underline;text-underline-offset:4px}.clubroom-page .section-heading{margin-bottom:12px}.clubroom-page .club-invitation-layout{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:24px;scroll-margin-top:100px}.clubroom-page .club-draw-portrait{aspect-ratio:auto;min-height:360px;max-height:420px}.clubroom-page .club-draw-portrait img{object-position:50% 20%}.clubroom-page .club-invitation-layout .club-callout{aspect-ratio:auto;padding:24px 30px;min-height:360px}.clubroom-page .club-invitation-layout .club-callout h2{font-size:clamp(1.7rem,2.4vw,2.2rem);margin-bottom:12px}.clubroom-page .club-invitation-layout .club-callout>p:not(.eyebrow){font-size:1rem;line-height:1.45;margin-bottom:10px}.clubroom-page .club-invitation-layout .club-callout>.submission-note{font-size:.75rem!important}.clubroom-page .club-shirt-block{margin-top:28px}.clubroom-page .club-shirt-copy{padding-top:12px}.clubroom-page .club-shirt-block>figure{max-width:420px;justify-self:center}
@media(max-width:1000px){.clubroom-page .club-invitation-layout{grid-template-columns:1fr;max-width:580px}.clubroom-page .club-draw-portrait{min-height:260px;height:260px;max-height:260px}.clubroom-page .club-draw-portrait img{object-position:50% 16%}.clubroom-page .club-invitation-layout .club-callout{min-height:0;padding:24px 20px}.club-jump-links{gap:0 18px}.club-jump-links a{font-size:.85rem}}

/* A more expressive greeting from the homepage portrait. */
.site-header .brand-symbol{z-index:6;transition:transform .35s cubic-bezier(.2,.8,.2,1),filter .35s ease}
.site-header .brand-symbol>img{transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease}
@media(hover:hover){.site-header .brand-symbol:hover{transform:translateY(-7px);filter:drop-shadow(0 8px 15px rgba(175,102,34,.35))}.site-header .brand-symbol:hover>img{transform:scale(1.65) rotate(-9deg);box-shadow:0 0 0 3px var(--paper),0 0 0 6px var(--rust)}}
.site-header .brand-symbol:focus-visible>img{transform:scale(1.65) rotate(-9deg);box-shadow:0 0 0 3px var(--paper),0 0 0 6px var(--rust)}
@media(prefers-reduced-motion:reduce){.site-header .brand-symbol,.site-header .brand-symbol>img{transition:none}.site-header .brand-symbol:hover,.site-header .brand-symbol:hover>img,.site-header .brand-symbol:focus-visible>img{transform:none}}

.host-club-invite{margin-top:24px;padding:20px 22px;background:rgba(220,165,46,.12);border-left:4px solid var(--rust)}.host-club-invite h3{font-family:"Playfair Display",serif;font-size:clamp(1.4rem,2.5vw,2rem);line-height:1.2;margin:8px 0 12px}.host-club-invite p:not(.eyebrow){font-size:1rem;line-height:1.6;margin:0 0 16px}.host-club-invite .eyebrow{margin:0}.host-club-invite .solid-button{font-size:.8rem}

/* Mouse speed spins the homepage portrait, then it coasts to a stop. */
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
.home-header .brand-symbol>img{transform:rotate(var(--spin-angle,0deg));transition:box-shadow .35s ease}
.home-header .brand-symbol:hover>img,.home-header .brand-symbol:focus-visible>img{transform:rotate(var(--spin-angle,0deg)) scale(1.65)}
}
.site-header nav a{position:relative;transition:background-color .22s ease,color .22s ease,transform .22s ease}
.site-header nav a::before{content:"";position:absolute;left:12%;right:12%;bottom:3px;height:3px;background:var(--rust);transform:scaleX(0);transform-origin:center;transition:transform .25s ease}
.site-header nav a:focus-visible{background:rgba(220,165,46,.19);color:var(--rust);outline:2px solid var(--rust);outline-offset:-2px}
.site-header nav a:focus-visible::before{transform:scaleX(1)}
@media(hover:hover){.site-header nav a:hover{background:rgba(220,165,46,.19);color:var(--rust);transform:translateY(-2px)}.site-header nav a:hover::before{transform:scaleX(1)}}
@media(prefers-reduced-motion:reduce){.site-header nav a,.site-header nav a::before{transition:none}.site-header nav a:hover{transform:none}}

.dulak-host-dialog .host-content{padding:clamp(24px,3.5vw,44px)}
.dulak-host-dialog .host-content h2{font-size:clamp(2rem,3.6vw,3.8rem);line-height:1.08;margin:18px 0}
.dulak-host-dialog .host-content>p:not(.eyebrow){font-size:1rem;line-height:1.5;margin-bottom:20px}
.dulak-host-dialog .host-choices{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}
.dulak-host-dialog .host-choices>button{min-width:0;padding:14px 12px;font-size:.8rem}
.dulak-host-dialog .host-club-invite{margin-top:24px;padding:20px 22px}
.dulak-host-dialog .host-club-invite h3{font-family:"DM Serif Display",serif;font-size:clamp(1.5rem,2.1vw,2rem);margin:8px 0 10px}
.dulak-host-dialog .host-club-invite p:not(.eyebrow){font-size:.95rem;line-height:1.55;margin-bottom:14px}
.dulak-host-dialog .host-club-invite .solid-button{padding:12px 18px;font-size:.75rem}
.dulak-host-dialog .host-results{margin-top:16px}
.dulak-host-dialog .host-invitation{font-size:.9rem;margin:10px 0}
.host-personal-contact{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-top:20px;padding-top:16px;border-top:1px solid var(--line);font-size:.85rem}
.host-personal-contact>button{padding:0;min-height:36px;border:0;box-shadow:none;background:none;color:var(--rust);font-size:.75rem;text-decoration:underline;text-underline-offset:4px}

.dulak-host-dialog .host-choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.dulak-host-dialog .host-choices>a,.dulak-host-dialog .host-choices>button{display:flex;align-items:center;justify-content:center;min-width:0;min-height:52px;padding:14px 10px;font-size:.78rem;text-align:center;text-decoration:none;white-space:normal}
@media(max-width:500px){.dulak-host-dialog .host-choices{grid-template-columns:1fr;gap:10px}}

.dulak-host-dialog .host-invitation{min-height:68px;padding:14px 16px;border-left:3px solid transparent;font-style:normal;line-height:1.5;transition:background-color .2s,color .2s,border-color .2s}
.dulak-host-dialog .host-invitation.is-lit{background:rgba(220,165,46,.22);border-left-color:var(--rust);color:var(--ink)}
.dulak-host-dialog .host-choices>a:hover,.dulak-host-dialog .host-choices>button:hover,.dulak-host-dialog .host-choices>a:focus-visible,.dulak-host-dialog .host-choices>button:focus-visible{background:var(--ink);color:var(--paper)}
@media(prefers-reduced-motion:reduce){.dulak-host-dialog .host-invitation{transition:none}}

.dulak-host-dialog .host-personal-contact>button:hover,.dulak-host-dialog .host-personal-contact>button:focus-visible{background:var(--ink);color:var(--paper);padding:8px 12px;text-decoration:none;outline:2px solid var(--ink);outline-offset:2px}
.dulak-host-dialog .host-personal-contact>button{padding:8px 12px}

.home-origin-note{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px 28px;padding:16px 4vw;border-bottom:1px solid var(--line);background:#ece4d3;font-size:.85rem;line-height:1.5}.home-origin-note>strong{color:var(--rust);font-size:1rem}.home-origin-note b{white-space:nowrap}@media(max-width:600px){.home-origin-note{gap:4px 16px;padding:14px 5vw}.home-origin-note>strong{flex-basis:100%;text-align:center}}

.home-origin-note{gap:4px 10px;padding:9px 4vw;background:transparent;border-bottom:1px solid rgba(20,36,44,.12);color:#66706d;font-size:.7rem;font-weight:400;line-height:1.5}.home-origin-note>strong{font-size:inherit;color:inherit;font-weight:600}.home-origin-note>span[aria-hidden]{font-size:.85rem}@media(max-width:600px){.home-origin-note{gap:3px 7px;padding:9px 4vw;font-size:.65rem}.home-origin-note>strong{flex-basis:auto;text-align:inherit}}

.home-origin-note{border:0;background:none;padding:5px 4vw;margin:0;color:#69716d}@media(max-width:600px){.home-origin-note{padding:5px 4vw}}

.about-dulak .about-origin-note{font-family:"DM Sans",sans-serif;font-size:.78rem;line-height:1.6;color:#69716d;margin-top:18px}

.home-header .wordmark{position:relative;isolation:isolate;display:inline-block;transition:transform .28s ease,text-shadow .28s ease}
.home-header .wordmark::before{content:"";position:absolute;inset:8% -3% 0;z-index:-1;pointer-events:none;background:linear-gradient(110deg,transparent 20%,rgba(220,165,46,.28) 48%,transparent 76%);background-size:250% 100%;background-position:100% 0;opacity:0;transition:background-position .65s ease,opacity .25s ease}
.home-header .wordmark::after{content:"";position:absolute;left:0;right:0;bottom:-5px;height:3px;background:var(--rust);transform:scaleX(0);transform-origin:left;transition:transform .35s ease}
@media(hover:hover){.home-header .wordmark:hover{transform:translateY(-3px);text-shadow:0 5px 15px rgba(175,102,34,.16)}.home-header .wordmark:hover::before{opacity:1;background-position:0 0}.home-header .wordmark:hover::after{transform:scaleX(1)}}
.home-header .wordmark:focus-visible::after{transform:scaleX(1)}
@media(prefers-reduced-motion:reduce){.home-header .wordmark,.home-header .wordmark::before,.home-header .wordmark::after{transition:none}.home-header .wordmark:hover{transform:none}}

footer.public-footer{padding:24px 4vw 16px}
.public-footer .footer-directory{gap:20px;padding-bottom:14px;align-items:start}
.public-footer .footer-navigation{max-width:650px}
.public-footer nav.footer-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 18px}
.public-footer nav.footer-links>a{min-height:36px;padding:5px 0;font-size:.8rem;line-height:1.4}
.public-footer .footer-social-row{display:flex;align-items:center;flex-wrap:wrap;gap:4px 20px;margin-top:8px}
.public-footer .footer-social-row>.footer-contact-link{display:inline-flex;align-items:center;width:auto;margin:0;padding:5px 0;min-height:36px;font-size:.78rem;line-height:1.4}
.public-footer .footer-note{padding-top:12px;gap:4px 16px;font-size:.72rem}
.public-footer .copyright{margin-top:10px;font-size:.7rem}
@media(max-width:650px){.public-footer .footer-navigation{max-width:none}.public-footer nav.footer-links{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 12px}.public-footer nav.footer-links>a{font-size:.75rem;min-height:40px}.public-footer .footer-directory{gap:12px}.public-footer .footer-social-row{gap:4px 16px}}

/* The private siesta behind Dulák's portrait. */
.dulak-host-dialog.spa-dialog{width:calc(100vw - 32px);max-width:1680px;height:calc(100dvh - 32px);max-height:960px;border:1px solid rgba(255,240,207,.25);border-radius:8px;background:#10252a;color:#fff6e7;box-shadow:0 24px 100px #0008;overscroll-behavior:contain}
.spa-dialog::backdrop{background:rgba(5,16,20,.88);backdrop-filter:blur(8px)}
.spa-dialog .host-layout{position:relative;isolation:isolate;min-height:100%;display:flex;justify-content:flex-end;align-items:center;padding:56px 5%}
.spa-scene{position:absolute;inset:0;z-index:-2;overflow:hidden;border-radius:7px}
.spa-scene img{width:100%;height:100%;object-fit:cover;object-position:center}
.spa-dialog .host-layout::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,transparent 20%,rgba(8,25,29,.18) 38%,rgba(8,25,29,.84) 58%,rgba(8,25,29,.94)),linear-gradient(0deg,rgba(8,25,29,.35),transparent 45%)}
.dulak-host-dialog.spa-dialog .host-content{width:49%;padding:20px 0 20px 24px;text-shadow:0 2px 20px #0005}
.spa-dialog .host-content>.eyebrow{color:#edc680;font-size:.65rem;letter-spacing:.19em}
.dulak-host-dialog.spa-dialog .host-content h2{font-size:clamp(2.4rem,4.3vw,5rem);line-height:1.06;letter-spacing:-.035em;margin:22px 0}
.dulak-host-dialog.spa-dialog .host-content>p:not(.eyebrow){color:#eee4d1;font-size:1rem}
.spa-dialog .host-close{position:fixed;top:24px;right:26px;border:1px solid #e6d7ba99;background:#10252ad9;color:#fff6e7;z-index:5}
.dulak-host-dialog.spa-dialog .host-choices>a,.dulak-host-dialog.spa-dialog .host-choices>button{border:1px solid #e6d7ba88;background:#10252a80;color:#fff6e7;box-shadow:none;backdrop-filter:blur(8px);font-size:.68rem;padding:15px 8px;min-height:52px;transition:background .2s,color .2s,border-color .2s}
.dulak-host-dialog.spa-dialog .host-choices>a:hover,.dulak-host-dialog.spa-dialog .host-choices>button:hover,.dulak-host-dialog.spa-dialog .host-choices>.solid-button,.dulak-host-dialog.spa-dialog .host-choices>a:focus-visible,.dulak-host-dialog.spa-dialog .host-choices>button:focus-visible{background:#edc680;color:#10252a;border-color:#edc680}
.dulak-host-dialog.spa-dialog .host-choices>button:disabled{color:#c8c1b5;background:#10252a80;opacity:.6}
.dulak-host-dialog.spa-dialog .host-invitation{color:#e5daca;font-size:.85rem;opacity:1;text-shadow:none;min-height:72px}
.dulak-host-dialog.spa-dialog .host-invitation.is-lit{background:#eac47d1a;border-left-color:#edc680;color:#fff6e7}
.spa-dialog .host-personal-contact{border-color:#eadab833;color:#d2c9b9;font-size:.75rem}
.spa-dialog .host-personal-contact>button{color:#edc680}
.dulak-host-dialog.spa-dialog .host-personal-contact>button:hover,.dulak-host-dialog.spa-dialog .host-personal-contact>button:focus-visible{background:#edc680;color:#10252a;outline-color:#edc680}
.spa-dialog .host-results:not(:empty){padding:12px 18px;background:#10252ae8;border:1px solid #eadab833;border-radius:4px;max-height:34dvh;overflow:auto;text-shadow:none}
.spa-dialog .host-story{border-color:#eadab833}.spa-dialog .host-story .eyebrow,.spa-dialog .host-story:hover h3{color:#edc680}.spa-dialog .host-results>.outline-button{color:#fff6e7;border-color:#eadab888;background:transparent}
@media(max-width:700px){.dulak-host-dialog.spa-dialog{width:calc(100vw - 16px);height:calc(100dvh - 16px);max-height:none}.spa-dialog .host-layout{display:block;padding:0;min-height:100%}.spa-scene{position:relative;display:block;height:42dvh;min-height:230px;max-height:390px;z-index:0;border-radius:7px 7px 0 0}.spa-scene img{object-position:23% center}.spa-dialog .host-layout::before{display:none}.dulak-host-dialog.spa-dialog .host-content{width:100%;padding:20px 24px 24px;margin-top:-22px;position:relative;background:linear-gradient(0deg,#10252a 94%,transparent);z-index:1}.dulak-host-dialog.spa-dialog .host-content h2{font-size:clamp(2rem,8vw,3rem);margin:14px 0}.spa-dialog .host-close{top:16px;right:16px}.dulak-host-dialog.spa-dialog .host-choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.dulak-host-dialog.spa-dialog .host-choices>a,.dulak-host-dialog.spa-dialog .host-choices>button{font-size:.61rem;padding:12px 5px}.spa-dialog .host-personal-contact{gap:6px}.spa-dialog .host-results:not(:empty){max-height:none}}

.public-footer .footer-navigation{max-width:850px;width:100%}
.public-footer nav.footer-links{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px 18px;align-items:center}
.public-footer nav.footer-links>a,.public-footer nav.footer-links>button{display:inline-flex;align-items:center;min-height:36px;margin:0;padding:5px 0;width:auto;font-size:.78rem;line-height:1.4;text-align:left}
@media(max-width:650px){.public-footer nav.footer-links{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.public-footer nav.footer-links>a,.public-footer nav.footer-links>button{min-height:40px}}

/* Responsive audit: retain the design, improve fit and input affordances. */
.site-header .masthead>* { min-width:0; }
.site-header .mast-social-link,.site-header .shop-link { white-space:nowrap; }
.club-shirt-block>* { min-width:0; }
.clubroom-page .club-shirt-block { margin-bottom:32px; }
.clubroom-page .club-jump-links a { max-width:100%; }
.story-contact-dialog,.slogan-dialog,.dulak-host-dialog { overscroll-behavior:contain; }
.story-contact-email { overflow-wrap:anywhere; }
.spa-dialog .host-close { position:absolute; top:16px; right:16px; }
.solid-button:focus-visible,.outline-button:focus-visible,.footer-contact-link:focus-visible,.mast-social-link:focus-visible { outline:3px solid var(--rust); outline-offset:4px; }
@media(min-width:761px) and (max-width:1200px){
 .home-header .masthead{grid-template-columns:200px minmax(0,1fr);gap:12px 20px}
 .home-header .date-panel{grid-column:1;grid-row:1;min-width:0;justify-self:stretch}
 .home-header .brand-lockup{grid-column:2;grid-row:1;justify-self:center}
 .home-header .wordmark{font-size:clamp(2.6rem,5vw,4rem)}
 .home-header .mast-actions{grid-column:1/-1;grid-row:2;justify-self:center;justify-content:center}
 .compact-header .mast-actions{gap:4px 12px}
 .compact-header .wordmark{font-size:clamp(2.2rem,4.6vw,3.8rem)}
}
@media(max-width:760px){
 .mast-social-link,.site-header .shop-link,.public-footer nav.footer-links>a,.public-footer nav.footer-links>button{min-height:44px}
 .site-header .mast-actions{gap:0 16px}
 .site-header .mast-actions .shop-link{padding-inline:0}
 .story-contact-dialog input,.story-contact-dialog textarea,.slogan-dialog input,.slogan-dialog textarea{font-size:16px}
 .club-jump-links a{line-height:1.4;padding-block:8px}
 .club-vote h2{overflow-wrap:anywhere;font-size:clamp(1.7rem,7vw,2.4rem)}
 .dulak-host-dialog.spa-dialog .host-choices>a,.dulak-host-dialog.spa-dialog .host-choices>button{font-size:.7rem;min-height:48px}
 .dulak-host-dialog.spa-dialog .host-content>.eyebrow{font-size:.65rem}
 .spa-dialog .host-close{position:absolute;top:12px;right:12px}
}
@media(max-width:380px){
 .home-header .wordmark,.compact-header .wordmark{font-size:1.65rem}
 .home-header .brand-lockup{max-width:calc(100% - 64px);column-gap:6px}
 .home-header .brand-tagline{font-size:.68rem}
 .site-header .mast-actions{gap:0 13px}
 .mast-social-link,.site-header .mast-actions .shop-link{font-size:.7rem}
 .dulak-host-dialog.spa-dialog .host-choices{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media(max-width:760px){.home-header .brand-lockup{grid-template-columns:44px minmax(0,1fr)}}

/* A full-screen invitation into Dulák's living room. */
.dulak-host-dialog.lounge-dialog{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;border:0;border-radius:0;background:#191410;color:#fff4dc;box-shadow:none;overflow:auto}
.lounge-dialog::backdrop{background:#100e0c;backdrop-filter:blur(8px)}
.lounge-dialog .host-layout{position:relative;isolation:isolate;display:flex;justify-content:flex-end;align-items:center;min-height:100dvh;padding:64px 5vw}
.lounge-dialog .host-visual{position:absolute;inset:0 auto 0 0;width:59%;height:100%;aspect-ratio:auto;margin:0;z-index:-2;background:#38251b}
.lounge-dialog .host-visual .host-portrait{width:100%;height:100%;max-height:none;object-fit:cover;object-position:50% 32%}
.lounge-dialog .host-layout::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,transparent 28%,#19141022 40%,#191410e8 58%,#191410 70%)}
.lounge-dialog .lounge-scene-note{position:absolute;left:5vw;right:12%;bottom:6vh;padding-top:20px;color:#fff4dc;text-shadow:0 2px 22px #000;filter:drop-shadow(0 2px 8px #0008)}
.lounge-scene-note>span{font-size:.62rem;letter-spacing:.18em;font-weight:700}
.lounge-scene-note>strong{display:block;margin-top:12px;font-family:"DM Serif Display",serif;font-size:clamp(1.8rem,3vw,3.5rem);font-weight:400;line-height:1.05}
.lounge-scene-note em{color:#ffd073;font-weight:400}
.dulak-host-dialog.lounge-dialog .host-content{width:48%;max-width:750px;padding:0 0 0 3vw}
.lounge-dialog .host-content>.eyebrow{color:#edbd68;font-size:.66rem;letter-spacing:.16em}
.dulak-host-dialog.lounge-dialog .host-content h2{font-size:clamp(3.2rem,5.6vw,6.6rem);line-height:.98;letter-spacing:-.045em;margin:24px 0}
.lounge-dialog .host-content h2 em{color:#ffd073;font-weight:400}
.dulak-host-dialog.lounge-dialog .host-content>p:not(.eyebrow){color:#dbccba;font-size:1rem;line-height:1.6;max-width:480px}
.lounge-dialog .host-close{position:fixed;top:20px;right:22px;z-index:5;width:48px;height:48px;border:1px solid #efd7b76b;border-radius:50%;background:#191410e8;color:#fff4dc}
.dulak-host-dialog.lounge-dialog .lounge-choices{grid-template-columns:1fr;gap:10px;margin:28px 0 20px}
.dulak-host-dialog.lounge-dialog .lounge-choices>.lounge-choice{display:grid;grid-template-columns:28px minmax(0,1fr) 24px;align-items:center;gap:14px;min-height:92px;padding:18px 20px;border:1px solid #dbbf8b44;border-radius:3px;background:#292118c7;color:#fff4dc;text-align:left;text-decoration:none;box-shadow:none;letter-spacing:normal;transition:transform .22s ease,background .22s ease,border-color .22s ease}
.lounge-choice>span{min-width:0}
.lounge-choice strong{display:block;font-family:"DM Serif Display",serif;font-size:1.55rem;font-weight:400;line-height:1.1}
.lounge-choice small{display:block;margin-top:7px;font-size:.78rem;font-weight:400;line-height:1.45;color:#d4c4af}
.lounge-choice .lounge-choice-number{color:#d4ad70;font-size:.65rem;font-weight:500;align-self:start;padding-top:5px}
.lounge-choice .lounge-choice-arrow{font-size:1.7rem;font-weight:400;color:#edbd68}
.dulak-host-dialog.lounge-dialog .lounge-choices>.lounge-choice-shirt{background:#f3c65c;border-color:#f3c65c;color:#211910}
.lounge-choice-shirt small,.lounge-choice-shirt .lounge-choice-number,.lounge-choice-shirt .lounge-choice-arrow{color:#46341c}
.dulak-host-dialog.lounge-dialog .lounge-choices>.lounge-choice:hover,.dulak-host-dialog.lounge-dialog .lounge-choices>.lounge-choice:focus-visible,.dulak-host-dialog.lounge-dialog .lounge-choices>.is-active{background:#443222;border-color:#edbd68;color:#fff4dc;transform:translateX(5px)}
.dulak-host-dialog.lounge-dialog .lounge-choices>.lounge-choice-shirt:hover,.dulak-host-dialog.lounge-dialog .lounge-choices>.lounge-choice-shirt:focus-visible{background:#ffdb81;color:#211910}
.lounge-dialog .lounge-choice:focus-visible,.lounge-dialog .host-close:focus-visible{outline:3px solid #ffd073;outline-offset:4px}
.lounge-dialog .host-personal-contact{border-color:#dbbf8b44;color:#cdbcaa}
.lounge-dialog .host-personal-contact>button{color:#ffd073}
.dulak-host-dialog.lounge-dialog .host-personal-contact>button:hover,.dulak-host-dialog.lounge-dialog .host-personal-contact>button:focus-visible{background:#f3c65c;color:#211910;outline-color:#f3c65c}
.dulak-host-dialog.lounge-dialog .host-content>.lounge-signoff{font-size:.73rem;font-style:italic;color:#b3a18c;margin:16px 0 0}
.lounge-dialog .host-results:not([hidden]){max-height:34dvh;overflow:auto;padding:4px 16px;background:#211b15;border:1px solid #dbbf8b44}
.lounge-dialog .host-results[hidden]{display:none}
.lounge-dialog .host-story{border-color:#dbbf8b44;color:#fff4dc}
.lounge-dialog .host-story .eyebrow,.lounge-dialog .host-story:hover h3,.lounge-dialog .host-read,.lounge-dialog .host-results>p>a{color:#ffd073}
@media(min-width:901px) and (prefers-reduced-motion:no-preference){.lounge-dialog[open] .host-content{animation:lounge-welcome .55s ease-out both}@keyframes lounge-welcome{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}}
@media(max-width:900px){
 .lounge-dialog .host-layout{display:block;padding:0;min-height:100dvh}
 .lounge-dialog .host-visual{position:relative;width:100%;height:54dvh;min-height:300px;max-height:640px;z-index:0}
 .lounge-dialog .host-visual .host-portrait{object-position:50% 22%}
 .lounge-dialog .host-layout::before{display:none}
 .lounge-dialog .lounge-scene-note{left:6vw;bottom:35px;right:6vw}
 .lounge-scene-note>strong{font-size:clamp(1.8rem,6vw,3rem)}
 .lounge-dialog .host-visual::after{content:"";position:absolute;inset:40% 0 0;pointer-events:none;background:linear-gradient(transparent,#191410b3)}
 .lounge-dialog .lounge-scene-note{z-index:1}
 .dulak-host-dialog.lounge-dialog .host-content{position:relative;z-index:1;width:100%;max-width:none;margin-top:-12px;padding:24px 6vw 32px;background:#191410}
 .dulak-host-dialog.lounge-dialog .host-content h2{font-size:clamp(3.1rem,10vw,5rem);margin:18px 0}
 .dulak-host-dialog.lounge-dialog .host-content>p:not(.eyebrow){max-width:none}
 .dulak-host-dialog.lounge-dialog .lounge-choices{margin:24px 0 18px}
 .lounge-dialog .host-close{top:12px;right:12px}
 .lounge-dialog .host-results:not([hidden]){max-height:none}
}
@media(max-width:400px){.dulak-host-dialog.lounge-dialog .lounge-choices>.lounge-choice{padding:16px 12px;gap:10px;grid-template-columns:22px minmax(0,1fr) 20px}.lounge-choice strong{font-size:1.4rem}.lounge-choice small{font-size:.75rem}.lounge-dialog .host-content>.eyebrow{font-size:.59rem;letter-spacing:.1em}}
@media(prefers-reduced-motion:reduce){.dulak-host-dialog.lounge-dialog .lounge-choices>.lounge-choice{transition:none;transform:none}}

/* Boží trička: a full-screen showroom while the first collection is prepared. */
.shop-coming-dialog{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;border:0;background:#f4dfbc;color:#25251c;overscroll-behavior:contain}
.shop-coming-dialog::backdrop{background:#241b12}
.shop-showroom{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;gap:4vw;min-height:100dvh;padding:54px 5vw;background:radial-gradient(ellipse at 15% 20%,#fff3d9 0,transparent 55%),linear-gradient(120deg,#d4af83,#f7e5c6 58%,#f4dfbc)}
.shop-showroom .shop-dulak-scene{flex-shrink:0;width:min(48vw,calc((100dvh - 90px) * .8));aspect-ratio:1122/1402;border-radius:45% 45% 4px 4px;box-shadow:0 24px 80px #7c4c2c33}
.shop-showroom-copy{position:relative;min-width:0;max-width:640px;width:46%;padding:14px 0}
.shop-showroom-copy>.eyebrow{font-size:.68rem;letter-spacing:.18em;color:#705335}
.shop-drop-status{display:inline-flex;align-items:center;gap:10px;margin:26px 0 0;padding:9px 12px;border:1px solid #a77b4655;font-size:.61rem;letter-spacing:.1em;font-weight:800}
.shop-drop-status>span{font-size:1rem;color:#90602c}
.shop-showroom-copy h2{font-family:"DM Serif Display",serif;font-size:clamp(3.4rem,5.8vw,7rem);line-height:1;letter-spacing:-.045em;font-weight:400;margin:22px 0}
.shop-showroom-copy h2 em{color:#935329;font-weight:400}
.shop-showroom-copy>p{max-width:480px;font-size:1rem;line-height:1.7}
.shop-showroom-copy>.shop-showroom-intro{font-size:1.25rem;font-weight:600;line-height:1.4;margin:18px 0 12px}
.shop-showroom-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px 24px;margin:28px 0}
.shop-showroom-actions .solid-button{background:#25251c;color:#fff4dc;border:1px solid #25251c;padding:18px 22px;min-height:54px;font-size:.73rem;white-space:normal;text-decoration:none;transition:background .2s,transform .2s}
.shop-showroom-actions .solid-button:hover{background:#75482a;transform:translateY(-3px)}
.shop-write-link{display:inline-flex;align-items:center;min-height:48px;color:#57351f;font-size:.68rem;font-weight:800;text-underline-offset:5px}
.shop-showroom-steps{display:flex;flex-wrap:wrap;gap:16px 24px;border-top:1px solid #8b623f44;padding-top:22px;margin-top:28px;font-size:.8rem}
.shop-showroom-steps b{margin-right:8px;font-size:.6rem;color:#8d5e32}
.shop-showroom-copy>.shop-showroom-signoff{font-size:.74rem;font-style:italic;color:#735b43;margin-top:20px}
.shop-coming-dialog .shop-coming-close{position:fixed;top:20px;right:22px;z-index:5;width:48px;height:48px;background:#f7e5c6ed;border-color:#6b4d35;color:#35281c}
.shop-showroom-actions a:focus-visible{outline:3px solid #75482a;outline-offset:4px}
@media(max-width:850px){
 .shop-showroom{display:block;padding:60px 0 30px}
 .shop-showroom .shop-dulak-scene{width:min(90vw,calc(65dvh * .8));margin:0 auto;min-width:230px}
 .shop-showroom-copy{width:100%;max-width:680px;margin:auto;padding:28px 6vw 12px}
 .shop-showroom-copy h2{font-size:clamp(3.4rem,11vw,5.5rem)}
 .shop-showroom-copy>p{max-width:none}
 .shop-showroom-copy>.shop-drop-status{margin-top:18px;font-size:.6rem}
 .shop-coming-dialog .shop-coming-close{top:12px;right:12px}
 .shop-showroom-actions{gap:10px 20px}
}
@media(prefers-reduced-motion:reduce){.shop-showroom-actions .solid-button{transition:none;transform:none}}

/* The photo and vector face effects share the same crop at every screen size. */
.lounge-dialog .host-visual .host-portrait{object-position:50% 0}
.lounge-face-effects{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.lounge-eyelids,.lounge-smoke-puff{opacity:0}
.lounge-dialog[open] .lounge-eyelids{animation:lounge-blink 7.1s linear infinite}
.lounge-dialog[open] .lounge-smoke-puff{animation:lounge-smoke-exhale 5.8s ease-out infinite;transform-origin:0 0}
.lounge-dialog[open] .lounge-smoke-second{animation-delay:.48s}
.lounge-dialog[open] .lounge-smoke-third{animation-delay:.96s}
@keyframes lounge-blink{0%,35%,39%,82%,86%,90%,94%,100%{opacity:0}36%,38%,83%,85%,91%,93%{opacity:1}}
@keyframes lounge-smoke-exhale{
 0%{opacity:0;transform:translate(0,0) scale(.25) rotate(-12deg)}
 5%{opacity:.88;transform:translate(-9px,-1px) scale(.7) rotate(-12deg)}
 23%{opacity:.72;transform:translate(-60px,-17px) scale(2.1) rotate(-20deg)}
 44%{opacity:.28;transform:translate(-115px,-51px) scale(3.5) rotate(-28deg)}
 56%,100%{opacity:0;transform:translate(-145px,-85px) scale(4.3) rotate(-34deg)}
}
@media(prefers-reduced-motion:reduce){.lounge-dialog[open] .lounge-eyelids,.lounge-dialog[open] .lounge-smoke-puff{animation:none;opacity:0}}

.spa-photograph{display:block;width:100%;height:100%}
.spa-scene .spa-face-effects{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;background:transparent}

/* Palms on glass, while Dulák continues his private siesta. */
.spa-scene{container-type:size}
.spa-art{position:absolute;width:max(100cqw,calc(100cqh * 1.779787));height:max(100cqh,calc(100cqw / 1.779787));left:50%;top:50%;transform:translate(-50%,-50%)}
.spa-kids-effects{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.spa-hand-tap{transform-box:view-box}
.spa-hand-one,.spa-glass-one{transform-origin:54px 143px;animation:spa-palm-tap 6.7s ease-in-out infinite}
.spa-hand-two,.spa-glass-two{transform-origin:59px 199px;animation:spa-palm-tap 8.3s ease-in-out 1.3s infinite}
.spa-hand-three,.spa-glass-three{transform-origin:210px 244px;animation:spa-palm-tap 7.6s ease-in-out 2.7s infinite}
.spa-glass-tap{opacity:0;filter:blur(.5px)}
.spa-glass-one{animation-name:spa-glass-print}
.spa-glass-two{animation-name:spa-glass-print}
.spa-glass-three{animation-name:spa-glass-print}
@keyframes spa-palm-tap{0%,12%,30%,100%{transform:translateY(0) scale(1)}16%{transform:translateY(-4px) scale(.95)}19%,22%{transform:translateY(1px) scale(1.07)}25%{transform:translateY(-2px) scale(.98)}}
@keyframes spa-glass-print{0%,17%,35%,100%{opacity:0;transform:scale(.7)}20%{opacity:.35;transform:scale(.9)}29%{opacity:.1;transform:scale(1.4)}}
@media(max-width:700px){.spa-art{left:23%;transform:translate(-23%,-50%)}}
@media(prefers-reduced-motion:reduce){.spa-hand-tap,.spa-glass-tap{animation:none}.spa-glass-tap{opacity:0}}

/* A smaller masthead gives the gallery more room. */
.site-header.gallery-header .masthead{min-height:60px;padding-block:8px}
.site-header.gallery-header .wordmark{font-size:clamp(2rem,3.3vw,3rem)}
.site-header.gallery-header .brand-symbol{width:42px;height:42px}
.site-header.gallery-header nav>a{min-height:42px;padding-block:9px}
@media(max-width:760px){.site-header.gallery-header .masthead{min-height:60px}.site-header.gallery-header .wordmark{font-size:1.7rem}.site-header.gallery-header .brand-symbol{width:40px;height:40px}}

/* A fine trail from the tip, an occasional lazy exhale from the mouth. */
.spa-smoke-wisp{fill:none;stroke:#f4eddf;stroke-width:1.6;stroke-linecap:round;opacity:0;filter:blur(.7px);transform-origin:0 0}
.spa-dialog[open] .spa-smoke-wisp{animation:spa-tip-smoke 4.8s ease-in-out infinite}
.spa-dialog[open] .spa-smoke-wisp-two{animation-delay:-2.4s;stroke-width:1.1}
.spa-mouth-exhale{opacity:0;transform-origin:0 0}
.spa-dialog[open] .spa-mouth-exhale{animation:spa-lazy-exhale 9.8s ease-out 3s infinite}
.spa-dialog[open] .spa-mouth-exhale-two{animation-delay:3.4s}
@keyframes spa-tip-smoke{0%,100%{opacity:.08;transform:translate(0,0) skewX(-4deg) scaleY(.8)}40%{opacity:.4;transform:translate(-3px,-4px) skewX(5deg) scaleY(1)}75%{opacity:.15;transform:translate(2px,-10px) skewX(-3deg) scaleY(1.1)}}
@keyframes spa-lazy-exhale{0%,6%{opacity:0;transform:translate(0,0) scale(.2)}12%{opacity:.5;transform:translate(-15px,-4px) scale(.8)}25%{opacity:.27;transform:translate(-58px,-23px) scale(1.8)}40%,100%{opacity:0;transform:translate(-108px,-55px) scale(2.7)}}
@media(prefers-reduced-motion:reduce){.spa-dialog[open] .spa-smoke-wisp,.spa-dialog[open] .spa-mouth-exhale{animation:none;opacity:0}}

.article-mood{display:inline-flex;align-items:center;gap:.4em;margin:.2rem 0 .6rem;font-size:1rem;line-height:1.5;color:#665b4b}.article-mood [role="img"]{font-size:1.45rem}.article-mood-label{font-size:.78rem;letter-spacing:.02em}.mood-legend{font-size:.88rem;color:#665b4b;line-height:1.8;margin:1rem 0}.reader-heading .article-mood{margin-bottom:.6rem}

.home-club-callout .club-entrance h2{font:inherit;font-family:var(--font-display,Georgia,serif);font-size:clamp(3rem,6vw,6rem);line-height:1.05;margin:.2em 0}.home-club-callout .club-entrance{margin-top:1.5rem}
