@font-face{font-family:Canela Trial;src:url(/fonts/canela/Canela-Light-Trial.otf) format("opentype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Canela Trial;src:url(/fonts/canela/Canela-LightItalic-Trial.otf) format("opentype");font-weight:300;font-style:italic;font-display:swap}@font-face{font-family:Canela Trial;src:url(/fonts/canela/Canela-Medium-Trial.otf) format("opentype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Canela Deck Trial;src:url(/fonts/canela/CanelaDeck-Light-Trial.otf) format("opentype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Canela Deck Trial;src:url(/fonts/canela/CanelaDeck-LightItalic-Trial.otf) format("opentype");font-weight:300;font-style:italic;font-display:swap}@font-face{font-family:Canela Deck Trial;src:url(/fonts/canela/CanelaDeck-Medium-Trial.otf) format("opentype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Canela Text Trial;src:url(/fonts/canela/CanelaText-Regular-Trial.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Canela Text Trial;src:url(/fonts/canela/CanelaText-RegularItalic-Trial.otf) format("opentype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Canela Text Trial;src:url(/fonts/canela/CanelaText-Medium-Trial.otf) format("opentype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Canela Condensed Trial;src:url(/fonts/canela/CanelaCondensed-Medium-Trial.otf) format("opentype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/ibm-plex-mono/IBMPlexMono-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/ibm-plex-mono/IBMPlexMono-Italic.ttf) format("truetype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/ibm-plex-mono/IBMPlexMono-Medium.ttf) format("truetype");font-weight:500;font-style:normal;font-display:swap}:root{--font-display:"Canela Trial","Cormorant Garamond",Garamond,Georgia,serif;--font-deck:"Canela Deck Trial","Cormorant Garamond",Garamond,Georgia,serif;--font-text:"Canela Text Trial","Cormorant Garamond",Garamond,Georgia,serif;--font-cond:"Canela Condensed Trial","Cormorant Garamond",Garamond,Georgia,serif;--font-mono:"IBM Plex Mono","DM Mono","Courier New",Courier,monospace;--font-sans:"Inter",system-ui,-apple-system,sans-serif;--font-body:var(--font-text);--color-ink:#2c2c28;--color-terra:#b8896a;--color-sand:#f4f0e8;--color-stone:#e2ddd4;--color-sage:#8fa892;--color-white:#ffffff;--color-offblack:#1a1a18;--color-muted:#7a7870;--color-steel:#8dacc1;--color-steel-strong:#4d7185;--color-steel-deep:#3b586b;--color-steel-soft:rgba(141,172,193,0.16);--color-sea:var(--color-steel);--color-terra-strong:#8d6448;--color-terra-deep:#a37a5a;--color-terra-soft:rgba(184,137,106,0.18);--color-muted-strong:#615d58;--color-muted-soft:#8c887f;--color-sand-soft:#f8f4ed;--color-stone-strong:#d4cdc1;--color-alert:#d05a5a;--color-alert-strong:#c0392b;--color-warning:#d9a35a;--color-warning-strong:#b07a0a;--color-warning-deep:#9a7a40;--color-success:#7a9f7e;--color-success-strong:#5a8a5e;--color-success-deep:#4a7a4e;--color-info:#6f8fa0;--color-info-strong:var(--color-steel-strong);--color-bg:var(--color-sand);--color-text:var(--color-ink);--color-text-secondary:var(--color-muted-strong);--color-border:rgba(44,44,40,0.12);--color-border-soft:rgba(44,44,40,0.08);--color-border-secondary:rgba(44,44,40,0.1);--tint-rgb:44,44,40;--surface-w-strong:rgba(255,255,255,0.72);--surface-w-mid:rgba(255,255,255,0.5);--surface-w-soft:rgba(255,255,255,0.3);--surface-s-strong:rgba(244,240,232,0.9);--surface-s-mid:rgba(244,240,232,0.6);--surface-s-soft:rgba(244,240,232,0.4);--g-sunset:linear-gradient(135deg,#b8896a,#e2ddd4 60%,#f4f0e8);--g-deepwater:linear-gradient(180deg,#7a9aaa,#2c2c28);--g-pinar:linear-gradient(160deg,#8fa892,#e2ddd4);--g-night:linear-gradient(180deg,#2c2c28,#1a1a18);--g-dawn:linear-gradient(120deg,#f4f0e8,#b8896a 70%,#7a9aaa);--iris-1:#8e5dbf;--iris-2:#d04ac2;--iris-3:#4abfd0;--iris-4:#4ad0a6;--iris-5:#d0b14a;--g-iris:conic-gradient(from 180deg at 50% 50%,#8e5dbf 0deg,#d04ac2 72deg,#4abfd0 144deg,#4ad0a6 216deg,#d0b14a 288deg,#8e5dbf 360deg);--g-chrome:linear-gradient(135deg,#f5f5f2,#c8c8c5 25%,#a8a8a5 50%,#d5d5d2 75%,#f5f5f2);--g-aurora:linear-gradient(135deg,#f5c8a3,#d1a5c8 35%,#a5c5d1 70%,#f4f0e8);--spacing-xs:0.5rem;--spacing-sm:1.5rem;--spacing-md:3rem;--spacing-lg:6rem;--spacing-xl:10rem;--space-xs:8px;--space-sm:16px;--space-md:24px;--space-lg:32px;--max-width:1480px;--frame-width:min(calc(100% - (var(--page-gutter) * 2)),var(--max-width));--nav-height:88px;--page-gutter:32px;--section-inset:20px;--section-pad:clamp(96px,12vw,160px);--reading-width:42ch;--radius-lg:32px;--radius-md:22px;--radius-sm:14px;--radius-pill:999px;--easing-expressive:cubic-bezier(0.16,1,0.3,1);--easing-standard:cubic-bezier(0.4,0,0.2,1);--easing-enter:cubic-bezier(0,0,0.2,1);--easing-exit:cubic-bezier(0.4,0,1,1);--duration-micro:200ms;--duration-short:400ms;--duration-medium:1500ms;--duration-editorial:4000ms;--ease-smooth:var(--easing-expressive);--motion-fast:220ms;--motion-base:420ms;--motion-slow:760ms;--panel:rgba(248,244,237,0.62);--panel-strong:rgba(248,244,237,0.8);--panel-border:rgba(212,205,193,0.9);--panel-border-strong:rgba(212,205,193,0.96);--card-bg:#ffffff;--progress-gradient:linear-gradient(90deg,var(--color-sage) 0%,var(--color-sea) 100%);--panel-shadow:0 12px 34px rgba(44,44,40,0.035);--shadow:0 2px 8px rgba(44,44,40,0.04),0 8px 32px rgba(44,44,40,0.06);--shadow-hover:0 4px 16px rgba(44,44,40,0.06),0 16px 48px rgba(44,44,40,0.09);--shadow-soft:0 24px 72px rgba(44,44,40,0.06);--dot-size:1.5px;--dot-gap:8px;--dot-color:rgba(44,44,40,0.22);--dot-color-soft:rgba(44,44,40,0.1);--glass-blur-xs:8px;--glass-blur-sm:14px;--glass-blur-md:22px;--glass-blur-lg:36px;--glass-blur-xl:52px;--glass-saturate:180%;--glass-saturate-strong:200%;--glass-bg:rgba(248,244,237,0.62);--glass-bg-soft:rgba(248,244,237,0.42);--glass-bg-strong:rgba(248,244,237,0.82);--glass-bg-frosted:rgba(255,255,255,0.55);--glass-bg-frosted-strong:rgba(255,255,255,0.78);--glass-bg-ink:rgba(44,44,40,0.62);--glass-bg-ink-strong:rgba(44,44,40,0.82);--glass-bg-tint-terracotta:rgba(184,137,106,0.08);--glass-bg-tint-sea:rgba(141,172,193,0.08);--glass-border:1px solid rgba(255,255,255,0.55);--glass-border-soft:1px solid rgba(255,255,255,0.32);--glass-border-strong:1px solid rgba(255,255,255,0.72);--glass-border-ink:1px solid rgba(255,255,255,0.12);--glass-specular:linear-gradient(180deg,rgba(255,255,255,0.42),rgba(255,255,255,0.08) 30%,rgba(255,255,255,0) 60%);--glass-specular-soft:linear-gradient(180deg,rgba(255,255,255,0.25),rgba(255,255,255,0) 40%);--glass-specular-radial:radial-gradient(ellipse 80% 50% at 50% 0%,rgba(255,255,255,0.32) 0%,rgba(255,255,255,0) 70%);--glass-inset:inset 0 1px 0 rgba(255,255,255,0.55),inset 0 -1px 0 rgba(44,44,40,0.04);--glass-inset-strong:inset 0 1px 0 rgba(255,255,255,0.7),inset 0 -1px 0 rgba(44,44,40,0.06);--glass-shadow:0 8px 32px rgba(44,44,40,0.08),0 1px 2px rgba(44,44,40,0.04);--glass-shadow-md:0 14px 44px rgba(44,44,40,0.12),0 1px 2px rgba(44,44,40,0.04);--glass-shadow-lg:0 24px 72px rgba(44,44,40,0.16),0 2px 4px rgba(44,44,40,0.05);--glass-radius-sm:12px;--glass-radius-md:18px;--glass-radius-lg:26px}:root[data-theme=dark]{--color-ink:#ebe7df;--color-offblack:#f6f3ec;--color-sand:#17181b;--color-sand-soft:#202128;--color-stone:#2c2d34;--color-stone-strong:#3a3b43;--color-muted:#9a978f;--color-muted-strong:#b6b2a9;--color-muted-soft:#7c7a73;--color-terra-strong:#cd9f7d;--color-terra-deep:#ddb597;--color-terra-soft:rgba(184,137,106,0.22);--color-steel-strong:#a9c5d7;--color-steel-deep:#c3d8e6;--color-steel-soft:rgba(141,172,193,0.20);--color-alert-strong:#e88a80;--color-warning-strong:#d8ac6a;--color-warning-deep:#c99f5f;--color-success-strong:#93c497;--color-success-deep:#a6d1aa;--color-border:rgba(255,255,255,0.14);--color-border-soft:rgba(255,255,255,0.09);--color-border-secondary:rgba(255,255,255,0.12);--tint-rgb:236,231,223;--surface-w-strong:rgba(255,255,255,0.07);--surface-w-mid:rgba(255,255,255,0.04);--surface-w-soft:rgba(255,255,255,0.02);--surface-s-strong:rgba(255,255,255,0.09);--surface-s-mid:rgba(255,255,255,0.05);--surface-s-soft:rgba(255,255,255,0.03);--card-bg:#202128;--panel:rgba(32,33,40,0.62);--panel-strong:rgba(32,33,40,0.8);--panel-border:rgba(255,255,255,0.1);--panel-border-strong:rgba(255,255,255,0.14);--dot-color:rgba(255,255,255,0.2);--dot-color-soft:rgba(255,255,255,0.08);--glass-bg:rgba(32,33,40,0.62);--glass-bg-soft:rgba(32,33,40,0.42);--glass-bg-strong:rgba(32,33,40,0.82);--glass-bg-frosted:rgba(40,41,48,0.55);--glass-bg-frosted-strong:rgba(40,41,48,0.82);--glass-bg-ink:rgba(10,10,12,0.62);--glass-bg-ink-strong:rgba(10,10,12,0.82);--glass-border:1px solid rgba(255,255,255,0.1);--glass-border-soft:1px solid rgba(255,255,255,0.06);--glass-border-strong:1px solid rgba(255,255,255,0.14);--glass-border-ink:1px solid rgba(255,255,255,0.06);--panel-shadow:0 12px 34px rgba(0,0,0,0.35);--shadow:0 2px 8px rgba(0,0,0,0.3),0 8px 32px rgba(0,0,0,0.4);--shadow-hover:0 4px 16px rgba(0,0,0,0.35),0 16px 48px rgba(0,0,0,0.5);--shadow-soft:0 24px 72px rgba(0,0,0,0.5);--glass-shadow:0 8px 32px rgba(0,0,0,0.45),0 1px 2px rgba(0,0,0,0.3);--glass-shadow-md:0 14px 44px rgba(0,0,0,0.5),0 1px 2px rgba(0,0,0,0.3);--glass-shadow-lg:0 24px 72px rgba(0,0,0,0.55),0 2px 4px rgba(0,0,0,0.35)}.dot-grid{background-image:radial-gradient(var(--dot-color) var(--dot-size),transparent calc(var(--dot-size) + .4px))}.dot-grid,.dot-grid-soft{background-size:var(--dot-gap) var(--dot-gap)}.dot-grid-soft{background-image:radial-gradient(var(--dot-color-soft) var(--dot-size),transparent calc(var(--dot-size) + .4px))}.dot-leader:before{content:"···";margin-right:.6em;color:var(--color-terra);letter-spacing:.18em;font-family:var(--font-mono),monospace}.glass-card,.glass-modal,.glass-nav{position:relative;isolation:isolate;-webkit-backdrop-filter:blur(var(--glass-blur-md)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur-md)) saturate(var(--glass-saturate));background:var(--glass-bg);border:var(--glass-border);box-shadow:var(--glass-inset),var(--glass-shadow)}.glass-card:before,.glass-modal:before,.glass-nav:before{content:"";position:absolute;inset:0;border-radius:inherit;background:var(--glass-specular);pointer-events:none;z-index:0}.glass-card>*,.glass-modal>*,.glass-nav>*{position:relative;z-index:1}.glass-nav{background:var(--glass-bg-strong);border:0;border-bottom:1px solid rgba(212,205,193,.6);box-shadow:var(--glass-inset),0 2px 16px rgba(44,44,40,.04)}.glass-card{background:var(--glass-bg-frosted);-webkit-backdrop-filter:blur(var(--glass-blur-sm)) saturate(var(--glass-saturate));backdrop-filter:blur(var(--glass-blur-sm)) saturate(var(--glass-saturate));border:var(--glass-border-soft);box-shadow:var(--glass-inset),var(--glass-shadow);border-radius:var(--glass-radius-md)}.glass-card:before{background:var(--glass-specular-soft)}.glass-modal{background:var(--glass-bg-frosted-strong);-webkit-backdrop-filter:blur(var(--glass-blur-xl)) saturate(var(--glass-saturate-strong));backdrop-filter:blur(var(--glass-blur-xl)) saturate(var(--glass-saturate-strong));border:var(--glass-border-strong);box-shadow:var(--glass-inset-strong),var(--glass-shadow-lg)}.glass-modal:before{background:var(--glass-specular-radial)}@supports not (((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))) or (-webkit-backdrop-filter:blur(1px))){.glass-card,.glass-nav{background:var(--color-sand)}.glass-modal{background:var(--color-sand-soft);box-shadow:var(--glass-shadow-lg)}}.glass-card,.glass-modal,.glass-nav{will-change:backdrop-filter;transform:translateZ(0)}*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;overflow-x:hidden;background:radial-gradient(circle at 82% 18%,rgba(141,172,193,.1),transparent 24%),radial-gradient(circle at 12% 78%,rgba(141,172,193,.06),transparent 22%),linear-gradient(180deg,var(--color-sand-soft) 0,var(--color-sand) 100%);color:var(--color-ink);font-family:var(--font-text),Georgia,serif;font-weight:400;font-size:17px;line-height:1.7;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.32;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E")}a{color:inherit;text-decoration:none}section[id]{scroll-margin-top:calc(var(--nav-height) + 22px)}button,input,textarea{font:inherit}button{cursor:pointer}:focus-visible{outline:2px solid var(--color-steel-strong);outline-offset:3px;border-radius:4px}::selection{background:var(--color-steel-soft)}.page-shell{position:relative;z-index:1}[data-reveal]{opacity:0;transform:translateY(18px);transition:opacity var(--motion-slow) var(--easing-expressive),transform var(--motion-slow) var(--easing-expressive);transition-delay:var(--reveal-delay,0s);will-change:opacity,transform}[data-reveal=visible]{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}[data-reveal]{opacity:1;transform:none}}@media (max-width:720px){:root{--page-gutter:20px;--section-inset:0px}}@view-transition{navigation:auto}::view-transition-new(root),::view-transition-old(root){animation-duration:.45s;animation-timing-function:cubic-bezier(.16,1,.3,1)}::view-transition-old(root){animation-name:vtFadeOut}::view-transition-new(root){animation-name:vtFadeIn}@keyframes vtFadeOut{0%{opacity:1}to{opacity:0}}@keyframes vtFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){::view-transition-new(root),::view-transition-old(root){animation:none!important}}