:root{--color-bg: #0E1A14;--color-bg-cream: #F6F1E6;--color-bg-card: #FFFFFF;--color-bg-sand: #EFE7D7;--color-forest: #15402B;--color-forest-deep: #0E2A1C;--color-moss: #6F9170;--color-bark: #3A2A1E;--color-rust: #DB7A22;--color-rust-hover: #C2691A;--color-amber: #F0A94A;--color-text: #19211C;--color-text-muted: #565D52;--color-text-light: #F1ECE0;--color-border: #E2DAC9;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px;--space-10:128px;--max-width: 1240px;--gutter: 24px;--section-py: clamp(64px, 10vw, 128px);--header-height: 76px;--font-display: "Oswald", "Arial Narrow", system-ui, sans-serif;--font-body: "Source Sans 3", system-ui, -apple-system, sans-serif;--shadow-card: 0 12px 32px -16px rgba(14, 26, 20, .42);--shadow-heavy: 0 26px 60px -22px rgba(14, 26, 20, .55);--radius: 8px;--radius-sm: 5px;--t-fast: .15s ease;--t-base: .22s cubic-bezier(.4,0,.2,1);--t-slow: .42s cubic-bezier(.4,0,.2,1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;overflow-x:hidden;scroll-padding-top:92px}body{font-family:var(--font-body);font-size:18px;line-height:1.65;color:var(--color-text);background-color:var(--color-bg-cream);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}@media(min-width:1024px){body{font-size:19px}}body:after{content:"";position:fixed;inset:0;pointer-events:none;z-index:9999;opacity:.03;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)'/%3E%3C/svg%3E");background-size:220px 220px}@media(max-width:768px){body:after{display:none}}img,svg{display:block}img{max-width:100%}a{color:inherit;text-decoration:none}ul{list-style:none}button{font-family:inherit;cursor:pointer;border:none;background:none}input,textarea,select{font-family:inherit;font-size:inherit}h1,h2,h3,h4{font-family:var(--font-display);line-height:1.1;font-weight:600;color:var(--color-forest);letter-spacing:-.01em}:focus-visible{outline:2px solid var(--color-rust);outline-offset:3px;border-radius:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;animation-iteration-count:1!important}html{scroll-behavior:auto}.js-reveal,.js-reveal-scroll{opacity:1!important;transform:none!important}}.container{width:100%;max-width:var(--max-width);margin-inline:auto;padding-inline:var(--gutter)}@media(min-width:1024px){.container{padding-inline:var(--space-7)}}.section{padding-block:var(--section-py);position:relative}.section--cream{background:var(--color-bg-cream)}.section--card-bg{background:var(--color-bg-sand)}.section--dark{background:var(--color-bg);color:var(--color-text-light)}.section--forest{background:var(--color-forest);color:var(--color-text-light)}.section-head{margin-bottom:var(--space-7);max-width:760px}.section-head--center{margin-inline:auto;text-align:center}.eyebrow{display:inline-flex;align-items:center;gap:12px;font-family:var(--font-body);font-weight:700;text-transform:uppercase;letter-spacing:.2em;font-size:.78rem;color:var(--color-rust);margin-bottom:var(--space-4)}.eyebrow:before{content:"";width:38px;height:2px;background:var(--color-rust)}.eyebrow--center:before{display:none}.eyebrow--light{color:var(--color-amber)}.section-title{font-size:clamp(2.25rem,5vw,4rem);text-transform:uppercase;letter-spacing:0}.section-title--light{color:var(--color-text-light)}.section-head p{margin-top:var(--space-4);color:var(--color-text-muted);font-size:1.08rem;line-height:1.6}.section--dark .section-head p,.section--forest .section-head p{color:var(--color-text-light);opacity:.85}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 26px;border-radius:var(--radius);font-weight:700;font-size:1rem;line-height:1;text-align:center;cursor:pointer;letter-spacing:.01em;transition:background var(--t-base),color var(--t-base),transform var(--t-base),box-shadow var(--t-base)}.btn--large{padding:17px 32px;font-size:1.05rem}.btn--block{width:100%}.btn--call{background:var(--color-rust);color:#fff;box-shadow:0 8px 20px -8px #db7a22bf}.btn--call:hover{background:var(--color-rust-hover);transform:translateY(-2px);box-shadow:0 14px 28px -10px #db7a22d9}.btn--forest{background:var(--color-forest);color:var(--color-text-light)}.btn--forest:hover{background:var(--color-forest-deep);transform:translateY(-2px)}.btn--outline-light{background:transparent;color:var(--color-text-light);border:1.5px solid rgba(241,236,224,.5)}.btn--outline-light:hover{border-color:var(--color-text-light);background:#f1ece014;transform:translateY(-2px)}.btn--outline{background:transparent;color:var(--color-forest);border:1.5px solid var(--color-border)}.btn--outline:hover{border-color:var(--color-forest);background:#15402b0a;transform:translateY(-2px)}.btn--pulse{animation:pulse 4s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.card{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-card);transition:transform var(--t-base),box-shadow var(--t-base)}.js-reveal,.js-reveal-scroll{opacity:0;transform:translateY(26px);transition:opacity .6s ease,transform .6s ease;transition-delay:var(--reveal-delay, 0ms)}.js-reveal.is-visible,.js-reveal-scroll.is-visible{opacity:1;transform:none}.rule{width:40px;height:3px;background:var(--color-rust);margin-bottom:var(--space-5);border-radius:2px}.rule--center{margin-inline:auto}.stars{color:var(--color-rust);letter-spacing:2px}.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}.skip-link{position:absolute;left:12px;top:-60px;background:var(--color-rust);color:#fff;padding:10px 18px;border-radius:var(--radius);z-index:2000;font-weight:700;transition:top .2s}.skip-link:focus{top:12px}.text-center{text-align:center}.grain-photo{filter:saturate(.96) contrast(1.02)}
