:root{--color-bg: #f4ede2;--color-bg-elevated: #fbf7f1;--color-surface: rgba(255, 252, 246, .84);--color-surface-strong: #fffdf9;--color-surface-dark: #1f2a25;--color-text: #1b1712;--color-text-secondary: #5f5548;--color-text-tertiary: #8b8073;--color-text-muted: #9d9285;--color-border: rgba(71, 52, 29, .14);--color-border-light: rgba(71, 52, 29, .08);--color-accent: #1d3b35;--color-accent-hover: #274b44;--color-accent-soft: #d89a65;--color-tag-bg: rgba(29, 59, 53, .08);--color-tag-text: #24443d;--font-display: "Fraunces", Georgia, serif;--font-body: "Manrope", system-ui, sans-serif;--text-xs: clamp(.73rem, .7rem + .18vw, .8rem);--text-sm: clamp(.84rem, .8rem + .18vw, .93rem);--text-base: clamp(.98rem, .92rem + .22vw, 1.08rem);--text-lg: clamp(1.08rem, 1rem + .35vw, 1.28rem);--text-xl: clamp(1.28rem, 1.1rem + .55vw, 1.62rem);--text-2xl: clamp(1.7rem, 1.35rem + 1vw, 2.35rem);--text-3xl: clamp(2.3rem, 1.8rem + 1.8vw, 3.7rem);--text-hero: clamp(3rem, 2.15rem + 3.8vw, 6rem);--space-xs: .5rem;--space-sm: 1rem;--space-md: 1.5rem;--space-lg: 2.5rem;--space-xl: 4rem;--space-2xl: 6rem;--space-3xl: 8rem;--space-section-tight: clamp(3.5rem, 3rem + 2vw, 5.5rem);--space-section: clamp(4.5rem, 3.8rem + 4vw, 8rem);--max-width: 1160px;--max-width-narrow: 680px;--max-width-reading: 640px;--container-padding: clamp(1.25rem, 1rem + 1vw, 2rem);--radius-pill: 999px;--radius-card: 22px;--radius-card-lg: 28px;--radius-panel: 32px;--shadow-soft: 0 18px 32px rgba(51, 35, 18, .06);--shadow-panel: 0 24px 60px rgba(38, 29, 16, .08);--shadow-button-primary: 0 14px 30px rgba(29, 59, 53, .18);--shadow-focus: 0 0 0 4px rgba(29, 59, 53, .08);--surface-panel: rgba(255, 252, 247, .72);--surface-panel-strong: rgba(255, 252, 247, .78);--surface-card: rgba(255, 255, 255, .64);--surface-card-strong: rgba(255, 255, 255, .68);--surface-card-hover: rgba(255, 255, 255, .78);--ease-out: cubic-bezier(.16, 1, .3, 1);--transition-fast: .15s var(--ease-out);--transition-base: .25s var(--ease-out);--transition-slow: .45s var(--ease-out);--duration-reveal: .72s;--duration-float: 7s}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;scroll-behavior:smooth;background:var(--color-bg)}body{min-height:100vh;font-family:var(--font-body);font-size:var(--text-base);font-weight:500;line-height:1.6;color:var(--color-text);background:radial-gradient(circle at top left,rgba(216,154,101,.22),transparent 32%),radial-gradient(circle at 100% 10%,rgba(29,59,53,.13),transparent 28%),linear-gradient(180deg,#f3ebdf,#f4ede2 42%,#fbf7f1)}img,svg{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none}input{font-family:inherit;border:none;outline:none;background:none}ul,ol{list-style:none}::selection{background:#d89a6547}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 var(--container-padding)}.container--narrow{max-width:var(--max-width-narrow)}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;line-height:.96;letter-spacing:-.045em;text-wrap:balance}h1{font-size:var(--text-hero)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}p{color:var(--color-text-secondary);line-height:1.62;text-wrap:pretty}:where(a,button,input,summary):focus-visible{outline:none;box-shadow:var(--shadow-focus)}.btn{display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-body);font-size:var(--text-sm);font-weight:800;letter-spacing:.01em;padding:.92em 1.45em;border:1px solid transparent;border-radius:var(--radius-pill);transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-base),transform var(--transition-fast)}.btn:active{transform:scale(.98)}.btn--primary{background-color:var(--color-accent);color:#fff;box-shadow:var(--shadow-button-primary)}.btn--primary:hover{background-color:var(--color-accent-hover);transform:translateY(-1px)}.btn--secondary{background-color:#ffffff80;color:var(--color-text);border-color:var(--color-border)}.btn--secondary:hover{border-color:#1d3b353d;background-color:#ffffffb8}.btn--tertiary{padding-inline:0;border:none;background:transparent;color:var(--color-accent);box-shadow:none}.btn--tertiary:hover{color:var(--color-accent-hover)}.section{padding:var(--space-section) 0}.section+.section{border-top:1px solid var(--color-border-light)}.section__label{font-size:var(--text-xs);font-weight:800;text-transform:uppercase;letter-spacing:.16em;color:var(--color-text-tertiary);margin-bottom:var(--space-md)}.section__title{margin-bottom:var(--space-sm)}.section__subtitle{max-width:560px;font-size:var(--text-lg);color:var(--color-text-secondary)}.tag{display:inline-flex;align-items:center;font-size:var(--text-xs);font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--color-tag-text);background-color:var(--color-tag-bg);padding:.4em .75em;border-radius:var(--radius-pill)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.prose figure{margin:2rem 0 1.35rem}.prose img{width:100%;height:auto;border-radius:var(--radius-card-lg);border:1px solid rgba(71,52,29,.08);box-shadow:var(--shadow-soft)}.prose figcaption{margin-top:.7rem;color:var(--color-text-tertiary);font-size:var(--text-xs);line-height:1.6}.prose blockquote{margin:1.4rem 0;padding-left:1rem;border-left:2px solid rgba(29,59,53,.18)}@keyframes fade-up{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes float-y{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.motion-enter{opacity:0;animation:fade-up var(--duration-reveal) var(--ease-out) forwards;animation-delay:var(--motion-delay, 0ms)}.motion-float{animation:float-y var(--duration-float) ease-in-out infinite}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.motion-enter{opacity:1}}
