:root{--linge: oklch(.97 .014 80);--linge-clair: oklch(.99 .008 80);--linge-deep: oklch(.93 .02 75);--pierre: oklch(.88 .025 70);--charbon: oklch(.21 .018 50);--charbon-soft: oklch(.21 .018 50 / .78);--charbon-muted: oklch(.45 .022 60);--terra: oklch(.46 .135 35);--terra-bright: oklch(.55 .14 38);--terra-deep: oklch(.38 .14 32);--terra-soft: oklch(.46 .135 35 / .1);--terra-ghost: oklch(.46 .135 35 / .04);--sage: oklch(.58 .05 145);--sage-soft: oklch(.92 .025 135);--sage-deep: oklch(.42 .04 145);--rule: oklch(.21 .018 50 / .1);--rule-strong: oklch(.21 .018 50 / .2);--rule-light: oklch(.97 .014 80 / .22);--bg: var(--linge);--bg-deep: var(--linge-deep);--bg-soft: var(--linge-clair);--surface: var(--linge-clair);--fg: var(--charbon);--fg-soft: var(--charbon-soft);--muted: var(--charbon-muted);--focus: var(--terra);--font-display: "Author", "Iowan Old Style", Georgia, serif;--font-body: "Neue Montreal", system-ui, -apple-system, "Segoe UI", sans-serif;--fs-xs: .75rem;--fs-sm: .875rem;--fs-base: 1.0625rem;--fs-lead: 1.1875rem;--fs-md: 1.375rem;--fs-lg: 1.75rem;--fs-xl: 2.5rem;--fs-2xl: 3.5rem;--fs-3xl: 5.5rem;--container: 1440px;--container-narrow: 1200px;--container-prose: 720px;--pad-x: clamp(1.5rem, 5vw, 4rem);--pad-y-section: clamp(5rem, 12vh, 10rem);--ease: cubic-bezier(.22,.61,.36,1);--ease-out: cubic-bezier(.16,1,.3,1);--shadow-card: 0 1px 0 var(--rule), 0 24px 48px -36px rgba(60, 40, 30, .12);--shadow-lift: 0 30px 80px -40px rgba(40, 20, 10, .35);--pattern-pebbles: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'><g fill='%23a14a2a' fill-opacity='0.05'><ellipse cx='30' cy='25' rx='10' ry='6'/><ellipse cx='90' cy='40' rx='14' ry='9' transform='rotate(-15 90 40)'/><ellipse cx='140' cy='30' rx='8' ry='5'/><ellipse cx='20' cy='80' rx='6' ry='4'/><ellipse cx='65' cy='95' rx='11' ry='7' transform='rotate(20 65 95)'/><ellipse cx='120' cy='100' rx='12' ry='8'/><ellipse cx='40' cy='140' rx='9' ry='6'/><ellipse cx='100' cy='145' rx='7' ry='5' transform='rotate(-10 100 145)'/><ellipse cx='150' cy='135' rx='10' ry='6'/></g></svg>")}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:6rem;text-size-adjust:100%;-webkit-text-size-adjust:100%}body{background:var(--linge);color:var(--charbon);font-family:var(--font-body);font-size:var(--fs-base);line-height:1.65;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;min-height:100dvh}img,picture,video,svg{max-width:100%;display:block}img,picture{height:auto}a{color:inherit;text-decoration:none;transition:color .3s var(--ease)}button{font:inherit;cursor:pointer;border:0;background:transparent;color:inherit}input,textarea,select{font:inherit;color:inherit}ul,ol{list-style:none}:focus-visible{outline:2px solid var(--terra);outline-offset:4px;border-radius:2px}::selection{background:var(--terra-soft);color:var(--charbon)}.skip-link{position:absolute;top:-40px;left:1rem;background:var(--charbon);color:var(--linge);padding:.625rem 1rem;border-radius:4px;font-size:.875rem;font-weight:500;z-index:1000;transition:top .2s var(--ease)}.skip-link:focus{top:1rem}.wrap{max-width:var(--container);margin-inline:auto;padding-inline:var(--pad-x)}.wrap-narrow{max-width:var(--container-narrow);margin-inline:auto;padding-inline:var(--pad-x)}.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}.eyebrow{display:inline-flex;align-items:center;gap:.875rem;font-family:var(--font-display);font-weight:400;font-style:italic;font-size:var(--fs-sm);color:var(--terra);letter-spacing:0}.eyebrow:before{content:"";display:inline-block;width:32px;height:1px;background:var(--terra);flex:0 0 32px}.eyebrow-plain{font-family:var(--font-display);font-weight:400;font-style:italic;font-size:var(--fs-sm);color:var(--terra)}.signature-line{display:block;width:56px;height:1px;background:var(--terra);margin-bottom:1.5rem}.bg-pebbles{background-image:var(--pattern-pebbles);background-repeat:repeat}.btn{display:inline-flex;align-items:center;gap:.75rem;font-family:var(--font-body);font-weight:500;font-size:.9375rem;line-height:1;border-radius:999px;padding:1.125rem 1.5rem 1.125rem 1.75rem;transition:background .3s var(--ease),color .3s var(--ease),transform .4s var(--ease),box-shadow .4s var(--ease);white-space:nowrap}.btn:after{content:"→";font-size:1rem;transition:transform .3s var(--ease)}.btn:hover:after{transform:translate(4px)}.btn-primary{background:var(--terra);color:var(--linge);box-shadow:0 1px 0 var(--terra-deep),0 16px 32px -16px #94341c66}.btn-primary:hover{background:var(--terra-bright);transform:translateY(-1px);box-shadow:0 1px 0 var(--terra-deep),0 24px 40px -16px #94341c80}.btn-on-photo{background:var(--linge-clair);color:var(--charbon)}.btn-on-photo:hover{background:var(--linge);transform:translateY(-1px)}.btn-on-terra{background:var(--linge-clair);color:var(--terra-deep)}.btn-on-terra:hover{background:var(--linge)}.btn-outline{background:transparent;color:var(--terra);border:1px solid var(--terra);padding:calc(1.125rem - 1px) calc(1.5rem - 1px) calc(1.125rem - 1px) calc(1.75rem - 1px)}.btn-outline:hover{background:var(--terra);color:var(--linge)}.btn-line{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-body);font-weight:500;font-size:.9375rem;border-bottom:1px solid color-mix(in oklch,currentColor 45%,transparent);padding-bottom:4px;transition:border-color .3s var(--ease),color .3s var(--ease)}.btn-line:hover{border-color:currentColor;color:var(--terra)}.display{font-family:var(--font-display);font-weight:200;line-height:.98;letter-spacing:-.025em;text-wrap:balance}.display-md{font-family:var(--font-display);font-weight:300;line-height:1.05;letter-spacing:-.018em}.reveal{opacity:0;transform:translateY(36px);transition:opacity 1s var(--ease-out),transform 1s var(--ease-out)}.reveal.in{opacity:1;transform:translateY(0)}@keyframes rise{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}
