
.sense-footer{position:relative;isolation:isolate;overflow:hidden;background:#f2eee7;color:#393b34;min-height:710px;padding:92px var(--gutter) 30px;text-align:center}
.footer-atmosphere{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center 65%;filter:saturate(.55) sepia(.12);opacity:.18}
.sense-footer::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#faf9f6 0%,rgba(250,249,246,.76) 18%,rgba(245,241,233,.68) 68%,rgba(245,241,233,.9) 100%)}
.footer-core{max-width:640px;margin:0 auto}.footer-brand{display:flex;justify-content:center;align-items:center;gap:15px;font:400 19px/1.5 "Century Gothic",sans-serif}.footer-brand img{width:24px;height:auto;opacity:.8}.sense-footer h2{font:200 clamp(29px,2.7vw,36px)/1.5 Roboto,Arial,sans-serif;letter-spacing:-.015em;margin:35px 0 30px}
.sense-footer button{border:0;background:none;padding:0;color:inherit;font:300 13px/1.8 Roboto,Arial,sans-serif;cursor:pointer}
.footer-navigation{display:flex;justify-content:center;gap:44px;margin-bottom:34px}.footer-navigation button{padding:5px 0;border-bottom:1px solid rgba(70,70,57,.25)}.footer-navigation span{margin-left:18px}
.footer-contact{display:flex;flex-direction:column;align-items:center;gap:8px;font:300 13px/1.8 Roboto,Arial,sans-serif}.footer-city{font:300 11px/1.8 Roboto,Arial,sans-serif;color:#77796e;margin:18px 0 0;letter-spacing:.025em}
.footer-socials{display:flex;justify-content:center;gap:20px;margin:26px 0 0}.footer-socials a{display:grid;place-items:center;width:28px;height:28px;color:#707469;transition:color .4s}.footer-socials svg{width:16px;height:16px}.footer-socials a:hover{color:#292d28}
.footer-bottom{margin:66px auto 0;display:flex;flex-direction:column;align-items:center;gap:18px;color:#77796e}.footer-bottom small,.footer-bottom button{font:300 10px/1.8 Roboto,Arial,sans-serif;letter-spacing:.025em}
.footer-core,.footer-bottom{opacity:1}.sense-footer.has-reveal .footer-core,.sense-footer.has-reveal .footer-bottom{opacity:0;transform:translateY(6px);transition:opacity 1.4s ease,transform 1.4s cubic-bezier(.22,1,.36,1)}.sense-footer.is-visible .footer-core,.sense-footer.is-visible .footer-bottom{opacity:1;transform:none}.sense-footer.is-visible .footer-bottom{transition-delay:.15s}
.sense-about-dialog{position:fixed;border:0;padding:65px;width:min(710px,calc(100vw - 40px));max-height:calc(100dvh - 40px);background:var(--paper);color:var(--ink)}.sense-about-dialog::backdrop{background:rgba(25,30,23,.45);backdrop-filter:blur(4px)}.sense-about-dialog>.close-button{position:absolute;right:12px;top:12px;border:0;background:none;cursor:pointer}.sense-about-dialog h2{font:200 37px/1.4 Roboto,Arial,sans-serif;margin:25px 0}.sense-about-dialog>p:not(.eyebrow),.sense-services p{font:300 14px/1.9 Roboto,Arial,sans-serif;color:#65695f}.sense-services{margin:32px 0}.sense-services section{border-top:1px solid #dedfd7;padding:19px 0 4px}.sense-services h3{font:300 17px/1.5 Roboto,Arial,sans-serif;margin:0}.sense-services p{margin:9px 0 14px}.about-email{font:300 13px/1.8 Roboto,Arial,sans-serif;border-bottom:1px solid #bfc4b5;padding-bottom:5px}

@media(max-width:650px){.sense-footer{min-height:650px;padding-top:75px}.footer-brand{font-size:17px}.sense-footer h2{font-size:29px}.footer-bottom{margin-top:52px}.sense-about-dialog{padding:50px 25px 35px}.sense-about-dialog h2{font-size:29px}}
@media(prefers-reduced-motion:reduce){.sense-footer.has-reveal .footer-core,.sense-footer.has-reveal .footer-bottom{opacity:1;transform:none;transition:none}}

/* Shared editorial type scale and quiet framed contact details. */
:root{--sense-heading:clamp(29px,2.7vw,36px);--sense-body:16px;--sense-small:12px;--sense-rule:rgba(90,89,72,.23)}
.sense-footer h2,.sense-about-dialog h2,.contact-dialog h2{font-size:var(--sense-heading);font-weight:200;line-height:1.5;letter-spacing:-.015em}
.footer-contact,.footer-navigation button,.sense-footer button,.contact-email,.contact-phones,.sense-about-dialog>p:not(.eyebrow),.sense-services p{font-size:var(--sense-body);font-weight:300;line-height:1.85}
.footer-city,.footer-bottom small,.footer-bottom button,.address,.sense-services h3{font-size:var(--sense-small);line-height:1.8}
.sense-services h3{font-size:16px;font-weight:300}
.contact-dialog,.sense-about-dialog{padding:65px;border:1px solid var(--sense-rule);box-shadow:0 18px 80px rgba(41,45,40,.08);animation:sense-panel-in 800ms cubic-bezier(.22,1,.36,1) both}
.contact-dialog::backdrop,.sense-about-dialog::backdrop{background:rgba(37,36,30,.32);backdrop-filter:blur(3px);animation:sense-backdrop-in 800ms ease both}
.contact-dialog .contact-email{display:block;border:1px solid var(--sense-rule);padding:16px 20px;text-align:center;font-size:15px}
.contact-dialog .contact-phones{border:1px solid var(--sense-rule);padding:15px 20px;justify-content:center;margin:14px 0 0;gap:8px 24px;font-size:14px}
.contact-dialog .address{padding:20px 0;margin:0;text-align:center;border-bottom:1px solid var(--sense-rule);font-size:13px}
.contact-dialog .socials{justify-content:center;gap:20px;margin-top:24px}
.contact-dialog .socials a,.footer-socials a{display:grid;place-items:center;width:28px;height:28px;color:#707469;position:relative;transition:color 600ms ease,transform 650ms cubic-bezier(.22,1,.36,1)}
.contact-dialog .socials svg{width:16px;height:16px}
.contact-dialog .socials a:hover,.footer-socials a:hover{color:#383b32;transform:translateY(-3px)}
.contact-dialog .socials a:focus-visible,.footer-socials a:focus-visible{outline:1px solid #9ba391;outline-offset:5px}
.footer-navigation button{border:1px solid var(--sense-rule);padding:10px 24px;font-size:13px;transition:background 600ms ease}.footer-navigation button:hover{background:rgba(232,226,215,.5)}
@keyframes sense-panel-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@keyframes sense-backdrop-in{from{opacity:0}to{opacity:1}}
@media(max-width:650px){.contact-dialog,.sense-about-dialog{padding:50px 25px 35px}.footer-contact,.sense-about-dialog>p:not(.eyebrow),.sense-services p{font-size:14px}}
@media(prefers-reduced-motion:reduce){.contact-dialog,.sense-about-dialog,.contact-dialog::backdrop,.sense-about-dialog::backdrop{animation:none}.footer-socials a,.contact-dialog .socials a{transition:none;transform:none}}
