:root {
  --on-primary-fixed-variant: #2F5C4C;
  --deep-olive: #245C4A;
  --on-primary-fixed: #0E2A22;
  --outline: #6D7A74;
  --surface-container-low: #EAF1EA;
  --on-surface-variant: #3D4F48;
  --surface-container-lowest: #ffffff;
  --outline-variant: #C5D0C8;
  --terracotta: #C17B4A;
  --surface-tint: #3D7A64;
  --oat: #E4EDE6;
  --primary-fixed: #C8E4D4;
  --surface: #F4F7F2;
  --primary-container: #1F4F40;
  --primary: #143D32;
  --terracotta-soft: #F0E0D0;
  --warm-charcoal: #1C2E28;
  --soft-sage: #6B9A7A;
  --on-primary-container: #A8C4B6;
  --on-surface: #1A2B25;
  --surface-container: #E4ECE5;
  --on-primary: #ffffff;
  --primary-fixed-dim: #A8D0BA;
  --secondary-container: #E8A07A;
  --secondary: #B86B3C;
  --muted-charcoal: #4A5C55;
  --sand: #E2DCC8;
  --linen: #FAFCF8;
  --tertiary-fixed: #C8E4D4;
  --margin-desktop: 3rem;
  --gutter-desktop: 2rem;
  --space-xs: 0.25rem;
  --space-sm: 0.5rem;
  --space-md: 1rem;
  --space-lg: 1.5rem;
  --space-xl: 2.5rem;
  --space-2xl: 4rem;
  --vee-deep-olive: var(--deep-olive);
  --vee-terracotta: var(--terracotta);
  --vee-oat: var(--oat);
  --vee-surface: var(--surface);
  --vee-linen: var(--linen);
  --vee-sand: var(--sand);
  --vee-warm-charcoal: var(--warm-charcoal);
  --vee-soft-sage: var(--soft-sage);
  --vee-muted-charcoal: var(--muted-charcoal);
  --vee-on-surface: var(--on-surface);
  --vee-on-surface-variant: var(--on-surface-variant);
  --vee-surface-container-low: var(--surface-container-low);
  --vee-surface-container-lowest: var(--surface-container-lowest);
  --vee-surface-container: var(--surface-container);
  --vee-primary: var(--primary);
  --vee-on-primary: var(--on-primary);
  --vee-secondary: var(--secondary);
  --vee-font-display: Urbanist, system-ui, sans-serif;
  --vee-font-body: Urbanist, system-ui, sans-serif;
}

*, *::before, *::after { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body { overscroll-behavior: none; -webkit-font-smoothing: antialiased; font-family: Urbanist, system-ui, sans-serif; }
img { max-width: 100%; display: block; }
.object-cover { object-fit: cover; width: 100%; height: 100%; }
a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; }
iconify-icon, .vee-i {
  display: inline-block;
  vertical-align: middle;
  line-height: 1;
  flex-shrink: 0;
}
.material-symbols-outlined {
  font-family: "Material Symbols Outlined";
  font-weight: 400;
  font-style: normal;
  line-height: 1;
  display: inline-block;
  font-variation-settings: "FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;
}

.bg-surface { background-color: var(--surface); }
.bg-surface\/95 { background-color: rgb(244 247 242 / 0.95); }
.bg-surface-container-low { background-color: var(--surface-container-low); }
.bg-surface-container-low\/60 { background-color: rgb(250 242 237 / 0.6); }
.bg-surface-container-lowest { background-color: var(--surface-container-lowest); }
.bg-surface-container { background-color: var(--surface-container); }
.bg-deep-olive { background-color: var(--deep-olive); }
.bg-deep-olive\/90 { background-color: rgb(43 56 43 / 0.9); }
.bg-warm-charcoal { background-color: var(--warm-charcoal); }
.bg-warm-charcoal\/80 { background-color: rgb(36 33 30 / 0.8); }
.bg-primary { background-color: var(--primary); }
.bg-oat { background-color: var(--oat); }
.bg-oat\/50 { background-color: rgb(236 229 220 / 0.5); }
.bg-oat\/40 { background-color: rgb(236 229 220 / 0.4); }
.bg-sand { background-color: var(--sand); }
.bg-linen { background-color: var(--linen); }
.bg-linen\/90 { background-color: rgb(251 249 245 / 0.9); }
.bg-terracotta { background-color: var(--terracotta); }
.bg-terracotta-soft { background-color: var(--terracotta-soft); }
.bg-terracotta-soft\/30 { background-color: rgb(242 216 207 / 0.3); }
.bg-soft-sage { background-color: var(--soft-sage); }
.bg-soft-sage\/20 { background-color: rgb(138 148 122 / 0.2); }
.bg-outline-variant { background-color: var(--outline-variant); }
.bg-primary-fixed { background-color: var(--primary-fixed); }
.bg-primary-container { background-color: var(--primary-container); }
.bg-surface-tint\/20 { background-color: rgb(84 98 83 / 0.2); }
.bg-surface-tint\/10 { background-color: rgb(84 98 83 / 0.1); }
.bg-secondary-container { background-color: var(--secondary-container); }
.bg-tertiary-fixed { background-color: var(--tertiary-fixed); }

