@charset "UTF-8";:root{--c-bg: #f6f3ec;--c-bg-deep: #efeade;--c-surface: #fdfcf9;--c-ink: #1b1813;--c-ink-soft: #47413a;--c-muted: #8a8171;--c-line: #ddd5c6;--c-line-soft: #e8e2d5;--c-accent: #b5541f;--c-accent-deep: #8f4218;--c-dark: #14120f;--c-dark-2: #1d1a15;--c-dark-ink: #ece6d9;--c-dark-muted: #99917f;--c-dark-line: #2e2a22;--font-display: "Fraunces", Georgia, "Times New Roman", serif;--font-body: "Manrope", "Segoe UI", -apple-system, sans-serif;--fs-hero: clamp(2.6rem, 7.5vw, 5.75rem);--fs-display: clamp(2.2rem, 5.5vw, 4.25rem);--fs-h2: clamp(1.9rem, 4vw, 3.1rem);--fs-h3: clamp(1.35rem, 2.4vw, 1.9rem);--fs-h4: clamp(1.1rem, 1.6vw, 1.3rem);--fs-lead: clamp(1.05rem, 1.5vw, 1.25rem);--fs-body: 1rem;--fs-small: .875rem;--fs-label: .72rem;--container: 1360px;--container-narrow: 880px;--gutter: clamp(1.25rem, 4.5vw, 4rem);--space-section: clamp(4.5rem, 10vw, 8.5rem);--space-section-sm: clamp(3rem, 7vw, 5.5rem);--ease-out: cubic-bezier(.22, 1, .36, 1);--dur: .65s;--dur-fast: .28s}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font-body);font-size:var(--fs-body);font-weight:400;line-height:1.7;color:var(--c-ink);background:var(--c-bg);-webkit-font-smoothing:antialiased;overflow-x:hidden}h1,h2,h3,h4,h5,h6{margin:0;font-family:var(--font-display);font-weight:400;line-height:1.08;letter-spacing:-.01em;text-wrap:balance}p{margin:0 0 1.1em}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{font-family:inherit;cursor:pointer}::selection{background:var(--c-accent);color:#fff}:focus-visible{outline:2px solid var(--c-accent);outline-offset:3px}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}.container--narrow{max-width:var(--container-narrow)}.section{padding-block:var(--space-section)}.section--sm{padding-block:var(--space-section-sm)}.section--dark{background:var(--c-dark);color:var(--c-dark-ink)}.section--deep{background:var(--c-bg-deep)}.eyebrow{display:inline-flex;align-items:center;gap:.9rem;font-size:var(--fs-label);font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--c-muted)}.eyebrow:before{content:"";width:2.4rem;height:1px;background:var(--c-accent)}.section--dark .eyebrow{color:var(--c-dark-muted)}.lead{font-size:var(--fs-lead);line-height:1.75;color:var(--c-ink-soft)}.section--dark .lead{color:var(--c-dark-muted)}.btn{display:inline-flex;align-items:center;gap:.7rem;padding:1rem 2.1rem;font-family:var(--font-body);font-size:.82rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;border:1px solid transparent;background:none;transition:background var(--dur-fast) ease,color var(--dur-fast) ease,border-color var(--dur-fast) ease,transform var(--dur-fast) ease}.btn .btn__arrow{transition:transform var(--dur-fast) var(--ease-out)}.btn:hover .btn__arrow{transform:translate(5px)}.btn--solid{background:var(--c-ink);color:var(--c-bg);border-color:var(--c-ink)}.btn--solid:hover{background:var(--c-accent);border-color:var(--c-accent);color:#fff}.btn--outline{border-color:currentColor;color:var(--c-ink)}.btn--outline:hover{background:var(--c-ink);color:var(--c-bg)}.section--dark .btn--solid,.btn--solid-light{background:var(--c-dark-ink);color:var(--c-dark);border-color:var(--c-dark-ink)}.section--dark .btn--solid:hover,.btn--solid-light:hover{background:var(--c-accent);border-color:var(--c-accent);color:#fff}.section--dark .btn--outline,.btn--outline-light{color:var(--c-dark-ink);border-color:var(--c-dark-line)}.section--dark .btn--outline:hover,.btn--outline-light:hover{background:var(--c-dark-ink);color:var(--c-dark);border-color:var(--c-dark-ink)}.link-arrow{display:inline-flex;align-items:center;gap:.55rem;font-size:.82rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--c-ink);border-bottom:1px solid var(--c-line);padding-bottom:.4rem;transition:border-color var(--dur-fast) ease,color var(--dur-fast) ease}.link-arrow svg{transition:transform var(--dur-fast) var(--ease-out)}.link-arrow:hover{color:var(--c-accent);border-color:var(--c-accent)}.link-arrow:hover svg{transform:translate(5px)}.section--dark .link-arrow{color:var(--c-dark-ink);border-color:var(--c-dark-line)}.section--dark .link-arrow:hover{color:var(--c-accent);border-color:var(--c-accent)}.media{position:relative;overflow:hidden;background:var(--c-bg-deep)}.media img{width:100%;height:100%;object-fit:cover;transition:transform 1.1s var(--ease-out)}a:hover .media img,.media--zoom:hover img{transform:scale(1.045)}.media--fallback{background:linear-gradient(135deg,var(--c-bg-deep) 0%,#e4ddcd 100%)}.media--fallback:after{content:"";position:absolute;inset:0;background-image:linear-gradient(var(--c-line-soft) 1px,transparent 1px),linear-gradient(90deg,var(--c-line-soft) 1px,transparent 1px);background-size:2.5rem 2.5rem;opacity:.7}.media--fallback img{visibility:hidden}.reveal{opacity:0;transform:translateY(26px);transition:opacity .8s var(--ease-out),transform .8s var(--ease-out);transition-delay:var(--reveal-delay, 0s)}.reveal.is-visible{opacity:1;transform:none}main>router-outlet+*{display:block;animation:page-enter .5s var(--ease-out) both}@keyframes page-enter{0%{opacity:0;transform:translateY(10px)}}@media(prefers-reduced-motion:reduce){main>router-outlet+*{animation:none}}.page-hero{padding-top:calc(5.5rem + clamp(3rem,7vw,6rem));padding-bottom:clamp(2.5rem,5vw,4rem);border-bottom:1px solid var(--c-line)}.page-hero__title{font-size:var(--fs-hero);max-width:16ch;margin-top:1.25rem}.page-hero__lead{max-width:52ch;margin-top:1.75rem}.skeleton{position:relative;overflow:hidden;background:var(--c-bg-deep)}.skeleton:after{content:"";position:absolute;inset:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent);animation:skeleton-sweep 1.6s infinite}@keyframes skeleton-sweep{to{transform:translate(100%)}}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link{position:fixed;top:.75rem;left:.75rem;z-index:300;padding:.8rem 1.4rem;background:var(--c-ink);color:var(--c-bg);font-size:var(--fs-small);font-weight:600;transform:translateY(-200%);transition:transform .2s ease}.skip-link:focus{transform:none}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
