/*
  Just Gerald public web system
  A white-space-first editorial layer for the website. It deliberately does
  not target the separate .jg-print-* Paper Edition.
*/
@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,600;9..40,700&family=Manrope:wght@400;500;600;700;800&display=swap');

:root{
  --jg-web-ink:#181818;
  --jg-web-muted:#666764;
  --jg-web-line:#e5e5e1;
  --jg-web-accent:#ae473a;
  --jg-web-paper:#ffffff;
  --jg-web-soft:#f7f7f5;
  --jg-web-warm:#f2eee6;
  --jg-web-max:1440px;
}

/* Shared reading surface and headers. */
html.jg-reference-active,
html.jg-coffee-active,
html.jg-global-active,
html.jg-archive-active,
html.jg-media-active,
html.jg-cwk-active,
html.jg-cal-active,
html.jg-lives-active,
html.jg-baba-feature-active,
html.jg-reference-active body,
html.jg-coffee-active body,
html.jg-global-active body,
html.jg-archive-active body,
html.jg-media-active body,
html.jg-cwk-active body,
html.jg-cal-active body,
html.jg-lives-active body,
html.jg-baba-feature-active body{
  background:var(--jg-web-paper);
  color:var(--jg-web-ink);
  font-family:'DM Sans',Arial,sans-serif;
}

.jg-home-header,
.jg-coffee-header,
.jg-global-header,
.jg-archive-header,
.jg-media-header,
.jg-cwk-header,
.jg-cal-header,
.jg-lives-header,
.jg-baba-header{
  width:min(var(--jg-web-max),100%);
  min-height:74px;
  margin:0 auto;
  padding:0 clamp(1.25rem,4vw,4.6rem);
  border-color:var(--jg-web-line);
  background:var(--jg-web-paper);
  color:var(--jg-web-ink);
}

.jg-home-brand img,
.jg-coffee-brand img,
.jg-global-brand img,
.jg-cwk-brand img,
.jg-cal-brand img,
.jg-baba-brand img,
.jg-archive-header>a img,
.jg-media-header>a img{
  display:none;
}

.jg-home-brand::after,
.jg-coffee-brand::after,
.jg-global-brand::after,
.jg-cwk-brand::after,
.jg-cal-brand::after,
.jg-baba-brand::after,
.jg-archive-header>a:first-child::after,
.jg-media-header>a:first-child::after{
  content:'JUST GERALD';
  display:block;
  color:var(--jg-web-ink);
  font:800 1.05rem/.9 'Manrope',Arial,sans-serif;
  letter-spacing:-.085em;
  white-space:nowrap;
}

.jg-lives-header{background:var(--jg-web-paper)}
.jg-lives-brand span,.jg-lives-brand em{display:none}
.jg-lives-brand::after{
  content:'JUST GERALD';
  display:block;
  color:var(--jg-web-ink);
  font:800 1.05rem/.9 'Manrope',Arial,sans-serif;
  letter-spacing:-.085em;
  white-space:nowrap;
}

.jg-home-header nav,
.jg-coffee-header nav,
.jg-global-header nav,
.jg-archive-header nav,
.jg-media-header nav,
.jg-cwk-header nav,
.jg-cal-header nav,
.jg-lives-header nav,
.jg-baba-header nav{
  gap:clamp(.65rem,1.25vw,1.45rem);
  font:700 .64rem/1 'Manrope',Arial,sans-serif;
  letter-spacing:.075em;
}

.jg-home-header nav a,
.jg-coffee-header nav a,
.jg-global-header nav a,
.jg-archive-header nav a,
.jg-media-header nav a,
.jg-cwk-header nav a,
.jg-cal-header nav a,
.jg-lives-header nav a,
.jg-baba-header nav a{
  padding:.7rem 0;
  border-bottom:1px solid transparent;
}

.jg-home-header nav a:hover,
.jg-home-header nav a:focus-visible,
.jg-coffee-header nav a:hover,
.jg-coffee-header nav a:focus-visible,
.jg-coffee-header nav a[aria-current=page],
.jg-global-header nav a:hover,
.jg-global-header nav a:focus-visible,
.jg-global-header nav a[aria-current=page],
.jg-archive-header nav a:hover,
.jg-archive-header nav a[aria-current=page],
.jg-media-header nav a:hover,
.jg-cwk-header nav a:hover,
.jg-cwk-header nav a:focus-visible,
.jg-cal-header nav a:hover,
.jg-cal-header nav a:focus-visible,
.jg-cal-header nav a[aria-current=page],
.jg-lives-header nav a:hover,
.jg-lives-header nav a[aria-current=page],
.jg-baba-header nav a:hover,
.jg-baba-header nav a:focus-visible{
  color:var(--jg-web-accent);
  border-color:currentColor;
}