.text-on-surface { color: var(--on-surface); }
.text-on-surface-variant { color: var(--on-surface-variant); }
.text-terracotta { color: var(--terracotta); }
.text-deep-olive { color: var(--deep-olive); }
.text-linen { color: var(--linen); }
.text-muted-charcoal { color: var(--muted-charcoal); }
.text-on-primary { color: var(--on-primary); }
.text-outline { color: var(--outline); }
.text-outline-variant { color: var(--outline-variant); }
.text-soft-sage { color: var(--soft-sage); }
.text-secondary { color: var(--secondary); }
.text-warm-charcoal { color: var(--warm-charcoal); }
.text-on-primary-fixed { color: var(--on-primary-fixed); }
.text-primary-fixed { color: var(--primary-fixed); }
.text-primary-fixed-dim { color: var(--primary-fixed-dim); }
.text-on-primary-container { color: var(--on-primary-container); }

.font-body-md { font-family: Urbanist, system-ui, sans-serif; }
.font-body-sm { font-family: Urbanist, system-ui, sans-serif; }
.font-body-lg { font-family: Urbanist, system-ui, sans-serif; }
.font-label-md { font-family: Urbanist, system-ui, sans-serif; }
.font-label-caps { font-family: Urbanist, system-ui, sans-serif; }
.font-display-hero, .font-headline-lg, .font-headline-md, .font-headline-sm, .font-subheading, .font-quote-pullout, .font-serif {
  font-family: Urbanist, system-ui, sans-serif;
  font-weight: 500;
}

.text-display-hero { font-size: 52px; line-height: 60px; letter-spacing: -0.02em; font-weight: 400; }
.text-headline-lg { font-size: 40px; line-height: 48px; letter-spacing: -0.015em; font-weight: 400; }
.text-headline-md { font-size: 30px; line-height: 38px; letter-spacing: -0.01em; font-weight: 400; }
.text-headline-sm { font-size: 22px; line-height: 30px; font-weight: 500; }
.text-subheading { font-size: 19px; line-height: 28px; font-weight: 400; }
.text-body-lg { font-size: 18px; line-height: 30px; font-weight: 400; }
.text-body-md { font-size: 15px; line-height: 24px; font-weight: 400; }
.text-body-sm { font-size: 13px; line-height: 20px; font-weight: 400; }
.text-label-md { font-size: 13px; line-height: 18px; letter-spacing: 0.02em; font-weight: 500; }
.text-label-caps { font-size: 11px; line-height: 16px; letter-spacing: 0.14em; font-weight: 600; }
.text-\[10px\] { font-size: 10px; }
.text-\[12px\] { font-size: 12px; }
.text-\[13px\] { font-size: 13px; }
.text-\[14px\] { font-size: 14px; }
.text-\[16px\] { font-size: 16px; }
.text-\[18px\] { font-size: 18px; }
.text-\[20px\] { font-size: 20px; }
.text-\[22px\] { font-size: 22px; }
.text-\[24px\] { font-size: 24px; }
.text-\[36px\] { font-size: 36px; }
.text-\[38px\] { font-size: 38px; }

