@charset "UTF-8";[data-reveal]{will-change:transform,opacity;pointer-events:none}[data-reveal].is-revealed{pointer-events:auto}[data-reveal=fade]{opacity:0}[data-reveal=fade].is-revealed{opacity:1;transform:none}[data-reveal=fade-up]{opacity:0;transform:translateY(30px)}[data-reveal=fade-up].is-revealed{opacity:1;transform:none}[data-reveal=fade-down]{opacity:0;transform:translateY(-30px)}[data-reveal=fade-down].is-revealed{opacity:1;transform:none}[data-reveal=fade-left]{opacity:0;transform:translate(30px)}[data-reveal=fade-left].is-revealed{opacity:1;transform:none}[data-reveal=fade-right]{opacity:0;transform:translate(-30px)}[data-reveal=fade-right].is-revealed{opacity:1;transform:none}[data-reveal=zoom]{opacity:0;transform:scale(.95)}[data-reveal=zoom].is-revealed{opacity:1;transform:none}[data-reveal=flip]{opacity:0;transform:perspective(1000px) rotateX(10deg)}[data-reveal=flip].is-revealed{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){[data-reveal]{opacity:1!important;transform:none!important;transition:none!important}}[data-stagger]>*{opacity:0;transform:translateY(30px);will-change:transform,opacity}[data-stagger]>*.is-revealed{opacity:1;transform:none}[data-parallax]{will-change:transform}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.8}to{transform:scale(1);opacity:1}}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}.reveal-on-scroll{opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease}.reveal-on-scroll.revealed{opacity:1;transform:translateY(0)}.stagger-1{animation-delay:.1s}.stagger-2{animation-delay:.2s}.stagger-3{animation-delay:.3s}.stagger-4{animation-delay:.4s}.stagger-5{animation-delay:.5s}.stagger-6{animation-delay:.6s}.stagger-7{animation-delay:.7s}.stagger-8{animation-delay:.8s}.stagger-9{animation-delay:.9s}.stagger-10{animation-delay:1s}.animate-float{animation:float 3s ease-in-out infinite}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-spin{animation:spin 1s linear infinite}.hover-lift{transition:transform .3s ease}.hover-lift:hover{transform:translateY(-5px)}.hover-scale{transition:transform .3s ease}.hover-scale:hover{transform:scale(1.05)}.hover-rotate{transition:transform .3s ease}.hover-rotate:hover{transform:rotate(5deg)}.contact-intro{background:var(--color-background);padding:var(--space-12) var(--space-8)}.contact-inner{max-width:760px;margin:0 auto;text-align:center}.contact-inner h2{font-family:var(--font-family-heading);color:var(--color-secondary);font-size:clamp(1.75rem,3vw,2.5rem);font-weight:700;letter-spacing:-.02em;line-height:1.15;margin:var(--space-2) 0 var(--space-4)}.contact-inner h2 em{font-style:italic;color:var(--color-accent)}.contact-inner p{color:var(--color-text-muted);line-height:1.65;margin-bottom:var(--space-3)}.contact-inner .overline{font-size:var(--font-size-2xs);font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--color-clay);margin-bottom:var(--space-2)}.contact-body{background:var(--color-surface);padding:var(--space-12) var(--space-8);position:relative;overflow:hidden}.contact-body:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle,rgba(61,90,64,.18) 1px,transparent 1px);background-size:24px 24px;pointer-events:none;z-index:0}.contact-body__inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:minmax(260px,340px) 1fr;gap:var(--space-12);align-items:start;position:relative;z-index:1}.contact-methods{background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--border-radius-base);padding:var(--space-6)}.contact-methods h3{font-family:var(--font-family-heading);font-size:1.25rem;font-weight:700;color:var(--color-primary);margin:0 0 var(--space-4);padding-bottom:var(--space-2);border-bottom:2px solid var(--color-border)}.contact-methods__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0;border:1px solid var(--color-border);border-radius:var(--border-radius-sm);overflow:hidden}.contact-method{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);transition:background var(--transition-fast)}.contact-method:last-child{border-bottom:none}.contact-method:hover{background:var(--color-sage-50)}.contact-method__icon{width:32px;height:32px;flex-shrink:0;margin-top:2px;border-radius:50%;background:var(--color-sage-50);border:1px solid rgba(61,90,64,.2);display:flex;align-items:center;justify-content:center;color:var(--color-sage);font-size:13px}.contact-method__body{display:flex;flex-direction:column;gap:2px;min-width:0}.contact-method__label{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);font-weight:600}.contact-method__value{font-size:var(--font-size-sm);color:var(--color-secondary);text-decoration:none;line-height:1.45;word-break:break-word;transition:color var(--transition-fast)}.contact-method__value:hover,.contact-method__value:focus-visible{color:var(--color-sage);text-decoration:underline}.contact-method__value:focus-visible{outline:2px solid var(--color-sage);outline-offset:2px;border-radius:2px}.contact-hours{margin-top:var(--space-4);padding:var(--space-3) var(--space-4);background:var(--color-sage-50);border-radius:var(--border-radius-sm);border:1px solid rgba(61,90,64,.15)}.contact-hours h4{font-family:var(--font-family-heading);font-size:var(--font-size-sm);font-weight:700;color:var(--color-sage);margin:0 0 4px}.contact-hours p{font-size:var(--font-size-sm);color:var(--color-text-muted);line-height:1.5;margin:0}.contact-form-wrap{background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--border-radius-base);padding:var(--space-8)}.contact-form-wrap>h3{font-family:var(--font-family-heading);font-size:1.375rem;font-weight:700;color:var(--color-primary);margin:0 0 var(--space-6);padding-bottom:var(--space-2);border-bottom:2px solid var(--color-border)}.contact-form__fields{display:flex;flex-direction:column;gap:var(--space-4)}.contact-form__row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.contact-form__field label{font-weight:600;color:var(--color-secondary)}.contact-form__field label .required{color:var(--color-accent);margin-left:2px}.contact-form__field input[type=text],.contact-form__field input[type=email],.contact-form__field textarea{background:var(--color-surface);border-radius:var(--border-radius-sm)}.contact-form__field textarea{min-height:140px}.contact-form__submit{align-self:flex-start;margin-top:var(--space-2)}.contact-form__success{text-align:center;padding:var(--space-6) var(--space-4)}.contact-form__success h3{font-family:var(--font-family-heading);color:var(--color-secondary);font-size:1.5rem;font-weight:700;margin:0 0 var(--space-3)}.contact-form__success p{color:var(--color-text-muted);line-height:1.6;margin:0 auto;max-width:480px}@media(prefers-reduced-motion:reduce){.contact-method,.contact-method__value,.contact-methods h3{transition:none}}@media(max-width:1023.98px){.contact-body__inner{grid-template-columns:1fr;gap:var(--space-8)}}@media(max-width:639.98px){.contact-intro,.contact-body{padding:var(--space-8) var(--space-4)}.contact-form-wrap{padding:var(--space-6)}.contact-form__row{grid-template-columns:1fr}}