.jg-home-header nav a:last-child,
.jg-coffee-header nav a:last-child,
.jg-global-header nav a:last-child,
.jg-archive-header nav a:last-child,
.jg-media-header nav a:last-child,
.jg-cwk-header nav a:last-child,
.jg-cal-header nav a:last-child,
.jg-baba-header nav a:last-child{
  padding:.7rem 0;
  border:0;
  border-bottom:1px solid transparent;
  background:transparent;
  color:inherit;
}

/* Modern sans hierarchy, with white space doing the visual work. */
.jg-home-intro,
.jg-coffee-intro,
.jg-global-intro,
.jg-archive-intro,
.jg-media-intro{
  width:min(1280px,100%);
  margin:0 auto;
  padding:clamp(4.7rem,10vw,9.5rem) clamp(1.25rem,4vw,4.5rem) clamp(3.2rem,6vw,5.8rem);
  border:0;
  background:var(--jg-web-paper);
}

.jg-home-intro>p:first-child,
.jg-home-kicker,
.jg-home-section-heading p,
.jg-coffee-intro>p:first-child,
.jg-coffee-kicker,
.jg-coffee-heading p,
.jg-global-intro>p:first-child,
.jg-global-kicker,
.jg-global-heading p,
.jg-global-eyebrow,
.jg-archive-intro p,
.jg-media-intro p,
.jg-cwk-intro>p:first-child,
.jg-cwk-section-heading p,
.jg-cal-intro__copy>p:first-child,
.jg-cal-events__head>div>p,
.jg-lives-eyebrow,
.jg-baba-eyebrow,
.jg-baba-section-label p{
  color:var(--jg-web-accent);
  font:500 .61rem/1.35 'DM Mono',monospace;
  letter-spacing:.145em;
}

.jg-home-intro h2,
.jg-coffee-intro h1,
.jg-global-intro h1,
.jg-archive-intro h1,
.jg-media-intro h1,
.jg-cwk-intro h1,
.jg-cal-intro h1,
.jg-lives-hero h1,
.jg-baba-hero h1{
  color:var(--jg-web-ink);
  font-family:'Manrope',Arial,sans-serif;
  font-weight:800;
  letter-spacing:-.085em;
  line-height:.88;
}

.jg-home-intro h2,
.jg-coffee-intro h1,
.jg-global-intro h1,
.jg-archive-intro h1,
.jg-media-intro h1{max-width:970px;font-size:clamp(3.8rem,9.6vw,9.5rem)}
.jg-home-intro>p:last-child,
.jg-coffee-intro>p:last-child,
.jg-global-intro>p:last-child,
.jg-media-intro__deck,
.jg-cwk-intro__deck,
.jg-cal-intro__deck{
  max-width:610px;
  color:var(--jg-web-muted);
  font-size:clamp(1rem,1.45vw,1.18rem);
  line-height:1.65;
}

