*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--cream: #F5F2EC;--cream-deep: #EDE9E0;--olive: #1E2418;--olive-mid: #2D3320;--olive-light: #3E4A2C;--bronze: #B8965A;--bronze-dim: rgba(184,150,90,.12);--bronze-glow: rgba(184,150,90,.3);--silver-tone: #9CA3A8;--charcoal: #2A2A2A;--text-main: #1E2418;--text-muted: #5A6050;--border: rgba(30,36,24,.12);--glass: rgba(245,242,236,.55);--glass-dark: rgba(30,36,24,.72);--section-pad: clamp(4.5rem, 8vw, 7rem);--page-pad: clamp(1.5rem, 4vw, 4rem);--accent: var(--bronze);--ease-out: cubic-bezier(.22, 1, .36, 1)}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:hidden}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--text-main);font-family:Inter,sans-serif;font-weight:300;line-height:1.7;overflow-x:hidden;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:9998;background:radial-gradient(600px circle at var(--glow-x, 50%) var(--glow-y, 50%),rgba(184,150,90,.08),transparent 40%);transition:opacity .3s}a{color:inherit}img{max-width:100%;display:block}button{font:inherit;cursor:pointer;border:none;background:none}.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}.container{width:min(1280px,100% - var(--page-pad) * 2);margin-inline:auto}.section-label{font-family:JetBrains Mono,monospace;font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--bronze);margin-bottom:1.2rem;display:flex;align-items:center;gap:.8rem}.section-label:after{content:"";flex:1;max-width:50px;height:1px;background:var(--bronze)}.section-heading{font-family:Cormorant Garamond,serif;font-size:clamp(2.2rem,3.8vw,3.4rem);font-weight:300;line-height:1.15;margin-bottom:1.4rem;color:var(--olive)}.section-heading em{font-style:italic;color:var(--bronze)}.section-heading.light{color:var(--cream)}.btn-primary{font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:var(--cream);background:var(--olive);padding:.9rem 2.4rem;text-decoration:none;font-family:Inter,sans-serif;font-weight:400;transition:background .25s,box-shadow .25s,transform .25s;display:inline-flex;align-items:center;justify-content:center;border:none}.btn-primary:hover{background:var(--olive-light);box-shadow:0 4px 24px #1e24182e}.btn-ghost{font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);text-decoration:none;display:inline-flex;align-items:center;gap:.6rem;transition:color .2s}.btn-ghost:hover{color:var(--bronze)}.btn-ghost:after{content:"→";font-size:1rem}.btn-bronze{font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:var(--olive);background:var(--bronze);padding:.9rem 2.4rem;text-decoration:none;font-family:Inter,sans-serif;font-weight:400;transition:opacity .2s,box-shadow .2s,transform .25s;display:inline-flex;align-items:center;justify-content:center}.btn-bronze:hover{opacity:.92;box-shadow:0 4px 24px var(--bronze-glow)}.btn-outline-light{font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:#f5f2ecb3;border:1px solid rgba(245,242,236,.25);padding:.9rem 2.4rem;text-decoration:none;transition:color .2s,border-color .2s;display:inline-flex;align-items:center;justify-content:center}.btn-outline-light:hover{color:var(--cream);border-color:#f5f2ec8c}.magnetic-btn{position:relative;transform-style:preserve-3d}.reveal{opacity:0;transform:translateY(24px)}.reveal-split .char{display:inline-block;opacity:0;transform:translateY(100%)}.page-transition{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;background:var(--olive);transform:scaleY(0);transform-origin:bottom;pointer-events:none}.page-transition.active{animation:page-wipe .8s var(--ease-out) forwards}@keyframes page-wipe{0%{transform:scaleY(0);transform-origin:bottom}50%{transform:scaleY(1);transform-origin:bottom}51%{transform:scaleY(1);transform-origin:top}to{transform:scaleY(0);transform-origin:top}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