.antialiased { -webkit-font-smoothing: antialiased; }
.min-h-screen { min-height: 100vh; }
.fixed { position: fixed; }
.absolute { position: absolute; }
.relative { position: relative; }
.sticky { position: sticky; }
.inset-0 { inset: 0; }
.top-0 { top: 0; }
.top-space-md { top: var(--space-md); }
.top-space-xs { top: var(--space-xs); }
.left-space-md { left: var(--space-md); }
.left-space-xs { left: var(--space-xs); }
.right-space-md { right: var(--space-md); }
.right-space-xs { right: var(--space-xs); }
.bottom-space-md { bottom: var(--space-md); }
.bottom-space-xs { bottom: var(--space-xs); }
.-right-12 { right: -3rem; }
.-bottom-12 { bottom: -3rem; }
.-top-24 { top: -6rem; }
.-left-24 { left: -6rem; }
.-bottom-24 { bottom: -6rem; }
.-right-24 { right: -6rem; }
.z-10 { z-index: 10; }
.z-50 { z-index: 50; }
.z-40 { z-index: 40; }
.w-full { width: 100%; }
.w-auto { width: auto; }
.w-fit { width: fit-content; }
.w-px { width: 1px; }
.w-1 { width: 0.25rem; }
.w-1\.5 { width: 0.375rem; }
.w-2 { width: 0.5rem; }
.w-2\.5 { width: 0.625rem; }
.w-8 { width: 2rem; }
.w-10 { width: 2.5rem; }
.w-12 { width: 3rem; }
.w-28 { width: 7rem; }
.w-48 { width: 12rem; }
.w-96 { width: 24rem; }
.h-full { height: 100%; }
.h-2 { height: 0.5rem; }
.h-1\.5 { height: 0.375rem; }
.h-2\.5 { height: 0.625rem; }
.h-3 { height: 0.75rem; }
.h-8 { height: 2rem; }
.h-10 { height: 2.5rem; }
.h-12 { height: 3rem; }
.h-28 { height: 7rem; }
.h-48 { height: 12rem; }
.h-96 { height: 24rem; }
.max-w-7xl { max-width: 80rem; }
.max-w-4xl { max-width: 56rem; }
.max-w-2xl { max-width: 42rem; }
.max-w-xl { max-width: 36rem; }
.max-w-md { max-width: 28rem; }
.max-w-sm { max-width: 24rem; }
.mx-auto { margin-left: auto; margin-right: auto; }
.mx-1 { margin-left: 0.25rem; margin-right: 0.25rem; }
.mb-space-lg { margin-bottom: var(--space-lg); }
.mb-space-sm { margin-bottom: var(--space-sm); }
.mb-space-xs { margin-bottom: var(--space-xs); }
.mb-space-xl { margin-bottom: var(--space-xl); }
.mb-space-md { margin-bottom: var(--space-md); }
.mb-1 { margin-bottom: 0.25rem; }
.mt-space-md { margin-top: var(--space-md); }
.mt-space-2xl { margin-top: var(--space-2xl); }
.mt-space-lg { margin-top: var(--space-lg); }
.my-space-md { margin-top: var(--space-md); margin-bottom: var(--space-md); }
.my-space-lg { margin-top: var(--space-lg); margin-bottom: var(--space-lg); }
.pt-28 { padding-top: 7rem; }
.pt-space-xs { padding-top: var(--space-xs); }
.pt-space-sm { padding-top: var(--space-sm); }
.pt-space-md { padding-top: var(--space-md); }
.pt-space-lg { padding-top: var(--space-lg); }
.pr-space-md { padding-right: var(--space-md); }
.px-margin-desktop { padding-left: var(--margin-desktop); padding-right: var(--margin-desktop); }
.px-space-xs { padding-left: var(--space-xs); padding-right: var(--space-xs); }
.px-space-sm { padding-left: var(--space-sm); padding-right: var(--space-sm); }
.px-space-md { padding-left: var(--space-md); padding-right: var(--space-md); }
.px-space-lg { padding-left: var(--space-lg); padding-right: var(--space-lg); }
.px-2 { padding-left: 0.5rem; padding-right: 0.5rem; }
.px-2\.5 { padding-left: 0.625rem; padding-right: 0.625rem; }
.py-space-xs { padding-top: var(--space-xs); padding-bottom: var(--space-xs); }
.py-space-sm { padding-top: var(--space-sm); padding-bottom: var(--space-sm); }
.py-space-md { padding-top: var(--space-md); padding-bottom: var(--space-md); }
.py-space-lg { padding-top: var(--space-lg); padding-bottom: var(--space-lg); }
.py-space-xl { padding-top: var(--space-xl); padding-bottom: var(--space-xl); }
.py-space-2xl { padding-top: var(--space-2xl); padding-bottom: var(--space-2xl); }
.py-0\.5 { padding-top: 0.125rem; padding-bottom: 0.125rem; }
.py-1 { padding-top: 0.25rem; padding-bottom: 0.25rem; }
.py-1\.5 { padding-top: 0.375rem; padding-bottom: 0.375rem; }
.p-space-md { padding: var(--space-md); }
.p-space-lg { padding: var(--space-lg); }
.p-space-xl { padding: var(--space-xl); }
.p-space-sm { padding: var(--space-sm); }
.p-space-xs { padding: var(--space-xs); }

