*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#F7F5F0;color:#233230;font-family:Inter,system-ui,-apple-system,sans-serif;font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;text-wrap:pretty;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:#2C6E6B}
a:hover{color:#22534F}
:focus-visible{outline:2.5px solid #C57C48;outline-offset:3px;border-radius:4px}
input,textarea,button{font:inherit}
/* hover utilities */
.btn-teal:hover{background:#22534F!important}
.btn-outline:hover{background:rgba(221,154,108,0.14)!important}
.btn-light:hover{background:#ffffff!important}
.navlink:hover{color:#2C6E6B!important;border-bottom-color:#2C6E6B!important}
.footlink:hover{color:#F7F5F0!important}
.cardlink:hover{border-color:#9CB4A6!important;box-shadow:0 10px 26px rgba(35,50,48,0.09)!important}
.relcard:hover{border-color:#9CB4A6!important;box-shadow:0 8px 20px rgba(35,50,48,0.07)!important}
.catbtn:hover{border-color:#2C6E6B!important}
/* responsive nav (CSS-driven, no JS width math) */
.scm-desktop-nav{display:flex}
.scm-mobile-actions{display:none}
#scm-mobile-menu{display:none}
@media(max-width:899px){
  .scm-desktop-nav{display:none}
  .scm-mobile-actions{display:flex}
  #scm-mobile-menu.open{display:flex}
}
/* article prose */
.prose h2{font-family:Fraunces,Georgia,serif;font-weight:600;font-size:clamp(25px,3.6vw,32px);line-height:1.22;letter-spacing:-0.018em;margin:clamp(34px,5vw,48px) 0 0}
.prose h3{font-family:Fraunces,Georgia,serif;font-weight:600;font-size:clamp(20px,2.8vw,24px);line-height:1.3;letter-spacing:-0.012em;margin:clamp(26px,3.6vw,34px) 0 0}
.prose p{font-size:17.5px;line-height:1.72;color:rgba(35,50,48,0.85);margin:16px 0 0}
.prose ul,.prose ol{margin:14px 0 0;padding-left:22px;display:flex;flex-direction:column;gap:9px}
.prose li{font-size:17px;line-height:1.66;color:rgba(35,50,48,0.85)}
.prose a{color:#2C6E6B;font-weight:500}
.prose strong{font-weight:600;color:#233230}
.prose blockquote{margin:22px 0 0;padding:14px 20px;background:rgba(234,240,236,0.7);border-left:3px solid #9CB4A6;border-radius:0 12px 12px 0}
.prose blockquote p{margin:0;color:rgba(35,50,48,0.75)}
.prose h2:first-child,.prose h3:first-child,.prose p:first-child{margin-top:0}
.prose .sources{margin-top:clamp(30px,4vw,40px);padding-top:20px;border-top:1px solid rgba(35,50,48,0.12)}
.prose .sources h2{font-size:12px;font-weight:600;letter-spacing:0.13em;text-transform:uppercase;color:#C57C48;font-family:Inter,sans-serif;margin:0 0 10px}
.prose .sources ul{margin-top:0}
.prose .sources li{font-size:14.5px;color:rgba(35,50,48,0.7)}
/* narrow-phone: shorten Book label so the burger fits */
.bk-sm{display:none}
@media(max-width:440px){.scm-mobile-actions .bk-lg{display:none}.scm-mobile-actions .bk-sm{display:inline}}

/* self-hosted fonts (latin) */
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/fraunces-400.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/fraunces-500.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Fraunces';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/fraunces-600.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/inter-400.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/inter-500.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/inter-600.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}