:root{--cream: #faf6ef;--cream-dark: #f1eadd;--beige: #e6d9c3;--green: #1f3d34;--green-dark: #142a23;--green-soft: #2f5a4c;--gold: #b8955a;--gold-light: #d4b98a;--charcoal: #2a2a2a;--muted: #6b6a66;--white: #fff;--font-serif: "Barlow", "Segoe UI", Roboto, sans-serif;--font-sans: "Barlow", "Segoe UI", Roboto, sans-serif;--radius: 14px;--radius-lg: 24px;--shadow: 0 18px 40px -20px rgba(20, 42, 35, .25);--container: 1200px;--header-h: 84px;--ease: cubic-bezier(.22, .61, .36, 1)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-sans);font-weight:400;font-size:16px;line-height:1.7;color:var(--charcoal);background:var(--cream);-webkit-font-smoothing:antialiased;overflow-x:hidden}html{touch-action:manipulation}body{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}input,textarea,select,[contenteditable=true]{-webkit-user-select:text;user-select:text}img{-webkit-user-drag:none}.zoomable{touch-action:pan-x pan-y;cursor:zoom-in;transition:transform .15s ease-out;will-change:transform}.zoomable[data-zoomed]{touch-action:none}@media(max-width:900px){body.has-bottom-bar{--fab-lift: 76px}}h1,h2,h3,h4{font-family:var(--font-serif);font-weight:600;line-height:1.2;color:var(--green-dark);margin:0}p{margin:0}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.material-icons-outlined{font-size:26px;line-height:1}.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 24px}.section{padding:110px 0;scroll-margin-top:var(--header-h)}.section-beige{background:var(--cream-dark)}.section-green{background:var(--green);color:var(--cream)}.section-green h2,.section-green h3{color:var(--cream)}.eyebrow{display:inline-flex;align-items:center;gap:12px;font-family:var(--font-sans);font-size:14px;font-weight:600;letter-spacing:3.2px;text-transform:uppercase;color:var(--gold)}.eyebrow:before{content:"";flex-shrink:0;width:40px;height:1px;background:currentColor}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:15px 32px;border:1px solid transparent;border-radius:999px;font-family:var(--font-sans);font-size:13px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;transition:background .3s var(--ease),color .3s var(--ease),border-color .3s var(--ease)}.btn-gold{background:var(--gold);color:var(--white)}.btn-gold:hover{background:var(--green-dark)}.btn-green{background:var(--green);color:var(--cream)}.btn-green:hover{background:var(--gold)}.btn-outline-light{border-color:#fff9;color:var(--white)}.btn-outline-light:hover{background:var(--white);color:var(--green-dark)}.btn-outline{border-color:var(--green);color:var(--green)}.btn-outline:hover{background:var(--green);color:var(--cream)}.link-arrow{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;color:var(--gold);transition:gap .3s var(--ease)}.link-arrow:hover{gap:12px}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:12px;font-weight:500;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted)}.field{min-width:0}.field input,.field select,.field textarea{width:100%;min-width:0;padding:14px 16px;border:1px solid var(--beige);border-radius:10px;background:var(--white);font:inherit;color:var(--charcoal);transition:border-color .2s ease}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--gold)}.field .ng-invalid.ng-touched{border-color:#c0533f}.field .error{font-size:12px;color:#c0533f}.reveal{opacity:0;transform:translateY(24px);transition:opacity .8s var(--ease),transform .8s var(--ease)}.reveal.visible{opacity:1;transform:none}.ring{display:inline-block;transform-origin:50% 60%;animation:ring 2s ease-in-out infinite}@keyframes ring{0%,45%,to{transform:rotate(0)}5%,15%,25%,35%{transform:rotate(-16deg) scale(1.08)}10%,20%,30%,40%{transform:rotate(16deg) scale(1.08)}}@media(prefers-reduced-motion:reduce){.ring{animation:none}}.auto-scroll{overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none;cursor:grab}.auto-scroll::-webkit-scrollbar{display:none}.auto-scroll.dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}@media(max-width:768px){.section{padding:72px 0}.container{padding:0 18px}}
