*,*:before,*:after{box-sizing:border-box}html,body,h1,h2,h3,h4,h5,h6,p,ul,ol,li,figure,blockquote{margin:0;padding:0}img,video{display:block;max-width:100%}button,input,textarea,select{font:inherit}a{color:inherit}:root{--color-peat-ink: #3f322a;--color-oat-canvas: #fff9ee;--color-silver-clay: #c5bdb3;--color-winter-marble: #ffffff;--color-whisper-gray: #e5e5e5;--color-stone-dust: #b3aea7;--color-forest-teal: #0e6f4e;--color-navy-blue: #2e3281;--surface-oat-canvas: #fff9ee;--surface-winter-marble: #ffffff;--font-display: "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-text: "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--text-caption: 14px;--leading-caption: 1.5;--tracking-caption: .18px;--text-body: 18px;--leading-body: 1.43;--text-heading-sm: 26px;--leading-heading-sm: 1.09;--tracking-heading-sm: .374px;--text-heading: 28px;--leading-heading: 1.05;--tracking-heading: .36px;--text-heading-lg: 34px;--leading-heading-lg: 1.13;--tracking-heading-lg: .39px;--text-display: 72px;--leading-display: .75;--tracking-display: .544px;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--spacing-4: 4px;--spacing-8: 8px;--spacing-12: 12px;--spacing-20: 20px;--spacing-40: 40px;--spacing-80: 80px;--section-gap: 80px;--element-gap: var(--spacing-20);--card-padding: 0px;--max-width: 1200px;--radius-default: 2px;--radius-buttons: 2px;--radius-badges: 2px;--radius-cards: 0px;--radius-images: 15px;--radius-misc: 20px;--radius-sm: 2px;--radius-xl: 15px;--radius-2xl: 20px}html{scroll-behavior:smooth}body{background-color:var(--color-oat-canvas);color:var(--color-peat-ink);font-family:var(--font-text);font-size:var(--text-body);line-height:1.65;font-weight:var(--font-weight-regular);-webkit-font-smoothing:antialiased}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 var(--spacing-40)}section{padding:var(--section-gap) 0}.text-caption{font-size:var(--text-caption);line-height:var(--leading-caption);letter-spacing:var(--tracking-caption)}.text-body{font-size:var(--text-body);line-height:var(--leading-body)}.text-heading-sm{font-size:var(--text-heading-sm);line-height:1.25;letter-spacing:var(--tracking-heading-sm);font-weight:var(--font-weight-bold);font-family:var(--font-display)}.text-heading{font-size:var(--text-heading);line-height:var(--leading-heading);letter-spacing:var(--tracking-heading);font-weight:var(--font-weight-bold);font-family:var(--font-display)}.text-heading-lg{font-size:var(--text-heading-lg);line-height:1.25;letter-spacing:var(--tracking-heading-lg);font-weight:var(--font-weight-bold);font-family:var(--font-display)}.text-display{font-size:var(--text-display);line-height:1.05;letter-spacing:var(--tracking-display);font-weight:var(--font-weight-bold);font-family:var(--font-display)}.label{font-size:15px;font-weight:var(--font-weight-semibold);letter-spacing:.14em;text-transform:uppercase;color:var(--color-stone-dust);font-family:var(--font-text)}.btn-primary{display:inline-block;background:var(--color-forest-teal);color:var(--color-winter-marble);font-family:var(--font-text);font-size:16px;font-weight:var(--font-weight-medium);letter-spacing:.1em;text-transform:uppercase;padding:var(--spacing-20);border-radius:var(--radius-buttons);border:none;cursor:pointer;text-decoration:none;transition:opacity .2s}.btn-primary:hover{opacity:.85}.btn-ghost{display:inline-block;background:transparent;color:var(--color-peat-ink);font-family:var(--font-display);font-size:16px;font-weight:var(--font-weight-medium);letter-spacing:.1em;text-transform:uppercase;padding:var(--spacing-20);border-radius:var(--radius-buttons);border:1.5px solid rgba(63,50,42,.35);cursor:pointer;text-decoration:none;transition:border-color .2s}.btn-ghost:hover{border-color:var(--color-peat-ink)}.btn-nav{display:inline-block;background:transparent;color:var(--color-peat-ink);font-family:var(--font-display);font-size:15px;font-weight:var(--font-weight-semibold);letter-spacing:.1em;text-transform:uppercase;padding:6px 14px;border-radius:var(--radius-buttons);border:1.5px solid rgba(63,50,42,.35);cursor:pointer;text-decoration:none;transition:border-color .2s}.btn-nav:hover{border-color:var(--color-peat-ink)}.badge{display:inline-block;background:#3f322a1a;color:var(--color-peat-ink);font-family:var(--font-display);font-size:var(--text-body);font-weight:var(--font-weight-regular);padding:6px var(--spacing-8);border-radius:var(--radius-badges)}.input{background:var(--color-winter-marble);color:var(--color-peat-ink);border:1.5px solid var(--color-peat-ink);border-radius:var(--radius-default);padding:6px var(--spacing-12);font-family:var(--font-display);font-size:var(--text-body);outline:none;width:100%;transition:border-color .2s,box-shadow .2s}.input::placeholder{color:var(--color-silver-clay);font-size:14px}.input:focus{border-color:var(--color-forest-teal);box-shadow:0 0 0 3px #0e6f4e1f}.divider{width:100%;height:1px;background:var(--color-silver-clay)}.divider-subtle{width:100%;height:1px;background:var(--color-whisper-gray)}.service-card{position:relative;overflow:hidden;transition:transform .35s ease,box-shadow .35s ease}.service-card:hover{transform:translateY(-4px);box-shadow:0 20px 48px #3f322a24}.service-card-bg{position:absolute;inset:0;background-size:cover;background-position:center;opacity:.1;transition:transform .6s ease,opacity .35s ease}.service-card:hover .service-card-bg{transform:scale(1.06);opacity:.18}.service-card-content{position:relative;z-index:1}[data-animate]{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}[data-animate][data-delay="1"]{transition-delay:.12s}[data-animate][data-delay="2"]{transition-delay:.24s}[data-animate].is-visible{opacity:1;transform:translateY(0)}.hover-lift{transition:transform .35s ease,box-shadow .35s ease}.hover-lift:hover{transform:translateY(-4px);box-shadow:0 16px 40px #3f322a1f}@keyframes heroFadeUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.hero-fade{animation:heroFadeUp .8s ease both}.hero-fade-1{animation-delay:.1s}.hero-fade-2{animation-delay:.25s}.hero-fade-3{animation-delay:.45s}
