.footer{background:var(--green-deep);color:var(--cream);overflow:hidden;position:relative}.footer:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'%3E%3Cfilter id='a'%3E%3CfeTurbulence baseFrequency='.85' numOctaves='4' stitchTiles='stitch' type='fractalNoise'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23a)' opacity='.04'/%3E%3C/svg%3E");content:"";inset:0}.footer-leaf,.footer:before{pointer-events:none;position:absolute;z-index:0}.footer-leaf{bottom:-8vh;opacity:.06;right:-6vw;transform:rotate(-12deg);width:clamp(300px,38vw,560px)}.footer-inner{margin:0 auto;max-width:var(--container-width,1200px);padding:0 clamp(24px,6vw,80px);position:relative;z-index:1}.footer-top{align-items:start;border-bottom:1px solid rgba(168,213,181,.12);display:grid;gap:48px;grid-template-columns:1fr auto;padding-bottom:clamp(40px,6vh,72px);padding-top:clamp(56px,8vh,96px)}.footer-headline{color:var(--cream);font-family:Fraunces,serif;font-size:clamp(3.5rem,9vw,8rem);font-weight:200;letter-spacing:-.03em;line-height:.92;opacity:.92}.footer-headline em{color:var(--green-mist);font-style:italic;font-weight:300}.footer-cols{display:flex;gap:clamp(40px,5vw,72px);padding-top:8px}.footer-col-title{color:var(--green-mist);font-size:10px;font-weight:400;letter-spacing:.18em;margin-bottom:20px;text-transform:uppercase}.footer-col ul{display:flex;flex-direction:column;gap:12px;list-style:none}.footer-col a{align-items:center;color:hsla(43,39%,93%,.65);display:inline-flex;font-size:14px;font-weight:300;gap:0;text-decoration:none;transition:color .2s}.footer-col a:after{content:"→";display:inline-block;font-size:11px;margin-left:0;opacity:0;transform:translateX(-6px);transition:opacity .2s,transform .25s cubic-bezier(.23,1,.32,1)}.footer-col a:hover{color:var(--cream)}.footer-col a:hover:after{opacity:1;transform:translateX(6px)}.footer-newsletter{align-items:center;border-bottom:1px solid rgba(168,213,181,.12);display:flex;flex-wrap:wrap;gap:32px;justify-content:space-between;padding:clamp(32px,5vh,56px) 0}.footer-newsletter-label{color:var(--green-mist);font-size:10px;font-weight:400;letter-spacing:.18em;margin-bottom:8px;text-transform:uppercase}.footer-newsletter-title{color:var(--cream);font-family:Fraunces,serif;font-size:clamp(1.1rem,2.5vw,1.5rem);font-style:italic;font-weight:300;line-height:1.3}.footer-newsletter-form{align-items:center;border:1px solid rgba(168,213,181,.25);border-radius:100px;display:flex;flex-shrink:0;gap:0;overflow:hidden;transition:border-color .25s}.footer-newsletter-form:focus-within{border-color:var(--green-mist)}.footer-newsletter-form input{background:transparent;border:none;color:var(--cream);font-family:DM Sans,sans-serif;font-size:13px;font-weight:300;outline:none;padding:12px 20px;width:clamp(180px,22vw,260px)}.footer-newsletter-form input::placeholder{color:hsla(43,39%,93%,.35)}.footer-newsletter-form button{background:var(--green-mid);border:none;border-radius:0 100px 100px 0;color:var(--cream);cursor:pointer;font-family:DM Sans,sans-serif;font-size:12px;font-weight:400;letter-spacing:.06em;padding:12px 22px;transition:background .2s;white-space:nowrap}.footer-newsletter-form button:hover{background:var(--green-light)}.footer-bottom{flex-wrap:wrap;gap:16px;justify-content:space-between;padding:clamp(20px,3vh,32px) 0}.footer-bottom,.footer-copy{align-items:center;display:flex}.footer-copy{color:hsla(43,39%,93%,.35);font-size:12px;font-weight:300;gap:8px}.footer-copy-leaf{display:inline-flex;opacity:.5}.footer-legal{align-items:center;display:flex;gap:20px}.footer-legal a{color:hsla(43,39%,93%,.35);font-size:11px;font-weight:300;letter-spacing:.06em;text-decoration:none;transition:color .2s}.footer-legal a:hover{color:hsla(43,39%,93%,.75)}.footer-legal-sep{background:rgba(168,213,181,.2);height:10px;width:1px}@media (max-width:992px){.footer-top{gap:36px;grid-template-columns:1fr}.footer-cols{flex-wrap:wrap;gap:32px 40px}.footer-headline{font-size:clamp(3rem,12vw,5rem)}.footer-newsletter{align-items:flex-start;flex-direction:column;gap:20px}.footer-newsletter-form{width:100%}.footer-newsletter-form input{flex:1;width:100%}.footer-bottom{align-items:flex-start;flex-direction:column;gap:12px}}@media (max-width:480px){.footer-headline{font-size:clamp(2.4rem,13vw,3.5rem)}.footer-legal{flex-wrap:wrap;gap:10px 16px}}