/* Base site styles (header, rhythm, blog cards, imagery). Moved from snippet 9 on 2026-09-24. */
.mc-post-cta{margin:3.5rem auto 1rem;box-sizing:border-box;padding:2.25rem 1.75rem;background:#f6f2ea;border-top:3px solid #c88a5a;text-align:center}
.mc-post-cta .mc-eyebrow{margin:0 0 .5rem}
.mc-post-cta-lead{font-size:1.22rem;line-height:1.45;max-width:34em;margin:0 auto .6rem;color:#2d4a3e;font-weight:500}
.mc-post-cta-sub{font-size:.98rem;line-height:1.5;max-width:38em;margin:0 auto 1.35rem;opacity:.85}
.mc-post-cta-btns{display:flex;flex-wrap:wrap;gap:.65rem;justify-content:center;margin:0 0 1rem}
.mc-post-cta-btns a{display:inline-block;padding:.7rem 1.4rem;border-radius:3px;text-decoration:none;font-size:.95rem;font-weight:500}
.mc-post-cta-btns .mc-btn-primary{background:#c88a5a;color:#fff}
.mc-post-cta-btns .mc-btn-outline{border:1px solid #2d4a3e;color:#2d4a3e}
.mc-post-cta-links{font-size:.9rem;margin:0;opacity:.9}

/* ---------- base ---------- */
body{font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;color:#2b2925;background:#e4ece1;}
/* WP's Custom Background outputs body.custom-background{background-color:...} which
   outranks a bare body selector. Match its specificity so the brand colour holds. */
body.custom-background{background-color:#e4ece1;}
h1,h2,h3,h4,h5,h6{font-family:'Lora',Georgia,serif;font-weight:500;line-height:1.25;color:#26332c;}
p{line-height:1.75;}
img{max-width:100%;height:auto;}

/* ---------- header ---------- */
.site-header{background:#e4ece1;border-bottom:1px solid #cfdbcb;}
.header__titles{display:flex !important;align-items:baseline;gap:.75rem;flex-wrap:wrap;}
.site-title{font-family:'Lora',Georgia,serif;font-weight:600;letter-spacing:.02em;font-size:1.4rem;margin:0;}
.site-header .site-title,.site-header .site-title a{color:#2d4a3e !important;}
.site-header .nav-toggle,.site-header .header__search-toggle{color:#2d4a3e !important;}
.site-header .nav-toggle svg,.site-header .nav-toggle svg path,.site-header .header__search-toggle svg{fill:#2d4a3e !important;}
.site-header .nav-toggle[aria-expanded="true"],.site-header .nav-toggle[aria-expanded="true"] svg path{color:#faf7f1 !important;fill:#faf7f1 !important;}
.primary-menu a{font-size:.74rem;letter-spacing:.1em;}
@media (max-width:781px){
  .site-description{display:none !important;}
  .site-title{font-size:1.2rem;}
}
.site-title a{color:#2d4a3e;}
.site-description{font-family:'Inter',sans-serif;font-size:.72rem;text-transform:uppercase;letter-spacing:.14em;color:#8a8377;}
.primary-menu a{font-family:'Inter',sans-serif;text-transform:uppercase;font-size:.76rem;letter-spacing:.12em;font-weight:600;color:#2b2925;}
.primary-menu a:hover{color:#b06a3b;}
.primary-menu > li:last-child > a{background:#2d4a3e;color:#faf7f1;padding:.7em 1.3em;border-radius:2px;}
.primary-menu > li:last-child > a:hover{background:#b06a3b;color:#faf7f1;}

/* ---------- search ---------- */
.search-modal .search-form{position:relative;}
.search-input__button{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:transparent;border:none;cursor:pointer;}
.search-input__button svg,.search-input__button svg path{fill:#2d4a3e !important;}
.search-input__label{font-family:'Inter',sans-serif;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:#2d4a3e;margin-right:.4rem;}
.search .post{margin-bottom:3rem;}

/* ---------- footer ---------- */
.site-footer{background:#2d4a3e;}
.site-footer,.site-footer a,.site-footer .site-info,.site-footer .copyright{color:#faf7f1;}
.site-footer{border-top:4px solid #b06a3b;}

/* ---------- vertical rhythm (replaces hand-placed spacer blocks) ---------- */
body.page .entry-content > .wp-block-group.alignfull{margin-block:4rem;}
body.page .entry-content > .wp-block-cover.alignfull{margin-block:0 3.5rem;}
body.page .entry-content > .wp-block-columns{margin-block:2.25rem;}
body.page .entry-content > .wp-block-buttons{margin-block:2rem;}
body.page .entry-content > .wp-block-quote{margin-block:3rem;}
body.page .entry-content > h2{margin-top:3.5rem;margin-bottom:.65rem;}
body.page .entry-content > h3{margin-top:2.5rem;margin-bottom:.5rem;}
body.page .entry-content > p.mc-eyebrow{margin-top:3.75rem;margin-bottom:.35rem;}
body.page .entry-content > p.mc-eyebrow + h2,
body.page .entry-content > p.mc-eyebrow + h3{margin-top:0;}
body.page .entry-content > .wp-block-group.alignfull + .wp-block-group.alignfull{margin-top:0;}
/* first and last children shouldn't add outer space */
body.page .entry-content > *:first-child{margin-top:0;}
body.page .entry-content > .wp-block-group.alignfull:last-child{margin-bottom:0;}
/* inside a full-width band the same rhythm applies, minus the outer margins */
.wp-block-group.alignfull > .wp-block-columns{margin-block:2rem;}
.wp-block-group.alignfull > h2{margin-top:0;margin-bottom:.65rem;}
.wp-block-group.alignfull > p.mc-eyebrow{margin-top:0;margin-bottom:.35rem;}
.wp-block-group.alignfull > *:last-child{margin-bottom:0;}
@media (max-width:781px){
  body.page .entry-content > .wp-block-group.alignfull{margin-block:2.5rem;}
  body.page .entry-content > h2{margin-top:2.5rem;}
  body.page .entry-content > p.mc-eyebrow{margin-top:2.75rem;}
}

/* ---------- content utilities ---------- */
.mc-eyebrow{font-family:'Inter',sans-serif !important;text-transform:uppercase;letter-spacing:.2em;font-size:.78rem;font-weight:600;color:#b06a3b;}
.mc-sub{font-family:'Inter',sans-serif !important;font-size:1.15rem;line-height:1.7;}
.mc-card{background:#ffffff;border:1px solid #e8e1d3;border-top:3px solid #2d4a3e;padding:1.9rem;height:100%;box-shadow:0 1px 3px rgba(43,41,37,.05);}
.mc-card h3{margin-top:0;}
/* equal-height cards across a columns row */
.wp-block-columns .wp-block-column:has(> .mc-card){display:flex;}
.wp-block-columns .wp-block-column > .mc-card{flex:1;display:flex;flex-direction:column;}
.wp-block-columns .wp-block-column > .mc-card > p:last-child{margin-top:auto;padding-top:.5rem;}
.mc-band{background:#2d4a3e;}
.mc-band h2,.mc-band h3,.mc-band p{color:#faf7f1;}
.mc-cream{background:#faf7f1;}
.mc-note{background:#fdf3e4;border-left:4px solid #c88a5a;padding:1rem 1.25rem;font-size:.95rem;}
.mc-quote,.mc-quote p{border:none !important;font-family:'Lora',Georgia,serif !important;font-size:1.35rem !important;font-weight:400 !important;font-style:italic !important;line-height:1.6 !important;color:#2d4a3e !important;}
.mc-quote cite{font-family:'Inter',sans-serif !important;font-size:.85rem !important;font-style:normal !important;font-weight:400 !important;letter-spacing:.05em;color:#8a8377 !important;}
.mc-menu-course{font-family:'Inter',sans-serif;text-transform:uppercase;letter-spacing:.16em;font-size:.7rem;font-weight:600;color:#8a8377;margin-bottom:.15rem;}

/* ---------- blocks ---------- */
.wp-block-button__link{border-radius:2px;font-family:'Inter',sans-serif;text-transform:uppercase;letter-spacing:.08em;font-size:.82rem;font-weight:600;padding:1em 2.2em;transition:background .2s ease;}
.wp-block-media-text__media img{object-fit:contain;height:auto;}
.wp-block-gallery img{object-fit:contain;width:auto;max-width:100%;height:auto;border-radius:2px;}
/* never crop, only scale - override core's gallery "Crop images" setting */
.wp-block-gallery.is-cropped figure.wp-block-image a,
.wp-block-gallery.is-cropped figure.wp-block-image img,
.wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) a,
.wp-block-gallery.has-nested-images.is-cropped figure.wp-block-image:not(#individual-image) img{
  height:auto !important;width:auto !important;max-width:100% !important;object-fit:contain !important;
}
.wp-block-image img{border-radius:2px;}
.wp-block-separator{border-color:#e8e1d3;max-width:120px;margin-left:auto;margin-right:auto;}

/* hide theme-generated page titles (pages provide their own heroes/headings) */
body.page .post__title{display:none;}
body.page .post__header{margin:0;padding:0;}

/* ---------- uniform imagery ----------
   NOTE: the native lightbox rewrites each figure's class and DROPS .wp-block-image,
   so every rule here must also match .wp-lightbox-container / bare figures. */
figure.wp-block-image img,figure.wp-lightbox-container img{border-radius:2px;}
figure.alignwide img,.wp-block-image.alignwide img{width:auto;max-width:100%;height:auto;max-height:80vh;object-fit:contain;}
.entry-content > figure:not(.alignwide):not(.aligncenter) img,
figure.wp-block-image:not(.alignwide):not(.aligncenter) img{width:auto;max-width:100%;height:auto;max-height:75vh;object-fit:contain;}
.mc-list-thumb{width:auto;max-width:100%;height:auto;max-height:340px;object-fit:contain;border-radius:2px;margin-bottom:1rem;}
/* featured image: show the whole photo, don't letterbox-crop it */
/* Go theme makes .post__thumbnail a padding-bottom ratio box with overflow:hidden and an
   absolutely-positioned img, which CROPS every featured image. Undo the box entirely so the
   whole photo is simply scaled to fit. */
.post__thumbnail{
  max-height:none !important;overflow:visible !important;padding-bottom:0 !important;
  position:static !important;text-align:center;margin:0 auto 1.5rem;
}
.post__thumbnail:after{display:none !important;}
.post__thumbnail img{
  position:static !important;width:auto !important;max-width:min(100%,820px) !important;
  height:auto !important;max-height:78vh;object-fit:contain;
  border-radius:2px;display:block;margin:0 auto;
}
.single article p img{width:auto;max-width:100%;height:auto;max-height:70vh;object-fit:contain;border-radius:2px;}
/* centred stand-alone images: never taller than the screen, never wider than the measure */
figure.aligncenter img,figure.wp-block-image.aligncenter img{width:auto;max-width:min(100%,620px);max-height:70vh;object-fit:contain;margin-left:auto;margin-right:auto;aspect-ratio:auto;}
figure.aligncenter{text-align:center;}
/* galleries: square crops, whatever the source aspect */
.wp-block-gallery figure img{width:auto;max-width:100%;height:auto;max-height:60vh;object-fit:contain;}
/* images inside a columns row: one shared crop so the row reads as a set */
.wp-block-columns figure img{width:auto;max-width:100%;height:auto;max-height:60vh;object-fit:contain;}
.wp-block-media-text.is-image-fill .wp-block-media-text__media{min-height:320px;}
.mc-readmore{font-family:'Inter',sans-serif;text-transform:uppercase;letter-spacing:.1em;font-size:.78rem;font-weight:600;color:#b06a3b;text-decoration:none;}

/* ---------- blog index: cards, not a stack of full-width posts ---------- */
body.blog main.site-content,body.archive main.site-content{
  display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));
  gap:2rem;max-width:1140px;margin:0 auto;padding:0 24px 4.5rem;align-items:stretch;
}
body.blog main.site-content > header.page-header,
body.archive main.site-content > header.page-header,
body.blog main.site-content > .mc-blog-intro,
body.blog main.site-content > .pagination,
body.archive main.site-content > .pagination,
body.blog main.site-content > nav,
body.archive main.site-content > nav{grid-column:1/-1;}
body.blog main.site-content > header.page-header{text-align:center;margin-bottom:0;}
body.blog .mc-blog-intro{margin:0 auto !important;}

body.blog article.post,body.archive article.post{
  margin:0 !important;background:#ffffff;border:1px solid #e8e1d3;border-top:3px solid #2d4a3e;
  border-radius:2px;display:flex;flex-direction:column;overflow:hidden;
  box-shadow:0 1px 3px rgba(43,41,37,.05);transition:box-shadow .2s ease,transform .2s ease;
}
body.blog article.post:hover,body.archive article.post:hover{
  box-shadow:0 4px 18px -8px rgba(43,41,37,.28);transform:translateY(-2px);
}
body.blog article.post .entry-header,body.archive article.post .entry-header{
  max-width:none !important;margin:0 !important;padding:1.35rem 1.35rem 0 !important;
  display:flex;flex-direction:column;text-align:left;
}
body.blog article.post .post__meta--wrapper,body.archive article.post .post__meta--wrapper{
  order:-1;margin:0 0 .55rem !important;
}
body.blog article.post .post__title,body.archive article.post .post__title{
  font-size:1.2rem !important;line-height:1.32;text-align:left;margin:0 !important;
}
body.blog article.post .post__title a,body.archive article.post .post__title a{
  color:#26332c;text-decoration:none;
}
body.blog article.post .post__title a:hover,body.archive article.post .post__title a:hover{color:#b06a3b;}

/* card meta: date + category only, no icons, no comment count */
body.blog .post__meta,body.archive .post__meta{
  display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:0;padding:0;justify-content:flex-start;
}
body.blog .post__meta > li.post-author,body.blog .post__meta > li.post-comment-link,
body.archive .post__meta > li.post-author,body.archive .post__meta > li.post-comment-link{display:none !important;}
body.blog .post__meta .meta-icon,body.archive .post__meta .meta-icon{display:none !important;}
body.blog .post__meta > li,body.archive .post__meta > li{
  font-family:'Inter',sans-serif;text-transform:uppercase;letter-spacing:.12em;
  font-size:.64rem;font-weight:600;color:#8a8377;margin:0;
}
body.blog .post__meta > li.post-date::after,body.archive .post__meta > li.post-date::after{content:"\00b7";margin-left:.5rem;color:#c9c1b3;}
body.blog .post__meta a,body.archive .post__meta a{color:#b06a3b;text-decoration:none;}
body.blog .post__meta a:hover,body.archive .post__meta a:hover{text-decoration:underline;}

body.blog .content-area__wrapper,body.archive .content-area__wrapper{max-width:none !important;margin:0 !important;padding:0 !important;flex:1;display:flex;}
body.blog .entry-content,body.archive .entry-content{
  max-width:none !important;margin:0 !important;padding:.95rem 1.35rem 1.35rem !important;
  display:flex;flex-direction:column;flex:1;
}
/* the theme centres content children with auto side margins, which cancels flex stretch
   and collapses every card to shrink-to-fit width — undo it inside cards */
body.blog .entry-content > *,body.archive .entry-content > *{
  margin-left:0 !important;margin-right:0 !important;max-width:none !important;width:100% !important;
}
body.blog .entry-content p,body.archive .entry-content p{font-size:.92rem;line-height:1.62;margin:0 0 .85rem;}
body.blog .mc-card-excerpt,body.archive .mc-card-excerpt{
  display:-webkit-box !important;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;
}
body.blog .mc-card-more,body.archive .mc-card-more{margin:auto 0 0 !important;padding-top:.6rem;}
body.blog .mc-list-thumb,body.archive .mc-list-thumb{
  width:calc(100% + 2.7rem) !important;max-width:none !important;
  margin:0 -1.35rem 1rem -1.35rem !important;
  height:auto;max-height:300px;object-fit:contain;border-radius:0;
}

/* mobile polish */
@media (max-width:781px){
  .wp-block-cover h1{font-size:2.2rem !important;}
  .wp-block-columns{gap:1.25rem;}
  .primary-menu a{color:inherit;}
  .primary-menu > li:last-child > a{display:inline-block;margin-top:.4rem;}
  .header__navigation{background:#faf7f1;}
}
/* Tables: Go sets word-break:break-all on every cell, which splits words mid-letter ("Gro-ceries").
   Wrap at spaces like normal text, give the label column room, and line cells up at the top. (15 Oct 2026) */
.wp-block-table td,.wp-block-table th,.entry-content table td,.entry-content table th{word-break:normal;overflow-wrap:break-word;hyphens:manual;vertical-align:top}
.wp-block-table td:first-child,.entry-content table td:first-child{width:34%;min-width:7.5em}
@media (max-width:600px){.wp-block-table td,.wp-block-table th,.entry-content table td,.entry-content table th{padding:.65em .75em}.wp-block-table td:first-child,.entry-content table td:first-child{width:40%}}
