*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--amber:#c8892a;--amber-lt:#e0a84a;--amber-dim:#c8892a59;--gold:#d4a94e;--ochre:#b07320;--rust:#8b3a1a;--sienna:#6b2d10;--cream:#f2e8d0;--parch:#e8d8b4;--warm:#d4c49a;--brown:#2e1a0e;--bark:#1e1008;--text-lt:#6b4a28}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--brown);font-family:Libre Baskerville,serif;overflow-x:hidden}body:after{content:"";pointer-events:none;z-index:1000;opacity:.04;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='400' height='400'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='400' height='400' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}.hero{text-align:center;background:var(--bark);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:5rem 2rem 4rem;display:flex;position:relative;overflow:hidden}.hero:before{content:"";pointer-events:none;background:radial-gradient(80% 70% at 50% 45%,#c8892a24 0%,#0000 65%),radial-gradient(50% 50% at 15% 85%,#8b3a1a2e 0%,#0000 55%),radial-gradient(40% 40% at 85% 10%,#8b3a1a1f 0%,#0000 50%);position:absolute;inset:0}.hero-botanical{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.hero-content{z-index:2;position:relative}.hero-eyebrow{letter-spacing:.18em;color:var(--amber-lt);opacity:0;margin-bottom:1.8rem;font-family:IM Fell English,serif;font-size:.88rem;font-style:italic;animation:1s .3s forwards rise}.wordmark{color:var(--gold);letter-spacing:.08em;text-shadow:0 0 60px #d4a94e40,0 2px 4px #00000080;opacity:0;font-family:Uncial Antiqua,serif;font-size:clamp(4rem,11vw,9rem);line-height:1;animation:1.4s cubic-bezier(.16,1,.3,1) .5s forwards rise}.wordmark-sub{letter-spacing:.4em;color:#d4a94e99;text-transform:uppercase;opacity:0;margin-top:.4rem;font-family:IM Fell English,serif;font-size:clamp(.75rem,1.5vw,1rem);font-style:italic;animation:1s .9s forwards rise}.vine-rule{opacity:0;justify-content:center;align-items:center;gap:.8rem;width:300px;margin:1.8rem auto;animation:1s 1s forwards rise;display:flex}.vine-rule:before,.vine-rule:after{content:"";flex:1;height:1px}.vine-rule:before{background:linear-gradient(90deg,#0000,#d4a94e80)}.vine-rule:after{background:linear-gradient(270deg,#0000,#d4a94e80)}.hero-tagline{color:#f2e8d0a6;letter-spacing:.04em;opacity:0;font-family:IM Fell English,serif;font-size:clamp(1rem,2vw,1.35rem);font-style:italic;animation:1s 1.15s forwards rise}.hero-cta{opacity:0;margin-top:2.8rem;animation:1s 1.35s forwards rise}.btn-hero{letter-spacing:.12em;color:var(--bark);background:var(--gold);border:2px solid var(--amber);padding:.85rem 2.8rem;font-family:IM Fell English,serif;font-size:1rem;font-style:italic;text-decoration:none;transition:all .35s;display:inline-block;position:relative}.btn-hero:before{content:"";pointer-events:none;border:1px solid #1e100840;position:absolute;inset:3px}.btn-hero:hover{background:var(--rust);color:var(--gold);border-color:var(--rust)}.label-band{background:var(--sienna);text-align:center;border-top:3px solid var(--ochre);border-bottom:3px solid var(--ochre);padding:.85rem 2rem}.label-band-inner{flex-wrap:wrap;justify-content:center;align-items:center;gap:1.8rem;max-width:860px;margin:0 auto;display:flex}.band-item{letter-spacing:.18em;color:var(--parch);text-transform:uppercase;font-family:IM Fell English,serif;font-size:.85rem;font-style:italic}.band-dot{background:var(--amber);border-radius:50%;flex-shrink:0;width:4px;height:4px}.about{background:var(--cream)}.about-inner{max-width:680px;margin:0 auto;padding:4rem 2.5rem}.about-inner p+p{margin-top:1.85em}.section-label{align-items:center;gap:.9rem;margin-bottom:1.6rem;display:flex}.section-label:before{content:"";background:var(--amber);flex-shrink:0;width:32px;height:1px}.section-label span{letter-spacing:.22em;text-transform:uppercase;color:var(--ochre);font-family:IM Fell English,serif;font-size:.82rem;font-style:italic}h2{color:var(--brown);letter-spacing:.02em;margin-bottom:1.2rem;font-family:Uncial Antiqua,serif;font-size:clamp(1.6rem,3vw,2.3rem);line-height:1.25}p{color:var(--text-lt);font-size:1rem;line-height:1.85}.joe-sig{border-top:1px solid #b0732040;margin-top:2rem;padding-top:1.5rem}.sig-name{color:var(--brown);letter-spacing:.04em;margin-bottom:.2rem;font-family:Uncial Antiqua,serif;font-size:1.3rem}.sig-title{letter-spacing:.15em;color:var(--ochre);font-family:IM Fell English,serif;font-size:.82rem;font-style:italic}.contact{background:var(--brown);text-align:center;padding:4rem 2rem}.contact-inner{max-width:560px;margin:0 auto}.contact .section-label{justify-content:center}.contact .section-label:before{background:var(--amber-lt)}.contact .section-label span{color:var(--amber-lt)}.contact h2{color:var(--cream);margin-bottom:1.6rem}.contact p{color:var(--warm);margin-bottom:1.8rem;font-family:IM Fell English,serif;font-size:1rem;font-style:italic}.contact-email{color:var(--gold);letter-spacing:.04em;border-bottom:1px solid #d4a94e59;padding-bottom:2px;font-family:IM Fell English,serif;font-size:1.05rem;font-style:italic;text-decoration:none;transition:color .3s,border-color .3s;display:inline-block}.contact-email:hover{color:var(--amber-lt);border-color:var(--amber-lt)}footer{background:var(--bark);border-top:3px solid var(--ochre);text-align:center;padding:3rem 2rem}.footer-wordmark{color:var(--gold);letter-spacing:.1em;text-shadow:0 0 30px #d4a94e33;font-family:Uncial Antiqua,serif;font-size:1.8rem}.footer-divider{justify-content:center;align-items:center;gap:1rem;max-width:200px;margin:1.2rem auto;display:flex}.footer-divider:before,.footer-divider:after{content:"";background:#c8892a4d;flex:1;height:1px}.footer-diamond{background:var(--amber);flex-shrink:0;width:5px;height:5px;transform:rotate(45deg)}footer address{letter-spacing:.05em;color:#d4c49a80;font-family:IM Fell English,serif;font-size:.88rem;font-style:italic;line-height:2}.footer-copy{letter-spacing:.18em;color:#d4c49a33;margin-top:1.5rem;font-family:IM Fell English,serif;font-size:.7rem;font-style:italic}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.reveal{opacity:0;transition:opacity .85s,transform .85s;transform:translateY(18px)}.reveal.in{opacity:1;transform:translateY(0)}@media (max-width:680px){.label-band-inner{gap:1rem}}