.flex { display: flex; }
.inline-flex { display: inline-flex; }
.inline-block { display: inline-block; }
.grid { display: grid; }
.hidden { display: none; }
.flex-col { flex-direction: column; }
.flex-1 { flex: 1 1 0%; }
.flex-shrink-0 { flex-shrink: 0; }
.flex-wrap { flex-wrap: wrap; }
.flex-grow { flex-grow: 1; }
.items-center { align-items: center; }
.items-stretch { align-items: stretch; }
.items-start { align-items: flex-start; }
.items-end { align-items: flex-end; }
.justify-between { justify-content: space-between; }
.justify-center { justify-content: center; }
.justify-around { justify-content: space-around; }
.gap-1 { gap: 0.25rem; }
.gap-1\.5 { gap: 0.375rem; }
.gap-2 { gap: 0.5rem; }
.gap-space-xs { gap: var(--space-xs); }
.gap-space-sm { gap: var(--space-sm); }
.gap-space-md { gap: var(--space-md); }
.gap-space-lg { gap: var(--space-lg); }
.gap-space-xl { gap: var(--space-xl); }
.gap-gutter-desktop { gap: var(--gutter-desktop); }
.space-y-space-xs > :not([hidden]) ~ :not([hidden]) { margin-top: var(--space-xs); }
.space-y-space-sm > :not([hidden]) ~ :not([hidden]) { margin-top: var(--space-sm); }
.space-y-space-md > :not([hidden]) ~ :not([hidden]) { margin-top: var(--space-md); }
.grid-cols-1 { grid-template-columns: repeat(1, minmax(0, 1fr)); }
.grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.overflow-hidden { overflow: hidden; }
.overflow-x-auto { overflow-x: auto; }
.whitespace-nowrap { white-space: nowrap; }
.object-cover { object-fit: cover; }
.object-contain { object-fit: contain; }
.object-center { object-position: center; }
.rounded-full { border-radius: 9999px; }
.rounded-xl { border-radius: 0.75rem; }
.rounded-2xl { border-radius: 1rem; }
.rounded-lg { border-radius: 0.5rem; }
.rounded { border-radius: 0.25rem; }
.uppercase { text-transform: uppercase; }
.italic { font-style: italic; }
.font-bold { font-weight: 700; }
.font-semibold { font-weight: 600; }
.font-medium { font-weight: 500; }
.tracking-tight { letter-spacing: -0.025em; }
.tracking-wider { letter-spacing: 0.05em; }
.tracking-widest { letter-spacing: 0.1em; }
.leading-\[1\.15\] { line-height: 1.15; }
.leading-tight { line-height: 1.25; }
.leading-snug { line-height: 1.375; }
.leading-relaxed { line-height: 1.625; }
.leading-none { line-height: 1; }
.text-center { text-align: center; }
.underline { text-decoration-line: underline; }
.decoration-terracotta { text-decoration-color: var(--terracotta); }
.underline-offset-8 { text-underline-offset: 8px; }
.shadow-sm { box-shadow: 0 1px 2px rgb(0 0 0 / 0.05); }
.shadow-md { box-shadow: 0 4px 6px rgb(0 0 0 / 0.08); }
.shadow-\[0_1px_8px_rgba\(0\,0\,0\,0\.04\)\] { box-shadow: 0 1px 8px rgba(0,0,0,0.04); }
.backdrop-blur-md { backdrop-filter: blur(12px); }
.backdrop-blur-sm { backdrop-filter: blur(8px); }
.transition-colors { transition: color .2s, background-color .2s, border-color .2s; }
.transition-all { transition: all .3s; }
.transition-transform { transition: transform .5s; }
.duration-300 { transition-duration: .3s; }
.duration-500 { transition-duration: .5s; }
.duration-700 { transition-duration: .7s; }
.ease-out { transition-timing-function: cubic-bezier(0,0,.2,1); }
.pointer-events-none { pointer-events: none; }
.opacity-10 { opacity: .1; }
.opacity-60 { opacity: .6; }
.blur-3xl { filter: blur(64px); }
.aspect-\[16\/10\] { aspect-ratio: 16/10; }
.aspect-\[3\/4\] { aspect-ratio: 3/4; }
.aspect-\[4\/3\] { aspect-ratio: 4/3; }
.min-w-0 { min-width: 0; }
.line-clamp-1 { overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1; }
.line-clamp-2 { overflow: hidden; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.block { display: block; }
.fill-none { fill: none; }
.transform { transform: translateZ(0); }
.-rotate-90 { transform: rotate(-90deg); }
.animate-pulse { animation: pulse 2s cubic-bezier(.4,0,.6,1) infinite; }
@keyframes pulse { 50% { opacity: .5; } }
.bg-gradient-to-t { background-image: linear-gradient(to top, var(--tw-gradient-stops)); }
.from-deep-olive\/80 { --tw-gradient-from: rgb(36 92 74 / 0.8); --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to, transparent); }
.via-transparent { --tw-gradient-to: transparent; --tw-gradient-stops: var(--tw-gradient-from), transparent, var(--tw-gradient-to, transparent); }
.to-transparent { --tw-gradient-to: transparent; }
.placeholder\:text-outline::placeholder { color: var(--outline); }
.focus\:outline-none:focus { outline: none; }
.focus\:ring-2:focus { box-shadow: 0 0 0 2px var(--deep-olive); }
.hover\:text-deep-olive:hover { color: var(--deep-olive); }
.hover\:text-on-surface:hover { color: var(--on-surface); }
.hover\:text-terracotta:hover { color: var(--terracotta); }
.hover\:text-linen:hover { color: var(--linen); }
.hover\:bg-warm-charcoal:hover { background-color: var(--warm-charcoal); }
.hover\:bg-surface-container:hover { background-color: var(--surface-container); }
.hover\:bg-deep-olive:hover { background-color: var(--deep-olive); }
.hover\:shadow-md:hover { box-shadow: 0 4px 6px rgb(0 0 0 / 0.08); }
.hover\:shadow-xl:hover { box-shadow: 0 20px 25px rgb(0 0 0 / 0.08); }
.hover\:-translate-y-1\.5:hover { transform: translateY(-0.375rem); }
.group:hover .group-hover\:scale-\[1\.015\] { transform: scale(1.015); }
.group:hover .group-hover\:scale-105 { transform: scale(1.05); }
.group:hover .group-hover\:text-deep-olive { color: var(--deep-olive); }
.group:hover .group-hover\:translate-x-1 { transform: translateX(0.25rem); }
.cursor-pointer { cursor: pointer; }