/* The lead photo carries atmosphere; text stays readable, calm and editorial. */
.jg-home-feature,
.jg-coffee-lead,
.jg-global-lead{
  width:min(var(--jg-web-max),100%);
  min-height:0;
  grid-template-columns:minmax(360px,.84fr) minmax(500px,1.16fr);
  background:var(--jg-web-paper);
  color:var(--jg-web-ink);
  border-top:1px solid var(--jg-web-line);
  border-bottom:1px solid var(--jg-web-line);
}
.jg-home-feature__copy,
.jg-coffee-lead__copy,
.jg-global-lead__copy{align-self:center;max-width:650px;padding:clamp(2.3rem,6vw,6.7rem)}
.jg-home-feature__place,
.jg-coffee-lead__place,
.jg-global-lead__place{color:var(--jg-web-accent)}
.jg-home-feature h1,
.jg-coffee-lead h2,
.jg-global-lead h2{
  color:var(--jg-web-ink);
  font-family:'Manrope',Arial,sans-serif;
  font-weight:800;
  letter-spacing:-.075em;
  line-height:.91;
}
.jg-home-feature__deck,
.jg-coffee-lead__copy>p:not(.jg-coffee-kicker):not(.jg-coffee-lead__place),
.jg-global-lead__copy>p:not(.jg-global-kicker):not(.jg-global-lead__place){color:var(--jg-web-muted);line-height:1.65}
.jg-home-feature__image,
.jg-coffee-lead__visual,
.jg-global-lead__visual{min-height:560px;background:var(--jg-web-soft)}
.jg-home-feature__image::after,
.jg-global-lead__visual:after{display:none}
.jg-global-lead__visual>span{color:#fff;background:rgba(24,24,24,.72);left:0;bottom:0;padding:.55rem .75rem}

.jg-home-button,
.jg-coffee-button,
.jg-global-button,
.jg-cwk-source-button,
.jg-cal-button,
.jg-baba-button{
  border:1px solid var(--jg-web-ink);
  background:var(--jg-web-ink);
  color:#fff;
  font-family:'Manrope',Arial,sans-serif;
  font-weight:700;
  letter-spacing:.07em;
}
.jg-home-button:hover,
.jg-coffee-button:hover,
.jg-global-button:hover,
.jg-cwk-source-button:hover,
.jg-cal-button:hover,
.jg-baba-button:hover{background:#fff;color:var(--jg-web-ink)}
.jg-home-button--light,
.jg-coffee-button--light,
.jg-global-button--light{border-color:var(--jg-web-ink);background:var(--jg-web-ink);color:#fff}
.jg-home-button--light:hover,
.jg-coffee-button--light:hover,
.jg-global-button--light:hover{border-color:var(--jg-web-ink);background:#fff;color:var(--jg-web-ink)}

/* Review grids and archive cards share one quiet, modern rhythm. */
.jg-home-companions,
.jg-home-global,
.jg-coffee-companions,
.jg-coffee-collection,
.jg-global-companions,
.jg-global-directory,
.jg-archive-results,
.jg-media-results{
  background:var(--jg-web-paper);
  border-top:1px solid var(--jg-web-line);
}
.jg-home-global,.jg-coffee-collection,.jg-global-directory{border-bottom:1px solid var(--jg-web-line)}
.jg-home-section-heading h2,
.jg-coffee-heading h2,
.jg-global-heading h2,
.jg-cwk-section-heading h2,
.jg-cal-events__head h2,
.jg-lives-heading h2,
.jg-archive-media-link strong,
.jg-global-method h2,
.jg-coffee-detail h2,
.jg-coffee-ways h2,
.jg-global-ways h2{
  font-family:'Manrope',Arial,sans-serif;
  font-weight:800;
  letter-spacing:-.07em;
}
.jg-home-card h3,
.jg-coffee-card h3,
.jg-global-card h3,
.jg-archive-card h2,
.jg-media-card h2,
.jg-lives-result h3,
.jg-lives-preference__title,
.jg-cal-event h2,
.jg-cal-watchlist li strong,
.jg-cwk-recipe h2{
  font-family:'Manrope',Arial,sans-serif;
  font-weight:700;
  letter-spacing:-.05em;
}
.jg-home-card__image,
.jg-coffee-card__image,
.jg-global-card__visual,
.jg-archive-card__image,
.jg-media-card>a,
.jg-lives-result__image{background:var(--jg-web-soft)}
.jg-home-card__type,
.jg-coffee-card__eyebrow,
.jg-global-card__place,
.jg-archive-card__type,
.jg-media-card p,
.jg-lives-result__mode{color:var(--jg-web-accent)}
.jg-home-section-heading>a,
.jg-home-card__link,
.jg-coffee-heading>a,
.jg-coffee-link,
.jg-global-heading>a,
.jg-global-link,
.jg-archive-card__link,
.jg-media-card__link,
.jg-lives-link{color:var(--jg-web-ink);border-color:var(--jg-web-ink);font-family:'Manrope',Arial,sans-serif;font-weight:700}
.jg-home-section-heading>a:hover,
.jg-home-card__link:hover,
.jg-coffee-heading>a:hover,
.jg-coffee-link:hover,
.jg-global-heading>a:hover,
.jg-global-link:hover,
.jg-archive-card__link:hover,
.jg-media-card__link:hover,
.jg-lives-link:hover{color:var(--jg-web-accent);border-color:var(--jg-web-accent)}

/* Useful tools remain clean and quick rather than decorative. */
.jg-home-setting,
.jg-home-cocktails,
.jg-home-calendar,
.jg-coffee-detail,
.jg-coffee-ways,
.jg-global-method,
.jg-global-ways,
.jg-cwk-principle,
.jg-cwk-caution,
.jg-cal-principle,
.jg-cal-suggest,
.jg-cal-pledge,
.jg-cal-watchlist,
.jg-lives-method,
.jg-lives-results-section{
  background:var(--jg-web-paper);
  color:var(--jg-web-ink);
  border-top:1px solid var(--jg-web-line);
  border-bottom:1px solid var(--jg-web-line);
}
.jg-lives-results-section:before,.jg-lives-method:before{background:var(--jg-web-paper)}
.jg-home-setting h2,
.jg-home-cocktails h2,
.jg-home-calendar h2,
.jg-coffee-detail h2,
.jg-coffee-ways h2,
.jg-global-method h2,
.jg-global-ways h2,
.jg-cwk-principle h2,
.jg-cwk-caution h2,
.jg-cal-principle h2,
.jg-cal-suggest h2,
.jg-cal-pledge h2,
.jg-cal-watchlist h2,
.jg-lives-method h2{
  color:var(--jg-web-ink);
  font-family:'Manrope',Arial,sans-serif;
  font-weight:800;
  letter-spacing:-.07em;
}
.jg-cwk-principle>p,
.jg-cal-principle>p,
.jg-lives-method__grid p,
.jg-lives-method__grid h3,
.jg-home-setting>div>p:last-child,
.jg-home-cocktails>div>p:last-child,
.jg-home-calendar>div>p:last-child,
.jg-coffee-detail>p:last-child,
.jg-global-method>p:last-child,
.jg-cal-suggest>div>p:last-child,
.jg-cal-pledge>div>p,
.jg-cal-watchlist>p{color:var(--jg-web-muted)}
.jg-lives-method__grid{border-color:var(--jg-web-line);background:var(--jg-web-line)}
.jg-lives-method__grid article{background:var(--jg-web-soft)}
.jg-lives-button{border-color:var(--jg-web-ink);color:var(--jg-web-ink)}
.jg-lives-button:hover{background:var(--jg-web-ink);color:#fff}

/* Cocktails Worth Knowing retains the research, but trades the dark theatre for clarity. */
.jg-cwk-intro{padding-top:clamp(5rem,11vw,10.5rem);padding-bottom:clamp(4rem,8vw,7rem)}
.jg-cwk-intro h1{max-width:980px;font-size:clamp(4rem,10.5vw,10.25rem)}
.jg-cwk-principle>p{grid-column:2;align-self:end;margin:0}
.jg-cwk-recipe h3{color:var(--jg-web-accent)}
.jg-cwk-recipe__grid section:last-child{background:var(--jg-web-soft)}
.jg-cwk-recipe header>p:last-child{font-family:'DM Sans',Arial,sans-serif;font-style:normal;color:var(--jg-web-muted)}

/* Calendar: a useful directory on a white sheet. */
.jg-cal-intro{display:block;width:min(1280px,100%);margin:auto;padding:clamp(5rem,11vw,10.5rem) clamp(1.25rem,4vw,4.5rem) clamp(4rem,8vw,7rem);background:var(--jg-web-paper);border:0}
.jg-cal-intro h1{font-size:clamp(4rem,10.5vw,10.25rem)}
.jg-cal-intro__note{max-width:430px;margin-top:2.6rem;padding:1rem 0;border-color:var(--jg-web-line);color:var(--jg-web-muted)}
.jg-cal-event{gap:clamp(1.25rem,4vw,4rem)}
.jg-cal-event__date time,.jg-cal-event__links a,.jg-cal-event__links button,.jg-cal-pledge a{color:var(--jg-web-ink);border-color:var(--jg-web-ink);font-family:'Manrope',Arial,sans-serif;font-weight:700}
.jg-cal-event__links a:hover,.jg-cal-event__links button:hover,.jg-cal-pledge a:hover{color:var(--jg-web-accent);border-color:var(--jg-web-accent)}

/* The setting finder stays image-led but moves from dark theatre to a white travel desk. */
.jg-lives-hero{width:min(var(--jg-web-max),100%);min-height:0;background:var(--jg-web-paper);color:var(--jg-web-ink);border-bottom:1px solid var(--jg-web-line)}
.jg-lives-hero__copy{align-self:center;padding:clamp(2.3rem,6vw,6.7rem)}
.jg-lives-hero .jg-lives-eyebrow{color:var(--jg-web-accent)}
.jg-lives-hero__copy>p:not(.jg-lives-eyebrow){color:var(--jg-web-muted);line-height:1.65}
.jg-lives-hero__media{background:var(--jg-web-soft)}
.jg-lives-hero__media:after{display:none}
.jg-lives-search{border-color:var(--jg-web-line);background:var(--jg-web-soft)}
.jg-lives-search label,.jg-lives-search>p{color:var(--jg-web-muted)}
.jg-lives-search__field{border-color:var(--jg-web-ink)}
.jg-lives-search input{color:var(--jg-web-ink)}
.jg-lives-search input::placeholder{color:#989995}
.jg-lives-search button{color:var(--jg-web-accent)}
.jg-lives-preference{min-height:235px;background:var(--jg-web-paper);color:var(--jg-web-ink)}
.jg-lives-preference:hover,.jg-lives-preference:focus-visible,.jg-lives-preference[aria-pressed=true]{background:var(--jg-web-soft);color:var(--jg-web-ink)}
.jg-lives-preference:hover .jg-lives-preference__eyebrow,.jg-lives-preference:focus-visible .jg-lives-preference__eyebrow,.jg-lives-preference[aria-pressed=true] .jg-lives-preference__eyebrow{color:var(--jg-web-accent)}
.jg-lives-preference:hover .jg-lives-preference__description,.jg-lives-preference:focus-visible .jg-lives-preference__description,.jg-lives-preference[aria-pressed=true] .jg-lives-preference__description{color:var(--jg-web-muted)}
.jg-lives-map-link{color:var(--jg-web-muted);border-color:var(--jg-web-line)}

/* Article pages retain disclosure and credit, but join the sans-led web voice. */
.jg-global-article__header h1,
.jg-global-prose h2,
.jg-global-companion-feature h2,
.jg-baba-story h2,
.jg-baba-award-copy h3,
.jg-baba-next h2,
.jg-baba-error h1{
  font-family:'Manrope',Arial,sans-serif;
  font-weight:800;
  letter-spacing:-.065em;
}
.jg-global-article__body .jg-global-disclosure,
.jg-global-companion-feature{background:var(--jg-web-soft);border-left-color:var(--jg-web-accent)}
.jg-global-article__visual,.jg-global-article__body{max-width:760px}
.jg-baba-next{background:var(--jg-web-soft);color:var(--jg-web-ink);border:1px solid var(--jg-web-line)}
.jg-baba-next>div:first-child>p:last-child{color:var(--jg-web-muted)}
.jg-baba-next>div:last-child>a:last-child{color:var(--jg-web-ink)}
.jg-baba-award-wrap{background:var(--jg-web-soft)}

/* Editorial footers are the only deliberate dark resting point. */
.jg-home-footer,
.jg-coffee-footer,
.jg-global-footer,
.jg-archive-footer,
.jg-media-footer,
.jg-cwk-footer,
.jg-cal-footer,
.jg-lives-footer,
.jg-baba-footer{background:#181818;color:#fff}

@media (max-width:960px){
  .jg-home-header,
  .jg-coffee-header,
  .jg-global-header,
  .jg-archive-header,
  .jg-media-header,
  .jg-cwk-header,
  .jg-cal-header,
  .jg-lives-header,
  .jg-baba-header{min-height:70px}
  .jg-home-feature,
  .jg-coffee-lead,
  .jg-global-lead,
  .jg-lives-hero{grid-template-columns:1fr}
  .jg-home-feature__image,
  .jg-coffee-lead__visual,
  .jg-global-lead__visual,
  .jg-lives-hero__media{min-height:390px;order:-1}
  .jg-cwk-principle>p{grid-column:1}
}

@media (max-width:620px){
  .jg-home-intro,
  .jg-coffee-intro,
  .jg-global-intro,
  .jg-archive-intro,
  .jg-media-intro{padding-top:4.3rem;padding-bottom:3rem}
  .jg-home-intro h2,
  .jg-coffee-intro h1,
  .jg-global-intro h1,
  .jg-archive-intro h1,
  .jg-media-intro h1{font-size:clamp(3.55rem,15vw,5.5rem)}
  .jg-cwk-intro h1,.jg-cal-intro h1{font-size:clamp(3.8rem,17vw,5.8rem)}
  .jg-home-feature__copy,
  .jg-coffee-lead__copy,
  .jg-global-lead__copy,
  .jg-lives-hero__copy{padding:2.5rem 1.25rem 3rem}
  .jg-home-feature__image,
  .jg-coffee-lead__visual,
  .jg-global-lead__visual,
  .jg-lives-hero__media{min-height:300px}
  .jg-home-feature h1,
  .jg-coffee-lead h2,
  .jg-global-lead h2{font-size:clamp(2.65rem,11.7vw,4.2rem)}
  .jg-lives-hero h1{font-size:clamp(3.1rem,14vw,4.8rem)}
  .jg-cwk-principle>p{grid-column:1}
}