.vee-skip { position: absolute; left: -9999px; }
.vee-skip:focus { left: 1rem; top: 1rem; z-index: 100; background: #fff; padding: .5rem 1rem; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px,1px,1px,1px); }
.vee-search-modal { position: fixed; inset: 0; background: rgba(30,27,24,.45); z-index: 80; display: grid; place-items: center; }
.vee-search-modal[hidden] { display: none; }
.vee-search-modal__panel { background: var(--surface); padding: 2rem; border-radius: 2px; width: min(32rem, calc(100% - 2.5rem)); box-shadow: none; border: 1px solid var(--outline-variant); }
.vee-hp { position: absolute; left: -9999px; }
.vee-nav-toggle { display: none; }
.vee-wordmark { font-family: Urbanist, system-ui, sans-serif; font-weight: 600; }
@media (max-width: 1100px) {
  .vee-wordmark { display: none; }
}

@media (min-width: 640px) {
  .sm\:flex-row { flex-direction: row; }
}
@media (min-width: 768px) {
  .md\:flex { display: flex; }
  .md\:inline-flex { display: inline-flex; }
  .md\:flex-row { flex-direction: row; }
  .md\:items-end { align-items: flex-end; }
  .md\:grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .md\:grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .md\:col-span-6 { grid-column: span 6 / span 6; }
  .md\:grid-cols-12 { grid-template-columns: repeat(12, minmax(0, 1fr)); }
}
@media (min-width: 1024px) {
  .lg\:flex { display: flex; }
  .lg\:inline-block { display: inline-block; }
  .lg\:grid-cols-12 { grid-template-columns: repeat(12, minmax(0, 1fr)); }
  .lg\:grid-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .lg\:col-span-8 { grid-column: span 8 / span 8; }
  .lg\:col-span-4 { grid-column: span 4 / span 4; }
  .lg\:col-span-7 { grid-column: span 7 / span 7; }
  .lg\:col-span-5 { grid-column: span 5 / span 5; }
  .lg\:col-span-6 { grid-column: span 6 / span 6; }
  .lg\:p-space-2xl { padding: var(--space-2xl); }
}
@media (min-width: 1280px) {
  .xl\:inline-block { display: inline-block; }
}
@media (max-width: 1023px) {
  .px-margin-desktop { padding-left: 1.25rem; padding-right: 1.25rem; }
  .text-display-hero { font-size: 34px; line-height: 42px; }
  .text-headline-lg { font-size: 28px; line-height: 36px; }
  header.fixed { overflow: visible; }
  header.fixed .px-margin-desktop { padding-left: 1.25rem; padding-right: 1.25rem; }
  header.fixed.is-open nav { display: block; }
  header.fixed nav { display: none; }
}

/* Inner pages (article, archive) keep previous editorial styles */
.vee-main { }
.vee-wrap { width: min(80rem, calc(100% - 2.5rem)); margin-inline: auto; }
.vee-wrap-narrow { width: min(52rem, calc(100% - 2.5rem)); margin-inline: auto; }
.vee-wrap-wide { width: min(72rem, calc(100% - 2.5rem)); margin-inline: auto; }
.vee-section { padding: 3.5rem 0; }
.vee-h2 { font-family: Urbanist, system-ui, sans-serif; font-size: clamp(1.75rem, 3vw, 2.5rem); font-weight: 500; }
.vee-h3 { font-family: Urbanist, system-ui, sans-serif; font-size: 1.25rem; font-weight: 500; }
.vee-muted { color: var(--muted-charcoal); }
.vee-btn { display: inline-flex; align-items: center; justify-content: center; background: var(--deep-olive); color: var(--linen); border: 0; border-radius: 2px; padding: .55rem 1.15rem; cursor: pointer; font-size: 13px; font-weight: 500; box-shadow: none; }
.vee-input { border: 1px solid var(--outline-variant); border-radius: 2px; padding: .6rem 1rem; background: #fff; width: 100%; }
.vee-grid-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem; }
.vee-card { background: #fff; border-radius: .75rem; overflow: hidden; box-shadow: 0 1px 8px rgba(0,0,0,.04); }
.vee-prose { font-size: 18px; line-height: 1.7; max-width: 42rem; }
.vee-article__layout { display: grid; grid-template-columns: 4rem 1fr 18rem; gap: 2rem; }
.vee-progress { position: sticky; top: 7rem; height: 3px; background: rgb(221 211 196 / .3); z-index: 40; }
.vee-progress span { display: block; height: 100%; width: 0; background: var(--terracotta); }
@media (max-width: 1024px) {
  .vee-grid-3, .vee-article__layout { grid-template-columns: 1fr; }
}

.vee-foot {
  position: relative;
  margin-top: 4rem;
  overflow: hidden;
  background: linear-gradient(165deg, #143D32 0%, #1F4F40 48%, #245C4A 100%);
  color: #EAF1EA;
}
.vee-foot__glow {
  position: absolute;
  width: 22rem;
  height: 22rem;
  right: -6rem;
  top: -8rem;
  background: radial-gradient(circle, rgb(193 123 74 / 0.28), transparent 70%);
  pointer-events: none;
}
.vee-foot__inner { position: relative; z-index: 1; padding-top: 4rem; padding-bottom: 2rem; }
.vee-foot__top {
  display: grid;
  gap: 1.25rem;
  margin-bottom: 2.5rem;
  padding-bottom: 2rem;
  border-bottom: 1px solid rgb(200 228 212 / 0.16);
}
@media (min-width: 768px) {
  .vee-foot__top { grid-template-columns: 1fr 1.4fr; align-items: center; }
}
.vee-foot__brand { display: flex; align-items: center; gap: 0.85rem; }
.vee-foot__mark {
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: rgb(250 252 248 / 0.1);
  color: #C8E4D4;
}
.vee-foot__name { margin: 0; font-size: 1.35rem; font-weight: 600; letter-spacing: -0.02em; color: #FAFCF8; }
.vee-foot__tag { margin: 0.15rem 0 0; font-size: 0.8125rem; color: #A8D0BA; }
.vee-foot__about { margin: 0; font-size: 0.9375rem; line-height: 1.65; color: #C8E4D4; max-width: 36rem; }
.vee-foot__grid {
  display: grid;
  gap: 2rem;
  margin-bottom: 2.5rem;
}
@media (min-width: 900px) {
  .vee-foot__grid { grid-template-columns: 1fr 1fr 1.4fr; }
}
.vee-foot__h {
  margin: 0 0 1rem;
  font-size: 11px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  font-weight: 600;
  color: #C17B4A;
}
.vee-foot__list { list-style: none; margin: 0; padding: 0; }
.vee-foot__list li { margin: 0 0 0.45rem; }
.vee-foot__list a { color: #D3DFD6; font-size: 0.9rem; }
.vee-foot__list a:hover { color: #FAFCF8; }
.vee-foot__nl {
  background: rgb(250 252 248 / 0.08);
  border: 1px solid rgb(200 228 212 / 0.16);
  border-radius: 1rem;
  padding: 1.35rem;
}
.vee-foot__nl-copy { margin: 0 0 1rem; font-size: 0.875rem; line-height: 1.55; color: #C8E4D4; }
.vee-foot__form-row { display: flex; gap: 0.5rem; }
.vee-foot__form-row input {
  flex: 1;
  border: 0;
  border-radius: 2px;
  padding: 0.65rem 1rem;
  background: #FAFCF8;
  color: #1A2B25;
}
.vee-foot__form-row button {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  border: 0;
  border-radius: 2px;
  padding: 0.65rem 1.1rem;
  background: #C17B4A;
  color: #FAFCF8;
  cursor: pointer;
  font-weight: 500;
  font-size: 13px;
  white-space: nowrap;
}
.vee-foot__form-row button:hover { background: #B86B3C; }
.vee-foot__bar {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  justify-content: space-between;
  align-items: center;
  padding-top: 1.5rem;
  border-top: 1px solid rgb(200 228 212 / 0.16);
  font-size: 0.8125rem;
  color: #A8C4B6;
}
.vee-foot__credit { margin: 0; display: flex; flex-wrap: wrap; gap: 0.4rem 0.65rem; align-items: center; }
.vee-foot__credit a { color: #FAFCF8; text-decoration: underline; text-underline-offset: 3px; }
.vee-foot__credit a:hover { color: #C17B4A; }
.vee-foot__legal { display: flex; gap: 1.25rem; }
.vee-foot__legal a { color: #A8C4B6; }
.vee-foot__legal a:hover { color: #FAFCF8; }

.vee-sitehead {
  background: var(--surface);
  border-bottom: 1px solid var(--outline-variant);
}
.vee-sitehead__in {
  max-width: 80rem;
  margin: 0 auto;
  padding: 0.9rem 3rem;
  display: flex;
  align-items: center;
  gap: 2rem;
}
.vee-sitehead__logo img { height: 1.75rem; width: auto; display: block; }
.vee-sitehead__nav {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  flex: 1;
  justify-content: center;
}
.vee-sitehead__link {
  font-size: 14px;
  color: var(--muted-charcoal);
  white-space: nowrap;
}
.vee-sitehead__link:hover,
.vee-sitehead__link.is-current {
  color: var(--on-surface);
}
.vee-sitehead__tools { display: flex; align-items: center; gap: 1rem; margin-left: auto; }
.vee-sitehead__icon {
  background: none;
  border: 0;
  padding: 0.25rem;
  color: var(--on-surface);
  cursor: pointer;
  display: inline-flex;
}
.vee-sitehead__cta {
  font-size: 13px;
  color: var(--on-surface);
  border-bottom: 1px solid var(--on-surface);
  padding-bottom: 1px;
}
.pt-header { padding-top: 4.25rem; }
@media (max-width: 1023px) {
  .vee-sitehead__in { padding: 0.85rem 1.25rem; }
  .vee-sitehead__nav { display: none; }
  .vee-sitehead.is-open .vee-sitehead__nav {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    position: absolute;
    left: 0; right: 0; top: 100%;
    background: var(--surface);
    border-bottom: 1px solid var(--outline-variant);
    padding: 1rem 1.25rem 1.25rem;
    gap: 0.75rem;
  }
  .vee-nav-toggle { display: inline-flex; }
}

.text-display-hero { font-size: 40px; line-height: 1.2; letter-spacing: -0.02em; font-weight: 500; }
.text-headline-lg { font-size: 28px; line-height: 1.25; letter-spacing: -0.015em; font-weight: 500; }
.text-headline-md { font-size: 22px; line-height: 1.3; font-weight: 500; }
.text-label-caps { letter-spacing: 0.08em; font-weight: 500; }

main > .flex.flex-col > .bg-surface-container-low:first-child { display: none; }
article .relative > .absolute { display: none !important; }
.bg-oat\/50 { display: none; }
.w-10.h-10.rounded-full.bg-linen { display: none; }
.pointer-events-none.text-deep-olive svg { display: none; }
.inline-flex.items-center.gap-2.bg-linen { display: none; }
.material-symbols-outlined { display: none !important; }
.w-8.h-8.rounded-full.bg-sand { display: none; }
.bg-surface-container-low\/60 {
  background: transparent !important;
  padding: 1rem 0 0 !important;
  margin-top: 1rem;
  border-top: 1px solid var(--outline-variant);
  border-radius: 0;
}
article.group,
.group.bg-surface-container-lowest,
.bg-surface-container-lowest.rounded-xl {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
.lg\:col-span-8.group { padding: 0 !important; }
.bg-primary.text-on-primary {
  background: transparent !important;
  color: var(--on-surface) !important;
  border-radius: 0 !important;
  border-top: 1px solid var(--outline-variant);
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.bg-primary .text-linen,
.bg-primary .text-on-primary,
.bg-primary .text-primary-fixed,
.bg-primary .text-primary-fixed-dim,
.bg-primary .text-on-primary-container { color: var(--muted-charcoal) !important; }
.bg-primary .font-display-hero.text-on-primary { color: var(--on-surface) !important; }
.md\:col-span-6 .w-48 { display: none; }
.bg-surface-tint\/20 { background: transparent !important; padding: 0 !important; }
.bg-surface-container-low.rounded-2xl,
.bg-surface-container-low.rounded-xl {
  background: transparent !important;
  border-radius: 0 !important;
  border-top: 1px solid var(--outline-variant);
  box-shadow: none !important;
}
a.bg-linen { background: none !important; padding-left: 0 !important; padding-right: 0.75rem !important; text-transform: none !important; letter-spacing: 0 !important; font-size: 14px !important; }
a.bg-deep-olive.text-linen.font-label-caps { background: none !important; color: var(--on-surface) !important; text-transform: none !important; letter-spacing: 0 !important; border-bottom: 1px solid var(--on-surface); padding: 0 0 1px !important; border-radius: 0 !important; }

.vee-foot {
  margin-top: 5rem;
  background: var(--surface);
  color: var(--on-surface);
  border-top: 1px solid var(--outline-variant);
  overflow: visible;
}
.vee-foot__glow { display: none; }
.vee-foot__inner { padding-top: 3rem; padding-bottom: 1.75rem; }
.vee-foot__grid { display: grid; gap: 2.5rem; margin-bottom: 2.5rem; }
@media (min-width: 800px) {
  .vee-foot__grid { grid-template-columns: 1.4fr 0.8fr 1.2fr; }
}
.vee-foot__name { margin: 0 0 0.75rem; font-size: 1.125rem; font-weight: 500; }
.vee-foot__about { margin: 0; font-size: 0.9375rem; line-height: 1.6; color: var(--muted-charcoal); max-width: 22rem; }
.vee-foot__h { margin: 0 0 0.85rem; font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; font-weight: 500; color: var(--muted-charcoal); }
.vee-foot__list { list-style: none; margin: 0; padding: 0; }
.vee-foot__list li { margin: 0 0 0.4rem; }
.vee-foot__list a { color: var(--on-surface); font-size: 0.9375rem; }
.vee-foot__list a:hover { color: var(--muted-charcoal); }
.vee-foot__nl { background: none; border: 0; padding: 0; }
.vee-foot__nl-copy { margin: 0 0 0.85rem; font-size: 0.9375rem; color: var(--muted-charcoal); }
.vee-foot__form-row input { background: var(--surface); border: 1px solid var(--outline-variant); border-radius: 2px; }
.vee-foot__form-row button { background: var(--deep-olive); border-radius: 2px; }
.vee-foot__bar {
  border-top: 1px solid var(--outline-variant);
  color: var(--muted-charcoal);
}
.vee-foot__credit a { color: var(--on-surface); }
.vee-foot__credit a:hover { color: var(--terracotta); }
.vee-foot__legal a { color: var(--muted-charcoal); }
.vee-foot__legal a:hover { color: var(--on-surface); }

.vee-article { padding-bottom: 4rem; }
.vee-article__header { padding: 2.5rem 0 1.5rem; }
.vee-display { font-size: clamp(2rem, 4vw, 2.75rem); line-height: 1.2; font-weight: 500; margin: 0.5rem 0 1rem; letter-spacing: -0.02em; }
.vee-lead { font-size: 1.125rem; line-height: 1.65; color: var(--muted-charcoal); max-width: 40rem; }
.vee-crumb { font-size: 0.8125rem; color: var(--muted-charcoal); margin-bottom: 0.75rem; }
.vee-article__meta-top { font-size: 0.8125rem; color: var(--muted-charcoal); display: flex; gap: 1rem; margin-bottom: 0.5rem; }
.vee-chip { background: none; padding: 0; }
.vee-byline { display: flex; gap: 0.75rem; align-items: center; margin-top: 1.5rem; font-size: 0.9375rem; }
.vee-byline img { border-radius: 0; width: 40px; height: 40px; object-fit: cover; }
.vee-article__hero { margin: 0 auto 2.5rem; }
.vee-article__hero img { width: 100%; height: auto; }
.vee-prose { font-size: 1.125rem; line-height: 1.75; max-width: 42rem; }
.vee-prose p { margin: 0 0 1.25rem; }
.vee-prose h2 { font-size: 1.5rem; font-weight: 500; margin: 2rem 0 0.75rem; }
.vee-rail { display: none; }
.vee-progress { display: none; }
.vee-article__layout { display: block; }
.vee-wrap-narrow { width: min(42rem, calc(100% - 2.5rem)); margin-inline: auto; }
.vee-wrap-wide { width: min(72rem, calc(100% - 2.5rem)); margin-inline: auto; }
.vee-explore-hero, .vee-nl-hero, .vee-section { padding: 2.5rem 0; }
.vee-explore-hero .vee-h2, .vee-nl-hero .vee-display { margin-top: 0.35rem; }
.vee-pillars, .vee-grid-3, .vee-grid-4 { display: grid; gap: 2rem; }
@media (min-width: 800px) {
  .vee-pillars, .vee-grid-3 { grid-template-columns: repeat(3, 1fr); }
}
.vee-pillar, .vee-card, .vee-card-plain {
  background: none;
  box-shadow: none;
  border: 0;
  border-radius: 0;
  padding: 0;
}
.vee-nl-dark { background: var(--surface); color: inherit; padding: 3rem 0; border-top: 1px solid var(--outline-variant); }
.vee-search-modal__panel h2 { font-size: 1.125rem; font-weight: 500; margin: 0 0 1rem; }
.vee-search-modal__panel button { background: none; border: 0; margin-top: 1rem; cursor: pointer; color: var(--muted-charcoal); }

/* Editorial quiet: less SaaS / AI polish */
.rounded-xl,
.rounded-2xl,
.rounded-lg { border-radius: 2px; }
.shadow-sm,
.shadow-md,
.shadow-xs,
.shadow-\[0_1px_8px_rgba\(0\,0\,0\,0\.04\)\] { box-shadow: none; }
.hover\:shadow-md:hover,
.hover\:shadow-xl:hover { box-shadow: none; }
.hover\:-translate-y-1\.5:hover { transform: none; }
.group:hover .group-hover\:scale-105,
.group:hover .group-hover\:scale-\[1\.015\] { transform: none; }
.animate-pulse { animation: none; }
.backdrop-blur-sm,
.backdrop-blur-md { backdrop-filter: none; }
.blur-3xl { display: none; }

article.group,
.group.bg-surface-container-lowest,
.bg-surface-container-lowest.rounded-xl {
  box-shadow: none;
  border: 1px solid var(--outline-variant);
  background: var(--surface-container-lowest);
}

a.bg-deep-olive,
button.bg-deep-olive,
a.bg-oat,
button.bg-deep-olive,
input.rounded-full,
button.rounded-full.font-label-md,
a.rounded-full.font-label-md,
a.rounded-full.font-label-caps,
span.rounded-full.font-label-caps,
span.rounded-full.font-label-md,
div.rounded-full.font-label-md,
.inline-flex.rounded-full {
  border-radius: 2px;
  box-shadow: none;
}

a.bg-oat:hover {
  background-color: var(--oat) !important;
  color: var(--deep-olive) !important;
  text-decoration: underline;
}

a.bg-linen.rounded-full:hover,
a.bg-linen.hover\:bg-deep-olive:hover {
  background-color: transparent !important;
  color: var(--deep-olive) !important;
  text-decoration: underline;
}

a.bg-deep-olive.text-linen.font-label-caps:hover {
  opacity: 0.85;
}

div.w-8.h-8.rounded-full,
span.w-12.h-12.rounded-full,
span.inline-block.w-2.h-2.rounded-full,
span.w-1\.5.h-1\.5.rounded-full,
span.block.w-2\.5.h-2\.5.rounded-full,
.vee-foot__mark {
  border-radius: 9999px;
}

.vee-home {
  width: min(68rem, calc(100% - 3rem));
  margin: 0 auto;
  padding: 2.5rem 0 4rem;
}
.vee-kicker {
  margin: 0 0 0.4rem;
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--terracotta);
  font-weight: 500;
}
.vee-meta {
  margin: 0.75rem 0 0;
  font-size: 13px;
  color: var(--muted-charcoal);
}
.vee-lead {
  display: grid;
  gap: 2rem;
  padding-bottom: 3rem;
  border-bottom: 1px solid var(--outline-variant);
}
@media (min-width: 880px) {
  .vee-lead { grid-template-columns: 1.15fr 0.85fr; align-items: end; gap: 2.5rem; }
}
.vee-lead__media { margin: 0; }
.vee-lead__media img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
.vee-lead__title {
  margin: 0;
  font-size: clamp(1.75rem, 3.2vw, 2.35rem);
  font-weight: 500;
  letter-spacing: -0.025em;
  line-height: 1.18;
}
.vee-lead__dek {
  margin: 1rem 0 0;
  font-size: 1.0625rem;
  line-height: 1.6;
  color: var(--muted-charcoal);
  max-width: 34rem;
}
.vee-index { padding: 2.75rem 0 1rem; }
.vee-index__title {
  margin: 0 0 1.5rem;
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  font-weight: 500;
  color: var(--muted-charcoal);
}
.vee-index__list { list-style: none; margin: 0; padding: 0; }
.vee-index__item { border-top: 1px solid var(--outline-variant); }
.vee-index__item:last-child { border-bottom: 1px solid var(--outline-variant); }
.vee-index__link {
  display: grid;
  grid-template-columns: 4.5rem 1fr;
  gap: 1.15rem;
  align-items: center;
  padding: 1.1rem 0;
}
.vee-index__link img { width: 4.5rem; height: 4.5rem; object-fit: cover; }
.vee-index__hed {
  display: block;
  font-size: 1.0625rem;
  font-weight: 500;
  letter-spacing: -0.015em;
  line-height: 1.35;
  margin: 0.15rem 0;
}
.vee-index__link:hover .vee-index__hed { color: var(--deep-olive); }
.vee-letter {
  margin-top: 2.5rem;
  padding-top: 2.5rem;
  border-top: 1px solid var(--outline-variant);
  display: grid;
  gap: 1.5rem;
}
@media (min-width: 800px) {
  .vee-letter { grid-template-columns: 1fr 1fr; align-items: end; }
}
.vee-letter p { margin: 0.4rem 0 0; color: var(--muted-charcoal); font-size: 0.975rem; line-height: 1.55; }
.vee-letter form { display: flex; gap: 0.5rem; }
.vee-letter input[type="email"] {
  flex: 1;
  border: 1px solid var(--outline-variant);
  background: transparent;
  padding: 0.65rem 0.8rem;
  border-radius: 2px;
}
.vee-letter button {
  border: 0;
  background: var(--deep-olive);
  color: var(--linen);
  padding: 0.65rem 1rem;
  border-radius: 2px;
  cursor: pointer;
  font-size: 13px;
  font-weight: 500;
}
.vee-page {
  width: min(40rem, calc(100% - 3rem));
  margin: 0 auto;
  padding: 3rem 0 5rem;
}
.vee-page .vee-nl { margin-top: 1.5rem; }
.vee-nl__row { display: flex; gap: 0.5rem; }
.vee-label { font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--muted-charcoal); }
